Coverage Report

Created: 2026-01-18 06:49

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/php-src/Zend/zend_language_parser.c
Line
Count
Source
1
/* A Bison parser, made by GNU Bison 3.5.1.  */
2
3
/* Bison implementation for Yacc-like parsers in C
4
5
   Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2020 Free Software Foundation,
6
   Inc.
7
8
   This program is free software: you can redistribute it and/or modify
9
   it under the terms of the GNU General Public License as published by
10
   the Free Software Foundation, either version 3 of the License, or
11
   (at your option) any later version.
12
13
   This program is distributed in the hope that it will be useful,
14
   but WITHOUT ANY WARRANTY; without even the implied warranty of
15
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
   GNU General Public License for more details.
17
18
   You should have received a copy of the GNU General Public License
19
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
20
21
/* As a special exception, you may create a larger work that contains
22
   part or all of the Bison parser skeleton and distribute that work
23
   under terms of your choice, so long as that work isn't itself a
24
   parser generator using the skeleton or a modified version thereof
25
   as a parser skeleton.  Alternatively, if you modify or redistribute
26
   the parser skeleton itself, you may (at your option) remove this
27
   special exception, which will cause the skeleton and the resulting
28
   Bison output files to be licensed under the GNU General Public
29
   License without this special exception.
30
31
   This special exception was added by the Free Software Foundation in
32
   version 2.2 of Bison.  */
33
34
/* C LALR(1) parser skeleton written by Richard Stallman, by
35
   simplifying the original so-called "semantic" parser.  */
36
37
/* All symbols defined below should begin with yy or YY, to avoid
38
   infringing on user name space.  This should be done even for local
39
   variables, as they might otherwise be expanded by user macros.
40
   There are some unavoidable exceptions within include files to
41
   define necessary library symbols; they are noted "INFRINGES ON
42
   USER NAME SPACE" below.  */
43
44
/* Undocumented macros, especially those whose name start with YY_,
45
   are private implementation details.  Do not rely on them.  */
46
47
/* Identify Bison output.  */
48
#define YYBISON 1
49
50
/* Bison version.  */
51
#define YYBISON_VERSION "3.5.1"
52
53
/* Skeleton name.  */
54
#define YYSKELETON_NAME "yacc.c"
55
56
/* Pure parsers.  */
57
#define YYPURE 2
58
59
/* Push parsers.  */
60
#define YYPUSH 0
61
62
/* Pull parsers.  */
63
#define YYPULL 1
64
65
/* "%code top" blocks.  */
66
#line 22 "/src/php-src/Zend/zend_language_parser.y"
67
68
#include "zend.h"
69
#include "zend_list.h"
70
#include "zend_globals.h"
71
#include "zend_API.h"
72
#include "zend_constants.h"
73
#include "zend_language_scanner.h"
74
#include "zend_exceptions.h"
75
76
227
#define YYSIZE_T size_t
77
4.86k
#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
26.8k
#define YYSTYPE         ZENDSTYPE
88
/* Substitute the variable and function names.  */
89
#define yyparse         zendparse
90
807k
#define yylex           zendlex
91
797
#define yyerror         zenderror
92
#define yydebug         zenddebug
93
6.16k
#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
2.45M
#   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
4.63k
#   define YY_NULLPTR ((void*)0)
114
#  endif
115
# endif
116
117
/* Enabling verbose error messages.  */
118
#ifdef YYERROR_VERBOSE
119
# undef YYERROR_VERBOSE
120
# define YYERROR_VERBOSE 1
121
#else
122
# define YYERROR_VERBOSE 1
123
#endif
124
125
/* Use api.header.include to #include this header
126
   instead of duplicating it here.  */
127
#ifndef YY_ZEND_SRC_PHP_SRC_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED
128
# define YY_ZEND_SRC_PHP_SRC_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED
129
/* Debug traces.  */
130
#ifndef ZENDDEBUG
131
# if defined YYDEBUG
132
#if YYDEBUG
133
#   define ZENDDEBUG 1
134
#  else
135
#   define ZENDDEBUG 0
136
#  endif
137
# else /* ! defined YYDEBUG */
138
#  define ZENDDEBUG 0
139
# endif /* ! defined YYDEBUG */
140
#endif  /* ! defined ZENDDEBUG */
141
#if ZENDDEBUG
142
extern int zenddebug;
143
#endif
144
/* "%code requires" blocks.  */
145
#line 41 "/src/php-src/Zend/zend_language_parser.y"
146
147
#include "zend_compile.h"
148
149
#line 150 "/src/php-src/Zend/zend_language_parser.c"
150
151
/* Token type.  */
152
#ifndef ZENDTOKENTYPE
153
# define ZENDTOKENTYPE
154
  enum zendtokentype
155
  {
156
    END = 0,
157
    T_THROW = 258,
158
    PREC_ARROW_FUNCTION = 259,
159
    T_INCLUDE = 260,
160
    T_INCLUDE_ONCE = 261,
161
    T_REQUIRE = 262,
162
    T_REQUIRE_ONCE = 263,
163
    T_LOGICAL_OR = 264,
164
    T_LOGICAL_XOR = 265,
165
    T_LOGICAL_AND = 266,
166
    T_PRINT = 267,
167
    T_YIELD = 268,
168
    T_DOUBLE_ARROW = 269,
169
    T_YIELD_FROM = 270,
170
    T_PLUS_EQUAL = 271,
171
    T_MINUS_EQUAL = 272,
172
    T_MUL_EQUAL = 273,
173
    T_DIV_EQUAL = 274,
174
    T_CONCAT_EQUAL = 275,
175
    T_MOD_EQUAL = 276,
176
    T_AND_EQUAL = 277,
177
    T_OR_EQUAL = 278,
178
    T_XOR_EQUAL = 279,
179
    T_SL_EQUAL = 280,
180
    T_SR_EQUAL = 281,
181
    T_POW_EQUAL = 282,
182
    T_COALESCE_EQUAL = 283,
183
    T_COALESCE = 284,
184
    T_BOOLEAN_OR = 285,
185
    T_BOOLEAN_AND = 286,
186
    T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG = 287,
187
    T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG = 288,
188
    T_IS_EQUAL = 289,
189
    T_IS_NOT_EQUAL = 290,
190
    T_IS_IDENTICAL = 291,
191
    T_IS_NOT_IDENTICAL = 292,
192
    T_SPACESHIP = 293,
193
    T_IS_SMALLER_OR_EQUAL = 294,
194
    T_IS_GREATER_OR_EQUAL = 295,
195
    T_PIPE = 296,
196
    T_SL = 297,
197
    T_SR = 298,
198
    T_INSTANCEOF = 299,
199
    T_INT_CAST = 300,
200
    T_DOUBLE_CAST = 301,
201
    T_STRING_CAST = 302,
202
    T_ARRAY_CAST = 303,
203
    T_OBJECT_CAST = 304,
204
    T_BOOL_CAST = 305,
205
    T_UNSET_CAST = 306,
206
    T_POW = 307,
207
    T_CLONE = 308,
208
    T_NOELSE = 309,
209
    T_ELSEIF = 310,
210
    T_ELSE = 311,
211
    T_LNUMBER = 312,
212
    T_DNUMBER = 313,
213
    T_STRING = 314,
214
    T_NAME_FULLY_QUALIFIED = 315,
215
    T_NAME_RELATIVE = 316,
216
    T_NAME_QUALIFIED = 317,
217
    T_VARIABLE = 318,
218
    T_INLINE_HTML = 319,
219
    T_ENCAPSED_AND_WHITESPACE = 320,
220
    T_CONSTANT_ENCAPSED_STRING = 321,
221
    T_STRING_VARNAME = 322,
222
    T_NUM_STRING = 323,
223
    T_EVAL = 324,
224
    T_NEW = 325,
225
    T_EXIT = 326,
226
    T_IF = 327,
227
    T_ENDIF = 328,
228
    T_ECHO = 329,
229
    T_DO = 330,
230
    T_WHILE = 331,
231
    T_ENDWHILE = 332,
232
    T_FOR = 333,
233
    T_ENDFOR = 334,
234
    T_FOREACH = 335,
235
    T_ENDFOREACH = 336,
236
    T_DECLARE = 337,
237
    T_ENDDECLARE = 338,
238
    T_AS = 339,
239
    T_SWITCH = 340,
240
    T_ENDSWITCH = 341,
241
    T_CASE = 342,
242
    T_DEFAULT = 343,
243
    T_MATCH = 344,
244
    T_BREAK = 345,
245
    T_CONTINUE = 346,
246
    T_GOTO = 347,
247
    T_FUNCTION = 348,
248
    T_FN = 349,
249
    T_CONST = 350,
250
    T_RETURN = 351,
251
    T_TRY = 352,
252
    T_CATCH = 353,
253
    T_FINALLY = 354,
254
    T_USE = 355,
255
    T_INSTEADOF = 356,
256
    T_GLOBAL = 357,
257
    T_STATIC = 358,
258
    T_ABSTRACT = 359,
259
    T_FINAL = 360,
260
    T_PRIVATE = 361,
261
    T_PROTECTED = 362,
262
    T_PUBLIC = 363,
263
    T_PRIVATE_SET = 364,
264
    T_PROTECTED_SET = 365,
265
    T_PUBLIC_SET = 366,
266
    T_READONLY = 367,
267
    T_VAR = 368,
268
    T_UNSET = 369,
269
    T_ISSET = 370,
270
    T_EMPTY = 371,
271
    T_HALT_COMPILER = 372,
272
    T_CLASS = 373,
273
    T_TRAIT = 374,
274
    T_INTERFACE = 375,
275
    T_ENUM = 376,
276
    T_EXTENDS = 377,
277
    T_IMPLEMENTS = 378,
278
    T_NAMESPACE = 379,
279
    T_LIST = 380,
280
    T_ARRAY = 381,
281
    T_CALLABLE = 382,
282
    T_LINE = 383,
283
    T_FILE = 384,
284
    T_DIR = 385,
285
    T_CLASS_C = 386,
286
    T_TRAIT_C = 387,
287
    T_METHOD_C = 388,
288
    T_FUNC_C = 389,
289
    T_PROPERTY_C = 390,
290
    T_NS_C = 391,
291
    T_ATTRIBUTE = 392,
292
    T_INC = 393,
293
    T_DEC = 394,
294
    T_VOID_CAST = 395,
295
    T_OBJECT_OPERATOR = 396,
296
    T_NULLSAFE_OBJECT_OPERATOR = 397,
297
    T_COMMENT = 398,
298
    T_DOC_COMMENT = 399,
299
    T_OPEN_TAG = 400,
300
    T_OPEN_TAG_WITH_ECHO = 401,
301
    T_CLOSE_TAG = 402,
302
    T_WHITESPACE = 403,
303
    T_START_HEREDOC = 404,
304
    T_END_HEREDOC = 405,
305
    T_DOLLAR_OPEN_CURLY_BRACES = 406,
306
    T_CURLY_OPEN = 407,
307
    T_PAAMAYIM_NEKUDOTAYIM = 408,
308
    T_NS_SEPARATOR = 409,
309
    T_ELLIPSIS = 410,
310
    T_BAD_CHARACTER = 411,
311
    T_ERROR = 412
312
  };
313
#endif
314
315
/* Value type.  */
316
#if ! defined ZENDSTYPE && ! defined ZENDSTYPE_IS_DECLARED
317
typedef zend_parser_stack_elem ZENDSTYPE;
318
# define ZENDSTYPE_IS_TRIVIAL 1
319
# define ZENDSTYPE_IS_DECLARED 1
320
#endif
321
322
323
324
ZEND_API int zendparse (void);
325
326
#endif /* !YY_ZEND_SRC_PHP_SRC_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED  */
327
328
329
330
#ifdef short
331
# undef short
332
#endif
333
334
/* On compilers that do not define __PTRDIFF_MAX__ etc., make sure
335
   <limits.h> and (if available) <stdint.h> are included
336
   so that the code can choose integer types of a good width.  */
337
338
#ifndef __PTRDIFF_MAX__
339
# include <limits.h> /* INFRINGES ON USER NAME SPACE */
340
# if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
341
#  include <stdint.h> /* INFRINGES ON USER NAME SPACE */
342
#  define YY_STDINT_H
343
# endif
344
#endif
345
346
/* Narrow types that promote to a signed type and that can represent a
347
   signed or unsigned integer of at least N bits.  In tables they can
348
   save space and decrease cache pressure.  Promoting to a signed type
349
   helps avoid bugs in integer arithmetic.  */
350
351
#ifdef __INT_LEAST8_MAX__
352
typedef __INT_LEAST8_TYPE__ yytype_int8;
353
#elif defined YY_STDINT_H
354
typedef int_least8_t yytype_int8;
355
#else
356
typedef signed char yytype_int8;
357
#endif
358
359
#ifdef __INT_LEAST16_MAX__
360
typedef __INT_LEAST16_TYPE__ yytype_int16;
361
#elif defined YY_STDINT_H
362
typedef int_least16_t yytype_int16;
363
#else
364
typedef short yytype_int16;
365
#endif
366
367
#if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__
368
typedef __UINT_LEAST8_TYPE__ yytype_uint8;
369
#elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \
370
       && UINT_LEAST8_MAX <= INT_MAX)
371
typedef uint_least8_t yytype_uint8;
372
#elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX
373
typedef unsigned char yytype_uint8;
374
#else
375
typedef short yytype_uint8;
376
#endif
377
378
#if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__
379
typedef __UINT_LEAST16_TYPE__ yytype_uint16;
380
#elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \
381
       && UINT_LEAST16_MAX <= INT_MAX)
382
typedef uint_least16_t yytype_uint16;
383
#elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX
384
typedef unsigned short yytype_uint16;
385
#else
386
typedef int yytype_uint16;
387
#endif
388
389
#ifndef YYPTRDIFF_T
390
# if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__
391
16.5k
#  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
3.83k
  YY_CAST (YYPTRDIFF_T,                                 \
420
           (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1)  \
421
            ? YYPTRDIFF_MAXIMUM                         \
422
            : YY_CAST (YYSIZE_T, -1)))
423
424
732
#define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X))
425
426
/* Stored state numbers (used for stacks). */
427
typedef yytype_int16 yy_state_t;
428
429
/* State numbers in computations.  */
430
typedef int yy_state_fast_t;
431
432
#ifndef YY_
433
# if defined YYENABLE_NLS && YYENABLE_NLS
434
#  if ENABLE_NLS
435
#   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
436
#   define YY_(Msgid) dgettext ("bison-runtime", Msgid)
437
#  endif
438
# endif
439
# ifndef YY_
440
797
#  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
59.2k
# 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
10.7k
# 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
2.44M
#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
122
#  define YYSTACK_FREE YYFREE
542
#  ifndef YYSTACK_ALLOC_MAXIMUM
543
3.83k
#   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
122
#   define YYFREE free
561
#   if ! defined free && ! defined EXIT_SUCCESS
562
void free (void *); /* INFRINGES ON USER NAME SPACE */
563
#   endif
564
#  endif
565
# endif
566
#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
567
568
569
#if (! defined yyoverflow \
570
     && (! defined __cplusplus \
571
         || (defined ZENDSTYPE_IS_TRIVIAL && ZENDSTYPE_IS_TRIVIAL)))
572
573
/* A type that is properly aligned for any stack member.  */
574
union yyalloc
575
{
576
  yy_state_t yyss_alloc;
577
  YYSTYPE yyvs_alloc;
578
};
579
580
/* The size of the maximum gap between one aligned stack and the next.  */
581
244
# define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1)
582
583
/* The size of an array large to enough to hold all stacks, each with
584
   N elements.  */
585
# define YYSTACK_BYTES(N) \
586
     ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE)) \
587
      + YYSTACK_GAP_MAXIMUM)
588
589
# define YYCOPY_NEEDED 1
590
591
/* Relocate STACK from its old location to the new one.  The
592
   local variables YYSIZE and YYSTACKSIZE give the old and new number of
593
   elements in the stack, and YYPTR gives the new location of the
594
   stack.  Advance YYPTR to a properly aligned location for the next
595
   stack.  */
596
# define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \
597
244
    do                                                                  \
598
244
      {                                                                 \
599
244
        YYPTRDIFF_T yynewbytes;                                         \
600
244
        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
601
244
        Stack = &yyptr->Stack_alloc;                                    \
602
244
        yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
603
244
        yyptr += yynewbytes / YYSIZEOF (*yyptr);                        \
604
244
      }                                                                 \
605
244
    while (0)
606
607
#endif
608
609
#if defined YYCOPY_NEEDED && YYCOPY_NEEDED
610
/* Copy COUNT objects from SRC to DST.  The source and destination do
611
   not overlap.  */
612
# ifndef YYCOPY
613
#  if defined __GNUC__ && 1 < __GNUC__
614
#   define YYCOPY(Dst, Src, Count) \
615
244
      __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src)))
616
#  else
617
#   define YYCOPY(Dst, Src, Count)              \
618
      do                                        \
619
        {                                       \
620
          YYPTRDIFF_T yyi;                      \
621
          for (yyi = 0; yyi < (Count); yyi++)   \
622
            (Dst)[yyi] = (Src)[yyi];            \
623
        }                                       \
624
      while (0)
625
#  endif
626
# endif
627
#endif /* !YYCOPY_NEEDED */
628
629
/* YYFINAL -- State number of the termination state.  */
630
2.44M
#define YYFINAL  3
631
/* YYLAST -- Last index in YYTABLE.  */
632
4.04M
#define YYLAST   10485
633
634
/* YYNTOKENS -- Number of terminals.  */
635
1.63M
#define YYNTOKENS  185
636
/* YYNNTS -- Number of nonterminals.  */
637
#define YYNNTS  189
638
/* YYNRULES -- Number of rules.  */
639
#define YYNRULES  636
640
/* YYNSTATES -- Number of states.  */
641
#define YYNSTATES  1203
642
643
0
#define YYUNDEFTOK  2
644
1.32M
#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
1.32M
  (0 <= (YYX) && (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
651
652
/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
653
   as returned by yylex.  */
654
static const yytype_uint8 yytranslate[] =
655
{
656
       0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
657
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
658
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
659
       2,     2,     2,    57,   183,     2,   184,    56,     2,     2,
660
     177,   178,    54,    52,   174,    53,    49,    55,     2,     2,
661
       2,     2,     2,     2,     2,     2,     2,     2,    31,   176,
662
      44,    16,    46,    30,    67,     2,     2,     2,     2,     2,
663
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
664
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
665
       2,   181,     2,   175,    36,     2,   182,     2,     2,     2,
666
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
667
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
668
       2,     2,     2,   179,    35,   180,    59,     2,     2,     2,
669
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
670
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
671
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
672
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
673
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
674
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
675
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
676
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
677
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
678
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
679
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
680
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
681
       2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
682
       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
683
      15,    17,    18,    19,    20,    21,    22,    23,    24,    25,
684
      26,    27,    28,    29,    32,    33,    34,    37,    38,    39,
685
      40,    41,    42,    43,    45,    47,    48,    50,    51,    58,
686
      60,    61,    62,    63,    64,    65,    66,    68,    69,    70,
687
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
688
      81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
689
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
690
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
691
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
692
     121,   122,   123,   124,   125,   126,   127,   128,   129,   130,
693
     131,   132,   133,   134,   135,   136,   137,   138,   139,   140,
694
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
695
     151,   152,   153,   154,   155,   156,   157,   158,   159,   160,
696
     161,   162,   163,   164,   165,   166,   167,   168,   169,   170,
697
     171,   172,   173
698
};
699
700
#if ZENDDEBUG
701
  /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
702
static const yytype_int16 yyrline[] =
703
{
704
       0,   304,   304,   308,   308,   308,   308,   308,   308,   308,
705
     308,   309,   309,   309,   309,   309,   309,   309,   309,   309,
706
     309,   309,   309,   310,   310,   310,   310,   310,   310,   310,
707
     310,   310,   310,   311,   311,   311,   311,   311,   311,   311,
708
     311,   311,   311,   312,   312,   312,   312,   312,   312,   312,
709
     312,   312,   312,   312,   313,   313,   313,   313,   313,   313,
710
     313,   313,   314,   314,   314,   314,   314,   314,   314,   314,
711
     314,   314,   314,   315,   319,   320,   320,   320,   320,   320,
712
     320,   320,   324,   325,   329,   330,   338,   339,   344,   345,
713
     350,   351,   356,   357,   361,   362,   363,   364,   368,   370,
714
     375,   377,   382,   386,   387,   391,   392,   393,   394,   395,
715
     399,   400,   404,   405,   406,   407,   411,   414,   414,   417,
716
     417,   420,   421,   422,   423,   427,   428,   432,   437,   442,
717
     443,   447,   449,   454,   456,   461,   463,   468,   469,   473,
718
     475,   480,   482,   487,   488,   492,   494,   500,   501,   502,
719
     503,   510,   511,   512,   513,   515,   517,   519,   521,   522,
720
     523,   524,   525,   526,   527,   528,   529,   530,   532,   536,
721
     535,   539,   540,   542,   543,   544,   548,   550,   555,   556,
722
     560,   561,   565,   566,   570,   571,   575,   579,   580,   588,
723
     595,   596,   600,   601,   605,   605,   608,   608,   614,   615,
724
     620,   622,   627,   628,   632,   633,   634,   638,   638,   644,
725
     644,   650,   650,   656,   657,   661,   666,   667,   671,   672,
726
     676,   677,   681,   682,   686,   687,   688,   689,   693,   694,
727
     698,   699,   703,   704,   708,   709,   710,   711,   715,   716,
728
     718,   720,   722,   728,   733,   734,   738,   739,   743,   745,
729
     750,   751,   756,   757,   762,   765,   771,   772,   777,   780,
730
     786,   787,   793,   794,   799,   801,   806,   807,   811,   813,
731
     819,   823,   830,   831,   835,   836,   837,   838,   842,   843,
732
     847,   848,   852,   854,   859,   860,   867,   868,   869,   870,
733
     874,   875,   876,   880,   881,   885,   887,   892,   894,   899,
734
     900,   904,   905,   909,   911,   925,   926,   927,   931,   933,
735
     935,   940,   942,   944,   946,   948,   953,   954,   958,   959,
736
     963,   969,   970,   974,   975,   979,   981,   987,   990,   993,
737
     996,   999,  1003,  1007,  1008,  1009,  1014,  1015,  1019,  1020,
738
    1021,  1025,  1027,  1032,  1033,  1037,  1042,  1044,  1048,  1053,
739
    1061,  1063,  1067,  1072,  1073,  1077,  1080,  1085,  1087,  1094,
740
    1096,  1103,  1105,  1110,  1111,  1112,  1113,  1114,  1115,  1116,
741
    1117,  1118,  1119,  1123,  1124,  1128,  1130,  1135,  1137,  1142,
742
    1143,  1144,  1150,  1151,  1155,  1156,  1164,  1163,  1174,  1175,
743
    1176,  1181,  1182,  1186,  1187,  1191,  1192,  1200,  1204,  1205,
744
    1208,  1212,  1213,  1214,  1218,  1219,  1223,  1224,  1225,  1226,
745
    1230,  1230,  1240,  1242,  1244,  1249,  1254,  1256,  1258,  1260,
746
    1262,  1264,  1269,  1274,  1276,  1278,  1280,  1282,  1284,  1286,
747
    1288,  1290,  1292,  1294,  1296,  1298,  1300,  1301,  1302,  1303,
748
    1304,  1306,  1308,  1310,  1312,  1314,  1315,  1316,  1317,  1318,
749
    1319,  1320,  1321,  1322,  1323,  1324,  1325,  1326,  1327,  1328,
750
    1329,  1330,  1331,  1333,  1335,  1337,  1339,  1341,  1343,  1345,
751
    1347,  1349,  1351,  1353,  1358,  1359,  1360,  1362,  1364,  1366,
752
    1367,  1368,  1369,  1370,  1371,  1372,  1373,  1374,  1379,  1380,
753
    1381,  1382,  1383,  1384,  1385,  1386,  1387,  1388,  1389,  1390,
754
    1391,  1393,  1398,  1403,  1411,  1415,  1419,  1423,  1427,  1431,
755
    1432,  1436,  1437,  1441,  1442,  1446,  1447,  1451,  1453,  1458,
756
    1460,  1462,  1462,  1469,  1472,  1476,  1477,  1478,  1482,  1484,
757
    1485,  1490,  1491,  1496,  1497,  1498,  1499,  1503,  1504,  1505,
758
    1506,  1508,  1509,  1510,  1511,  1515,  1516,  1517,  1518,  1519,
759
    1520,  1521,  1522,  1523,  1524,  1528,  1530,  1532,  1534,  1539,
760
    1540,  1544,  1548,  1549,  1553,  1554,  1555,  1559,  1560,  1564,
761
    1565,  1566,  1567,  1571,  1573,  1575,  1577,  1579,  1583,  1585,
762
    1587,  1589,  1594,  1595,  1596,  1600,  1602,  1607,  1609,  1611,
763
    1613,  1615,  1617,  1622,  1623,  1624,  1628,  1629,  1630,  1634,
764
    1639,  1640,  1644,  1646,  1651,  1653,  1655,  1657,  1659,  1661,
765
    1664,  1670,  1672,  1674,  1676,  1681,  1683,  1686,  1689,  1692,
766
    1694,  1696,  1699,  1703,  1704,  1705,  1706,  1711,  1712,  1713,
767
    1715,  1717,  1719,  1721,  1726,  1727,  1732
768
};
769
#endif
770
771
#if ZENDDEBUG || YYERROR_VERBOSE || 1
772
/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
773
   First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
774
static const char *const yytname[] =
775
{
776
  "\"end of file\"", "error", "$undefined", "\"'throw'\"",
777
  "PREC_ARROW_FUNCTION", "\"'include'\"", "\"'include_once'\"",
778
  "\"'require'\"", "\"'require_once'\"", "\"'or'\"", "\"'xor'\"",
779
  "\"'and'\"", "\"'print'\"", "\"'yield'\"", "\"'=>'\"",
780
  "\"'yield from'\"", "'='", "\"'+='\"", "\"'-='\"", "\"'*='\"",
781
  "\"'/='\"", "\"'.='\"", "\"'%='\"", "\"'&='\"", "\"'|='\"", "\"'^='\"",
782
  "\"'<<='\"", "\"'>>='\"", "\"'**='\"", "\"'?""?='\"", "'?'", "':'",
783
  "\"'?""?'\"", "\"'||'\"", "\"'&&'\"", "'|'", "'^'", "\"amp\"", "\"'&'\"",
784
  "\"'=='\"", "\"'!='\"", "\"'==='\"", "\"'!=='\"", "\"'<=>'\"", "'<'",
785
  "\"'<='\"", "'>'", "\"'>='\"", "\"'|>'\"", "'.'", "\"'<<'\"", "\"'>>'\"",
786
  "'+'", "'-'", "'*'", "'/'", "'%'", "'!'", "\"'instanceof'\"", "'~'",
787
  "\"'(int)'\"", "\"'(float)'\"", "\"'(string)'\"", "\"'(array)'\"",
788
  "\"'(object)'\"", "\"'(bool)'\"", "\"'(unset)'\"", "'@'", "\"'**'\"",
789
  "\"'clone'\"", "T_NOELSE", "\"'elseif'\"", "\"'else'\"", "\"integer\"",
790
  "\"floating-point number\"", "\"identifier\"",
791
  "\"fully qualified name\"", "\"namespace-relative name\"",
792
  "\"namespaced name\"", "\"variable\"", "T_INLINE_HTML",
793
  "\"string content\"", "\"quoted string\"", "\"variable name\"",
794
  "\"number\"", "\"'eval'\"", "\"'new'\"", "\"'exit'\"", "\"'if'\"",
795
  "\"'endif'\"", "\"'echo'\"", "\"'do'\"", "\"'while'\"", "\"'endwhile'\"",
796
  "\"'for'\"", "\"'endfor'\"", "\"'foreach'\"", "\"'endforeach'\"",
797
  "\"'declare'\"", "\"'enddeclare'\"", "\"'as'\"", "\"'switch'\"",
798
  "\"'endswitch'\"", "\"'case'\"", "\"'default'\"", "\"'match'\"",
799
  "\"'break'\"", "\"'continue'\"", "\"'goto'\"", "\"'function'\"",
800
  "\"'fn'\"", "\"'const'\"", "\"'return'\"", "\"'try'\"", "\"'catch'\"",
801
  "\"'finally'\"", "\"'use'\"", "\"'insteadof'\"", "\"'global'\"",
802
  "\"'static'\"", "\"'abstract'\"", "\"'final'\"", "\"'private'\"",
803
  "\"'protected'\"", "\"'public'\"", "\"'private(set)'\"",
804
  "\"'protected(set)'\"", "\"'public(set)'\"", "\"'readonly'\"",
805
  "\"'var'\"", "\"'unset'\"", "\"'isset'\"", "\"'empty'\"",
806
  "\"'__halt_compiler'\"", "\"'class'\"", "\"'trait'\"", "\"'interface'\"",
807
  "\"'enum'\"", "\"'extends'\"", "\"'implements'\"", "\"'namespace'\"",
808
  "\"'list'\"", "\"'array'\"", "\"'callable'\"", "\"'__LINE__'\"",
809
  "\"'__FILE__'\"", "\"'__DIR__'\"", "\"'__CLASS__'\"", "\"'__TRAIT__'\"",
810
  "\"'__METHOD__'\"", "\"'__FUNCTION__'\"", "\"'__PROPERTY__'\"",
811
  "\"'__NAMESPACE__'\"", "\"'#['\"", "\"'++'\"", "\"'--'\"",
812
  "\"'(void)'\"", "\"'->'\"", "\"'?->'\"", "\"comment\"",
813
  "\"doc comment\"", "\"open tag\"", "\"'<?='\"", "\"'?>'\"",
814
  "\"whitespace\"", "\"heredoc start\"", "\"heredoc end\"", "\"'${'\"",
815
  "\"'{$'\"", "\"'::'\"", "\"'\\\\'\"", "\"'...'\"",
816
  "\"invalid character\"", "T_ERROR", "','", "']'", "';'", "'('", "')'",
817
  "'{'", "'}'", "'['", "'`'", "'\"'", "'$'", "$accept", "start",
818
  "reserved_non_modifiers", "semi_reserved", "ampersand", "identifier",
819
  "top_statement_list", "namespace_declaration_name", "namespace_name",
820
  "legacy_namespace_name", "name", "attribute_decl", "attribute_group",
821
  "attribute", "attributes", "attributed_statement",
822
  "attributed_top_statement", "top_statement", "$@1", "$@2", "use_type",
823
  "group_use_declaration", "mixed_group_use_declaration", "possible_comma",
824
  "inline_use_declarations", "unprefixed_use_declarations",
825
  "use_declarations", "inline_use_declaration",
826
  "unprefixed_use_declaration", "use_declaration", "const_list",
827
  "inner_statement_list", "inner_statement", "statement", "$@3",
828
  "catch_list", "catch_name_list", "optional_variable",
829
  "finally_statement", "unset_variables", "unset_variable",
830
  "function_name", "function_declaration_statement", "is_reference",
831
  "is_variadic", "class_declaration_statement", "@4", "@5",
832
  "class_modifiers", "anonymous_class_modifiers",
833
  "anonymous_class_modifiers_optional", "class_modifier",
834
  "trait_declaration_statement", "@6", "interface_declaration_statement",
835
  "@7", "enum_declaration_statement", "@8", "enum_backing_type",
836
  "enum_case", "enum_case_expr", "extends_from", "interface_extends_list",
837
  "implements_list", "foreach_variable", "for_statement",
838
  "foreach_statement", "declare_statement", "switch_case_list",
839
  "case_list", "match", "match_arm_list", "non_empty_match_arm_list",
840
  "match_arm", "match_arm_cond_list", "while_statement",
841
  "if_stmt_without_else", "if_stmt", "alt_if_stmt_without_else",
842
  "alt_if_stmt", "parameter_list", "non_empty_parameter_list",
843
  "attributed_parameter", "optional_cpp_modifiers", "parameter",
844
  "optional_type_without_static", "type_expr", "type",
845
  "union_type_element", "union_type", "intersection_type",
846
  "type_expr_without_static", "type_without_static",
847
  "union_type_without_static_element", "union_type_without_static",
848
  "intersection_type_without_static", "return_type", "argument_list",
849
  "non_empty_argument_list", "clone_argument_list",
850
  "non_empty_clone_argument_list", "argument_no_expr", "argument",
851
  "global_var_list", "global_var", "static_var_list", "static_var",
852
  "class_statement_list", "attributed_class_statement", "class_statement",
853
  "class_name_list", "trait_adaptations", "trait_adaptation_list",
854
  "trait_adaptation", "trait_precedence", "trait_alias",
855
  "trait_method_reference", "absolute_trait_method_reference",
856
  "method_body", "property_modifiers", "method_modifiers",
857
  "class_const_modifiers", "non_empty_member_modifiers", "member_modifier",
858
  "property_list", "property", "hooked_property", "property_hook_list",
859
  "optional_property_hook_list", "property_hook_modifiers",
860
  "property_hook", "@9", "property_hook_body", "optional_parameter_list",
861
  "class_const_list", "class_const_decl", "const_decl", "echo_expr_list",
862
  "echo_expr", "for_cond_exprs", "for_exprs", "non_empty_for_exprs",
863
  "anonymous_class", "@10", "new_dereferenceable",
864
  "new_non_dereferenceable", "expr", "inline_function", "fn", "function",
865
  "backup_doc_comment", "backup_fn_flags", "backup_lex_pos", "returns_ref",
866
  "lexical_vars", "lexical_var_list", "lexical_var", "function_call",
867
  "@11", "class_name", "class_name_reference", "backticks_expr",
868
  "ctor_arguments", "dereferenceable_scalar", "scalar", "constant",
869
  "class_constant", "optional_expr", "variable_class_name",
870
  "fully_dereferenceable", "array_object_dereferenceable", "callable_expr",
871
  "callable_variable", "variable", "simple_variable", "static_member",
872
  "new_variable", "member_name", "property_name", "array_pair_list",
873
  "possible_array_pair", "non_empty_array_pair_list", "array_pair",
874
  "encaps_list", "encaps_var", "encaps_var_offset",
875
  "internal_functions_in_yacc", "isset_variables", "isset_variable", YY_NULLPTR
876
};
877
#endif
878
879
# ifdef YYPRINT
880
/* YYTOKNUM[NUM] -- (External) token number corresponding to the
881
   (internal) symbol number NUM (which must be that of a token).  */
882
static const yytype_int16 yytoknum[] =
883
{
884
       0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
885
     265,   266,   267,   268,   269,   270,    61,   271,   272,   273,
886
     274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
887
      63,    58,   284,   285,   286,   124,    94,   287,   288,   289,
888
     290,   291,   292,   293,    60,   294,    62,   295,   296,    46,
889
     297,   298,    43,    45,    42,    47,    37,    33,   299,   126,
890
     300,   301,   302,   303,   304,   305,   306,    64,   307,   308,
891
     309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
892
     319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
893
     329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
894
     339,   340,   341,   342,   343,   344,   345,   346,   347,   348,
895
     349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
896
     359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
897
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
898
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
899
     389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
900
     399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
901
     409,   410,   411,   412,    44,    93,    59,    40,    41,   123,
902
     125,    91,    96,    34,    36
903
};
904
# endif
905
906
2.49M
#define YYPACT_NINF (-1085)
907
908
#define yypact_value_is_default(Yyn) \
909
2.49M
  ((Yyn) == YYPACT_NINF)
910
911
18.6k
#define YYTABLE_NINF (-608)
912
913
#define yytable_value_is_error(Yyn) \
914
18.6k
  ((Yyn) == YYTABLE_NINF)
915
916
  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
917
     STATE-NUM.  */
918
static const yytype_int16 yypact[] =
919
{
920
   -1085,    60,  2287, -1085,  7369,  7369,  7369,  7369,  7369,  7369,
921
    7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,
922
    7369,  7369,  7369,  7369,  7523, -1085, -1085,    35, -1085, -1085,
923
   -1085, -1085, -1085, -1085,  -106,   275,   -90,   -76,  7369,  5674,
924
     -24,    27,    38,    42,    84,   108,  7369,  7369,    22, -1085,
925
   -1085,    92,  7369,   111,   454,   -42,   -28, -1085, -1085,   -90,
926
     149,   190,   206,   215, -1085, -1085, -1085, -1085,  9623,   222,
927
     229, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
928
   -1085, 10001, 10001,  7369,   139, -1085,  7369, -1085,  5828,   240,
929
     251,   -48,   127, -1085,   603, -1085, -1085, -1085, -1085, -1085,
930
   -1085,   221, -1085, -1085, -1085, -1085, -1085,   180, -1085,   333,
931
   -1085,   274, -1085,  9133, -1085,   587,   587, -1085,   147,   410,
932
   -1085,   113,   379,   243,   248,   358, -1085,   277,  1843, -1085,
933
   -1085, -1085, -1085,   573,   -90,   268, 10325,   587, 10325, 10325,
934
   10325, 10325,  4598, 10417,  4598,   376,   376,   140,   376,   376,
935
     376,   376,   376,   376,   376,   376,   376,  1279, -1085, -1085,
936
   -1085,  7369, -1085, -1085,  7369, -1085,   431,   490,   323, -1085,
937
   -1085,   320,   -90, -1085,   439,  1461, -1085, -1085,  7369,   -96,
938
   -1085, 10325,   400,  7369,  6290,  7369,    92,  7369,  7369, 10325,
939
     324,   341,   362,   518,    57, -1085,   365, -1085, -1085, -1085,
940
   -1085, -1085, -1085, -1085,   -38,   310,   370,   259, -1085,   352,
941
   -1085, -1085,   545,   368, -1085, -1085, -1085, 10001,  7369,  7369,
942
     386,   505,   511,   514,   526, -1085, -1085, -1085, -1085, -1085,
943
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
944
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
945
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
946
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
947
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
948
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
949
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
950
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,   417,   428,
951
    5828,  5828,   296,   275,  7369,  5828,   427,   465, -1085, -1085,
952
     476,   476,  9183,   457,   179, -1085,  6444, 10001,   214, -1085,
953
    8483,  2441, -1085, -1085,   492,  7369, 10001, 10225,   441, -1085,
954
     475, -1085,   196,   449,   281,   196,    -4,  7369, -1085, -1085,
955
     573, -1085, -1085, -1085, -1085, -1085,   512,  5674,   516,   634,
956
     515,  7369,  7369,  7369,  6598,  7369,  7369,  7369,  7369,  7369,
957
    7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,
958
    7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,
959
     150,  7369, -1085, -1085, -1085,    20,  4604,  4754,    51,    51,
960
    7369,   -90,  5982,  7369,  7369,  7369,  7369,  7369,  7369,  7369,
961
    7369,  7369,  7369,  7369,  7369,  7369, -1085, -1085, -1085,  7369,
962
    7369,  7369,  7369,  7369,  7369,  7369,  6752, -1085,  7523,    24,
963
    -106,   551,    17,   108,   678,   680,   -36,   -90,   190,   206,
964
     222,   229,   685,   686,   688,   695,   696,   698,   699,   701,
965
     710,  7369, -1085,   720,   580, -1085,  8433,  8533,  8583, -1085,
966
   -1085, -1085,   -42, -1085,    51,    51,   -42,  7369, -1085,   583,
967
   -1085, -1085, 10325,  8633,  7369, -1085,   578,  8683,  7369,   582,
968
     590, 10325, 10156,   102,  8733,  8783, -1085, -1085, -1085,  7369,
969
      92, -1085, -1085,  2595,   690,   589,   -35,   594,   445, -1085,
970
     310, -1085,   -42, -1085,  7369,   687, -1085,   600, -1085,   249,
971
   10325,   601, -1085,  8833,   602,   638, -1085,   644,   754, -1085,
972
     607, -1085,   610,   611, -1085,   616,   -90,   -90,  8883,   619,
973
   -1085,   717,   721,   286, -1085, -1085,   507,  8131,   620, -1085,
974
   -1085, -1085,   425,   637, -1085,   979, -1085, -1085, -1085,  5828,
975
   10325,   267,  6136,   781,  5828, -1085, -1085,  8181, -1085,   740,
976
    7369, -1085,  7369, -1085, -1085, 10374,  9616,  4598,  7369, 10275,
977
    7676,  7831,  7981,  4753,  9750,  9898,  9898, 10049, 10049, 10049,
978
   10049, 10049,  1630,  1630,  1630,  1630,   753,  1121,   802,   802,
979
     692,   692,   140,   140,   140, -1085,   376,   639, -1085, -1085,
980
   -1085,   640,  7369,   642,   646,   -90,  7369,   642,   646,   -90,
981
   -1085,  7369, -1085,   -90,   -90,   649, -1085, 10001,  4598,  4598,
982
    4598,  4598,  4598,  4598,  4598,  4598,  4598,  4598,  4598,  4598,
983
    4598,  4598,  4598, 10325,  6907,  1825,   647,  1643, -1085, -1085,
984
     -90, -1085, -1085, -1085, -1085,   651,  1825,   650,  4904, -1085,
985
    7369,  5058, 10325,  6290,  7061,  9370, -1085,    -8,   648, 10325,
986
   -1085, -1085, -1085,   315,   652, -1085, -1085,   730, -1085, -1085,
987
   10325, -1085, 10001,   654,  7369,   655, -1085, -1085,   296,   697,
988
     659,   296, -1085,   146,   697, -1085,  1979,   826, -1085,   296,
989
     669, -1085,   668, -1085, -1085, -1085,   762, -1085, -1085, -1085,
990
     672, -1085,  7369, -1085, -1085,   670, -1085,   673,   675, 10001,
991
   10325,  7369, -1085, -1085,   638,  8933,  8983,  2749,  7676,  7369,
992
    1894,   691,  1894,  8231, -1085,  8282, -1085,  8332, -1085, -1085,
993
   -1085,   476, -1085, 10325, -1085, -1085, -1085, -1085,   638, -1085,
994
   -1085, -1085, -1085, -1085,  9033, -1085, -1085, -1085,   702,   689,
995
    9333,  7369, 10325,   700,  5828, 10001,     8,    28,  5212,   703,
996
     704, -1085,  7215, -1085,   581,   774,   224,   707, -1085, -1085,
997
     224, -1085,   708, -1085, -1085, -1085,   296, -1085, -1085,   711,
998
   -1085,   683,   480, -1085, -1085, -1085,   480, -1085, -1085,   154,
999
     840,   851,   852, -1085, -1085,  2133, -1085,  7369, -1085, -1085,
1000
   -1085, -1085,  9283,   714,   826,  5828,   502,  4598,   697,  5674,
1001
     860,   716,  7676, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
1002
   -1085, -1085, -1085,  1540,   719,   724, -1085,   166, -1085,  1722,
1003
   -1085,  1894,   722,   725,   725, -1085,   697,  4443,   727,  2903,
1004
    6290,  7061, 10325,  5828,   726,    29,  9370,  5366, -1085, -1085,
1005
   -1085, -1085,   472, -1085,    65,   733,   729,   736, -1085,   737,
1006
   10325,   735,   734, -1085,   839, -1085,   315,   739,   741, -1085,
1007
   -1085,   711,   742,  1130,   296, -1085, -1085,   879,    19,   480,
1008
      15,    15,   480,   745, -1085,  4598,   746, -1085,   747, -1085,
1009
   -1085, -1085, -1085, -1085,   889,  2048, -1085,   494,   494,   890,
1010
   -1085,   615,   894,   895,   896, -1085,   758,   816, -1085, -1085,
1011
     761,   760,  9383,   763,    31,   765, -1085, -1085, -1085,  3057,
1012
     537,   768,  7369,    41,    74, -1085, -1085,   932, -1085,  7215,
1013
   -1085,  7369,   933,   296, -1085, -1085, -1085, -1085,   224,   769,
1014
   -1085, -1085,   296, -1085, -1085,  1376, -1085, -1085, -1085,   166,
1015
     841,   837,  2209, -1085,  2356, -1085, -1085, -1085, -1085, -1085,
1016
   -1085, -1085, -1085,   826,   776,  4443,   146,   939, -1085, -1085,
1017
     919,    21, -1085,   786,   494,   171,   171,   494,   889,   787,
1018
     889,   779, -1085,  5520, -1085,  5366,  3211,   791,   792, -1085,
1019
    9083, -1085, -1085, -1085,  7369, -1085, 10325,  7369,    48, -1085,
1020
    3365, -1085, -1085,  2818,  9773,   157, -1085,   892,   587,  7985,
1021
   -1085,  2972, -1085, -1085, -1085, -1085, -1085,   893, -1085, -1085,
1022
   -1085, -1085, -1085, -1085,   300, -1085, -1085, -1085, -1085, -1085,
1023
   -1085,   797, -1085, -1085, -1085, -1085,  4443,  4443, 10325, 10325,
1024
     296, -1085,   798, -1085, -1085,   961, -1085,  7684, -1085,   962,
1025
     482, -1085, -1085,  9773,   965,   966,   969,   970,   971,  9923,
1026
     488, -1085, -1085,  3126, -1085, -1085,   809, -1085,   910,   817,
1027
   -1085,   813,  3280,  3519, -1085,  4443,  4443, -1085,   818,  7369,
1028
     819,   824, -1085, -1085,  7834, -1085,   823,   827,   900,   885,
1029
     838,  7369,   831,   936, -1085, -1085,  7369,  7369,   965,   499,
1030
    9923, -1085, -1085,  7369,     1, -1085, -1085,   300,   833, -1085,
1031
   -1085,   836, -1085, 10325, -1085, -1085, -1085, -1085, -1085,  9473,
1032
     296,  9773, 10325, -1085,  1000, -1085,   842, 10325, 10325, -1085,
1033
   -1085, 10325,  7369, -1085, -1085,  3673, -1085, -1085,  3827, -1085,
1034
    3981, -1085, -1085,  9773,   711, -1085,   844,  1095,  7369, -1085,
1035
    1894, -1085, -1085, -1085,  8382,  1142, -1085, -1085, -1085, -1085,
1036
   -1085, -1085,  1540,  1722,   587, -1085, 10325,   846, -1085, -1085,
1037
   -1085, -1085,  1180, -1085,   942, -1085,   889, -1085, -1085, -1085,
1038
   -1085,   -80,   843, -1085, -1085, -1085,  1894, -1085,  4135, -1085,
1039
     849,    14, -1085, -1085,  7369, -1085, -1085, -1085,  9233,  4289,
1040
   -1085, -1085, -1085
1041
};
1042
1043
  /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
1044
     Performed when YYTABLE does not specify something else to do.  Zero
1045
     means the default is an error.  */
1046
static const yytype_int16 yydefact[] =
1047
{
1048
      87,     0,     2,     1,     0,     0,     0,     0,     0,     0,
1049
     492,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1050
       0,     0,     0,     0,     0,   537,   538,    94,    96,    97,
1051
      95,   582,   164,   535,     0,   202,   531,     0,     0,     0,
1052
       0,     0,     0,     0,     0,     0,   559,   559,     0,   505,
1053
     504,     0,   559,     0,     0,     0,   523,   204,   205,   206,
1054
       0,     0,     0,     0,   196,   207,   209,   211,   119,     0,
1055
       0,   546,   547,   548,   554,   549,   550,   551,   552,   553,
1056
     506,     0,     0,     0,     0,   171,     0,   146,   600,   528,
1057
       0,     0,   545,   103,     0,   110,   113,    86,   112,   105,
1058
     106,     0,   198,   107,   108,   109,   501,   256,   152,     0,
1059
     153,   474,   475,     0,   497,   509,   509,   577,     0,   542,
1060
     489,   543,   544,     0,   567,     0,   521,   578,   416,   573,
1061
     579,   479,    94,   523,     0,     0,   496,   509,   629,   630,
1062
     632,   633,   491,   493,   495,   458,   459,   460,   461,   480,
1063
     481,   482,   483,   484,   485,   486,   488,     0,   421,   422,
1064
     174,     0,   523,   206,     0,   524,   202,   203,     0,   200,
1065
     413,   525,   415,   587,   526,     0,   532,   487,     0,     0,
1066
     399,   400,     0,     0,   404,     0,     0,     0,     0,   560,
1067
       0,     0,     0,     0,     0,   144,     0,   146,    90,    93,
1068
      91,   125,   126,    92,   141,     0,     0,     0,   136,     0,
1069
     319,   320,   323,     0,   322,   499,   518,     0,     0,     0,
1070
       0,     0,     0,     0,     0,    33,     3,     4,     6,     7,
1071
       8,     9,    10,    46,    47,    11,    13,    16,    17,    84,
1072
      89,     5,    12,    14,    15,    18,    19,    20,    21,    22,
1073
      23,    24,    25,    26,    27,    28,    29,    49,    50,    51,
1074
      52,    71,    53,    41,    42,    43,    70,    44,    45,    30,
1075
      31,    32,    34,    35,    36,    75,    76,    77,    78,    79,
1076
      80,    81,    37,    38,    39,    40,    61,    59,    60,    72,
1077
      56,    57,    58,    48,    54,    55,    66,    67,    68,    62,
1078
      63,    65,    64,    73,    69,    74,    85,    88,   117,     0,
1079
     600,   600,     0,   202,     0,   600,   566,   564,   568,   565,
1080
     437,   439,     0,   615,     0,   540,     0,     0,     0,   613,
1081
       0,     0,    83,    82,     0,     0,     0,   605,     0,   603,
1082
     599,   601,   529,     0,   530,     0,     0,     0,   584,   517,
1083
       0,   104,   114,   498,   194,   199,     0,     0,     0,     0,
1084
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1085
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1086
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1087
       0,     0,   165,   510,   506,   506,     0,     0,     0,     0,
1088
     559,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1089
       0,     0,     0,     0,     0,     0,   436,   438,   506,     0,
1090
      33,     3,     4,     6,     7,    46,   492,   313,    13,    94,
1091
       5,    12,   531,    71,   505,   504,    75,    81,    39,    40,
1092
      48,    54,   546,   547,   548,   554,   549,   550,   551,   552,
1093
     553,   312,   305,     0,   129,   309,     0,     0,     0,   414,
1094
     201,   410,     0,   412,     0,     0,     0,   559,   301,   129,
1095
     317,   303,   316,     0,     0,   163,     0,     0,     0,     0,
1096
     405,   409,     0,     0,     0,     0,   158,   159,   173,     0,
1097
       0,   111,   160,     0,     0,     0,   141,     0,     0,   121,
1098
       0,   123,     0,   161,     0,     0,   162,   129,   184,   562,
1099
     636,   129,   634,     0,     0,   218,   506,   220,   213,   116,
1100
       0,    87,     0,     0,   100,   129,    98,     0,     0,     0,
1101
     175,     0,     0,     0,   539,   614,     0,     0,   562,   612,
1102
     541,   611,   473,     0,   151,     0,   148,   145,   147,   600,
1103
     608,   562,     0,   534,   600,   490,   536,     0,   500,     0,
1104
       0,   257,     0,   146,   260,   442,   444,   443,     0,     0,
1105
     478,   440,   441,   445,   448,   446,   447,   464,   465,   462,
1106
     463,   471,   467,   468,   469,   470,   466,   449,   456,   457,
1107
     450,   451,   452,   454,   455,   472,   453,     0,   187,   188,
1108
     506,     0,     0,   555,   585,     0,     0,   556,   586,     0,
1109
     596,     0,   598,   580,   581,     0,   522,     0,   419,   423,
1110
     424,   425,   427,   428,   429,   430,   431,   432,   433,   434,
1111
     426,   435,   494,   315,     0,   130,     0,     0,   631,   527,
1112
     531,   591,   589,   590,   592,     0,   130,     0,     0,   398,
1113
       0,     0,   408,   401,     0,     0,   169,     0,     0,   506,
1114
     143,   176,   142,     0,     0,   122,   124,   141,   135,   318,
1115
     324,   321,   130,     0,   130,     0,   628,   115,     0,   222,
1116
       0,     0,   506,     0,   222,    87,     0,     0,   533,   130,
1117
       0,    99,   563,   534,   617,   618,     0,   623,   626,   624,
1118
       0,   620,     0,   619,   622,     0,   149,     0,     0,     0,
1119
     604,     0,   602,   583,   218,     0,     0,     0,   477,     0,
1120
     268,     0,   268,     0,   519,     0,   520,     0,   575,   576,
1121
     574,   420,   314,   311,   310,   306,   307,   308,   218,   588,
1122
     304,   302,   146,   254,     0,   146,   252,   154,     0,     0,
1123
     403,     0,   406,     0,   600,     0,     0,   562,     0,   238,
1124
     238,   157,   244,   397,   182,   139,     0,   129,   132,   137,
1125
       0,   185,     0,   635,   627,   219,     0,   506,   326,   221,
1126
     336,     0,     0,   279,   290,   291,     0,   292,   214,   274,
1127
       0,   276,   277,   278,   506,     0,   120,     0,   101,   102,
1128
     625,   616,     0,     0,   610,   600,   562,   418,   222,     0,
1129
       0,     0,   476,   369,   370,   371,   365,   364,   363,   368,
1130
     367,   366,   372,   268,     0,   129,   264,   272,   267,   269,
1131
     361,   268,     0,   557,   558,   597,   222,   258,     0,     0,
1132
     404,     0,   407,   600,     0,   562,     0,     0,   146,   232,
1133
     170,   238,     0,   238,     0,   129,     0,   129,   246,   129,
1134
     250,     0,     0,   172,     0,   138,   130,     0,   129,   134,
1135
     166,   223,     0,   357,     0,   326,   275,     0,     0,     0,
1136
       0,     0,     0,     0,   118,   417,     0,   150,     0,   506,
1137
     255,   146,   261,   266,   299,   268,   262,     0,     0,   190,
1138
     273,   286,     0,   288,   289,   362,     0,   511,   506,   155,
1139
       0,     0,   402,     0,   534,     0,   146,   230,   167,     0,
1140
       0,     0,     0,     0,     0,   234,   130,     0,   243,   130,
1141
     245,   130,     0,     0,   146,   140,   131,   128,   130,     0,
1142
     326,   506,     0,   356,   208,   357,   332,   333,   325,   272,
1143
       0,     0,   355,   337,   357,   281,   284,   280,   282,   283,
1144
     285,   326,   621,   609,     0,   259,     0,     0,   265,   287,
1145
       0,     0,   191,   192,     0,     0,     0,     0,   299,     0,
1146
     299,     0,   253,     0,   226,     0,     0,     0,     0,   236,
1147
       0,   146,   146,   235,     0,   247,   251,     0,   180,   178,
1148
       0,   133,   127,   357,     0,     0,   334,     0,   509,     0,
1149
     210,   357,   326,   300,   507,   294,   193,     0,   297,   293,
1150
     295,   296,   298,   507,     0,   507,   326,   146,   228,   156,
1151
     168,     0,   233,   237,   146,   146,   241,   242,   249,   248,
1152
       0,   181,     0,   183,   197,   216,   338,     0,   335,   506,
1153
       0,   374,   328,     0,    94,   279,   290,   291,     0,     0,
1154
       0,   394,   212,   357,   508,   506,     0,   515,     0,   129,
1155
     514,     0,   357,     0,   231,   239,   240,   179,     0,     0,
1156
       0,    75,   339,   350,     0,   341,     0,     0,     0,   351,
1157
       0,     0,   375,     0,   327,   506,     0,     0,     0,     0,
1158
       0,   329,   195,     0,   382,   146,   516,   130,     0,   146,
1159
     411,     0,   146,   217,   215,   340,   342,   343,   344,     0,
1160
       0,     0,   506,   379,   506,   373,     0,   506,   506,   330,
1161
     393,   507,     0,   379,   270,     0,   513,   512,     0,   229,
1162
       0,   346,   347,   349,   345,   352,   376,   384,     0,   375,
1163
     268,   395,   396,   503,   382,   384,   507,   507,   177,   348,
1164
     379,   377,   384,   385,   509,   380,   506,     0,   271,   383,
1165
     189,   502,   384,   381,     0,   376,   299,   378,   506,   507,
1166
     386,     0,   391,   353,   146,   507,   268,   507,     0,   331,
1167
       0,     0,   354,   392,     0,   388,   146,   507,     0,     0,
1168
     387,   390,   389
1169
};
1170
1171
  /* YYPGOTO[NTERM-NUM].  */
1172
static const yytype_int16 yypgoto[] =
1173
{
1174
   -1085, -1085,  -101,  -930,  -102,   -39,  -475, -1085,   -44,  -180,
1175
     -15,   340, -1085,   -10,    -2,     0,   937, -1085, -1085, -1085,
1176
     982, -1085, -1085,  -457, -1085, -1085,   828,   172,  -726,   539,
1177
     856,   131, -1085,   136, -1085, -1085, -1085, -1085, -1085, -1085,
1178
     371, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
1179
   -1085,    -1, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
1180
   -1085,  -653, -1085,  -620,   191, -1085,    59, -1085, -1085,  -701,
1181
   -1085, -1085, -1085,   117, -1085, -1085, -1085, -1085, -1085, -1085,
1182
    -692, -1085,   153, -1085,   226,   103,  -825,  -442,  -182, -1085,
1183
     270, -1085,  -738,  -273, -1085,   156,  -942,   361, -1085, -1085,
1184
   -1085,   903,  -380, -1085,   555, -1085,   558,  -812,   119, -1085,
1185
    -761, -1085, -1085,   -18, -1085, -1085, -1085, -1085, -1085, -1085,
1186
   -1085, -1085,  -771,  -797, -1085,   -26, -1085, -1084,   -86, -1085,
1187
     -87, -1085, -1085, -1085,    13,   -22,   586, -1085,   609, -1085,
1188
     241,   432,   918, -1085,   -77, -1085,    99,   -47, -1085,     4,
1189
     -69,  -984, -1085,  -113, -1085, -1085,   -20, -1085, -1085,   -34,
1190
    -246, -1085,   450,   -74, -1085,   -63,   -55,   -31, -1085, -1085,
1191
   -1085, -1085, -1085,   -12,   814, -1085, -1085,   694,  -197,  -258,
1192
     538, -1085, -1085,   617,   435, -1085, -1085, -1085,   420
1193
};
1194
1195
  /* YYDEFGOTO[NTERM-NUM].  */
1196
static const yytype_int16 yydefgoto[] =
1197
{
1198
      -1,     1,   305,   306,   336,   453,     2,   308,   765,   204,
1199
      92,   524,   525,    93,   135,   546,    96,    97,   520,   309,
1200
     766,   497,   206,   636,   767,   868,   207,   768,   769,   208,
1201
     194,   331,   547,   548,   758,   764,   998,  1042,   863,   507,
1202
     508,   600,    99,   973,  1017,   100,   559,   221,   101,   167,
1203
     168,   102,   103,   222,   104,   223,   105,   224,   684,   946,
1204
    1080,   679,   682,   777,   756,  1029,   918,   850,   761,   852,
1205
     106,   856,   857,   858,   859,   747,   107,   108,   109,   110,
1206
     824,   825,   826,   827,   828,   899,   788,   789,   790,   791,
1207
     792,   900,   793,   902,   903,   904,   967,   176,   469,   158,
1208
     454,   470,   471,   209,   210,   213,   214,   873,   947,   948,
1209
     779,  1048,  1084,  1085,  1086,  1087,  1088,  1089,  1185,   949,
1210
     950,   951,   829,   830,  1050,  1051,  1052,  1147,  1134,  1164,
1211
    1165,  1182,  1197,  1187,  1060,  1061,   195,   179,   180,   748,
1212
     479,   480,   170,   640,   111,   112,   113,   114,   115,   137,
1213
     601,  1064,  1103,   394,   980,  1069,  1070,   117,   401,   118,
1214
     172,   343,   177,   119,   120,   121,   122,   190,   123,   124,
1215
     125,   126,   127,   128,   129,   130,   174,   605,   613,   338,
1216
     339,   340,   341,   328,   329,   700,   131,   511,   512
1217
};
1218
1219
  /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
1220
     positive, shift that token.  If negative, reduce the rule whose
1221
     number is the opposite.  If YYTABLE_NINF, syntax error.  */
1222
static const yytype_int16 yytable[] =
1223
{
1224
      94,   171,    95,   395,   316,   316,   116,   317,   317,   215,
1225
     203,   312,   647,   393,   393,   871,   191,  1132,   318,   318,
1226
     165,   196,   846,   759,   418,   496,   319,   319,  1194,   307,
1227
     832,    31,   905,   166,   169,   393,  1023,    31,  1025,  1066,
1228
     865,  1071,  -224,  -225,   869,  -227,   686,   353,   -14,  1155,
1229
     673,   212,   522,   523,   675,   -84,   882,   529,   977,   854,
1230
       3,   808,   494,   954,   794,   494,   160,   527,   690,   320,
1231
     321,   161,   991,    49,    50,   323,  1172,   539,   474,  1058,
1232
     475,    49,    50,  1040,   351,   836,   215,   175,   353,   901,
1233
     132,    28,    29,    30,    95,   598,  1183,   192,   116,  1184,
1234
     355,   178,   952,   136,   138,   139,   140,   141,   142,   143,
1235
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
1236
     154,   155,   156,   159,   -84,   351,   610,  1041,  1003,  1058,
1237
      31,   347,   495,  -523,   783,   664,    91,   181,    98,   906,
1238
     316,  1013,    91,   317,   595,   189,   189,  1153,   599,  1011,
1239
     920,   189,   924,   183,   318,   905,   351,   784,   785,   969,
1240
     970,   203,   319,   326,   327,   169,   460,   193,   922,   923,
1241
    1058,   760,  1170,  1171,   952,   182,   782,   922,   923,   556,
1242
    1133,  1005,   322,   952,  1059,   330,   847,   337,   889,  -280,
1243
    1195,   879,   786,  1196,   175,  1181,   897,   955,   390,  1015,
1244
    1063,  1189,   614,  1191,   184,   509,  -224,  -225,   391,  -227,
1245
     795,   901,  1001,  1200,  1072,   185,   908,   992,   323,   186,
1246
     324,   132,    28,    29,    30,   132,    28,    29,    30,    31,
1247
     611,   490,   952,   491,  1179,    91,  1018,  1019,  1019,  1022,
1248
     952,   132,    28,    29,    30,   925,   132,    28,    29,    30,
1249
     316,   356,   357,   317,   993,   734,   456,   737,   323,   316,
1250
     457,   187,   317,   458,   318,   783,   740,   642,   643,   162,
1251
    -568,  -568,   319,   318,   472,   323,   490,   473,   526,   171,
1252
     656,   319,   477,   481,   482,   188,   484,   485,   784,   785,
1253
     197,   707,   952,   323,  -568,   539,  -524,   165,   165,   198,
1254
     617,   952,   200,   558,   175,   325,   326,   327,   784,   785,
1255
     867,   166,   169,   784,   785,   538,   396,   510,   513,   323,
1256
     667,   342,  1143,   786,   551,   597,   217,   164,   493,   545,
1257
     323,   874,   345,  1046,    91,   116,  1047,   332,   333,   696,
1258
     876,    57,    58,   898,   877,   534,   326,   327,   898,   163,
1259
     132,    28,    29,    30,    31,   354,   171,   603,   607,  1144,
1260
     323,   697,   539,   326,   327,   698,   905,   218,   896,   615,
1261
     699,   132,    28,    29,    30,   165,  1163,    49,    50,  1067,
1262
     540,   326,   327,   219,  1163,   198,   199,   350,   200,   215,
1263
     198,  1163,   220,   200,   162,    57,    58,   171,   927,   310,
1264
     930,  1163,   932,   163,   358,   359,   311,   326,   327,   337,
1265
     337,   939,   397,   528,   337,   162,   165,  -561,   326,   327,
1266
     216,    80,   360,  -186,   201,   537,   202,  -186,    80,   166,
1267
     169,  -566,  -566,   500,   550,   501,   645,   956,   957,   957,
1268
     960,  -607,  -607,  -566,   391,  -607,   557,   680,   326,   327,
1269
     709,  -572,   164,   349,  -569,  -566,   203,   461,  1167,    91,
1270
     565,   566,   567,   569,   570,   571,   572,   573,   574,   575,
1271
     576,   577,   578,   579,   580,   581,   582,   583,   584,   585,
1272
     586,   587,   588,   589,   590,   591,   592,   593,   594,   462,
1273
     596,   545,   476,   561,  1190,   216,   844,   116,   353,   189,
1274
     486,   618,   619,   620,   621,   622,   623,   624,   625,   626,
1275
     627,   628,   629,   630,   631,   398,   399,   487,   632,   136,
1276
     138,   139,   140,   141,   142,   143,   502,   159,   503,   198,
1277
     199,   721,   200,   463,   489,   351,  -565,  -565,   488,   400,
1278
     316,   492,   505,   317,   506,   706,   499,   888,  -565,   116,
1279
     633,    57,    58,   755,   318,   132,    28,    29,    30,   163,
1280
    -565,   504,   319,   201,   514,   202,   189,  -564,  -564,   132,
1281
      28,    29,    30,   181,   921,   922,   923,   652,   316,  -564,
1282
     515,   317,  -563,  -563,    80,   913,   516,  -571,   659,   517,
1283
     763,  -564,   318,   519,  -563,   316,   464,   465,   317,   783,
1284
     319,   518,  -570,   670,  -572,   731,  -563,   521,   466,   318,
1285
      57,    58,  1108,   781,   531,   532,   553,   319,   163,   500,
1286
     467,   666,   784,   785,   332,   333,   132,    28,    29,    30,
1287
      31,   555,   316,  -562,  -562,   317,   784,   785,   533,   988,
1288
     922,   923,  -571,   757,   775,  -562,   318,   780,   337,   554,
1289
    -293,   710,   974,   337,   319,   526,  1093,  -562,  1094,   715,
1290
     509,   716,  1100,   165,  1101,   563,   165,   718,   787,   549,
1291
     162,    57,    58,  1100,   165,  1129,  -606,  -606,   316,   163,
1292
    -606,   317,    49,    50,    94,  -202,    95,   701,   702,   560,
1293
     116,   564,   318,   562,   717,   861,   862,   806,   958,   959,
1294
     319,   723,  1020,  1021,    80,   725,   344,   346,   872,   -43,
1295
     727,   -70,    49,    50,    51,   545,   -66,   -67,   823,   -68,
1296
     823,   116,   350,    57,    58,   883,   -62,   -63,   164,   -65,
1297
     -64,   163,   -73,   733,   472,    91,   472,    64,    65,    66,
1298
      67,   -69,   780,   845,   755,   472,   387,   388,   389,   744,
1299
     390,   634,   750,   752,   635,   650,    80,   646,   653,   535,
1300
     391,   165,   616,   541,   654,   662,   212,   787,   663,   316,
1301
     665,   787,   317,   510,   672,   674,   678,   535,   677,   541,
1302
     535,   541,   681,   318,   743,   683,   685,   746,   687,   688,
1303
     689,   319,   694,    94,   693,    95,   695,   711,   216,   116,
1304
     704,   802,   382,   383,   384,   385,   386,   387,   388,   389,
1305
     807,   390,   787,   351,   705,   714,   720,   722,   812,  -593,
1306
     964,   391,    98,  -595,   730,   735,   739,   762,   741,   823,
1307
     494,   770,   772,   774,   757,   545,   776,   545,   778,   981,
1308
     953,   116,   797,   116,   799,  -570,   800,   801,   803,   173,
1309
     842,   804,   805,   337,   385,   386,   387,   388,   389,   165,
1310
     390,   860,   875,   841,   787,   787,   787,   787,   831,   211,
1311
     391,   945,  1004,   837,   864,   880,   839,   843,   840,   851,
1312
     853,   866,   787,   787,   870,   874,   881,   691,   463,   882,
1313
     887,   891,   892,   823,   849,  1053,   885,   894,   895,   999,
1314
     907,   914,  -594,   909,   337,   348,   393,   926,   780,   928,
1315
     929,   931,   933,   934,   935,   938,   879,   545,   165,   937,
1316
     966,   940,  1068,   116,   961,   963,   962,   165,   972,   975,
1317
     976,    98,   979,   977,   787,   351,   978,   982,   983,   481,
1318
     912,   984,   337,   985,   989,   890,   994,   997,  1009,  1002,
1319
      49,   787,   945,  1014,  1008,  1012,   974,  1016,  1026,   787,
1320
     787,   787,   787,   545,  1024,  1045,   724,  1032,  1033,   116,
1321
     726,  1049,  1065,  1074,   728,   729,  1078,  1079,  1091,   919,
1322
    1092,  1096,   -75,   917,   545,   -54,   -55,  1097,  1105,  1106,
1323
     116,  1107,  1109,  -523,   787,  1114,  1104,  1112,   545,  1117,
1324
    1119,   945,  1120,  1118,   116,  1068,  1077,  1121,  1083,   945,
1325
    1123,  1137,  1139,  1090,  1095,  1124,  1148,  1178,  1142,  1150,
1326
    1186,   990,   965,  1160,  1176,   165,  1126,  1193,   860,   798,
1327
     996,   352,   165,   498,   545,   545,   205,   915,   936,   668,
1328
     116,   116,   483,   771,  1030,  1083,   995,   986,   968,   893,
1329
    1090,  1174,  1007,  1146,   971,  1149,   878,   669,  1151,  1152,
1330
     455,   945,   393,   671,  1006,  1000,  1116,  1125,  1168,   165,
1331
     945,   545,  1099,   545,   545,  1173,   660,   116,  1130,   116,
1332
     116,   911,  1145,   649,   459,   749,   780,  1136,    49,    50,
1333
     738,   609,   712,  1038,   773,     0,  1039,  1175,   350,    57,
1334
      58,     0,     0,     0,  1159,   165,     0,   163,     0,  1180,
1335
       0,     0,     0,    64,    65,    66,    67,     0,     0,  1028,
1336
       0,   917,  1036,  1037,     0,     0,     0,   173,     0,     0,
1337
       0,     0,    80,   545,     0,     0,   545,     0,   545,   116,
1338
       0,     0,   116,     0,   116,  1162,     0,     0,   823,     0,
1339
       0,     0,   351,  1162,     0,     0,     0,     0,  1073,     0,
1340
       0,     0,     0,     0,     0,  1075,  1076,     0,     0,     0,
1341
    1162,   383,   384,   385,   386,   387,   388,   389,  1113,   390,
1342
       0,     0,     0,     0,   823,     0,   545,     0,     0,   391,
1343
    1122,     0,   116,     0,     0,  1127,  1128,   545,     0,     0,
1344
       0,     0,  1131,   116,   173,     0,     0,     0,     0,     0,
1345
     604,   608,   612,   612,   813,   814,   815,   816,   817,   818,
1346
     819,   820,   821,   822,     0,     0,     0,     0,     0,     0,
1347
       0,  1154,     0,   941,     0,     0,  1135,     0,     0,     0,
1348
    1138,  -359,     0,  1140,     0,   173,   942,  1166,    80,   813,
1349
     814,   815,   816,   817,   818,   819,   820,   821,   822,   943,
1350
       0,   813,   814,   815,   816,   817,   818,   819,   820,   821,
1351
     822,     0,     0,     0,     0,  1161,   641,     0,   612,   612,
1352
     644,     0,   420,    80,   421,   422,   423,   424,   230,   231,
1353
     232,   425,   426,  1198,    11,    80,     0,     0,     0,   813,
1354
     814,   815,   816,   817,   818,   819,   820,   821,   822,   427,
1355
     944,     0,     0,     0,     0,  1188,   211,     0,     0,     0,
1356
       0,     0,  1169,     0,     0,     0,     0,  1199,     0,     0,
1357
       0,    12,    13,    80,     0,     0,    14,   235,    15,    16,
1358
      17,    18,    19,    20,    21,    22,    23,     0,   428,     0,
1359
     237,   238,    25,    26,   429,    28,    29,    30,    31,     0,
1360
    1177,    33,     0,     0,   430,   431,   432,   244,   245,   246,
1361
     247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1362
     257,   258,   259,   260,   433,   262,   263,   264,   434,   435,
1363
     267,   268,   269,   270,   271,   272,   273,   274,   436,   276,
1364
     277,   278,   279,   280,     0,     0,     0,   437,   282,   283,
1365
     438,   439,     0,   286,   287,   288,   289,   290,   291,   292,
1366
     440,   441,   295,   442,   443,   444,   445,   446,   447,   448,
1367
     449,   450,    80,    81,    82,     0,     0,     0,     0,     0,
1368
       0,     0,     0,     0,    84,     0,     0,     0,     0,     0,
1369
     451,     0,     0,     0,     0,     0,    86,   452,     0,     0,
1370
      88,    89,    90,    91,   420,     0,   421,   422,   423,   424,
1371
     230,   231,   232,   425,   426,     0,    11,     0,     0,   941,
1372
       0,     0,     0,     0,     0,     0,     0,  -359,     0,     0,
1373
       0,   427,     0,     0,     0,   813,   814,   815,   816,   817,
1374
     818,   819,   820,   821,   822,   943,     0,     0,     0,     0,
1375
       0,     0,     0,    12,    13,     0,     0,     0,    14,   235,
1376
      15,    16,    17,    18,    19,    20,    21,    22,    23,    80,
1377
     428,     0,   237,   238,    25,    26,   429,    28,    29,    30,
1378
      31,     0,     0,    33,     0,     0,   430,   431,   432,   244,
1379
     245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1380
     255,   256,   257,   258,   259,   260,   433,   262,   263,   264,
1381
     434,   435,   267,   268,   269,   270,   271,   272,   273,   274,
1382
     436,   276,   277,   278,   279,   280,     0,     0,     0,   437,
1383
     282,   283,   438,   439,     0,   286,   287,   288,   289,   290,
1384
     291,   292,   440,   441,   295,   442,   443,   444,   445,   446,
1385
     447,   448,   449,   450,    80,    81,    82,     0,     0,     0,
1386
       0,     0,     0,     0,     0,     0,    84,     0,     0,     0,
1387
       0,     0,   451,     0,     0,     0,     0,     0,    86,   468,
1388
       0,     0,    88,    89,    90,    91,   420,     0,   421,   422,
1389
     423,   424,   230,   231,   232,   425,   426,     0,    11,   813,
1390
     814,   815,   816,   817,   818,   819,   820,   821,   822,     0,
1391
       0,     0,     0,   427,  -608,  -608,  -608,  -608,   381,   382,
1392
     383,   384,   385,   386,   387,   388,   389,     0,   390,     0,
1393
       0,     0,     0,    80,     0,    12,    13,     0,   391,     0,
1394
      14,   235,    15,    16,    17,    18,    19,    20,    21,    22,
1395
      23,     0,   428,     0,   237,   238,    25,    26,   429,    28,
1396
      29,    30,    31,     0,     0,    33,     0,     0,   430,   431,
1397
     432,   244,   245,   246,   247,   248,   249,   250,   251,   252,
1398
     253,   254,   255,   256,   257,   258,   259,   260,   433,   262,
1399
     263,   264,   434,   435,   267,   268,   269,   270,   271,   272,
1400
     273,   274,   436,   276,   277,   278,   279,   280,     0,     0,
1401
       0,   437,   282,   283,   438,   439,     0,   286,   287,   288,
1402
     289,   290,   291,   292,   440,   441,   295,   442,   443,   444,
1403
     445,   446,   447,   448,   449,   450,    80,    81,    82,     0,
1404
       0,     0,     0,     0,     0,     0,     0,     0,    84,     0,
1405
       0,     0,     0,     0,   451,     0,     0,     0,     0,     0,
1406
      86,   736,     0,     0,    88,    89,    90,    91,   420,     0,
1407
     421,   422,   423,   424,   230,   231,   232,   425,   426,     0,
1408
      11,   813,   814,   815,   816,   817,   818,   819,   820,   821,
1409
     822,     0,     0,     0,     0,   427,     0,     0,     0,   402,
1410
     403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
1411
     413,   414,   415,     0,     0,     0,     0,    12,    13,     0,
1412
       0,     0,    14,   235,    15,    16,    17,    18,    19,    20,
1413
      21,    22,    23,     0,   428,     0,   237,   238,    25,    26,
1414
     429,    28,    29,    30,    31,     0,     0,    33,     0,     0,
1415
     430,   431,   432,   244,   245,   246,   247,   248,   249,   250,
1416
     251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1417
     433,   262,   263,   264,   434,   435,   267,   268,   269,   270,
1418
     271,   272,   273,   274,   436,   276,   277,   278,   279,   280,
1419
       0,     0,     0,   437,   282,   283,   438,   439,     0,   286,
1420
     287,   288,   289,   290,   291,   292,   440,   441,   295,   442,
1421
     443,   444,   445,   446,   447,   448,   449,   450,    80,    81,
1422
      82,     0,     4,     0,     5,     6,     7,     8,     0,     0,
1423
      84,     9,    10,     0,    11,     0,   451,   416,   417,     0,
1424
    -562,  -562,    86,     0,     0,     0,    88,    89,    90,    91,
1425
       0,     0,  -562,   813,   814,   815,   816,   817,   818,   819,
1426
     820,   821,   822,     0,  -562,     0,     0,     0,     0,     0,
1427
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1428
      17,    18,    19,    20,    21,    22,    23,    80,    24,     0,
1429
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1430
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1431
      39,    40,  -263,    41,     0,    42,     0,    43,     0,     0,
1432
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1433
      51,    52,    53,     0,     0,    54,     0,    55,    56,    57,
1434
      58,     0,     0,     0,     0,     0,     0,    59,     0,    60,
1435
      61,    62,    63,    64,    65,    66,    67,     0,     0,    68,
1436
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1437
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1438
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1439
       0,     0,     0,     0,     0,    85,    86,     0,    87,   796,
1440
      88,    89,    90,    91,     0,     0,     0,   813,   814,   815,
1441
     816,   817,   818,   819,   820,   821,   822,     0,     0,     0,
1442
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1443
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1444
      23,    80,    24,     0,     0,     0,    25,    26,    27,    28,
1445
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1446
      36,    37,     0,    38,    39,    40,  -130,    41,     0,    42,
1447
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1448
      47,    48,    49,    50,    51,    52,    53,     0,     0,    54,
1449
       0,    55,    56,    57,    58,     0,     0,     0,     0,     0,
1450
       0,    59,     0,    60,    61,    62,    63,    64,    65,    66,
1451
      67,     0,     0,    68,    69,    70,     0,    71,    72,    73,
1452
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1453
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1454
      10,     0,    11,     0,     0,     0,     0,     0,     0,    85,
1455
      86,     0,    87,   884,    88,    89,    90,    91,  -358,     0,
1456
    -360,     0,     0,     0,     0,     0,     0,     0,   813,   814,
1457
     815,   816,   817,   818,   819,   820,   821,   822,     0,    12,
1458
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1459
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1460
      25,    26,    27,    28,    29,    30,    31,    32,     0,    33,
1461
       0,     0,    34,    35,    36,    37,     0,    38,    39,    40,
1462
       0,    41,     0,    42,     0,    43,     0,     0,    44,     0,
1463
       0,     0,    45,    46,    47,    48,    49,    50,    51,    52,
1464
      53,     0,     0,    54,     0,    55,    56,    57,    58,     0,
1465
       0,     0,     0,     0,     0,    59,     0,    60,    61,    62,
1466
      63,    64,    65,    66,    67,     0,     0,    68,    69,    70,
1467
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1468
      80,    81,    82,    83,     4,     0,     5,     6,     7,     8,
1469
       0,     0,    84,     9,    10,     0,    11,     0,     0,   941,
1470
       0,     0,     0,    85,    86,     0,    87,  -359,    88,    89,
1471
      90,    91,   942,     0,     0,   813,   814,   815,   816,   817,
1472
     818,   819,   820,   821,   822,   943,     0,     0,     0,     0,
1473
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1474
      15,    16,    17,    18,    19,    20,    21,    22,    23,    80,
1475
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1476
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1477
       0,    38,    39,    40,     0,    41,  1010,    42,     0,    43,
1478
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1479
      49,    50,     0,    52,    53,     0,     0,     0,     0,    55,
1480
      56,    57,    58,     0,     0,     0,     0,     0,     0,    59,
1481
       0,    60,    61,    62,   543,    64,    65,    66,    67,     0,
1482
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1483
      76,    77,    78,    79,    80,    81,    82,    83,     4,     0,
1484
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1485
      11,     0,     0,     0,     0,     0,     0,    85,    86,     0,
1486
      87,   544,    88,    89,    90,    91,     0,     0,     0,     0,
1487
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1488
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1489
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1490
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1491
      27,    28,    29,    30,    31,    32,     0,    33,     0,     0,
1492
      34,    35,    36,    37,     0,    38,    39,    40,     0,    41,
1493
       0,    42,     0,    43,     0,     0,    44,     0,     0,     0,
1494
      45,    46,    47,    48,    49,    50,     0,    52,    53,     0,
1495
       0,     0,     0,    55,    56,    57,    58,     0,     0,     0,
1496
       0,     0,     0,    59,     0,    60,    61,    62,   543,    64,
1497
      65,    66,    67,     0,     0,     0,    69,    70,     0,    71,
1498
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1499
      82,    83,     4,     0,     5,     6,     7,     8,     0,     0,
1500
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1501
       0,    85,    86,     0,    87,   661,    88,    89,    90,    91,
1502
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1503
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1504
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1505
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1506
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1507
       0,    33,     0,     0,    34,    35,    36,    37,   811,    38,
1508
      39,    40,     0,    41,     0,    42,     0,    43,     0,     0,
1509
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1510
       0,    52,    53,     0,     0,     0,     0,    55,    56,    57,
1511
      58,     0,     0,     0,     0,     0,     0,    59,     0,    60,
1512
      61,    62,   543,    64,    65,    66,    67,     0,     0,     0,
1513
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1514
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1515
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1516
       0,   941,     0,     0,     0,    85,    86,     0,    87,  -359,
1517
      88,    89,    90,    91,   942,     0,     0,   813,   814,   815,
1518
     816,   817,   818,   819,   820,   821,   822,   943,     0,     0,
1519
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1520
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1521
      23,    80,    24,     0,     0,     0,    25,    26,    27,    28,
1522
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1523
      36,    37,     0,    38,    39,    40,   910,    41,  1044,    42,
1524
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1525
      47,    48,    49,    50,     0,    52,    53,     0,     0,     0,
1526
       0,    55,    56,    57,    58,     0,     0,     0,     0,     0,
1527
       0,    59,     0,    60,    61,    62,   543,    64,    65,    66,
1528
      67,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1529
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1530
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1531
      10,     0,    11,     0,     0,   941,     0,     0,     0,    85,
1532
      86,     0,    87,  -359,    88,    89,    90,    91,   942,     0,
1533
       0,   813,   814,   815,   816,   817,   818,   819,   820,   821,
1534
     822,   943,     0,     0,     0,     0,     0,     0,     0,    12,
1535
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1536
      19,    20,    21,    22,    23,    80,    24,     0,     0,     0,
1537
      25,    26,    27,    28,    29,    30,    31,    32,     0,    33,
1538
       0,     0,    34,    35,    36,    37,     0,    38,    39,    40,
1539
       0,    41,  1062,    42,     0,    43,   987,     0,    44,     0,
1540
       0,     0,    45,    46,    47,    48,    49,    50,     0,    52,
1541
      53,     0,     0,     0,     0,    55,    56,    57,    58,     0,
1542
       0,     0,     0,     0,     0,    59,     0,    60,    61,    62,
1543
     543,    64,    65,    66,    67,     0,     0,     0,    69,    70,
1544
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1545
      80,    81,    82,    83,     4,     0,     5,     6,     7,     8,
1546
       0,     0,    84,     9,    10,     0,    11,     0,     0,   941,
1547
       0,     0,     0,    85,    86,     0,    87,  -359,    88,    89,
1548
      90,    91,   942,     0,     0,   813,   814,   815,   816,   817,
1549
     818,   819,   820,   821,   822,   943,     0,     0,     0,     0,
1550
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1551
      15,    16,    17,    18,    19,    20,    21,    22,    23,    80,
1552
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1553
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1554
       0,    38,    39,    40,     0,    41,  1102,    42,  1031,    43,
1555
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1556
      49,    50,     0,    52,    53,     0,     0,     0,     0,    55,
1557
      56,    57,    58,     0,     0,     0,     0,     0,     0,    59,
1558
       0,    60,    61,    62,   543,    64,    65,    66,    67,     0,
1559
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1560
      76,    77,    78,    79,    80,    81,    82,    83,     4,     0,
1561
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1562
      11,     0,     0,   941,     0,     0,     0,    85,    86,     0,
1563
      87,  -359,    88,    89,    90,    91,   942,     0,     0,   813,
1564
     814,   815,   816,   817,   818,   819,   820,   821,   822,   943,
1565
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1566
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1567
      21,    22,    23,    80,    24,     0,     0,     0,    25,    26,
1568
      27,    28,    29,    30,    31,    32,     0,    33,     0,     0,
1569
      34,    35,    36,    37,     0,    38,    39,    40,     0,    41,
1570
    1110,    42,     0,    43,     0,     0,    44,     0,     0,     0,
1571
      45,    46,    47,    48,    49,    50,     0,    52,    53,     0,
1572
       0,     0,     0,    55,    56,    57,    58,     0,     0,     0,
1573
       0,     0,     0,    59,     0,    60,    61,    62,   543,    64,
1574
      65,    66,    67,     0,     0,     0,    69,    70,     0,    71,
1575
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1576
      82,    83,     4,     0,     5,     6,     7,     8,     0,     0,
1577
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1578
       0,    85,    86,     0,    87,  1043,    88,    89,    90,    91,
1579
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1580
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1581
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1582
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1583
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1584
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1585
      39,    40,     0,    41,  1111,    42,     0,    43,     0,     0,
1586
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1587
       0,    52,    53,     0,     0,     0,     0,    55,    56,    57,
1588
      58,     0,     0,     0,     0,     0,     0,    59,     0,    60,
1589
      61,    62,   543,    64,    65,    66,    67,     0,     0,     0,
1590
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1591
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1592
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1593
       0,     0,     0,     0,     0,    85,    86,     0,    87,     0,
1594
      88,    89,    90,    91,     0,     0,     0,     0,     0,     0,
1595
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1596
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1597
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1598
      23,     0,    24,     0,     0,     0,    25,    26,    27,    28,
1599
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1600
      36,    37,     0,    38,    39,    40,     0,    41,     0,    42,
1601
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1602
      47,    48,    49,    50,     0,    52,    53,     0,     0,     0,
1603
       0,    55,    56,    57,    58,     0,     0,     0,     0,     0,
1604
       0,    59,     0,    60,    61,    62,   543,    64,    65,    66,
1605
      67,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1606
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1607
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1608
      10,     0,    11,     0,     0,     0,     0,     0,     0,    85,
1609
      86,     0,    87,  1156,    88,    89,    90,    91,     0,     0,
1610
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1611
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1612
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1613
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1614
      25,    26,    27,    28,    29,    30,    31,    32,     0,    33,
1615
       0,     0,    34,    35,    36,    37,     0,    38,    39,    40,
1616
       0,    41,     0,    42,     0,    43,     0,     0,    44,     0,
1617
       0,     0,    45,    46,    47,    48,    49,    50,     0,    52,
1618
      53,     0,     0,     0,     0,    55,    56,    57,    58,     0,
1619
       0,     0,     0,     0,     0,    59,     0,    60,    61,    62,
1620
     543,    64,    65,    66,    67,     0,     0,     0,    69,    70,
1621
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1622
      80,    81,    82,    83,     4,     0,     5,     6,     7,     8,
1623
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1624
       0,     0,     0,    85,    86,     0,    87,  1157,    88,    89,
1625
      90,    91,     0,     0,     0,     0,     0,     0,     0,     0,
1626
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1627
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1628
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1629
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1630
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1631
       0,    38,    39,    40,     0,    41,     0,    42,     0,    43,
1632
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1633
      49,    50,     0,    52,    53,     0,     0,     0,     0,    55,
1634
      56,    57,    58,     0,     0,     0,     0,     0,     0,    59,
1635
       0,    60,    61,    62,   543,    64,    65,    66,    67,     0,
1636
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1637
      76,    77,    78,    79,    80,    81,    82,    83,     4,     0,
1638
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1639
      11,     0,     0,     0,     0,     0,     0,    85,    86,     0,
1640
      87,  1158,    88,    89,    90,    91,     0,     0,     0,     0,
1641
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1642
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1643
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1644
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1645
      27,    28,    29,    30,    31,    32,     0,    33,     0,     0,
1646
      34,    35,    36,    37,     0,    38,    39,    40,     0,    41,
1647
       0,    42,     0,    43,     0,     0,    44,     0,     0,     0,
1648
      45,    46,    47,    48,    49,    50,     0,    52,    53,     0,
1649
       0,     0,     0,    55,    56,    57,    58,     0,     0,     0,
1650
       0,     0,     0,    59,     0,    60,    61,    62,   543,    64,
1651
      65,    66,    67,     0,     0,     0,    69,    70,     0,    71,
1652
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1653
      82,    83,     4,     0,     5,     6,     7,     8,     0,     0,
1654
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1655
       0,    85,    86,     0,    87,  1192,    88,    89,    90,    91,
1656
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1657
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1658
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1659
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1660
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1661
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1662
      39,    40,     0,    41,     0,    42,     0,    43,     0,     0,
1663
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1664
       0,    52,    53,     0,     0,     0,     0,    55,    56,    57,
1665
      58,     0,     0,     0,     0,     0,     0,    59,     0,    60,
1666
      61,    62,   543,    64,    65,    66,    67,     0,     0,     0,
1667
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1668
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1669
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1670
       0,     0,     0,     0,     0,    85,    86,     0,    87,  1202,
1671
      88,    89,    90,    91,     0,     0,     0,     0,     0,     0,
1672
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1673
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1674
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1675
      23,     0,    24,     0,     0,     0,    25,    26,    27,    28,
1676
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1677
      36,    37,     0,    38,    39,    40,     0,    41,     0,    42,
1678
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1679
      47,    48,    49,    50,     0,    52,    53,     0,     0,     0,
1680
       0,    55,    56,    57,    58,     0,     0,     0,     0,     0,
1681
       0,    59,     0,    60,    61,    62,   543,    64,    65,    66,
1682
      67,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1683
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1684
       0,     0,     0,     0,     0,     0,     0,   225,    84,   226,
1685
     227,   228,   229,   230,   231,   232,   233,   234,     0,    85,
1686
      86,     0,    87,     0,    88,    89,    90,    91,   364,     0,
1687
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
1688
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
1689
     385,   386,   387,   388,   389,     0,   390,     0,     0,     0,
1690
       0,     0,   235,     0,     0,     0,   391,     0,     0,     0,
1691
       0,     0,     0,   236,     0,   237,   238,     0,     0,   239,
1692
       0,     0,     0,    31,     0,     0,     0,     0,     0,   241,
1693
     242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
1694
     252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
1695
     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
1696
     272,   273,   274,   275,   276,   277,   278,   279,   280,     0,
1697
       0,     0,   281,   282,   283,   284,   285,     0,   286,   287,
1698
     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
1699
     298,   299,   300,   301,   302,   303,   304,   225,     0,   226,
1700
     227,   228,   229,   230,   231,   232,   233,   234,     0,     0,
1701
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1702
       0,     0,     0,   602,     0,     0,     0,     0,    91,   369,
1703
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
1704
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
1705
       0,   390,   235,     0,     0,     0,     0,     0,     0,     0,
1706
       0,   391,     0,   236,     0,   237,   238,     0,     0,   239,
1707
       0,     0,     0,    31,     0,     0,     0,     0,     0,   241,
1708
     242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
1709
     252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
1710
     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
1711
     272,   273,   274,   275,   276,   277,   278,   279,   280,     0,
1712
       0,     0,   281,   282,   283,   284,   285,     0,   286,   287,
1713
     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
1714
     298,   299,   300,   301,   302,   303,   304,     4,     0,     5,
1715
       6,     7,     8,     0,     0,     0,     9,    10,     0,    11,
1716
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1717
       0,     0,     0,   606,     0,   742,     0,     0,    91,     0,
1718
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1719
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1720
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1721
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1722
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1723
      35,    36,    37,     0,    38,    39,    40,     0,    41,     0,
1724
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1725
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1726
       0,     0,    55,    56,     0,     0,     0,     0,     0,     0,
1727
       0,     0,   134,     0,    60,    61,    62,     0,     0,     0,
1728
       0,     0,     0,     0,     0,    69,    70,     0,    71,    72,
1729
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1730
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1731
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1732
      85,    86,     0,    87,     0,    88,    89,    90,    91,   745,
1733
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1734
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1735
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1736
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1737
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1738
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1739
      40,     0,    41,     0,    42,     0,    43,     0,     0,    44,
1740
       0,     0,     0,    45,    46,    47,    48,    49,    50,     0,
1741
      52,    53,     0,     0,     0,     0,    55,    56,     0,     0,
1742
       0,     0,     0,     0,     0,     0,   134,     0,    60,    61,
1743
      62,     0,     0,     0,     0,     0,     0,     0,     0,    69,
1744
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1745
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1746
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1747
       0,     0,     0,     0,    85,    86,     0,    87,     0,    88,
1748
      89,    90,    91,   848,     0,     0,     0,     0,     0,     0,
1749
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1750
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1751
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1752
       0,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1753
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1754
      37,     0,    38,    39,    40,     0,    41,     0,    42,     0,
1755
      43,     0,     0,    44,     0,     0,     0,    45,    46,    47,
1756
      48,    49,    50,     0,    52,    53,     0,     0,     0,     0,
1757
      55,    56,     0,     0,     0,     0,     0,     0,     0,     0,
1758
     134,     0,    60,    61,    62,     0,     0,     0,     0,     0,
1759
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1760
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1761
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1762
       0,    11,     0,     0,     0,     0,     0,     0,    85,    86,
1763
       0,    87,     0,    88,    89,    90,    91,   916,     0,     0,
1764
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1765
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1766
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1767
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1768
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1769
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1770
      41,     0,    42,     0,    43,     0,     0,    44,     0,     0,
1771
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1772
       0,     0,     0,     0,    55,    56,     0,     0,     0,     0,
1773
       0,     0,     0,     0,   134,     0,    60,    61,    62,     0,
1774
       0,     0,     0,     0,     0,     0,     0,    69,    70,     0,
1775
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1776
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1777
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1778
       0,     0,    85,    86,     0,    87,     0,    88,    89,    90,
1779
      91,  1027,     0,     0,     0,     0,     0,     0,     0,     0,
1780
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1781
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1782
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1783
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1784
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1785
      38,    39,    40,     0,    41,     0,    42,     0,    43,     0,
1786
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1787
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1788
       0,     0,     0,     0,     0,     0,     0,     0,   134,     0,
1789
      60,    61,    62,     0,     0,     0,     0,     0,     0,     0,
1790
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1791
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1792
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1793
       0,     0,     0,     0,     0,     0,    85,    86,     0,    87,
1794
       0,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1795
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1796
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1797
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1798
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1799
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1800
      35,    36,    37,     0,    38,    39,    40,     0,    41,     0,
1801
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1802
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1803
       0,     0,    55,    56,     0,     0,     0,     0,     0,     0,
1804
       0,     0,   134,     0,    60,    61,    62,     0,     0,     0,
1805
       0,     0,     0,     0,     0,    69,    70,     0,    71,    72,
1806
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1807
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1808
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1809
      85,    86,     0,    87,     0,    88,    89,    90,    91,     0,
1810
       0,     0,     0,     0,     0,   332,   333,     0,     0,     0,
1811
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1812
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1813
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1814
       0,    25,    26,   132,    28,    29,    30,    31,     0,     0,
1815
      33,     0,     0,    34,    35,    36,     0,     0,     0,     0,
1816
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1817
       0,     0,     0,    45,     0,     0,     0,    49,    50,     0,
1818
       0,     0,     0,     0,     0,     0,     0,   133,     0,     0,
1819
       0,     0,     0,     0,     0,     0,   134,     0,     0,    61,
1820
      62,     0,     0,     0,     0,     0,     0,     0,     0,   334,
1821
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1822
      79,    80,    81,    82,     0,     4,     0,     5,     6,     7,
1823
       8,     0,     0,    84,     9,    10,     0,    11,     0,   335,
1824
       0,     0,     0,     0,     0,    86,     0,     0,     0,    88,
1825
      89,    90,    91,     0,     0,     0,     0,     0,     0,   332,
1826
     333,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1827
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1828
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1829
       0,    24,     0,     0,     0,    25,    26,   132,    28,    29,
1830
      30,    31,     0,     0,    33,     0,     0,    34,    35,    36,
1831
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1832
       0,     0,     0,     0,     0,     0,     0,    45,     0,     0,
1833
       0,    49,    50,     0,     0,     0,     0,     0,     0,     0,
1834
       0,   133,     0,     0,     0,     0,     0,     0,     0,     0,
1835
     134,     0,     0,    61,    62,     0,     0,     0,     0,     0,
1836
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1837
      75,    76,    77,    78,    79,    80,    81,    82,     0,     4,
1838
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1839
       0,    11,     0,     0,     0,     0,     0,     0,     0,    86,
1840
       0,     0,     0,    88,    89,    90,    91,     0,     0,     0,
1841
       0,     0,     0,   332,   333,     0,     0,     0,     0,     0,
1842
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1843
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1844
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1845
      26,   132,    28,    29,    30,    31,     0,     0,    33,     0,
1846
       0,    34,    35,    36,     0,     0,     0,     0,     0,     0,
1847
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1848
       0,    45,     0,     0,     0,    49,    50,     0,     0,     0,
1849
       0,     0,     0,     0,     0,   133,     0,     0,     0,     0,
1850
       0,     0,     0,     0,   134,     0,     0,    61,    62,     0,
1851
       0,     0,     0,     0,     0,     0,     0,   708,    70,     0,
1852
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1853
      81,    82,     0,     4,     0,     5,     6,     7,     8,     0,
1854
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1855
       0,     0,     0,    86,     0,     0,     0,    88,    89,    90,
1856
      91,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1857
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1858
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1859
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1860
       0,     0,     0,    25,    26,   132,    28,    29,    30,    31,
1861
       0,     0,    33,     0,     0,    34,    35,    36,     0,     0,
1862
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1863
       0,     0,     0,     0,     0,    45,     0,     0,     0,    49,
1864
      50,     0,     0,     0,     0,     0,     0,     0,     0,   133,
1865
       0,     0,     0,     0,     0,     0,     0,     0,   134,     0,
1866
       0,    61,    62,     0,     0,     0,     0,     0,     0,     0,
1867
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1868
      77,    78,    79,    80,    81,    82,   478,     4,     0,     5,
1869
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1870
       0,     0,     0,     0,     0,     0,     0,    86,     0,     0,
1871
       0,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1872
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1873
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1874
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1875
      22,    23,     0,    24,     0,     0,     0,    25,    26,   132,
1876
      28,    29,    30,    31,     0,     0,    33,   536,     0,    34,
1877
      35,    36,     0,     0,     0,     0,     0,     0,     0,     0,
1878
       0,     0,     0,     0,     0,     0,     0,     0,     0,    45,
1879
       0,     0,     0,    49,    50,     0,     0,     0,     0,     0,
1880
       0,     0,     0,   133,     0,     0,     0,     0,     0,     0,
1881
       0,     0,   134,     0,     0,    61,    62,     0,     0,     0,
1882
       0,     0,     0,     0,     0,    69,    70,     0,    71,    72,
1883
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1884
       0,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1885
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1886
       0,    86,     0,     0,     0,    88,    89,    90,    91,   568,
1887
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1888
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1889
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1890
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1891
       0,    25,    26,   132,    28,    29,    30,    31,     0,     0,
1892
      33,     0,     0,    34,    35,    36,     0,     0,     0,     0,
1893
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1894
       0,     0,     0,    45,     0,     0,     0,    49,    50,     0,
1895
       0,     0,     0,     0,     0,     0,     0,   133,     0,     0,
1896
       0,     0,     0,     0,     0,     0,   134,     0,     0,    61,
1897
      62,     0,     0,     0,     0,     0,     0,     0,     0,    69,
1898
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1899
      79,    80,    81,    82,     0,     4,     0,     5,     6,     7,
1900
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1901
       0,     0,     0,     0,     0,    86,     0,     0,     0,    88,
1902
      89,    90,    91,   -47,     0,     0,     0,     0,     0,     0,
1903
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1904
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1905
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1906
       0,    24,     0,     0,     0,    25,    26,   132,    28,    29,
1907
      30,    31,     0,     0,    33,     0,     0,    34,    35,    36,
1908
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1909
       0,     0,     0,     0,     0,     0,     0,    45,     0,     0,
1910
       0,    49,    50,     0,     0,     0,     0,     0,     0,     0,
1911
       0,   133,     0,     0,     0,     0,     0,     0,     0,     0,
1912
     134,     0,     0,    61,    62,     0,     0,     0,     0,     0,
1913
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1914
      75,    76,    77,    78,    79,    80,    81,    82,     0,     0,
1915
       4,     0,     5,     6,     7,     8,     0,    84,     0,     9,
1916
      10,     0,    11,     0,     0,     0,     0,     0,     0,    86,
1917
       0,     0,     0,    88,    89,    90,    91,   732,     0,     0,
1918
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1919
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1920
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1921
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1922
      25,    26,   132,    28,    29,    30,    31,     0,     0,    33,
1923
       0,     0,    34,    35,    36,     0,     0,     0,     0,     0,
1924
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1925
       0,     0,    45,     0,     0,     0,    49,    50,     0,     0,
1926
       0,     0,     0,     0,     0,     0,   133,     0,     0,     0,
1927
       0,     0,     0,     0,     0,   134,     0,     0,    61,    62,
1928
       0,     0,     0,     0,     0,     0,     0,     0,    69,    70,
1929
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1930
      80,    81,    82,     0,     4,     0,     5,     6,     7,     8,
1931
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1932
       0,     0,     0,     0,    86,     0,     0,     0,    88,    89,
1933
      90,    91,     0,     0,     0,     0,     0,     0,     0,     0,
1934
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1935
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1936
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1937
      24,     0,     0,     0,    25,    26,   132,    28,    29,    30,
1938
      31,     0,     0,    33,     0,     0,    34,    35,    36,     0,
1939
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1940
       0,     0,     0,     0,     0,     0,    45,     0,     0,     0,
1941
      49,    50,     0,     0,     0,     0,     0,     0,     0,     0,
1942
     133,     0,     0,     0,     0,     0,     0,     0,     0,   134,
1943
       0,     0,    61,    62,     0,     0,     0,     0,     0,     0,
1944
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1945
      76,    77,    78,    79,    80,    81,    82,   751,     4,     0,
1946
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1947
      11,     0,     0,     0,     0,     0,     0,     0,    86,     0,
1948
       0,     0,    88,    89,    90,    91,     0,     0,     0,     0,
1949
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1950
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1951
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1952
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1953
     132,    28,    29,    30,    31,     0,     0,    33,     0,     0,
1954
      34,    35,    36,     0,     0,     0,     0,     0,     0,     0,
1955
       0,     0,     0,     0,     0,     0,     0,     0,     0,   855,
1956
      45,     0,     0,     0,    49,    50,     0,     0,     0,     0,
1957
       0,     0,     0,     0,   133,     0,     0,     0,     0,     0,
1958
       0,     0,     0,   134,     0,     0,    61,    62,     0,     0,
1959
       0,     0,     0,     0,     0,     0,    69,    70,     0,    71,
1960
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1961
      82,     0,     4,     0,     5,     6,     7,     8,     0,     0,
1962
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1963
       0,     0,    86,     0,     0,     0,    88,    89,    90,    91,
1964
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1965
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1966
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1967
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1968
       0,     0,    25,    26,   132,    28,    29,    30,    31,     0,
1969
       0,    33,     0,     0,    34,    35,    36,     0,     0,     0,
1970
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1971
       0,     0,     0,     0,    45,     0,     0,     0,    49,    50,
1972
       0,     0,     0,     0,     0,     0,     0,     0,   133,     0,
1973
       0,     0,     0,     0,     0,     0,     0,   134,     0,     0,
1974
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1975
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1976
      78,    79,    80,    81,    82,     0,     4,     0,     5,     6,
1977
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1978
       0,     0,     0,     0,     0,     0,    86,     0,     0,     0,
1979
      88,    89,    90,    91,     0,     0,     0,     0,     0,     0,
1980
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1981
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1982
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1983
      23,     0,    24,     0,     0,     0,    25,    26,   132,    28,
1984
      29,    30,    31,     0,     0,    33,     0,     0,    34,    35,
1985
      36,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1986
       0,     0,     0,     0,     0,     0,     0,     0,    45,     0,
1987
       0,     0,    49,    50,     0,     0,     0,     0,     0,     0,
1988
       0,     0,   133,     0,     0,     0,     0,     0,     0,     0,
1989
       0,   134,     0,     0,    61,    62,     0,     0,     0,     0,
1990
       0,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1991
      74,    75,    76,    77,    78,    79,    80,    81,    82,     0,
1992
       0,     0,     0,     0,     0,     0,     0,   225,    84,   226,
1993
     227,   228,   229,   230,   231,   232,   233,   234,     0,     0,
1994
     157,     0,     0,     0,    88,    89,    90,    91,   365,   366,
1995
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
1996
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
1997
     387,   388,   389,     0,   390,     0,     0,     0,     0,     0,
1998
       0,     0,   235,     0,   391,     0,     0,     0,     0,     0,
1999
       0,     0,     0,   236,     0,   237,   238,     0,     0,   429,
2000
      28,    29,    30,     0,     0,     0,     0,     0,     0,   241,
2001
     242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
2002
     252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
2003
     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
2004
     272,   273,   274,  1081,   276,   277,   278,   279,   280,     0,
2005
       0,     0,   281,   282,   283,   284,   285,     0,   286,   287,
2006
     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
2007
     298,   299,   300,   301,   302,   303,   304,   225,     0,   226,
2008
     227,   228,   229,   230,   231,   232,   233,   234,     0,     0,
2009
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2010
       0,     0,     0,     0,  1082,   367,   368,   369,   370,   371,
2011
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2012
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
2013
       0,     0,   235,     0,     0,     0,     0,     0,     0,   391,
2014
       0,     0,     0,   236,     0,   237,   238,     0,     0,   429,
2015
      28,    29,    30,     0,     0,     0,     0,     0,     0,   241,
2016
     242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
2017
     252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
2018
     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
2019
     272,   273,   274,  1081,   276,   277,   278,   279,   280,     0,
2020
       0,     0,   281,   282,   283,   284,   285,     0,   286,   287,
2021
     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
2022
     298,   299,   300,   301,   302,   303,   304,     0,   225,     0,
2023
     226,   227,   228,   229,   230,   231,   232,   233,   234,     0,
2024
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2025
       0,     0,     0,     0,  1115,   782,   368,   369,   370,   371,
2026
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2027
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
2028
       0,     0,     0,   235,     0,     0,     0,     0,     0,   391,
2029
       0,     0,     0,     0,   236,     0,   237,   238,     0,     0,
2030
    1054,    28,    29,    30,     0,     0,     0,     0,     0,     0,
2031
     241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
2032
     251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
2033
     261,   262,   263,   264,   265,   266,   267,   268,   269,   270,
2034
     271,   272,   273,   274,  1055,   276,   277,   278,   279,   280,
2035
       0,     0,     0,   281,   282,   283,   284,   285,     0,   286,
2036
     287,   288,   289,   290,   291,   292,   293,  1056,  1057,   296,
2037
     297,   298,   299,   300,   301,   302,   303,   304,     0,     0,
2038
     361,   362,   363,     0,     0,     0,     0,     0,     0,     0,
2039
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2040
       0,   364,   786,   365,   366,   367,   368,   369,   370,   371,
2041
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2042
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
2043
     361,   362,   363,     0,     0,     0,     0,     0,     0,   391,
2044
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2045
       0,   364,     0,   365,   366,   367,   368,   369,   370,   371,
2046
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2047
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
2048
     361,   362,   363,     0,     0,     0,     0,     0,     0,   391,
2049
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2050
       0,   364,     0,   365,   366,   367,   368,   369,   370,   371,
2051
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2052
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
2053
       0,   361,   362,   363,     0,     0,     0,     0,     0,   391,
2054
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2055
       0,   703,   364,     0,   365,   366,   367,   368,   369,   370,
2056
     371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
2057
     381,   382,   383,   384,   385,   386,   387,   388,   389,     0,
2058
     390,   361,   362,   363,     0,     0,     0,     0,     0,     0,
2059
     391,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2060
       0,   713,   364,     0,   365,   366,   367,   368,   369,   370,
2061
     371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
2062
     381,   382,   383,   384,   385,   386,   387,   388,   389,     0,
2063
     390,   361,   362,   363,     0,     0,     0,     0,     0,     0,
2064
     391,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2065
       0,   833,   364,     0,   365,   366,   367,   368,   369,   370,
2066
     371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
2067
     381,   382,   383,   384,   385,   386,   387,   388,   389,     0,
2068
     390,     0,   361,   362,   363,     0,     0,     0,     0,     0,
2069
     391,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2070
       0,     0,   834,   364,     0,   365,   366,   367,   368,   369,
2071
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2072
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2073
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2074
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2075
       0,     0,   835,   364,     0,   365,   366,   367,   368,   369,
2076
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2077
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2078
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2079
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2080
       0,  1133,     0,   364,     0,   365,   366,   367,   368,   369,
2081
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2082
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2083
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2084
       0,   391,     0,     0,     0,     0,     0,   637,     0,     0,
2085
       0,   542,     0,   364,     0,   365,   366,   367,   368,   369,
2086
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2087
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2088
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2089
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2090
       0,   542,     0,   364,     0,   365,   366,   367,   368,   369,
2091
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2092
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2093
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2094
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2095
       0,   638,     0,   364,     0,   365,   366,   367,   368,   369,
2096
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2097
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2098
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2099
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2100
       0,   639,     0,   364,     0,   365,   366,   367,   368,   369,
2101
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2102
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2103
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2104
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2105
       0,   648,     0,   364,     0,   365,   366,   367,   368,   369,
2106
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2107
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2108
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2109
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2110
       0,   651,     0,   364,     0,   365,   366,   367,   368,   369,
2111
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2112
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2113
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2114
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2115
       0,   657,     0,   364,     0,   365,   366,   367,   368,   369,
2116
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2117
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2118
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2119
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2120
       0,   658,     0,   364,     0,   365,   366,   367,   368,   369,
2121
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2122
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2123
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2124
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2125
       0,   676,     0,   364,     0,   365,   366,   367,   368,   369,
2126
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2127
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2128
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2129
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2130
       0,   692,     0,   364,     0,   365,   366,   367,   368,   369,
2131
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2132
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2133
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2134
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2135
       0,   809,     0,   364,  1034,   365,   366,   367,   368,   369,
2136
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2137
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2138
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2139
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2140
       0,   810,     0,   364,     0,   365,   366,   367,   368,   369,
2141
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2142
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2143
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2144
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2145
       0,   838,     0,   364,     0,   365,   366,   367,   368,   369,
2146
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2147
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2148
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2149
       0,   391,     0,     0,     0,     0,     0,     0,     0,  1035,
2150
       0,     0,     0,   364,     0,   365,   366,   367,   368,   369,
2151
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2152
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2153
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2154
       0,   391,     0,     0,     0,     0,     0,     0,     0,   392,
2155
       0,     0,     0,   364,     0,   365,   366,   367,   368,   369,
2156
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2157
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2158
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2159
       0,   391,     0,     0,     0,     0,     0,     0,     0,   530,
2160
       0,     0,     0,   364,     0,   365,   366,   367,   368,   369,
2161
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2162
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2163
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2164
       0,   391,     0,     0,     0,     0,     0,   332,   333,  1201,
2165
       0,     0,     0,   364,     0,   365,   366,   367,   368,   369,
2166
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2167
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2168
       0,   390,     0,     0,     0,   132,    28,    29,    30,    31,
2169
       0,   391,    33,     0,     0,     0,   313,     0,   886,     0,
2170
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2171
       0,     0,     0,     0,     0,     0,   225,     0,   226,   227,
2172
     228,   229,   230,   231,   232,   233,   234,     0,     0,   162,
2173
       0,     0,     0,     0,     0,     0,     0,     0,   134,     0,
2174
       0,     0,     0,     0,     0,     0,     0,  -409,     0,     0,
2175
       0,   753,    70,     0,    71,    72,    73,    74,    75,    76,
2176
      77,    78,    79,     0,     0,     0,     0,     0,     0,     0,
2177
       0,   235,     0,     0,     0,     0,     0,     0,     0,     0,
2178
       0,     0,   236,     0,   237,   238,     0,   314,  1141,     0,
2179
       0,   754,     0,    90,    91,     0,     0,  -406,   241,   242,
2180
     243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
2181
     253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
2182
     263,   264,   265,   266,   267,   268,   269,   270,   271,   272,
2183
     273,   274,   813,   814,   815,   816,   817,   818,   819,   820,
2184
     821,   822,   282,   283,   284,   285,     0,   286,   287,   288,
2185
     289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
2186
     299,   300,   301,   302,   303,   304,   225,   363,   226,   227,
2187
     228,   229,   230,   231,   232,   233,   234,     0,     0,     0,
2188
       0,     0,     0,     0,     0,     0,   364,     0,   365,   366,
2189
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2190
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2191
     387,   388,   389,     0,   390,     0,     0,     0,     0,     0,
2192
       0,   235,     0,     0,   391,     0,     0,     0,     0,     0,
2193
       0,     0,   236,     0,   237,   238,     0,     0,   239,     0,
2194
       0,   240,     0,     0,     0,     0,     0,     0,   241,   242,
2195
     243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
2196
     253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
2197
     263,   264,   265,   266,   267,   268,   269,   270,   271,   272,
2198
     273,   274,   275,   276,   277,   278,   279,   280,     0,     0,
2199
       0,   281,   282,   283,   284,   285,     0,   286,   287,   288,
2200
     289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
2201
     299,   300,   301,   302,   303,   304,   225,     0,   226,   227,
2202
     228,   229,   230,   231,   232,   233,   234,   370,   371,   372,
2203
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2204
     383,   384,   385,   386,   387,   388,   389,     0,   390,     0,
2205
       0,     0,     0,     0,     0,     0,     0,     0,   391,     0,
2206
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2207
       0,   235,     0,     0,     0,     0,     0,     0,     0,     0,
2208
       0,     0,   236,     0,   237,   238,     0,     0,   239,     0,
2209
       0,     0,     0,     0,     0,     0,     0,     0,   241,   242,
2210
     243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
2211
     253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
2212
     263,   264,   265,   266,   267,   268,   269,   270,   271,   272,
2213
     273,   274,   275,   276,   277,   278,   279,   280,     0,     0,
2214
       0,   281,   282,   283,   284,   285,     0,   286,   287,   288,
2215
     289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
2216
     299,   300,   301,   302,   303,   304,   225,     0,   226,   227,
2217
     228,   229,   230,   231,   232,   233,   234,   372,   373,   374,
2218
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2219
     385,   386,   387,   388,   389,     0,   390,     0,     0,     0,
2220
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2221
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2222
       0,   235,     0,     0,     0,     0,     0,     0,     0,     0,
2223
       0,     0,   236,     0,   237,   238,     0,     0,  1098,     0,
2224
       0,     0,     0,     0,     0,     0,     0,     0,   241,   242,
2225
     243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
2226
     253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
2227
     263,   264,   265,   266,   267,   268,   269,   270,   271,   272,
2228
     273,   274,   275,   276,   277,   278,   279,   280,     0,     0,
2229
       0,   281,   282,   283,   284,   285,     0,   286,   287,   288,
2230
     289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
2231
     299,   300,   301,   302,   303,   304,   132,    28,    29,    30,
2232
      31,     0,     0,    33,     0,     0,     0,   313,  -608,  -608,
2233
    -608,  -608,  -608,   377,   378,   379,   380,   381,   382,   383,
2234
     384,   385,   386,   387,   388,   389,     0,   390,     0,     0,
2235
       0,     0,     0,     0,     0,     0,     0,   391,     0,     0,
2236
     162,     0,     0,     0,     0,     0,     0,     0,     0,   134,
2237
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2238
       0,     0,     0,    70,     0,    71,    72,    73,    74,    75,
2239
      76,    77,    78,    79,     0,     0,     0,     0,     0,     0,
2240
       0,     0,     0,     0,     0,   361,   362,   363,     0,     0,
2241
       0,     0,     0,     0,     0,     0,     0,     0,   314,     0,
2242
       0,     0,   315,     0,    90,    91,   364,     0,   365,   366,
2243
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2244
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2245
     387,   388,   389,     0,   390,     0,     0,     0,     0,     0,
2246
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2247
       0,     0,     0,     0,   361,   362,   363,     0,     0,   552,
2248
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2249
       0,     0,     0,     0,     0,   364,   655,   365,   366,   367,
2250
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2251
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2252
     388,   389,     0,   390,   361,   362,   363,     0,     0,     0,
2253
       0,     0,     0,   391,     0,     0,     0,     0,     0,     0,
2254
       0,     0,     0,     0,     0,   364,   719,   365,   366,   367,
2255
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2256
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2257
     388,   389,     0,   390,   361,   362,   363,     0,     0,     0,
2258
       0,     0,     0,   391,     0,     0,     0,     0,     0,     0,
2259
       0,     0,     0,     0,     0,   364,     0,   365,   366,   367,
2260
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2261
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2262
     388,   389,     0,   390,   362,   363,     0,     0,     0,     0,
2263
       0,     0,     0,   391,     0,     0,     0,     0,     0,     0,
2264
       0,     0,     0,     0,   364,     0,   365,   366,   367,   368,
2265
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
2266
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
2267
     389,   419,   390,     0,     0,     0,     0,     0,     0,     0,
2268
       0,     0,   391,     0,     0,     0,     0,   364,     0,   365,
2269
     366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2270
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2271
     386,   387,   388,   389,     0,   390,     0,     0,     0,     0,
2272
       0,     0,     0,     0,     0,   391
2273
};
2274
2275
static const yytype_int16 yycheck[] =
2276
{
2277
       2,    35,     2,   116,    81,    82,     2,    81,    82,    56,
2278
      54,    80,   469,   115,   116,   776,    47,    16,    81,    82,
2279
      35,    52,    14,    31,   137,   205,    81,    82,    14,    68,
2280
     722,    79,   829,    35,    35,   137,   978,    79,   980,  1023,
2281
     766,  1025,    14,    14,   770,    14,   521,    94,    31,  1133,
2282
     507,    79,   310,   311,   511,    31,    37,   315,    37,   760,
2283
       0,   714,   100,   875,   684,   100,    31,   313,   525,    81,
2284
      82,   177,    31,   109,   110,    79,  1160,    81,   174,  1009,
2285
     176,   109,   110,    35,    94,   738,   133,   177,   135,   827,
2286
      75,    76,    77,    78,    94,    75,   176,    75,    94,   179,
2287
     101,   177,   873,     4,     5,     6,     7,     8,     9,    10,
2288
      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
2289
      21,    22,    23,    24,   100,   135,    75,    79,   940,  1059,
2290
      79,   179,   170,   169,   119,   170,   184,    38,     2,   831,
2291
     217,   966,   184,   217,   390,    46,    47,  1131,   128,   961,
2292
     851,    52,   853,   177,   217,   952,   166,   142,   143,   897,
2293
     898,   205,   217,   167,   168,   166,   167,    75,   103,   104,
2294
    1100,   179,  1156,  1157,   945,    39,    30,   103,   104,   183,
2295
     179,   942,    83,   954,  1009,    86,   178,    88,   808,    35,
2296
     176,    37,   177,   179,   177,  1179,    30,   178,    58,   178,
2297
    1012,  1185,   399,  1187,   177,   217,   178,   178,    68,   178,
2298
     685,   949,   938,  1197,  1026,   177,   836,   176,    79,   177,
2299
      81,    75,    76,    77,    78,    75,    76,    77,    78,    79,
2300
     179,   174,  1003,   176,  1176,   184,   974,   975,   976,   977,
2301
    1011,    75,    76,    77,    78,   180,    75,    76,    77,    78,
2302
     327,    71,    72,   327,   180,   635,   157,   637,    79,   336,
2303
     161,   177,   336,   164,   327,   119,   646,   464,   465,   119,
2304
     157,   158,   327,   336,   175,    79,   174,   178,   312,   313,
2305
     178,   336,   183,   184,   185,   177,   187,   188,   142,   143,
2306
     179,   549,  1063,    79,   181,    81,   169,   312,   313,    75,
2307
     402,  1072,    78,   350,   177,   166,   167,   168,   142,   143,
2308
     767,   313,   313,   142,   143,   327,   169,   218,   219,    79,
2309
     500,    81,  1119,   177,   336,   394,   177,   177,   197,   331,
2310
      79,   174,    81,   176,   184,   331,   179,    37,    38,    53,
2311
     782,   120,   121,   177,   786,   166,   167,   168,   177,   128,
2312
      75,    76,    77,    78,    79,   134,   390,   396,   397,  1120,
2313
      79,    75,    81,   167,   168,    79,  1163,   177,   825,   400,
2314
      84,    75,    76,    77,    78,   390,  1147,   109,   110,    79,
2315
     166,   167,   168,   177,  1155,    75,    76,   119,    78,   436,
2316
      75,  1162,   177,    78,   119,   120,   121,   431,   855,   177,
2317
     857,  1172,   859,   128,    71,    72,   177,   167,   168,   310,
2318
     311,   868,   169,   314,   315,   119,   431,   169,   167,   168,
2319
      59,   153,    89,   174,   109,   326,   111,   178,   153,   431,
2320
     431,   157,   158,   174,   335,   176,   467,   879,   880,   881,
2321
     882,   174,   175,   169,    68,   178,   347,   516,   167,   168,
2322
     552,   177,   177,    92,   177,   181,   500,   134,  1150,   184,
2323
     361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
2324
     371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
2325
     381,   382,   383,   384,   385,   386,   387,   388,   389,   169,
2326
     391,   493,    92,   357,  1186,   134,   754,   493,   545,   400,
2327
     176,   402,   403,   404,   405,   406,   407,   408,   409,   410,
2328
     411,   412,   413,   414,   415,   157,   158,   176,   419,   420,
2329
     421,   422,   423,   424,   425,   426,   174,   428,   176,    75,
2330
      76,   600,    78,   172,    16,   545,   157,   158,   176,   181,
2331
     617,   176,   174,   617,   176,   545,   176,   805,   169,   545,
2332
     451,   120,   121,   655,   617,    75,    76,    77,    78,   128,
2333
     181,    16,   617,   109,   178,   111,   467,   157,   158,    75,
2334
      76,    77,    78,   474,   102,   103,   104,   478,   655,   169,
2335
      75,   655,   157,   158,   153,   843,    75,   177,   489,    75,
2336
     659,   181,   655,   176,   169,   672,   157,   158,   672,   119,
2337
     655,    75,   177,   504,   177,   617,   181,   179,   169,   672,
2338
     120,   121,  1069,   682,   157,   158,   175,   672,   128,   174,
2339
     181,   176,   142,   143,    37,    38,    75,    76,    77,    78,
2340
      79,   182,   709,   157,   158,   709,   142,   143,   181,   102,
2341
     103,   104,   177,   655,   678,   169,   709,   681,   549,   174,
2342
      35,   552,    37,   554,   709,   689,   174,   181,   176,   560,
2343
     672,   562,   174,   678,   176,    31,   681,   568,   683,   177,
2344
     119,   120,   121,   174,   689,   176,   174,   175,   755,   128,
2345
     178,   755,   109,   110,   686,   134,   686,   180,   181,   177,
2346
     686,   176,   755,   177,   563,   114,   115,   709,   880,   881,
2347
     755,   602,   975,   976,   153,   606,    89,    90,   777,    31,
2348
     611,    31,   109,   110,   111,   717,    31,    31,   720,    31,
2349
     722,   717,   119,   120,   121,   794,    31,    31,   177,    31,
2350
      31,   128,    31,   634,   635,   184,   637,   134,   135,   136,
2351
     137,    31,   776,   755,   846,   646,    54,    55,    56,   650,
2352
      58,    31,   653,   654,   174,   177,   153,   174,   176,   324,
2353
      68,   776,   401,   328,   174,    75,    79,   782,   179,   846,
2354
     176,   786,   846,   674,   174,   174,   138,   342,   176,   344,
2355
     345,   346,   138,   846,   648,    31,   179,   651,   178,   178,
2356
     174,   846,    75,   795,   175,   795,    75,    16,   437,   795,
2357
     180,   702,    49,    50,    51,    52,    53,    54,    55,    56,
2358
     711,    58,   827,   823,   177,    75,   177,   177,   719,   177,
2359
     889,    68,   686,   177,   175,   178,   175,   179,   178,   831,
2360
     100,   179,   178,   178,   846,   837,   139,   839,   179,   908,
2361
     874,   837,    16,   839,   175,   177,    84,   175,   178,    35,
2362
     751,   178,   177,   754,    52,    53,    54,    55,    56,   874,
2363
      58,   762,   179,   174,   879,   880,   881,   882,   177,    55,
2364
      68,   873,   941,   742,   100,    35,   745,   177,   176,   176,
2365
     176,   174,   897,   898,   176,   174,    35,   526,   527,    37,
2366
     176,    31,   176,   895,   758,  1008,   797,   178,   174,   933,
2367
     178,   175,   177,   176,   805,    91,  1008,   174,   942,   180,
2368
     174,   174,   177,   179,    75,   174,    37,   919,   933,   180,
2369
      31,   179,  1024,   919,   179,   178,   180,   942,    38,    35,
2370
      35,   795,   116,    37,   949,   945,   178,   176,   178,   840,
2371
     841,   178,   843,   178,   176,   809,    14,    14,   111,   180,
2372
     109,   966,   954,    14,   950,   179,    37,   171,   179,   974,
2373
     975,   976,   977,   965,   177,  1004,   605,   176,   176,   965,
2374
     609,    79,    79,   176,   613,   614,   178,    16,    16,   848,
2375
    1049,    16,    16,   847,   986,    16,    16,    16,   179,    79,
2376
     986,   174,   179,   169,  1009,   176,  1065,   179,  1000,   176,
2377
     100,  1003,   117,   176,  1000,  1107,  1040,   169,  1047,  1011,
2378
     179,   178,   176,  1047,  1053,    79,    16,    75,  1119,   177,
2379
     177,   922,   891,   179,   178,  1040,  1095,   178,   929,   689,
2380
     931,    94,  1047,   205,  1036,  1037,    54,   846,   866,   500,
2381
    1036,  1037,   186,   672,   985,  1084,   929,   916,   895,   823,
2382
    1084,  1164,   949,  1122,   898,  1124,   786,   502,  1127,  1128,
2383
     157,  1063,  1164,   505,   945,   934,  1084,  1093,  1154,  1084,
2384
    1072,  1073,  1059,  1075,  1076,  1162,   490,  1073,  1100,  1075,
2385
    1076,   840,  1121,   474,   166,   653,  1120,  1107,   109,   110,
2386
     640,   397,   554,   994,   674,    -1,   997,  1166,   119,   120,
2387
     121,    -1,    -1,    -1,  1143,  1120,    -1,   128,    -1,  1178,
2388
      -1,    -1,    -1,   134,   135,   136,   137,    -1,    -1,   983,
2389
      -1,   985,   991,   992,    -1,    -1,    -1,   313,    -1,    -1,
2390
      -1,    -1,   153,  1135,    -1,    -1,  1138,    -1,  1140,  1135,
2391
      -1,    -1,  1138,    -1,  1140,  1147,    -1,    -1,  1150,    -1,
2392
      -1,    -1,  1162,  1155,    -1,    -1,    -1,    -1,  1027,    -1,
2393
      -1,    -1,    -1,    -1,    -1,  1034,  1035,    -1,    -1,    -1,
2394
    1172,    50,    51,    52,    53,    54,    55,    56,  1079,    58,
2395
      -1,    -1,    -1,    -1,  1186,    -1,  1188,    -1,    -1,    68,
2396
    1091,    -1,  1188,    -1,    -1,  1096,  1097,  1199,    -1,    -1,
2397
      -1,    -1,  1103,  1199,   390,    -1,    -1,    -1,    -1,    -1,
2398
     396,   397,   398,   399,   119,   120,   121,   122,   123,   124,
2399
     125,   126,   127,   128,    -1,    -1,    -1,    -1,    -1,    -1,
2400
      -1,  1132,    -1,   103,    -1,    -1,  1105,    -1,    -1,    -1,
2401
    1109,   111,    -1,  1112,    -1,   431,   116,  1148,   153,   119,
2402
     120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
2403
      -1,   119,   120,   121,   122,   123,   124,   125,   126,   127,
2404
     128,    -1,    -1,    -1,    -1,   180,   462,    -1,   464,   465,
2405
     466,    -1,     3,   153,     5,     6,     7,     8,     9,    10,
2406
      11,    12,    13,  1194,    15,   153,    -1,    -1,    -1,   119,
2407
     120,   121,   122,   123,   124,   125,   126,   127,   128,    30,
2408
     180,    -1,    -1,    -1,    -1,  1184,   502,    -1,    -1,    -1,
2409
      -1,    -1,   180,    -1,    -1,    -1,    -1,  1196,    -1,    -1,
2410
      -1,    52,    53,   153,    -1,    -1,    57,    58,    59,    60,
2411
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2412
      71,    72,    73,    74,    75,    76,    77,    78,    79,    -1,
2413
     180,    82,    -1,    -1,    85,    86,    87,    88,    89,    90,
2414
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
2415
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
2416
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
2417
     121,   122,   123,   124,    -1,    -1,    -1,   128,   129,   130,
2418
     131,   132,    -1,   134,   135,   136,   137,   138,   139,   140,
2419
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
2420
     151,   152,   153,   154,   155,    -1,    -1,    -1,    -1,    -1,
2421
      -1,    -1,    -1,    -1,   165,    -1,    -1,    -1,    -1,    -1,
2422
     171,    -1,    -1,    -1,    -1,    -1,   177,   178,    -1,    -1,
2423
     181,   182,   183,   184,     3,    -1,     5,     6,     7,     8,
2424
       9,    10,    11,    12,    13,    -1,    15,    -1,    -1,   103,
2425
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   111,    -1,    -1,
2426
      -1,    30,    -1,    -1,    -1,   119,   120,   121,   122,   123,
2427
     124,   125,   126,   127,   128,   129,    -1,    -1,    -1,    -1,
2428
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    58,
2429
      59,    60,    61,    62,    63,    64,    65,    66,    67,   153,
2430
      69,    -1,    71,    72,    73,    74,    75,    76,    77,    78,
2431
      79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2432
      89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
2433
      99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
2434
     109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
2435
     119,   120,   121,   122,   123,   124,    -1,    -1,    -1,   128,
2436
     129,   130,   131,   132,    -1,   134,   135,   136,   137,   138,
2437
     139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
2438
     149,   150,   151,   152,   153,   154,   155,    -1,    -1,    -1,
2439
      -1,    -1,    -1,    -1,    -1,    -1,   165,    -1,    -1,    -1,
2440
      -1,    -1,   171,    -1,    -1,    -1,    -1,    -1,   177,   178,
2441
      -1,    -1,   181,   182,   183,   184,     3,    -1,     5,     6,
2442
       7,     8,     9,    10,    11,    12,    13,    -1,    15,   119,
2443
     120,   121,   122,   123,   124,   125,   126,   127,   128,    -1,
2444
      -1,    -1,    -1,    30,    44,    45,    46,    47,    48,    49,
2445
      50,    51,    52,    53,    54,    55,    56,    -1,    58,    -1,
2446
      -1,    -1,    -1,   153,    -1,    52,    53,    -1,    68,    -1,
2447
      57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
2448
      67,    -1,    69,    -1,    71,    72,    73,    74,    75,    76,
2449
      77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,
2450
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
2451
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
2452
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
2453
     117,   118,   119,   120,   121,   122,   123,   124,    -1,    -1,
2454
      -1,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
2455
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
2456
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
2457
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   165,    -1,
2458
      -1,    -1,    -1,    -1,   171,    -1,    -1,    -1,    -1,    -1,
2459
     177,   178,    -1,    -1,   181,   182,   183,   184,     3,    -1,
2460
       5,     6,     7,     8,     9,    10,    11,    12,    13,    -1,
2461
      15,   119,   120,   121,   122,   123,   124,   125,   126,   127,
2462
     128,    -1,    -1,    -1,    -1,    30,    -1,    -1,    -1,    16,
2463
      17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
2464
      27,    28,    29,    -1,    -1,    -1,    -1,    52,    53,    -1,
2465
      -1,    -1,    57,    58,    59,    60,    61,    62,    63,    64,
2466
      65,    66,    67,    -1,    69,    -1,    71,    72,    73,    74,
2467
      75,    76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,
2468
      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
2469
      95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
2470
     105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
2471
     115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
2472
      -1,    -1,    -1,   128,   129,   130,   131,   132,    -1,   134,
2473
     135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
2474
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2475
     155,    -1,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2476
     165,    12,    13,    -1,    15,    -1,   171,   154,   155,    -1,
2477
     157,   158,   177,    -1,    -1,    -1,   181,   182,   183,   184,
2478
      -1,    -1,   169,   119,   120,   121,   122,   123,   124,   125,
2479
     126,   127,   128,    -1,   181,    -1,    -1,    -1,    -1,    -1,
2480
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2481
      61,    62,    63,    64,    65,    66,    67,   153,    69,    -1,
2482
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2483
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2484
      91,    92,   178,    94,    -1,    96,    -1,    98,    -1,    -1,
2485
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2486
     111,   112,   113,    -1,    -1,   116,    -1,   118,   119,   120,
2487
     121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2488
     131,   132,   133,   134,   135,   136,   137,    -1,    -1,   140,
2489
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2490
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2491
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2492
      -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,   180,
2493
     181,   182,   183,   184,    -1,    -1,    -1,   119,   120,   121,
2494
     122,   123,   124,   125,   126,   127,   128,    -1,    -1,    -1,
2495
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2496
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2497
      67,   153,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2498
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2499
      87,    88,    -1,    90,    91,    92,   178,    94,    -1,    96,
2500
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2501
     107,   108,   109,   110,   111,   112,   113,    -1,    -1,   116,
2502
      -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,
2503
      -1,   128,    -1,   130,   131,   132,   133,   134,   135,   136,
2504
     137,    -1,    -1,   140,   141,   142,    -1,   144,   145,   146,
2505
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2506
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2507
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,
2508
     177,    -1,   179,   180,   181,   182,   183,   184,   109,    -1,
2509
     111,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,   120,
2510
     121,   122,   123,   124,   125,   126,   127,   128,    -1,    52,
2511
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2512
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2513
      73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
2514
      -1,    -1,    85,    86,    87,    88,    -1,    90,    91,    92,
2515
      -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,
2516
      -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
2517
     113,    -1,    -1,   116,    -1,   118,   119,   120,   121,    -1,
2518
      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
2519
     133,   134,   135,   136,   137,    -1,    -1,   140,   141,   142,
2520
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2521
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2522
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,   103,
2523
      -1,    -1,    -1,   176,   177,    -1,   179,   111,   181,   182,
2524
     183,   184,   116,    -1,    -1,   119,   120,   121,   122,   123,
2525
     124,   125,   126,   127,   128,   129,    -1,    -1,    -1,    -1,
2526
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2527
      59,    60,    61,    62,    63,    64,    65,    66,    67,   153,
2528
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2529
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2530
      -1,    90,    91,    92,    -1,    94,   180,    96,    -1,    98,
2531
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2532
     109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,
2533
     119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2534
      -1,   130,   131,   132,   133,   134,   135,   136,   137,    -1,
2535
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2536
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2537
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2538
      15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,
2539
     179,   180,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
2540
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2541
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2542
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2543
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2544
      75,    76,    77,    78,    79,    80,    -1,    82,    -1,    -1,
2545
      85,    86,    87,    88,    -1,    90,    91,    92,    -1,    94,
2546
      -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,
2547
     105,   106,   107,   108,   109,   110,    -1,   112,   113,    -1,
2548
      -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,
2549
      -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,   134,
2550
     135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,
2551
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2552
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2553
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2554
      -1,   176,   177,    -1,   179,   180,   181,   182,   183,   184,
2555
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2556
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2557
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2558
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2559
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2560
      -1,    82,    -1,    -1,    85,    86,    87,    88,    89,    90,
2561
      91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,
2562
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2563
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,
2564
     121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2565
     131,   132,   133,   134,   135,   136,   137,    -1,    -1,    -1,
2566
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2567
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2568
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2569
      -1,   103,    -1,    -1,    -1,   176,   177,    -1,   179,   111,
2570
     181,   182,   183,   184,   116,    -1,    -1,   119,   120,   121,
2571
     122,   123,   124,   125,   126,   127,   128,   129,    -1,    -1,
2572
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2573
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2574
      67,   153,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2575
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2576
      87,    88,    -1,    90,    91,    92,    93,    94,   180,    96,
2577
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2578
     107,   108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,
2579
      -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,
2580
      -1,   128,    -1,   130,   131,   132,   133,   134,   135,   136,
2581
     137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2582
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2583
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2584
      13,    -1,    15,    -1,    -1,   103,    -1,    -1,    -1,   176,
2585
     177,    -1,   179,   111,   181,   182,   183,   184,   116,    -1,
2586
      -1,   119,   120,   121,   122,   123,   124,   125,   126,   127,
2587
     128,   129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2588
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2589
      63,    64,    65,    66,    67,   153,    69,    -1,    -1,    -1,
2590
      73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
2591
      -1,    -1,    85,    86,    87,    88,    -1,    90,    91,    92,
2592
      -1,    94,   180,    96,    -1,    98,    99,    -1,   101,    -1,
2593
      -1,    -1,   105,   106,   107,   108,   109,   110,    -1,   112,
2594
     113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,
2595
      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
2596
     133,   134,   135,   136,   137,    -1,    -1,    -1,   141,   142,
2597
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2598
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2599
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,   103,
2600
      -1,    -1,    -1,   176,   177,    -1,   179,   111,   181,   182,
2601
     183,   184,   116,    -1,    -1,   119,   120,   121,   122,   123,
2602
     124,   125,   126,   127,   128,   129,    -1,    -1,    -1,    -1,
2603
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2604
      59,    60,    61,    62,    63,    64,    65,    66,    67,   153,
2605
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2606
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2607
      -1,    90,    91,    92,    -1,    94,   180,    96,    97,    98,
2608
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2609
     109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,
2610
     119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2611
      -1,   130,   131,   132,   133,   134,   135,   136,   137,    -1,
2612
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2613
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2614
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2615
      15,    -1,    -1,   103,    -1,    -1,    -1,   176,   177,    -1,
2616
     179,   111,   181,   182,   183,   184,   116,    -1,    -1,   119,
2617
     120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
2618
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2619
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2620
      65,    66,    67,   153,    69,    -1,    -1,    -1,    73,    74,
2621
      75,    76,    77,    78,    79,    80,    -1,    82,    -1,    -1,
2622
      85,    86,    87,    88,    -1,    90,    91,    92,    -1,    94,
2623
     180,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,
2624
     105,   106,   107,   108,   109,   110,    -1,   112,   113,    -1,
2625
      -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,
2626
      -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,   134,
2627
     135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,
2628
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2629
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2630
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2631
      -1,   176,   177,    -1,   179,   180,   181,   182,   183,   184,
2632
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2633
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2634
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2635
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2636
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2637
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2638
      91,    92,    -1,    94,    95,    96,    -1,    98,    -1,    -1,
2639
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2640
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,
2641
     121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2642
     131,   132,   133,   134,   135,   136,   137,    -1,    -1,    -1,
2643
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2644
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2645
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2646
      -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,    -1,
2647
     181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
2648
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2649
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2650
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2651
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2652
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2653
      87,    88,    -1,    90,    91,    92,    -1,    94,    -1,    96,
2654
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2655
     107,   108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,
2656
      -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,
2657
      -1,   128,    -1,   130,   131,   132,   133,   134,   135,   136,
2658
     137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2659
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2660
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2661
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,
2662
     177,    -1,   179,   180,   181,   182,   183,   184,    -1,    -1,
2663
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2664
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2665
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2666
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2667
      73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
2668
      -1,    -1,    85,    86,    87,    88,    -1,    90,    91,    92,
2669
      -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,
2670
      -1,    -1,   105,   106,   107,   108,   109,   110,    -1,   112,
2671
     113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,
2672
      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
2673
     133,   134,   135,   136,   137,    -1,    -1,    -1,   141,   142,
2674
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2675
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2676
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2677
      -1,    -1,    -1,   176,   177,    -1,   179,   180,   181,   182,
2678
     183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2679
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2680
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2681
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
2682
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2683
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2684
      -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,    98,
2685
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2686
     109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,
2687
     119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2688
      -1,   130,   131,   132,   133,   134,   135,   136,   137,    -1,
2689
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2690
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2691
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2692
      15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,
2693
     179,   180,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
2694
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2695
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2696
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2697
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2698
      75,    76,    77,    78,    79,    80,    -1,    82,    -1,    -1,
2699
      85,    86,    87,    88,    -1,    90,    91,    92,    -1,    94,
2700
      -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,
2701
     105,   106,   107,   108,   109,   110,    -1,   112,   113,    -1,
2702
      -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,
2703
      -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,   134,
2704
     135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,
2705
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2706
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2707
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2708
      -1,   176,   177,    -1,   179,   180,   181,   182,   183,   184,
2709
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2710
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2711
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2712
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2713
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2714
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2715
      91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,
2716
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2717
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,
2718
     121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2719
     131,   132,   133,   134,   135,   136,   137,    -1,    -1,    -1,
2720
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2721
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2722
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2723
      -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,   180,
2724
     181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
2725
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2726
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2727
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2728
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2729
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2730
      87,    88,    -1,    90,    91,    92,    -1,    94,    -1,    96,
2731
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2732
     107,   108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,
2733
      -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,
2734
      -1,   128,    -1,   130,   131,   132,   133,   134,   135,   136,
2735
     137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2736
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2737
      -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,   165,     5,
2738
       6,     7,     8,     9,    10,    11,    12,    13,    -1,   176,
2739
     177,    -1,   179,    -1,   181,   182,   183,   184,    30,    -1,
2740
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
2741
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
2742
      52,    53,    54,    55,    56,    -1,    58,    -1,    -1,    -1,
2743
      -1,    -1,    58,    -1,    -1,    -1,    68,    -1,    -1,    -1,
2744
      -1,    -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,
2745
      -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,    85,
2746
      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
2747
      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
2748
     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
2749
     116,   117,   118,   119,   120,   121,   122,   123,   124,    -1,
2750
      -1,    -1,   128,   129,   130,   131,   132,    -1,   134,   135,
2751
     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
2752
     146,   147,   148,   149,   150,   151,   152,     3,    -1,     5,
2753
       6,     7,     8,     9,    10,    11,    12,    13,    -1,    -1,
2754
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2755
      -1,    -1,    -1,   179,    -1,    -1,    -1,    -1,   184,    36,
2756
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
2757
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
2758
      -1,    58,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2759
      -1,    68,    -1,    69,    -1,    71,    72,    -1,    -1,    75,
2760
      -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,    85,
2761
      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
2762
      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
2763
     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
2764
     116,   117,   118,   119,   120,   121,   122,   123,   124,    -1,
2765
      -1,    -1,   128,   129,   130,   131,   132,    -1,   134,   135,
2766
     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
2767
     146,   147,   148,   149,   150,   151,   152,     3,    -1,     5,
2768
       6,     7,     8,    -1,    -1,    -1,    12,    13,    -1,    15,
2769
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2770
      -1,    -1,    -1,   179,    -1,    31,    -1,    -1,   184,    -1,
2771
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2772
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2773
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2774
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2775
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2776
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    -1,
2777
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2778
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2779
      -1,    -1,   118,   119,    -1,    -1,    -1,    -1,    -1,    -1,
2780
      -1,    -1,   128,    -1,   130,   131,   132,    -1,    -1,    -1,
2781
      -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2782
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2783
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2784
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2785
     176,   177,    -1,   179,    -1,   181,   182,   183,   184,    31,
2786
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2787
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2788
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2789
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2790
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2791
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2792
      92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,
2793
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,    -1,
2794
     112,   113,    -1,    -1,    -1,    -1,   118,   119,    -1,    -1,
2795
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2796
     132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,
2797
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2798
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2799
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2800
      -1,    -1,    -1,    -1,   176,   177,    -1,   179,    -1,   181,
2801
     182,   183,   184,    31,    -1,    -1,    -1,    -1,    -1,    -1,
2802
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2803
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2804
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2805
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2806
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2807
      88,    -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,
2808
      98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2809
     108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,
2810
     118,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2811
     128,    -1,   130,   131,   132,    -1,    -1,    -1,    -1,    -1,
2812
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2813
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2814
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2815
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,
2816
      -1,   179,    -1,   181,   182,   183,   184,    31,    -1,    -1,
2817
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2818
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2819
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2820
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2821
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2822
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2823
      94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
2824
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2825
      -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,    -1,
2826
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,    -1,
2827
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,
2828
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2829
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2830
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2831
      -1,    -1,   176,   177,    -1,   179,    -1,   181,   182,   183,
2832
     184,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2833
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2834
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2835
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2836
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2837
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2838
      90,    91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,
2839
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2840
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2841
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2842
     130,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2843
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2844
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2845
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2846
      -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,
2847
      -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2848
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2849
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2850
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2851
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2852
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2853
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    -1,
2854
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2855
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2856
      -1,    -1,   118,   119,    -1,    -1,    -1,    -1,    -1,    -1,
2857
      -1,    -1,   128,    -1,   130,   131,   132,    -1,    -1,    -1,
2858
      -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2859
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2860
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2861
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2862
     176,   177,    -1,   179,    -1,   181,   182,   183,   184,    -1,
2863
      -1,    -1,    -1,    -1,    -1,    37,    38,    -1,    -1,    -1,
2864
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2865
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2866
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2867
      -1,    73,    74,    75,    76,    77,    78,    79,    -1,    -1,
2868
      82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,
2869
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2870
      -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,
2871
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,
2872
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,
2873
     132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,
2874
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2875
     152,   153,   154,   155,    -1,     3,    -1,     5,     6,     7,
2876
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,   171,
2877
      -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,   181,
2878
     182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    37,
2879
      38,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2880
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2881
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2882
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2883
      78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,
2884
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2885
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,
2886
      -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2887
      -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2888
     128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,
2889
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2890
     148,   149,   150,   151,   152,   153,   154,   155,    -1,     3,
2891
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2892
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,
2893
      -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,
2894
      -1,    -1,    -1,    37,    38,    -1,    -1,    -1,    -1,    -1,
2895
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2896
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2897
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2898
      74,    75,    76,    77,    78,    79,    -1,    -1,    82,    -1,
2899
      -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
2900
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2901
      -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,
2902
      -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,
2903
      -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,
2904
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,
2905
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2906
     154,   155,    -1,     3,    -1,     5,     6,     7,     8,    -1,
2907
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2908
      -1,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,
2909
     184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2910
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2911
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2912
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2913
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2914
      -1,    -1,    82,    -1,    -1,    85,    86,    87,    -1,    -1,
2915
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2916
      -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,   109,
2917
     110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,
2918
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2919
      -1,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2920
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2921
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2922
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2923
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,
2924
      -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2925
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2926
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2927
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2928
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2929
      76,    77,    78,    79,    -1,    -1,    82,    83,    -1,    85,
2930
      86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2931
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,
2932
      -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,
2933
      -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,
2934
      -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,
2935
      -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2936
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2937
      -1,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2938
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2939
      -1,   177,    -1,    -1,    -1,   181,   182,   183,   184,    31,
2940
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2941
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2942
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2943
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2944
      -1,    73,    74,    75,    76,    77,    78,    79,    -1,    -1,
2945
      82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,
2946
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2947
      -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,
2948
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,
2949
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,
2950
     132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,
2951
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2952
     152,   153,   154,   155,    -1,     3,    -1,     5,     6,     7,
2953
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2954
      -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,   181,
2955
     182,   183,   184,    31,    -1,    -1,    -1,    -1,    -1,    -1,
2956
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2957
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2958
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2959
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2960
      78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,
2961
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2962
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,
2963
      -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2964
      -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2965
     128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,
2966
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2967
     148,   149,   150,   151,   152,   153,   154,   155,    -1,    -1,
2968
       3,    -1,     5,     6,     7,     8,    -1,   165,    -1,    12,
2969
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   177,
2970
      -1,    -1,    -1,   181,   182,   183,   184,    30,    -1,    -1,
2971
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2972
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2973
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2974
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2975
      73,    74,    75,    76,    77,    78,    79,    -1,    -1,    82,
2976
      -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,
2977
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2978
      -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,
2979
      -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,
2980
      -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,
2981
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
2982
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2983
     153,   154,   155,    -1,     3,    -1,     5,     6,     7,     8,
2984
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2985
      -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,
2986
     183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2987
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2988
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2989
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
2990
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2991
      79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,    -1,
2992
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2993
      -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,
2994
     109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2995
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2996
      -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,
2997
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2998
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2999
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
3000
      15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,
3001
      -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
3002
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3003
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
3004
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
3005
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
3006
      75,    76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,
3007
      85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3008
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,
3009
     105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,
3010
      -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,
3011
      -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,
3012
      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,
3013
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
3014
     155,    -1,     3,    -1,     5,     6,     7,     8,    -1,    -1,
3015
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
3016
      -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,   184,
3017
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3018
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3019
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
3020
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
3021
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    -1,
3022
      -1,    82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,
3023
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3024
      -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,
3025
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,
3026
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,
3027
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3028
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
3029
     151,   152,   153,   154,   155,    -1,     3,    -1,     5,     6,
3030
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
3031
      -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,
3032
     181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
3033
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3034
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
3035
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
3036
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
3037
      77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,
3038
      87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3039
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,
3040
      -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
3041
      -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3042
      -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,
3043
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
3044
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
3045
      -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,   165,     5,
3046
       6,     7,     8,     9,    10,    11,    12,    13,    -1,    -1,
3047
     177,    -1,    -1,    -1,   181,   182,   183,   184,    32,    33,
3048
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3049
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3050
      54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,
3051
      -1,    -1,    58,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3052
      -1,    -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,
3053
      76,    77,    78,    -1,    -1,    -1,    -1,    -1,    -1,    85,
3054
      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
3055
      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
3056
     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
3057
     116,   117,   118,   119,   120,   121,   122,   123,   124,    -1,
3058
      -1,    -1,   128,   129,   130,   131,   132,    -1,   134,   135,
3059
     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
3060
     146,   147,   148,   149,   150,   151,   152,     3,    -1,     5,
3061
       6,     7,     8,     9,    10,    11,    12,    13,    -1,    -1,
3062
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3063
      -1,    -1,    -1,    -1,   180,    34,    35,    36,    37,    38,
3064
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3065
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3066
      -1,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    68,
3067
      -1,    -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,
3068
      76,    77,    78,    -1,    -1,    -1,    -1,    -1,    -1,    85,
3069
      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
3070
      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
3071
     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
3072
     116,   117,   118,   119,   120,   121,   122,   123,   124,    -1,
3073
      -1,    -1,   128,   129,   130,   131,   132,    -1,   134,   135,
3074
     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
3075
     146,   147,   148,   149,   150,   151,   152,    -1,     3,    -1,
3076
       5,     6,     7,     8,     9,    10,    11,    12,    13,    -1,
3077
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3078
      -1,    -1,    -1,    -1,   180,    30,    35,    36,    37,    38,
3079
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3080
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3081
      -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,    -1,    68,
3082
      -1,    -1,    -1,    -1,    69,    -1,    71,    72,    -1,    -1,
3083
      75,    76,    77,    78,    -1,    -1,    -1,    -1,    -1,    -1,
3084
      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
3085
      95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
3086
     105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
3087
     115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
3088
      -1,    -1,    -1,   128,   129,   130,   131,   132,    -1,   134,
3089
     135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
3090
     145,   146,   147,   148,   149,   150,   151,   152,    -1,    -1,
3091
       9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3092
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3093
      -1,    30,   177,    32,    33,    34,    35,    36,    37,    38,
3094
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3095
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3096
       9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    68,
3097
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3098
      -1,    30,    -1,    32,    33,    34,    35,    36,    37,    38,
3099
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3100
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3101
       9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    68,
3102
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3103
      -1,    30,    -1,    32,    33,    34,    35,    36,    37,    38,
3104
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3105
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3106
      -1,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,    68,
3107
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3108
      -1,   180,    30,    -1,    32,    33,    34,    35,    36,    37,
3109
      38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
3110
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
3111
      58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,
3112
      68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3113
      -1,   180,    30,    -1,    32,    33,    34,    35,    36,    37,
3114
      38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
3115
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
3116
      58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,
3117
      68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3118
      -1,   180,    30,    -1,    32,    33,    34,    35,    36,    37,
3119
      38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
3120
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
3121
      58,    -1,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3122
      68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3123
      -1,    -1,   180,    30,    -1,    32,    33,    34,    35,    36,
3124
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3125
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3126
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3127
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3128
      -1,    -1,   180,    30,    -1,    32,    33,    34,    35,    36,
3129
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3130
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3131
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3132
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3133
      -1,   179,    -1,    30,    -1,    32,    33,    34,    35,    36,
3134
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3135
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3136
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3137
      -1,    68,    -1,    -1,    -1,    -1,    -1,   174,    -1,    -1,
3138
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3139
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3140
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3141
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3142
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3143
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3144
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3145
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3146
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3147
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3148
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3149
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3150
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3151
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3152
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3153
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3154
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3155
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3156
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3157
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3158
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3159
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3160
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3161
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3162
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3163
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3164
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3165
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3166
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3167
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3168
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3169
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3170
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3171
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3172
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3173
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3174
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3175
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3176
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3177
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3178
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3179
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3180
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3181
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3182
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3183
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3184
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3185
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3186
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3187
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3188
      -1,   178,    -1,    30,    31,    32,    33,    34,    35,    36,
3189
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3190
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3191
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3192
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3193
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3194
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3195
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3196
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3197
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3198
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3199
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3200
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3201
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3202
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   176,
3203
      -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,    36,
3204
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3205
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3206
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3207
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   176,
3208
      -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,    36,
3209
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3210
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3211
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3212
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   176,
3213
      -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,    36,
3214
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3215
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3216
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3217
      -1,    68,    -1,    -1,    -1,    -1,    -1,    37,    38,   176,
3218
      -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,    36,
3219
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3220
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3221
      -1,    58,    -1,    -1,    -1,    75,    76,    77,    78,    79,
3222
      -1,    68,    82,    -1,    -1,    -1,    86,    -1,   175,    -1,
3223
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3224
      -1,    -1,    -1,    -1,    -1,    -1,     3,    -1,     5,     6,
3225
       7,     8,     9,    10,    11,    12,    13,    -1,    -1,   119,
3226
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
3227
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   174,    -1,    -1,
3228
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
3229
     150,   151,   152,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3230
      -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3231
      -1,    -1,    69,    -1,    71,    72,    -1,   177,    75,    -1,
3232
      -1,   181,    -1,   183,   184,    -1,    -1,   174,    85,    86,
3233
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
3234
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
3235
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
3236
     117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
3237
     127,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
3238
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
3239
     147,   148,   149,   150,   151,   152,     3,    11,     5,     6,
3240
       7,     8,     9,    10,    11,    12,    13,    -1,    -1,    -1,
3241
      -1,    -1,    -1,    -1,    -1,    -1,    30,    -1,    32,    33,
3242
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3243
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3244
      54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,
3245
      -1,    58,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3246
      -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,    -1,
3247
      -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,    85,    86,
3248
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
3249
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
3250
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
3251
     117,   118,   119,   120,   121,   122,   123,   124,    -1,    -1,
3252
      -1,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
3253
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
3254
     147,   148,   149,   150,   151,   152,     3,    -1,     5,     6,
3255
       7,     8,     9,    10,    11,    12,    13,    37,    38,    39,
3256
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
3257
      50,    51,    52,    53,    54,    55,    56,    -1,    58,    -1,
3258
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,
3259
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3260
      -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3261
      -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,    -1,
3262
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    85,    86,
3263
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
3264
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
3265
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
3266
     117,   118,   119,   120,   121,   122,   123,   124,    -1,    -1,
3267
      -1,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
3268
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
3269
     147,   148,   149,   150,   151,   152,     3,    -1,     5,     6,
3270
       7,     8,     9,    10,    11,    12,    13,    39,    40,    41,
3271
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3272
      52,    53,    54,    55,    56,    -1,    58,    -1,    -1,    -1,
3273
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3274
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3275
      -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3276
      -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,    -1,
3277
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    85,    86,
3278
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
3279
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
3280
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
3281
     117,   118,   119,   120,   121,   122,   123,   124,    -1,    -1,
3282
      -1,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
3283
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
3284
     147,   148,   149,   150,   151,   152,    75,    76,    77,    78,
3285
      79,    -1,    -1,    82,    -1,    -1,    -1,    86,    39,    40,
3286
      41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
3287
      51,    52,    53,    54,    55,    56,    -1,    58,    -1,    -1,
3288
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,
3289
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
3290
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3291
      -1,    -1,    -1,   142,    -1,   144,   145,   146,   147,   148,
3292
     149,   150,   151,   152,    -1,    -1,    -1,    -1,    -1,    -1,
3293
      -1,    -1,    -1,    -1,    -1,     9,    10,    11,    -1,    -1,
3294
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,
3295
      -1,    -1,   181,    -1,   183,   184,    30,    -1,    32,    33,
3296
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3297
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3298
      54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,
3299
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3300
      -1,    -1,    -1,    -1,     9,    10,    11,    -1,    -1,    14,
3301
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3302
      -1,    -1,    -1,    -1,    -1,    30,   100,    32,    33,    34,
3303
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3304
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3305
      55,    56,    -1,    58,     9,    10,    11,    -1,    -1,    -1,
3306
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3307
      -1,    -1,    -1,    -1,    -1,    30,    31,    32,    33,    34,
3308
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3309
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3310
      55,    56,    -1,    58,     9,    10,    11,    -1,    -1,    -1,
3311
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3312
      -1,    -1,    -1,    -1,    -1,    30,    -1,    32,    33,    34,
3313
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3314
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3315
      55,    56,    -1,    58,    10,    11,    -1,    -1,    -1,    -1,
3316
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3317
      -1,    -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,
3318
      36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
3319
      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
3320
      56,    14,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3321
      -1,    -1,    68,    -1,    -1,    -1,    -1,    30,    -1,    32,
3322
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3323
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3324
      53,    54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,
3325
      -1,    -1,    -1,    -1,    -1,    68
3326
};
3327
3328
  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
3329
     symbol of state STATE-NUM.  */
3330
static const yytype_int16 yystos[] =
3331
{
3332
       0,   186,   191,     0,     3,     5,     6,     7,     8,    12,
3333
      13,    15,    52,    53,    57,    59,    60,    61,    62,    63,
3334
      64,    65,    66,    67,    69,    73,    74,    75,    76,    77,
3335
      78,    79,    80,    82,    85,    86,    87,    88,    90,    91,
3336
      92,    94,    96,    98,   101,   105,   106,   107,   108,   109,
3337
     110,   111,   112,   113,   116,   118,   119,   120,   121,   128,
3338
     130,   131,   132,   133,   134,   135,   136,   137,   140,   141,
3339
     142,   144,   145,   146,   147,   148,   149,   150,   151,   152,
3340
     153,   154,   155,   156,   165,   176,   177,   179,   181,   182,
3341
     183,   184,   195,   198,   199,   200,   201,   202,   218,   227,
3342
     230,   233,   236,   237,   239,   241,   255,   261,   262,   263,
3343
     264,   329,   330,   331,   332,   333,   334,   342,   344,   348,
3344
     349,   350,   351,   353,   354,   355,   356,   357,   358,   359,
3345
     360,   371,    75,   119,   128,   199,   331,   334,   331,   331,
3346
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3347
     331,   331,   331,   331,   331,   331,   331,   177,   284,   331,
3348
      31,   177,   119,   128,   177,   195,   199,   234,   235,   236,
3349
     327,   344,   345,   359,   361,   177,   282,   347,   177,   322,
3350
     323,   331,   218,   177,   177,   177,   177,   177,   177,   331,
3351
     352,   352,    75,    75,   215,   321,   352,   179,    75,    76,
3352
      78,   109,   111,   193,   194,   205,   207,   211,   214,   288,
3353
     289,   359,    79,   290,   291,   332,   282,   177,   177,   177,
3354
     177,   232,   238,   240,   242,     3,     5,     6,     7,     8,
3355
       9,    10,    11,    12,    13,    58,    69,    71,    72,    75,
3356
      78,    85,    86,    87,    88,    89,    90,    91,    92,    93,
3357
      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
3358
     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
3359
     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
3360
     124,   128,   129,   130,   131,   132,   134,   135,   136,   137,
3361
     138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
3362
     148,   149,   150,   151,   152,   187,   188,   190,   192,   204,
3363
     177,   177,   335,    86,   177,   181,   329,   348,   350,   351,
3364
     358,   358,   331,    79,    81,   166,   167,   168,   368,   369,
3365
     331,   216,    37,    38,   141,   171,   189,   331,   364,   365,
3366
     366,   367,    81,   346,   368,    81,   368,   179,   359,   282,
3367
     119,   198,   201,   332,   134,   236,    71,    72,    71,    72,
3368
      89,     9,    10,    11,    30,    32,    33,    34,    35,    36,
3369
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3370
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3371
      58,    68,   176,   189,   338,   338,   169,   169,   157,   158,
3372
     181,   343,    16,    17,    18,    19,    20,    21,    22,    23,
3373
      24,    25,    26,    27,    28,    29,   154,   155,   338,    14,
3374
       3,     5,     6,     7,     8,    12,    13,    30,    69,    75,
3375
      85,    86,    87,   105,   109,   110,   119,   128,   131,   132,
3376
     141,   142,   144,   145,   146,   147,   148,   149,   150,   151,
3377
     152,   171,   178,   190,   285,   286,   331,   331,   331,   327,
3378
     236,   134,   169,   282,   157,   158,   169,   181,   178,   283,
3379
     286,   287,   331,   331,   174,   176,    92,   331,   156,   325,
3380
     326,   331,   331,   215,   331,   331,   176,   176,   176,    16,
3381
     174,   176,   176,   216,   100,   170,   194,   206,   211,   176,
3382
     174,   176,   174,   176,    16,   174,   176,   224,   225,   358,
3383
     331,   372,   373,   331,   178,    75,    75,    75,    75,   176,
3384
     203,   179,   364,   364,   196,   197,   344,   345,   331,   364,
3385
     176,   157,   158,   181,   166,   369,    83,   331,   358,    81,
3386
     166,   369,   178,   133,   180,   199,   200,   217,   218,   177,
3387
     331,   358,    14,   175,   174,   182,   183,   331,   332,   231,
3388
     177,   218,   177,    31,   176,   331,   331,   331,    31,   331,
3389
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3390
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3391
     331,   331,   331,   331,   331,   345,   331,   335,    75,   128,
3392
     226,   335,   179,   190,   359,   362,   179,   190,   359,   362,
3393
      75,   179,   359,   363,   363,   352,   282,   189,   331,   331,
3394
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3395
     331,   331,   331,   331,    31,   174,   208,   174,   178,   178,
3396
     328,   359,   363,   363,   359,   352,   174,   208,   178,   323,
3397
     177,   178,   331,   176,   174,   100,   178,   178,   178,   331,
3398
     321,   180,    75,   179,   170,   176,   176,   194,   214,   289,
3399
     331,   291,   174,   208,   174,   208,   178,   176,   138,   246,
3400
     335,   138,   247,    31,   243,   179,   191,   178,   178,   174,
3401
     208,   282,   178,   175,    75,    75,    53,    75,    79,    84,
3402
     370,   180,   181,   180,   180,   177,   200,   364,   141,   189,
3403
     331,    16,   365,   180,    75,   331,   331,   216,   331,    31,
3404
     177,   335,   177,   331,   282,   331,   282,   331,   282,   282,
3405
     175,   358,    30,   331,   287,   178,   178,   287,   347,   175,
3406
     287,   178,    31,   218,   331,    31,   218,   260,   324,   326,
3407
     331,   156,   331,   141,   181,   189,   249,   358,   219,    31,
3408
     179,   253,   179,   335,   220,   193,   205,   209,   212,   213,
3409
     179,   225,   178,   373,   178,   344,   139,   248,   179,   295,
3410
     344,   335,    30,   119,   142,   143,   177,   195,   271,   272,
3411
     273,   274,   275,   277,   248,   191,   180,    16,   196,   175,
3412
      84,   175,   331,   178,   178,   177,   358,   331,   246,   178,
3413
     178,    89,   331,   119,   120,   121,   122,   123,   124,   125,
3414
     126,   127,   128,   199,   265,   266,   267,   268,   269,   307,
3415
     308,   177,   265,   180,   180,   180,   246,   216,   178,   216,
3416
     176,   174,   331,   177,   364,   358,    14,   178,    31,   218,
3417
     252,   176,   254,   176,   254,   104,   256,   257,   258,   259,
3418
     331,   114,   115,   223,   100,   213,   174,   208,   210,   213,
3419
     176,   295,   335,   292,   174,   179,   272,   272,   275,    37,
3420
      35,    35,    37,   335,   180,   331,   175,   176,   364,   248,
3421
     218,    31,   176,   269,   178,   174,   208,    30,   177,   270,
3422
     276,   277,   278,   279,   280,   308,   265,   178,   248,   176,
3423
      93,   325,   331,   364,   175,   249,    31,   218,   251,   216,
3424
     254,   102,   103,   104,   254,   180,   174,   208,   180,   174,
3425
     208,   174,   208,   177,   179,    75,   212,   180,   174,   208,
3426
     179,   103,   116,   129,   180,   199,   244,   293,   294,   304,
3427
     305,   306,   307,   344,   292,   178,   272,   272,   273,   273,
3428
     272,   179,   180,   178,   335,   216,    31,   281,   267,   277,
3429
     277,   280,    38,   228,    37,    35,    35,    37,   178,   116,
3430
     339,   335,   176,   178,   178,   178,   216,    99,   102,   176,
3431
     331,    31,   176,   180,    14,   258,   331,    14,   221,   344,
3432
     216,   213,   180,   292,   335,   295,   293,   270,   334,   111,
3433
     180,   292,   179,   271,    14,   178,   171,   229,   277,   277,
3434
     278,   278,   277,   281,   177,   281,   179,    31,   218,   250,
3435
     251,    97,   176,   176,    31,   176,   216,   216,   331,   331,
3436
      35,    79,   222,   180,   180,   190,   176,   179,   296,    79,
3437
     309,   310,   311,   338,    75,   119,   142,   143,   188,   271,
3438
     319,   320,   180,   292,   336,    79,   336,    79,   189,   340,
3439
     341,   336,   292,   216,   176,   216,   216,   344,   178,    16,
3440
     245,   119,   180,   190,   297,   298,   299,   300,   301,   302,
3441
     344,    16,   335,   174,   176,   190,    16,    16,    75,   319,
3442
     174,   176,   180,   337,   335,   179,    79,   174,   208,   179,
3443
     180,    95,   179,   331,   176,   180,   298,   176,   176,   100,
3444
     117,   169,   331,   179,    79,   310,   335,   331,   331,   176,
3445
     320,   331,    16,   179,   313,   216,   341,   178,   216,   176,
3446
     216,    75,   187,   308,   295,   190,   335,   312,    16,   335,
3447
     177,   335,   335,   336,   331,   312,   180,   180,   180,   190,
3448
     179,   180,   199,   307,   314,   315,   331,   265,   313,   180,
3449
     336,   336,   312,   315,   338,   335,   178,   180,    75,   281,
3450
     335,   336,   316,   176,   179,   303,   177,   318,   216,   336,
3451
     265,   336,   180,   178,    14,   176,   179,   317,   331,   216,
3452
     336,   176,   180
3453
};
3454
3455
  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
3456
static const yytype_int16 yyr1[] =
3457
{
3458
       0,   185,   186,   187,   187,   187,   187,   187,   187,   187,
3459
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3460
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3461
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3462
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3463
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3464
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3465
     187,   187,   187,   187,   188,   188,   188,   188,   188,   188,
3466
     188,   188,   189,   189,   190,   190,   191,   191,   192,   192,
3467
     193,   193,   194,   194,   195,   195,   195,   195,   196,   196,
3468
     197,   197,   198,   199,   199,   200,   200,   200,   200,   200,
3469
     201,   201,   202,   202,   202,   202,   202,   203,   202,   204,
3470
     202,   202,   202,   202,   202,   205,   205,   206,   207,   208,
3471
     208,   209,   209,   210,   210,   211,   211,   212,   212,   213,
3472
     213,   214,   214,   215,   215,   216,   216,   217,   217,   217,
3473
     217,   218,   218,   218,   218,   218,   218,   218,   218,   218,
3474
     218,   218,   218,   218,   218,   218,   218,   218,   218,   219,
3475
     218,   218,   218,   218,   218,   218,   220,   220,   221,   221,
3476
     222,   222,   223,   223,   224,   224,   225,   226,   226,   227,
3477
     228,   228,   229,   229,   231,   230,   232,   230,   233,   233,
3478
     234,   234,   235,   235,   236,   236,   236,   238,   237,   240,
3479
     239,   242,   241,   243,   243,   244,   245,   245,   246,   246,
3480
     247,   247,   248,   248,   249,   249,   249,   249,   250,   250,
3481
     251,   251,   252,   252,   253,   253,   253,   253,   254,   254,
3482
     254,   254,   254,   255,   256,   256,   257,   257,   258,   258,
3483
     259,   259,   260,   260,   261,   261,   262,   262,   263,   263,
3484
     264,   264,   265,   265,   266,   266,   267,   267,   268,   268,
3485
     269,   269,   270,   270,   271,   271,   271,   271,   272,   272,
3486
     273,   273,   274,   274,   275,   275,   276,   276,   276,   276,
3487
     277,   277,   277,   278,   278,   279,   279,   280,   280,   281,
3488
     281,   282,   282,   283,   283,   284,   284,   284,   285,   285,
3489
     285,   286,   286,   286,   286,   286,   287,   287,   288,   288,
3490
     289,   290,   290,   291,   291,   292,   292,   293,   293,   293,
3491
     293,   293,   293,   294,   294,   294,   295,   295,   296,   296,
3492
     296,   297,   297,   298,   298,   299,   300,   300,   300,   300,
3493
     301,   301,   302,   303,   303,   304,   304,   305,   305,   306,
3494
     306,   307,   307,   308,   308,   308,   308,   308,   308,   308,
3495
     308,   308,   308,   309,   309,   310,   310,   311,   311,   312,
3496
     312,   312,   313,   313,   314,   314,   316,   315,   317,   317,
3497
     317,   318,   318,   319,   319,   320,   320,   321,   322,   322,
3498
     323,   324,   324,   324,   325,   325,   326,   326,   326,   326,
3499
     328,   327,   329,   329,   329,   330,   331,   331,   331,   331,
3500
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3501
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3502
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3503
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3504
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3505
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3506
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3507
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3508
     331,   331,   332,   332,   333,   334,   335,   336,   337,   338,
3509
     338,   339,   339,   340,   340,   341,   341,   342,   342,   342,
3510
     342,   343,   342,   344,   344,   345,   345,   345,   346,   346,
3511
     346,   347,   347,   348,   348,   348,   348,   349,   349,   349,
3512
     349,   349,   349,   349,   349,   350,   350,   350,   350,   350,
3513
     350,   350,   350,   350,   350,   351,   351,   351,   351,   352,
3514
     352,   353,   354,   354,   354,   354,   354,   355,   355,   356,
3515
     356,   356,   356,   357,   357,   357,   357,   357,   358,   358,
3516
     358,   358,   359,   359,   359,   360,   360,   361,   361,   361,
3517
     361,   361,   361,   362,   362,   362,   363,   363,   363,   364,
3518
     365,   365,   366,   366,   367,   367,   367,   367,   367,   367,
3519
     367,   368,   368,   368,   368,   369,   369,   369,   369,   369,
3520
     369,   369,   369,   370,   370,   370,   370,   371,   371,   371,
3521
     371,   371,   371,   371,   372,   372,   373
3522
};
3523
3524
  /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
3525
static const yytype_int8 yyr2[] =
3526
{
3527
       0,     2,     1,     1,     1,     1,     1,     1,     1,     1,
3528
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3529
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3530
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3531
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3532
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3533
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3534
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3535
       1,     1,     1,     1,     1,     1,     2,     0,     1,     1,
3536
       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
3537
       1,     3,     5,     1,     2,     1,     1,     1,     1,     1,
3538
       1,     3,     1,     1,     2,     4,     3,     0,     6,     0,
3539
       5,     3,     4,     3,     4,     1,     1,     6,     6,     0,
3540
       1,     3,     1,     3,     1,     3,     1,     1,     2,     1,
3541
       3,     1,     3,     3,     1,     2,     0,     1,     1,     2,
3542
       4,     3,     1,     1,     5,     7,     9,     5,     3,     3,
3543
       3,     3,     3,     3,     1,     2,     6,     7,     9,     0,
3544
       6,     1,     6,     3,     2,     3,     0,     9,     1,     3,
3545
       0,     1,     0,     4,     1,     3,     1,     1,     1,    13,
3546
       0,     1,     0,     1,     0,    10,     0,     9,     1,     2,
3547
       1,     2,     0,     1,     1,     1,     1,     0,     7,     0,
3548
       8,     0,     9,     0,     2,     5,     0,     2,     0,     2,
3549
       0,     2,     0,     2,     1,     2,     4,     3,     1,     4,
3550
       1,     4,     1,     4,     3,     4,     4,     5,     0,     5,
3551
       5,     4,     4,     7,     0,     2,     1,     3,     4,     4,
3552
       1,     3,     1,     4,     5,     6,     1,     3,     6,     7,
3553
       3,     6,     2,     0,     1,     3,     2,     1,     0,     1,
3554
       7,     9,     0,     1,     1,     2,     1,     1,     1,     1,
3555
       1,     3,     3,     3,     3,     3,     1,     2,     1,     1,
3556
       1,     1,     1,     1,     3,     3,     3,     3,     3,     0,
3557
       2,     2,     4,     1,     3,     2,     4,     4,     3,     1,
3558
       3,     3,     1,     1,     3,     2,     1,     1,     3,     1,
3559
       1,     3,     1,     1,     3,     2,     0,     4,     3,     4,
3560
       5,    12,     1,     1,     2,     3,     1,     3,     1,     2,
3561
       3,     1,     2,     2,     2,     3,     3,     3,     4,     3,
3562
       1,     1,     3,     1,     3,     1,     1,     0,     1,     0,
3563
       1,     1,     2,     1,     1,     1,     1,     1,     1,     1,
3564
       1,     1,     1,     3,     1,     2,     4,     5,     7,     0,
3565
       2,     3,     0,     3,     0,     1,     0,     9,     1,     3,
3566
       3,     0,     3,     3,     1,     4,     4,     4,     3,     1,
3567
       1,     0,     3,     1,     0,     1,     3,     4,     2,     1,
3568
       0,    10,     3,     2,     3,     2,     1,     6,     5,     3,
3569
       4,     2,     2,     3,     3,     3,     3,     3,     3,     3,
3570
       3,     3,     3,     3,     3,     3,     2,     2,     2,     2,
3571
       3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
3572
       3,     3,     3,     3,     3,     3,     3,     3,     2,     2,
3573
       2,     2,     3,     3,     3,     3,     3,     3,     3,     3,
3574
       3,     3,     3,     3,     1,     1,     5,     4,     3,     1,
3575
       2,     2,     2,     2,     2,     2,     2,     2,     2,     1,
3576
       3,     2,     1,     2,     4,     2,     2,     1,     2,     2,
3577
       3,     1,    13,    12,     1,     1,     0,     0,     0,     0,
3578
       1,     0,     5,     3,     1,     1,     2,     2,     2,     4,
3579
       4,     0,     3,     1,     1,     1,     1,     3,     0,     1,
3580
       1,     0,     1,     4,     3,     1,     3,     1,     1,     3,
3581
       2,     3,     1,     1,     1,     1,     1,     1,     1,     1,
3582
       1,     1,     1,     1,     1,     3,     3,     5,     5,     0,
3583
       1,     1,     1,     3,     1,     1,     1,     1,     1,     1,
3584
       3,     1,     1,     1,     4,     4,     4,     1,     1,     1,
3585
       3,     3,     1,     4,     2,     3,     3,     1,     4,     3,
3586
       3,     3,     3,     1,     3,     1,     1,     3,     1,     1,
3587
       0,     1,     3,     1,     3,     1,     4,     2,     2,     6,
3588
       4,     2,     2,     1,     2,     1,     4,     3,     3,     3,
3589
       3,     6,     3,     1,     1,     2,     1,     5,     4,     2,
3590
       2,     4,     2,     2,     1,     3,     1
3591
};
3592
3593
3594
#define yyerrok         (yyerrstatus = 0)
3595
#define yyclearin       (yychar = YYEMPTY)
3596
2.14M
#define YYEMPTY         (-2)
3597
1.33M
#define YYEOF           0
3598
3599
4.57k
#define YYACCEPT        goto yyacceptlab
3600
798
#define YYABORT         goto yyabortlab
3601
1
#define YYERROR         goto yyerrorlab
3602
3603
3604
#define YYRECOVERING()  (!!yyerrstatus)
3605
3606
#define YYBACKUP(Token, Value)                                    \
3607
  do                                                              \
3608
    if (yychar == YYEMPTY)                                        \
3609
      {                                                           \
3610
        yychar = (Token);                                         \
3611
        yylval = (Value);                                         \
3612
        YYPOPSTACK (yylen);                                       \
3613
        yystate = *yyssp;                                         \
3614
        goto yybackup;                                            \
3615
      }                                                           \
3616
    else                                                          \
3617
      {                                                           \
3618
        yyerror (YY_("syntax error: cannot back up")); \
3619
        YYERROR;                                                  \
3620
      }                                                           \
3621
  while (0)
3622
3623
/* Error token number */
3624
119k
#define YYTERROR        1
3625
#define YYERRCODE       256
3626
3627
3628
3629
/* Enable debugging if requested.  */
3630
#if ZENDDEBUG
3631
3632
# ifndef YYFPRINTF
3633
#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
3634
#  define YYFPRINTF fprintf
3635
# endif
3636
3637
# define YYDPRINTF(Args)                        \
3638
do {                                            \
3639
  if (yydebug)                                  \
3640
    YYFPRINTF Args;                             \
3641
} while (0)
3642
3643
/* This macro is provided for backward compatibility. */
3644
#ifndef YY_LOCATION_PRINT
3645
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
3646
#endif
3647
3648
3649
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
3650
do {                                                                      \
3651
  if (yydebug)                                                            \
3652
    {                                                                     \
3653
      YYFPRINTF (stderr, "%s ", Title);                                   \
3654
      yy_symbol_print (stderr,                                            \
3655
                  Type, Value); \
3656
      YYFPRINTF (stderr, "\n");                                           \
3657
    }                                                                     \
3658
} while (0)
3659
3660
3661
/*-----------------------------------.
3662
| Print this symbol's value on YYO.  |
3663
`-----------------------------------*/
3664
3665
static void
3666
yy_symbol_value_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep)
3667
{
3668
  FILE *yyoutput = yyo;
3669
  YYUSE (yyoutput);
3670
  if (!yyvaluep)
3671
    return;
3672
# ifdef YYPRINT
3673
  if (yytype < YYNTOKENS)
3674
    YYPRINT (yyo, yytoknum[yytype], *yyvaluep);
3675
# endif
3676
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
3677
  YYUSE (yytype);
3678
  YY_IGNORE_MAYBE_UNINITIALIZED_END
3679
}
3680
3681
3682
/*---------------------------.
3683
| Print this symbol on YYO.  |
3684
`---------------------------*/
3685
3686
static void
3687
yy_symbol_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep)
3688
{
3689
  YYFPRINTF (yyo, "%s %s (",
3690
             yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
3691
3692
  yy_symbol_value_print (yyo, yytype, yyvaluep);
3693
  YYFPRINTF (yyo, ")");
3694
}
3695
3696
/*------------------------------------------------------------------.
3697
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
3698
| TOP (included).                                                   |
3699
`------------------------------------------------------------------*/
3700
3701
static void
3702
yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop)
3703
{
3704
  YYFPRINTF (stderr, "Stack now");
3705
  for (; yybottom <= yytop; yybottom++)
3706
    {
3707
      int yybot = *yybottom;
3708
      YYFPRINTF (stderr, " %d", yybot);
3709
    }
3710
  YYFPRINTF (stderr, "\n");
3711
}
3712
3713
# define YY_STACK_PRINT(Bottom, Top)                            \
3714
do {                                                            \
3715
  if (yydebug)                                                  \
3716
    yy_stack_print ((Bottom), (Top));                           \
3717
} while (0)
3718
3719
3720
/*------------------------------------------------.
3721
| Report that the YYRULE is going to be reduced.  |
3722
`------------------------------------------------*/
3723
3724
static void
3725
yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp, int yyrule)
3726
{
3727
  int yylno = yyrline[yyrule];
3728
  int yynrhs = yyr2[yyrule];
3729
  int yyi;
3730
  YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n",
3731
             yyrule - 1, yylno);
3732
  /* The symbols being reduced.  */
3733
  for (yyi = 0; yyi < yynrhs; yyi++)
3734
    {
3735
      YYFPRINTF (stderr, "   $%d = ", yyi + 1);
3736
      yy_symbol_print (stderr,
3737
                       yystos[+yyssp[yyi + 1 - yynrhs]],
3738
                       &yyvsp[(yyi + 1) - (yynrhs)]
3739
                                              );
3740
      YYFPRINTF (stderr, "\n");
3741
    }
3742
}
3743
3744
# define YY_REDUCE_PRINT(Rule)          \
3745
do {                                    \
3746
  if (yydebug)                          \
3747
    yy_reduce_print (yyssp, yyvsp, Rule); \
3748
} while (0)
3749
3750
/* Nonzero means print parse trace.  It is left uninitialized so that
3751
   multiple parsers can coexist.  */
3752
int yydebug;
3753
#else /* !ZENDDEBUG */
3754
# define YYDPRINTF(Args)
3755
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
3756
# define YY_STACK_PRINT(Bottom, Top)
3757
# define YY_REDUCE_PRINT(Rule)
3758
#endif /* !ZENDDEBUG */
3759
3760
3761
/* YYINITDEPTH -- initial size of the parser's stacks.  */
3762
#ifndef YYINITDEPTH
3763
5.37k
# define YYINITDEPTH 200
3764
#endif
3765
3766
/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
3767
   if the built-in stack extension method is used).
3768
3769
   Do not make this value too large; the results are undefined if
3770
   YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
3771
   evaluated with infinite-precision integer arithmetic.  */
3772
3773
#ifndef YYMAXDEPTH
3774
246
# define YYMAXDEPTH 10000
3775
#endif
3776
3777
3778
#if YYERROR_VERBOSE
3779
3780
# ifndef yystrlen
3781
#  if defined __GLIBC__ && defined _STRING_H
3782
797
#   define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S)))
3783
#  else
3784
/* Return the length of YYSTR.  */
3785
static YYPTRDIFF_T
3786
yystrlen (const char *yystr)
3787
{
3788
  YYPTRDIFF_T yylen;
3789
  for (yylen = 0; yystr[yylen]; yylen++)
3790
    continue;
3791
  return yylen;
3792
}
3793
#  endif
3794
# endif
3795
3796
# ifndef yystpcpy
3797
#  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
3798
797
#   define yystpcpy stpcpy
3799
#  else
3800
/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
3801
   YYDEST.  */
3802
static char *
3803
yystpcpy (char *yydest, const char *yysrc)
3804
{
3805
  char *yyd = yydest;
3806
  const char *yys = yysrc;
3807
3808
  while ((*yyd++ = *yys++) != '\0')
3809
    continue;
3810
3811
  return yyd - 1;
3812
}
3813
#  endif
3814
# endif
3815
3816
# ifndef yytnamerr
3817
/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
3818
   quotes and backslashes, so that it's suitable for yyerror.  The
3819
   heuristic is that double-quoting is unnecessary unless the string
3820
   contains an apostrophe, a comma, or backslash (other than
3821
   backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
3822
   null, do not copy; instead, return the length of what the result
3823
   would have been.  */
3824
static YYPTRDIFF_T
3825
yytnamerr (char *yyres, const char *yystr)
3826
{
3827
  if (*yystr == '"')
3828
    {
3829
      YYPTRDIFF_T yyn = 0;
3830
      char const *yyp = yystr;
3831
3832
      for (;;)
3833
        switch (*++yyp)
3834
          {
3835
          case '\'':
3836
          case ',':
3837
            goto do_not_strip_quotes;
3838
3839
          case '\\':
3840
            if (*++yyp != '\\')
3841
              goto do_not_strip_quotes;
3842
            else
3843
              goto append;
3844
3845
          append:
3846
          default:
3847
            if (yyres)
3848
              yyres[yyn] = *yyp;
3849
            yyn++;
3850
            break;
3851
3852
          case '"':
3853
            if (yyres)
3854
              yyres[yyn] = '\0';
3855
            return yyn;
3856
          }
3857
    do_not_strip_quotes: ;
3858
    }
3859
3860
  if (yyres)
3861
    return yystpcpy (yyres, yystr) - yyres;
3862
  else
3863
    return yystrlen (yystr);
3864
}
3865
# endif
3866
3867
/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
3868
   about the unexpected token YYTOKEN for the state stack whose top is
3869
   YYSSP.
3870
3871
   Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
3872
   not large enough to hold the message.  In that case, also set
3873
   *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
3874
   required number of bytes is too large to store.  */
3875
static int
3876
yysyntax_error (YYPTRDIFF_T *yymsg_alloc, char **yymsg,
3877
                yy_state_t *yyssp, int yytoken)
3878
797
{
3879
797
  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
3880
  /* Internationalized format string. */
3881
797
  const char *yyformat = YY_NULLPTR;
3882
  /* Arguments of yyformat: reported tokens (one for the "unexpected",
3883
     one per "expected"). */
3884
797
  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
3885
  /* Actual size of YYARG. */
3886
797
  int yycount = 0;
3887
  /* Cumulated lengths of YYARG.  */
3888
797
  YYPTRDIFF_T yysize = 0;
3889
3890
  /* There are many possibilities here to consider:
3891
     - If this state is a consistent state with a default action, then
3892
       the only way this function was invoked is if the default action
3893
       is an error action.  In that case, don't check for expected
3894
       tokens because there are none.
3895
     - The only way there can be no lookahead present (in yychar) is if
3896
       this state is a consistent state with a default action.  Thus,
3897
       detecting the absence of a lookahead is sufficient to determine
3898
       that there is no unexpected or expected token to report.  In that
3899
       case, just report a simple "syntax error".
3900
     - Don't assume there isn't a lookahead just because this state is a
3901
       consistent state with a default action.  There might have been a
3902
       previous inconsistent state, consistent state with a non-default
3903
       action, or user semantic action that manipulated yychar.
3904
     - Of course, the expected token list depends on states to have
3905
       correct lookahead information, and it depends on the parser not
3906
       to perform extra reductions after fetching a lookahead from the
3907
       scanner and before detecting a syntax error.  Thus, state merging
3908
       (from LALR or IELR) and default reductions corrupt the expected
3909
       token list.  However, the list is correct for canonical LR with
3910
       one exception: it will still contain any token that will not be
3911
       accepted due to an error action in a later state.
3912
  */
3913
797
  if (yytoken != YYEMPTY)
3914
797
    {
3915
797
      int yyn = yypact[+*yyssp];
3916
797
      YYPTRDIFF_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
3917
797
      yysize = yysize0;
3918
797
      yyarg[yycount++] = yytname[yytoken];
3919
797
      if (!yypact_value_is_default (yyn))
3920
797
        {
3921
          /* Start YYX at -YYN if negative to avoid negative indexes in
3922
             YYCHECK.  In other words, skip the first -YYN actions for
3923
             this state because they are default actions.  */
3924
797
          int yyxbegin = yyn < 0 ? -yyn : 0;
3925
          /* Stay within bounds of both yycheck and yytname.  */
3926
797
          int yychecklim = YYLAST - yyn + 1;
3927
797
          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
3928
797
          int yyx;
3929
3930
25.9k
          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
3931
25.8k
            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
3932
3.75k
                && !yytable_value_is_error (yytable[yyx + yyn]))
3933
3.74k
              {
3934
3.74k
                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
3935
703
                  {
3936
703
                    yycount = 1;
3937
703
                    yysize = yysize0;
3938
703
                    break;
3939
703
                  }
3940
3.03k
                yyarg[yycount++] = yytname[yyx];
3941
3.03k
                {
3942
3.03k
                  YYPTRDIFF_T yysize1
3943
3.03k
                    = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
3944
3.03k
                  if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
3945
3.03k
                    yysize = yysize1;
3946
0
                  else
3947
0
                    return 2;
3948
3.03k
                }
3949
3.03k
              }
3950
797
        }
3951
797
    }
3952
3953
797
  switch (yycount)
3954
797
    {
3955
0
# define YYCASE_(N, S)                      \
3956
797
      case N:                               \
3957
797
        yyformat = S;                       \
3958
797
      break
3959
0
    default: /* Avoid compiler warnings. */
3960
0
      YYCASE_(0, YY_("syntax error"));
3961
703
      YYCASE_(1, YY_("syntax error, unexpected %s"));
3962
35
      YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
3963
1
      YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
3964
42
      YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
3965
797
      YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
3966
797
# undef YYCASE_
3967
797
    }
3968
3969
797
  {
3970
    /* Don't count the "%s"s in the final size, but reserve room for
3971
       the terminator.  */
3972
797
    YYPTRDIFF_T yysize1 = yysize + (yystrlen (yyformat) - 2 * yycount) + 1;
3973
797
    if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
3974
797
      yysize = yysize1;
3975
0
    else
3976
0
      return 2;
3977
797
  }
3978
3979
797
  if (*yymsg_alloc < yysize)
3980
0
    {
3981
0
      *yymsg_alloc = 2 * yysize;
3982
0
      if (! (yysize <= *yymsg_alloc
3983
0
             && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
3984
0
        *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
3985
0
      return 1;
3986
0
    }
3987
3988
  /* Avoid sprintf, as that infringes on the user's name space.
3989
     Don't have undefined behavior even if the translation
3990
     produced a string with the wrong number of "%s"s.  */
3991
797
  {
3992
797
    char *yyp = *yymsg;
3993
797
    int yyi = 0;
3994
23.4k
    while ((*yyp = *yyformat) != '\0')
3995
22.6k
      if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
3996
1.02k
        {
3997
1.02k
          yyp += yytnamerr (yyp, yyarg[yyi++]);
3998
1.02k
          yyformat += 2;
3999
1.02k
        }
4000
21.5k
      else
4001
21.5k
        {
4002
21.5k
          ++yyp;
4003
21.5k
          ++yyformat;
4004
21.5k
        }
4005
797
  }
4006
797
  return 0;
4007
797
}
4008
#endif /* YYERROR_VERBOSE */
4009
4010
/*-----------------------------------------------.
4011
| Release the memory associated to this symbol.  |
4012
`-----------------------------------------------*/
4013
4014
static void
4015
yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
4016
59.2k
{
4017
59.2k
  YYUSE (yyvaluep);
4018
59.2k
  if (!yymsg)
4019
0
    yymsg = "Deleting";
4020
59.2k
  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
4021
4022
59.2k
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
4023
59.2k
  switch (yytype)
4024
59.2k
    {
4025
3
    case 73: /* "integer"  */
4026
3
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4027
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4028
3
#line 4029 "/src/php-src/Zend/zend_language_parser.c"
4029
3
        break;
4030
4031
4
    case 74: /* "floating-point number"  */
4032
4
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4033
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4034
4
#line 4035 "/src/php-src/Zend/zend_language_parser.c"
4035
4
        break;
4036
4037
43
    case 75: /* "identifier"  */
4038
43
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4039
43
            { zend_ast_destroy(((*yyvaluep).ast)); }
4040
43
#line 4041 "/src/php-src/Zend/zend_language_parser.c"
4041
43
        break;
4042
4043
1
    case 76: /* "fully qualified name"  */
4044
1
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4045
1
            { zend_ast_destroy(((*yyvaluep).ast)); }
4046
1
#line 4047 "/src/php-src/Zend/zend_language_parser.c"
4047
1
        break;
4048
4049
0
    case 77: /* "namespace-relative name"  */
4050
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4051
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4052
0
#line 4053 "/src/php-src/Zend/zend_language_parser.c"
4053
0
        break;
4054
4055
1
    case 78: /* "namespaced name"  */
4056
1
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4057
1
            { zend_ast_destroy(((*yyvaluep).ast)); }
4058
1
#line 4059 "/src/php-src/Zend/zend_language_parser.c"
4059
1
        break;
4060
4061
18
    case 79: /* "variable"  */
4062
18
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4063
18
            { zend_ast_destroy(((*yyvaluep).ast)); }
4064
18
#line 4065 "/src/php-src/Zend/zend_language_parser.c"
4065
18
        break;
4066
4067
0
    case 80: /* T_INLINE_HTML  */
4068
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4069
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4070
0
#line 4071 "/src/php-src/Zend/zend_language_parser.c"
4071
0
        break;
4072
4073
4.22k
    case 81: /* "string content"  */
4074
4.22k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4075
4.22k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4076
4.22k
#line 4077 "/src/php-src/Zend/zend_language_parser.c"
4077
4.22k
        break;
4078
4079
8
    case 82: /* "quoted string"  */
4080
8
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4081
8
            { zend_ast_destroy(((*yyvaluep).ast)); }
4082
8
#line 4083 "/src/php-src/Zend/zend_language_parser.c"
4083
8
        break;
4084
4085
0
    case 83: /* "variable name"  */
4086
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4087
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4088
0
#line 4089 "/src/php-src/Zend/zend_language_parser.c"
4089
0
        break;
4090
4091
0
    case 84: /* "number"  */
4092
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4093
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4094
0
#line 4095 "/src/php-src/Zend/zend_language_parser.c"
4095
0
        break;
4096
4097
5
    case 190: /* identifier  */
4098
5
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4099
5
            { zend_ast_destroy(((*yyvaluep).ast)); }
4100
5
#line 4101 "/src/php-src/Zend/zend_language_parser.c"
4101
5
        break;
4102
4103
803
    case 191: /* top_statement_list  */
4104
803
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4105
803
            { zend_ast_destroy(((*yyvaluep).ast)); }
4106
803
#line 4107 "/src/php-src/Zend/zend_language_parser.c"
4107
803
        break;
4108
4109
0
    case 192: /* namespace_declaration_name  */
4110
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4111
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4112
0
#line 4113 "/src/php-src/Zend/zend_language_parser.c"
4113
0
        break;
4114
4115
0
    case 193: /* namespace_name  */
4116
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4117
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4118
0
#line 4119 "/src/php-src/Zend/zend_language_parser.c"
4119
0
        break;
4120
4121
0
    case 194: /* legacy_namespace_name  */
4122
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4123
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4124
0
#line 4125 "/src/php-src/Zend/zend_language_parser.c"
4125
0
        break;
4126
4127
538
    case 195: /* name  */
4128
538
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4129
538
            { zend_ast_destroy(((*yyvaluep).ast)); }
4130
538
#line 4131 "/src/php-src/Zend/zend_language_parser.c"
4131
538
        break;
4132
4133
0
    case 196: /* attribute_decl  */
4134
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4135
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4136
0
#line 4137 "/src/php-src/Zend/zend_language_parser.c"
4137
0
        break;
4138
4139
0
    case 197: /* attribute_group  */
4140
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4141
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4142
0
#line 4143 "/src/php-src/Zend/zend_language_parser.c"
4143
0
        break;
4144
4145
0
    case 198: /* attribute  */
4146
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4147
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4148
0
#line 4149 "/src/php-src/Zend/zend_language_parser.c"
4149
0
        break;
4150
4151
0
    case 199: /* attributes  */
4152
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4153
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4154
0
#line 4155 "/src/php-src/Zend/zend_language_parser.c"
4155
0
        break;
4156
4157
0
    case 200: /* attributed_statement  */
4158
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4159
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4160
0
#line 4161 "/src/php-src/Zend/zend_language_parser.c"
4161
0
        break;
4162
4163
0
    case 201: /* attributed_top_statement  */
4164
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4165
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4166
0
#line 4167 "/src/php-src/Zend/zend_language_parser.c"
4167
0
        break;
4168
4169
0
    case 202: /* top_statement  */
4170
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4171
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4172
0
#line 4173 "/src/php-src/Zend/zend_language_parser.c"
4173
0
        break;
4174
4175
0
    case 206: /* group_use_declaration  */
4176
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4177
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4178
0
#line 4179 "/src/php-src/Zend/zend_language_parser.c"
4179
0
        break;
4180
4181
0
    case 207: /* mixed_group_use_declaration  */
4182
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4183
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4184
0
#line 4185 "/src/php-src/Zend/zend_language_parser.c"
4185
0
        break;
4186
4187
0
    case 209: /* inline_use_declarations  */
4188
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4189
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4190
0
#line 4191 "/src/php-src/Zend/zend_language_parser.c"
4191
0
        break;
4192
4193
0
    case 210: /* unprefixed_use_declarations  */
4194
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4195
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4196
0
#line 4197 "/src/php-src/Zend/zend_language_parser.c"
4197
0
        break;
4198
4199
0
    case 211: /* use_declarations  */
4200
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4201
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4202
0
#line 4203 "/src/php-src/Zend/zend_language_parser.c"
4203
0
        break;
4204
4205
0
    case 212: /* inline_use_declaration  */
4206
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4207
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4208
0
#line 4209 "/src/php-src/Zend/zend_language_parser.c"
4209
0
        break;
4210
4211
0
    case 213: /* unprefixed_use_declaration  */
4212
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4213
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4214
0
#line 4215 "/src/php-src/Zend/zend_language_parser.c"
4215
0
        break;
4216
4217
0
    case 214: /* use_declaration  */
4218
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4219
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4220
0
#line 4221 "/src/php-src/Zend/zend_language_parser.c"
4221
0
        break;
4222
4223
174
    case 215: /* const_list  */
4224
174
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4225
174
            { zend_ast_destroy(((*yyvaluep).ast)); }
4226
174
#line 4227 "/src/php-src/Zend/zend_language_parser.c"
4227
174
        break;
4228
4229
2.34k
    case 216: /* inner_statement_list  */
4230
2.34k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4231
2.34k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4232
2.34k
#line 4233 "/src/php-src/Zend/zend_language_parser.c"
4233
2.34k
        break;
4234
4235
0
    case 217: /* inner_statement  */
4236
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4237
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4238
0
#line 4239 "/src/php-src/Zend/zend_language_parser.c"
4239
0
        break;
4240
4241
0
    case 218: /* statement  */
4242
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4243
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4244
0
#line 4245 "/src/php-src/Zend/zend_language_parser.c"
4245
0
        break;
4246
4247
1
    case 220: /* catch_list  */
4248
1
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4249
1
            { zend_ast_destroy(((*yyvaluep).ast)); }
4250
1
#line 4251 "/src/php-src/Zend/zend_language_parser.c"
4251
1
        break;
4252
4253
0
    case 221: /* catch_name_list  */
4254
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4255
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4256
0
#line 4257 "/src/php-src/Zend/zend_language_parser.c"
4257
0
        break;
4258
4259
0
    case 222: /* optional_variable  */
4260
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4261
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4262
0
#line 4263 "/src/php-src/Zend/zend_language_parser.c"
4263
0
        break;
4264
4265
0
    case 223: /* finally_statement  */
4266
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4267
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4268
0
#line 4269 "/src/php-src/Zend/zend_language_parser.c"
4269
0
        break;
4270
4271
0
    case 224: /* unset_variables  */
4272
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4273
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4274
0
#line 4275 "/src/php-src/Zend/zend_language_parser.c"
4275
0
        break;
4276
4277
0
    case 225: /* unset_variable  */
4278
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4279
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4280
0
#line 4281 "/src/php-src/Zend/zend_language_parser.c"
4281
0
        break;
4282
4283
167
    case 226: /* function_name  */
4284
167
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4285
167
            { zend_ast_destroy(((*yyvaluep).ast)); }
4286
167
#line 4287 "/src/php-src/Zend/zend_language_parser.c"
4287
167
        break;
4288
4289
0
    case 227: /* function_declaration_statement  */
4290
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4291
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4292
0
#line 4293 "/src/php-src/Zend/zend_language_parser.c"
4293
0
        break;
4294
4295
0
    case 230: /* class_declaration_statement  */
4296
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4297
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4298
0
#line 4299 "/src/php-src/Zend/zend_language_parser.c"
4299
0
        break;
4300
4301
0
    case 237: /* trait_declaration_statement  */
4302
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4303
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4304
0
#line 4305 "/src/php-src/Zend/zend_language_parser.c"
4305
0
        break;
4306
4307
0
    case 239: /* interface_declaration_statement  */
4308
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4309
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4310
0
#line 4311 "/src/php-src/Zend/zend_language_parser.c"
4311
0
        break;
4312
4313
0
    case 241: /* enum_declaration_statement  */
4314
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4315
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4316
0
#line 4317 "/src/php-src/Zend/zend_language_parser.c"
4317
0
        break;
4318
4319
0
    case 243: /* enum_backing_type  */
4320
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4321
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4322
0
#line 4323 "/src/php-src/Zend/zend_language_parser.c"
4323
0
        break;
4324
4325
0
    case 244: /* enum_case  */
4326
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4327
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4328
0
#line 4329 "/src/php-src/Zend/zend_language_parser.c"
4329
0
        break;
4330
4331
0
    case 245: /* enum_case_expr  */
4332
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4333
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4334
0
#line 4335 "/src/php-src/Zend/zend_language_parser.c"
4335
0
        break;
4336
4337
8
    case 246: /* extends_from  */
4338
8
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4339
8
            { zend_ast_destroy(((*yyvaluep).ast)); }
4340
8
#line 4341 "/src/php-src/Zend/zend_language_parser.c"
4341
8
        break;
4342
4343
0
    case 247: /* interface_extends_list  */
4344
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4345
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4346
0
#line 4347 "/src/php-src/Zend/zend_language_parser.c"
4347
0
        break;
4348
4349
8
    case 248: /* implements_list  */
4350
8
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4351
8
            { zend_ast_destroy(((*yyvaluep).ast)); }
4352
8
#line 4353 "/src/php-src/Zend/zend_language_parser.c"
4353
8
        break;
4354
4355
13
    case 249: /* foreach_variable  */
4356
13
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4357
13
            { zend_ast_destroy(((*yyvaluep).ast)); }
4358
13
#line 4359 "/src/php-src/Zend/zend_language_parser.c"
4359
13
        break;
4360
4361
0
    case 250: /* for_statement  */
4362
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4363
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4364
0
#line 4365 "/src/php-src/Zend/zend_language_parser.c"
4365
0
        break;
4366
4367
0
    case 251: /* foreach_statement  */
4368
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4369
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4370
0
#line 4371 "/src/php-src/Zend/zend_language_parser.c"
4371
0
        break;
4372
4373
0
    case 252: /* declare_statement  */
4374
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4375
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4376
0
#line 4377 "/src/php-src/Zend/zend_language_parser.c"
4377
0
        break;
4378
4379
0
    case 253: /* switch_case_list  */
4380
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4381
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4382
0
#line 4383 "/src/php-src/Zend/zend_language_parser.c"
4383
0
        break;
4384
4385
0
    case 254: /* case_list  */
4386
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4387
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4388
0
#line 4389 "/src/php-src/Zend/zend_language_parser.c"
4389
0
        break;
4390
4391
0
    case 255: /* match  */
4392
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4393
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4394
0
#line 4395 "/src/php-src/Zend/zend_language_parser.c"
4395
0
        break;
4396
4397
0
    case 256: /* match_arm_list  */
4398
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4399
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4400
0
#line 4401 "/src/php-src/Zend/zend_language_parser.c"
4401
0
        break;
4402
4403
0
    case 257: /* non_empty_match_arm_list  */
4404
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4405
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4406
0
#line 4407 "/src/php-src/Zend/zend_language_parser.c"
4407
0
        break;
4408
4409
0
    case 258: /* match_arm  */
4410
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4411
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4412
0
#line 4413 "/src/php-src/Zend/zend_language_parser.c"
4413
0
        break;
4414
4415
0
    case 259: /* match_arm_cond_list  */
4416
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4417
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4418
0
#line 4419 "/src/php-src/Zend/zend_language_parser.c"
4419
0
        break;
4420
4421
0
    case 260: /* while_statement  */
4422
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4423
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4424
0
#line 4425 "/src/php-src/Zend/zend_language_parser.c"
4425
0
        break;
4426
4427
0
    case 261: /* if_stmt_without_else  */
4428
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4429
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4430
0
#line 4431 "/src/php-src/Zend/zend_language_parser.c"
4431
0
        break;
4432
4433
0
    case 262: /* if_stmt  */
4434
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4435
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4436
0
#line 4437 "/src/php-src/Zend/zend_language_parser.c"
4437
0
        break;
4438
4439
17
    case 263: /* alt_if_stmt_without_else  */
4440
17
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4441
17
            { zend_ast_destroy(((*yyvaluep).ast)); }
4442
17
#line 4443 "/src/php-src/Zend/zend_language_parser.c"
4443
17
        break;
4444
4445
0
    case 264: /* alt_if_stmt  */
4446
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4447
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4448
0
#line 4449 "/src/php-src/Zend/zend_language_parser.c"
4449
0
        break;
4450
4451
419
    case 265: /* parameter_list  */
4452
419
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4453
419
            { zend_ast_destroy(((*yyvaluep).ast)); }
4454
419
#line 4455 "/src/php-src/Zend/zend_language_parser.c"
4455
419
        break;
4456
4457
0
    case 266: /* non_empty_parameter_list  */
4458
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4459
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4460
0
#line 4461 "/src/php-src/Zend/zend_language_parser.c"
4461
0
        break;
4462
4463
0
    case 267: /* attributed_parameter  */
4464
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4465
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4466
0
#line 4467 "/src/php-src/Zend/zend_language_parser.c"
4467
0
        break;
4468
4469
0
    case 269: /* parameter  */
4470
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4471
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4472
0
#line 4473 "/src/php-src/Zend/zend_language_parser.c"
4473
0
        break;
4474
4475
1
    case 270: /* optional_type_without_static  */
4476
1
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4477
1
            { zend_ast_destroy(((*yyvaluep).ast)); }
4478
1
#line 4479 "/src/php-src/Zend/zend_language_parser.c"
4479
1
        break;
4480
4481
0
    case 271: /* type_expr  */
4482
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4483
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4484
0
#line 4485 "/src/php-src/Zend/zend_language_parser.c"
4485
0
        break;
4486
4487
0
    case 272: /* type  */
4488
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4489
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4490
0
#line 4491 "/src/php-src/Zend/zend_language_parser.c"
4491
0
        break;
4492
4493
0
    case 273: /* union_type_element  */
4494
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4495
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4496
0
#line 4497 "/src/php-src/Zend/zend_language_parser.c"
4497
0
        break;
4498
4499
0
    case 274: /* union_type  */
4500
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4501
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4502
0
#line 4503 "/src/php-src/Zend/zend_language_parser.c"
4503
0
        break;
4504
4505
0
    case 275: /* intersection_type  */
4506
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4507
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4508
0
#line 4509 "/src/php-src/Zend/zend_language_parser.c"
4509
0
        break;
4510
4511
0
    case 276: /* type_expr_without_static  */
4512
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4513
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4514
0
#line 4515 "/src/php-src/Zend/zend_language_parser.c"
4515
0
        break;
4516
4517
0
    case 277: /* type_without_static  */
4518
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4519
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4520
0
#line 4521 "/src/php-src/Zend/zend_language_parser.c"
4521
0
        break;
4522
4523
0
    case 278: /* union_type_without_static_element  */
4524
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4525
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4526
0
#line 4527 "/src/php-src/Zend/zend_language_parser.c"
4527
0
        break;
4528
4529
0
    case 279: /* union_type_without_static  */
4530
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4531
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4532
0
#line 4533 "/src/php-src/Zend/zend_language_parser.c"
4533
0
        break;
4534
4535
0
    case 280: /* intersection_type_without_static  */
4536
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4537
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4538
0
#line 4539 "/src/php-src/Zend/zend_language_parser.c"
4539
0
        break;
4540
4541
419
    case 281: /* return_type  */
4542
419
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4543
419
            { zend_ast_destroy(((*yyvaluep).ast)); }
4544
419
#line 4545 "/src/php-src/Zend/zend_language_parser.c"
4545
419
        break;
4546
4547
0
    case 282: /* argument_list  */
4548
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4549
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4550
0
#line 4551 "/src/php-src/Zend/zend_language_parser.c"
4551
0
        break;
4552
4553
169
    case 283: /* non_empty_argument_list  */
4554
169
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4555
169
            { zend_ast_destroy(((*yyvaluep).ast)); }
4556
169
#line 4557 "/src/php-src/Zend/zend_language_parser.c"
4557
169
        break;
4558
4559
0
    case 284: /* clone_argument_list  */
4560
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4561
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4562
0
#line 4563 "/src/php-src/Zend/zend_language_parser.c"
4563
0
        break;
4564
4565
0
    case 285: /* non_empty_clone_argument_list  */
4566
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4567
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4568
0
#line 4569 "/src/php-src/Zend/zend_language_parser.c"
4569
0
        break;
4570
4571
0
    case 286: /* argument_no_expr  */
4572
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4573
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4574
0
#line 4575 "/src/php-src/Zend/zend_language_parser.c"
4575
0
        break;
4576
4577
0
    case 287: /* argument  */
4578
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4579
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4580
0
#line 4581 "/src/php-src/Zend/zend_language_parser.c"
4581
0
        break;
4582
4583
0
    case 288: /* global_var_list  */
4584
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4585
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4586
0
#line 4587 "/src/php-src/Zend/zend_language_parser.c"
4587
0
        break;
4588
4589
0
    case 289: /* global_var  */
4590
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4591
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4592
0
#line 4593 "/src/php-src/Zend/zend_language_parser.c"
4593
0
        break;
4594
4595
0
    case 290: /* static_var_list  */
4596
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4597
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4598
0
#line 4599 "/src/php-src/Zend/zend_language_parser.c"
4599
0
        break;
4600
4601
0
    case 291: /* static_var  */
4602
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4603
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4604
0
#line 4605 "/src/php-src/Zend/zend_language_parser.c"
4605
0
        break;
4606
4607
8
    case 292: /* class_statement_list  */
4608
8
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4609
8
            { zend_ast_destroy(((*yyvaluep).ast)); }
4610
8
#line 4611 "/src/php-src/Zend/zend_language_parser.c"
4611
8
        break;
4612
4613
0
    case 293: /* attributed_class_statement  */
4614
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4615
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4616
0
#line 4617 "/src/php-src/Zend/zend_language_parser.c"
4617
0
        break;
4618
4619
0
    case 294: /* class_statement  */
4620
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4621
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4622
0
#line 4623 "/src/php-src/Zend/zend_language_parser.c"
4623
0
        break;
4624
4625
0
    case 295: /* class_name_list  */
4626
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4627
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4628
0
#line 4629 "/src/php-src/Zend/zend_language_parser.c"
4629
0
        break;
4630
4631
0
    case 296: /* trait_adaptations  */
4632
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4633
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4634
0
#line 4635 "/src/php-src/Zend/zend_language_parser.c"
4635
0
        break;
4636
4637
0
    case 297: /* trait_adaptation_list  */
4638
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4639
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4640
0
#line 4641 "/src/php-src/Zend/zend_language_parser.c"
4641
0
        break;
4642
4643
0
    case 298: /* trait_adaptation  */
4644
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4645
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4646
0
#line 4647 "/src/php-src/Zend/zend_language_parser.c"
4647
0
        break;
4648
4649
0
    case 299: /* trait_precedence  */
4650
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4651
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4652
0
#line 4653 "/src/php-src/Zend/zend_language_parser.c"
4653
0
        break;
4654
4655
0
    case 300: /* trait_alias  */
4656
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4657
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4658
0
#line 4659 "/src/php-src/Zend/zend_language_parser.c"
4659
0
        break;
4660
4661
0
    case 301: /* trait_method_reference  */
4662
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4663
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4664
0
#line 4665 "/src/php-src/Zend/zend_language_parser.c"
4665
0
        break;
4666
4667
0
    case 302: /* absolute_trait_method_reference  */
4668
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4669
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4670
0
#line 4671 "/src/php-src/Zend/zend_language_parser.c"
4671
0
        break;
4672
4673
0
    case 303: /* method_body  */
4674
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4675
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4676
0
#line 4677 "/src/php-src/Zend/zend_language_parser.c"
4677
0
        break;
4678
4679
0
    case 307: /* non_empty_member_modifiers  */
4680
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4681
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4682
0
#line 4683 "/src/php-src/Zend/zend_language_parser.c"
4683
0
        break;
4684
4685
0
    case 309: /* property_list  */
4686
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4687
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4688
0
#line 4689 "/src/php-src/Zend/zend_language_parser.c"
4689
0
        break;
4690
4691
0
    case 310: /* property  */
4692
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4693
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4694
0
#line 4695 "/src/php-src/Zend/zend_language_parser.c"
4695
0
        break;
4696
4697
0
    case 311: /* hooked_property  */
4698
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4699
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4700
0
#line 4701 "/src/php-src/Zend/zend_language_parser.c"
4701
0
        break;
4702
4703
0
    case 312: /* property_hook_list  */
4704
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4705
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4706
0
#line 4707 "/src/php-src/Zend/zend_language_parser.c"
4707
0
        break;
4708
4709
0
    case 313: /* optional_property_hook_list  */
4710
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4711
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4712
0
#line 4713 "/src/php-src/Zend/zend_language_parser.c"
4713
0
        break;
4714
4715
0
    case 315: /* property_hook  */
4716
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4717
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4718
0
#line 4719 "/src/php-src/Zend/zend_language_parser.c"
4719
0
        break;
4720
4721
0
    case 317: /* property_hook_body  */
4722
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4723
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4724
0
#line 4725 "/src/php-src/Zend/zend_language_parser.c"
4725
0
        break;
4726
4727
0
    case 318: /* optional_parameter_list  */
4728
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4729
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4730
0
#line 4731 "/src/php-src/Zend/zend_language_parser.c"
4731
0
        break;
4732
4733
0
    case 319: /* class_const_list  */
4734
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4735
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4736
0
#line 4737 "/src/php-src/Zend/zend_language_parser.c"
4737
0
        break;
4738
4739
0
    case 320: /* class_const_decl  */
4740
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4741
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4742
0
#line 4743 "/src/php-src/Zend/zend_language_parser.c"
4743
0
        break;
4744
4745
0
    case 321: /* const_decl  */
4746
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4747
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4748
0
#line 4749 "/src/php-src/Zend/zend_language_parser.c"
4749
0
        break;
4750
4751
1
    case 322: /* echo_expr_list  */
4752
1
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4753
1
            { zend_ast_destroy(((*yyvaluep).ast)); }
4754
1
#line 4755 "/src/php-src/Zend/zend_language_parser.c"
4755
1
        break;
4756
4757
0
    case 323: /* echo_expr  */
4758
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4759
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4760
0
#line 4761 "/src/php-src/Zend/zend_language_parser.c"
4761
0
        break;
4762
4763
70
    case 324: /* for_cond_exprs  */
4764
70
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4765
70
            { zend_ast_destroy(((*yyvaluep).ast)); }
4766
70
#line 4767 "/src/php-src/Zend/zend_language_parser.c"
4767
70
        break;
4768
4769
85
    case 325: /* for_exprs  */
4770
85
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4771
85
            { zend_ast_destroy(((*yyvaluep).ast)); }
4772
85
#line 4773 "/src/php-src/Zend/zend_language_parser.c"
4773
85
        break;
4774
4775
0
    case 326: /* non_empty_for_exprs  */
4776
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4777
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4778
0
#line 4779 "/src/php-src/Zend/zend_language_parser.c"
4779
0
        break;
4780
4781
0
    case 327: /* anonymous_class  */
4782
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4783
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4784
0
#line 4785 "/src/php-src/Zend/zend_language_parser.c"
4785
0
        break;
4786
4787
0
    case 329: /* new_dereferenceable  */
4788
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4789
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4790
0
#line 4791 "/src/php-src/Zend/zend_language_parser.c"
4791
0
        break;
4792
4793
0
    case 330: /* new_non_dereferenceable  */
4794
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4795
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4796
0
#line 4797 "/src/php-src/Zend/zend_language_parser.c"
4797
0
        break;
4798
4799
769
    case 331: /* expr  */
4800
769
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4801
769
            { zend_ast_destroy(((*yyvaluep).ast)); }
4802
769
#line 4803 "/src/php-src/Zend/zend_language_parser.c"
4803
769
        break;
4804
4805
0
    case 332: /* inline_function  */
4806
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4807
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4808
0
#line 4809 "/src/php-src/Zend/zend_language_parser.c"
4809
0
        break;
4810
4811
431
    case 335: /* backup_doc_comment  */
4812
431
#line 52 "/src/php-src/Zend/zend_language_parser.y"
4813
431
            { if (((*yyvaluep).str)) zend_string_release_ex(((*yyvaluep).str), 0); }
4814
431
#line 4815 "/src/php-src/Zend/zend_language_parser.c"
4815
431
        break;
4816
4817
251
    case 339: /* lexical_vars  */
4818
251
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4819
251
            { zend_ast_destroy(((*yyvaluep).ast)); }
4820
251
#line 4821 "/src/php-src/Zend/zend_language_parser.c"
4821
251
        break;
4822
4823
0
    case 340: /* lexical_var_list  */
4824
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4825
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4826
0
#line 4827 "/src/php-src/Zend/zend_language_parser.c"
4827
0
        break;
4828
4829
0
    case 341: /* lexical_var  */
4830
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4831
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4832
0
#line 4833 "/src/php-src/Zend/zend_language_parser.c"
4833
0
        break;
4834
4835
0
    case 342: /* function_call  */
4836
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4837
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4838
0
#line 4839 "/src/php-src/Zend/zend_language_parser.c"
4839
0
        break;
4840
4841
1
    case 344: /* class_name  */
4842
1
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4843
1
            { zend_ast_destroy(((*yyvaluep).ast)); }
4844
1
#line 4845 "/src/php-src/Zend/zend_language_parser.c"
4845
1
        break;
4846
4847
148
    case 345: /* class_name_reference  */
4848
148
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4849
148
            { zend_ast_destroy(((*yyvaluep).ast)); }
4850
148
#line 4851 "/src/php-src/Zend/zend_language_parser.c"
4851
148
        break;
4852
4853
0
    case 346: /* backticks_expr  */
4854
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4855
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4856
0
#line 4857 "/src/php-src/Zend/zend_language_parser.c"
4857
0
        break;
4858
4859
0
    case 347: /* ctor_arguments  */
4860
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4861
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4862
0
#line 4863 "/src/php-src/Zend/zend_language_parser.c"
4863
0
        break;
4864
4865
0
    case 348: /* dereferenceable_scalar  */
4866
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4867
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4868
0
#line 4869 "/src/php-src/Zend/zend_language_parser.c"
4869
0
        break;
4870
4871
0
    case 349: /* scalar  */
4872
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4873
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4874
0
#line 4875 "/src/php-src/Zend/zend_language_parser.c"
4875
0
        break;
4876
4877
0
    case 350: /* constant  */
4878
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4879
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4880
0
#line 4881 "/src/php-src/Zend/zend_language_parser.c"
4881
0
        break;
4882
4883
0
    case 351: /* class_constant  */
4884
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4885
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4886
0
#line 4887 "/src/php-src/Zend/zend_language_parser.c"
4887
0
        break;
4888
4889
1
    case 352: /* optional_expr  */
4890
1
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4891
1
            { zend_ast_destroy(((*yyvaluep).ast)); }
4892
1
#line 4893 "/src/php-src/Zend/zend_language_parser.c"
4893
1
        break;
4894
4895
0
    case 353: /* variable_class_name  */
4896
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4897
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4898
0
#line 4899 "/src/php-src/Zend/zend_language_parser.c"
4899
0
        break;
4900
4901
0
    case 354: /* fully_dereferenceable  */
4902
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4903
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4904
0
#line 4905 "/src/php-src/Zend/zend_language_parser.c"
4905
0
        break;
4906
4907
254
    case 355: /* array_object_dereferenceable  */
4908
254
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4909
254
            { zend_ast_destroy(((*yyvaluep).ast)); }
4910
254
#line 4911 "/src/php-src/Zend/zend_language_parser.c"
4911
254
        break;
4912
4913
578
    case 356: /* callable_expr  */
4914
578
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4915
578
            { zend_ast_destroy(((*yyvaluep).ast)); }
4916
578
#line 4917 "/src/php-src/Zend/zend_language_parser.c"
4917
578
        break;
4918
4919
0
    case 357: /* callable_variable  */
4920
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4921
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4922
0
#line 4923 "/src/php-src/Zend/zend_language_parser.c"
4923
0
        break;
4924
4925
172
    case 358: /* variable  */
4926
172
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4927
172
            { zend_ast_destroy(((*yyvaluep).ast)); }
4928
172
#line 4929 "/src/php-src/Zend/zend_language_parser.c"
4929
172
        break;
4930
4931
0
    case 359: /* simple_variable  */
4932
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4933
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4934
0
#line 4935 "/src/php-src/Zend/zend_language_parser.c"
4935
0
        break;
4936
4937
0
    case 360: /* static_member  */
4938
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4939
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4940
0
#line 4941 "/src/php-src/Zend/zend_language_parser.c"
4941
0
        break;
4942
4943
0
    case 361: /* new_variable  */
4944
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4945
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4946
0
#line 4947 "/src/php-src/Zend/zend_language_parser.c"
4947
0
        break;
4948
4949
1
    case 362: /* member_name  */
4950
1
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4951
1
            { zend_ast_destroy(((*yyvaluep).ast)); }
4952
1
#line 4953 "/src/php-src/Zend/zend_language_parser.c"
4953
1
        break;
4954
4955
230
    case 363: /* property_name  */
4956
230
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4957
230
            { zend_ast_destroy(((*yyvaluep).ast)); }
4958
230
#line 4959 "/src/php-src/Zend/zend_language_parser.c"
4959
230
        break;
4960
4961
4
    case 364: /* array_pair_list  */
4962
4
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4963
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4964
4
#line 4965 "/src/php-src/Zend/zend_language_parser.c"
4965
4
        break;
4966
4967
0
    case 365: /* possible_array_pair  */
4968
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4969
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4970
0
#line 4971 "/src/php-src/Zend/zend_language_parser.c"
4971
0
        break;
4972
4973
258
    case 366: /* non_empty_array_pair_list  */
4974
258
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4975
258
            { zend_ast_destroy(((*yyvaluep).ast)); }
4976
258
#line 4977 "/src/php-src/Zend/zend_language_parser.c"
4977
258
        break;
4978
4979
0
    case 367: /* array_pair  */
4980
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4981
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4982
0
#line 4983 "/src/php-src/Zend/zend_language_parser.c"
4983
0
        break;
4984
4985
2.82k
    case 368: /* encaps_list  */
4986
2.82k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4987
2.82k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4988
2.82k
#line 4989 "/src/php-src/Zend/zend_language_parser.c"
4989
2.82k
        break;
4990
4991
0
    case 369: /* encaps_var  */
4992
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4993
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4994
0
#line 4995 "/src/php-src/Zend/zend_language_parser.c"
4995
0
        break;
4996
4997
10
    case 370: /* encaps_var_offset  */
4998
10
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4999
10
            { zend_ast_destroy(((*yyvaluep).ast)); }
5000
10
#line 5001 "/src/php-src/Zend/zend_language_parser.c"
5001
10
        break;
5002
5003
0
    case 371: /* internal_functions_in_yacc  */
5004
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5005
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
5006
0
#line 5007 "/src/php-src/Zend/zend_language_parser.c"
5007
0
        break;
5008
5009
0
    case 372: /* isset_variables  */
5010
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5011
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
5012
0
#line 5013 "/src/php-src/Zend/zend_language_parser.c"
5013
0
        break;
5014
5015
0
    case 373: /* isset_variable  */
5016
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5017
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
5018
0
#line 5019 "/src/php-src/Zend/zend_language_parser.c"
5019
0
        break;
5020
5021
43.7k
      default:
5022
43.7k
        break;
5023
59.2k
    }
5024
59.2k
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5025
59.2k
}
5026
5027
5028
5029
5030
/*----------.
5031
| yyparse.  |
5032
`----------*/
5033
5034
int
5035
yyparse (void)
5036
5.37k
{
5037
/* The lookahead symbol.  */
5038
5.37k
int yychar;
5039
5040
5041
/* The semantic value of the lookahead symbol.  */
5042
/* Default value used for initialization, for pacifying older GCCs
5043
   or non-GCC compilers.  */
5044
5.37k
YY_INITIAL_VALUE (static YYSTYPE yyval_default;)
5045
5.37k
YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
5046
5047
    /* Number of syntax errors so far.  */
5048
5.37k
    int yynerrs;
5049
5050
5.37k
    yy_state_fast_t yystate;
5051
    /* Number of tokens to shift before error messages enabled.  */
5052
5.37k
    int yyerrstatus;
5053
5054
    /* The stacks and their tools:
5055
       'yyss': related to states.
5056
       'yyvs': related to semantic values.
5057
5058
       Refer to the stacks through separate pointers, to allow yyoverflow
5059
       to reallocate them elsewhere.  */
5060
5061
    /* The state stack.  */
5062
5.37k
    yy_state_t yyssa[YYINITDEPTH];
5063
5.37k
    yy_state_t *yyss;
5064
5.37k
    yy_state_t *yyssp;
5065
5066
    /* The semantic value stack.  */
5067
5.37k
    YYSTYPE yyvsa[YYINITDEPTH];
5068
5.37k
    YYSTYPE *yyvs;
5069
5.37k
    YYSTYPE *yyvsp;
5070
5071
5.37k
    YYPTRDIFF_T yystacksize;
5072
5073
5.37k
  int yyn;
5074
5.37k
  int yyresult;
5075
  /* Lookahead token as an internal (translated) token number.  */
5076
5.37k
  int yytoken = 0;
5077
  /* The variables used to return semantic value and location from the
5078
     action routines.  */
5079
5.37k
  YYSTYPE yyval;
5080
5081
5.37k
#if YYERROR_VERBOSE
5082
  /* Buffer for error messages, and its allocated size.  */
5083
5.37k
  char yymsgbuf[128];
5084
5.37k
  char *yymsg = yymsgbuf;
5085
5.37k
  YYPTRDIFF_T yymsg_alloc = sizeof yymsgbuf;
5086
5.37k
#endif
5087
5088
1.69M
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
5089
5090
  /* The number of symbols on the RHS of the reduced rule.
5091
     Keep to zero when no symbol should be popped.  */
5092
5.37k
  int yylen = 0;
5093
5094
5.37k
  yyssp = yyss = yyssa;
5095
5.37k
  yyvsp = yyvs = yyvsa;
5096
5.37k
  yystacksize = YYINITDEPTH;
5097
5098
5.37k
  YYDPRINTF ((stderr, "Starting parse\n"));
5099
5100
5.37k
  yystate = 0;
5101
5.37k
  yyerrstatus = 0;
5102
5.37k
  yynerrs = 0;
5103
5.37k
  yychar = YYEMPTY; /* Cause a token to be read.  */
5104
5.37k
  goto yysetstate;
5105
5106
5107
/*------------------------------------------------------------.
5108
| yynewstate -- push a new state, which is found in yystate.  |
5109
`------------------------------------------------------------*/
5110
2.43M
yynewstate:
5111
  /* In all cases, when you get here, the value and location stacks
5112
     have just been pushed.  So pushing a state here evens the stacks.  */
5113
2.43M
  yyssp++;
5114
5115
5116
/*--------------------------------------------------------------------.
5117
| yysetstate -- set current state (the top of the stack) to yystate.  |
5118
`--------------------------------------------------------------------*/
5119
2.44M
yysetstate:
5120
2.44M
  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
5121
2.44M
  YY_ASSERT (0 <= yystate && yystate < YYNSTATES);
5122
2.44M
  YY_IGNORE_USELESS_CAST_BEGIN
5123
2.44M
  *yyssp = YY_CAST (yy_state_t, yystate);
5124
2.44M
  YY_IGNORE_USELESS_CAST_END
5125
5126
2.44M
  if (yyss + yystacksize - 1 <= yyssp)
5127
#if !defined yyoverflow && !defined YYSTACK_RELOCATE
5128
    goto yyexhaustedlab;
5129
#else
5130
122
    {
5131
      /* Get the current used size of the three stacks, in elements.  */
5132
122
      YYPTRDIFF_T yysize = yyssp - yyss + 1;
5133
5134
# if defined yyoverflow
5135
      {
5136
        /* Give user a chance to reallocate the stack.  Use copies of
5137
           these so that the &'s don't force the real ones into
5138
           memory.  */
5139
        yy_state_t *yyss1 = yyss;
5140
        YYSTYPE *yyvs1 = yyvs;
5141
5142
        /* Each stack pointer address is followed by the size of the
5143
           data in use in that stack, in bytes.  This used to be a
5144
           conditional around just the two extra args, but that might
5145
           be undefined if yyoverflow is a macro.  */
5146
        yyoverflow (YY_("memory exhausted"),
5147
                    &yyss1, yysize * YYSIZEOF (*yyssp),
5148
                    &yyvs1, yysize * YYSIZEOF (*yyvsp),
5149
                    &yystacksize);
5150
        yyss = yyss1;
5151
        yyvs = yyvs1;
5152
      }
5153
# else /* defined YYSTACK_RELOCATE */
5154
      /* Extend the stack our own way.  */
5155
122
      if (YYMAXDEPTH <= yystacksize)
5156
0
        goto yyexhaustedlab;
5157
122
      yystacksize *= 2;
5158
122
      if (YYMAXDEPTH < yystacksize)
5159
2
        yystacksize = YYMAXDEPTH;
5160
5161
122
      {
5162
122
        yy_state_t *yyss1 = yyss;
5163
122
        union yyalloc *yyptr =
5164
122
          YY_CAST (union yyalloc *,
5165
122
                   YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
5166
122
        if (! yyptr)
5167
0
          goto yyexhaustedlab;
5168
122
        YYSTACK_RELOCATE (yyss_alloc, yyss);
5169
122
        YYSTACK_RELOCATE (yyvs_alloc, yyvs);
5170
122
# undef YYSTACK_RELOCATE
5171
122
        if (yyss1 != yyssa)
5172
60
          YYSTACK_FREE (yyss1);
5173
122
      }
5174
0
# endif
5175
5176
0
      yyssp = yyss + yysize - 1;
5177
122
      yyvsp = yyvs + yysize - 1;
5178
5179
122
      YY_IGNORE_USELESS_CAST_BEGIN
5180
122
      YYDPRINTF ((stderr, "Stack size increased to %ld\n",
5181
122
                  YY_CAST (long, yystacksize)));
5182
122
      YY_IGNORE_USELESS_CAST_END
5183
5184
122
      if (yyss + yystacksize - 1 <= yyssp)
5185
0
        YYABORT;
5186
122
    }
5187
2.44M
#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
5188
5189
2.44M
  if (yystate == YYFINAL)
5190
4.57k
    YYACCEPT;
5191
5192
2.44M
  goto yybackup;
5193
5194
5195
/*-----------.
5196
| yybackup.  |
5197
`-----------*/
5198
2.44M
yybackup:
5199
  /* Do appropriate processing given the current state.  Read a
5200
     lookahead token if we need one and don't already have one.  */
5201
5202
  /* First try to decide what to do without reference to lookahead token.  */
5203
2.44M
  yyn = yypact[yystate];
5204
2.44M
  if (yypact_value_is_default (yyn))
5205
1.11M
    goto yydefault;
5206
5207
  /* Not known => get a lookahead token if don't already have one.  */
5208
5209
  /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
5210
1.32M
  if (yychar == YYEMPTY)
5211
807k
    {
5212
807k
      YYDPRINTF ((stderr, "Reading a token: "));
5213
807k
      yychar = yylex (&yylval);
5214
807k
    }
5215
5216
1.32M
  if (yychar <= YYEOF)
5217
9.26k
    {
5218
9.26k
      yychar = yytoken = YYEOF;
5219
9.26k
      YYDPRINTF ((stderr, "Now at end of input.\n"));
5220
9.26k
    }
5221
1.31M
  else
5222
1.31M
    {
5223
1.31M
      yytoken = YYTRANSLATE (yychar);
5224
1.31M
      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
5225
1.31M
    }
5226
5227
  /* If the proper action on seeing token YYTOKEN is to reduce or to
5228
     detect an error, take that action.  */
5229
1.32M
  yyn += yytoken;
5230
1.32M
  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
5231
507k
    goto yydefault;
5232
821k
  yyn = yytable[yyn];
5233
821k
  if (yyn <= 0)
5234
14.8k
    {
5235
14.8k
      if (yytable_value_is_error (yyn))
5236
3
        goto yyerrlab;
5237
14.8k
      yyn = -yyn;
5238
14.8k
      goto yyreduce;
5239
14.8k
    }
5240
5241
  /* Count tokens shifted since error; after three, turn off error
5242
     status.  */
5243
806k
  if (yyerrstatus)
5244
0
    yyerrstatus--;
5245
5246
  /* Shift the lookahead token.  */
5247
806k
  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
5248
806k
  yystate = yyn;
5249
806k
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
5250
806k
  *++yyvsp = yylval;
5251
806k
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5252
5253
  /* Discard the shifted token.  */
5254
806k
  yychar = YYEMPTY;
5255
806k
  goto yynewstate;
5256
5257
5258
/*-----------------------------------------------------------.
5259
| yydefault -- do the default action for the current state.  |
5260
`-----------------------------------------------------------*/
5261
1.61M
yydefault:
5262
1.61M
  yyn = yydefact[yystate];
5263
1.61M
  if (yyn == 0)
5264
794
    goto yyerrlab;
5265
1.61M
  goto yyreduce;
5266
5267
5268
/*-----------------------------.
5269
| yyreduce -- do a reduction.  |
5270
`-----------------------------*/
5271
1.63M
yyreduce:
5272
  /* yyn is the number of a rule to reduce with.  */
5273
1.63M
  yylen = yyr2[yyn];
5274
5275
  /* If YYLEN is nonzero, implement the default value of the action:
5276
     '$$ = $1'.
5277
5278
     Otherwise, the following line sets YYVAL to garbage.
5279
     This behavior is undocumented and Bison
5280
     users should not rely upon it.  Assigning to YYVAL
5281
     unconditionally makes the parser a bit smaller, and it avoids a
5282
     GCC warning that YYVAL may be used uninitialized.  */
5283
1.63M
  yyval = yyvsp[1-yylen];
5284
5285
5286
1.63M
  YY_REDUCE_PRINT (yyn);
5287
1.63M
  switch (yyn)
5288
1.63M
    {
5289
4.57k
  case 2:
5290
4.57k
#line 304 "/src/php-src/Zend/zend_language_parser.y"
5291
4.57k
                                { CG(ast) = (yyvsp[0].ast); (void) zendnerrs; }
5292
4.57k
#line 5293 "/src/php-src/Zend/zend_language_parser.c"
5293
4.57k
    break;
5294
5295
1.92k
  case 84:
5296
1.92k
#line 329 "/src/php-src/Zend/zend_language_parser.y"
5297
1.92k
                         { (yyval.ast) = (yyvsp[0].ast); }
5298
1.92k
#line 5299 "/src/php-src/Zend/zend_language_parser.c"
5299
1.92k
    break;
5300
5301
528
  case 85:
5302
528
#line 330 "/src/php-src/Zend/zend_language_parser.y"
5303
528
                               {
5304
528
      zval zv;
5305
528
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5306
528
      (yyval.ast) = zend_ast_create_zval(&zv);
5307
528
    }
5308
0
#line 5309 "/src/php-src/Zend/zend_language_parser.c"
5309
0
    break;
5310
5311
63.8k
  case 86:
5312
63.8k
#line 338 "/src/php-src/Zend/zend_language_parser.y"
5313
63.8k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5314
63.8k
#line 5315 "/src/php-src/Zend/zend_language_parser.c"
5315
63.8k
    break;
5316
5317
5.40k
  case 87:
5318
5.40k
#line 339 "/src/php-src/Zend/zend_language_parser.y"
5319
5.40k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5320
5.40k
#line 5321 "/src/php-src/Zend/zend_language_parser.c"
5321
5.40k
    break;
5322
5323
104
  case 88:
5324
104
#line 344 "/src/php-src/Zend/zend_language_parser.y"
5325
104
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5326
104
#line 5327 "/src/php-src/Zend/zend_language_parser.c"
5327
104
    break;
5328
5329
6
  case 89:
5330
6
#line 345 "/src/php-src/Zend/zend_language_parser.y"
5331
6
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5332
6
#line 5333 "/src/php-src/Zend/zend_language_parser.c"
5333
6
    break;
5334
5335
79
  case 90:
5336
79
#line 350 "/src/php-src/Zend/zend_language_parser.y"
5337
79
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5338
79
#line 5339 "/src/php-src/Zend/zend_language_parser.c"
5339
79
    break;
5340
5341
2
  case 91:
5342
2
#line 351 "/src/php-src/Zend/zend_language_parser.y"
5343
2
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5344
2
#line 5345 "/src/php-src/Zend/zend_language_parser.c"
5345
2
    break;
5346
5347
30
  case 92:
5348
30
#line 356 "/src/php-src/Zend/zend_language_parser.y"
5349
30
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5350
30
#line 5351 "/src/php-src/Zend/zend_language_parser.c"
5351
30
    break;
5352
5353
4
  case 93:
5354
4
#line 357 "/src/php-src/Zend/zend_language_parser.y"
5355
4
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5356
4
#line 5357 "/src/php-src/Zend/zend_language_parser.c"
5357
4
    break;
5358
5359
25.1k
  case 94:
5360
25.1k
#line 361 "/src/php-src/Zend/zend_language_parser.y"
5361
25.1k
                                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5362
25.1k
#line 5363 "/src/php-src/Zend/zend_language_parser.c"
5363
25.1k
    break;
5364
5365
277
  case 95:
5366
277
#line 362 "/src/php-src/Zend/zend_language_parser.y"
5367
277
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5368
277
#line 5369 "/src/php-src/Zend/zend_language_parser.c"
5369
277
    break;
5370
5371
298
  case 96:
5372
298
#line 363 "/src/php-src/Zend/zend_language_parser.y"
5373
298
                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_FQ; }
5374
298
#line 5375 "/src/php-src/Zend/zend_language_parser.c"
5375
298
    break;
5376
5377
13
  case 97:
5378
13
#line 364 "/src/php-src/Zend/zend_language_parser.y"
5379
13
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_RELATIVE; }
5380
13
#line 5381 "/src/php-src/Zend/zend_language_parser.c"
5381
13
    break;
5382
5383
75
  case 98:
5384
75
#line 369 "/src/php-src/Zend/zend_language_parser.y"
5385
75
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[0].ast), NULL); }
5386
75
#line 5387 "/src/php-src/Zend/zend_language_parser.c"
5387
75
    break;
5388
5389
9
  case 99:
5390
9
#line 371 "/src/php-src/Zend/zend_language_parser.y"
5391
9
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[-1].ast), (yyvsp[0].ast)); }
5392
9
#line 5393 "/src/php-src/Zend/zend_language_parser.c"
5393
9
    break;
5394
5395
84
  case 100:
5396
84
#line 376 "/src/php-src/Zend/zend_language_parser.y"
5397
84
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_GROUP, (yyvsp[0].ast)); }
5398
84
#line 5399 "/src/php-src/Zend/zend_language_parser.c"
5399
84
    break;
5400
5401
0
  case 101:
5402
0
#line 378 "/src/php-src/Zend/zend_language_parser.y"
5403
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5404
0
#line 5405 "/src/php-src/Zend/zend_language_parser.c"
5405
0
    break;
5406
5407
84
  case 102:
5408
84
#line 382 "/src/php-src/Zend/zend_language_parser.y"
5409
84
                                                                                        { (yyval.ast) = (yyvsp[-2].ast); CG(doc_comment) = (yyvsp[-3].str); }
5410
84
#line 5411 "/src/php-src/Zend/zend_language_parser.c"
5411
84
    break;
5412
5413
39
  case 103:
5414
39
#line 386 "/src/php-src/Zend/zend_language_parser.y"
5415
39
                                                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_LIST, (yyvsp[0].ast)); }
5416
39
#line 5417 "/src/php-src/Zend/zend_language_parser.c"
5417
39
    break;
5418
5419
45
  case 104:
5420
45
#line 387 "/src/php-src/Zend/zend_language_parser.y"
5421
45
                                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5422
45
#line 5423 "/src/php-src/Zend/zend_language_parser.c"
5423
45
    break;
5424
5425
250
  case 105:
5426
250
#line 391 "/src/php-src/Zend/zend_language_parser.y"
5427
250
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5428
250
#line 5429 "/src/php-src/Zend/zend_language_parser.c"
5429
250
    break;
5430
5431
896
  case 106:
5432
896
#line 392 "/src/php-src/Zend/zend_language_parser.y"
5433
896
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5434
896
#line 5435 "/src/php-src/Zend/zend_language_parser.c"
5435
896
    break;
5436
5437
31
  case 107:
5438
31
#line 393 "/src/php-src/Zend/zend_language_parser.y"
5439
31
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5440
31
#line 5441 "/src/php-src/Zend/zend_language_parser.c"
5441
31
    break;
5442
5443
20
  case 108:
5444
20
#line 394 "/src/php-src/Zend/zend_language_parser.y"
5445
20
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5446
20
#line 5447 "/src/php-src/Zend/zend_language_parser.c"
5447
20
    break;
5448
5449
37
  case 109:
5450
37
#line 395 "/src/php-src/Zend/zend_language_parser.y"
5451
37
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5452
37
#line 5453 "/src/php-src/Zend/zend_language_parser.c"
5453
37
    break;
5454
5455
1.21k
  case 110:
5456
1.21k
#line 399 "/src/php-src/Zend/zend_language_parser.y"
5457
1.21k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5458
1.21k
#line 5459 "/src/php-src/Zend/zend_language_parser.c"
5459
1.21k
    break;
5460
5461
56
  case 111:
5462
56
#line 400 "/src/php-src/Zend/zend_language_parser.y"
5463
56
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5464
56
#line 5465 "/src/php-src/Zend/zend_language_parser.c"
5465
56
    break;
5466
5467
62.4k
  case 112:
5468
62.4k
#line 404 "/src/php-src/Zend/zend_language_parser.y"
5469
62.4k
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5470
62.4k
#line 5471 "/src/php-src/Zend/zend_language_parser.c"
5471
62.4k
    break;
5472
5473
1.24k
  case 113:
5474
1.24k
#line 405 "/src/php-src/Zend/zend_language_parser.y"
5475
1.24k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5476
1.24k
#line 5477 "/src/php-src/Zend/zend_language_parser.c"
5477
1.24k
    break;
5478
5479
33
  case 114:
5480
33
#line 406 "/src/php-src/Zend/zend_language_parser.y"
5481
33
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5482
33
#line 5483 "/src/php-src/Zend/zend_language_parser.c"
5483
33
    break;
5484
5485
2
  case 115:
5486
2
#line 408 "/src/php-src/Zend/zend_language_parser.y"
5487
2
                        { (yyval.ast) = zend_ast_create(ZEND_AST_HALT_COMPILER,
5488
2
            zend_ast_create_zval_from_long(zend_get_scanned_file_offset()));
5489
2
        zend_stop_lexing(); }
5490
2
#line 5491 "/src/php-src/Zend/zend_language_parser.c"
5491
2
    break;
5492
5493
88
  case 116:
5494
88
#line 412 "/src/php-src/Zend/zend_language_parser.y"
5495
88
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-1].ast), NULL);
5496
88
        RESET_DOC_COMMENT(); }
5497
88
#line 5498 "/src/php-src/Zend/zend_language_parser.c"
5498
88
    break;
5499
5500
22
  case 117:
5501
22
#line 414 "/src/php-src/Zend/zend_language_parser.y"
5502
22
                                                       { RESET_DOC_COMMENT(); }
5503
22
#line 5504 "/src/php-src/Zend/zend_language_parser.c"
5504
22
    break;
5505
5506
22
  case 118:
5507
22
#line 416 "/src/php-src/Zend/zend_language_parser.y"
5508
22
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
5509
22
#line 5510 "/src/php-src/Zend/zend_language_parser.c"
5510
22
    break;
5511
5512
9
  case 119:
5513
9
#line 417 "/src/php-src/Zend/zend_language_parser.y"
5514
9
                            { RESET_DOC_COMMENT(); }
5515
9
#line 5516 "/src/php-src/Zend/zend_language_parser.c"
5516
9
    break;
5517
5518
3
  case 120:
5519
3
#line 419 "/src/php-src/Zend/zend_language_parser.y"
5520
3
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, NULL, (yyvsp[-1].ast)); }
5521
3
#line 5522 "/src/php-src/Zend/zend_language_parser.c"
5522
3
    break;
5523
5524
11
  case 121:
5525
11
#line 420 "/src/php-src/Zend/zend_language_parser.y"
5526
11
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5527
11
#line 5528 "/src/php-src/Zend/zend_language_parser.c"
5528
11
    break;
5529
5530
17
  case 122:
5531
17
#line 421 "/src/php-src/Zend/zend_language_parser.y"
5532
17
                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5533
17
#line 5534 "/src/php-src/Zend/zend_language_parser.c"
5534
17
    break;
5535
5536
6
  case 123:
5537
6
#line 422 "/src/php-src/Zend/zend_language_parser.y"
5538
6
                                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5539
6
#line 5540 "/src/php-src/Zend/zend_language_parser.c"
5540
6
    break;
5541
5542
0
  case 124:
5543
0
#line 423 "/src/php-src/Zend/zend_language_parser.y"
5544
0
                                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5545
0
#line 5546 "/src/php-src/Zend/zend_language_parser.c"
5546
0
    break;
5547
5548
11
  case 125:
5549
11
#line 427 "/src/php-src/Zend/zend_language_parser.y"
5550
11
                                        { (yyval.num) = ZEND_SYMBOL_FUNCTION; }
5551
11
#line 5552 "/src/php-src/Zend/zend_language_parser.c"
5552
11
    break;
5553
5554
6
  case 126:
5555
6
#line 428 "/src/php-src/Zend/zend_language_parser.y"
5556
6
                                        { (yyval.num) = ZEND_SYMBOL_CONST; }
5557
6
#line 5558 "/src/php-src/Zend/zend_language_parser.c"
5558
6
    break;
5559
5560
17
  case 127:
5561
17
#line 433 "/src/php-src/Zend/zend_language_parser.y"
5562
17
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5563
17
#line 5564 "/src/php-src/Zend/zend_language_parser.c"
5564
17
    break;
5565
5566
11
  case 128:
5567
11
#line 438 "/src/php-src/Zend/zend_language_parser.y"
5568
11
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast));}
5569
11
#line 5570 "/src/php-src/Zend/zend_language_parser.c"
5570
11
    break;
5571
5572
6
  case 131:
5573
6
#line 448 "/src/php-src/Zend/zend_language_parser.y"
5574
6
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5575
6
#line 5576 "/src/php-src/Zend/zend_language_parser.c"
5576
6
    break;
5577
5578
11
  case 132:
5579
11
#line 450 "/src/php-src/Zend/zend_language_parser.y"
5580
11
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5581
11
#line 5582 "/src/php-src/Zend/zend_language_parser.c"
5582
11
    break;
5583
5584
17
  case 133:
5585
17
#line 455 "/src/php-src/Zend/zend_language_parser.y"
5586
17
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5587
17
#line 5588 "/src/php-src/Zend/zend_language_parser.c"
5588
17
    break;
5589
5590
17
  case 134:
5591
17
#line 457 "/src/php-src/Zend/zend_language_parser.y"
5592
17
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5593
17
#line 5594 "/src/php-src/Zend/zend_language_parser.c"
5594
17
    break;
5595
5596
0
  case 135:
5597
0
#line 462 "/src/php-src/Zend/zend_language_parser.y"
5598
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5599
0
#line 5600 "/src/php-src/Zend/zend_language_parser.c"
5600
0
    break;
5601
5602
6
  case 136:
5603
6
#line 464 "/src/php-src/Zend/zend_language_parser.y"
5604
6
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5605
6
#line 5606 "/src/php-src/Zend/zend_language_parser.c"
5606
6
    break;
5607
5608
17
  case 137:
5609
17
#line 468 "/src/php-src/Zend/zend_language_parser.y"
5610
17
                                           { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5611
17
#line 5612 "/src/php-src/Zend/zend_language_parser.c"
5612
17
    break;
5613
5614
0
  case 138:
5615
0
#line 469 "/src/php-src/Zend/zend_language_parser.y"
5616
0
                                                    { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = (yyvsp[-1].num); }
5617
0
#line 5618 "/src/php-src/Zend/zend_language_parser.c"
5618
0
    break;
5619
5620
51
  case 139:
5621
51
#line 474 "/src/php-src/Zend/zend_language_parser.y"
5622
51
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5623
51
#line 5624 "/src/php-src/Zend/zend_language_parser.c"
5624
51
    break;
5625
5626
0
  case 140:
5627
0
#line 476 "/src/php-src/Zend/zend_language_parser.y"
5628
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5629
0
#line 5630 "/src/php-src/Zend/zend_language_parser.c"
5630
0
    break;
5631
5632
4
  case 141:
5633
4
#line 481 "/src/php-src/Zend/zend_language_parser.y"
5634
4
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5635
4
#line 5636 "/src/php-src/Zend/zend_language_parser.c"
5636
4
    break;
5637
5638
2
  case 142:
5639
2
#line 483 "/src/php-src/Zend/zend_language_parser.y"
5640
2
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5641
2
#line 5642 "/src/php-src/Zend/zend_language_parser.c"
5642
2
    break;
5643
5644
5
  case 143:
5645
5
#line 487 "/src/php-src/Zend/zend_language_parser.y"
5646
5
                                          { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5647
5
#line 5648 "/src/php-src/Zend/zend_language_parser.c"
5648
5
    break;
5649
5650
242
  case 144:
5651
242
#line 488 "/src/php-src/Zend/zend_language_parser.y"
5652
242
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CONST_DECL, (yyvsp[0].ast)); }
5653
242
#line 5654 "/src/php-src/Zend/zend_language_parser.c"
5654
242
    break;
5655
5656
30.2k
  case 145:
5657
30.2k
#line 493 "/src/php-src/Zend/zend_language_parser.y"
5658
30.2k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5659
30.2k
#line 5660 "/src/php-src/Zend/zend_language_parser.c"
5660
30.2k
    break;
5661
5662
18.2k
  case 146:
5663
18.2k
#line 495 "/src/php-src/Zend/zend_language_parser.y"
5664
18.2k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5665
18.2k
#line 5666 "/src/php-src/Zend/zend_language_parser.c"
5666
18.2k
    break;
5667
5668
30.1k
  case 147:
5669
30.1k
#line 500 "/src/php-src/Zend/zend_language_parser.y"
5670
30.1k
                          { (yyval.ast) = (yyvsp[0].ast); }
5671
30.1k
#line 5672 "/src/php-src/Zend/zend_language_parser.c"
5672
30.1k
    break;
5673
5674
16
  case 148:
5675
16
#line 501 "/src/php-src/Zend/zend_language_parser.y"
5676
16
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5677
16
#line 5678 "/src/php-src/Zend/zend_language_parser.c"
5678
16
    break;
5679
5680
0
  case 149:
5681
0
#line 502 "/src/php-src/Zend/zend_language_parser.y"
5682
0
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5683
0
#line 5684 "/src/php-src/Zend/zend_language_parser.c"
5684
0
    break;
5685
5686
0
  case 150:
5687
0
#line 504 "/src/php-src/Zend/zend_language_parser.y"
5688
0
                        { (yyval.ast) = NULL; zend_throw_exception(zend_ce_compile_error,
5689
0
            "__HALT_COMPILER() can only be used from the outermost scope", 0); YYERROR; }
5690
0
#line 5691 "/src/php-src/Zend/zend_language_parser.c"
5691
0
    break;
5692
5693
5.93k
  case 151:
5694
5.93k
#line 510 "/src/php-src/Zend/zend_language_parser.y"
5695
5.93k
                                             { (yyval.ast) = (yyvsp[-1].ast); }
5696
5.93k
#line 5697 "/src/php-src/Zend/zend_language_parser.c"
5697
5.93k
    break;
5698
5699
2.60k
  case 152:
5700
2.60k
#line 511 "/src/php-src/Zend/zend_language_parser.y"
5701
2.60k
                        { (yyval.ast) = (yyvsp[0].ast); }
5702
2.60k
#line 5703 "/src/php-src/Zend/zend_language_parser.c"
5703
2.60k
    break;
5704
5705
7
  case 153:
5706
7
#line 512 "/src/php-src/Zend/zend_language_parser.y"
5707
7
                            { (yyval.ast) = (yyvsp[0].ast); }
5708
7
#line 5709 "/src/php-src/Zend/zend_language_parser.c"
5709
7
    break;
5710
5711
6
  case 154:
5712
6
#line 514 "/src/php-src/Zend/zend_language_parser.y"
5713
6
                        { (yyval.ast) = zend_ast_create(ZEND_AST_WHILE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5714
6
#line 5715 "/src/php-src/Zend/zend_language_parser.c"
5715
6
    break;
5716
5717
10
  case 155:
5718
10
#line 516 "/src/php-src/Zend/zend_language_parser.y"
5719
10
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DO_WHILE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5720
10
#line 5721 "/src/php-src/Zend/zend_language_parser.c"
5721
10
    break;
5722
5723
852
  case 156:
5724
852
#line 518 "/src/php-src/Zend/zend_language_parser.y"
5725
852
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOR, (yyvsp[-6].ast), (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
5726
852
#line 5727 "/src/php-src/Zend/zend_language_parser.c"
5727
852
    break;
5728
5729
5
  case 157:
5730
5
#line 520 "/src/php-src/Zend/zend_language_parser.y"
5731
5
                        { (yyval.ast) = zend_ast_create(ZEND_AST_SWITCH, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5732
5
#line 5733 "/src/php-src/Zend/zend_language_parser.c"
5733
5
    break;
5734
5735
9
  case 158:
5736
9
#line 521 "/src/php-src/Zend/zend_language_parser.y"
5737
9
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_BREAK, (yyvsp[-1].ast)); }
5738
9
#line 5739 "/src/php-src/Zend/zend_language_parser.c"
5739
9
    break;
5740
5741
12
  case 159:
5742
12
#line 522 "/src/php-src/Zend/zend_language_parser.y"
5743
12
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONTINUE, (yyvsp[-1].ast)); }
5744
12
#line 5745 "/src/php-src/Zend/zend_language_parser.c"
5745
12
    break;
5746
5747
280
  case 160:
5748
280
#line 523 "/src/php-src/Zend/zend_language_parser.y"
5749
280
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_RETURN, (yyvsp[-1].ast)); }
5750
280
#line 5751 "/src/php-src/Zend/zend_language_parser.c"
5751
280
    break;
5752
5753
7
  case 161:
5754
7
#line 524 "/src/php-src/Zend/zend_language_parser.y"
5755
7
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5756
7
#line 5757 "/src/php-src/Zend/zend_language_parser.c"
5757
7
    break;
5758
5759
19
  case 162:
5760
19
#line 525 "/src/php-src/Zend/zend_language_parser.y"
5761
19
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5762
19
#line 5763 "/src/php-src/Zend/zend_language_parser.c"
5763
19
    break;
5764
5765
4.53k
  case 163:
5766
4.53k
#line 526 "/src/php-src/Zend/zend_language_parser.y"
5767
4.53k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
5768
4.53k
#line 5769 "/src/php-src/Zend/zend_language_parser.c"
5769
4.53k
    break;
5770
5771
7.91k
  case 164:
5772
7.91k
#line 527 "/src/php-src/Zend/zend_language_parser.y"
5773
7.91k
                              { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
5774
7.91k
#line 5775 "/src/php-src/Zend/zend_language_parser.c"
5775
7.91k
    break;
5776
5777
31.4k
  case 165:
5778
31.4k
#line 528 "/src/php-src/Zend/zend_language_parser.y"
5779
31.4k
                         { (yyval.ast) = (yyvsp[-1].ast); }
5780
31.4k
#line 5781 "/src/php-src/Zend/zend_language_parser.c"
5781
31.4k
    break;
5782
5783
47
  case 166:
5784
47
#line 529 "/src/php-src/Zend/zend_language_parser.y"
5785
47
                                                                   { (yyval.ast) = (yyvsp[-3].ast); }
5786
47
#line 5787 "/src/php-src/Zend/zend_language_parser.c"
5787
47
    break;
5788
5789
2.54k
  case 167:
5790
2.54k
#line 531 "/src/php-src/Zend/zend_language_parser.y"
5791
2.54k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-4].ast), (yyvsp[-2].ast), NULL, (yyvsp[0].ast)); }
5792
2.54k
#line 5793 "/src/php-src/Zend/zend_language_parser.c"
5793
2.54k
    break;
5794
5795
23
  case 168:
5796
23
#line 534 "/src/php-src/Zend/zend_language_parser.y"
5797
23
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-4].ast), (yyvsp[0].ast)); }
5798
23
#line 5799 "/src/php-src/Zend/zend_language_parser.c"
5799
23
    break;
5800
5801
186
  case 169:
5802
186
#line 536 "/src/php-src/Zend/zend_language_parser.y"
5803
186
                        { if (!zend_handle_encoding_declaration((yyvsp[-1].ast))) { YYERROR; } }
5804
186
#line 5805 "/src/php-src/Zend/zend_language_parser.c"
5805
186
    break;
5806
5807
186
  case 170:
5808
12
#line 538 "/src/php-src/Zend/zend_language_parser.y"
5809
12
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DECLARE, (yyvsp[-3].ast), (yyvsp[0].ast)); }
5810
12
#line 5811 "/src/php-src/Zend/zend_language_parser.c"
5811
12
    break;
5812
5813
38.3k
  case 171:
5814
38.3k
#line 539 "/src/php-src/Zend/zend_language_parser.y"
5815
38.3k
                                              { (yyval.ast) = NULL; }
5816
38.3k
#line 5817 "/src/php-src/Zend/zend_language_parser.c"
5817
38.3k
    break;
5818
5819
4.12k
  case 172:
5820
4.12k
#line 541 "/src/php-src/Zend/zend_language_parser.y"
5821
4.12k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRY, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
5822
4.12k
#line 5823 "/src/php-src/Zend/zend_language_parser.c"
5823
4.12k
    break;
5824
5825
5
  case 173:
5826
5
#line 542 "/src/php-src/Zend/zend_language_parser.y"
5827
5
                                    { (yyval.ast) = zend_ast_create(ZEND_AST_GOTO, (yyvsp[-1].ast)); }
5828
5
#line 5829 "/src/php-src/Zend/zend_language_parser.c"
5829
5
    break;
5830
5831
5
  case 174:
5832
5
#line 543 "/src/php-src/Zend/zend_language_parser.y"
5833
5
                             { (yyval.ast) = zend_ast_create(ZEND_AST_LABEL, (yyvsp[-1].ast)); }
5834
5
#line 5835 "/src/php-src/Zend/zend_language_parser.c"
5835
5
    break;
5836
5837
0
  case 175:
5838
0
#line 544 "/src/php-src/Zend/zend_language_parser.y"
5839
0
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[-1].ast)); }
5840
0
#line 5841 "/src/php-src/Zend/zend_language_parser.c"
5841
0
    break;
5842
5843
4.12k
  case 176:
5844
4.12k
#line 549 "/src/php-src/Zend/zend_language_parser.y"
5845
4.12k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_CATCH_LIST); }
5846
4.12k
#line 5847 "/src/php-src/Zend/zend_language_parser.c"
5847
4.12k
    break;
5848
5849
4.17k
  case 177:
5850
4.17k
#line 551 "/src/php-src/Zend/zend_language_parser.y"
5851
4.17k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-8].ast), zend_ast_create(ZEND_AST_CATCH, (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast))); }
5852
4.17k
#line 5853 "/src/php-src/Zend/zend_language_parser.c"
5853
4.17k
    break;
5854
5855
4.17k
  case 178:
5856
4.17k
#line 555 "/src/php-src/Zend/zend_language_parser.y"
5857
4.17k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
5858
4.17k
#line 5859 "/src/php-src/Zend/zend_language_parser.c"
5859
4.17k
    break;
5860
5861
0
  case 179:
5862
0
#line 556 "/src/php-src/Zend/zend_language_parser.y"
5863
0
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5864
0
#line 5865 "/src/php-src/Zend/zend_language_parser.c"
5865
0
    break;
5866
5867
117
  case 180:
5868
117
#line 560 "/src/php-src/Zend/zend_language_parser.y"
5869
117
                       { (yyval.ast) = NULL; }
5870
117
#line 5871 "/src/php-src/Zend/zend_language_parser.c"
5871
117
    break;
5872
5873
4.05k
  case 181:
5874
4.05k
#line 561 "/src/php-src/Zend/zend_language_parser.y"
5875
4.05k
                           { (yyval.ast) = (yyvsp[0].ast); }
5876
4.05k
#line 5877 "/src/php-src/Zend/zend_language_parser.c"
5877
4.05k
    break;
5878
5879
4.11k
  case 182:
5880
4.11k
#line 565 "/src/php-src/Zend/zend_language_parser.y"
5881
4.11k
                       { (yyval.ast) = NULL; }
5882
4.11k
#line 5883 "/src/php-src/Zend/zend_language_parser.c"
5883
4.11k
    break;
5884
5885
5
  case 183:
5886
5
#line 566 "/src/php-src/Zend/zend_language_parser.y"
5887
5
                                                       { (yyval.ast) = (yyvsp[-1].ast); }
5888
5
#line 5889 "/src/php-src/Zend/zend_language_parser.c"
5889
5
    break;
5890
5891
47
  case 184:
5892
47
#line 570 "/src/php-src/Zend/zend_language_parser.y"
5893
47
                               { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
5894
47
#line 5895 "/src/php-src/Zend/zend_language_parser.c"
5895
47
    break;
5896
5897
34
  case 185:
5898
34
#line 571 "/src/php-src/Zend/zend_language_parser.y"
5899
34
                                                   { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5900
34
#line 5901 "/src/php-src/Zend/zend_language_parser.c"
5901
34
    break;
5902
5903
81
  case 186:
5904
81
#line 575 "/src/php-src/Zend/zend_language_parser.y"
5905
81
                         { (yyval.ast) = zend_ast_create(ZEND_AST_UNSET, (yyvsp[0].ast)); }
5906
81
#line 5907 "/src/php-src/Zend/zend_language_parser.c"
5907
81
    break;
5908
5909
417
  case 187:
5910
417
#line 579 "/src/php-src/Zend/zend_language_parser.y"
5911
417
                         { (yyval.ast) = (yyvsp[0].ast); }
5912
417
#line 5913 "/src/php-src/Zend/zend_language_parser.c"
5913
417
    break;
5914
5915
0
  case 188:
5916
0
#line 580 "/src/php-src/Zend/zend_language_parser.y"
5917
0
                           {
5918
0
      zval zv;
5919
0
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5920
0
      (yyval.ast) = zend_ast_create_zval(&zv);
5921
0
    }
5922
0
#line 5923 "/src/php-src/Zend/zend_language_parser.c"
5923
0
    break;
5924
5925
250
  case 189:
5926
250
#line 590 "/src/php-src/Zend/zend_language_parser.y"
5927
250
                { (yyval.ast) = zend_ast_create_decl(ZEND_AST_FUNC_DECL, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-9].str),
5928
250
          zend_ast_get_str((yyvsp[-10].ast)), (yyvsp[-7].ast), NULL, (yyvsp[-2].ast), (yyvsp[-5].ast), NULL); CG(extra_fn_flags) = (yyvsp[-4].num); }
5929
250
#line 5930 "/src/php-src/Zend/zend_language_parser.c"
5930
250
    break;
5931
5932
738
  case 190:
5933
738
#line 595 "/src/php-src/Zend/zend_language_parser.y"
5934
738
                        { (yyval.num) = 0; }
5935
738
#line 5936 "/src/php-src/Zend/zend_language_parser.c"
5936
738
    break;
5937
5938
292
  case 191:
5939
292
#line 596 "/src/php-src/Zend/zend_language_parser.y"
5940
292
                                                        { (yyval.num) = ZEND_PARAM_REF; }
5941
292
#line 5942 "/src/php-src/Zend/zend_language_parser.c"
5942
292
    break;
5943
5944
1.02k
  case 192:
5945
1.02k
#line 600 "/src/php-src/Zend/zend_language_parser.y"
5946
1.02k
                       { (yyval.num) = 0; }
5947
1.02k
#line 5948 "/src/php-src/Zend/zend_language_parser.c"
5948
1.02k
    break;
5949
5950
6
  case 193:
5951
6
#line 601 "/src/php-src/Zend/zend_language_parser.y"
5952
6
                            { (yyval.num) = ZEND_PARAM_VARIADIC; }
5953
6
#line 5954 "/src/php-src/Zend/zend_language_parser.c"
5954
6
    break;
5955
5956
11
  case 194:
5957
11
#line 605 "/src/php-src/Zend/zend_language_parser.y"
5958
11
                                        { (yyval.num) = CG(zend_lineno); }
5959
11
#line 5960 "/src/php-src/Zend/zend_language_parser.c"
5960
11
    break;
5961
5962
11
  case 195:
5963
11
#line 607 "/src/php-src/Zend/zend_language_parser.y"
5964
11
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, (yyvsp[-9].num), (yyvsp[-7].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-6].ast)), (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL); }
5965
11
#line 5966 "/src/php-src/Zend/zend_language_parser.c"
5966
11
    break;
5967
5968
893
  case 196:
5969
893
#line 608 "/src/php-src/Zend/zend_language_parser.y"
5970
893
                        { (yyval.num) = CG(zend_lineno); }
5971
893
#line 5972 "/src/php-src/Zend/zend_language_parser.c"
5972
893
    break;
5973
5974
885
  case 197:
5975
885
#line 610 "/src/php-src/Zend/zend_language_parser.y"
5976
885
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, 0, (yyvsp[-7].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-6].ast)), (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL); }
5977
885
#line 5978 "/src/php-src/Zend/zend_language_parser.c"
5978
885
    break;
5979
5980
11
  case 198:
5981
11
#line 614 "/src/php-src/Zend/zend_language_parser.y"
5982
11
                                                                { (yyval.num) = (yyvsp[0].num); }
5983
11
#line 5984 "/src/php-src/Zend/zend_language_parser.c"
5984
11
    break;
5985
5986
0
  case 199:
5987
0
#line 616 "/src/php-src/Zend/zend_language_parser.y"
5988
0
                        { (yyval.num) = zend_add_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5989
0
#line 5990 "/src/php-src/Zend/zend_language_parser.c"
5990
0
    break;
5991
5992
0
  case 200:
5993
0
#line 621 "/src/php-src/Zend/zend_language_parser.y"
5994
0
                        { (yyval.num) = zend_add_anonymous_class_modifier(0, (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5995
0
#line 5996 "/src/php-src/Zend/zend_language_parser.c"
5996
0
    break;
5997
5998
0
  case 201:
5999
0
#line 623 "/src/php-src/Zend/zend_language_parser.y"
6000
0
                        { (yyval.num) = zend_add_anonymous_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
6001
0
#line 6002 "/src/php-src/Zend/zend_language_parser.c"
6002
0
    break;
6003
6004
6
  case 202:
6005
6
#line 627 "/src/php-src/Zend/zend_language_parser.y"
6006
6
                                                { (yyval.num) = 0; }
6007
6
#line 6008 "/src/php-src/Zend/zend_language_parser.c"
6008
6
    break;
6009
6010
0
  case 203:
6011
0
#line 628 "/src/php-src/Zend/zend_language_parser.y"
6012
0
                                                { (yyval.num) = (yyvsp[0].num); }
6013
0
#line 6014 "/src/php-src/Zend/zend_language_parser.c"
6014
0
    break;
6015
6016
6
  case 204:
6017
6
#line 632 "/src/php-src/Zend/zend_language_parser.y"
6018
6
                                        { (yyval.num) = ZEND_ACC_EXPLICIT_ABSTRACT_CLASS; }
6019
6
#line 6020 "/src/php-src/Zend/zend_language_parser.c"
6020
6
    break;
6021
6022
5
  case 205:
6023
5
#line 633 "/src/php-src/Zend/zend_language_parser.y"
6024
5
                                        { (yyval.num) = ZEND_ACC_FINAL; }
6025
5
#line 6026 "/src/php-src/Zend/zend_language_parser.c"
6026
5
    break;
6027
6028
0
  case 206:
6029
0
#line 634 "/src/php-src/Zend/zend_language_parser.y"
6030
0
                                        { (yyval.num) = ZEND_ACC_READONLY_CLASS|ZEND_ACC_NO_DYNAMIC_PROPERTIES; }
6031
0
#line 6032 "/src/php-src/Zend/zend_language_parser.c"
6032
0
    break;
6033
6034
31
  case 207:
6035
31
#line 638 "/src/php-src/Zend/zend_language_parser.y"
6036
31
                        { (yyval.num) = CG(zend_lineno); }
6037
31
#line 6038 "/src/php-src/Zend/zend_language_parser.c"
6038
31
    break;
6039
6040
31
  case 208:
6041
31
#line 640 "/src/php-src/Zend/zend_language_parser.y"
6042
31
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, ZEND_ACC_TRAIT, (yyvsp[-5].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-4].ast)), NULL, NULL, (yyvsp[-1].ast), NULL, NULL); }
6043
31
#line 6044 "/src/php-src/Zend/zend_language_parser.c"
6044
31
    break;
6045
6046
20
  case 209:
6047
20
#line 644 "/src/php-src/Zend/zend_language_parser.y"
6048
20
                            { (yyval.num) = CG(zend_lineno); }
6049
20
#line 6050 "/src/php-src/Zend/zend_language_parser.c"
6050
20
    break;
6051
6052
20
  case 210:
6053
20
#line 646 "/src/php-src/Zend/zend_language_parser.y"
6054
20
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, ZEND_ACC_INTERFACE, (yyvsp[-6].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-5].ast)), NULL, (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL); }
6055
20
#line 6056 "/src/php-src/Zend/zend_language_parser.c"
6056
20
    break;
6057
6058
37
  case 211:
6059
37
#line 650 "/src/php-src/Zend/zend_language_parser.y"
6060
37
                       { (yyval.num) = CG(zend_lineno); }
6061
37
#line 6062 "/src/php-src/Zend/zend_language_parser.c"
6062
37
    break;
6063
6064
37
  case 212:
6065
37
#line 652 "/src/php-src/Zend/zend_language_parser.y"
6066
37
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, ZEND_ACC_ENUM|ZEND_ACC_FINAL, (yyvsp[-7].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-6].ast)), NULL, (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, (yyvsp[-5].ast)); }
6067
37
#line 6068 "/src/php-src/Zend/zend_language_parser.c"
6068
37
    break;
6069
6070
19
  case 213:
6071
19
#line 656 "/src/php-src/Zend/zend_language_parser.y"
6072
19
                        { (yyval.ast) = NULL; }
6073
19
#line 6074 "/src/php-src/Zend/zend_language_parser.c"
6074
19
    break;
6075
6076
18
  case 214:
6077
18
#line 657 "/src/php-src/Zend/zend_language_parser.y"
6078
18
                              { (yyval.ast) = (yyvsp[0].ast); }
6079
18
#line 6080 "/src/php-src/Zend/zend_language_parser.c"
6080
18
    break;
6081
6082
37
  case 215:
6083
37
#line 662 "/src/php-src/Zend/zend_language_parser.y"
6084
37
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ENUM_CASE, (yyvsp[-2].ast), (yyvsp[-1].ast), ((yyvsp[-3].str) ? zend_ast_create_zval_from_str((yyvsp[-3].str)) : NULL), NULL); }
6085
37
#line 6086 "/src/php-src/Zend/zend_language_parser.c"
6086
37
    break;
6087
6088
19
  case 216:
6089
19
#line 666 "/src/php-src/Zend/zend_language_parser.y"
6090
19
                        { (yyval.ast) = NULL; }
6091
19
#line 6092 "/src/php-src/Zend/zend_language_parser.c"
6092
19
    break;
6093
6094
18
  case 217:
6095
18
#line 667 "/src/php-src/Zend/zend_language_parser.y"
6096
18
                         { (yyval.ast) = (yyvsp[0].ast); }
6097
18
#line 6098 "/src/php-src/Zend/zend_language_parser.c"
6098
18
    break;
6099
6100
825
  case 218:
6101
825
#line 671 "/src/php-src/Zend/zend_language_parser.y"
6102
825
                                                { (yyval.ast) = NULL; }
6103
825
#line 6104 "/src/php-src/Zend/zend_language_parser.c"
6104
825
    break;
6105
6106
85
  case 219:
6107
85
#line 672 "/src/php-src/Zend/zend_language_parser.y"
6108
85
                                        { (yyval.ast) = (yyvsp[0].ast); }
6109
85
#line 6110 "/src/php-src/Zend/zend_language_parser.c"
6110
85
    break;
6111
6112
20
  case 220:
6113
20
#line 676 "/src/php-src/Zend/zend_language_parser.y"
6114
20
                                                { (yyval.ast) = NULL; }
6115
20
#line 6116 "/src/php-src/Zend/zend_language_parser.c"
6116
20
    break;
6117
6118
0
  case 221:
6119
0
#line 677 "/src/php-src/Zend/zend_language_parser.y"
6120
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
6121
0
#line 6122 "/src/php-src/Zend/zend_language_parser.c"
6122
0
    break;
6123
6124
925
  case 222:
6125
925
#line 681 "/src/php-src/Zend/zend_language_parser.y"
6126
925
                                                        { (yyval.ast) = NULL; }
6127
925
#line 6128 "/src/php-src/Zend/zend_language_parser.c"
6128
925
    break;
6129
6130
22
  case 223:
6131
22
#line 682 "/src/php-src/Zend/zend_language_parser.y"
6132
22
                                                { (yyval.ast) = (yyvsp[0].ast); }
6133
22
#line 6134 "/src/php-src/Zend/zend_language_parser.c"
6134
22
    break;
6135
6136
2.58k
  case 224:
6137
2.58k
#line 686 "/src/php-src/Zend/zend_language_parser.y"
6138
2.58k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6139
2.58k
#line 6140 "/src/php-src/Zend/zend_language_parser.c"
6140
2.58k
    break;
6141
6142
7
  case 225:
6143
7
#line 687 "/src/php-src/Zend/zend_language_parser.y"
6144
7
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_REF, (yyvsp[0].ast)); }
6145
7
#line 6146 "/src/php-src/Zend/zend_language_parser.c"
6146
7
    break;
6147
6148
0
  case 226:
6149
0
#line 688 "/src/php-src/Zend/zend_language_parser.y"
6150
0
                                               { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LIST; }
6151
0
#line 6152 "/src/php-src/Zend/zend_language_parser.c"
6152
0
    break;
6153
6154
5
  case 227:
6155
5
#line 689 "/src/php-src/Zend/zend_language_parser.y"
6156
5
                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
6157
5
#line 6158 "/src/php-src/Zend/zend_language_parser.c"
6158
5
    break;
6159
6160
852
  case 228:
6161
852
#line 693 "/src/php-src/Zend/zend_language_parser.y"
6162
852
                          { (yyval.ast) = (yyvsp[0].ast); }
6163
852
#line 6164 "/src/php-src/Zend/zend_language_parser.c"
6164
852
    break;
6165
6166
0
  case 229:
6167
0
#line 694 "/src/php-src/Zend/zend_language_parser.y"
6168
0
                                                      { (yyval.ast) = (yyvsp[-2].ast); }
6169
0
#line 6170 "/src/php-src/Zend/zend_language_parser.c"
6170
0
    break;
6171
6172
2.56k
  case 230:
6173
2.56k
#line 698 "/src/php-src/Zend/zend_language_parser.y"
6174
2.56k
                          { (yyval.ast) = (yyvsp[0].ast); }
6175
2.56k
#line 6176 "/src/php-src/Zend/zend_language_parser.c"
6176
2.56k
    break;
6177
6178
0
  case 231:
6179
0
#line 699 "/src/php-src/Zend/zend_language_parser.y"
6180
0
                                                          { (yyval.ast) = (yyvsp[-2].ast); }
6181
0
#line 6182 "/src/php-src/Zend/zend_language_parser.c"
6182
0
    break;
6183
6184
12
  case 232:
6185
12
#line 703 "/src/php-src/Zend/zend_language_parser.y"
6186
12
                          { (yyval.ast) = (yyvsp[0].ast); }
6187
12
#line 6188 "/src/php-src/Zend/zend_language_parser.c"
6188
12
    break;
6189
6190
0
  case 233:
6191
0
#line 704 "/src/php-src/Zend/zend_language_parser.y"
6192
0
                                                          { (yyval.ast) = (yyvsp[-2].ast); }
6193
0
#line 6194 "/src/php-src/Zend/zend_language_parser.c"
6194
0
    break;
6195
6196
5
  case 234:
6197
5
#line 708 "/src/php-src/Zend/zend_language_parser.y"
6198
5
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6199
5
#line 6200 "/src/php-src/Zend/zend_language_parser.c"
6200
5
    break;
6201
6202
0
  case 235:
6203
0
#line 709 "/src/php-src/Zend/zend_language_parser.y"
6204
0
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
6205
0
#line 6206 "/src/php-src/Zend/zend_language_parser.c"
6206
0
    break;
6207
6208
0
  case 236:
6209
0
#line 710 "/src/php-src/Zend/zend_language_parser.y"
6210
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6211
0
#line 6212 "/src/php-src/Zend/zend_language_parser.c"
6212
0
    break;
6213
6214
0
  case 237:
6215
0
#line 711 "/src/php-src/Zend/zend_language_parser.y"
6216
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6217
0
#line 6218 "/src/php-src/Zend/zend_language_parser.c"
6218
0
    break;
6219
6220
5
  case 238:
6221
5
#line 715 "/src/php-src/Zend/zend_language_parser.y"
6222
5
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_SWITCH_LIST); }
6223
5
#line 6224 "/src/php-src/Zend/zend_language_parser.c"
6224
5
    break;
6225
6226
25
  case 239:
6227
25
#line 717 "/src/php-src/Zend/zend_language_parser.y"
6228
25
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-4].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6229
25
#line 6230 "/src/php-src/Zend/zend_language_parser.c"
6230
25
    break;
6231
6232
0
  case 240:
6233
0
#line 719 "/src/php-src/Zend/zend_language_parser.y"
6234
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-4].ast), zend_ast_create_ex(ZEND_AST_SWITCH_CASE, ZEND_ALT_CASE_SYNTAX, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6235
0
#line 6236 "/src/php-src/Zend/zend_language_parser.c"
6236
0
    break;
6237
6238
5
  case 241:
6239
5
#line 721 "/src/php-src/Zend/zend_language_parser.y"
6240
5
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, NULL, (yyvsp[0].ast))); }
6241
5
#line 6242 "/src/php-src/Zend/zend_language_parser.c"
6242
5
    break;
6243
6244
0
  case 242:
6245
0
#line 723 "/src/php-src/Zend/zend_language_parser.y"
6246
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create_ex(ZEND_AST_SWITCH_CASE, ZEND_ALT_CASE_SYNTAX, NULL, (yyvsp[0].ast))); }
6247
0
#line 6248 "/src/php-src/Zend/zend_language_parser.c"
6248
0
    break;
6249
6250
0
  case 243:
6251
0
#line 729 "/src/php-src/Zend/zend_language_parser.y"
6252
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
6253
0
#line 6254 "/src/php-src/Zend/zend_language_parser.c"
6254
0
    break;
6255
6256
0
  case 244:
6257
0
#line 733 "/src/php-src/Zend/zend_language_parser.y"
6258
0
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_MATCH_ARM_LIST); }
6259
0
#line 6260 "/src/php-src/Zend/zend_language_parser.c"
6260
0
    break;
6261
6262
0
  case 245:
6263
0
#line 734 "/src/php-src/Zend/zend_language_parser.y"
6264
0
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6265
0
#line 6266 "/src/php-src/Zend/zend_language_parser.c"
6266
0
    break;
6267
6268
0
  case 246:
6269
0
#line 738 "/src/php-src/Zend/zend_language_parser.y"
6270
0
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MATCH_ARM_LIST, (yyvsp[0].ast)); }
6271
0
#line 6272 "/src/php-src/Zend/zend_language_parser.c"
6272
0
    break;
6273
6274
0
  case 247:
6275
0
#line 739 "/src/php-src/Zend/zend_language_parser.y"
6276
0
                                                       { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6277
0
#line 6278 "/src/php-src/Zend/zend_language_parser.c"
6278
0
    break;
6279
6280
0
  case 248:
6281
0
#line 744 "/src/php-src/Zend/zend_language_parser.y"
6282
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, (yyvsp[-3].ast), (yyvsp[0].ast)); }
6283
0
#line 6284 "/src/php-src/Zend/zend_language_parser.c"
6284
0
    break;
6285
6286
0
  case 249:
6287
0
#line 746 "/src/php-src/Zend/zend_language_parser.y"
6288
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, NULL, (yyvsp[0].ast)); }
6289
0
#line 6290 "/src/php-src/Zend/zend_language_parser.c"
6290
0
    break;
6291
6292
0
  case 250:
6293
0
#line 750 "/src/php-src/Zend/zend_language_parser.y"
6294
0
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
6295
0
#line 6296 "/src/php-src/Zend/zend_language_parser.c"
6296
0
    break;
6297
6298
0
  case 251:
6299
0
#line 751 "/src/php-src/Zend/zend_language_parser.y"
6300
0
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6301
0
#line 6302 "/src/php-src/Zend/zend_language_parser.c"
6302
0
    break;
6303
6304
6
  case 252:
6305
6
#line 756 "/src/php-src/Zend/zend_language_parser.y"
6306
6
                          { (yyval.ast) = (yyvsp[0].ast); }
6307
6
#line 6308 "/src/php-src/Zend/zend_language_parser.c"
6308
6
    break;
6309
6310
0
  case 253:
6311
0
#line 757 "/src/php-src/Zend/zend_language_parser.y"
6312
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6313
0
#line 6314 "/src/php-src/Zend/zend_language_parser.c"
6314
0
    break;
6315
6316
2.60k
  case 254:
6317
2.60k
#line 763 "/src/php-src/Zend/zend_language_parser.y"
6318
2.60k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6319
2.60k
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6320
2.60k
#line 6321 "/src/php-src/Zend/zend_language_parser.c"
6321
2.60k
    break;
6322
6323
5
  case 255:
6324
5
#line 766 "/src/php-src/Zend/zend_language_parser.y"
6325
5
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6326
5
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6327
5
#line 6328 "/src/php-src/Zend/zend_language_parser.c"
6328
5
    break;
6329
6330
2.58k
  case 256:
6331
2.58k
#line 771 "/src/php-src/Zend/zend_language_parser.y"
6332
2.58k
                                                    { (yyval.ast) = (yyvsp[0].ast); }
6333
2.58k
#line 6334 "/src/php-src/Zend/zend_language_parser.c"
6334
2.58k
    break;
6335
6336
20
  case 257:
6337
20
#line 773 "/src/php-src/Zend/zend_language_parser.y"
6338
20
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[0].ast))); }
6339
20
#line 6340 "/src/php-src/Zend/zend_language_parser.c"
6340
20
    break;
6341
6342
24
  case 258:
6343
24
#line 778 "/src/php-src/Zend/zend_language_parser.y"
6344
24
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6345
24
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6346
24
#line 6347 "/src/php-src/Zend/zend_language_parser.c"
6347
24
    break;
6348
6349
0
  case 259:
6350
0
#line 781 "/src/php-src/Zend/zend_language_parser.y"
6351
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-6].ast),
6352
0
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6353
0
#line 6354 "/src/php-src/Zend/zend_language_parser.c"
6354
0
    break;
6355
6356
0
  case 260:
6357
0
#line 786 "/src/php-src/Zend/zend_language_parser.y"
6358
0
                                                     { (yyval.ast) = (yyvsp[-2].ast); }
6359
0
#line 6360 "/src/php-src/Zend/zend_language_parser.c"
6360
0
    break;
6361
6362
7
  case 261:
6363
7
#line 788 "/src/php-src/Zend/zend_language_parser.y"
6364
7
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6365
7
            zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[-2].ast))); }
6366
7
#line 6367 "/src/php-src/Zend/zend_language_parser.c"
6367
7
    break;
6368
6369
938
  case 262:
6370
938
#line 793 "/src/php-src/Zend/zend_language_parser.y"
6371
938
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6372
938
#line 6373 "/src/php-src/Zend/zend_language_parser.c"
6373
938
    break;
6374
6375
1.55k
  case 263:
6376
1.55k
#line 794 "/src/php-src/Zend/zend_language_parser.y"
6377
1.55k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_PARAM_LIST); }
6378
1.55k
#line 6379 "/src/php-src/Zend/zend_language_parser.c"
6379
1.55k
    break;
6380
6381
938
  case 264:
6382
938
#line 800 "/src/php-src/Zend/zend_language_parser.y"
6383
938
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PARAM_LIST, (yyvsp[0].ast)); }
6384
938
#line 6385 "/src/php-src/Zend/zend_language_parser.c"
6385
938
    break;
6386
6387
91
  case 265:
6388
91
#line 802 "/src/php-src/Zend/zend_language_parser.y"
6389
91
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6390
91
#line 6391 "/src/php-src/Zend/zend_language_parser.c"
6391
91
    break;
6392
6393
0
  case 266:
6394
0
#line 806 "/src/php-src/Zend/zend_language_parser.y"
6395
0
                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6396
0
#line 6397 "/src/php-src/Zend/zend_language_parser.c"
6397
0
    break;
6398
6399
1.02k
  case 267:
6400
1.02k
#line 807 "/src/php-src/Zend/zend_language_parser.y"
6401
1.02k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6402
1.02k
#line 6403 "/src/php-src/Zend/zend_language_parser.c"
6403
1.02k
    break;
6404
6405
1.03k
  case 268:
6406
1.03k
#line 812 "/src/php-src/Zend/zend_language_parser.y"
6407
1.03k
                        { (yyval.num) = 0; }
6408
1.03k
#line 6409 "/src/php-src/Zend/zend_language_parser.c"
6409
1.03k
    break;
6410
6411
0
  case 269:
6412
0
#line 814 "/src/php-src/Zend/zend_language_parser.y"
6413
0
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CPP, (yyvsp[0].ast));
6414
0
        if (!(yyval.num)) { YYERROR; } }
6415
0
#line 6416 "/src/php-src/Zend/zend_language_parser.c"
6416
0
    break;
6417
6418
756
  case 270:
6419
756
#line 821 "/src/php-src/Zend/zend_language_parser.y"
6420
756
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_PARAM, (yyvsp[-6].num) | (yyvsp[-4].num) | (yyvsp[-3].num), (yyvsp[-5].ast), (yyvsp[-2].ast), NULL,
6421
756
          NULL, (yyvsp[-1].str) ? zend_ast_create_zval_from_str((yyvsp[-1].str)) : NULL, (yyvsp[0].ast)); }
6422
756
#line 6423 "/src/php-src/Zend/zend_language_parser.c"
6423
756
    break;
6424
6425
273
  case 271:
6426
273
#line 825 "/src/php-src/Zend/zend_language_parser.y"
6427
273
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_PARAM, (yyvsp[-8].num) | (yyvsp[-6].num) | (yyvsp[-5].num), (yyvsp[-7].ast), (yyvsp[-4].ast), (yyvsp[-1].ast),
6428
273
          NULL, (yyvsp[-3].str) ? zend_ast_create_zval_from_str((yyvsp[-3].str)) : NULL, (yyvsp[0].ast)); }
6429
273
#line 6430 "/src/php-src/Zend/zend_language_parser.c"
6430
273
    break;
6431
6432
841
  case 272:
6433
841
#line 830 "/src/php-src/Zend/zend_language_parser.y"
6434
841
                        { (yyval.ast) = NULL; }
6435
841
#line 6436 "/src/php-src/Zend/zend_language_parser.c"
6436
841
    break;
6437
6438
644
  case 273:
6439
644
#line 831 "/src/php-src/Zend/zend_language_parser.y"
6440
644
                                                { (yyval.ast) = (yyvsp[0].ast); }
6441
644
#line 6442 "/src/php-src/Zend/zend_language_parser.c"
6442
644
    break;
6443
6444
79
  case 274:
6445
79
#line 835 "/src/php-src/Zend/zend_language_parser.y"
6446
79
                                                { (yyval.ast) = (yyvsp[0].ast); }
6447
79
#line 6448 "/src/php-src/Zend/zend_language_parser.c"
6448
79
    break;
6449
6450
42
  case 275:
6451
42
#line 836 "/src/php-src/Zend/zend_language_parser.y"
6452
42
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6453
42
#line 6454 "/src/php-src/Zend/zend_language_parser.c"
6454
42
    break;
6455
6456
0
  case 276:
6457
0
#line 837 "/src/php-src/Zend/zend_language_parser.y"
6458
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
6459
0
#line 6460 "/src/php-src/Zend/zend_language_parser.c"
6460
0
    break;
6461
6462
0
  case 277:
6463
0
#line 838 "/src/php-src/Zend/zend_language_parser.y"
6464
0
                                        { (yyval.ast) = (yyvsp[0].ast); }
6465
0
#line 6466 "/src/php-src/Zend/zend_language_parser.c"
6466
0
    break;
6467
6468
116
  case 278:
6469
116
#line 842 "/src/php-src/Zend/zend_language_parser.y"
6470
116
                                        { (yyval.ast) = (yyvsp[0].ast); }
6471
116
#line 6472 "/src/php-src/Zend/zend_language_parser.c"
6472
116
    break;
6473
6474
5
  case 279:
6475
5
#line 843 "/src/php-src/Zend/zend_language_parser.y"
6476
5
                                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_STATIC); }
6477
5
#line 6478 "/src/php-src/Zend/zend_language_parser.c"
6478
5
    break;
6479
6480
0
  case 280:
6481
0
#line 847 "/src/php-src/Zend/zend_language_parser.y"
6482
0
                     { (yyval.ast) = (yyvsp[0].ast); }
6483
0
#line 6484 "/src/php-src/Zend/zend_language_parser.c"
6484
0
    break;
6485
6486
0
  case 281:
6487
0
#line 848 "/src/php-src/Zend/zend_language_parser.y"
6488
0
                                           { (yyval.ast) = (yyvsp[-1].ast); }
6489
0
#line 6490 "/src/php-src/Zend/zend_language_parser.c"
6490
0
    break;
6491
6492
0
  case 282:
6493
0
#line 853 "/src/php-src/Zend/zend_language_parser.y"
6494
0
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6495
0
#line 6496 "/src/php-src/Zend/zend_language_parser.c"
6496
0
    break;
6497
6498
0
  case 283:
6499
0
#line 855 "/src/php-src/Zend/zend_language_parser.y"
6500
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6501
0
#line 6502 "/src/php-src/Zend/zend_language_parser.c"
6502
0
    break;
6503
6504
0
  case 284:
6505
0
#line 859 "/src/php-src/Zend/zend_language_parser.y"
6506
0
                                                                          { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6507
0
#line 6508 "/src/php-src/Zend/zend_language_parser.c"
6508
0
    break;
6509
6510
0
  case 285:
6511
0
#line 860 "/src/php-src/Zend/zend_language_parser.y"
6512
0
                                                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6513
0
#line 6514 "/src/php-src/Zend/zend_language_parser.c"
6514
0
    break;
6515
6516
602
  case 286:
6517
602
#line 867 "/src/php-src/Zend/zend_language_parser.y"
6518
602
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6519
602
#line 6520 "/src/php-src/Zend/zend_language_parser.c"
6520
602
    break;
6521
6522
37
  case 287:
6523
37
#line 868 "/src/php-src/Zend/zend_language_parser.y"
6524
37
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6525
37
#line 6526 "/src/php-src/Zend/zend_language_parser.c"
6526
37
    break;
6527
6528
5
  case 288:
6529
5
#line 869 "/src/php-src/Zend/zend_language_parser.y"
6530
5
                                                { (yyval.ast) = (yyvsp[0].ast); }
6531
5
#line 6532 "/src/php-src/Zend/zend_language_parser.c"
6532
5
    break;
6533
6534
0
  case 289:
6535
0
#line 870 "/src/php-src/Zend/zend_language_parser.y"
6536
0
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6537
0
#line 6538 "/src/php-src/Zend/zend_language_parser.c"
6538
0
    break;
6539
6540
52
  case 290:
6541
52
#line 874 "/src/php-src/Zend/zend_language_parser.y"
6542
52
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_ARRAY); }
6543
52
#line 6544 "/src/php-src/Zend/zend_language_parser.c"
6544
52
    break;
6545
6546
42
  case 291:
6547
42
#line 875 "/src/php-src/Zend/zend_language_parser.y"
6548
42
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_CALLABLE); }
6549
42
#line 6550 "/src/php-src/Zend/zend_language_parser.c"
6550
42
    break;
6551
6552
671
  case 292:
6553
671
#line 876 "/src/php-src/Zend/zend_language_parser.y"
6554
671
                                { (yyval.ast) = (yyvsp[0].ast); }
6555
671
#line 6556 "/src/php-src/Zend/zend_language_parser.c"
6556
671
    break;
6557
6558
10
  case 293:
6559
10
#line 880 "/src/php-src/Zend/zend_language_parser.y"
6560
10
                                    { (yyval.ast) = (yyvsp[0].ast); }
6561
10
#line 6562 "/src/php-src/Zend/zend_language_parser.c"
6562
10
    break;
6563
6564
0
  case 294:
6565
0
#line 881 "/src/php-src/Zend/zend_language_parser.y"
6566
0
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
6567
0
#line 6568 "/src/php-src/Zend/zend_language_parser.c"
6568
0
    break;
6569
6570
5
  case 295:
6571
5
#line 886 "/src/php-src/Zend/zend_language_parser.y"
6572
5
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6573
5
#line 6574 "/src/php-src/Zend/zend_language_parser.c"
6574
5
    break;
6575
6576
0
  case 296:
6577
0
#line 888 "/src/php-src/Zend/zend_language_parser.y"
6578
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6579
0
#line 6580 "/src/php-src/Zend/zend_language_parser.c"
6580
0
    break;
6581
6582
0
  case 297:
6583
0
#line 893 "/src/php-src/Zend/zend_language_parser.y"
6584
0
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6585
0
#line 6586 "/src/php-src/Zend/zend_language_parser.c"
6586
0
    break;
6587
6588
0
  case 298:
6589
0
#line 895 "/src/php-src/Zend/zend_language_parser.y"
6590
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6591
0
#line 6592 "/src/php-src/Zend/zend_language_parser.c"
6592
0
    break;
6593
6594
2.39k
  case 299:
6595
2.39k
#line 899 "/src/php-src/Zend/zend_language_parser.y"
6596
2.39k
                        { (yyval.ast) = NULL; }
6597
2.39k
#line 6598 "/src/php-src/Zend/zend_language_parser.c"
6598
2.39k
    break;
6599
6600
102
  case 300:
6601
102
#line 900 "/src/php-src/Zend/zend_language_parser.y"
6602
102
                                { (yyval.ast) = (yyvsp[0].ast); }
6603
102
#line 6604 "/src/php-src/Zend/zend_language_parser.c"
6604
102
    break;
6605
6606
965
  case 301:
6607
965
#line 904 "/src/php-src/Zend/zend_language_parser.y"
6608
965
                        { (yyval.ast) = zend_ast_create_arg_list(0, ZEND_AST_ARG_LIST); }
6609
965
#line 6610 "/src/php-src/Zend/zend_language_parser.c"
6610
965
    break;
6611
6612
12.6k
  case 302:
6613
12.6k
#line 905 "/src/php-src/Zend/zend_language_parser.y"
6614
12.6k
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
6615
12.6k
#line 6616 "/src/php-src/Zend/zend_language_parser.c"
6616
12.6k
    break;
6617
6618
12.8k
  case 303:
6619
12.8k
#line 910 "/src/php-src/Zend/zend_language_parser.y"
6620
12.8k
                        { (yyval.ast) = zend_ast_create_arg_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6621
12.8k
#line 6622 "/src/php-src/Zend/zend_language_parser.c"
6622
12.8k
    break;
6623
6624
7.41k
  case 304:
6625
7.41k
#line 912 "/src/php-src/Zend/zend_language_parser.y"
6626
7.41k
                        { (yyval.ast) = zend_ast_arg_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6627
7.41k
#line 6628 "/src/php-src/Zend/zend_language_parser.c"
6628
7.41k
    break;
6629
6630
0
  case 305:
6631
0
#line 925 "/src/php-src/Zend/zend_language_parser.y"
6632
0
                        { (yyval.ast) = zend_ast_create_arg_list(0, ZEND_AST_ARG_LIST); }
6633
0
#line 6634 "/src/php-src/Zend/zend_language_parser.c"
6634
0
    break;
6635
6636
0
  case 306:
6637
0
#line 926 "/src/php-src/Zend/zend_language_parser.y"
6638
0
                                                                     { (yyval.ast) = (yyvsp[-2].ast); }
6639
0
#line 6640 "/src/php-src/Zend/zend_language_parser.c"
6640
0
    break;
6641
6642
0
  case 307:
6643
0
#line 927 "/src/php-src/Zend/zend_language_parser.y"
6644
0
                                 { (yyval.ast) = zend_ast_create_arg_list(1, ZEND_AST_ARG_LIST, (yyvsp[-2].ast)); }
6645
0
#line 6646 "/src/php-src/Zend/zend_language_parser.c"
6646
0
    break;
6647
6648
0
  case 308:
6649
0
#line 932 "/src/php-src/Zend/zend_language_parser.y"
6650
0
                        { (yyval.ast) = zend_ast_create_arg_list(2, ZEND_AST_ARG_LIST, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6651
0
#line 6652 "/src/php-src/Zend/zend_language_parser.c"
6652
0
    break;
6653
6654
0
  case 309:
6655
0
#line 934 "/src/php-src/Zend/zend_language_parser.y"
6656
0
                        { (yyval.ast) = zend_ast_create_arg_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6657
0
#line 6658 "/src/php-src/Zend/zend_language_parser.c"
6658
0
    break;
6659
6660
0
  case 310:
6661
0
#line 936 "/src/php-src/Zend/zend_language_parser.y"
6662
0
                        { (yyval.ast) = zend_ast_arg_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6663
0
#line 6664 "/src/php-src/Zend/zend_language_parser.c"
6664
0
    break;
6665
6666
17
  case 311:
6667
17
#line 941 "/src/php-src/Zend/zend_language_parser.y"
6668
17
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMED_ARG, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6669
17
#line 6670 "/src/php-src/Zend/zend_language_parser.c"
6670
17
    break;
6671
6672
0
  case 312:
6673
0
#line 943 "/src/php-src/Zend/zend_language_parser.y"
6674
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_PLACEHOLDER_ARG, ZEND_PLACEHOLDER_VARIADIC); }
6675
0
#line 6676 "/src/php-src/Zend/zend_language_parser.c"
6676
0
    break;
6677
6678
0
  case 313:
6679
0
#line 945 "/src/php-src/Zend/zend_language_parser.y"
6680
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PLACEHOLDER_ARG); }
6681
0
#line 6682 "/src/php-src/Zend/zend_language_parser.c"
6682
0
    break;
6683
6684
0
  case 314:
6685
0
#line 947 "/src/php-src/Zend/zend_language_parser.y"
6686
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMED_ARG, (yyvsp[-2].ast), zend_ast_create(ZEND_AST_PLACEHOLDER_ARG)); }
6687
0
#line 6688 "/src/php-src/Zend/zend_language_parser.c"
6688
0
    break;
6689
6690
6
  case 315:
6691
6
#line 949 "/src/php-src/Zend/zend_language_parser.y"
6692
6
                        { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
6693
6
#line 6694 "/src/php-src/Zend/zend_language_parser.c"
6694
6
    break;
6695
6696
20.2k
  case 316:
6697
20.2k
#line 953 "/src/php-src/Zend/zend_language_parser.y"
6698
20.2k
                     { (yyval.ast) = (yyvsp[0].ast); }
6699
20.2k
#line 6700 "/src/php-src/Zend/zend_language_parser.c"
6700
20.2k
    break;
6701
6702
23
  case 317:
6703
23
#line 954 "/src/php-src/Zend/zend_language_parser.y"
6704
23
                                 { (yyval.ast) = (yyvsp[0].ast); }
6705
23
#line 6706 "/src/php-src/Zend/zend_language_parser.c"
6706
23
    break;
6707
6708
6
  case 318:
6709
6
#line 958 "/src/php-src/Zend/zend_language_parser.y"
6710
6
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6711
6
#line 6712 "/src/php-src/Zend/zend_language_parser.c"
6712
6
    break;
6713
6714
7
  case 319:
6715
7
#line 959 "/src/php-src/Zend/zend_language_parser.y"
6716
7
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6717
7
#line 6718 "/src/php-src/Zend/zend_language_parser.c"
6718
7
    break;
6719
6720
13
  case 320:
6721
13
#line 964 "/src/php-src/Zend/zend_language_parser.y"
6722
13
                { (yyval.ast) = zend_ast_create(ZEND_AST_GLOBAL, zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast))); }
6723
13
#line 6724 "/src/php-src/Zend/zend_language_parser.c"
6724
13
    break;
6725
6726
5
  case 321:
6727
5
#line 969 "/src/php-src/Zend/zend_language_parser.y"
6728
5
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6729
5
#line 6730 "/src/php-src/Zend/zend_language_parser.c"
6730
5
    break;
6731
6732
19
  case 322:
6733
19
#line 970 "/src/php-src/Zend/zend_language_parser.y"
6734
19
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6735
19
#line 6736 "/src/php-src/Zend/zend_language_parser.c"
6736
19
    break;
6737
6738
19
  case 323:
6739
19
#line 974 "/src/php-src/Zend/zend_language_parser.y"
6740
19
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[0].ast), NULL); }
6741
19
#line 6742 "/src/php-src/Zend/zend_language_parser.c"
6742
19
    break;
6743
6744
5
  case 324:
6745
5
#line 975 "/src/php-src/Zend/zend_language_parser.y"
6746
5
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6747
5
#line 6748 "/src/php-src/Zend/zend_language_parser.c"
6748
5
    break;
6749
6750
1.90k
  case 325:
6751
1.90k
#line 980 "/src/php-src/Zend/zend_language_parser.y"
6752
1.90k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6753
1.90k
#line 6754 "/src/php-src/Zend/zend_language_parser.c"
6754
1.90k
    break;
6755
6756
998
  case 326:
6757
998
#line 982 "/src/php-src/Zend/zend_language_parser.y"
6758
998
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
6759
998
#line 6760 "/src/php-src/Zend/zend_language_parser.c"
6760
998
    break;
6761
6762
388
  case 327:
6763
388
#line 988 "/src/php-src/Zend/zend_language_parser.y"
6764
388
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_GROUP, (yyvsp[-2].ast), (yyvsp[-1].ast), NULL);
6765
388
        (yyval.ast)->attr = (yyvsp[-3].num); }
6766
388
#line 6767 "/src/php-src/Zend/zend_language_parser.c"
6767
388
    break;
6768
6769
67
  case 328:
6770
67
#line 991 "/src/php-src/Zend/zend_language_parser.y"
6771
67
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_GROUP, (yyvsp[-1].ast), zend_ast_create_list(1, ZEND_AST_PROP_DECL, (yyvsp[0].ast)), NULL);
6772
67
        (yyval.ast)->attr = (yyvsp[-2].num); }
6773
67
#line 6774 "/src/php-src/Zend/zend_language_parser.c"
6774
67
    break;
6775
6776
204
  case 329:
6777
204
#line 994 "/src/php-src/Zend/zend_language_parser.y"
6778
204
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, NULL);
6779
204
        (yyval.ast)->attr = (yyvsp[-3].num); }
6780
204
#line 6781 "/src/php-src/Zend/zend_language_parser.c"
6781
204
    break;
6782
6783
1
  case 330:
6784
1
#line 997 "/src/php-src/Zend/zend_language_parser.y"
6785
1
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, (yyvsp[-2].ast));
6786
1
        (yyval.ast)->attr = (yyvsp[-4].num); }
6787
1
#line 6788 "/src/php-src/Zend/zend_language_parser.c"
6788
1
    break;
6789
6790
1.17k
  case 331:
6791
1.17k
#line 1001 "/src/php-src/Zend/zend_language_parser.y"
6792
1.17k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_METHOD, (yyvsp[-9].num) | (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-10].num), (yyvsp[-7].str),
6793
1.17k
          zend_ast_get_str((yyvsp[-8].ast)), (yyvsp[-5].ast), NULL, (yyvsp[-1].ast), (yyvsp[-3].ast), NULL); CG(extra_fn_flags) = (yyvsp[-2].num); }
6794
1.17k
#line 6795 "/src/php-src/Zend/zend_language_parser.c"
6795
1.17k
    break;
6796
6797
37
  case 332:
6798
37
#line 1003 "/src/php-src/Zend/zend_language_parser.y"
6799
37
                          { (yyval.ast) = (yyvsp[0].ast); }
6800
37
#line 6801 "/src/php-src/Zend/zend_language_parser.c"
6801
37
    break;
6802
6803
1.86k
  case 333:
6804
1.86k
#line 1007 "/src/php-src/Zend/zend_language_parser.y"
6805
1.86k
                                           { (yyval.ast) = (yyvsp[0].ast); }
6806
1.86k
#line 6807 "/src/php-src/Zend/zend_language_parser.c"
6807
1.86k
    break;
6808
6809
6
  case 334:
6810
6
#line 1008 "/src/php-src/Zend/zend_language_parser.y"
6811
6
                                                      { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6812
6
#line 6813 "/src/php-src/Zend/zend_language_parser.c"
6813
6
    break;
6814
6815
38
  case 335:
6816
38
#line 1010 "/src/php-src/Zend/zend_language_parser.y"
6817
38
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_TRAIT, (yyvsp[-1].ast), (yyvsp[0].ast)); }
6818
38
#line 6819 "/src/php-src/Zend/zend_language_parser.c"
6819
38
    break;
6820
6821
65
  case 336:
6822
65
#line 1014 "/src/php-src/Zend/zend_language_parser.y"
6823
65
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
6824
65
#line 6825 "/src/php-src/Zend/zend_language_parser.c"
6825
65
    break;
6826
6827
10
  case 337:
6828
10
#line 1015 "/src/php-src/Zend/zend_language_parser.y"
6829
10
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6830
10
#line 6831 "/src/php-src/Zend/zend_language_parser.c"
6831
10
    break;
6832
6833
19
  case 338:
6834
19
#line 1019 "/src/php-src/Zend/zend_language_parser.y"
6835
19
                                                                                { (yyval.ast) = NULL; }
6836
19
#line 6837 "/src/php-src/Zend/zend_language_parser.c"
6837
19
    break;
6838
6839
0
  case 339:
6840
0
#line 1020 "/src/php-src/Zend/zend_language_parser.y"
6841
0
                                                                        { (yyval.ast) = NULL; }
6842
0
#line 6843 "/src/php-src/Zend/zend_language_parser.c"
6843
0
    break;
6844
6845
19
  case 340:
6846
19
#line 1021 "/src/php-src/Zend/zend_language_parser.y"
6847
19
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6848
19
#line 6849 "/src/php-src/Zend/zend_language_parser.c"
6849
19
    break;
6850
6851
19
  case 341:
6852
19
#line 1026 "/src/php-src/Zend/zend_language_parser.y"
6853
19
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_TRAIT_ADAPTATIONS, (yyvsp[0].ast)); }
6854
19
#line 6855 "/src/php-src/Zend/zend_language_parser.c"
6855
19
    break;
6856
6857
15
  case 342:
6858
15
#line 1028 "/src/php-src/Zend/zend_language_parser.y"
6859
15
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6860
15
#line 6861 "/src/php-src/Zend/zend_language_parser.c"
6861
15
    break;
6862
6863
5
  case 343:
6864
5
#line 1032 "/src/php-src/Zend/zend_language_parser.y"
6865
5
                                        { (yyval.ast) = (yyvsp[-1].ast); }
6866
5
#line 6867 "/src/php-src/Zend/zend_language_parser.c"
6867
5
    break;
6868
6869
29
  case 344:
6870
29
#line 1033 "/src/php-src/Zend/zend_language_parser.y"
6871
29
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6872
29
#line 6873 "/src/php-src/Zend/zend_language_parser.c"
6873
29
    break;
6874
6875
5
  case 345:
6876
5
#line 1038 "/src/php-src/Zend/zend_language_parser.y"
6877
5
                { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_PRECEDENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6878
5
#line 6879 "/src/php-src/Zend/zend_language_parser.c"
6879
5
    break;
6880
6881
19
  case 346:
6882
19
#line 1043 "/src/php-src/Zend/zend_language_parser.y"
6883
19
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6884
19
#line 6885 "/src/php-src/Zend/zend_language_parser.c"
6885
19
    break;
6886
6887
0
  case 347:
6888
0
#line 1045 "/src/php-src/Zend/zend_language_parser.y"
6889
0
                        { zval zv;
6890
0
        if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
6891
0
        (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), zend_ast_create_zval(&zv)); }
6892
0
#line 6893 "/src/php-src/Zend/zend_language_parser.c"
6893
0
    break;
6894
6895
5
  case 348:
6896
5
#line 1049 "/src/php-src/Zend/zend_language_parser.y"
6897
5
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[-1].num));
6898
5
        (yyval.ast) = zend_ast_create_ex(ZEND_AST_TRAIT_ALIAS, modifiers, (yyvsp[-3].ast), (yyvsp[0].ast));
6899
        /* identifier nonterminal can cause allocations, so we need to free the node */
6900
5
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6901
5
#line 6902 "/src/php-src/Zend/zend_language_parser.c"
6902
5
    break;
6903
6904
5
  case 349:
6905
5
#line 1054 "/src/php-src/Zend/zend_language_parser.y"
6906
5
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].num));
6907
5
        (yyval.ast) = zend_ast_create_ex(ZEND_AST_TRAIT_ALIAS, modifiers, (yyvsp[-2].ast), NULL);
6908
        /* identifier nonterminal can cause allocations, so we need to free the node */
6909
5
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6910
5
#line 6911 "/src/php-src/Zend/zend_language_parser.c"
6911
5
    break;
6912
6913
10
  case 350:
6914
10
#line 1062 "/src/php-src/Zend/zend_language_parser.y"
6915
10
                        { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_REFERENCE, NULL, (yyvsp[0].ast)); }
6916
10
#line 6917 "/src/php-src/Zend/zend_language_parser.c"
6917
10
    break;
6918
6919
19
  case 351:
6920
19
#line 1063 "/src/php-src/Zend/zend_language_parser.y"
6921
19
                                                { (yyval.ast) = (yyvsp[0].ast); }
6922
19
#line 6923 "/src/php-src/Zend/zend_language_parser.c"
6923
19
    break;
6924
6925
24
  case 352:
6926
24
#line 1068 "/src/php-src/Zend/zend_language_parser.y"
6927
24
                { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_REFERENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6928
24
#line 6929 "/src/php-src/Zend/zend_language_parser.c"
6929
24
    break;
6930
6931
73
  case 353:
6932
73
#line 1072 "/src/php-src/Zend/zend_language_parser.y"
6933
73
                                                        { (yyval.ast) = NULL; }
6934
73
#line 6935 "/src/php-src/Zend/zend_language_parser.c"
6935
73
    break;
6936
6937
1.09k
  case 354:
6938
1.09k
#line 1073 "/src/php-src/Zend/zend_language_parser.y"
6939
1.09k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6940
1.09k
#line 6941 "/src/php-src/Zend/zend_language_parser.c"
6941
1.09k
    break;
6942
6943
379
  case 355:
6944
379
#line 1078 "/src/php-src/Zend/zend_language_parser.y"
6945
379
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY, (yyvsp[0].ast));
6946
379
        if (!(yyval.num)) { YYERROR; } }
6947
378
#line 6948 "/src/php-src/Zend/zend_language_parser.c"
6948
378
    break;
6949
6950
378
  case 356:
6951
77
#line 1081 "/src/php-src/Zend/zend_language_parser.y"
6952
77
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6953
77
#line 6954 "/src/php-src/Zend/zend_language_parser.c"
6954
77
    break;
6955
6956
198
  case 357:
6957
198
#line 1086 "/src/php-src/Zend/zend_language_parser.y"
6958
198
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6959
198
#line 6960 "/src/php-src/Zend/zend_language_parser.c"
6960
198
    break;
6961
6962
978
  case 358:
6963
978
#line 1088 "/src/php-src/Zend/zend_language_parser.y"
6964
978
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].ast));
6965
978
        if (!(yyval.num)) { YYERROR; }
6966
978
        if (!((yyval.num) & ZEND_ACC_PPP_MASK)) { (yyval.num) |= ZEND_ACC_PUBLIC; } }
6967
0
#line 6968 "/src/php-src/Zend/zend_language_parser.c"
6968
0
    break;
6969
6970
200
  case 359:
6971
200
#line 1095 "/src/php-src/Zend/zend_language_parser.y"
6972
200
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6973
200
#line 6974 "/src/php-src/Zend/zend_language_parser.c"
6974
200
    break;
6975
6976
7
  case 360:
6977
7
#line 1097 "/src/php-src/Zend/zend_language_parser.y"
6978
7
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CONSTANT, (yyvsp[0].ast));
6979
7
        if (!(yyval.num)) { YYERROR; }
6980
7
        if (!((yyval.num) & ZEND_ACC_PPP_MASK)) { (yyval.num) |= ZEND_ACC_PUBLIC; } }
6981
0
#line 6982 "/src/php-src/Zend/zend_language_parser.c"
6982
0
    break;
6983
6984
1.36k
  case 361:
6985
1.36k
#line 1104 "/src/php-src/Zend/zend_language_parser.y"
6986
1.36k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MODIFIER_LIST, zend_ast_create_zval_from_long((yyvsp[0].num))); }
6987
1.36k
#line 6988 "/src/php-src/Zend/zend_language_parser.c"
6988
1.36k
    break;
6989
6990
123
  case 362:
6991
123
#line 1106 "/src/php-src/Zend/zend_language_parser.y"
6992
123
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), zend_ast_create_zval_from_long((yyvsp[0].num))); }
6993
123
#line 6994 "/src/php-src/Zend/zend_language_parser.c"
6994
123
    break;
6995
6996
1.00k
  case 363:
6997
1.00k
#line 1110 "/src/php-src/Zend/zend_language_parser.y"
6998
1.00k
                                                        { (yyval.num) = T_PUBLIC; }
6999
1.00k
#line 7000 "/src/php-src/Zend/zend_language_parser.c"
7000
1.00k
    break;
7001
7002
29
  case 364:
7003
29
#line 1111 "/src/php-src/Zend/zend_language_parser.y"
7004
29
                                                        { (yyval.num) = T_PROTECTED; }
7005
29
#line 7006 "/src/php-src/Zend/zend_language_parser.c"
7006
29
    break;
7007
7008
46
  case 365:
7009
46
#line 1112 "/src/php-src/Zend/zend_language_parser.y"
7010
46
                                                        { (yyval.num) = T_PRIVATE; }
7011
46
#line 7012 "/src/php-src/Zend/zend_language_parser.c"
7012
46
    break;
7013
7014
0
  case 366:
7015
0
#line 1113 "/src/php-src/Zend/zend_language_parser.y"
7016
0
                                                { (yyval.num) = T_PUBLIC_SET; }
7017
0
#line 7018 "/src/php-src/Zend/zend_language_parser.c"
7018
0
    break;
7019
7020
34
  case 367:
7021
34
#line 1114 "/src/php-src/Zend/zend_language_parser.y"
7022
34
                                                { (yyval.num) = T_PROTECTED_SET; }
7023
34
#line 7024 "/src/php-src/Zend/zend_language_parser.c"
7024
34
    break;
7025
7026
0
  case 368:
7027
0
#line 1115 "/src/php-src/Zend/zend_language_parser.y"
7028
0
                                                { (yyval.num) = T_PRIVATE_SET; }
7029
0
#line 7030 "/src/php-src/Zend/zend_language_parser.c"
7030
0
    break;
7031
7032
353
  case 369:
7033
353
#line 1116 "/src/php-src/Zend/zend_language_parser.y"
7034
353
                                                        { (yyval.num) = T_STATIC; }
7035
353
#line 7036 "/src/php-src/Zend/zend_language_parser.c"
7036
353
    break;
7037
7038
23
  case 370:
7039
23
#line 1117 "/src/php-src/Zend/zend_language_parser.y"
7040
23
                                                        { (yyval.num) = T_ABSTRACT; }
7041
23
#line 7042 "/src/php-src/Zend/zend_language_parser.c"
7042
23
    break;
7043
7044
6
  case 371:
7045
6
#line 1118 "/src/php-src/Zend/zend_language_parser.y"
7046
6
                                                        { (yyval.num) = T_FINAL; }
7047
6
#line 7048 "/src/php-src/Zend/zend_language_parser.c"
7048
6
    break;
7049
7050
1
  case 372:
7051
1
#line 1119 "/src/php-src/Zend/zend_language_parser.y"
7052
1
                                                        { (yyval.num) = T_READONLY; }
7053
1
#line 7054 "/src/php-src/Zend/zend_language_parser.c"
7054
1
    break;
7055
7056
5
  case 373:
7057
5
#line 1123 "/src/php-src/Zend/zend_language_parser.y"
7058
5
                                           { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7059
5
#line 7060 "/src/php-src/Zend/zend_language_parser.c"
7060
5
    break;
7061
7062
388
  case 374:
7063
388
#line 1124 "/src/php-src/Zend/zend_language_parser.y"
7064
388
                         { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PROP_DECL, (yyvsp[0].ast)); }
7065
388
#line 7066 "/src/php-src/Zend/zend_language_parser.c"
7066
388
    break;
7067
7068
36
  case 375:
7069
36
#line 1129 "/src/php-src/Zend/zend_language_parser.y"
7070
36
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_ELEM, (yyvsp[-1].ast), NULL, ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL), NULL); }
7071
36
#line 7072 "/src/php-src/Zend/zend_language_parser.c"
7072
36
    break;
7073
7074
357
  case 376:
7075
357
#line 1131 "/src/php-src/Zend/zend_language_parser.y"
7076
357
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_ELEM, (yyvsp[-3].ast), (yyvsp[-1].ast), ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL), NULL); }
7077
357
#line 7078 "/src/php-src/Zend/zend_language_parser.c"
7078
357
    break;
7079
7080
51
  case 377:
7081
51
#line 1136 "/src/php-src/Zend/zend_language_parser.y"
7082
51
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_ELEM, (yyvsp[-4].ast), NULL, ((yyvsp[-3].str) ? zend_ast_create_zval_from_str((yyvsp[-3].str)) : NULL), (yyvsp[-1].ast)); }
7083
51
#line 7084 "/src/php-src/Zend/zend_language_parser.c"
7084
51
    break;
7085
7086
16
  case 378:
7087
16
#line 1138 "/src/php-src/Zend/zend_language_parser.y"
7088
16
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_ELEM, (yyvsp[-6].ast), (yyvsp[-4].ast), ((yyvsp[-3].str) ? zend_ast_create_zval_from_str((yyvsp[-3].str)) : NULL), (yyvsp[-1].ast)); }
7089
16
#line 7090 "/src/php-src/Zend/zend_language_parser.c"
7090
16
    break;
7091
7092
67
  case 379:
7093
67
#line 1142 "/src/php-src/Zend/zend_language_parser.y"
7094
67
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
7095
67
#line 7096 "/src/php-src/Zend/zend_language_parser.c"
7096
67
    break;
7097
7098
108
  case 380:
7099
108
#line 1143 "/src/php-src/Zend/zend_language_parser.y"
7100
108
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
7101
108
#line 7102 "/src/php-src/Zend/zend_language_parser.c"
7102
108
    break;
7103
7104
0
  case 381:
7105
0
#line 1144 "/src/php-src/Zend/zend_language_parser.y"
7106
0
                                                            {
7107
0
      (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)));
7108
0
    }
7109
0
#line 7110 "/src/php-src/Zend/zend_language_parser.c"
7110
0
    break;
7111
7112
1.02k
  case 382:
7113
1.02k
#line 1150 "/src/php-src/Zend/zend_language_parser.y"
7114
1.02k
                        { (yyval.ast) = NULL; }
7115
1.02k
#line 7116 "/src/php-src/Zend/zend_language_parser.c"
7116
1.02k
    break;
7117
7118
0
  case 383:
7119
0
#line 1151 "/src/php-src/Zend/zend_language_parser.y"
7120
0
                                                { (yyval.ast) = (yyvsp[-1].ast); }
7121
0
#line 7122 "/src/php-src/Zend/zend_language_parser.c"
7122
0
    break;
7123
7124
108
  case 384:
7125
108
#line 1155 "/src/php-src/Zend/zend_language_parser.y"
7126
108
                       { (yyval.num) = 0; }
7127
108
#line 7128 "/src/php-src/Zend/zend_language_parser.c"
7128
108
    break;
7129
7130
0
  case 385:
7131
0
#line 1156 "/src/php-src/Zend/zend_language_parser.y"
7132
0
                                           {
7133
0
      (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY_HOOK, (yyvsp[0].ast));
7134
0
      if (!(yyval.num)) { YYERROR; }
7135
0
    }
7136
0
#line 7137 "/src/php-src/Zend/zend_language_parser.c"
7137
0
    break;
7138
7139
108
  case 386:
7140
108
#line 1164 "/src/php-src/Zend/zend_language_parser.y"
7141
108
                                   { (yyval.num) = CG(zend_lineno); }
7142
108
#line 7143 "/src/php-src/Zend/zend_language_parser.c"
7143
108
    break;
7144
7145
108
  case 387:
7146
108
#line 1165 "/src/php-src/Zend/zend_language_parser.y"
7147
108
                                                                                           {
7148
108
      (yyval.ast) = zend_ast_create_decl(
7149
108
        ZEND_AST_PROPERTY_HOOK, (yyvsp[-8].num) | (yyvsp[-7].num) | (yyvsp[0].num), (yyvsp[-4].num), (yyvsp[-5].str), zend_ast_get_str((yyvsp[-6].ast)),
7150
108
        (yyvsp[-3].ast), NULL, (yyvsp[-1].ast), NULL, NULL);
7151
108
      CG(extra_fn_flags) = (yyvsp[-2].num);
7152
108
    }
7153
108
#line 7154 "/src/php-src/Zend/zend_language_parser.c"
7154
108
    break;
7155
7156
1
  case 388:
7157
1
#line 1174 "/src/php-src/Zend/zend_language_parser.y"
7158
1
                    { (yyval.ast) = NULL; }
7159
1
#line 7160 "/src/php-src/Zend/zend_language_parser.c"
7160
1
    break;
7161
7162
94
  case 389:
7163
94
#line 1175 "/src/php-src/Zend/zend_language_parser.y"
7164
94
                                             { (yyval.ast) = (yyvsp[-1].ast); }
7165
94
#line 7166 "/src/php-src/Zend/zend_language_parser.c"
7166
94
    break;
7167
7168
13
  case 390:
7169
13
#line 1177 "/src/php-src/Zend/zend_language_parser.y"
7170
13
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROPERTY_HOOK_SHORT_BODY, (yyvsp[-1].ast)); }
7171
13
#line 7172 "/src/php-src/Zend/zend_language_parser.c"
7172
13
    break;
7173
7174
106
  case 391:
7175
106
#line 1181 "/src/php-src/Zend/zend_language_parser.y"
7176
106
                       { (yyval.ast) = NULL; }
7177
106
#line 7178 "/src/php-src/Zend/zend_language_parser.c"
7178
106
    break;
7179
7180
2
  case 392:
7181
2
#line 1182 "/src/php-src/Zend/zend_language_parser.y"
7182
2
                                       { (yyval.ast) = (yyvsp[-1].ast); }
7183
2
#line 7184 "/src/php-src/Zend/zend_language_parser.c"
7184
2
    break;
7185
7186
5
  case 393:
7187
5
#line 1186 "/src/php-src/Zend/zend_language_parser.y"
7188
5
                                                      { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7189
5
#line 7190 "/src/php-src/Zend/zend_language_parser.c"
7190
5
    break;
7191
7192
205
  case 394:
7193
205
#line 1187 "/src/php-src/Zend/zend_language_parser.y"
7194
205
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLASS_CONST_DECL, (yyvsp[0].ast)); }
7195
205
#line 7196 "/src/php-src/Zend/zend_language_parser.c"
7196
205
    break;
7197
7198
72
  case 395:
7199
72
#line 1191 "/src/php-src/Zend/zend_language_parser.y"
7200
72
                                                     { (yyval.ast) = zend_ast_create(ZEND_AST_CONST_ELEM, (yyvsp[-3].ast), (yyvsp[-1].ast), ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL)); }
7201
72
#line 7202 "/src/php-src/Zend/zend_language_parser.c"
7202
72
    break;
7203
7204
138
  case 396:
7205
138
#line 1192 "/src/php-src/Zend/zend_language_parser.y"
7206
138
                                                          {
7207
138
      zval zv;
7208
138
      if (zend_lex_tstring(&zv, (yyvsp[-3].ident)) == FAILURE) { YYABORT; }
7209
138
      (yyval.ast) = zend_ast_create(ZEND_AST_CONST_ELEM, zend_ast_create_zval(&zv), (yyvsp[-1].ast), ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL));
7210
138
    }
7211
0
#line 7212 "/src/php-src/Zend/zend_language_parser.c"
7212
0
    break;
7213
7214
247
  case 397:
7215
247
#line 1200 "/src/php-src/Zend/zend_language_parser.y"
7216
247
                                             { (yyval.ast) = zend_ast_create(ZEND_AST_CONST_ELEM, (yyvsp[-3].ast), (yyvsp[-1].ast), ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL)); }
7217
247
#line 7218 "/src/php-src/Zend/zend_language_parser.c"
7218
247
    break;
7219
7220
879
  case 398:
7221
879
#line 1204 "/src/php-src/Zend/zend_language_parser.y"
7222
879
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7223
879
#line 7224 "/src/php-src/Zend/zend_language_parser.c"
7224
879
    break;
7225
7226
4.53k
  case 399:
7227
4.53k
#line 1205 "/src/php-src/Zend/zend_language_parser.y"
7228
4.53k
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
7229
4.53k
#line 7230 "/src/php-src/Zend/zend_language_parser.c"
7230
4.53k
    break;
7231
7232
5.41k
  case 400:
7233
5.41k
#line 1208 "/src/php-src/Zend/zend_language_parser.y"
7234
5.41k
             { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
7235
5.41k
#line 7236 "/src/php-src/Zend/zend_language_parser.c"
7236
5.41k
    break;
7237
7238
8
  case 401:
7239
8
#line 1212 "/src/php-src/Zend/zend_language_parser.y"
7240
8
                                        { (yyval.ast) = NULL; }
7241
8
#line 7242 "/src/php-src/Zend/zend_language_parser.c"
7242
8
    break;
7243
7244
20
  case 402:
7245
20
#line 1213 "/src/php-src/Zend/zend_language_parser.y"
7246
20
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7247
20
#line 7248 "/src/php-src/Zend/zend_language_parser.c"
7248
20
    break;
7249
7250
894
  case 403:
7251
894
#line 1214 "/src/php-src/Zend/zend_language_parser.y"
7252
894
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7253
894
#line 7254 "/src/php-src/Zend/zend_language_parser.c"
7254
894
    break;
7255
7256
11
  case 404:
7257
11
#line 1218 "/src/php-src/Zend/zend_language_parser.y"
7258
11
                                        { (yyval.ast) = NULL; }
7259
11
#line 7260 "/src/php-src/Zend/zend_language_parser.c"
7260
11
    break;
7261
7262
1.77k
  case 405:
7263
1.77k
#line 1219 "/src/php-src/Zend/zend_language_parser.y"
7264
1.77k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7265
1.77k
#line 7266 "/src/php-src/Zend/zend_language_parser.c"
7266
1.77k
    break;
7267
7268
10
  case 406:
7269
10
#line 1223 "/src/php-src/Zend/zend_language_parser.y"
7270
10
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7271
10
#line 7272 "/src/php-src/Zend/zend_language_parser.c"
7272
10
    break;
7273
7274
0
  case 407:
7275
0
#line 1224 "/src/php-src/Zend/zend_language_parser.y"
7276
0
                                                         { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7277
0
#line 7278 "/src/php-src/Zend/zend_language_parser.c"
7278
0
    break;
7279
7280
0
  case 408:
7281
0
#line 1225 "/src/php-src/Zend/zend_language_parser.y"
7282
0
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7283
0
#line 7284 "/src/php-src/Zend/zend_language_parser.c"
7284
0
    break;
7285
7286
1.79k
  case 409:
7287
1.79k
#line 1226 "/src/php-src/Zend/zend_language_parser.y"
7288
1.79k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7289
1.79k
#line 7290 "/src/php-src/Zend/zend_language_parser.c"
7290
1.79k
    break;
7291
7292
6
  case 410:
7293
6
#line 1230 "/src/php-src/Zend/zend_language_parser.y"
7294
6
                                                           { (yyval.num) = CG(zend_lineno); }
7295
6
#line 7296 "/src/php-src/Zend/zend_language_parser.c"
7296
6
    break;
7297
7298
6
  case 411:
7299
6
#line 1231 "/src/php-src/Zend/zend_language_parser.y"
7300
6
                                                                                             {
7301
6
      zend_ast *decl = zend_ast_create_decl(
7302
6
        ZEND_AST_CLASS, ZEND_ACC_ANON_CLASS | (yyvsp[-9].num), (yyvsp[-7].num), (yyvsp[-3].str), NULL,
7303
6
        (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL);
7304
6
      (yyval.ast) = zend_ast_create(ZEND_AST_NEW, decl, (yyvsp[-6].ast));
7305
6
    }
7306
6
#line 7307 "/src/php-src/Zend/zend_language_parser.c"
7307
6
    break;
7308
7309
4.52k
  case 412:
7310
4.52k
#line 1241 "/src/php-src/Zend/zend_language_parser.y"
7311
4.52k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7312
4.52k
#line 7313 "/src/php-src/Zend/zend_language_parser.c"
7313
4.52k
    break;
7314
7315
6
  case 413:
7316
6
#line 1243 "/src/php-src/Zend/zend_language_parser.y"
7317
6
                        { (yyval.ast) = (yyvsp[0].ast); }
7318
6
#line 7319 "/src/php-src/Zend/zend_language_parser.c"
7319
6
    break;
7320
7321
0
  case 414:
7322
0
#line 1245 "/src/php-src/Zend/zend_language_parser.y"
7323
0
                        { zend_ast_with_attributes((yyvsp[0].ast)->child[0], (yyvsp[-1].ast)); (yyval.ast) = (yyvsp[0].ast); }
7324
0
#line 7325 "/src/php-src/Zend/zend_language_parser.c"
7325
0
    break;
7326
7327
3.02k
  case 415:
7328
3.02k
#line 1250 "/src/php-src/Zend/zend_language_parser.y"
7329
3.02k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[0].ast), zend_ast_create_list(0, ZEND_AST_ARG_LIST)); }
7330
3.02k
#line 7331 "/src/php-src/Zend/zend_language_parser.c"
7331
3.02k
    break;
7332
7333
33.5k
  case 416:
7334
33.5k
#line 1255 "/src/php-src/Zend/zend_language_parser.y"
7335
33.5k
                        { (yyval.ast) = (yyvsp[0].ast); }
7336
33.5k
#line 7337 "/src/php-src/Zend/zend_language_parser.c"
7337
33.5k
    break;
7338
7339
21
  case 417:
7340
21
#line 1257 "/src/php-src/Zend/zend_language_parser.y"
7341
21
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_LIST; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7342
21
#line 7343 "/src/php-src/Zend/zend_language_parser.c"
7343
21
    break;
7344
7345
14
  case 418:
7346
14
#line 1259 "/src/php-src/Zend/zend_language_parser.y"
7347
14
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7348
14
#line 7349 "/src/php-src/Zend/zend_language_parser.c"
7349
14
    break;
7350
7351
31.4k
  case 419:
7352
31.4k
#line 1261 "/src/php-src/Zend/zend_language_parser.y"
7353
31.4k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7354
31.4k
#line 7355 "/src/php-src/Zend/zend_language_parser.c"
7355
31.4k
    break;
7356
7357
384
  case 420:
7358
384
#line 1263 "/src/php-src/Zend/zend_language_parser.y"
7359
384
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_REF, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7360
384
#line 7361 "/src/php-src/Zend/zend_language_parser.c"
7361
384
    break;
7362
7363
0
  case 421:
7364
0
#line 1264 "/src/php-src/Zend/zend_language_parser.y"
7365
0
                                            {
7366
0
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_CLONE));
7367
0
      name->attr = ZEND_NAME_FQ;
7368
0
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7369
0
    }
7370
0
#line 7371 "/src/php-src/Zend/zend_language_parser.c"
7371
0
    break;
7372
7373
23
  case 422:
7374
23
#line 1269 "/src/php-src/Zend/zend_language_parser.y"
7375
23
                             {
7376
23
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_CLONE));
7377
23
      name->attr = ZEND_NAME_FQ;
7378
23
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, zend_ast_create_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)));
7379
23
    }
7380
23
#line 7381 "/src/php-src/Zend/zend_language_parser.c"
7381
23
    break;
7382
7383
37
  case 423:
7384
37
#line 1275 "/src/php-src/Zend/zend_language_parser.y"
7385
37
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7386
37
#line 7387 "/src/php-src/Zend/zend_language_parser.c"
7387
37
    break;
7388
7389
100
  case 424:
7390
100
#line 1277 "/src/php-src/Zend/zend_language_parser.y"
7391
100
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7392
100
#line 7393 "/src/php-src/Zend/zend_language_parser.c"
7393
100
    break;
7394
7395
503
  case 425:
7396
503
#line 1279 "/src/php-src/Zend/zend_language_parser.y"
7397
503
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7398
503
#line 7399 "/src/php-src/Zend/zend_language_parser.c"
7399
503
    break;
7400
7401
5
  case 426:
7402
5
#line 1281 "/src/php-src/Zend/zend_language_parser.y"
7403
5
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7404
5
#line 7405 "/src/php-src/Zend/zend_language_parser.c"
7405
5
    break;
7406
7407
13
  case 427:
7408
13
#line 1283 "/src/php-src/Zend/zend_language_parser.y"
7409
13
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7410
13
#line 7411 "/src/php-src/Zend/zend_language_parser.c"
7411
13
    break;
7412
7413
21.1k
  case 428:
7414
21.1k
#line 1285 "/src/php-src/Zend/zend_language_parser.y"
7415
21.1k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_CONCAT, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7416
21.1k
#line 7417 "/src/php-src/Zend/zend_language_parser.c"
7417
21.1k
    break;
7418
7419
6
  case 429:
7420
6
#line 1287 "/src/php-src/Zend/zend_language_parser.y"
7421
6
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7422
6
#line 7423 "/src/php-src/Zend/zend_language_parser.c"
7423
6
    break;
7424
7425
4.00k
  case 430:
7426
4.00k
#line 1289 "/src/php-src/Zend/zend_language_parser.y"
7427
4.00k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7428
4.00k
#line 7429 "/src/php-src/Zend/zend_language_parser.c"
7429
4.00k
    break;
7430
7431
27
  case 431:
7432
27
#line 1291 "/src/php-src/Zend/zend_language_parser.y"
7433
27
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7434
27
#line 7435 "/src/php-src/Zend/zend_language_parser.c"
7435
27
    break;
7436
7437
157
  case 432:
7438
157
#line 1293 "/src/php-src/Zend/zend_language_parser.y"
7439
157
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7440
157
#line 7441 "/src/php-src/Zend/zend_language_parser.c"
7441
157
    break;
7442
7443
41
  case 433:
7444
41
#line 1295 "/src/php-src/Zend/zend_language_parser.y"
7445
41
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7446
41
#line 7447 "/src/php-src/Zend/zend_language_parser.c"
7447
41
    break;
7448
7449
6
  case 434:
7450
6
#line 1297 "/src/php-src/Zend/zend_language_parser.y"
7451
6
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7452
6
#line 7453 "/src/php-src/Zend/zend_language_parser.c"
7453
6
    break;
7454
7455
4
  case 435:
7456
4
#line 1299 "/src/php-src/Zend/zend_language_parser.y"
7457
4
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7458
4
#line 7459 "/src/php-src/Zend/zend_language_parser.c"
7459
4
    break;
7460
7461
283
  case 436:
7462
283
#line 1300 "/src/php-src/Zend/zend_language_parser.y"
7463
283
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_INC, (yyvsp[-1].ast)); }
7464
283
#line 7465 "/src/php-src/Zend/zend_language_parser.c"
7465
283
    break;
7466
7467
596
  case 437:
7468
596
#line 1301 "/src/php-src/Zend/zend_language_parser.y"
7469
596
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_INC, (yyvsp[0].ast)); }
7470
596
#line 7471 "/src/php-src/Zend/zend_language_parser.c"
7471
596
    break;
7472
7473
27
  case 438:
7474
27
#line 1302 "/src/php-src/Zend/zend_language_parser.y"
7475
27
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_DEC, (yyvsp[-1].ast)); }
7476
27
#line 7477 "/src/php-src/Zend/zend_language_parser.c"
7477
27
    break;
7478
7479
167
  case 439:
7480
167
#line 1303 "/src/php-src/Zend/zend_language_parser.y"
7481
167
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_DEC, (yyvsp[0].ast)); }
7482
167
#line 7483 "/src/php-src/Zend/zend_language_parser.c"
7483
167
    break;
7484
7485
145
  case 440:
7486
145
#line 1305 "/src/php-src/Zend/zend_language_parser.y"
7487
145
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7488
145
#line 7489 "/src/php-src/Zend/zend_language_parser.c"
7489
145
    break;
7490
7491
226
  case 441:
7492
226
#line 1307 "/src/php-src/Zend/zend_language_parser.y"
7493
226
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7494
226
#line 7495 "/src/php-src/Zend/zend_language_parser.c"
7495
226
    break;
7496
7497
201
  case 442:
7498
201
#line 1309 "/src/php-src/Zend/zend_language_parser.y"
7499
201
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7500
201
#line 7501 "/src/php-src/Zend/zend_language_parser.c"
7501
201
    break;
7502
7503
213
  case 443:
7504
213
#line 1311 "/src/php-src/Zend/zend_language_parser.y"
7505
213
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7506
213
#line 7507 "/src/php-src/Zend/zend_language_parser.c"
7507
213
    break;
7508
7509
219
  case 444:
7510
219
#line 1313 "/src/php-src/Zend/zend_language_parser.y"
7511
219
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BOOL_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7512
219
#line 7513 "/src/php-src/Zend/zend_language_parser.c"
7513
219
    break;
7514
7515
7.14k
  case 445:
7516
7.14k
#line 1314 "/src/php-src/Zend/zend_language_parser.y"
7517
7.14k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7518
7.14k
#line 7519 "/src/php-src/Zend/zend_language_parser.c"
7519
7.14k
    break;
7520
7521
598
  case 446:
7522
598
#line 1315 "/src/php-src/Zend/zend_language_parser.y"
7523
598
                                                                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7524
598
#line 7525 "/src/php-src/Zend/zend_language_parser.c"
7525
598
    break;
7526
7527
120
  case 447:
7528
120
#line 1316 "/src/php-src/Zend/zend_language_parser.y"
7529
120
                                                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7530
120
#line 7531 "/src/php-src/Zend/zend_language_parser.c"
7531
120
    break;
7532
7533
698
  case 448:
7534
698
#line 1317 "/src/php-src/Zend/zend_language_parser.y"
7535
698
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7536
698
#line 7537 "/src/php-src/Zend/zend_language_parser.c"
7537
698
    break;
7538
7539
6.26k
  case 449:
7540
6.26k
#line 1318 "/src/php-src/Zend/zend_language_parser.y"
7541
6.26k
                                { (yyval.ast) = zend_ast_create_concat_op((yyvsp[-2].ast), (yyvsp[0].ast)); }
7542
6.26k
#line 7543 "/src/php-src/Zend/zend_language_parser.c"
7543
6.26k
    break;
7544
7545
425
  case 450:
7546
425
#line 1319 "/src/php-src/Zend/zend_language_parser.y"
7547
425
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7548
425
#line 7549 "/src/php-src/Zend/zend_language_parser.c"
7549
425
    break;
7550
7551
1.99k
  case 451:
7552
1.99k
#line 1320 "/src/php-src/Zend/zend_language_parser.y"
7553
1.99k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7554
1.99k
#line 7555 "/src/php-src/Zend/zend_language_parser.c"
7555
1.99k
    break;
7556
7557
755
  case 452:
7558
755
#line 1321 "/src/php-src/Zend/zend_language_parser.y"
7559
755
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7560
755
#line 7561 "/src/php-src/Zend/zend_language_parser.c"
7561
755
    break;
7562
7563
52
  case 453:
7564
52
#line 1322 "/src/php-src/Zend/zend_language_parser.y"
7565
52
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7566
52
#line 7567 "/src/php-src/Zend/zend_language_parser.c"
7567
52
    break;
7568
7569
326
  case 454:
7570
326
#line 1323 "/src/php-src/Zend/zend_language_parser.y"
7571
326
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7572
326
#line 7573 "/src/php-src/Zend/zend_language_parser.c"
7573
326
    break;
7574
7575
1.24k
  case 455:
7576
1.24k
#line 1324 "/src/php-src/Zend/zend_language_parser.y"
7577
1.24k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7578
1.24k
#line 7579 "/src/php-src/Zend/zend_language_parser.c"
7579
1.24k
    break;
7580
7581
179
  case 456:
7582
179
#line 1325 "/src/php-src/Zend/zend_language_parser.y"
7583
179
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7584
179
#line 7585 "/src/php-src/Zend/zend_language_parser.c"
7585
179
    break;
7586
7587
72
  case 457:
7588
72
#line 1326 "/src/php-src/Zend/zend_language_parser.y"
7589
72
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7590
72
#line 7591 "/src/php-src/Zend/zend_language_parser.c"
7591
72
    break;
7592
7593
361
  case 458:
7594
361
#line 1327 "/src/php-src/Zend/zend_language_parser.y"
7595
361
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_PLUS, (yyvsp[0].ast)); }
7596
361
#line 7597 "/src/php-src/Zend/zend_language_parser.c"
7597
361
    break;
7598
7599
3.37k
  case 459:
7600
3.37k
#line 1328 "/src/php-src/Zend/zend_language_parser.y"
7601
3.37k
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_MINUS, (yyvsp[0].ast)); }
7602
3.37k
#line 7603 "/src/php-src/Zend/zend_language_parser.c"
7603
3.37k
    break;
7604
7605
1.18k
  case 460:
7606
1.18k
#line 1329 "/src/php-src/Zend/zend_language_parser.y"
7607
1.18k
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BOOL_NOT, (yyvsp[0].ast)); }
7608
1.18k
#line 7609 "/src/php-src/Zend/zend_language_parser.c"
7609
1.18k
    break;
7610
7611
3.65k
  case 461:
7612
3.65k
#line 1330 "/src/php-src/Zend/zend_language_parser.y"
7613
3.65k
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BW_NOT, (yyvsp[0].ast)); }
7614
3.65k
#line 7615 "/src/php-src/Zend/zend_language_parser.c"
7615
3.65k
    break;
7616
7617
16
  case 462:
7618
16
#line 1332 "/src/php-src/Zend/zend_language_parser.y"
7619
16
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7620
16
#line 7621 "/src/php-src/Zend/zend_language_parser.c"
7621
16
    break;
7622
7623
46
  case 463:
7624
46
#line 1334 "/src/php-src/Zend/zend_language_parser.y"
7625
46
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7626
46
#line 7627 "/src/php-src/Zend/zend_language_parser.c"
7627
46
    break;
7628
7629
2.90k
  case 464:
7630
2.90k
#line 1336 "/src/php-src/Zend/zend_language_parser.y"
7631
2.90k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7632
2.90k
#line 7633 "/src/php-src/Zend/zend_language_parser.c"
7633
2.90k
    break;
7634
7635
618
  case 465:
7636
618
#line 1338 "/src/php-src/Zend/zend_language_parser.y"
7637
618
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7638
618
#line 7639 "/src/php-src/Zend/zend_language_parser.c"
7639
618
    break;
7640
7641
22
  case 466:
7642
22
#line 1340 "/src/php-src/Zend/zend_language_parser.y"
7643
22
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PIPE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7644
22
#line 7645 "/src/php-src/Zend/zend_language_parser.c"
7645
22
    break;
7646
7647
1.25k
  case 467:
7648
1.25k
#line 1342 "/src/php-src/Zend/zend_language_parser.y"
7649
1.25k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7650
1.25k
#line 7651 "/src/php-src/Zend/zend_language_parser.c"
7651
1.25k
    break;
7652
7653
320
  case 468:
7654
320
#line 1344 "/src/php-src/Zend/zend_language_parser.y"
7655
320
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER_OR_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7656
320
#line 7657 "/src/php-src/Zend/zend_language_parser.c"
7657
320
    break;
7658
7659
412
  case 469:
7660
412
#line 1346 "/src/php-src/Zend/zend_language_parser.y"
7661
412
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7662
412
#line 7663 "/src/php-src/Zend/zend_language_parser.c"
7663
412
    break;
7664
7665
210
  case 470:
7666
210
#line 1348 "/src/php-src/Zend/zend_language_parser.y"
7667
210
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7668
210
#line 7669 "/src/php-src/Zend/zend_language_parser.c"
7669
210
    break;
7670
7671
0
  case 471:
7672
0
#line 1350 "/src/php-src/Zend/zend_language_parser.y"
7673
0
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_SPACESHIP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7674
0
#line 7675 "/src/php-src/Zend/zend_language_parser.c"
7675
0
    break;
7676
7677
0
  case 472:
7678
0
#line 1352 "/src/php-src/Zend/zend_language_parser.y"
7679
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_INSTANCEOF, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7680
0
#line 7681 "/src/php-src/Zend/zend_language_parser.c"
7681
0
    break;
7682
7683
626
  case 473:
7684
626
#line 1353 "/src/php-src/Zend/zend_language_parser.y"
7685
626
                             {
7686
626
      (yyval.ast) = (yyvsp[-1].ast);
7687
626
      if ((yyval.ast)->kind == ZEND_AST_CONDITIONAL) (yyval.ast)->attr = ZEND_PARENTHESIZED_CONDITIONAL;
7688
626
      if ((yyval.ast)->kind == ZEND_AST_ARROW_FUNC) (yyval.ast)->attr = ZEND_PARENTHESIZED_ARROW_FUNC;
7689
626
    }
7690
626
#line 7691 "/src/php-src/Zend/zend_language_parser.c"
7691
626
    break;
7692
7693
4.52k
  case 474:
7694
4.52k
#line 1358 "/src/php-src/Zend/zend_language_parser.y"
7695
4.52k
                                    { (yyval.ast) = (yyvsp[0].ast); }
7696
4.52k
#line 7697 "/src/php-src/Zend/zend_language_parser.c"
7697
4.52k
    break;
7698
7699
3.02k
  case 475:
7700
3.02k
#line 1359 "/src/php-src/Zend/zend_language_parser.y"
7701
3.02k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7702
3.02k
#line 7703 "/src/php-src/Zend/zend_language_parser.c"
7703
3.02k
    break;
7704
7705
208
  case 476:
7706
208
#line 1361 "/src/php-src/Zend/zend_language_parser.y"
7707
208
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
7708
208
#line 7709 "/src/php-src/Zend/zend_language_parser.c"
7709
208
    break;
7710
7711
72
  case 477:
7712
72
#line 1363 "/src/php-src/Zend/zend_language_parser.y"
7713
72
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-3].ast), NULL, (yyvsp[0].ast)); }
7714
72
#line 7715 "/src/php-src/Zend/zend_language_parser.c"
7715
72
    break;
7716
7717
267
  case 478:
7718
267
#line 1365 "/src/php-src/Zend/zend_language_parser.y"
7719
267
                        { (yyval.ast) = zend_ast_create(ZEND_AST_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7720
267
#line 7721 "/src/php-src/Zend/zend_language_parser.c"
7721
267
    break;
7722
7723
384
  case 479:
7724
384
#line 1366 "/src/php-src/Zend/zend_language_parser.y"
7725
384
                                           { (yyval.ast) = (yyvsp[0].ast); }
7726
384
#line 7727 "/src/php-src/Zend/zend_language_parser.c"
7727
384
    break;
7728
7729
7
  case 480:
7730
7
#line 1367 "/src/php-src/Zend/zend_language_parser.y"
7731
7
                                        { (yyval.ast) = zend_ast_create_cast(IS_LONG, (yyvsp[0].ast)); }
7732
7
#line 7733 "/src/php-src/Zend/zend_language_parser.c"
7733
7
    break;
7734
7735
0
  case 481:
7736
0
#line 1368 "/src/php-src/Zend/zend_language_parser.y"
7737
0
                                        { (yyval.ast) = zend_ast_create_cast(IS_DOUBLE, (yyvsp[0].ast)); }
7738
0
#line 7739 "/src/php-src/Zend/zend_language_parser.c"
7739
0
    break;
7740
7741
7
  case 482:
7742
7
#line 1369 "/src/php-src/Zend/zend_language_parser.y"
7743
7
                                        { (yyval.ast) = zend_ast_create_cast(IS_STRING, (yyvsp[0].ast)); }
7744
7
#line 7745 "/src/php-src/Zend/zend_language_parser.c"
7745
7
    break;
7746
7747
3
  case 483:
7748
3
#line 1370 "/src/php-src/Zend/zend_language_parser.y"
7749
3
                                        { (yyval.ast) = zend_ast_create_cast(IS_ARRAY, (yyvsp[0].ast)); }
7750
3
#line 7751 "/src/php-src/Zend/zend_language_parser.c"
7751
3
    break;
7752
7753
0
  case 484:
7754
0
#line 1371 "/src/php-src/Zend/zend_language_parser.y"
7755
0
                                        { (yyval.ast) = zend_ast_create_cast(IS_OBJECT, (yyvsp[0].ast)); }
7756
0
#line 7757 "/src/php-src/Zend/zend_language_parser.c"
7757
0
    break;
7758
7759
9
  case 485:
7760
9
#line 1372 "/src/php-src/Zend/zend_language_parser.y"
7761
9
                                        { (yyval.ast) = zend_ast_create_cast(_IS_BOOL, (yyvsp[0].ast)); }
7762
9
#line 7763 "/src/php-src/Zend/zend_language_parser.c"
7763
9
    break;
7764
7765
0
  case 486:
7766
0
#line 1373 "/src/php-src/Zend/zend_language_parser.y"
7767
0
                                        { (yyval.ast) = zend_ast_create_cast(IS_NULL, (yyvsp[0].ast)); }
7768
0
#line 7769 "/src/php-src/Zend/zend_language_parser.c"
7769
0
    break;
7770
7771
33
  case 487:
7772
33
#line 1374 "/src/php-src/Zend/zend_language_parser.y"
7773
33
                                      {
7774
33
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_EXIT));
7775
33
      name->attr = ZEND_NAME_FQ;
7776
33
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7777
33
    }
7778
33
#line 7779 "/src/php-src/Zend/zend_language_parser.c"
7779
33
    break;
7780
7781
5.14k
  case 488:
7782
5.14k
#line 1379 "/src/php-src/Zend/zend_language_parser.y"
7783
5.14k
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_SILENCE, (yyvsp[0].ast)); }
7784
5.14k
#line 7785 "/src/php-src/Zend/zend_language_parser.c"
7785
5.14k
    break;
7786
7787
114k
  case 489:
7788
114k
#line 1380 "/src/php-src/Zend/zend_language_parser.y"
7789
114k
                       { (yyval.ast) = (yyvsp[0].ast); }
7790
114k
#line 7791 "/src/php-src/Zend/zend_language_parser.c"
7791
114k
    break;
7792
7793
23
  case 490:
7794
23
#line 1381 "/src/php-src/Zend/zend_language_parser.y"
7795
23
                                       { (yyval.ast) = zend_ast_create(ZEND_AST_SHELL_EXEC, (yyvsp[-1].ast)); }
7796
23
#line 7797 "/src/php-src/Zend/zend_language_parser.c"
7797
23
    break;
7798
7799
17
  case 491:
7800
17
#line 1382 "/src/php-src/Zend/zend_language_parser.y"
7801
17
                             { (yyval.ast) = zend_ast_create(ZEND_AST_PRINT, (yyvsp[0].ast)); }
7802
17
#line 7803 "/src/php-src/Zend/zend_language_parser.c"
7803
17
    break;
7804
7805
4
  case 492:
7806
4
#line 1383 "/src/php-src/Zend/zend_language_parser.y"
7807
4
                        { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, NULL, NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7808
4
#line 7809 "/src/php-src/Zend/zend_language_parser.c"
7809
4
    break;
7810
7811
3
  case 493:
7812
3
#line 1384 "/src/php-src/Zend/zend_language_parser.y"
7813
3
                             { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7814
3
#line 7815 "/src/php-src/Zend/zend_language_parser.c"
7815
3
    break;
7816
7817
5
  case 494:
7818
5
#line 1385 "/src/php-src/Zend/zend_language_parser.y"
7819
5
                                                 { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), (yyvsp[-2].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7820
5
#line 7821 "/src/php-src/Zend/zend_language_parser.c"
7821
5
    break;
7822
7823
11
  case 495:
7824
11
#line 1386 "/src/php-src/Zend/zend_language_parser.y"
7825
11
                                  { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD_FROM, (yyvsp[0].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7826
11
#line 7827 "/src/php-src/Zend/zend_language_parser.c"
7827
11
    break;
7828
7829
69
  case 496:
7830
69
#line 1387 "/src/php-src/Zend/zend_language_parser.y"
7831
69
                             { (yyval.ast) = zend_ast_create(ZEND_AST_THROW, (yyvsp[0].ast)); }
7832
69
#line 7833 "/src/php-src/Zend/zend_language_parser.c"
7833
69
    break;
7834
7835
652
  case 497:
7836
652
#line 1388 "/src/php-src/Zend/zend_language_parser.y"
7837
652
                                { (yyval.ast) = (yyvsp[0].ast); }
7838
652
#line 7839 "/src/php-src/Zend/zend_language_parser.c"
7839
652
    break;
7840
7841
0
  case 498:
7842
0
#line 1389 "/src/php-src/Zend/zend_language_parser.y"
7843
0
                                           { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
7844
0
#line 7845 "/src/php-src/Zend/zend_language_parser.c"
7845
0
    break;
7846
7847
0
  case 499:
7848
0
#line 1390 "/src/php-src/Zend/zend_language_parser.y"
7849
0
                                         { (yyval.ast) = (yyvsp[0].ast); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7850
0
#line 7851 "/src/php-src/Zend/zend_language_parser.c"
7851
0
    break;
7852
7853
0
  case 500:
7854
0
#line 1392 "/src/php-src/Zend/zend_language_parser.y"
7855
0
                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-2].ast)); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7856
0
#line 7857 "/src/php-src/Zend/zend_language_parser.c"
7857
0
    break;
7858
7859
0
  case 501:
7860
0
#line 1393 "/src/php-src/Zend/zend_language_parser.y"
7861
0
                      { (yyval.ast) = (yyvsp[0].ast); }
7862
0
#line 7863 "/src/php-src/Zend/zend_language_parser.c"
7863
0
    break;
7864
7865
204
  case 502:
7866
204
#line 1400 "/src/php-src/Zend/zend_language_parser.y"
7867
204
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLOSURE, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-10].str),
7868
204
          NULL,
7869
204
          (yyvsp[-8].ast), (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-5].ast), NULL); CG(extra_fn_flags) = (yyvsp[-4].num); }
7870
204
#line 7871 "/src/php-src/Zend/zend_language_parser.c"
7871
204
    break;
7872
7873
448
  case 503:
7874
448
#line 1405 "/src/php-src/Zend/zend_language_parser.y"
7875
448
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_ARROW_FUNC, (yyvsp[-10].num) | (yyvsp[0].num), (yyvsp[-11].num), (yyvsp[-9].str),
7876
448
          NULL, (yyvsp[-7].ast), NULL, (yyvsp[-1].ast), (yyvsp[-5].ast), NULL);
7877
448
          CG(extra_fn_flags) = (yyvsp[-3].num); }
7878
448
#line 7879 "/src/php-src/Zend/zend_language_parser.c"
7879
448
    break;
7880
7881
448
  case 504:
7882
448
#line 1411 "/src/php-src/Zend/zend_language_parser.y"
7883
448
             { (yyval.num) = CG(zend_lineno); }
7884
448
#line 7885 "/src/php-src/Zend/zend_language_parser.c"
7885
448
    break;
7886
7887
2.04k
  case 505:
7888
2.04k
#line 1415 "/src/php-src/Zend/zend_language_parser.y"
7889
2.04k
                   { (yyval.num) = CG(zend_lineno); }
7890
2.04k
#line 7891 "/src/php-src/Zend/zend_language_parser.c"
7891
2.04k
    break;
7892
7893
5.66k
  case 506:
7894
5.66k
#line 1419 "/src/php-src/Zend/zend_language_parser.y"
7895
5.66k
               { (yyval.str) = CG(doc_comment); CG(doc_comment) = NULL; }
7896
5.66k
#line 7897 "/src/php-src/Zend/zend_language_parser.c"
7897
5.66k
    break;
7898
7899
4.78k
  case 507:
7900
4.78k
#line 1423 "/src/php-src/Zend/zend_language_parser.y"
7901
4.78k
                                         { (yyval.num) = CG(extra_fn_flags); CG(extra_fn_flags) = 0; }
7902
4.78k
#line 7903 "/src/php-src/Zend/zend_language_parser.c"
7903
4.78k
    break;
7904
7905
448
  case 508:
7906
448
#line 1427 "/src/php-src/Zend/zend_language_parser.y"
7907
448
               { (yyval.ptr) = LANG_SCNG(yy_text); }
7908
448
#line 7909 "/src/php-src/Zend/zend_language_parser.c"
7909
448
    break;
7910
7911
2.58k
  case 509:
7912
2.58k
#line 1431 "/src/php-src/Zend/zend_language_parser.y"
7913
2.58k
                        { (yyval.num) = 0; }
7914
2.58k
#line 7915 "/src/php-src/Zend/zend_language_parser.c"
7915
2.58k
    break;
7916
7917
21
  case 510:
7918
21
#line 1432 "/src/php-src/Zend/zend_language_parser.y"
7919
21
                                { (yyval.num) = ZEND_ACC_RETURN_REFERENCE; }
7920
21
#line 7921 "/src/php-src/Zend/zend_language_parser.c"
7921
21
    break;
7922
7923
265
  case 511:
7924
265
#line 1436 "/src/php-src/Zend/zend_language_parser.y"
7925
265
                       { (yyval.ast) = NULL; }
7926
265
#line 7927 "/src/php-src/Zend/zend_language_parser.c"
7927
265
    break;
7928
7929
190
  case 512:
7930
190
#line 1437 "/src/php-src/Zend/zend_language_parser.y"
7931
190
                                                              { (yyval.ast) = (yyvsp[-2].ast); }
7932
190
#line 7933 "/src/php-src/Zend/zend_language_parser.c"
7933
190
    break;
7934
7935
15
  case 513:
7936
15
#line 1441 "/src/php-src/Zend/zend_language_parser.y"
7937
15
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7938
15
#line 7939 "/src/php-src/Zend/zend_language_parser.c"
7939
15
    break;
7940
7941
190
  case 514:
7942
190
#line 1442 "/src/php-src/Zend/zend_language_parser.y"
7943
190
                            { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLOSURE_USES, (yyvsp[0].ast)); }
7944
190
#line 7945 "/src/php-src/Zend/zend_language_parser.c"
7945
190
    break;
7946
7947
189
  case 515:
7948
189
#line 1446 "/src/php-src/Zend/zend_language_parser.y"
7949
189
                                        { (yyval.ast) = (yyvsp[0].ast); }
7950
189
#line 7951 "/src/php-src/Zend/zend_language_parser.c"
7951
189
    break;
7952
7953
16
  case 516:
7954
16
#line 1447 "/src/php-src/Zend/zend_language_parser.y"
7955
16
                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_BIND_REF; }
7956
16
#line 7957 "/src/php-src/Zend/zend_language_parser.c"
7957
16
    break;
7958
7959
6.43k
  case 517:
7960
6.43k
#line 1452 "/src/php-src/Zend/zend_language_parser.y"
7961
6.43k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7962
6.43k
#line 7963 "/src/php-src/Zend/zend_language_parser.c"
7963
6.43k
    break;
7964
7965
0
  case 518:
7966
0
#line 1453 "/src/php-src/Zend/zend_language_parser.y"
7967
0
                                         {
7968
0
      zval zv;
7969
0
      if (zend_lex_tstring(&zv, (yyvsp[-1].ident)) == FAILURE) { YYABORT; }
7970
0
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, zend_ast_create_zval(&zv), (yyvsp[0].ast));
7971
0
    }
7972
0
#line 7973 "/src/php-src/Zend/zend_language_parser.c"
7973
0
    break;
7974
7975
438
  case 519:
7976
438
#line 1459 "/src/php-src/Zend/zend_language_parser.y"
7977
438
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
7978
438
#line 7979 "/src/php-src/Zend/zend_language_parser.c"
7979
438
    break;
7980
7981
19
  case 520:
7982
19
#line 1461 "/src/php-src/Zend/zend_language_parser.y"
7983
19
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
7984
19
#line 7985 "/src/php-src/Zend/zend_language_parser.c"
7985
19
    break;
7986
7987
1.43k
  case 521:
7988
1.43k
#line 1462 "/src/php-src/Zend/zend_language_parser.y"
7989
1.43k
                              { (yyval.num) = CG(zend_lineno); }
7990
1.43k
#line 7991 "/src/php-src/Zend/zend_language_parser.c"
7991
1.43k
    break;
7992
7993
853
  case 522:
7994
853
#line 1462 "/src/php-src/Zend/zend_language_parser.y"
7995
853
                                                                           {
7996
853
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-2].ast), (yyvsp[0].ast));
7997
853
      (yyval.ast)->lineno = (yyvsp[-1].num);
7998
853
    }
7999
853
#line 8000 "/src/php-src/Zend/zend_language_parser.c"
8000
853
    break;
8001
8002
8
  case 523:
8003
8
#line 1470 "/src/php-src/Zend/zend_language_parser.y"
8004
8
                        { zval zv; ZVAL_INTERNED_STR(&zv, ZSTR_KNOWN(ZEND_STR_STATIC));
8005
8
        (yyval.ast) = zend_ast_create_zval_ex(&zv, ZEND_NAME_NOT_FQ); }
8006
8
#line 8007 "/src/php-src/Zend/zend_language_parser.c"
8007
8
    break;
8008
8009
13.3k
  case 524:
8010
13.3k
#line 1472 "/src/php-src/Zend/zend_language_parser.y"
8011
13.3k
                     { (yyval.ast) = (yyvsp[0].ast); }
8012
13.3k
#line 8013 "/src/php-src/Zend/zend_language_parser.c"
8013
13.3k
    break;
8014
8015
7.69k
  case 525:
8016
7.69k
#line 1476 "/src/php-src/Zend/zend_language_parser.y"
8017
7.69k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8018
7.69k
#line 8019 "/src/php-src/Zend/zend_language_parser.c"
8019
7.69k
    break;
8020
8021
4
  case 526:
8022
4
#line 1477 "/src/php-src/Zend/zend_language_parser.y"
8023
4
                                { (yyval.ast) = (yyvsp[0].ast); }
8024
4
#line 8025 "/src/php-src/Zend/zend_language_parser.c"
8025
4
    break;
8026
8027
0
  case 527:
8028
0
#line 1478 "/src/php-src/Zend/zend_language_parser.y"
8029
0
                                { (yyval.ast) = (yyvsp[-1].ast); }
8030
0
#line 8031 "/src/php-src/Zend/zend_language_parser.c"
8031
0
    break;
8032
8033
8
  case 528:
8034
8
#line 1483 "/src/php-src/Zend/zend_language_parser.y"
8035
8
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
8036
8
#line 8037 "/src/php-src/Zend/zend_language_parser.c"
8037
8
    break;
8038
8039
3
  case 529:
8040
3
#line 1484 "/src/php-src/Zend/zend_language_parser.y"
8041
3
                                          { (yyval.ast) = (yyvsp[0].ast); }
8042
3
#line 8043 "/src/php-src/Zend/zend_language_parser.c"
8043
3
    break;
8044
8045
12
  case 530:
8046
12
#line 1485 "/src/php-src/Zend/zend_language_parser.y"
8047
12
                            { (yyval.ast) = (yyvsp[0].ast); }
8048
12
#line 8049 "/src/php-src/Zend/zend_language_parser.c"
8049
12
    break;
8050
8051
38
  case 531:
8052
38
#line 1490 "/src/php-src/Zend/zend_language_parser.y"
8053
38
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_ARG_LIST); }
8054
38
#line 8055 "/src/php-src/Zend/zend_language_parser.c"
8055
38
    break;
8056
8057
1
  case 532:
8058
1
#line 1491 "/src/php-src/Zend/zend_language_parser.y"
8059
1
                              { (yyval.ast) = (yyvsp[0].ast); }
8060
1
#line 8061 "/src/php-src/Zend/zend_language_parser.c"
8061
1
    break;
8062
8063
1.04k
  case 533:
8064
1.04k
#line 1496 "/src/php-src/Zend/zend_language_parser.y"
8065
1.04k
                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LONG; }
8066
1.04k
#line 8067 "/src/php-src/Zend/zend_language_parser.c"
8067
1.04k
    break;
8068
8069
3.02k
  case 534:
8070
3.02k
#line 1497 "/src/php-src/Zend/zend_language_parser.y"
8071
3.02k
                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
8072
3.02k
#line 8073 "/src/php-src/Zend/zend_language_parser.c"
8073
3.02k
    break;
8074
8075
37.2k
  case 535:
8076
37.2k
#line 1498 "/src/php-src/Zend/zend_language_parser.y"
8077
37.2k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8078
37.2k
#line 8079 "/src/php-src/Zend/zend_language_parser.c"
8079
37.2k
    break;
8080
8081
7.02k
  case 536:
8082
7.02k
#line 1499 "/src/php-src/Zend/zend_language_parser.y"
8083
7.02k
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
8084
7.02k
#line 8085 "/src/php-src/Zend/zend_language_parser.c"
8085
7.02k
    break;
8086
8087
54.4k
  case 537:
8088
54.4k
#line 1503 "/src/php-src/Zend/zend_language_parser.y"
8089
54.4k
                                { (yyval.ast) = (yyvsp[0].ast); }
8090
54.4k
#line 8091 "/src/php-src/Zend/zend_language_parser.c"
8091
54.4k
    break;
8092
8093
5.27k
  case 538:
8094
5.27k
#line 1504 "/src/php-src/Zend/zend_language_parser.y"
8095
5.27k
                                { (yyval.ast) = (yyvsp[0].ast); }
8096
5.27k
#line 8097 "/src/php-src/Zend/zend_language_parser.c"
8097
5.27k
    break;
8098
8099
388
  case 539:
8100
388
#line 1505 "/src/php-src/Zend/zend_language_parser.y"
8101
388
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
8102
388
#line 8103 "/src/php-src/Zend/zend_language_parser.c"
8103
388
    break;
8104
8105
0
  case 540:
8106
0
#line 1507 "/src/php-src/Zend/zend_language_parser.y"
8107
0
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
8108
0
#line 8109 "/src/php-src/Zend/zend_language_parser.c"
8109
0
    break;
8110
8111
351
  case 541:
8112
351
#line 1508 "/src/php-src/Zend/zend_language_parser.y"
8113
351
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
8114
351
#line 8115 "/src/php-src/Zend/zend_language_parser.c"
8115
351
    break;
8116
8117
48.3k
  case 542:
8118
48.3k
#line 1509 "/src/php-src/Zend/zend_language_parser.y"
8119
48.3k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8120
48.3k
#line 8121 "/src/php-src/Zend/zend_language_parser.c"
8121
48.3k
    break;
8122
8123
4.92k
  case 543:
8124
4.92k
#line 1510 "/src/php-src/Zend/zend_language_parser.y"
8125
4.92k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8126
4.92k
#line 8127 "/src/php-src/Zend/zend_language_parser.c"
8127
4.92k
    break;
8128
8129
628
  case 544:
8130
628
#line 1511 "/src/php-src/Zend/zend_language_parser.y"
8131
628
                                                { (yyval.ast) = (yyvsp[0].ast); }
8132
628
#line 8133 "/src/php-src/Zend/zend_language_parser.c"
8133
628
    break;
8134
8135
4.70k
  case 545:
8136
4.70k
#line 1515 "/src/php-src/Zend/zend_language_parser.y"
8137
4.70k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONST, (yyvsp[0].ast)); }
8138
4.70k
#line 8139 "/src/php-src/Zend/zend_language_parser.c"
8139
4.70k
    break;
8140
8141
0
  case 546:
8142
0
#line 1516 "/src/php-src/Zend/zend_language_parser.y"
8143
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_LINE); }
8144
0
#line 8145 "/src/php-src/Zend/zend_language_parser.c"
8145
0
    break;
8146
8147
2
  case 547:
8148
2
#line 1517 "/src/php-src/Zend/zend_language_parser.y"
8149
2
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FILE); }
8150
2
#line 8151 "/src/php-src/Zend/zend_language_parser.c"
8151
2
    break;
8152
8153
6
  case 548:
8154
6
#line 1518 "/src/php-src/Zend/zend_language_parser.y"
8155
6
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_DIR); }
8156
6
#line 8157 "/src/php-src/Zend/zend_language_parser.c"
8157
6
    break;
8158
8159
0
  case 549:
8160
0
#line 1519 "/src/php-src/Zend/zend_language_parser.y"
8161
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_TRAIT_C); }
8162
0
#line 8163 "/src/php-src/Zend/zend_language_parser.c"
8163
0
    break;
8164
8165
304
  case 550:
8166
304
#line 1520 "/src/php-src/Zend/zend_language_parser.y"
8167
304
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_METHOD_C); }
8168
304
#line 8169 "/src/php-src/Zend/zend_language_parser.c"
8169
304
    break;
8170
8171
24
  case 551:
8172
24
#line 1521 "/src/php-src/Zend/zend_language_parser.y"
8173
24
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FUNC_C); }
8174
24
#line 8175 "/src/php-src/Zend/zend_language_parser.c"
8175
24
    break;
8176
8177
0
  case 552:
8178
0
#line 1522 "/src/php-src/Zend/zend_language_parser.y"
8179
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_PROPERTY_C); }
8180
0
#line 8181 "/src/php-src/Zend/zend_language_parser.c"
8181
0
    break;
8182
8183
0
  case 553:
8184
0
#line 1523 "/src/php-src/Zend/zend_language_parser.y"
8185
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_NS_C); }
8186
0
#line 8187 "/src/php-src/Zend/zend_language_parser.c"
8187
0
    break;
8188
8189
0
  case 554:
8190
0
#line 1524 "/src/php-src/Zend/zend_language_parser.y"
8191
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_CLASS_C); }
8192
0
#line 8193 "/src/php-src/Zend/zend_language_parser.c"
8193
0
    break;
8194
8195
604
  case 555:
8196
604
#line 1529 "/src/php-src/Zend/zend_language_parser.y"
8197
604
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
8198
604
#line 8199 "/src/php-src/Zend/zend_language_parser.c"
8199
604
    break;
8200
8201
24
  case 556:
8202
24
#line 1531 "/src/php-src/Zend/zend_language_parser.y"
8203
24
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
8204
24
#line 8205 "/src/php-src/Zend/zend_language_parser.c"
8205
24
    break;
8206
8207
0
  case 557:
8208
0
#line 1533 "/src/php-src/Zend/zend_language_parser.y"
8209
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
8210
0
#line 8211 "/src/php-src/Zend/zend_language_parser.c"
8211
0
    break;
8212
8213
0
  case 558:
8214
0
#line 1535 "/src/php-src/Zend/zend_language_parser.y"
8215
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
8216
0
#line 8217 "/src/php-src/Zend/zend_language_parser.c"
8217
0
    break;
8218
8219
35
  case 559:
8220
35
#line 1539 "/src/php-src/Zend/zend_language_parser.y"
8221
35
                        { (yyval.ast) = NULL; }
8222
35
#line 8223 "/src/php-src/Zend/zend_language_parser.c"
8223
35
    break;
8224
8225
3.57k
  case 560:
8226
3.57k
#line 1540 "/src/php-src/Zend/zend_language_parser.y"
8227
3.57k
                                { (yyval.ast) = (yyvsp[0].ast); }
8228
3.57k
#line 8229 "/src/php-src/Zend/zend_language_parser.c"
8229
3.57k
    break;
8230
8231
60
  case 561:
8232
60
#line 1544 "/src/php-src/Zend/zend_language_parser.y"
8233
60
                                      { (yyval.ast) = (yyvsp[0].ast); }
8234
60
#line 8235 "/src/php-src/Zend/zend_language_parser.c"
8235
60
    break;
8236
8237
6.07k
  case 562:
8238
6.07k
#line 1548 "/src/php-src/Zend/zend_language_parser.y"
8239
6.07k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8240
6.07k
#line 8241 "/src/php-src/Zend/zend_language_parser.c"
8241
6.07k
    break;
8242
8243
13
  case 563:
8244
13
#line 1549 "/src/php-src/Zend/zend_language_parser.y"
8245
13
                             {
8246
13
      (yyval.ast) = (yyvsp[-1].ast);
8247
13
      if ((yyval.ast)->kind == ZEND_AST_STATIC_PROP) (yyval.ast)->attr = ZEND_PARENTHESIZED_STATIC_PROP;
8248
13
    }
8249
13
#line 8250 "/src/php-src/Zend/zend_language_parser.c"
8250
13
    break;
8251
8252
2
  case 564:
8253
2
#line 1553 "/src/php-src/Zend/zend_language_parser.y"
8254
2
                                        { (yyval.ast) = (yyvsp[0].ast); }
8255
2
#line 8256 "/src/php-src/Zend/zend_language_parser.c"
8256
2
    break;
8257
8258
0
  case 565:
8259
0
#line 1554 "/src/php-src/Zend/zend_language_parser.y"
8260
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
8261
0
#line 8262 "/src/php-src/Zend/zend_language_parser.c"
8262
0
    break;
8263
8264
0
  case 566:
8265
0
#line 1555 "/src/php-src/Zend/zend_language_parser.y"
8266
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
8267
0
#line 8268 "/src/php-src/Zend/zend_language_parser.c"
8268
0
    break;
8269
8270
6.02k
  case 567:
8271
6.02k
#line 1559 "/src/php-src/Zend/zend_language_parser.y"
8272
6.02k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8273
6.02k
#line 8274 "/src/php-src/Zend/zend_language_parser.c"
8274
6.02k
    break;
8275
8276
110
  case 568:
8277
110
#line 1560 "/src/php-src/Zend/zend_language_parser.y"
8278
110
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8279
110
#line 8280 "/src/php-src/Zend/zend_language_parser.c"
8280
110
    break;
8281
8282
1.18k
  case 569:
8283
1.18k
#line 1564 "/src/php-src/Zend/zend_language_parser.y"
8284
1.18k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8285
1.18k
#line 8286 "/src/php-src/Zend/zend_language_parser.c"
8286
1.18k
    break;
8287
8288
242
  case 570:
8289
242
#line 1565 "/src/php-src/Zend/zend_language_parser.y"
8290
242
                                                { (yyval.ast) = (yyvsp[-1].ast); }
8291
242
#line 8292 "/src/php-src/Zend/zend_language_parser.c"
8292
242
    break;
8293
8294
5
  case 571:
8295
5
#line 1566 "/src/php-src/Zend/zend_language_parser.y"
8296
5
                                        { (yyval.ast) = (yyvsp[0].ast); }
8297
5
#line 8298 "/src/php-src/Zend/zend_language_parser.c"
8298
5
    break;
8299
8300
0
  case 572:
8301
0
#line 1567 "/src/php-src/Zend/zend_language_parser.y"
8302
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
8303
0
#line 8304 "/src/php-src/Zend/zend_language_parser.c"
8304
0
    break;
8305
8306
89.5k
  case 573:
8307
89.5k
#line 1572 "/src/php-src/Zend/zend_language_parser.y"
8308
89.5k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8309
89.5k
#line 8310 "/src/php-src/Zend/zend_language_parser.c"
8310
89.5k
    break;
8311
8312
3.30k
  case 574:
8313
3.30k
#line 1574 "/src/php-src/Zend/zend_language_parser.y"
8314
3.30k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8315
3.30k
#line 8316 "/src/php-src/Zend/zend_language_parser.c"
8316
3.30k
    break;
8317
8318
1.27k
  case 575:
8319
1.27k
#line 1576 "/src/php-src/Zend/zend_language_parser.y"
8320
1.27k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8321
1.27k
#line 8322 "/src/php-src/Zend/zend_language_parser.c"
8322
1.27k
    break;
8323
8324
83
  case 576:
8325
83
#line 1578 "/src/php-src/Zend/zend_language_parser.y"
8326
83
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8327
83
#line 8328 "/src/php-src/Zend/zend_language_parser.c"
8328
83
    break;
8329
8330
7.74k
  case 577:
8331
7.74k
#line 1579 "/src/php-src/Zend/zend_language_parser.y"
8332
7.74k
                              { (yyval.ast) = (yyvsp[0].ast); }
8333
7.74k
#line 8334 "/src/php-src/Zend/zend_language_parser.c"
8334
7.74k
    break;
8335
8336
100k
  case 578:
8337
100k
#line 1584 "/src/php-src/Zend/zend_language_parser.y"
8338
100k
                        { (yyval.ast) = (yyvsp[0].ast); }
8339
100k
#line 8340 "/src/php-src/Zend/zend_language_parser.c"
8340
100k
    break;
8341
8342
245
  case 579:
8343
245
#line 1586 "/src/php-src/Zend/zend_language_parser.y"
8344
245
                        { (yyval.ast) = (yyvsp[0].ast); }
8345
245
#line 8346 "/src/php-src/Zend/zend_language_parser.c"
8346
245
    break;
8347
8348
1.21k
  case 580:
8349
1.21k
#line 1588 "/src/php-src/Zend/zend_language_parser.y"
8350
1.21k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8351
1.21k
#line 8352 "/src/php-src/Zend/zend_language_parser.c"
8352
1.21k
    break;
8353
8354
5
  case 581:
8355
5
#line 1590 "/src/php-src/Zend/zend_language_parser.y"
8356
5
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8357
5
#line 8358 "/src/php-src/Zend/zend_language_parser.c"
8358
5
    break;
8359
8360
89.6k
  case 582:
8361
89.6k
#line 1594 "/src/php-src/Zend/zend_language_parser.y"
8362
89.6k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8363
89.6k
#line 8364 "/src/php-src/Zend/zend_language_parser.c"
8364
89.6k
    break;
8365
8366
171
  case 583:
8367
171
#line 1595 "/src/php-src/Zend/zend_language_parser.y"
8368
171
                                        { (yyval.ast) = (yyvsp[-1].ast); }
8369
171
#line 8370 "/src/php-src/Zend/zend_language_parser.c"
8370
171
    break;
8371
8372
25.1k
  case 584:
8373
25.1k
#line 1596 "/src/php-src/Zend/zend_language_parser.y"
8374
25.1k
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8375
25.1k
#line 8376 "/src/php-src/Zend/zend_language_parser.c"
8376
25.1k
    break;
8377
8378
228
  case 585:
8379
228
#line 1601 "/src/php-src/Zend/zend_language_parser.y"
8380
228
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8381
228
#line 8382 "/src/php-src/Zend/zend_language_parser.c"
8382
228
    break;
8383
8384
17
  case 586:
8385
17
#line 1603 "/src/php-src/Zend/zend_language_parser.y"
8386
17
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8387
17
#line 8388 "/src/php-src/Zend/zend_language_parser.c"
8388
17
    break;
8389
8390
4
  case 587:
8391
4
#line 1608 "/src/php-src/Zend/zend_language_parser.y"
8392
4
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8393
4
#line 8394 "/src/php-src/Zend/zend_language_parser.c"
8394
4
    break;
8395
8396
0
  case 588:
8397
0
#line 1610 "/src/php-src/Zend/zend_language_parser.y"
8398
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8399
0
#line 8400 "/src/php-src/Zend/zend_language_parser.c"
8400
0
    break;
8401
8402
0
  case 589:
8403
0
#line 1612 "/src/php-src/Zend/zend_language_parser.y"
8404
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8405
0
#line 8406 "/src/php-src/Zend/zend_language_parser.c"
8406
0
    break;
8407
8408
0
  case 590:
8409
0
#line 1614 "/src/php-src/Zend/zend_language_parser.y"
8410
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8411
0
#line 8412 "/src/php-src/Zend/zend_language_parser.c"
8412
0
    break;
8413
8414
0
  case 591:
8415
0
#line 1616 "/src/php-src/Zend/zend_language_parser.y"
8416
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8417
0
#line 8418 "/src/php-src/Zend/zend_language_parser.c"
8418
0
    break;
8419
8420
0
  case 592:
8421
0
#line 1618 "/src/php-src/Zend/zend_language_parser.y"
8422
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8423
0
#line 8424 "/src/php-src/Zend/zend_language_parser.c"
8424
0
    break;
8425
8426
453
  case 593:
8427
453
#line 1622 "/src/php-src/Zend/zend_language_parser.y"
8428
453
                           { (yyval.ast) = (yyvsp[0].ast); }
8429
453
#line 8430 "/src/php-src/Zend/zend_language_parser.c"
8430
453
    break;
8431
8432
0
  case 594:
8433
0
#line 1623 "/src/php-src/Zend/zend_language_parser.y"
8434
0
                                { (yyval.ast) = (yyvsp[-1].ast); }
8435
0
#line 8436 "/src/php-src/Zend/zend_language_parser.c"
8436
0
    break;
8437
8438
5
  case 595:
8439
5
#line 1624 "/src/php-src/Zend/zend_language_parser.y"
8440
5
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8441
5
#line 8442 "/src/php-src/Zend/zend_language_parser.c"
8442
5
    break;
8443
8444
2.77k
  case 596:
8445
2.77k
#line 1628 "/src/php-src/Zend/zend_language_parser.y"
8446
2.77k
                         { (yyval.ast) = (yyvsp[0].ast); }
8447
2.77k
#line 8448 "/src/php-src/Zend/zend_language_parser.c"
8448
2.77k
    break;
8449
8450
22
  case 597:
8451
22
#line 1629 "/src/php-src/Zend/zend_language_parser.y"
8452
22
                                { (yyval.ast) = (yyvsp[-1].ast); }
8453
22
#line 8454 "/src/php-src/Zend/zend_language_parser.c"
8454
22
    break;
8455
8456
13
  case 598:
8457
13
#line 1630 "/src/php-src/Zend/zend_language_parser.y"
8458
13
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8459
13
#line 8460 "/src/php-src/Zend/zend_language_parser.c"
8460
13
    break;
8461
8462
4.12k
  case 599:
8463
4.12k
#line 1635 "/src/php-src/Zend/zend_language_parser.y"
8464
4.12k
                        { /* allow single trailing comma */ (yyval.ast) = zend_ast_list_rtrim((yyvsp[0].ast)); }
8465
4.12k
#line 8466 "/src/php-src/Zend/zend_language_parser.c"
8466
4.12k
    break;
8467
8468
543
  case 600:
8469
543
#line 1639 "/src/php-src/Zend/zend_language_parser.y"
8470
543
                       { (yyval.ast) = NULL; }
8471
543
#line 8472 "/src/php-src/Zend/zend_language_parser.c"
8472
543
    break;
8473
8474
57.5k
  case 601:
8475
57.5k
#line 1640 "/src/php-src/Zend/zend_language_parser.y"
8476
57.5k
                            { (yyval.ast) = (yyvsp[0].ast); }
8477
57.5k
#line 8478 "/src/php-src/Zend/zend_language_parser.c"
8478
57.5k
    break;
8479
8480
53.6k
  case 602:
8481
53.6k
#line 1645 "/src/php-src/Zend/zend_language_parser.y"
8482
53.6k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
8483
53.6k
#line 8484 "/src/php-src/Zend/zend_language_parser.c"
8484
53.6k
    break;
8485
8486
4.38k
  case 603:
8487
4.38k
#line 1647 "/src/php-src/Zend/zend_language_parser.y"
8488
4.38k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARRAY, (yyvsp[0].ast)); }
8489
4.38k
#line 8490 "/src/php-src/Zend/zend_language_parser.c"
8490
4.38k
    break;
8491
8492
291
  case 604:
8493
291
#line 1652 "/src/php-src/Zend/zend_language_parser.y"
8494
291
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), (yyvsp[-2].ast)); }
8495
291
#line 8496 "/src/php-src/Zend/zend_language_parser.c"
8496
291
    break;
8497
8498
57.2k
  case 605:
8499
57.2k
#line 1654 "/src/php-src/Zend/zend_language_parser.y"
8500
57.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), NULL); }
8501
57.2k
#line 8502 "/src/php-src/Zend/zend_language_parser.c"
8502
57.2k
    break;
8503
8504
0
  case 606:
8505
0
#line 1656 "/src/php-src/Zend/zend_language_parser.y"
8506
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), (yyvsp[-3].ast)); }
8507
0
#line 8508 "/src/php-src/Zend/zend_language_parser.c"
8508
0
    break;
8509
8510
1
  case 607:
8511
1
#line 1658 "/src/php-src/Zend/zend_language_parser.y"
8512
1
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), NULL); }
8513
1
#line 8514 "/src/php-src/Zend/zend_language_parser.c"
8514
1
    break;
8515
8516
0
  case 608:
8517
0
#line 1660 "/src/php-src/Zend/zend_language_parser.y"
8518
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
8519
0
#line 8520 "/src/php-src/Zend/zend_language_parser.c"
8520
0
    break;
8521
8522
3
  case 609:
8523
3
#line 1662 "/src/php-src/Zend/zend_language_parser.y"
8524
3
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8525
3
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), (yyvsp[-5].ast)); }
8526
3
#line 8527 "/src/php-src/Zend/zend_language_parser.c"
8527
3
    break;
8528
8529
1
  case 610:
8530
1
#line 1665 "/src/php-src/Zend/zend_language_parser.y"
8531
1
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8532
1
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), NULL); }
8533
1
#line 8534 "/src/php-src/Zend/zend_language_parser.c"
8534
1
    break;
8535
8536
34.9k
  case 611:
8537
34.9k
#line 1671 "/src/php-src/Zend/zend_language_parser.y"
8538
34.9k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8539
34.9k
#line 8540 "/src/php-src/Zend/zend_language_parser.c"
8540
34.9k
    break;
8541
8542
43.1k
  case 612:
8543
43.1k
#line 1673 "/src/php-src/Zend/zend_language_parser.y"
8544
43.1k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8545
43.1k
#line 8546 "/src/php-src/Zend/zend_language_parser.c"
8546
43.1k
    break;
8547
8548
1.78k
  case 613:
8549
1.78k
#line 1675 "/src/php-src/Zend/zend_language_parser.y"
8550
1.78k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ENCAPS_LIST, (yyvsp[0].ast)); }
8551
1.78k
#line 8552 "/src/php-src/Zend/zend_language_parser.c"
8552
1.78k
    break;
8553
8554
8.43k
  case 614:
8555
8.43k
#line 1677 "/src/php-src/Zend/zend_language_parser.y"
8556
8.43k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_ENCAPS_LIST, (yyvsp[-1].ast), (yyvsp[0].ast)); }
8557
8.43k
#line 8558 "/src/php-src/Zend/zend_language_parser.c"
8558
8.43k
    break;
8559
8560
41.5k
  case 615:
8561
41.5k
#line 1682 "/src/php-src/Zend/zend_language_parser.y"
8562
41.5k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8563
41.5k
#line 8564 "/src/php-src/Zend/zend_language_parser.c"
8564
41.5k
    break;
8565
8566
414
  case 616:
8567
414
#line 1684 "/src/php-src/Zend/zend_language_parser.y"
8568
414
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM,
8569
414
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-3].ast)), (yyvsp[-1].ast)); }
8570
414
#line 8571 "/src/php-src/Zend/zend_language_parser.c"
8571
414
    break;
8572
8573
1.72k
  case 617:
8574
1.72k
#line 1687 "/src/php-src/Zend/zend_language_parser.y"
8575
1.72k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP,
8576
1.72k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8577
1.72k
#line 8578 "/src/php-src/Zend/zend_language_parser.c"
8578
1.72k
    break;
8579
8580
114
  case 618:
8581
114
#line 1690 "/src/php-src/Zend/zend_language_parser.y"
8582
114
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP,
8583
114
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8584
114
#line 8585 "/src/php-src/Zend/zend_language_parser.c"
8585
114
    break;
8586
8587
956
  case 619:
8588
956
#line 1693 "/src/php-src/Zend/zend_language_parser.y"
8589
956
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY_VAR_VAR, (yyvsp[-1].ast)); }
8590
956
#line 8591 "/src/php-src/Zend/zend_language_parser.c"
8591
956
    break;
8592
8593
47
  case 620:
8594
47
#line 1695 "/src/php-src/Zend/zend_language_parser.y"
8595
47
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY, (yyvsp[-1].ast)); }
8596
47
#line 8597 "/src/php-src/Zend/zend_language_parser.c"
8597
47
    break;
8598
8599
2
  case 621:
8600
2
#line 1697 "/src/php-src/Zend/zend_language_parser.y"
8601
2
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_DIM, ZEND_ENCAPS_VAR_DOLLAR_CURLY,
8602
2
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-4].ast)), (yyvsp[-2].ast)); }
8603
2
#line 8604 "/src/php-src/Zend/zend_language_parser.c"
8604
2
    break;
8605
8606
322
  case 622:
8607
322
#line 1699 "/src/php-src/Zend/zend_language_parser.y"
8608
322
                                          { (yyval.ast) = (yyvsp[-1].ast); }
8609
322
#line 8610 "/src/php-src/Zend/zend_language_parser.c"
8610
322
    break;
8611
8612
16
  case 623:
8613
16
#line 1703 "/src/php-src/Zend/zend_language_parser.y"
8614
16
                                                { (yyval.ast) = (yyvsp[0].ast); }
8615
16
#line 8616 "/src/php-src/Zend/zend_language_parser.c"
8616
16
    break;
8617
8618
136
  case 624:
8619
136
#line 1704 "/src/php-src/Zend/zend_language_parser.y"
8620
136
                                        { (yyval.ast) = (yyvsp[0].ast); }
8621
136
#line 8622 "/src/php-src/Zend/zend_language_parser.c"
8622
136
    break;
8623
8624
99
  case 625:
8625
99
#line 1705 "/src/php-src/Zend/zend_language_parser.y"
8626
99
                                        { (yyval.ast) = zend_negate_num_string((yyvsp[0].ast)); }
8627
99
#line 8628 "/src/php-src/Zend/zend_language_parser.c"
8628
99
    break;
8629
8630
173
  case 626:
8631
173
#line 1706 "/src/php-src/Zend/zend_language_parser.y"
8632
173
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8633
173
#line 8634 "/src/php-src/Zend/zend_language_parser.c"
8634
173
    break;
8635
8636
21
  case 627:
8637
21
#line 1711 "/src/php-src/Zend/zend_language_parser.y"
8638
21
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
8639
21
#line 8640 "/src/php-src/Zend/zend_language_parser.c"
8640
21
    break;
8641
8642
7
  case 628:
8643
7
#line 1712 "/src/php-src/Zend/zend_language_parser.y"
8644
7
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_EMPTY, (yyvsp[-1].ast)); }
8645
7
#line 8646 "/src/php-src/Zend/zend_language_parser.c"
8646
7
    break;
8647
8648
188
  case 629:
8649
188
#line 1714 "/src/php-src/Zend/zend_language_parser.y"
8650
188
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE, (yyvsp[0].ast)); }
8651
188
#line 8652 "/src/php-src/Zend/zend_language_parser.c"
8652
188
    break;
8653
8654
66
  case 630:
8655
66
#line 1716 "/src/php-src/Zend/zend_language_parser.y"
8656
66
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE_ONCE, (yyvsp[0].ast)); }
8657
66
#line 8658 "/src/php-src/Zend/zend_language_parser.c"
8658
66
    break;
8659
8660
93
  case 631:
8661
93
#line 1718 "/src/php-src/Zend/zend_language_parser.y"
8662
93
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_EVAL, (yyvsp[-1].ast)); }
8663
93
#line 8664 "/src/php-src/Zend/zend_language_parser.c"
8664
93
    break;
8665
8666
0
  case 632:
8667
0
#line 1720 "/src/php-src/Zend/zend_language_parser.y"
8668
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE, (yyvsp[0].ast)); }
8669
0
#line 8670 "/src/php-src/Zend/zend_language_parser.c"
8670
0
    break;
8671
8672
9
  case 633:
8673
9
#line 1722 "/src/php-src/Zend/zend_language_parser.y"
8674
9
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE_ONCE, (yyvsp[0].ast)); }
8675
9
#line 8676 "/src/php-src/Zend/zend_language_parser.c"
8676
9
    break;
8677
8678
21
  case 634:
8679
21
#line 1726 "/src/php-src/Zend/zend_language_parser.y"
8680
21
                               { (yyval.ast) = (yyvsp[0].ast); }
8681
21
#line 8682 "/src/php-src/Zend/zend_language_parser.c"
8682
21
    break;
8683
8684
0
  case 635:
8685
0
#line 1728 "/src/php-src/Zend/zend_language_parser.y"
8686
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8687
0
#line 8688 "/src/php-src/Zend/zend_language_parser.c"
8688
0
    break;
8689
8690
21
  case 636:
8691
21
#line 1732 "/src/php-src/Zend/zend_language_parser.y"
8692
21
                     { (yyval.ast) = zend_ast_create(ZEND_AST_ISSET, (yyvsp[0].ast)); }
8693
21
#line 8694 "/src/php-src/Zend/zend_language_parser.c"
8694
21
    break;
8695
8696
8697
0
#line 8698 "/src/php-src/Zend/zend_language_parser.c"
8698
8699
15.6k
      default: break;
8700
1.63M
    }
8701
  /* User semantic actions sometimes alter yychar, and that requires
8702
     that yytoken be updated with the new translation.  We take the
8703
     approach of translating immediately before every use of yytoken.
8704
     One alternative is translating here after every semantic action,
8705
     but that translation would be missed if the semantic action invokes
8706
     YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
8707
     if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
8708
     incorrect destructor might then be invoked immediately.  In the
8709
     case of YYERROR or YYBACKUP, subsequent parser actions might lead
8710
     to an incorrect destructor call or verbose syntax error message
8711
     before the lookahead is translated.  */
8712
1.63M
  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
8713
8714
1.63M
  YYPOPSTACK (yylen);
8715
1.63M
  yylen = 0;
8716
1.63M
  YY_STACK_PRINT (yyss, yyssp);
8717
8718
1.63M
  *++yyvsp = yyval;
8719
8720
  /* Now 'shift' the result of the reduction.  Determine what state
8721
     that goes to, based on the state we popped back to and the rule
8722
     number reduced by.  */
8723
1.63M
  {
8724
1.63M
    const int yylhs = yyr1[yyn] - YYNTOKENS;
8725
1.63M
    const int yyi = yypgoto[yylhs] + *yyssp;
8726
1.63M
    yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp
8727
1.63M
               ? yytable[yyi]
8728
1.63M
               : yydefgoto[yylhs]);
8729
1.63M
  }
8730
8731
1.63M
  goto yynewstate;
8732
8733
8734
/*--------------------------------------.
8735
| yyerrlab -- here on detecting error.  |
8736
`--------------------------------------*/
8737
797
yyerrlab:
8738
  /* Make sure we have latest lookahead translation.  See comments at
8739
     user semantic actions for why this is necessary.  */
8740
797
  yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
8741
8742
  /* If not already recovering from an error, report this error.  */
8743
797
  if (!yyerrstatus)
8744
797
    {
8745
797
      ++yynerrs;
8746
#if ! YYERROR_VERBOSE
8747
      yyerror (YY_("syntax error"));
8748
#else
8749
797
# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
8750
797
                                        yyssp, yytoken)
8751
797
      {
8752
797
        char const *yymsgp = YY_("syntax error");
8753
797
        int yysyntax_error_status;
8754
797
        yysyntax_error_status = YYSYNTAX_ERROR;
8755
797
        if (yysyntax_error_status == 0)
8756
797
          yymsgp = yymsg;
8757
0
        else if (yysyntax_error_status == 1)
8758
0
          {
8759
0
            if (yymsg != yymsgbuf)
8760
0
              YYSTACK_FREE (yymsg);
8761
0
            yymsg = YY_CAST (char *, YYSTACK_ALLOC (YY_CAST (YYSIZE_T, yymsg_alloc)));
8762
0
            if (!yymsg)
8763
0
              {
8764
0
                yymsg = yymsgbuf;
8765
0
                yymsg_alloc = sizeof yymsgbuf;
8766
0
                yysyntax_error_status = 2;
8767
0
              }
8768
0
            else
8769
0
              {
8770
0
                yysyntax_error_status = YYSYNTAX_ERROR;
8771
0
                yymsgp = yymsg;
8772
0
              }
8773
0
          }
8774
797
        yyerror (yymsgp);
8775
797
        if (yysyntax_error_status == 2)
8776
0
          goto yyexhaustedlab;
8777
797
      }
8778
797
# undef YYSYNTAX_ERROR
8779
797
#endif
8780
797
    }
8781
8782
8783
8784
797
  if (yyerrstatus == 3)
8785
0
    {
8786
      /* If just tried and failed to reuse lookahead token after an
8787
         error, discard it.  */
8788
8789
0
      if (yychar <= YYEOF)
8790
0
        {
8791
          /* Return failure if at end of input.  */
8792
0
          if (yychar == YYEOF)
8793
0
            YYABORT;
8794
0
        }
8795
0
      else
8796
0
        {
8797
0
          yydestruct ("Error: discarding",
8798
0
                      yytoken, &yylval);
8799
0
          yychar = YYEMPTY;
8800
0
        }
8801
0
    }
8802
8803
  /* Else will try to reuse lookahead token after shifting the error
8804
     token.  */
8805
797
  goto yyerrlab1;
8806
8807
8808
/*---------------------------------------------------.
8809
| yyerrorlab -- error raised explicitly by YYERROR.  |
8810
`---------------------------------------------------*/
8811
797
yyerrorlab:
8812
  /* Pacify compilers when the user code never invokes YYERROR and the
8813
     label yyerrorlab therefore never appears in user code.  */
8814
1
  if (0)
8815
0
    YYERROR;
8816
8817
  /* Do not reclaim the symbols of the rule whose action triggered
8818
     this YYERROR.  */
8819
1
  YYPOPSTACK (yylen);
8820
1
  yylen = 0;
8821
1
  YY_STACK_PRINT (yyss, yyssp);
8822
1
  yystate = *yyssp;
8823
1
  goto yyerrlab1;
8824
8825
8826
/*-------------------------------------------------------------.
8827
| yyerrlab1 -- common code for both syntax error and YYERROR.  |
8828
`-------------------------------------------------------------*/
8829
798
yyerrlab1:
8830
798
  yyerrstatus = 3;      /* Each real token shifted decrements this.  */
8831
8832
798
  for (;;)
8833
50.0k
    {
8834
50.0k
      yyn = yypact[yystate];
8835
50.0k
      if (!yypact_value_is_default (yyn))
8836
45.3k
        {
8837
45.3k
          yyn += YYTERROR;
8838
45.3k
          if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
8839
0
            {
8840
0
              yyn = yytable[yyn];
8841
0
              if (0 < yyn)
8842
0
                break;
8843
0
            }
8844
45.3k
        }
8845
8846
      /* Pop the current state because it cannot handle the error token.  */
8847
50.0k
      if (yyssp == yyss)
8848
798
        YYABORT;
8849
8850
8851
49.2k
      yydestruct ("Error: popping",
8852
49.2k
                  yystos[yystate], yyvsp);
8853
49.2k
      YYPOPSTACK (1);
8854
49.2k
      yystate = *yyssp;
8855
49.2k
      YY_STACK_PRINT (yyss, yyssp);
8856
49.2k
    }
8857
8858
0
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
8859
0
  *++yyvsp = yylval;
8860
0
  YY_IGNORE_MAYBE_UNINITIALIZED_END
8861
8862
8863
  /* Shift the error token.  */
8864
0
  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
8865
8866
0
  yystate = yyn;
8867
0
  goto yynewstate;
8868
8869
8870
/*-------------------------------------.
8871
| yyacceptlab -- YYACCEPT comes here.  |
8872
`-------------------------------------*/
8873
4.57k
yyacceptlab:
8874
4.57k
  yyresult = 0;
8875
4.57k
  goto yyreturn;
8876
8877
8878
/*-----------------------------------.
8879
| yyabortlab -- YYABORT comes here.  |
8880
`-----------------------------------*/
8881
798
yyabortlab:
8882
798
  yyresult = 1;
8883
798
  goto yyreturn;
8884
8885
8886
0
#if !defined yyoverflow || YYERROR_VERBOSE
8887
/*-------------------------------------------------.
8888
| yyexhaustedlab -- memory exhaustion comes here.  |
8889
`-------------------------------------------------*/
8890
0
yyexhaustedlab:
8891
0
  yyerror (YY_("memory exhausted"));
8892
0
  yyresult = 2;
8893
  /* Fall through.  */
8894
0
#endif
8895
8896
8897
/*-----------------------------------------------------.
8898
| yyreturn -- parsing is finished, return the result.  |
8899
`-----------------------------------------------------*/
8900
5.37k
yyreturn:
8901
5.37k
  if (yychar != YYEMPTY)
8902
798
    {
8903
      /* Make sure we have latest lookahead translation.  See comments at
8904
         user semantic actions for why this is necessary.  */
8905
798
      yytoken = YYTRANSLATE (yychar);
8906
798
      yydestruct ("Cleanup: discarding lookahead",
8907
798
                  yytoken, &yylval);
8908
798
    }
8909
  /* Do not reclaim the symbols of the rule whose action triggered
8910
     this YYABORT or YYACCEPT.  */
8911
5.37k
  YYPOPSTACK (yylen);
8912
5.37k
  YY_STACK_PRINT (yyss, yyssp);
8913
14.5k
  while (yyssp != yyss)
8914
9.14k
    {
8915
9.14k
      yydestruct ("Cleanup: popping",
8916
9.14k
                  yystos[+*yyssp], yyvsp);
8917
9.14k
      YYPOPSTACK (1);
8918
9.14k
    }
8919
5.37k
#ifndef yyoverflow
8920
5.37k
  if (yyss != yyssa)
8921
62
    YYSTACK_FREE (yyss);
8922
5.37k
#endif
8923
5.37k
#if YYERROR_VERBOSE
8924
5.37k
  if (yymsg != yymsgbuf)
8925
0
    YYSTACK_FREE (yymsg);
8926
5.37k
#endif
8927
5.37k
  return yyresult;
8928
0
}
8929
#line 1735 "/src/php-src/Zend/zend_language_parser.y"
8930
8931
8932
/* Over-ride Bison formatting routine to give better token descriptions.
8933
   Copy to YYRES the contents of YYSTR for use in yyerror.
8934
   YYSTR is taken from yytname, from the %token declaration.
8935
   If YYRES is null, do not copy; instead, return the length of what
8936
   the result would have been.  */
8937
static YYSIZE_T zend_yytnamerr(char *yyres, const char *yystr)
8938
4.86k
{
8939
4.86k
  const char *toktype = yystr;
8940
4.86k
  size_t toktype_len = strlen(toktype);
8941
8942
  /* CG(parse_error) states:
8943
   * 0 => yyres = NULL, yystr is the unexpected token
8944
   * 1 => yyres = NULL, yystr is one of the expected tokens
8945
   * 2 => yyres != NULL, yystr is the unexpected token
8946
   * 3 => yyres != NULL, yystr is one of the expected tokens
8947
   */
8948
4.86k
  if (yyres && CG(parse_error) < 2) {
8949
797
    CG(parse_error) = 2;
8950
797
  }
8951
8952
4.86k
  if (CG(parse_error) % 2 == 0) {
8953
    /* The unexpected token */
8954
1.59k
    char buffer[120];
8955
1.59k
    const unsigned char *tokcontent, *tokcontent_end;
8956
1.59k
    size_t tokcontent_len;
8957
8958
1.59k
    CG(parse_error)++;
8959
8960
1.59k
    if (LANG_SCNG(yy_text)[0] == 0 &&
8961
82
      LANG_SCNG(yy_leng) == 1 &&
8962
82
      strcmp(toktype, "\"end of file\"") == 0) {
8963
10
      if (yyres) {
8964
5
        yystpcpy(yyres, "end of file");
8965
5
      }
8966
10
      return sizeof("end of file")-1;
8967
10
    }
8968
8969
    /* Prevent the backslash getting doubled in the output (eugh) */
8970
1.58k
    if (strcmp(toktype, "\"'\\\\'\"") == 0) {
8971
6
      if (yyres) {
8972
3
        yystpcpy(yyres, "token \"\\\"");
8973
3
      }
8974
6
      return sizeof("token \"\\\"")-1;
8975
6
    }
8976
8977
    /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
8978
1.57k
    if (strcmp(toktype, "\"amp\"") == 0) {
8979
4
      if (yyres) {
8980
2
        yystpcpy(yyres, "token \"&\"");
8981
2
      }
8982
4
      return sizeof("token \"&\"")-1;
8983
4
    }
8984
8985
    /* Avoid unreadable """ */
8986
    /* "'" would theoretically be just as bad, but is never currently parsed as a separate token */
8987
1.57k
    if (strcmp(toktype, "'\"'") == 0) {
8988
2
      if (yyres) {
8989
1
        yystpcpy(yyres, "double-quote mark");
8990
1
      }
8991
2
      return sizeof("double-quote mark")-1;
8992
2
    }
8993
8994
    /* Strip off the outer quote marks */
8995
1.57k
    if (toktype_len >= 2 && *toktype == '"') {
8996
1.04k
      toktype++;
8997
1.04k
      toktype_len -= 2;
8998
1.04k
    }
8999
9000
    /* If the token always has one form, the %token line should have a single-quoted name */
9001
    /* The parser rules also include single-character un-named tokens which will be single-quoted here */
9002
    /* We re-format this with double quotes here to ensure everything's consistent */
9003
1.57k
    if (toktype_len > 0 && *toktype == '\'') {
9004
1.27k
      if (yyres) {
9005
638
        snprintf(buffer, sizeof(buffer), "token \"%.*s\"", (int)toktype_len-2, toktype+1);
9006
638
        yystpcpy(yyres, buffer);
9007
638
      }
9008
1.27k
      return toktype_len + sizeof("token ")-1;
9009
1.27k
    }
9010
9011
    /* Fetch the content of the last seen token from global lexer state */
9012
296
    tokcontent = LANG_SCNG(yy_text);
9013
296
    tokcontent_len = LANG_SCNG(yy_leng);
9014
9015
    /* For T_BAD_CHARACTER, the content probably won't be a printable char */
9016
    /* Also, "unexpected invalid character" sounds a bit redundant */
9017
296
    if (tokcontent_len == 1 && strcmp(yystr, "\"invalid character\"") == 0) {
9018
148
      if (yyres) {
9019
74
        snprintf(buffer, sizeof(buffer), "character 0x%02hhX", *tokcontent);
9020
74
        yystpcpy(yyres, buffer);
9021
74
      }
9022
148
      return sizeof("character 0x00")-1;
9023
148
    }
9024
9025
    /* Truncate at line end to avoid messing up log formats */
9026
148
    tokcontent_end = memchr(tokcontent, '\n', tokcontent_len);
9027
148
    if (tokcontent_end != NULL) {
9028
40
      tokcontent_len = (tokcontent_end - tokcontent);
9029
40
    }
9030
9031
    /* Try to be helpful about what kind of string was found, before stripping the quotes */
9032
148
    if (tokcontent_len > 0 && strcmp(yystr, "\"quoted string\"") == 0) {
9033
16
      if (*tokcontent == '"') {
9034
8
        toktype = "double-quoted string";
9035
8
        toktype_len = sizeof("double-quoted string")-1;
9036
8
      }
9037
8
      else if (*tokcontent == '\'') {
9038
8
        toktype = "single-quoted string";
9039
8
        toktype_len = sizeof("single-quoted string")-1;
9040
8
      }
9041
16
    }
9042
9043
    /* For quoted strings, strip off another layer of quotes to avoid putting quotes inside quotes */
9044
148
    if (tokcontent_len > 0 && (*tokcontent == '\'' || *tokcontent=='"'))  {
9045
18
      tokcontent++;
9046
18
      tokcontent_len--;
9047
18
    }
9048
148
    if (tokcontent_len > 0 && (tokcontent[tokcontent_len-1] == '\'' || tokcontent[tokcontent_len-1] == '"'))  {
9049
12
      tokcontent_len--;
9050
12
    }
9051
9052
    /* Truncate to 30 characters and add a ... */
9053
148
    if (tokcontent_len > 30 + sizeof("...")-1) {
9054
8
      if (yyres) {
9055
4
        snprintf(buffer, sizeof(buffer), "%.*s \"%.*s...\"", (int)toktype_len, toktype, 30, tokcontent);
9056
4
        yystpcpy(yyres, buffer);
9057
4
      }
9058
8
      return toktype_len + 30 + sizeof(" \"...\"")-1;
9059
8
    }
9060
9061
140
    if (yyres) {
9062
70
      snprintf(buffer, sizeof(buffer), "%.*s \"%.*s\"", (int)toktype_len, toktype, (int)tokcontent_len, tokcontent);
9063
70
      yystpcpy(yyres, buffer);
9064
70
    }
9065
140
    return toktype_len + tokcontent_len + sizeof(" \"\"")-1;
9066
148
  }
9067
9068
  /* One of the expected tokens */
9069
9070
  /* Prevent the backslash getting doubled in the output (eugh) */
9071
3.26k
  if (strcmp(toktype, "\"'\\\\'\"") == 0) {
9072
0
    if (yyres) {
9073
0
      yystpcpy(yyres, "\"\\\"");
9074
0
    }
9075
0
    return sizeof("\"\\\"")-1;
9076
0
  }
9077
9078
  /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
9079
3.26k
  if (strcmp(toktype, "\"amp\"") == 0) {
9080
0
    if (yyres) {
9081
0
      yystpcpy(yyres, "token \"&\"");
9082
0
    }
9083
0
    return sizeof("token \"&\"")-1;
9084
0
  }
9085
9086
  /* Strip off the outer quote marks */
9087
3.26k
  if (toktype_len >= 2 && *toktype == '"') {
9088
2.90k
    toktype++;
9089
2.90k
    toktype_len -= 2;
9090
2.90k
  }
9091
9092
3.26k
  if (yyres) {
9093
227
    YYSIZE_T yyn = 0;
9094
9095
1.31k
    for (; yyn < toktype_len; ++yyn) {
9096
      /* Replace single quotes with double for consistency */
9097
1.09k
      if (toktype[yyn] == '\'') {
9098
324
        yyres[yyn] = '"';
9099
324
      }
9100
766
      else {
9101
766
        yyres[yyn] = toktype[yyn];
9102
766
      }
9103
1.09k
    }
9104
227
    yyres[toktype_len] = '\0';
9105
227
  }
9106
9107
3.26k
  return toktype_len;
9108
3.26k
}