Coverage Report

Created: 2025-06-13 06:43

/src/php-src/Zend/zend_language_parser.c
Line
Count
Source (jump to first uncovered line)
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
18.8k
#define YYSIZE_T size_t
77
257k
#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
738k
#define YYSTYPE         ZENDSTYPE
88
/* Substitute the variable and function names.  */
89
#define yyparse         zendparse
90
11.6M
#define yylex           zendlex
91
43.6k
#define yyerror         zenderror
92
#define yydebug         zenddebug
93
191k
#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
36.1M
#   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
238k
#   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
584k
#  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
195k
  YY_CAST (YYPTRDIFF_T,                                 \
420
           (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1)  \
421
            ? YYPTRDIFF_MAXIMUM                         \
422
            : YY_CAST (YYSIZE_T, -1)))
423
424
12.8k
#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
43.6k
#  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
917k
# 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
295k
# 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
35.9M
#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
2.14k
#  define YYSTACK_FREE YYFREE
542
#  ifndef YYSTACK_ALLOC_MAXIMUM
543
195k
#   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
2.14k
#   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
4.29k
# 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
4.29k
    do                                                                  \
598
4.29k
      {                                                                 \
599
4.29k
        YYPTRDIFF_T yynewbytes;                                         \
600
4.29k
        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
601
4.29k
        Stack = &yyptr->Stack_alloc;                                    \
602
4.29k
        yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
603
4.29k
        yyptr += yynewbytes / YYSIZEOF (*yyptr);                        \
604
4.29k
      }                                                                 \
605
4.29k
    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
4.29k
      __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
35.9M
#define YYFINAL  3
631
/* YYLAST -- Last index in YYTABLE.  */
632
61.8M
#define YYLAST   9878
633
634
/* YYNTOKENS -- Number of terminals.  */
635
24.2M
#define YYNTOKENS  185
636
/* YYNNTS -- Number of nonterminals.  */
637
#define YYNNTS  187
638
/* YYNRULES -- Number of rules.  */
639
#define YYNRULES  626
640
/* YYNSTATES -- Number of states.  */
641
#define YYNSTATES  1186
642
643
0
#define YYUNDEFTOK  2
644
20.8M
#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
20.8M
  (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,   723,   724,   729,   734,   735,   739,   740,   744,   746,
729
     751,   752,   757,   758,   763,   766,   772,   773,   778,   781,
730
     787,   788,   794,   795,   800,   802,   807,   808,   812,   814,
731
     820,   824,   831,   832,   836,   837,   838,   839,   843,   844,
732
     848,   849,   853,   855,   860,   861,   868,   869,   870,   871,
733
     875,   876,   877,   881,   882,   886,   888,   893,   895,   900,
734
     901,   905,   906,   907,   911,   913,   918,   919,   921,   925,
735
     926,   930,   936,   937,   941,   942,   946,   948,   954,   957,
736
     960,   963,   966,   970,   974,   975,   976,   981,   982,   986,
737
     987,   988,   992,   994,   999,  1000,  1004,  1009,  1011,  1015,
738
    1020,  1028,  1030,  1034,  1039,  1040,  1044,  1047,  1052,  1054,
739
    1061,  1063,  1070,  1072,  1077,  1078,  1079,  1080,  1081,  1082,
740
    1083,  1084,  1085,  1086,  1090,  1091,  1095,  1097,  1102,  1104,
741
    1109,  1110,  1111,  1117,  1118,  1122,  1123,  1131,  1130,  1141,
742
    1142,  1143,  1148,  1149,  1153,  1154,  1158,  1159,  1167,  1171,
743
    1172,  1175,  1179,  1180,  1181,  1185,  1186,  1190,  1191,  1192,
744
    1193,  1197,  1197,  1207,  1209,  1211,  1216,  1221,  1223,  1225,
745
    1227,  1229,  1231,  1232,  1234,  1236,  1238,  1240,  1242,  1244,
746
    1246,  1248,  1250,  1252,  1254,  1256,  1258,  1259,  1260,  1261,
747
    1262,  1264,  1266,  1268,  1270,  1272,  1273,  1274,  1275,  1276,
748
    1277,  1278,  1279,  1280,  1281,  1282,  1283,  1284,  1285,  1286,
749
    1287,  1288,  1289,  1291,  1293,  1295,  1297,  1299,  1301,  1303,
750
    1305,  1307,  1309,  1311,  1315,  1316,  1317,  1319,  1321,  1323,
751
    1324,  1325,  1326,  1327,  1328,  1329,  1330,  1331,  1336,  1337,
752
    1338,  1339,  1340,  1341,  1342,  1343,  1344,  1345,  1346,  1347,
753
    1348,  1350,  1355,  1360,  1368,  1372,  1376,  1380,  1384,  1388,
754
    1389,  1393,  1394,  1398,  1399,  1403,  1404,  1408,  1410,  1415,
755
    1417,  1419,  1419,  1426,  1429,  1433,  1434,  1435,  1439,  1441,
756
    1442,  1447,  1448,  1453,  1454,  1455,  1456,  1460,  1461,  1462,
757
    1463,  1465,  1466,  1467,  1468,  1472,  1473,  1474,  1475,  1476,
758
    1477,  1478,  1479,  1480,  1481,  1485,  1487,  1489,  1491,  1496,
759
    1497,  1501,  1505,  1506,  1510,  1511,  1512,  1516,  1517,  1521,
760
    1522,  1523,  1524,  1528,  1530,  1532,  1534,  1536,  1540,  1542,
761
    1544,  1546,  1551,  1552,  1553,  1557,  1559,  1564,  1566,  1568,
762
    1570,  1572,  1574,  1579,  1580,  1581,  1585,  1586,  1587,  1591,
763
    1596,  1597,  1601,  1603,  1608,  1610,  1612,  1614,  1616,  1618,
764
    1621,  1627,  1629,  1631,  1633,  1638,  1640,  1643,  1646,  1649,
765
    1651,  1653,  1656,  1660,  1661,  1662,  1663,  1668,  1669,  1670,
766
    1672,  1674,  1676,  1678,  1683,  1684,  1689
767
};
768
#endif
769
770
#if ZENDDEBUG || YYERROR_VERBOSE || 1
771
/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
772
   First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
773
static const char *const yytname[] =
774
{
775
  "\"end of file\"", "error", "$undefined", "\"'throw'\"",
776
  "PREC_ARROW_FUNCTION", "\"'include'\"", "\"'include_once'\"",
777
  "\"'require'\"", "\"'require_once'\"", "\"'or'\"", "\"'xor'\"",
778
  "\"'and'\"", "\"'print'\"", "\"'yield'\"", "\"'=>'\"",
779
  "\"'yield from'\"", "'='", "\"'+='\"", "\"'-='\"", "\"'*='\"",
780
  "\"'/='\"", "\"'.='\"", "\"'%='\"", "\"'&='\"", "\"'|='\"", "\"'^='\"",
781
  "\"'<<='\"", "\"'>>='\"", "\"'**='\"", "\"'?""?='\"", "'?'", "':'",
782
  "\"'?""?'\"", "\"'||'\"", "\"'&&'\"", "'|'", "'^'", "\"amp\"", "\"'&'\"",
783
  "\"'=='\"", "\"'!='\"", "\"'==='\"", "\"'!=='\"", "\"'<=>'\"", "'<'",
784
  "\"'<='\"", "'>'", "\"'>='\"", "\"'|>'\"", "'.'", "\"'<<'\"", "\"'>>'\"",
785
  "'+'", "'-'", "'*'", "'/'", "'%'", "'!'", "\"'instanceof'\"", "'~'",
786
  "\"'(int)'\"", "\"'(double)'\"", "\"'(string)'\"", "\"'(array)'\"",
787
  "\"'(object)'\"", "\"'(bool)'\"", "\"'(unset)'\"", "'@'", "\"'**'\"",
788
  "\"'clone'\"", "T_NOELSE", "\"'elseif'\"", "\"'else'\"", "\"integer\"",
789
  "\"floating-point number\"", "\"identifier\"",
790
  "\"fully qualified name\"", "\"namespace-relative name\"",
791
  "\"namespaced name\"", "\"variable\"", "T_INLINE_HTML",
792
  "\"string content\"", "\"quoted string\"", "\"variable name\"",
793
  "\"number\"", "\"'eval'\"", "\"'new'\"", "\"'exit'\"", "\"'if'\"",
794
  "\"'endif'\"", "\"'echo'\"", "\"'do'\"", "\"'while'\"", "\"'endwhile'\"",
795
  "\"'for'\"", "\"'endfor'\"", "\"'foreach'\"", "\"'endforeach'\"",
796
  "\"'declare'\"", "\"'enddeclare'\"", "\"'as'\"", "\"'switch'\"",
797
  "\"'endswitch'\"", "\"'case'\"", "\"'default'\"", "\"'match'\"",
798
  "\"'break'\"", "\"'continue'\"", "\"'goto'\"", "\"'function'\"",
799
  "\"'fn'\"", "\"'const'\"", "\"'return'\"", "\"'try'\"", "\"'catch'\"",
800
  "\"'finally'\"", "\"'use'\"", "\"'insteadof'\"", "\"'global'\"",
801
  "\"'static'\"", "\"'abstract'\"", "\"'final'\"", "\"'private'\"",
802
  "\"'protected'\"", "\"'public'\"", "\"'private(set)'\"",
803
  "\"'protected(set)'\"", "\"'public(set)'\"", "\"'readonly'\"",
804
  "\"'var'\"", "\"'unset'\"", "\"'isset'\"", "\"'empty'\"",
805
  "\"'__halt_compiler'\"", "\"'class'\"", "\"'trait'\"", "\"'interface'\"",
806
  "\"'enum'\"", "\"'extends'\"", "\"'implements'\"", "\"'namespace'\"",
807
  "\"'list'\"", "\"'array'\"", "\"'callable'\"", "\"'__LINE__'\"",
808
  "\"'__FILE__'\"", "\"'__DIR__'\"", "\"'__CLASS__'\"", "\"'__TRAIT__'\"",
809
  "\"'__METHOD__'\"", "\"'__FUNCTION__'\"", "\"'__PROPERTY__'\"",
810
  "\"'__NAMESPACE__'\"", "\"'#['\"", "\"'++'\"", "\"'--'\"",
811
  "\"'(void)'\"", "\"'->'\"", "\"'?->'\"", "\"comment\"",
812
  "\"doc comment\"", "\"open tag\"", "\"'<?='\"", "\"'?>'\"",
813
  "\"whitespace\"", "\"heredoc start\"", "\"heredoc end\"", "\"'${'\"",
814
  "\"'{$'\"", "\"'::'\"", "\"'\\\\'\"", "\"'...'\"",
815
  "\"invalid character\"", "T_ERROR", "','", "']'", "';'", "'('", "')'",
816
  "'{'", "'}'", "'['", "'`'", "'\"'", "'$'", "$accept", "start",
817
  "reserved_non_modifiers", "semi_reserved", "ampersand", "identifier",
818
  "top_statement_list", "namespace_declaration_name", "namespace_name",
819
  "legacy_namespace_name", "name", "attribute_decl", "attribute_group",
820
  "attribute", "attributes", "attributed_statement",
821
  "attributed_top_statement", "top_statement", "$@1", "$@2", "use_type",
822
  "group_use_declaration", "mixed_group_use_declaration", "possible_comma",
823
  "inline_use_declarations", "unprefixed_use_declarations",
824
  "use_declarations", "inline_use_declaration",
825
  "unprefixed_use_declaration", "use_declaration", "const_list",
826
  "inner_statement_list", "inner_statement", "statement", "$@3",
827
  "catch_list", "catch_name_list", "optional_variable",
828
  "finally_statement", "unset_variables", "unset_variable",
829
  "function_name", "function_declaration_statement", "is_reference",
830
  "is_variadic", "class_declaration_statement", "@4", "@5",
831
  "class_modifiers", "anonymous_class_modifiers",
832
  "anonymous_class_modifiers_optional", "class_modifier",
833
  "trait_declaration_statement", "@6", "interface_declaration_statement",
834
  "@7", "enum_declaration_statement", "@8", "enum_backing_type",
835
  "enum_case", "enum_case_expr", "extends_from", "interface_extends_list",
836
  "implements_list", "foreach_variable", "for_statement",
837
  "foreach_statement", "declare_statement", "switch_case_list",
838
  "case_list", "case_separator", "match", "match_arm_list",
839
  "non_empty_match_arm_list", "match_arm", "match_arm_cond_list",
840
  "while_statement", "if_stmt_without_else", "if_stmt",
841
  "alt_if_stmt_without_else", "alt_if_stmt", "parameter_list",
842
  "non_empty_parameter_list", "attributed_parameter",
843
  "optional_cpp_modifiers", "parameter", "optional_type_without_static",
844
  "type_expr", "type", "union_type_element", "union_type",
845
  "intersection_type", "type_expr_without_static", "type_without_static",
846
  "union_type_without_static_element", "union_type_without_static",
847
  "intersection_type_without_static", "return_type", "argument_list",
848
  "non_empty_argument_list", "argument", "global_var_list", "global_var",
849
  "static_var_list", "static_var", "class_statement_list",
850
  "attributed_class_statement", "class_statement", "class_name_list",
851
  "trait_adaptations", "trait_adaptation_list", "trait_adaptation",
852
  "trait_precedence", "trait_alias", "trait_method_reference",
853
  "absolute_trait_method_reference", "method_body", "property_modifiers",
854
  "method_modifiers", "class_const_modifiers",
855
  "non_empty_member_modifiers", "member_modifier", "property_list",
856
  "property", "hooked_property", "property_hook_list",
857
  "optional_property_hook_list", "property_hook_modifiers",
858
  "property_hook", "@9", "property_hook_body", "optional_parameter_list",
859
  "class_const_list", "class_const_decl", "const_decl", "echo_expr_list",
860
  "echo_expr", "for_cond_exprs", "for_exprs", "non_empty_for_exprs",
861
  "anonymous_class", "@10", "new_dereferenceable",
862
  "new_non_dereferenceable", "expr", "inline_function", "fn", "function",
863
  "backup_doc_comment", "backup_fn_flags", "backup_lex_pos", "returns_ref",
864
  "lexical_vars", "lexical_var_list", "lexical_var", "function_call",
865
  "@11", "class_name", "class_name_reference", "backticks_expr",
866
  "ctor_arguments", "dereferenceable_scalar", "scalar", "constant",
867
  "class_constant", "optional_expr", "variable_class_name",
868
  "fully_dereferenceable", "array_object_dereferenceable", "callable_expr",
869
  "callable_variable", "variable", "simple_variable", "static_member",
870
  "new_variable", "member_name", "property_name", "array_pair_list",
871
  "possible_array_pair", "non_empty_array_pair_list", "array_pair",
872
  "encaps_list", "encaps_var", "encaps_var_offset",
873
  "internal_functions_in_yacc", "isset_variables", "isset_variable", YY_NULLPTR
874
};
875
#endif
876
877
# ifdef YYPRINT
878
/* YYTOKNUM[NUM] -- (External) token number corresponding to the
879
   (internal) symbol number NUM (which must be that of a token).  */
880
static const yytype_int16 yytoknum[] =
881
{
882
       0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
883
     265,   266,   267,   268,   269,   270,    61,   271,   272,   273,
884
     274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
885
      63,    58,   284,   285,   286,   124,    94,   287,   288,   289,
886
     290,   291,   292,   293,    60,   294,    62,   295,   296,    46,
887
     297,   298,    43,    45,    42,    47,    37,    33,   299,   126,
888
     300,   301,   302,   303,   304,   305,   306,    64,   307,   308,
889
     309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
890
     319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
891
     329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
892
     339,   340,   341,   342,   343,   344,   345,   346,   347,   348,
893
     349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
894
     359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
895
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
896
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
897
     389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
898
     399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
899
     409,   410,   411,   412,    44,    93,    59,    40,    41,   123,
900
     125,    91,    96,    34,    36
901
};
902
# endif
903
904
36.5M
#define YYPACT_NINF (-1023)
905
906
#define yypact_value_is_default(Yyn) \
907
36.5M
  ((Yyn) == YYPACT_NINF)
908
909
677k
#define YYTABLE_NINF (-598)
910
911
#define yytable_value_is_error(Yyn) \
912
677k
  ((Yyn) == YYTABLE_NINF)
913
914
  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
915
     STATE-NUM.  */
916
static const yytype_int16 yypact[] =
917
{
918
   -1023,    80,  1825, -1023,  6906,  6906,  6906,  6906,  6906,  6906,
919
    6906,  6906,  6906,  6906,  6906,  6906,  6906,  6906,  6906,  6906,
920
    6906,  6906,  6906,  6906,  6906, -1023, -1023,    61, -1023, -1023,
921
   -1023, -1023, -1023, -1023,   -15,   442,    23,    28,  6906,  5212,
922
      60,    74,    97,   106,   135,   141,  6906,  6906,   107, -1023,
923
   -1023,   256,  6906,    42,   273,    -8,    24, -1023, -1023,    23,
924
     158,   162,   173,   178, -1023, -1023, -1023, -1023,  8956,   257,
925
     307, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023,
926
      40,  9334,  9334,  6906,   201, -1023,  6906, -1023,  5366,    41,
927
      64,    -7,   145, -1023,  4199, -1023, -1023, -1023, -1023, -1023,
928
   -1023,   430, -1023, -1023, -1023, -1023, -1023,    39, -1023,   421,
929
   -1023,   388, -1023,  8466, -1023,   104,   104, -1023,   175,   391,
930
   -1023,   146,   344,   195,   220,   330, -1023,   329,  1381, -1023,
931
   -1023, -1023, -1023,   290,    23,   148,  9658,   104,  9658,  9658,
932
    9658,  9658,  7061,  9750,  7061,   422,   422,    46,   422,   422,
933
     422,   422,   422,   422,   422,   422,   422, -1023, -1023,  6906,
934
   -1023, -1023,  6906, -1023,   345,   517,   361, -1023, -1023,   360,
935
      23, -1023,   497,  1181, -1023, -1023,  6906,   102, -1023,  9658,
936
     440,  6906,  5828,  6906,   256,  6906,  6906,  9658,   365,   377,
937
     383,   551,   114, -1023,   399, -1023, -1023, -1023, -1023, -1023,
938
   -1023, -1023,   -24,   386,   402,   123, -1023,   207, -1023, -1023,
939
     568,   380, -1023, -1023, -1023,  9334,  6906,  6906,   413,   519,
940
     529,   533,   555, -1023, -1023, -1023, -1023, -1023, -1023, -1023,
941
   -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023,
942
   -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023,
943
   -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023,
944
   -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023,
945
   -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023,
946
   -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023,
947
   -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023,
948
   -1023, -1023, -1023, -1023, -1023, -1023,   457,   473,  5366,  5366,
949
   -1023,   462,    23,   442,  6906,  5366,   476,   481, -1023, -1023,
950
     504,   504,  8516,   350,   149, -1023,  5982,  9334,   210, -1023,
951
    7816,  1979, -1023, -1023,   495,  6906,  9334,  9558,   516, -1023,
952
     518, -1023,   118,   521,    77,   118,   157,  6906, -1023, -1023,
953
     290, -1023, -1023, -1023, -1023, -1023,   523,  5212,   524,   667,
954
     539,  6906,  6906,  6906,  6136,  6906,  6906,  6906,  6906,  6906,
955
    6906,  6906,  6906,  6906,  6906,  6906,  6906,  6906,  6906,  6906,
956
    6906,  6906,  6906,  6906,  6906,  6906,  6906,  6906,  6906,  6906,
957
     458,  6906, -1023, -1023, -1023,     9,  4142,  4292,    34,    34,
958
    6906,    23,  5520,  6906,  6906,  6906,  6906,  6906,  6906,  6906,
959
    6906,  6906,  6906,  6906,  6906,  6906, -1023, -1023, -1023,  6906,
960
    7866,  7916, -1023, -1023, -1023,    -8, -1023,    34,    34,    -8,
961
    6906,  6906,  6906,  6906,  6906,  6906,  6906,  6290,  6906,    55,
962
     -15,   763,    13,   141,   673,   686,   124,    23,   162,   173,
963
     257,   307,   688,   692,   694,   696,   697,   702,   703,   704,
964
     705,  6444, -1023,   707,   566, -1023,  9658,  7966,  6906, -1023,
965
     564,  8016,  6906,   567,   570,  9658,  9489,   -43,  8066,  8116,
966
   -1023, -1023, -1023,  6906,   256, -1023, -1023,  2133,   670,   569,
967
     -19,   571,   423, -1023,   386, -1023,    -8, -1023,  6906,   676,
968
   -1023,   575, -1023,   -10,  9658,   582, -1023,  8166,   581,   621,
969
   -1023,   623,   733, -1023,   586, -1023,   588,   589,    40,   593,
970
   -1023,    23,  8216,   594, -1023,   700,   701,   313, -1023, -1023,
971
     261,  7514,   591, -1023, -1023, -1023,   470,   595, -1023,  4203,
972
   -1023, -1023, -1023,  5366,  9658,   212,  5674,   761,  5366, -1023,
973
   -1023,  7564, -1023,   708,  6906, -1023,  6906, -1023, -1023,  9707,
974
    8949,  7061,  6906,  9608,  7216,  7365,  9085,  9234,  9384,  9780,
975
    9780,  9810,  9810,  9810,  9810,  9810,  1812,  1812,  1812,  1812,
976
    1289,   794,   805,   805,   658,   658,    46,    46,    46, -1023,
977
     422,   601, -1023, -1023, -1023,   602,  6906,   607,   615,    23,
978
    6906,   607,   615,    23, -1023,  6906, -1023,    23,    23,   624,
979
   -1023,  9334,  7061,  7061,  7061,  7061,  7061,  7061,  7061,  7061,
980
    7061,  7061,  7061,  7061,  7061,  7061,  7061, -1023, -1023,    23,
981
   -1023, -1023, -1023, -1023,   628, -1023,  9658,  6906,  1363,   620,
982
    4442, -1023,  6906,  4596,  9658,  5828,  6598,  8703, -1023,     1,
983
     625,  9658, -1023, -1023, -1023,   217,   627, -1023, -1023,   709,
984
   -1023, -1023,  9658, -1023,  9334,   630,  6906,   632, -1023, -1023,
985
      40,   674,   633,    40, -1023,   165,   674, -1023,  1517,   799,
986
   -1023, -1023, -1023,   639, -1023, -1023, -1023,   734, -1023, -1023,
987
   -1023,   642, -1023,  6906, -1023, -1023,   641, -1023,   646,   648,
988
    9334,  9658,  6906, -1023, -1023,   621,  8266,  8316,  2287,  7216,
989
    6906,   976,   649,   976,  7614, -1023,  7665, -1023,  7715, -1023,
990
   -1023, -1023,   504,   621, -1023,  9658,  6906, -1023, -1023, -1023,
991
   -1023,  8366, -1023, -1023, -1023,   651,   655,  8666,  6906,  9658,
992
     653,  5366,  9334,    10,    11,  4750,   656,   657, -1023,  6752,
993
   -1023,   356,   735,   318,   663, -1023, -1023,   318, -1023,   677,
994
   -1023, -1023, -1023,    40, -1023, -1023,   680, -1023,   687,   545,
995
   -1023, -1023, -1023,   545, -1023, -1023,   606,   830,   832,   831,
996
   -1023, -1023,  1671, -1023,  6906, -1023, -1023,  8616,   695,   799,
997
    5366,   411,  7061,   674,  5212,   844,   710,  7216, -1023, -1023,
998
   -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023,  1586,   698,
999
     711, -1023,   177, -1023,  2045, -1023,   976,   699,   713,   713,
1000
   -1023,   674,  3981,   712,  2441,  5828,  6598,  9658,  5366,   718,
1001
      15,  8703,  4904, -1023, -1023, -1023, -1023,   499, -1023,   -26,
1002
     720,   716,   724, -1023,   725,  9658,   723,   727, -1023,   804,
1003
   -1023,   217,   728,   736, -1023, -1023,   680,   730,  1894,    40,
1004
   -1023, -1023,   850,    32,   545,   654,   654,   545,   738, -1023,
1005
    7061,   732, -1023,   741, -1023, -1023, -1023, -1023, -1023,   882,
1006
    1432, -1023,   326,   326,   876, -1023,   611,   886,   887,   883,
1007
   -1023,   745,   808, -1023, -1023,   749,   750,  8716,   751,    16,
1008
     752, -1023, -1023, -1023,  2595,   512,   755,  6906,     8,    21,
1009
   -1023, -1023,   913, -1023,  6752, -1023,  6906,   918,    40, -1023,
1010
   -1023, -1023, -1023,   318,   753, -1023, -1023,    40, -1023, -1023,
1011
    4056, -1023, -1023, -1023,   177,   826,   825,  1103, -1023,  2356,
1012
   -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023,   799,   759,
1013
    3981,   165,   925, -1023, -1023,   904,    33, -1023,   772,   326,
1014
     194,   194,   326,   882,   768,   882,   767, -1023,  5058, -1023,
1015
    4904,  2749,   774,   777, -1023,  8416, -1023, -1023, -1023, -1023,
1016
    6906, -1023,  9658,  6906,   144, -1023,  2903, -1023, -1023,  2510,
1017
    9106,   167, -1023,   875,   104,  7368, -1023,  2664, -1023, -1023,
1018
   -1023, -1023, -1023,   877, -1023, -1023, -1023, -1023, -1023, -1023,
1019
     226, -1023, -1023, -1023, -1023, -1023, -1023,   779, -1023, -1023,
1020
   -1023,  3981,  9658,  9658,    40, -1023,   781, -1023, -1023,   941,
1021
   -1023,  7067, -1023,   945,   483, -1023, -1023,  9106,   946,   947,
1022
     948,   949,   955,  9256,   489, -1023, -1023,  2818, -1023, -1023,
1023
     793, -1023,   897,   803, -1023,   800,  3126,  3057, -1023,  3981,
1024
   -1023,   801,  6906,   802,   812, -1023, -1023,  7217, -1023,   806,
1025
     807,   888,   869,   820,  6906,   813,   915, -1023, -1023,  6906,
1026
    6906,   946,   494,  9256, -1023, -1023,  6906,    19, -1023, -1023,
1027
     226,   822, -1023, -1023,   840, -1023,  9658, -1023, -1023, -1023,
1028
   -1023, -1023,  8806,    40,  9106,  9658, -1023,   985, -1023,   841,
1029
    9658,  9658, -1023, -1023,  9658,  6906, -1023, -1023,  3211, -1023,
1030
   -1023,  3365, -1023,  3519, -1023, -1023,  9106,   680, -1023,   838,
1031
     885,  6906, -1023,   976, -1023, -1023, -1023,  7765,  1018, -1023,
1032
   -1023, -1023, -1023, -1023, -1023,  1586,  2045,   104, -1023,  9658,
1033
     843, -1023, -1023, -1023, -1023,  1264, -1023,   950, -1023,   882,
1034
   -1023, -1023, -1023, -1023,   324,   845, -1023, -1023, -1023,   976,
1035
   -1023,  3673, -1023,   851,     7, -1023, -1023,  6906, -1023, -1023,
1036
   -1023,  8566,  3827, -1023, -1023, -1023
1037
};
1038
1039
  /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
1040
     Performed when YYTABLE does not specify something else to do.  Zero
1041
     means the default is an error.  */
1042
static const yytype_int16 yydefact[] =
1043
{
1044
      87,     0,     2,     1,     0,     0,     0,     0,     0,     0,
1045
     482,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1046
       0,     0,     0,     0,     0,   527,   528,    94,    96,    97,
1047
      95,   572,   164,   525,     0,   202,   521,     0,     0,     0,
1048
       0,     0,     0,     0,     0,     0,   549,   549,     0,   495,
1049
     494,     0,   549,     0,     0,     0,   513,   204,   205,   206,
1050
       0,     0,     0,     0,   196,   207,   209,   211,   119,     0,
1051
       0,   536,   537,   538,   544,   539,   540,   541,   542,   543,
1052
       0,     0,     0,     0,     0,   171,     0,   146,   590,   518,
1053
       0,     0,   535,   103,     0,   110,   113,    86,   112,   105,
1054
     106,     0,   198,   107,   108,   109,   491,   256,   152,     0,
1055
     153,   464,   465,     0,   487,   499,   499,   567,     0,   532,
1056
     479,   533,   534,     0,   557,     0,   511,   568,   407,   563,
1057
     569,   469,    94,   513,     0,     0,   486,   499,   619,   620,
1058
     622,   623,   481,   483,   485,   448,   449,   450,   451,   470,
1059
     471,   472,   473,   474,   475,   476,   478,   412,   174,     0,
1060
     513,   206,     0,   514,   202,   203,     0,   200,   404,   515,
1061
     406,   577,   516,     0,   522,   477,     0,     0,   390,   391,
1062
       0,     0,   395,     0,     0,     0,     0,   550,     0,     0,
1063
       0,     0,     0,   144,     0,   146,    90,    93,    91,   125,
1064
     126,    92,   141,     0,     0,     0,   136,     0,   310,   311,
1065
     314,     0,   313,   489,   508,     0,     0,     0,     0,     0,
1066
       0,     0,     0,    33,     3,     4,     6,     7,     8,     9,
1067
      10,    46,    47,    11,    13,    16,    17,    84,    89,     5,
1068
      12,    14,    15,    18,    19,    20,    21,    22,    23,    24,
1069
      25,    26,    27,    28,    29,    49,    50,    51,    52,    71,
1070
      53,    41,    42,    43,    70,    44,    45,    30,    31,    32,
1071
      34,    35,    36,    75,    76,    77,    78,    79,    80,    81,
1072
      37,    38,    39,    40,    61,    59,    60,    72,    56,    57,
1073
      58,    48,    54,    55,    66,    67,    68,    62,    63,    65,
1074
      64,    73,    69,    74,    85,    88,   117,     0,   590,   590,
1075
     100,   129,    98,   202,     0,   590,   556,   554,   558,   555,
1076
     427,   429,     0,   605,     0,   530,     0,     0,     0,   603,
1077
       0,     0,    83,    82,     0,     0,     0,   595,     0,   593,
1078
     589,   591,   519,     0,   520,     0,     0,     0,   574,   507,
1079
       0,   104,   114,   488,   194,   199,     0,     0,     0,     0,
1080
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1081
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1082
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1083
       0,     0,   165,   500,   496,   496,     0,     0,     0,     0,
1084
     549,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1085
       0,     0,     0,     0,     0,     0,   426,   428,   496,     0,
1086
       0,     0,   405,   201,   401,     0,   403,     0,     0,     0,
1087
     549,    33,     3,     4,     6,     7,    46,   482,    13,    94,
1088
       5,    12,   521,    71,   495,   494,    75,    81,    39,    40,
1089
      48,    54,   536,   537,   538,   544,   539,   540,   541,   542,
1090
     543,     0,   301,     0,   129,   304,   306,     0,     0,   163,
1091
       0,     0,     0,     0,   396,   400,     0,     0,     0,     0,
1092
     158,   159,   173,     0,     0,   111,   160,     0,     0,     0,
1093
     141,     0,     0,   121,     0,   123,     0,   161,     0,     0,
1094
     162,   129,   184,   552,   626,   129,   624,     0,     0,   218,
1095
     496,   220,   213,   116,     0,    87,     0,     0,   130,     0,
1096
      99,     0,     0,     0,   175,     0,     0,     0,   529,   604,
1097
       0,     0,   552,   602,   531,   601,   463,     0,   151,     0,
1098
     148,   145,   147,   590,   598,   552,     0,   524,   590,   480,
1099
     526,     0,   490,     0,     0,   257,     0,   146,   260,   432,
1100
     434,   433,     0,     0,   468,   430,   431,   435,   438,   436,
1101
     437,   454,   455,   452,   453,   461,   457,   458,   459,   460,
1102
     456,   439,   446,   447,   440,   441,   442,   444,   445,   462,
1103
     443,     0,   187,   188,   496,     0,     0,   545,   575,     0,
1104
       0,   546,   576,     0,   586,     0,   588,   570,   571,     0,
1105
     512,     0,   410,   413,   414,   415,   417,   418,   419,   420,
1106
     421,   422,   423,   424,   416,   425,   484,   621,   517,   521,
1107
     581,   579,   580,   582,     0,   303,   308,     0,   130,     0,
1108
       0,   389,     0,     0,   399,   392,     0,     0,   169,     0,
1109
       0,   496,   143,   176,   142,     0,     0,   122,   124,   141,
1110
     135,   309,   315,   312,   130,     0,   130,     0,   618,   115,
1111
       0,   222,     0,     0,   496,     0,   222,    87,     0,     0,
1112
     523,   101,   102,   553,   524,   607,   608,     0,   613,   616,
1113
     614,     0,   610,     0,   609,   612,     0,   149,     0,     0,
1114
       0,   594,     0,   592,   573,   218,     0,     0,     0,   467,
1115
       0,   268,     0,   268,     0,   509,     0,   510,     0,   565,
1116
     566,   564,   411,   218,   578,   307,     0,   305,   302,   146,
1117
     254,     0,   146,   252,   154,     0,     0,   394,     0,   397,
1118
       0,   590,     0,     0,   552,     0,   238,   238,   157,   244,
1119
     388,   182,   139,     0,   129,   132,   137,     0,   185,     0,
1120
     625,   617,   219,     0,   496,   317,   221,   327,     0,     0,
1121
     279,   290,   291,     0,   292,   214,   274,     0,   276,   277,
1122
     278,   496,     0,   120,     0,   615,   606,     0,     0,   600,
1123
     590,   552,   409,   222,     0,     0,     0,   466,   360,   361,
1124
     362,   356,   355,   354,   359,   358,   357,   363,   268,     0,
1125
     129,   264,   272,   267,   269,   352,   268,     0,   547,   548,
1126
     587,   222,   258,     0,     0,   395,     0,   398,   590,     0,
1127
     552,     0,     0,   146,   232,   170,   238,     0,   238,     0,
1128
     129,     0,   129,   246,   129,   250,     0,     0,   172,     0,
1129
     138,   130,     0,   129,   134,   166,   223,     0,   348,     0,
1130
     317,   275,     0,     0,     0,     0,     0,     0,     0,   118,
1131
     408,     0,   150,     0,   496,   255,   146,   261,   266,   299,
1132
     268,   262,     0,     0,   190,   273,   286,     0,   288,   289,
1133
     353,     0,   501,   496,   155,     0,     0,   393,     0,   524,
1134
       0,   146,   230,   167,     0,     0,     0,     0,     0,     0,
1135
     234,   130,     0,   243,   130,   245,   130,     0,     0,   146,
1136
     140,   131,   128,   130,     0,   317,   496,     0,   347,   208,
1137
     348,   323,   324,   316,   272,     0,     0,   346,   328,   348,
1138
     281,   284,   280,   282,   283,   285,   317,   611,   599,     0,
1139
     259,     0,     0,   265,   287,     0,     0,   191,   192,     0,
1140
       0,     0,     0,   299,     0,   299,     0,   253,     0,   226,
1141
       0,     0,     0,     0,   236,     0,   241,   242,   146,   235,
1142
       0,   247,   251,     0,   180,   178,     0,   133,   127,   348,
1143
       0,     0,   325,     0,   499,     0,   210,   348,   317,   300,
1144
     497,   294,   193,     0,   297,   293,   295,   296,   298,   497,
1145
       0,   497,   317,   146,   228,   156,   168,     0,   233,   237,
1146
     146,   240,   249,   248,     0,   181,     0,   183,   197,   216,
1147
     329,     0,   326,   496,     0,   365,   319,     0,    94,   279,
1148
     290,   291,     0,     0,     0,   385,   212,   348,   498,   496,
1149
       0,   505,     0,   129,   504,     0,   348,     0,   231,   239,
1150
     179,     0,     0,     0,    75,   330,   341,     0,   332,     0,
1151
       0,     0,   342,     0,     0,   366,     0,   318,   496,     0,
1152
       0,     0,     0,     0,   320,   195,     0,   373,   146,   506,
1153
     130,     0,   146,   402,     0,   146,   217,   215,   331,   333,
1154
     334,   335,     0,     0,     0,   496,   370,   496,   364,     0,
1155
     496,   496,   321,   384,   497,     0,   370,   270,     0,   503,
1156
     502,     0,   229,     0,   337,   338,   340,   336,   343,   367,
1157
     375,     0,   366,   268,   386,   387,   493,   373,   375,   497,
1158
     497,   177,   339,   370,   368,   375,   376,   499,   371,   496,
1159
       0,   271,   374,   189,   492,   375,   372,     0,   367,   299,
1160
     369,   496,   497,   377,     0,   382,   344,   146,   497,   268,
1161
     497,     0,   322,     0,     0,   345,   383,     0,   379,   146,
1162
     497,     0,     0,   378,   381,   380
1163
};
1164
1165
  /* YYPGOTO[NTERM-NUM].  */
1166
static const yytype_int16 yypgoto[] =
1167
{
1168
   -1023, -1023,   -79,  -920,   -42,   -64,  -478, -1023,   -51,  -194,
1169
     132,   510, -1023,   -56,    -2,     5,   936, -1023, -1023, -1023,
1170
     977, -1023, -1023,  -314, -1023, -1023,   829,   183,  -738,   541,
1171
     852,  -177, -1023,   110, -1023, -1023, -1023, -1023, -1023, -1023,
1172
     373, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023,
1173
   -1023,    -4, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023,
1174
   -1023,  -617, -1023,  -640,   208, -1023,    71, -1023, -1023,  -700,
1175
      67, -1023, -1023, -1023,   129, -1023, -1023, -1023, -1023, -1023,
1176
   -1023,  -697, -1023,   164, -1023,   238,   113,  -685,  -492,  -351,
1177
   -1023,   276, -1023,  -712,  -437, -1023,   168,  -943,   187, -1023,
1178
     414, -1023,   557, -1023,   561,  -820,   131, -1023,  -758, -1023,
1179
   -1023,    -3, -1023, -1023, -1023, -1023, -1023, -1023, -1023, -1023,
1180
    -832,  -808, -1023,   -13, -1023, -1022,   -70, -1023,   -77, -1023,
1181
   -1023, -1023,    26,   -12,   590, -1023,   605, -1023,   245,   431,
1182
     911, -1023,   -71, -1023,    44,   -48, -1023,    -1,   100,  -966,
1183
   -1023,  -114, -1023, -1023,    -9, -1023, -1023,    48,  -224, -1023,
1184
     448,   -68, -1023,   -40,    20,   -35, -1023, -1023, -1023, -1023,
1185
   -1023,    58,   184, -1023, -1023,   685,   -65,  -281,   536, -1023,
1186
   -1023,   528,   351, -1023, -1023, -1023,   419
1187
};
1188
1189
  /* YYDEFGOTO[NTERM-NUM].  */
1190
static const yytype_int16 yydefgoto[] =
1191
{
1192
      -1,     1,   303,   304,   336,   463,     2,   306,   752,   202,
1193
      92,   310,   311,    93,   135,   540,    96,    97,   514,   307,
1194
     753,   491,   204,   519,   754,   853,   205,   755,   756,   206,
1195
     192,   331,   541,   542,   745,   751,   984,  1026,   848,   501,
1196
     502,   594,    99,   958,  1003,   100,   553,   219,   101,   165,
1197
     166,   102,   103,   220,   104,   221,   105,   222,   676,   931,
1198
    1063,   671,   674,   764,   743,  1015,   903,   835,   748,   837,
1199
     978,   106,   841,   842,   843,   844,   734,   107,   108,   109,
1200
     110,   809,   810,   811,   812,   813,   884,   775,   776,   777,
1201
     778,   779,   885,   780,   887,   888,   889,   952,   174,   464,
1202
     465,   207,   208,   211,   212,   858,   932,   933,   766,  1032,
1203
    1067,  1068,  1069,  1070,  1071,  1072,  1168,   934,   935,   936,
1204
     814,   815,  1034,  1035,  1036,  1130,  1117,  1147,  1148,  1165,
1205
    1180,  1170,  1044,  1045,   193,   177,   178,   735,   473,   474,
1206
     168,   629,   111,   112,   113,   114,   115,   137,   595,  1048,
1207
    1086,   394,   965,  1053,  1054,   117,   401,   118,   170,   343,
1208
     175,   119,   120,   121,   122,   188,   123,   124,   125,   126,
1209
     127,   128,   129,   130,   172,   599,   607,   338,   339,   340,
1210
     341,   328,   329,   691,   131,   505,   506
1211
};
1212
1213
  /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
1214
     positive, shift that token.  If negative, reduce the rule whose
1215
     number is the opposite.  If YYTABLE_NINF, syntax error.  */
1216
static const yytype_int16 yytable[] =
1217
{
1218
      94,   116,   395,   201,   305,   856,   890,    95,   213,   490,
1219
     316,   316,   189,   317,   317,   850,   817,   194,   487,   854,
1220
    1009,  1177,  1011,   418,   831,  -224,   937,   516,   517,  -225,
1221
    -227,   167,   746,   164,   523,  1115,   781,   678,   351,   976,
1222
     939,   318,   318,  1050,   -14,  1055,   353,   839,   136,   138,
1223
     139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
1224
     149,   150,   151,   152,   153,   154,   155,   156,   157,   867,
1225
     962,    31,    31,   393,   393,  1042,   488,   907,   908,   351,
1226
       3,   488,   179,   169,   592,   213,   -84,   353,   793,   521,
1227
     187,   187,   158,   116,  1138,   393,   187,   355,   937,    95,
1228
     886,   319,   319,   210,   390,   989,   821,   937,   351,   604,
1229
     356,   357,    98,    31,   391,   132,    28,    29,    30,   891,
1230
     323,  1155,   342,  1042,   907,   908,   997,   322,   312,   890,
1231
     330,   484,   337,    49,    50,   648,   905,   593,   909,   320,
1232
     321,   332,   333,   323,   316,   345,   489,   317,  1136,   180,
1233
     639,   656,   201,   874,   910,   -84,   323,   937,   533,   160,
1234
     167,   423,   159,  1042,  -186,   937,   589,   163,  -186,   991,
1235
     954,   955,   347,  1153,  1154,   318,    91,    91,  1047,  1024,
1236
     747,   893,   190,  1178,   977,   987,  1179,   665,   832,  -224,
1237
     173,   667,  1056,  -225,  -227,   769,  1164,   323,  1116,   782,
1238
     173,   979,  1172,   420,  1174,   176,   421,   882,   326,   327,
1239
     940,  1001,   163,   605,  1183,   937,  1162,   466,    91,   171,
1240
     467,   195,   886,  1025,   937,   471,   475,   476,   323,   478,
1241
     479,   326,   327,    49,    50,   319,   323,   181,   533,   209,
1242
     132,    28,    29,    30,   326,   327,   214,  1004,  1005,  1005,
1243
    1008,   182,   132,    28,    29,    30,   316,    49,    50,   317,
1244
     504,   507,   698,   332,   333,   316,   999,   350,   317,   132,
1245
      28,    29,    30,   503,   183,   348,   468,   861,   469,   349,
1246
     323,   862,   324,   184,   770,   326,   327,   318,   484,   323,
1247
     485,   533,   196,  -513,  1126,   198,   318,   494,  1146,   495,
1248
     659,    80,   552,  -558,  -558,  1051,  1146,   771,   772,   167,
1249
    1043,   164,   185,  1146,  -514,   528,   326,   327,   186,   771,
1250
     772,   214,   173,  1146,   326,   327,   199,  -558,   200,   539,
1251
     116,   191,   597,   601,   608,   215,   771,   772,   890,   216,
1252
     550,   859,   773,  1030,   396,  1127,  1031,   319,   196,   197,
1253
     217,   198,   337,   337,   883,   218,   319,   426,   522,   337,
1254
     611,   169,   631,   632,   397,   609,   687,   325,   326,   327,
1255
     531,   883,   941,   942,   942,   945,   534,   326,   327,   544,
1256
     708,   496,   199,   497,   200,   532,  -597,  -597,   688,  -551,
1257
    -597,   551,   689,   196,   545,   634,   198,   690,   213,    49,
1258
      50,   132,    28,    29,    30,   559,   560,   561,   563,   564,
1259
     565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
1260
     575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
1261
     585,   586,   587,   588,   308,   590,  1150,   167,   169,   164,
1262
     852,   692,   693,   201,   187,   163,   612,   613,   614,   615,
1263
     616,   617,   618,   619,   620,   621,   622,   623,   624,   625,
1264
     829,   196,   197,   626,   198,    57,    58,   555,   771,   772,
1265
     846,   847,  1173,   161,   187,   136,   138,   139,   140,   141,
1266
     142,   143,   157,   351,   309,   539,   116,   398,   399,   169,
1267
     391,   353,   358,   359,   591,   424,   881,   171,    80,   520,
1268
    1166,  -555,  -555,  1167,   700,   636,  -559,   525,   526,   873,
1269
     360,   400,   179,  -555,   943,   944,   644,   132,    28,    29,
1270
      30,    31,   163,  1006,  1007,  -555,   912,   651,   915,   425,
1271
     917,   527,   470,   132,    28,    29,    30,    31,   116,   924,
1272
     316,   480,   662,   317,   697,  -556,  -556,   898,  -554,  -554,
1273
      57,    58,   822,   481,   499,   824,   500,  -556,   161,   482,
1274
    -554,   160,    57,    58,   354,  -562,   312,   483,  -561,  -556,
1275
     161,   318,  -554,   163,   171,   486,   316,   160,   493,   317,
1276
     598,   602,   606,   606,   498,  -596,  -596,   337,   610,  -596,
1277
     701,   508,   337,   316,   509,    80,   317,   494,   706,   658,
1278
     707,   906,   907,   908,   510,   742,   709,   318,   511,   630,
1279
     672,   606,   606,   633,   973,   907,   908,   344,   346,   162,
1280
     132,    28,    29,    30,   318,   171,    91,  -553,  -553,   316,
1281
     512,   319,   317,   513,   214,   162,   518,    57,    58,  -553,
1282
     714,  -280,    91,   864,   716,   161,  -293,  -560,   959,   718,
1283
     163,  -553,   515,  -562,   427,   428,   904,  1076,  -561,  1077,
1284
     318,  -552,  -552,  1083,   770,  1084,   429,   319,  1083,   722,
1285
    1112,   316,   543,  -552,   317,   529,    94,   116,   430,   535,
1286
     209,   725,   466,    95,   319,  -552,   731,   771,   772,   737,
1287
     739,   547,   548,   529,   712,   535,   529,   535,   557,   950,
1288
     554,   556,   318,   549,   -43,   744,   539,   116,   426,   808,
1289
     504,   808,   387,   388,   389,   558,   390,   -70,   762,   -66,
1290
     319,   767,   503,   -67,   971,   -68,   391,   -62,   -63,   132,
1291
      28,    29,    30,   -65,   -64,   -73,   -69,   787,   637,  1091,
1292
     638,   642,   986,   645,   646,   654,   792,   657,   655,   664,
1293
     730,   750,   351,   733,   797,   210,   666,   669,   791,   670,
1294
     316,   673,   319,   317,   675,   677,   679,   680,   682,   684,
1295
     636,   695,   696,   770,   768,   685,   686,   702,   711,   713,
1296
      94,   116,   827,   705,  -583,   337,   715,    95,    98,   742,
1297
     717,   318,  -585,   845,   719,   720,   771,   772,   728,   721,
1298
     830,  1021,   163,   724,   749,   163,   757,   774,   759,   488,
1299
     761,   767,   765,   763,   808,   784,  -560,   786,   785,   788,
1300
     539,   116,   539,   116,   789,   790,   816,   825,   870,   826,
1301
     828,   773,   836,   838,   337,   849,  1057,   851,   132,    28,
1302
      29,    30,    31,  1059,   383,   384,   385,   386,   387,   388,
1303
     389,   319,   390,   855,   859,   834,   930,   385,   386,   387,
1304
     388,   389,   391,   390,   857,   865,   860,   866,   867,   475,
1305
     897,   872,   337,   391,   351,   876,   879,   892,   808,   920,
1306
    1037,   868,   160,    57,    58,   880,   877,   864,   894,   744,
1307
    -584,   161,    98,   899,   911,   163,   913,  -202,   914,   916,
1308
     918,   774,   539,   116,   875,   774,   919,   938,   922,   925,
1309
     923,  1118,   947,   951,   957,  1121,    80,   946,  1123,   948,
1310
     962,   960,   961,   963,   964,   967,  1029,   980,   968,   969,
1311
     970,   974,   983,   988,   994,    49,   995,   930,   998,  1000,
1312
     162,   959,   902,  1002,   774,  1010,  1012,    91,   539,   116,
1313
    1018,   975,   393,  1019,  1033,  1058,  1049,  1062,   845,  1061,
1314
     982,  1074,  1079,   -75,   -54,   -55,   985,  1066,  1052,   539,
1315
     116,  1080,  1088,  1078,   949,   767,  1089,  1090,  1097,  1092,
1316
    1095,  -513,  1100,  1101,   539,   116,  1103,   930,  1102,  1104,
1317
    1171,   163,  1106,   966,  1107,   930,   774,   774,   774,   774,
1318
    1120,  1131,  1182,  1066,   798,   799,   800,   801,   802,   803,
1319
     804,   805,   806,   807,   774,   774,  1122,  1143,  1133,   539,
1320
     116,  1159,  1169,  1125,  1022,  1161,   990,  1023,   681,  1176,
1321
     352,   203,   492,  1157,   921,   660,   477,   758,    80,   900,
1322
    1128,  1016,  1020,   981,   953,   930,   878,   993,  1052,   863,
1323
     163,   956,   727,   661,   930,   539,   116,   539,   116,   163,
1324
     663,   992,  1142,  1108,  1099,  1144,   774,  1151,  1156,  1082,
1325
     896,  1113,  1060,   641,   652,   422,   736,   723,  1014,  1073,
1326
     902,  1119,   603,   774,   703,   760,     0,     0,     0,   351,
1327
       0,   774,   774,   774,   774,   798,   799,   800,   801,   802,
1328
     803,   804,   805,   806,   807,   393,  1096,     0,     0,     0,
1329
       0,     0,     0,     0,     0,  1073,   539,   116,  1105,   539,
1330
     116,   539,   116,  1110,  1111,     0,     0,   774,  1145,    80,
1331
    1114,   808,     0,  1075,     0,     0,  1145,   798,   799,   800,
1332
     801,   802,   803,   804,   805,   806,   807,     0,     0,  1087,
1333
       0,   767,     0,  1145,  -263,     0,   163,     0,     0,  1137,
1334
       0,     0,     0,   163,     0,     0,     0,   808,     0,   539,
1335
     116,    80,     0,     0,     0,  1149,     0,     0,  1109,     0,
1336
     539,   116,     0,     0,   431,     0,   432,   433,   434,   435,
1337
     228,   229,   230,   436,   437,     0,    11,     0,  1152,   163,
1338
       0,     0,     0,     0,     0,  1129,     0,  1132,     0,     0,
1339
    1134,  1135,  -349,     0,  -351,     0,     0,     0,     0,     0,
1340
       0,  1181,   798,   799,   800,   801,   802,   803,   804,   805,
1341
     806,   807,     0,    12,    13,   163,     0,     0,    14,   233,
1342
      15,    16,    17,    18,    19,    20,    21,    22,    23,  1158,
1343
     438,     0,   235,   236,    25,    26,   439,    28,    29,    30,
1344
      31,  1163,     0,    33,     0,     0,   440,   441,   442,   242,
1345
     243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
1346
     253,   254,   255,   256,   257,   258,   443,   260,   261,   262,
1347
     444,   445,   265,   266,   267,   268,   269,   270,   271,   272,
1348
     446,   274,   275,   276,   277,   278,     0,     0,     0,   447,
1349
     280,   281,   448,   449,     0,   284,   285,   286,   287,   288,
1350
     289,   290,   450,   451,   293,   452,   453,   454,   455,   456,
1351
     457,   458,   459,   460,    80,    81,    82,     0,   382,   383,
1352
     384,   385,   386,   387,   388,   389,    84,   390,     0,     0,
1353
       0,     0,   461,     0,     0,     0,     0,   391,    86,   462,
1354
       0,     0,    88,    89,    90,    91,   431,     0,   432,   433,
1355
     434,   435,   228,   229,   230,   436,   437,     0,    11,     0,
1356
       0,     0,     0,   798,   799,   800,   801,   802,   803,   804,
1357
     805,   806,   807,     0,     0,     0,     0,   402,   403,   404,
1358
     405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
1359
     415,     0,     0,     0,     0,    12,    13,    80,     0,     0,
1360
      14,   233,    15,    16,    17,    18,    19,    20,    21,    22,
1361
      23,     0,   438,     0,   235,   236,    25,    26,   439,    28,
1362
      29,    30,    31,     0,  1160,    33,     0,     0,   440,   441,
1363
     442,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1364
     251,   252,   253,   254,   255,   256,   257,   258,   443,   260,
1365
     261,   262,   444,   445,   265,   266,   267,   268,   269,   270,
1366
     271,   272,   446,   274,   275,   276,   277,   278,     0,     0,
1367
       0,   447,   280,   281,   448,   449,     0,   284,   285,   286,
1368
     287,   288,   289,   290,   450,   451,   293,   452,   453,   454,
1369
     455,   456,   457,   458,   459,   460,    80,    81,    82,     0,
1370
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1371
      10,     0,    11,     0,   726,   416,   417,     0,  -552,  -552,
1372
      86,     0,     0,     0,    88,    89,    90,    91,     0,     0,
1373
    -552,   798,   799,   800,   801,   802,   803,   804,   805,   806,
1374
     807,     0,  -552,     0,     0,     0,     0,     0,     0,    12,
1375
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1376
      19,    20,    21,    22,    23,    80,    24,     0,     0,     0,
1377
      25,    26,    27,    28,    29,    30,    31,    32,     0,    33,
1378
       0,     0,    34,    35,    36,    37,     0,    38,    39,    40,
1379
    -130,    41,     0,    42,     0,    43,     0,     0,    44,     0,
1380
       0,     0,    45,    46,    47,    48,    49,    50,    51,    52,
1381
      53,     0,     0,    54,     0,    55,    56,    57,    58,     0,
1382
       0,     0,     0,     0,     0,    59,     0,    60,    61,    62,
1383
      63,    64,    65,    66,    67,     0,     0,    68,    69,    70,
1384
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1385
      80,    81,    82,    83,     4,     0,     5,     6,     7,     8,
1386
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1387
       0,     0,     0,    85,    86,     0,    87,   783,    88,    89,
1388
      90,    91,     0,     0,     0,   798,   799,   800,   801,   802,
1389
     803,   804,   805,   806,   807,     0,     0,     0,     0,     0,
1390
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1391
      15,    16,    17,    18,    19,    20,    21,    22,    23,    80,
1392
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1393
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1394
       0,    38,    39,    40,     0,    41,     0,    42,     0,    43,
1395
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1396
      49,    50,    51,    52,    53,     0,     0,    54,     0,    55,
1397
      56,    57,    58,     0,     0,     0,     0,     0,     0,    59,
1398
       0,    60,    61,    62,    63,    64,    65,    66,    67,     0,
1399
       0,    68,    69,    70,     0,    71,    72,    73,    74,    75,
1400
      76,    77,    78,    79,    80,    81,    82,    83,     4,     0,
1401
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1402
      11,     0,     0,     0,     0,     0,     0,    85,    86,     0,
1403
      87,   869,    88,    89,    90,    91,  -598,  -598,  -598,  -598,
1404
     381,   382,   383,   384,   385,   386,   387,   388,   389,     0,
1405
     390,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1406
     391,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1407
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1408
      27,    28,    29,    30,    31,    32,     0,    33,     0,     0,
1409
      34,    35,    36,    37,     0,    38,    39,    40,     0,    41,
1410
       0,    42,     0,    43,     0,     0,    44,     0,     0,     0,
1411
      45,    46,    47,    48,    49,    50,    51,    52,    53,     0,
1412
       0,    54,     0,    55,    56,    57,    58,     0,     0,     0,
1413
       0,     0,     0,    59,     0,    60,    61,    62,    63,    64,
1414
      65,    66,    67,     0,     0,    68,    69,    70,     0,    71,
1415
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1416
      82,    83,     4,     0,     5,     6,     7,     8,     0,     0,
1417
      84,     9,    10,     0,    11,     0,     0,   926,     0,     0,
1418
       0,    85,    86,     0,    87,  -350,    88,    89,    90,    91,
1419
     927,     0,     0,   798,   799,   800,   801,   802,   803,   804,
1420
     805,   806,   807,   928,     0,     0,     0,     0,     0,     0,
1421
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1422
      17,    18,    19,    20,    21,    22,    23,    80,    24,     0,
1423
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1424
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1425
      39,    40,     0,    41,   929,    42,     0,    43,     0,     0,
1426
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1427
       0,    52,    53,     0,     0,     0,     0,    55,    56,    57,
1428
      58,     0,     0,     0,     0,     0,     0,    59,     0,    60,
1429
      61,    62,   537,    64,    65,    66,    67,     0,     0,     0,
1430
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1431
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1432
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1433
       0,     0,     0,     0,     0,    85,    86,     0,    87,   538,
1434
      88,    89,    90,    91,   798,   799,   800,   801,   802,   803,
1435
     804,   805,   806,   807,     0,     0,     0,     0,     0,     0,
1436
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1437
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1438
      23,     0,    24,     0,     0,     0,    25,    26,    27,    28,
1439
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1440
      36,    37,     0,    38,    39,    40,     0,    41,     0,    42,
1441
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1442
      47,    48,    49,    50,     0,    52,    53,     0,     0,     0,
1443
       0,    55,    56,    57,    58,     0,     0,     0,     0,     0,
1444
       0,    59,     0,    60,    61,    62,   537,    64,    65,    66,
1445
      67,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1446
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1447
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1448
      10,     0,    11,     0,     0,     0,     0,     0,     0,    85,
1449
      86,     0,    87,   653,    88,    89,    90,    91,     0,     0,
1450
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1451
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1452
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1453
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1454
      25,    26,    27,    28,    29,    30,    31,    32,     0,    33,
1455
       0,     0,    34,    35,    36,    37,   796,    38,    39,    40,
1456
       0,    41,     0,    42,     0,    43,     0,     0,    44,     0,
1457
       0,     0,    45,    46,    47,    48,    49,    50,     0,    52,
1458
      53,     0,     0,     0,     0,    55,    56,    57,    58,     0,
1459
       0,     0,     0,     0,     0,    59,     0,    60,    61,    62,
1460
     537,    64,    65,    66,    67,     0,     0,     0,    69,    70,
1461
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1462
      80,    81,    82,    83,     4,     0,     5,     6,     7,     8,
1463
       0,     0,    84,     9,    10,     0,    11,     0,     0,   926,
1464
       0,     0,     0,    85,    86,     0,    87,  -350,    88,    89,
1465
      90,    91,   927,     0,     0,   798,   799,   800,   801,   802,
1466
     803,   804,   805,   806,   807,   928,     0,     0,     0,     0,
1467
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1468
      15,    16,    17,    18,    19,    20,    21,    22,    23,    80,
1469
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1470
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1471
       0,    38,    39,    40,   895,    41,   996,    42,     0,    43,
1472
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1473
      49,    50,     0,    52,    53,     0,     0,     0,     0,    55,
1474
      56,    57,    58,     0,     0,     0,     0,     0,     0,    59,
1475
       0,    60,    61,    62,   537,    64,    65,    66,    67,     0,
1476
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1477
      76,    77,    78,    79,    80,    81,    82,    83,     4,     0,
1478
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1479
      11,     0,     0,   926,     0,     0,     0,    85,    86,     0,
1480
      87,  -350,    88,    89,    90,    91,   927,     0,     0,   798,
1481
     799,   800,   801,   802,   803,   804,   805,   806,   807,   928,
1482
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1483
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1484
      21,    22,    23,    80,    24,     0,     0,     0,    25,    26,
1485
      27,    28,    29,    30,    31,    32,     0,    33,     0,     0,
1486
      34,    35,    36,    37,     0,    38,    39,    40,     0,    41,
1487
    1028,    42,     0,    43,   972,     0,    44,     0,     0,     0,
1488
      45,    46,    47,    48,    49,    50,     0,    52,    53,     0,
1489
       0,     0,     0,    55,    56,    57,    58,     0,     0,     0,
1490
       0,     0,     0,    59,     0,    60,    61,    62,   537,    64,
1491
      65,    66,    67,     0,     0,     0,    69,    70,     0,    71,
1492
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1493
      82,    83,     4,     0,     5,     6,     7,     8,     0,     0,
1494
      84,     9,    10,     0,    11,     0,     0,   926,     0,     0,
1495
       0,    85,    86,     0,    87,  -350,    88,    89,    90,    91,
1496
     927,     0,     0,   798,   799,   800,   801,   802,   803,   804,
1497
     805,   806,   807,   928,     0,     0,     0,     0,     0,     0,
1498
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1499
      17,    18,    19,    20,    21,    22,    23,    80,    24,     0,
1500
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1501
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1502
      39,    40,     0,    41,  1046,    42,  1017,    43,     0,     0,
1503
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1504
       0,    52,    53,     0,     0,     0,     0,    55,    56,    57,
1505
      58,     0,     0,     0,     0,     0,     0,    59,     0,    60,
1506
      61,    62,   537,    64,    65,    66,    67,     0,     0,     0,
1507
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1508
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1509
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1510
       0,   926,     0,     0,     0,    85,    86,     0,    87,  -350,
1511
      88,    89,    90,    91,   927,     0,     0,   798,   799,   800,
1512
     801,   802,   803,   804,   805,   806,   807,   928,     0,     0,
1513
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1514
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1515
      23,    80,    24,     0,     0,     0,    25,    26,    27,    28,
1516
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1517
      36,    37,     0,    38,    39,    40,     0,    41,  1085,    42,
1518
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1519
      47,    48,    49,    50,     0,    52,    53,     0,     0,     0,
1520
       0,    55,    56,    57,    58,     0,     0,     0,     0,     0,
1521
       0,    59,     0,    60,    61,    62,   537,    64,    65,    66,
1522
      67,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1523
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1524
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1525
      10,     0,    11,     0,     0,     0,     0,     0,     0,    85,
1526
      86,     0,    87,  1027,    88,    89,    90,    91,     0,     0,
1527
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1528
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1529
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1530
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1531
      25,    26,    27,    28,    29,    30,    31,    32,     0,    33,
1532
       0,     0,    34,    35,    36,    37,     0,    38,    39,    40,
1533
       0,    41,  1094,    42,     0,    43,     0,     0,    44,     0,
1534
       0,     0,    45,    46,    47,    48,    49,    50,     0,    52,
1535
      53,     0,     0,     0,     0,    55,    56,    57,    58,     0,
1536
       0,     0,     0,     0,     0,    59,     0,    60,    61,    62,
1537
     537,    64,    65,    66,    67,     0,     0,     0,    69,    70,
1538
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1539
      80,    81,    82,    83,     4,     0,     5,     6,     7,     8,
1540
       0,     0,    84,     9,    10,     0,    11,     0,     0,   926,
1541
       0,     0,     0,    85,    86,     0,    87,  -350,    88,    89,
1542
      90,    91,   927,     0,     0,   798,   799,   800,   801,   802,
1543
     803,   804,   805,   806,   807,   928,     0,     0,     0,     0,
1544
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1545
      15,    16,    17,    18,    19,    20,    21,    22,    23,    80,
1546
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1547
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1548
       0,    38,    39,    40,     0,    41,  1093,    42,     0,    43,
1549
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1550
      49,    50,     0,    52,    53,     0,     0,     0,     0,    55,
1551
      56,    57,    58,     0,     0,     0,     0,     0,     0,    59,
1552
       0,    60,    61,    62,   537,    64,    65,    66,    67,     0,
1553
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1554
      76,    77,    78,    79,    80,    81,    82,    83,     4,     0,
1555
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1556
      11,     0,     0,     0,     0,     0,     0,    85,    86,     0,
1557
      87,  1139,    88,    89,    90,    91,     0,     0,     0,     0,
1558
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1559
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1560
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1561
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1562
      27,    28,    29,    30,    31,    32,     0,    33,     0,     0,
1563
      34,    35,    36,    37,     0,    38,    39,    40,     0,    41,
1564
       0,    42,     0,    43,     0,     0,    44,     0,     0,     0,
1565
      45,    46,    47,    48,    49,    50,     0,    52,    53,     0,
1566
       0,     0,     0,    55,    56,    57,    58,     0,     0,     0,
1567
       0,     0,     0,    59,     0,    60,    61,    62,   537,    64,
1568
      65,    66,    67,     0,     0,     0,    69,    70,     0,    71,
1569
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1570
      82,    83,     4,     0,     5,     6,     7,     8,     0,     0,
1571
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1572
       0,    85,    86,     0,    87,  1140,    88,    89,    90,    91,
1573
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1574
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1575
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1576
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1577
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1578
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1579
      39,    40,     0,    41,     0,    42,     0,    43,     0,     0,
1580
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1581
       0,    52,    53,     0,     0,     0,     0,    55,    56,    57,
1582
      58,     0,     0,     0,     0,     0,     0,    59,     0,    60,
1583
      61,    62,   537,    64,    65,    66,    67,     0,     0,     0,
1584
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1585
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1586
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1587
       0,     0,     0,     0,     0,    85,    86,     0,    87,  1141,
1588
      88,    89,    90,    91,     0,     0,     0,     0,     0,     0,
1589
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1590
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1591
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1592
      23,     0,    24,     0,     0,     0,    25,    26,    27,    28,
1593
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1594
      36,    37,     0,    38,    39,    40,     0,    41,     0,    42,
1595
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1596
      47,    48,    49,    50,     0,    52,    53,     0,     0,     0,
1597
       0,    55,    56,    57,    58,     0,     0,     0,     0,     0,
1598
       0,    59,     0,    60,    61,    62,   537,    64,    65,    66,
1599
      67,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1600
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1601
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1602
      10,     0,    11,     0,     0,     0,     0,     0,     0,    85,
1603
      86,     0,    87,  1175,    88,    89,    90,    91,     0,     0,
1604
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1605
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1606
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1607
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1608
      25,    26,    27,    28,    29,    30,    31,    32,     0,    33,
1609
       0,     0,    34,    35,    36,    37,     0,    38,    39,    40,
1610
       0,    41,     0,    42,     0,    43,     0,     0,    44,     0,
1611
       0,     0,    45,    46,    47,    48,    49,    50,     0,    52,
1612
      53,     0,     0,     0,     0,    55,    56,    57,    58,     0,
1613
       0,     0,     0,     0,     0,    59,     0,    60,    61,    62,
1614
     537,    64,    65,    66,    67,     0,     0,     0,    69,    70,
1615
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1616
      80,    81,    82,    83,     4,     0,     5,     6,     7,     8,
1617
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1618
       0,     0,     0,    85,    86,     0,    87,  1185,    88,    89,
1619
      90,    91,     0,     0,     0,     0,     0,     0,     0,     0,
1620
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1621
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1622
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1623
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1624
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1625
       0,    38,    39,    40,     0,    41,     0,    42,     0,    43,
1626
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1627
      49,    50,     0,    52,    53,     0,     0,     0,     0,    55,
1628
      56,    57,    58,     0,     0,     0,     0,     0,     0,    59,
1629
       0,    60,    61,    62,   537,    64,    65,    66,    67,     0,
1630
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1631
      76,    77,    78,    79,    80,    81,    82,    83,     0,     0,
1632
       0,     0,     0,     0,     0,   223,    84,   224,   225,   226,
1633
     227,   228,   229,   230,   231,   232,     0,    85,    86,   926,
1634
      87,     0,    88,    89,    90,    91,     0,  -350,     0,     0,
1635
       0,     0,     0,     0,     0,   798,   799,   800,   801,   802,
1636
     803,   804,   805,   806,   807,   928,     0,     0,     0,     0,
1637
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1638
     233,     0,     0,     0,     0,     0,     0,     0,     0,    80,
1639
       0,   234,     0,   235,   236,     0,     0,   237,     0,     0,
1640
       0,    31,     0,     0,     0,     0,     0,   239,   240,   241,
1641
     242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
1642
     252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
1643
     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
1644
     272,   273,   274,   275,   276,   277,   278,     0,     0,     0,
1645
     279,   280,   281,   282,   283,     0,   284,   285,   286,   287,
1646
     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
1647
     298,   299,   300,   301,   302,   223,     0,   224,   225,   226,
1648
     227,   228,   229,   230,   231,   232,     0,     0,    49,    50,
1649
      51,     0,    49,    50,     0,     0,     0,     0,   350,    57,
1650
      58,   596,   350,    57,    58,     0,    91,   161,     0,     0,
1651
       0,   161,     0,    64,    65,    66,    67,    64,    65,    66,
1652
      67,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1653
     233,     0,    80,     0,     0,     0,    80,     0,     0,     0,
1654
       0,   234,     0,   235,   236,     0,     0,   237,     0,     0,
1655
       0,    31,     0,     0,     0,     0,     0,   239,   240,   241,
1656
     242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
1657
     252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
1658
     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
1659
     272,   273,   274,   275,   276,   277,   278,     0,     0,     0,
1660
     279,   280,   281,   282,   283,     0,   284,   285,   286,   287,
1661
     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
1662
     298,   299,   300,   301,   302,     4,     0,     5,     6,     7,
1663
       8,     0,     0,     0,     9,    10,     0,    11,     0,     0,
1664
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1665
       0,   600,     0,   729,     0,     0,    91,     0,     0,     0,
1666
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1667
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1668
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1669
       0,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1670
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1671
      37,     0,    38,    39,    40,     0,    41,     0,    42,     0,
1672
      43,     0,     0,    44,     0,     0,     0,    45,    46,    47,
1673
      48,    49,    50,     0,    52,    53,     0,     0,     0,     0,
1674
      55,    56,     0,     0,     0,     0,     0,     0,     0,     0,
1675
     134,     0,    60,    61,    62,     0,     0,     0,     0,     0,
1676
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1677
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1678
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1679
       0,    11,     0,     0,     0,     0,     0,     0,    85,    86,
1680
       0,    87,     0,    88,    89,    90,    91,   732,     0,     0,
1681
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1682
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1683
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1684
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1685
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1686
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1687
      41,     0,    42,     0,    43,     0,     0,    44,     0,     0,
1688
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1689
       0,     0,     0,     0,    55,    56,     0,     0,     0,     0,
1690
       0,     0,     0,     0,   134,     0,    60,    61,    62,     0,
1691
       0,     0,     0,     0,     0,     0,     0,    69,    70,     0,
1692
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1693
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1694
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1695
       0,     0,    85,    86,     0,    87,     0,    88,    89,    90,
1696
      91,   833,     0,     0,     0,     0,     0,     0,     0,     0,
1697
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1698
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1699
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1700
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1701
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1702
      38,    39,    40,     0,    41,     0,    42,     0,    43,     0,
1703
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1704
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1705
       0,     0,     0,     0,     0,     0,     0,     0,   134,     0,
1706
      60,    61,    62,     0,     0,     0,     0,     0,     0,     0,
1707
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1708
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1709
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1710
       0,     0,     0,     0,     0,     0,    85,    86,     0,    87,
1711
       0,    88,    89,    90,    91,   901,     0,     0,     0,     0,
1712
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1713
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1714
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1715
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1716
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1717
      35,    36,    37,     0,    38,    39,    40,     0,    41,     0,
1718
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1719
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1720
       0,     0,    55,    56,     0,     0,     0,     0,     0,     0,
1721
       0,     0,   134,     0,    60,    61,    62,     0,     0,     0,
1722
       0,     0,     0,     0,     0,    69,    70,     0,    71,    72,
1723
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1724
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1725
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1726
      85,    86,     0,    87,     0,    88,    89,    90,    91,  1013,
1727
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1728
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1729
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1730
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1731
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1732
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1733
      40,     0,    41,     0,    42,     0,    43,     0,     0,    44,
1734
       0,     0,     0,    45,    46,    47,    48,    49,    50,     0,
1735
      52,    53,     0,     0,     0,     0,    55,    56,     0,     0,
1736
       0,     0,     0,     0,     0,     0,   134,     0,    60,    61,
1737
      62,     0,     0,     0,     0,     0,     0,     0,     0,    69,
1738
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1739
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1740
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1741
       0,     0,     0,     0,    85,    86,     0,    87,     0,    88,
1742
      89,    90,    91,     0,     0,     0,     0,     0,     0,     0,
1743
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1744
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1745
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1746
       0,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1747
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1748
      37,     0,    38,    39,    40,     0,    41,     0,    42,     0,
1749
      43,     0,     0,    44,     0,     0,     0,    45,    46,    47,
1750
      48,    49,    50,     0,    52,    53,     0,     0,     0,     0,
1751
      55,    56,     0,     0,     0,     0,     0,     0,     0,     0,
1752
     134,     0,    60,    61,    62,     0,     0,     0,     0,     0,
1753
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1754
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1755
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1756
       0,    11,     0,     0,     0,     0,     0,     0,    85,    86,
1757
       0,    87,     0,    88,    89,    90,    91,     0,     0,     0,
1758
       0,     0,     0,   332,   333,     0,     0,     0,     0,     0,
1759
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1760
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1761
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1762
      26,   132,    28,    29,    30,    31,     0,     0,    33,     0,
1763
       0,    34,    35,    36,     0,     0,     0,     0,     0,     0,
1764
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1765
       0,    45,     0,     0,     0,    49,    50,     0,     0,     0,
1766
       0,     0,     0,     0,     0,   133,     0,     0,     0,     0,
1767
       0,     0,     0,     0,   134,     0,     0,    61,    62,     0,
1768
       0,     0,     0,     0,     0,     0,     0,   334,    70,     0,
1769
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1770
      81,    82,     0,     4,     0,     5,     6,     7,     8,     0,
1771
       0,    84,     9,    10,     0,    11,     0,   335,     0,     0,
1772
       0,     0,     0,    86,     0,     0,     0,    88,    89,    90,
1773
      91,     0,     0,     0,     0,     0,     0,   332,   333,     0,
1774
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1775
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1776
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1777
       0,     0,     0,    25,    26,   132,    28,    29,    30,    31,
1778
       0,     0,    33,     0,     0,    34,    35,    36,     0,     0,
1779
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1780
       0,     0,     0,     0,     0,    45,     0,     0,     0,    49,
1781
      50,     0,     0,     0,     0,     0,     0,     0,     0,   133,
1782
       0,     0,     0,     0,     0,     0,     0,     0,   134,     0,
1783
       0,    61,    62,     0,     0,     0,     0,     0,     0,     0,
1784
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1785
      77,    78,    79,    80,    81,    82,     0,     4,     0,     5,
1786
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1787
       0,     0,     0,     0,     0,     0,     0,    86,     0,     0,
1788
       0,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1789
       0,   332,   333,     0,     0,     0,     0,     0,     0,     0,
1790
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1791
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1792
      22,    23,     0,    24,     0,     0,     0,    25,    26,   132,
1793
      28,    29,    30,    31,     0,     0,    33,     0,     0,    34,
1794
      35,    36,     0,     0,     0,     0,     0,     0,     0,     0,
1795
       0,     0,     0,     0,     0,     0,     0,     0,     0,    45,
1796
       0,     0,     0,    49,    50,     0,     0,     0,     0,     0,
1797
       0,     0,     0,   133,     0,     0,     0,     0,     0,     0,
1798
       0,     0,   134,     0,     0,    61,    62,     0,     0,     0,
1799
       0,     0,     0,     0,     0,   699,    70,     0,    71,    72,
1800
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1801
       0,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1802
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1803
       0,    86,     0,     0,     0,    88,    89,    90,    91,     0,
1804
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1805
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1806
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1807
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1808
       0,    25,    26,   132,    28,    29,    30,    31,     0,     0,
1809
      33,     0,     0,    34,    35,    36,     0,     0,     0,     0,
1810
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1811
       0,     0,     0,    45,     0,     0,     0,    49,    50,     0,
1812
       0,     0,     0,     0,     0,     0,     0,   133,     0,     0,
1813
       0,     0,     0,     0,     0,     0,   134,     0,     0,    61,
1814
      62,     0,     0,     0,     0,     0,     0,     0,     0,    69,
1815
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1816
      79,    80,    81,    82,   472,     4,     0,     5,     6,     7,
1817
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1818
       0,     0,     0,     0,     0,    86,     0,     0,     0,    88,
1819
      89,    90,    91,     0,     0,     0,     0,     0,     0,     0,
1820
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1821
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1822
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1823
       0,    24,     0,     0,     0,    25,    26,   132,    28,    29,
1824
      30,    31,     0,     0,    33,   530,     0,    34,    35,    36,
1825
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1826
       0,     0,     0,     0,     0,     0,     0,    45,     0,     0,
1827
       0,    49,    50,     0,     0,     0,     0,     0,     0,     0,
1828
       0,   133,     0,     0,     0,     0,     0,     0,     0,     0,
1829
     134,     0,     0,    61,    62,     0,     0,     0,     0,     0,
1830
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1831
      75,    76,    77,    78,    79,    80,    81,    82,     0,     4,
1832
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1833
       0,    11,     0,     0,     0,     0,     0,     0,     0,    86,
1834
       0,     0,     0,    88,    89,    90,    91,   562,     0,     0,
1835
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1836
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1837
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1838
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1839
      26,   132,    28,    29,    30,    31,     0,     0,    33,     0,
1840
       0,    34,    35,    36,     0,     0,     0,     0,     0,     0,
1841
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1842
       0,    45,     0,     0,     0,    49,    50,     0,     0,     0,
1843
       0,     0,     0,     0,     0,   133,     0,     0,     0,     0,
1844
       0,     0,     0,     0,   134,     0,     0,    61,    62,     0,
1845
       0,     0,     0,     0,     0,     0,     0,    69,    70,     0,
1846
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1847
      81,    82,     0,     4,     0,     5,     6,     7,     8,     0,
1848
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1849
       0,     0,     0,    86,     0,     0,     0,    88,    89,    90,
1850
      91,   -47,     0,     0,     0,     0,     0,     0,     0,     0,
1851
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1852
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1853
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1854
       0,     0,     0,    25,    26,   132,    28,    29,    30,    31,
1855
       0,     0,    33,     0,     0,    34,    35,    36,     0,     0,
1856
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1857
       0,     0,     0,     0,     0,    45,     0,     0,     0,    49,
1858
      50,     0,     0,     0,     0,     0,     0,     0,     0,   133,
1859
       0,     0,     0,     0,     0,     0,     0,     0,   134,     0,
1860
       0,    61,    62,     0,     0,     0,     0,     0,     0,     0,
1861
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1862
      77,    78,    79,    80,    81,    82,     0,     4,     0,     5,
1863
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1864
       0,     0,     0,     0,     0,     0,     0,    86,     0,     0,
1865
       0,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1866
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1867
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1868
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1869
      22,    23,     0,    24,     0,     0,     0,    25,    26,   132,
1870
      28,    29,    30,    31,     0,     0,    33,     0,     0,    34,
1871
      35,    36,     0,     0,     0,     0,     0,     0,     0,     0,
1872
       0,     0,     0,     0,     0,     0,     0,     0,     0,    45,
1873
       0,     0,     0,    49,    50,     0,     0,     0,     0,     0,
1874
       0,     0,     0,   133,     0,     0,     0,     0,     0,     0,
1875
       0,     0,   134,     0,     0,    61,    62,     0,     0,     0,
1876
       0,     0,     0,     0,     0,    69,    70,     0,    71,    72,
1877
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1878
       0,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1879
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1880
       0,    86,   635,     0,     0,    88,    89,    90,    91,     0,
1881
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1882
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1883
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1884
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1885
       0,    25,    26,   132,    28,    29,    30,    31,     0,     0,
1886
      33,     0,     0,    34,    35,    36,     0,     0,     0,     0,
1887
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1888
       0,     0,     0,    45,     0,     0,     0,    49,    50,     0,
1889
       0,     0,     0,     0,     0,     0,     0,   133,     0,     0,
1890
       0,     0,     0,     0,     0,     0,   134,     0,     0,    61,
1891
      62,     0,     0,     0,     0,     0,     0,     0,     0,    69,
1892
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1893
      79,    80,    81,    82,   738,     4,     0,     5,     6,     7,
1894
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1895
       0,     0,     0,     0,     0,    86,     0,     0,     0,    88,
1896
      89,    90,    91,     0,     0,     0,     0,     0,     0,     0,
1897
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1898
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1899
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1900
       0,    24,     0,     0,     0,    25,    26,   132,    28,    29,
1901
      30,    31,     0,     0,    33,     0,     0,    34,    35,    36,
1902
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1903
       0,     0,     0,     0,     0,     0,   840,    45,     0,     0,
1904
       0,    49,    50,     0,     0,     0,     0,     0,     0,     0,
1905
       0,   133,     0,     0,     0,     0,     0,     0,     0,     0,
1906
     134,     0,     0,    61,    62,     0,     0,     0,     0,     0,
1907
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1908
      75,    76,    77,    78,    79,    80,    81,    82,     0,     4,
1909
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1910
       0,    11,     0,     0,     0,     0,     0,     0,     0,    86,
1911
       0,     0,     0,    88,    89,    90,    91,     0,     0,     0,
1912
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1913
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1914
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1915
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1916
      26,   132,    28,    29,    30,    31,     0,     0,    33,     0,
1917
       0,    34,    35,    36,     0,     0,     0,     0,     0,     0,
1918
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1919
       0,    45,     0,     0,     0,    49,    50,     0,     0,     0,
1920
       0,     0,     0,     0,     0,   133,     0,     0,     0,     0,
1921
       0,     0,     0,     0,   134,     0,     0,    61,    62,     0,
1922
       0,     0,     0,     0,     0,     0,     0,    69,    70,     0,
1923
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1924
      81,    82,     0,     0,     0,     0,     0,     0,     0,     0,
1925
     223,    84,   224,   225,   226,   227,   228,   229,   230,   231,
1926
     232,     0,     0,    86,     0,     0,     0,    88,    89,    90,
1927
      91,   364,     0,   365,   366,   367,   368,   369,   370,   371,
1928
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
1929
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
1930
       0,     0,     0,     0,     0,   233,     0,     0,     0,   391,
1931
       0,     0,     0,     0,     0,     0,   234,     0,   235,   236,
1932
       0,     0,   439,    28,    29,    30,     0,     0,     0,     0,
1933
       0,     0,   239,   240,   241,   242,   243,   244,   245,   246,
1934
     247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1935
     257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
1936
     267,   268,   269,   270,   271,   272,  1064,   274,   275,   276,
1937
     277,   278,     0,     0,     0,   279,   280,   281,   282,   283,
1938
       0,   284,   285,   286,   287,   288,   289,   290,   291,   292,
1939
     293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
1940
     223,     0,   224,   225,   226,   227,   228,   229,   230,   231,
1941
     232,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1942
       0,     0,     0,     0,     0,     0,     0,  1065,   365,   366,
1943
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
1944
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
1945
     387,   388,   389,     0,   390,   233,     0,     0,     0,     0,
1946
       0,     0,     0,     0,   391,     0,   234,     0,   235,   236,
1947
       0,     0,   439,    28,    29,    30,     0,     0,     0,     0,
1948
       0,     0,   239,   240,   241,   242,   243,   244,   245,   246,
1949
     247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1950
     257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
1951
     267,   268,   269,   270,   271,   272,  1064,   274,   275,   276,
1952
     277,   278,     0,     0,     0,   279,   280,   281,   282,   283,
1953
       0,   284,   285,   286,   287,   288,   289,   290,   291,   292,
1954
     293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
1955
       0,   223,     0,   224,   225,   226,   227,   228,   229,   230,
1956
     231,   232,     0,     0,     0,     0,     0,     0,     0,     0,
1957
       0,     0,     0,     0,     0,     0,     0,  1098,   769,   367,
1958
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
1959
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
1960
     388,   389,     0,   390,     0,     0,   233,     0,     0,     0,
1961
       0,     0,     0,   391,     0,     0,     0,   234,     0,   235,
1962
     236,     0,     0,  1038,    28,    29,    30,     0,     0,     0,
1963
       0,     0,     0,   239,   240,   241,   242,   243,   244,   245,
1964
     246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
1965
     256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
1966
     266,   267,   268,   269,   270,   271,   272,  1039,   274,   275,
1967
     276,   277,   278,     0,     0,     0,   279,   280,   281,   282,
1968
     283,     0,   284,   285,   286,   287,   288,   289,   290,   291,
1969
    1040,  1041,   294,   295,   296,   297,   298,   299,   300,   301,
1970
     302,     0,     0,   361,   362,   363,     0,     0,     0,     0,
1971
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1972
       0,     0,     0,     0,   364,   773,   365,   366,   367,   368,
1973
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
1974
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
1975
     389,     0,   390,   361,   362,   363,     0,     0,     0,     0,
1976
       0,     0,   391,     0,     0,     0,     0,     0,     0,     0,
1977
       0,     0,     0,     0,   364,     0,   365,   366,   367,   368,
1978
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
1979
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
1980
     389,     0,   390,   361,   362,   363,     0,     0,     0,     0,
1981
       0,     0,   391,     0,     0,     0,     0,     0,     0,     0,
1982
       0,     0,     0,     0,   364,     0,   365,   366,   367,   368,
1983
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
1984
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
1985
     389,     0,   390,     0,   361,   362,   363,     0,     0,     0,
1986
       0,     0,   391,     0,     0,     0,     0,     0,     0,     0,
1987
       0,     0,     0,     0,   694,   364,     0,   365,   366,   367,
1988
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
1989
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
1990
     388,   389,     0,   390,   361,   362,   363,     0,     0,     0,
1991
       0,     0,     0,   391,     0,     0,     0,     0,     0,     0,
1992
       0,     0,     0,     0,   704,   364,     0,   365,   366,   367,
1993
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
1994
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
1995
     388,   389,     0,   390,   361,   362,   363,     0,     0,     0,
1996
       0,     0,     0,   391,     0,     0,     0,     0,     0,     0,
1997
       0,     0,     0,     0,   818,   364,     0,   365,   366,   367,
1998
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
1999
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2000
     388,   389,     0,   390,     0,   361,   362,   363,     0,     0,
2001
       0,     0,     0,   391,     0,     0,     0,     0,     0,     0,
2002
       0,     0,     0,     0,     0,   819,   364,     0,   365,   366,
2003
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2004
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2005
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2006
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2007
       0,     0,     0,     0,     0,   820,   364,     0,   365,   366,
2008
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2009
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2010
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2011
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2012
       0,     0,     0,     0,  1116,     0,   364,     0,   365,   366,
2013
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2014
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2015
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2016
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2017
       0,     0,     0,     0,   536,     0,   364,     0,   365,   366,
2018
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2019
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2020
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2021
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2022
       0,     0,     0,     0,   627,     0,   364,     0,   365,   366,
2023
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2024
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2025
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2026
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2027
       0,     0,     0,     0,   628,     0,   364,     0,   365,   366,
2028
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2029
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2030
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2031
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2032
       0,     0,     0,     0,   640,     0,   364,     0,   365,   366,
2033
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2034
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2035
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2036
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2037
       0,     0,     0,     0,   643,     0,   364,     0,   365,   366,
2038
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2039
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2040
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2041
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2042
       0,     0,     0,     0,   649,     0,   364,     0,   365,   366,
2043
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2044
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2045
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2046
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2047
       0,     0,     0,     0,   650,     0,   364,     0,   365,   366,
2048
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2049
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2050
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2051
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2052
       0,     0,     0,     0,   668,     0,   364,     0,   365,   366,
2053
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2054
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2055
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2056
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2057
       0,     0,     0,     0,   683,     0,   364,     0,   365,   366,
2058
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2059
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2060
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2061
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2062
       0,     0,     0,     0,   794,     0,   364,   976,   365,   366,
2063
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2064
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2065
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2066
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2067
       0,     0,     0,     0,   795,     0,   364,     0,   365,   366,
2068
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2069
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2070
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2071
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2072
       0,     0,     0,     0,   823,     0,   364,     0,   365,   366,
2073
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2074
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2075
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2076
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2077
       0,     0,   977,     0,     0,     0,   364,     0,   365,   366,
2078
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2079
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2080
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2081
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2082
       0,     0,   392,     0,     0,     0,   364,     0,   365,   366,
2083
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2084
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2085
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2086
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2087
       0,     0,   524,     0,     0,     0,   364,     0,   365,   366,
2088
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2089
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2090
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2091
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2092
     332,   333,  1184,     0,     0,     0,   364,     0,   365,   366,
2093
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2094
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2095
     387,   388,   389,     0,   390,     0,     0,     0,   132,    28,
2096
      29,    30,    31,     0,   391,    33,     0,     0,     0,   313,
2097
       0,   871,     0,     0,     0,     0,     0,     0,     0,     0,
2098
       0,     0,     0,     0,     0,     0,     0,     0,     0,   223,
2099
       0,   224,   225,   226,   227,   228,   229,   230,   231,   232,
2100
       0,     0,   160,     0,     0,     0,     0,     0,     0,     0,
2101
       0,   134,     0,     0,     0,     0,     0,     0,     0,     0,
2102
    -400,     0,     0,     0,   740,    70,     0,    71,    72,    73,
2103
      74,    75,    76,    77,    78,    79,     0,     0,     0,     0,
2104
       0,     0,     0,     0,   233,     0,     0,     0,     0,     0,
2105
       0,     0,     0,     0,     0,   234,     0,   235,   236,     0,
2106
     314,  1124,     0,     0,   741,     0,    90,    91,     0,     0,
2107
    -397,   239,   240,   241,   242,   243,   244,   245,   246,   247,
2108
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
2109
     258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
2110
     268,   269,   270,   271,   272,   798,   799,   800,   801,   802,
2111
     803,   804,   805,   806,   807,   280,   281,   282,   283,     0,
2112
     284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
2113
     294,   295,   296,   297,   298,   299,   300,   301,   302,   223,
2114
     363,   224,   225,   226,   227,   228,   229,   230,   231,   232,
2115
       0,     0,     0,     0,     0,     0,     0,     0,     0,   364,
2116
       0,   365,   366,   367,   368,   369,   370,   371,   372,   373,
2117
     374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
2118
     384,   385,   386,   387,   388,   389,     0,   390,     0,     0,
2119
       0,     0,     0,     0,   233,     0,     0,   391,     0,     0,
2120
       0,     0,     0,     0,     0,   234,     0,   235,   236,     0,
2121
       0,   237,     0,     0,   238,     0,     0,     0,     0,     0,
2122
       0,   239,   240,   241,   242,   243,   244,   245,   246,   247,
2123
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
2124
     258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
2125
     268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
2126
     278,     0,     0,     0,   279,   280,   281,   282,   283,     0,
2127
     284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
2128
     294,   295,   296,   297,   298,   299,   300,   301,   302,   223,
2129
       0,   224,   225,   226,   227,   228,   229,   230,   231,   232,
2130
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2131
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2132
     388,   389,     0,   390,     0,     0,     0,     0,     0,     0,
2133
       0,     0,     0,   391,     0,     0,     0,     0,     0,     0,
2134
       0,     0,     0,     0,   233,     0,     0,     0,     0,     0,
2135
       0,     0,     0,     0,     0,   234,     0,   235,   236,     0,
2136
       0,   237,     0,     0,     0,     0,     0,     0,     0,     0,
2137
       0,   239,   240,   241,   242,   243,   244,   245,   246,   247,
2138
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
2139
     258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
2140
     268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
2141
     278,     0,     0,     0,   279,   280,   281,   282,   283,     0,
2142
     284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
2143
     294,   295,   296,   297,   298,   299,   300,   301,   302,   223,
2144
       0,   224,   225,   226,   227,   228,   229,   230,   231,   232,
2145
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
2146
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
2147
     389,     0,   390,     0,     0,     0,     0,     0,     0,     0,
2148
       0,     0,   391,     0,     0,     0,     0,     0,     0,     0,
2149
       0,     0,     0,     0,   233,     0,     0,     0,     0,     0,
2150
       0,     0,     0,     0,     0,   234,     0,   235,   236,     0,
2151
       0,  1081,     0,     0,     0,     0,     0,     0,     0,     0,
2152
       0,   239,   240,   241,   242,   243,   244,   245,   246,   247,
2153
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
2154
     258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
2155
     268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
2156
     278,     0,     0,     0,   279,   280,   281,   282,   283,     0,
2157
     284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
2158
     294,   295,   296,   297,   298,   299,   300,   301,   302,   132,
2159
      28,    29,    30,    31,     0,     0,    33,     0,     0,     0,
2160
     313,   370,   371,   372,   373,   374,   375,   376,   377,   378,
2161
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
2162
     389,     0,   390,     0,     0,     0,     0,     0,     0,     0,
2163
       0,     0,   391,   160,     0,     0,     0,     0,     0,     0,
2164
       0,     0,   134,     0,     0,     0,     0,     0,     0,     0,
2165
       0,     0,     0,     0,     0,     0,    70,     0,    71,    72,
2166
      73,    74,    75,    76,    77,    78,    79,     0,     0,     0,
2167
       0,     0,     0,     0,     0,     0,     0,     0,   361,   362,
2168
     363,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2169
       0,   314,     0,     0,     0,   315,     0,    90,    91,   364,
2170
       0,   365,   366,   367,   368,   369,   370,   371,   372,   373,
2171
     374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
2172
     384,   385,   386,   387,   388,   389,     0,   390,     0,     0,
2173
       0,     0,     0,     0,     0,     0,     0,   391,     0,     0,
2174
       0,     0,     0,     0,     0,     0,     0,   361,   362,   363,
2175
       0,     0,   546,     0,     0,     0,     0,     0,     0,     0,
2176
       0,     0,     0,     0,     0,     0,     0,     0,   364,   647,
2177
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2178
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2179
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2180
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2181
       0,     0,     0,     0,     0,     0,     0,     0,   364,   710,
2182
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2183
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2184
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2185
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2186
       0,     0,     0,     0,     0,     0,     0,     0,   364,     0,
2187
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2188
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2189
     385,   386,   387,   388,   389,     0,   390,   362,   363,     0,
2190
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2191
       0,     0,     0,     0,     0,     0,     0,   364,     0,   365,
2192
     366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2193
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2194
     386,   387,   388,   389,   419,   390,     0,     0,     0,     0,
2195
       0,     0,     0,     0,     0,   391,     0,     0,     0,     0,
2196
     364,     0,   365,   366,   367,   368,   369,   370,   371,   372,
2197
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2198
     383,   384,   385,   386,   387,   388,   389,     0,   390,     0,
2199
       0,     0,     0,     0,     0,     0,     0,     0,   391,   372,
2200
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2201
     383,   384,   385,   386,   387,   388,   389,     0,   390,     0,
2202
       0,     0,     0,     0,     0,     0,     0,     0,   391,  -598,
2203
    -598,  -598,  -598,  -598,   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
2206
};
2207
2208
static const yytype_int16 yycheck[] =
2209
{
2210
       2,     2,   116,    54,    68,   763,   814,     2,    56,   203,
2211
      81,    82,    47,    81,    82,   753,   713,    52,   195,   757,
2212
     963,    14,   965,   137,    14,    14,   858,   308,   309,    14,
2213
      14,    35,    31,    35,   315,    16,   676,   515,    94,    31,
2214
     860,    81,    82,  1009,    31,  1011,    94,   747,     4,     5,
2215
       6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
2216
      16,    17,    18,    19,    20,    21,    22,    23,    24,    37,
2217
      37,    79,    79,   115,   116,   995,   100,   103,   104,   135,
2218
       0,   100,    38,    35,    75,   133,    31,   135,   705,   313,
2219
      46,    47,    31,    94,  1116,   137,    52,   101,   930,    94,
2220
     812,    81,    82,    79,    58,   925,   723,   939,   164,    75,
2221
      71,    72,     2,    79,    68,    75,    76,    77,    78,   816,
2222
      79,  1143,    81,  1043,   103,   104,   946,    83,    80,   937,
2223
      86,   174,    88,   109,   110,   178,   836,   128,   838,    81,
2224
      82,    37,    38,    79,   215,    81,   170,   215,  1114,    39,
2225
     464,   170,   203,   793,   180,   100,    79,   989,    81,   119,
2226
     164,   165,   177,  1083,   174,   997,   390,    35,   178,   927,
2227
     882,   883,   179,  1139,  1140,   215,   184,   184,   998,    35,
2228
     179,   821,    75,   176,   176,   923,   179,   501,   178,   178,
2229
     177,   505,  1012,   178,   178,    30,  1162,    79,   179,   677,
2230
     177,   180,  1168,   159,  1170,   177,   162,    30,   167,   168,
2231
     178,   178,    80,   179,  1180,  1047,  1159,   173,   184,    35,
2232
     176,   179,   934,    79,  1056,   181,   182,   183,    79,   185,
2233
     186,   167,   168,   109,   110,   215,    79,   177,    81,    55,
2234
      75,    76,    77,    78,   167,   168,    59,   959,   960,   961,
2235
     962,   177,    75,    76,    77,    78,   327,   109,   110,   327,
2236
     216,   217,   543,    37,    38,   336,   951,   119,   336,    75,
2237
      76,    77,    78,   215,   177,    91,   174,   769,   176,    92,
2238
      79,   773,    81,   177,   119,   167,   168,   327,   174,    79,
2239
     176,    81,    75,   169,  1102,    78,   336,   174,  1130,   176,
2240
     494,   153,   350,   157,   158,    79,  1138,   142,   143,   313,
2241
     995,   313,   177,  1145,   169,   166,   167,   168,   177,   142,
2242
     143,   134,   177,  1155,   167,   168,   109,   181,   111,   331,
2243
     331,    75,   396,   397,   399,   177,   142,   143,  1146,   177,
2244
     183,   174,   177,   176,   169,  1103,   179,   327,    75,    76,
2245
     177,    78,   308,   309,   177,   177,   336,   170,   314,   315,
2246
     402,   313,   427,   428,   169,   400,    53,   166,   167,   168,
2247
     326,   177,   864,   865,   866,   867,   166,   167,   168,   335,
2248
     557,   174,   109,   176,   111,   327,   174,   175,    75,   169,
2249
     178,   347,    79,    75,   336,   430,    78,    84,   446,   109,
2250
     110,    75,    76,    77,    78,   361,   362,   363,   364,   365,
2251
     366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2252
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2253
     386,   387,   388,   389,   177,   391,  1133,   441,   390,   441,
2254
     754,   180,   181,   494,   400,   313,   402,   403,   404,   405,
2255
     406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
2256
     741,    75,    76,   419,    78,   120,   121,   357,   142,   143,
2257
     114,   115,  1169,   128,   430,   431,   432,   433,   434,   435,
2258
     436,   437,   438,   539,   177,   487,   487,   157,   158,   441,
2259
      68,   539,    71,    72,   394,   134,   810,   313,   153,   312,
2260
     176,   157,   158,   179,   546,   461,   177,   157,   158,   790,
2261
      89,   181,   468,   169,   865,   866,   472,    75,    76,    77,
2262
      78,    79,   390,   960,   961,   181,   840,   483,   842,   169,
2263
     844,   181,    92,    75,    76,    77,    78,    79,   539,   853,
2264
     611,   176,   498,   611,   539,   157,   158,   828,   157,   158,
2265
     120,   121,   729,   176,   174,   732,   176,   169,   128,   176,
2266
     169,   119,   120,   121,   134,   177,   518,    16,   177,   181,
2267
     128,   611,   181,   441,   390,   176,   647,   119,   176,   647,
2268
     396,   397,   398,   399,    16,   174,   175,   543,   401,   178,
2269
     546,   178,   548,   664,    75,   153,   664,   174,   554,   176,
2270
     556,   102,   103,   104,    75,   647,   562,   647,    75,   425,
2271
     510,   427,   428,   429,   102,   103,   104,    89,    90,   177,
2272
      75,    76,    77,    78,   664,   441,   184,   157,   158,   700,
2273
      75,   611,   700,   176,   447,   177,   174,   120,   121,   169,
2274
     596,    35,   184,    37,   600,   128,    35,   177,    37,   605,
2275
     518,   181,   179,   177,   157,   158,   833,   174,   177,   176,
2276
     700,   157,   158,   174,   119,   176,   169,   647,   174,   611,
2277
     176,   742,   177,   169,   742,   324,   678,   678,   181,   328,
2278
     496,   637,   638,   678,   664,   181,   642,   142,   143,   645,
2279
     646,   175,   174,   342,   594,   344,   345,   346,    31,   876,
2280
     177,   177,   742,   182,    31,   647,   708,   708,   521,   711,
2281
     666,   713,    54,    55,    56,   176,    58,    31,   670,    31,
2282
     700,   673,   664,    31,   901,    31,    68,    31,    31,    75,
2283
      76,    77,    78,    31,    31,    31,    31,   693,    31,  1053,
2284
     174,   177,   919,   176,   174,    75,   702,   176,   179,   174,
2285
     640,   651,   808,   643,   710,    79,   174,   176,   700,   138,
2286
     831,   138,   742,   831,    31,   179,   178,   178,   175,   175,
2287
     726,   180,   177,   119,   674,    75,    75,    16,   177,   177,
2288
     782,   782,   738,    75,   177,   741,   599,   782,   678,   831,
2289
     603,   831,   177,   749,   607,   608,   142,   143,   178,   175,
2290
     742,   978,   670,   175,   179,   673,   179,   675,   178,   100,
2291
     178,   763,   179,   139,   816,    16,   177,   175,    84,   178,
2292
     822,   822,   824,   824,   178,   177,   177,   176,   784,   174,
2293
     177,   177,   176,   176,   790,   100,  1013,   174,    75,    76,
2294
      77,    78,    79,  1020,    50,    51,    52,    53,    54,    55,
2295
      56,   831,    58,   176,   174,   745,   858,    52,    53,    54,
2296
      55,    56,    68,    58,   764,    35,   179,    35,    37,   825,
2297
     826,   176,   828,    68,   930,    31,   178,   178,   880,    75,
2298
     994,   781,   119,   120,   121,   174,   176,    37,   176,   831,
2299
     177,   128,   782,   175,   174,   763,   180,   134,   174,   174,
2300
     177,   769,   904,   904,   794,   773,   179,   859,   180,   179,
2301
     174,  1088,   180,    31,    38,  1092,   153,   179,  1095,   178,
2302
      37,    35,    35,   178,   116,   176,   990,    14,   178,   178,
2303
     178,   176,    14,   180,   935,   109,   111,   939,   179,    14,
2304
     177,    37,   832,   171,   812,   177,   179,   184,   950,   950,
2305
     176,   907,   994,   176,    79,   176,    79,    16,   914,   178,
2306
     916,    16,    16,    16,    16,    16,   918,  1031,  1010,   971,
2307
     971,    16,   179,  1037,   874,   927,    79,   174,   176,   179,
2308
     179,   169,   176,   176,   986,   986,   117,   989,   100,   169,
2309
    1167,   859,   179,   893,    79,   997,   864,   865,   866,   867,
2310
     178,    16,  1179,  1067,   119,   120,   121,   122,   123,   124,
2311
     125,   126,   127,   128,   882,   883,   176,   179,   177,  1021,
2312
    1021,   178,   177,  1102,   980,    75,   926,   983,   518,   178,
2313
      94,    54,   203,  1147,   851,   494,   184,   664,   153,   831,
2314
    1104,   970,   975,   914,   880,  1047,   808,   934,  1090,   773,
2315
     918,   883,   638,   496,  1056,  1057,  1057,  1059,  1059,   927,
2316
     499,   930,  1126,  1076,  1067,   180,   934,  1137,  1145,  1043,
2317
     825,  1083,  1024,   468,   484,   164,   645,   629,   968,  1031,
2318
     970,  1090,   397,   951,   548,   666,    -1,    -1,    -1,  1145,
2319
      -1,   959,   960,   961,   962,   119,   120,   121,   122,   123,
2320
     124,   125,   126,   127,   128,  1147,  1062,    -1,    -1,    -1,
2321
      -1,    -1,    -1,    -1,    -1,  1067,  1118,  1118,  1074,  1121,
2322
    1121,  1123,  1123,  1079,  1080,    -1,    -1,   995,  1130,   153,
2323
    1086,  1133,    -1,  1033,    -1,    -1,  1138,   119,   120,   121,
2324
     122,   123,   124,   125,   126,   127,   128,    -1,    -1,  1049,
2325
      -1,  1103,    -1,  1155,   178,    -1,  1024,    -1,    -1,  1115,
2326
      -1,    -1,    -1,  1031,    -1,    -1,    -1,  1169,    -1,  1171,
2327
    1171,   153,    -1,    -1,    -1,  1131,    -1,    -1,  1078,    -1,
2328
    1182,  1182,    -1,    -1,     3,    -1,     5,     6,     7,     8,
2329
       9,    10,    11,    12,    13,    -1,    15,    -1,   180,  1067,
2330
      -1,    -1,    -1,    -1,    -1,  1105,    -1,  1107,    -1,    -1,
2331
    1110,  1111,   109,    -1,   111,    -1,    -1,    -1,    -1,    -1,
2332
      -1,  1177,   119,   120,   121,   122,   123,   124,   125,   126,
2333
     127,   128,    -1,    52,    53,  1103,    -1,    -1,    57,    58,
2334
      59,    60,    61,    62,    63,    64,    65,    66,    67,  1149,
2335
      69,    -1,    71,    72,    73,    74,    75,    76,    77,    78,
2336
      79,  1161,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2337
      89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
2338
      99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
2339
     109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
2340
     119,   120,   121,   122,   123,   124,    -1,    -1,    -1,   128,
2341
     129,   130,   131,   132,    -1,   134,   135,   136,   137,   138,
2342
     139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
2343
     149,   150,   151,   152,   153,   154,   155,    -1,    49,    50,
2344
      51,    52,    53,    54,    55,    56,   165,    58,    -1,    -1,
2345
      -1,    -1,   171,    -1,    -1,    -1,    -1,    68,   177,   178,
2346
      -1,    -1,   181,   182,   183,   184,     3,    -1,     5,     6,
2347
       7,     8,     9,    10,    11,    12,    13,    -1,    15,    -1,
2348
      -1,    -1,    -1,   119,   120,   121,   122,   123,   124,   125,
2349
     126,   127,   128,    -1,    -1,    -1,    -1,    16,    17,    18,
2350
      19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
2351
      29,    -1,    -1,    -1,    -1,    52,    53,   153,    -1,    -1,
2352
      57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
2353
      67,    -1,    69,    -1,    71,    72,    73,    74,    75,    76,
2354
      77,    78,    79,    -1,   180,    82,    -1,    -1,    85,    86,
2355
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
2356
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
2357
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
2358
     117,   118,   119,   120,   121,   122,   123,   124,    -1,    -1,
2359
      -1,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
2360
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
2361
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
2362
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2363
      13,    -1,    15,    -1,   171,   154,   155,    -1,   157,   158,
2364
     177,    -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
2365
     169,   119,   120,   121,   122,   123,   124,   125,   126,   127,
2366
     128,    -1,   181,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2367
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2368
      63,    64,    65,    66,    67,   153,    69,    -1,    -1,    -1,
2369
      73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
2370
      -1,    -1,    85,    86,    87,    88,    -1,    90,    91,    92,
2371
     178,    94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,
2372
      -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
2373
     113,    -1,    -1,   116,    -1,   118,   119,   120,   121,    -1,
2374
      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
2375
     133,   134,   135,   136,   137,    -1,    -1,   140,   141,   142,
2376
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2377
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2378
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2379
      -1,    -1,    -1,   176,   177,    -1,   179,   180,   181,   182,
2380
     183,   184,    -1,    -1,    -1,   119,   120,   121,   122,   123,
2381
     124,   125,   126,   127,   128,    -1,    -1,    -1,    -1,    -1,
2382
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2383
      59,    60,    61,    62,    63,    64,    65,    66,    67,   153,
2384
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2385
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2386
      -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,    98,
2387
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2388
     109,   110,   111,   112,   113,    -1,    -1,   116,    -1,   118,
2389
     119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2390
      -1,   130,   131,   132,   133,   134,   135,   136,   137,    -1,
2391
      -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
2392
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2393
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2394
      15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,
2395
     179,   180,   181,   182,   183,   184,    44,    45,    46,    47,
2396
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
2397
      58,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2398
      68,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2399
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2400
      75,    76,    77,    78,    79,    80,    -1,    82,    -1,    -1,
2401
      85,    86,    87,    88,    -1,    90,    91,    92,    -1,    94,
2402
      -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,
2403
     105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
2404
      -1,   116,    -1,   118,   119,   120,   121,    -1,    -1,    -1,
2405
      -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,   134,
2406
     135,   136,   137,    -1,    -1,   140,   141,   142,    -1,   144,
2407
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2408
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2409
     165,    12,    13,    -1,    15,    -1,    -1,   103,    -1,    -1,
2410
      -1,   176,   177,    -1,   179,   111,   181,   182,   183,   184,
2411
     116,    -1,    -1,   119,   120,   121,   122,   123,   124,   125,
2412
     126,   127,   128,   129,    -1,    -1,    -1,    -1,    -1,    -1,
2413
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2414
      61,    62,    63,    64,    65,    66,    67,   153,    69,    -1,
2415
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2416
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2417
      91,    92,    -1,    94,   180,    96,    -1,    98,    -1,    -1,
2418
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2419
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,
2420
     121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2421
     131,   132,   133,   134,   135,   136,   137,    -1,    -1,    -1,
2422
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2423
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2424
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2425
      -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,   180,
2426
     181,   182,   183,   184,   119,   120,   121,   122,   123,   124,
2427
     125,   126,   127,   128,    -1,    -1,    -1,    -1,    -1,    -1,
2428
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2429
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2430
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2431
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2432
      87,    88,    -1,    90,    91,    92,    -1,    94,    -1,    96,
2433
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2434
     107,   108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,
2435
      -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,
2436
      -1,   128,    -1,   130,   131,   132,   133,   134,   135,   136,
2437
     137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2438
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2439
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2440
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,
2441
     177,    -1,   179,   180,   181,   182,   183,   184,    -1,    -1,
2442
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2443
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2444
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2445
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2446
      73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
2447
      -1,    -1,    85,    86,    87,    88,    89,    90,    91,    92,
2448
      -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,
2449
      -1,    -1,   105,   106,   107,   108,   109,   110,    -1,   112,
2450
     113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,
2451
      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
2452
     133,   134,   135,   136,   137,    -1,    -1,    -1,   141,   142,
2453
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2454
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2455
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,   103,
2456
      -1,    -1,    -1,   176,   177,    -1,   179,   111,   181,   182,
2457
     183,   184,   116,    -1,    -1,   119,   120,   121,   122,   123,
2458
     124,   125,   126,   127,   128,   129,    -1,    -1,    -1,    -1,
2459
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2460
      59,    60,    61,    62,    63,    64,    65,    66,    67,   153,
2461
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2462
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2463
      -1,    90,    91,    92,    93,    94,   180,    96,    -1,    98,
2464
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2465
     109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,
2466
     119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2467
      -1,   130,   131,   132,   133,   134,   135,   136,   137,    -1,
2468
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2469
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2470
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2471
      15,    -1,    -1,   103,    -1,    -1,    -1,   176,   177,    -1,
2472
     179,   111,   181,   182,   183,   184,   116,    -1,    -1,   119,
2473
     120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
2474
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2475
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2476
      65,    66,    67,   153,    69,    -1,    -1,    -1,    73,    74,
2477
      75,    76,    77,    78,    79,    80,    -1,    82,    -1,    -1,
2478
      85,    86,    87,    88,    -1,    90,    91,    92,    -1,    94,
2479
     180,    96,    -1,    98,    99,    -1,   101,    -1,    -1,    -1,
2480
     105,   106,   107,   108,   109,   110,    -1,   112,   113,    -1,
2481
      -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,
2482
      -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,   134,
2483
     135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,
2484
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2485
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2486
     165,    12,    13,    -1,    15,    -1,    -1,   103,    -1,    -1,
2487
      -1,   176,   177,    -1,   179,   111,   181,   182,   183,   184,
2488
     116,    -1,    -1,   119,   120,   121,   122,   123,   124,   125,
2489
     126,   127,   128,   129,    -1,    -1,    -1,    -1,    -1,    -1,
2490
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2491
      61,    62,    63,    64,    65,    66,    67,   153,    69,    -1,
2492
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2493
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2494
      91,    92,    -1,    94,   180,    96,    97,    98,    -1,    -1,
2495
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2496
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,
2497
     121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2498
     131,   132,   133,   134,   135,   136,   137,    -1,    -1,    -1,
2499
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2500
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2501
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2502
      -1,   103,    -1,    -1,    -1,   176,   177,    -1,   179,   111,
2503
     181,   182,   183,   184,   116,    -1,    -1,   119,   120,   121,
2504
     122,   123,   124,   125,   126,   127,   128,   129,    -1,    -1,
2505
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2506
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2507
      67,   153,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2508
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2509
      87,    88,    -1,    90,    91,    92,    -1,    94,   180,    96,
2510
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2511
     107,   108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,
2512
      -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,
2513
      -1,   128,    -1,   130,   131,   132,   133,   134,   135,   136,
2514
     137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2515
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2516
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2517
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,
2518
     177,    -1,   179,   180,   181,   182,   183,   184,    -1,    -1,
2519
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2520
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2521
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2522
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2523
      73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
2524
      -1,    -1,    85,    86,    87,    88,    -1,    90,    91,    92,
2525
      -1,    94,    95,    96,    -1,    98,    -1,    -1,   101,    -1,
2526
      -1,    -1,   105,   106,   107,   108,   109,   110,    -1,   112,
2527
     113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,
2528
      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
2529
     133,   134,   135,   136,   137,    -1,    -1,    -1,   141,   142,
2530
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2531
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2532
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,   103,
2533
      -1,    -1,    -1,   176,   177,    -1,   179,   111,   181,   182,
2534
     183,   184,   116,    -1,    -1,   119,   120,   121,   122,   123,
2535
     124,   125,   126,   127,   128,   129,    -1,    -1,    -1,    -1,
2536
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2537
      59,    60,    61,    62,    63,    64,    65,    66,    67,   153,
2538
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2539
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2540
      -1,    90,    91,    92,    -1,    94,   180,    96,    -1,    98,
2541
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2542
     109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,
2543
     119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2544
      -1,   130,   131,   132,   133,   134,   135,   136,   137,    -1,
2545
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2546
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2547
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2548
      15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,
2549
     179,   180,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
2550
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2551
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2552
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2553
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2554
      75,    76,    77,    78,    79,    80,    -1,    82,    -1,    -1,
2555
      85,    86,    87,    88,    -1,    90,    91,    92,    -1,    94,
2556
      -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,
2557
     105,   106,   107,   108,   109,   110,    -1,   112,   113,    -1,
2558
      -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,
2559
      -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,   134,
2560
     135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,
2561
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2562
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2563
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2564
      -1,   176,   177,    -1,   179,   180,   181,   182,   183,   184,
2565
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2566
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2567
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2568
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2569
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2570
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2571
      91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,
2572
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2573
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,
2574
     121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2575
     131,   132,   133,   134,   135,   136,   137,    -1,    -1,    -1,
2576
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2577
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2578
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2579
      -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,   180,
2580
     181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
2581
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2582
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2583
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2584
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2585
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2586
      87,    88,    -1,    90,    91,    92,    -1,    94,    -1,    96,
2587
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2588
     107,   108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,
2589
      -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,
2590
      -1,   128,    -1,   130,   131,   132,   133,   134,   135,   136,
2591
     137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2592
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2593
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2594
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,
2595
     177,    -1,   179,   180,   181,   182,   183,   184,    -1,    -1,
2596
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2597
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2598
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2599
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2600
      73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
2601
      -1,    -1,    85,    86,    87,    88,    -1,    90,    91,    92,
2602
      -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,
2603
      -1,    -1,   105,   106,   107,   108,   109,   110,    -1,   112,
2604
     113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,
2605
      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
2606
     133,   134,   135,   136,   137,    -1,    -1,    -1,   141,   142,
2607
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2608
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2609
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2610
      -1,    -1,    -1,   176,   177,    -1,   179,   180,   181,   182,
2611
     183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2612
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2613
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2614
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
2615
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2616
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2617
      -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,    98,
2618
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2619
     109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,
2620
     119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2621
      -1,   130,   131,   132,   133,   134,   135,   136,   137,    -1,
2622
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2623
     149,   150,   151,   152,   153,   154,   155,   156,    -1,    -1,
2624
      -1,    -1,    -1,    -1,    -1,     3,   165,     5,     6,     7,
2625
       8,     9,    10,    11,    12,    13,    -1,   176,   177,   103,
2626
     179,    -1,   181,   182,   183,   184,    -1,   111,    -1,    -1,
2627
      -1,    -1,    -1,    -1,    -1,   119,   120,   121,   122,   123,
2628
     124,   125,   126,   127,   128,   129,    -1,    -1,    -1,    -1,
2629
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2630
      58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   153,
2631
      -1,    69,    -1,    71,    72,    -1,    -1,    75,    -1,    -1,
2632
      -1,    79,    -1,    -1,    -1,    -1,    -1,    85,    86,    87,
2633
      88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
2634
      98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
2635
     108,   109,   110,   111,   112,   113,   114,   115,   116,   117,
2636
     118,   119,   120,   121,   122,   123,   124,    -1,    -1,    -1,
2637
     128,   129,   130,   131,   132,    -1,   134,   135,   136,   137,
2638
     138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
2639
     148,   149,   150,   151,   152,     3,    -1,     5,     6,     7,
2640
       8,     9,    10,    11,    12,    13,    -1,    -1,   109,   110,
2641
     111,    -1,   109,   110,    -1,    -1,    -1,    -1,   119,   120,
2642
     121,   179,   119,   120,   121,    -1,   184,   128,    -1,    -1,
2643
      -1,   128,    -1,   134,   135,   136,   137,   134,   135,   136,
2644
     137,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2645
      58,    -1,   153,    -1,    -1,    -1,   153,    -1,    -1,    -1,
2646
      -1,    69,    -1,    71,    72,    -1,    -1,    75,    -1,    -1,
2647
      -1,    79,    -1,    -1,    -1,    -1,    -1,    85,    86,    87,
2648
      88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
2649
      98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
2650
     108,   109,   110,   111,   112,   113,   114,   115,   116,   117,
2651
     118,   119,   120,   121,   122,   123,   124,    -1,    -1,    -1,
2652
     128,   129,   130,   131,   132,    -1,   134,   135,   136,   137,
2653
     138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
2654
     148,   149,   150,   151,   152,     3,    -1,     5,     6,     7,
2655
       8,    -1,    -1,    -1,    12,    13,    -1,    15,    -1,    -1,
2656
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2657
      -1,   179,    -1,    31,    -1,    -1,   184,    -1,    -1,    -1,
2658
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2659
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2660
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2661
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2662
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2663
      88,    -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,
2664
      98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2665
     108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,
2666
     118,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2667
     128,    -1,   130,   131,   132,    -1,    -1,    -1,    -1,    -1,
2668
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2669
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2670
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2671
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,
2672
      -1,   179,    -1,   181,   182,   183,   184,    31,    -1,    -1,
2673
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2674
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2675
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2676
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2677
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2678
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2679
      94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
2680
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2681
      -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,    -1,
2682
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,    -1,
2683
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,
2684
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2685
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2686
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2687
      -1,    -1,   176,   177,    -1,   179,    -1,   181,   182,   183,
2688
     184,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2689
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2690
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2691
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2692
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2693
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2694
      90,    91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,
2695
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2696
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2697
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2698
     130,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2699
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2700
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2701
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2702
      -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,
2703
      -1,   181,   182,   183,   184,    31,    -1,    -1,    -1,    -1,
2704
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2705
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2706
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2707
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2708
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2709
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    -1,
2710
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2711
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2712
      -1,    -1,   118,   119,    -1,    -1,    -1,    -1,    -1,    -1,
2713
      -1,    -1,   128,    -1,   130,   131,   132,    -1,    -1,    -1,
2714
      -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2715
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2716
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2717
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2718
     176,   177,    -1,   179,    -1,   181,   182,   183,   184,    31,
2719
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2720
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2721
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2722
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2723
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2724
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2725
      92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,
2726
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,    -1,
2727
     112,   113,    -1,    -1,    -1,    -1,   118,   119,    -1,    -1,
2728
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2729
     132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,
2730
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2731
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2732
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2733
      -1,    -1,    -1,    -1,   176,   177,    -1,   179,    -1,   181,
2734
     182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2735
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2736
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2737
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2738
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2739
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2740
      88,    -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,
2741
      98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2742
     108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,
2743
     118,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2744
     128,    -1,   130,   131,   132,    -1,    -1,    -1,    -1,    -1,
2745
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2746
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2747
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2748
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,
2749
      -1,   179,    -1,   181,   182,   183,   184,    -1,    -1,    -1,
2750
      -1,    -1,    -1,    37,    38,    -1,    -1,    -1,    -1,    -1,
2751
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2752
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2753
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2754
      74,    75,    76,    77,    78,    79,    -1,    -1,    82,    -1,
2755
      -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
2756
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2757
      -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,
2758
      -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,
2759
      -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,
2760
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,
2761
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2762
     154,   155,    -1,     3,    -1,     5,     6,     7,     8,    -1,
2763
      -1,   165,    12,    13,    -1,    15,    -1,   171,    -1,    -1,
2764
      -1,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,
2765
     184,    -1,    -1,    -1,    -1,    -1,    -1,    37,    38,    -1,
2766
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2767
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2768
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2769
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2770
      -1,    -1,    82,    -1,    -1,    85,    86,    87,    -1,    -1,
2771
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2772
      -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,   109,
2773
     110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,
2774
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2775
      -1,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2776
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2777
     150,   151,   152,   153,   154,   155,    -1,     3,    -1,     5,
2778
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2779
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,
2780
      -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2781
      -1,    37,    38,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2782
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2783
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2784
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2785
      76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,
2786
      86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2787
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,
2788
      -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,
2789
      -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,
2790
      -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,
2791
      -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2792
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2793
      -1,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2794
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2795
      -1,   177,    -1,    -1,    -1,   181,   182,   183,   184,    -1,
2796
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2797
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2798
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2799
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2800
      -1,    73,    74,    75,    76,    77,    78,    79,    -1,    -1,
2801
      82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,
2802
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2803
      -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,
2804
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,
2805
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,
2806
     132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,
2807
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2808
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2809
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2810
      -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,   181,
2811
     182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2812
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2813
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2814
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2815
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2816
      78,    79,    -1,    -1,    82,    83,    -1,    85,    86,    87,
2817
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2818
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,
2819
      -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2820
      -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2821
     128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,
2822
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2823
     148,   149,   150,   151,   152,   153,   154,   155,    -1,     3,
2824
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2825
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,
2826
      -1,    -1,    -1,   181,   182,   183,   184,    31,    -1,    -1,
2827
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2828
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2829
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2830
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2831
      74,    75,    76,    77,    78,    79,    -1,    -1,    82,    -1,
2832
      -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
2833
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2834
      -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,
2835
      -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,
2836
      -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,
2837
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,
2838
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2839
     154,   155,    -1,     3,    -1,     5,     6,     7,     8,    -1,
2840
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2841
      -1,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,
2842
     184,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2843
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2844
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2845
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2846
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2847
      -1,    -1,    82,    -1,    -1,    85,    86,    87,    -1,    -1,
2848
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2849
      -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,   109,
2850
     110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,
2851
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2852
      -1,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2853
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2854
     150,   151,   152,   153,   154,   155,    -1,     3,    -1,     5,
2855
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2856
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,
2857
      -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2858
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2859
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2860
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2861
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2862
      76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,
2863
      86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2864
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,
2865
      -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,
2866
      -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,
2867
      -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,
2868
      -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2869
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2870
      -1,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2871
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2872
      -1,   177,   178,    -1,    -1,   181,   182,   183,   184,    -1,
2873
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2874
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2875
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2876
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2877
      -1,    73,    74,    75,    76,    77,    78,    79,    -1,    -1,
2878
      82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,
2879
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2880
      -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,
2881
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,
2882
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,
2883
     132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,
2884
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2885
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2886
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2887
      -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,   181,
2888
     182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2889
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2890
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2891
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2892
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2893
      78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,
2894
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2895
      -1,    -1,    -1,    -1,    -1,    -1,   104,   105,    -1,    -1,
2896
      -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2897
      -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2898
     128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,
2899
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2900
     148,   149,   150,   151,   152,   153,   154,   155,    -1,     3,
2901
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2902
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,
2903
      -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,
2904
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2905
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2906
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2907
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2908
      74,    75,    76,    77,    78,    79,    -1,    -1,    82,    -1,
2909
      -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
2910
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2911
      -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,
2912
      -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,
2913
      -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,
2914
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,
2915
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2916
     154,   155,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2917
       3,   165,     5,     6,     7,     8,     9,    10,    11,    12,
2918
      13,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,
2919
     184,    30,    -1,    32,    33,    34,    35,    36,    37,    38,
2920
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
2921
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
2922
      -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,    68,
2923
      -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,    71,    72,
2924
      -1,    -1,    75,    76,    77,    78,    -1,    -1,    -1,    -1,
2925
      -1,    -1,    85,    86,    87,    88,    89,    90,    91,    92,
2926
      93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
2927
     103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
2928
     113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
2929
     123,   124,    -1,    -1,    -1,   128,   129,   130,   131,   132,
2930
      -1,   134,   135,   136,   137,   138,   139,   140,   141,   142,
2931
     143,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2932
       3,    -1,     5,     6,     7,     8,     9,    10,    11,    12,
2933
      13,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2934
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,    32,    33,
2935
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
2936
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
2937
      54,    55,    56,    -1,    58,    58,    -1,    -1,    -1,    -1,
2938
      -1,    -1,    -1,    -1,    68,    -1,    69,    -1,    71,    72,
2939
      -1,    -1,    75,    76,    77,    78,    -1,    -1,    -1,    -1,
2940
      -1,    -1,    85,    86,    87,    88,    89,    90,    91,    92,
2941
      93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
2942
     103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
2943
     113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
2944
     123,   124,    -1,    -1,    -1,   128,   129,   130,   131,   132,
2945
      -1,   134,   135,   136,   137,   138,   139,   140,   141,   142,
2946
     143,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2947
      -1,     3,    -1,     5,     6,     7,     8,     9,    10,    11,
2948
      12,    13,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2949
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,    30,    34,
2950
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
2951
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
2952
      55,    56,    -1,    58,    -1,    -1,    58,    -1,    -1,    -1,
2953
      -1,    -1,    -1,    68,    -1,    -1,    -1,    69,    -1,    71,
2954
      72,    -1,    -1,    75,    76,    77,    78,    -1,    -1,    -1,
2955
      -1,    -1,    -1,    85,    86,    87,    88,    89,    90,    91,
2956
      92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
2957
     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
2958
     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
2959
     122,   123,   124,    -1,    -1,    -1,   128,   129,   130,   131,
2960
     132,    -1,   134,   135,   136,   137,   138,   139,   140,   141,
2961
     142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
2962
     152,    -1,    -1,     9,    10,    11,    -1,    -1,    -1,    -1,
2963
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2964
      -1,    -1,    -1,    -1,    30,   177,    32,    33,    34,    35,
2965
      36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
2966
      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
2967
      56,    -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,
2968
      -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2969
      -1,    -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,
2970
      36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
2971
      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
2972
      56,    -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,
2973
      -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2974
      -1,    -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,
2975
      36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
2976
      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
2977
      56,    -1,    58,    -1,     9,    10,    11,    -1,    -1,    -1,
2978
      -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2979
      -1,    -1,    -1,    -1,   180,    30,    -1,    32,    33,    34,
2980
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
2981
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
2982
      55,    56,    -1,    58,     9,    10,    11,    -1,    -1,    -1,
2983
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
2984
      -1,    -1,    -1,    -1,   180,    30,    -1,    32,    33,    34,
2985
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
2986
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
2987
      55,    56,    -1,    58,     9,    10,    11,    -1,    -1,    -1,
2988
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
2989
      -1,    -1,    -1,    -1,   180,    30,    -1,    32,    33,    34,
2990
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
2991
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
2992
      55,    56,    -1,    58,    -1,     9,    10,    11,    -1,    -1,
2993
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
2994
      -1,    -1,    -1,    -1,    -1,   180,    30,    -1,    32,    33,
2995
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
2996
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
2997
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
2998
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
2999
      -1,    -1,    -1,    -1,    -1,   180,    30,    -1,    32,    33,
3000
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3001
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3002
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3003
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3004
      -1,    -1,    -1,    -1,   179,    -1,    30,    -1,    32,    33,
3005
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3006
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3007
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3008
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3009
      -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,    33,
3010
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3011
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3012
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3013
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3014
      -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,    33,
3015
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3016
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3017
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3018
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3019
      -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,    33,
3020
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3021
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3022
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3023
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3024
      -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,    33,
3025
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3026
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3027
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3028
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3029
      -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,    33,
3030
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3031
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3032
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3033
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3034
      -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,    33,
3035
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3036
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3037
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3038
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3039
      -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,    33,
3040
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3041
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3042
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3043
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3044
      -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,    33,
3045
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3046
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3047
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3048
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3049
      -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,    33,
3050
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3051
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3052
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3053
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3054
      -1,    -1,    -1,    -1,   178,    -1,    30,    31,    32,    33,
3055
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3056
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3057
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3058
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3059
      -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,    33,
3060
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3061
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3062
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3063
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3064
      -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,    33,
3065
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3066
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3067
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3068
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3069
      -1,    -1,   176,    -1,    -1,    -1,    30,    -1,    32,    33,
3070
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3071
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3072
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3073
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3074
      -1,    -1,   176,    -1,    -1,    -1,    30,    -1,    32,    33,
3075
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3076
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3077
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3078
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3079
      -1,    -1,   176,    -1,    -1,    -1,    30,    -1,    32,    33,
3080
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3081
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3082
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3083
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3084
      37,    38,   176,    -1,    -1,    -1,    30,    -1,    32,    33,
3085
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3086
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3087
      54,    55,    56,    -1,    58,    -1,    -1,    -1,    75,    76,
3088
      77,    78,    79,    -1,    68,    82,    -1,    -1,    -1,    86,
3089
      -1,   175,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3090
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,
3091
      -1,     5,     6,     7,     8,     9,    10,    11,    12,    13,
3092
      -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3093
      -1,   128,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3094
     174,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
3095
     147,   148,   149,   150,   151,   152,    -1,    -1,    -1,    -1,
3096
      -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,    -1,
3097
      -1,    -1,    -1,    -1,    -1,    69,    -1,    71,    72,    -1,
3098
     177,    75,    -1,    -1,   181,    -1,   183,   184,    -1,    -1,
3099
     174,    85,    86,    87,    88,    89,    90,    91,    92,    93,
3100
      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
3101
     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
3102
     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
3103
     124,   125,   126,   127,   128,   129,   130,   131,   132,    -1,
3104
     134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
3105
     144,   145,   146,   147,   148,   149,   150,   151,   152,     3,
3106
      11,     5,     6,     7,     8,     9,    10,    11,    12,    13,
3107
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    30,
3108
      -1,    32,    33,    34,    35,    36,    37,    38,    39,    40,
3109
      41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
3110
      51,    52,    53,    54,    55,    56,    -1,    58,    -1,    -1,
3111
      -1,    -1,    -1,    -1,    58,    -1,    -1,    68,    -1,    -1,
3112
      -1,    -1,    -1,    -1,    -1,    69,    -1,    71,    72,    -1,
3113
      -1,    75,    -1,    -1,    78,    -1,    -1,    -1,    -1,    -1,
3114
      -1,    85,    86,    87,    88,    89,    90,    91,    92,    93,
3115
      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
3116
     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
3117
     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
3118
     124,    -1,    -1,    -1,   128,   129,   130,   131,   132,    -1,
3119
     134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
3120
     144,   145,   146,   147,   148,   149,   150,   151,   152,     3,
3121
      -1,     5,     6,     7,     8,     9,    10,    11,    12,    13,
3122
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3123
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3124
      55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,
3125
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3126
      -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,    -1,
3127
      -1,    -1,    -1,    -1,    -1,    69,    -1,    71,    72,    -1,
3128
      -1,    75,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3129
      -1,    85,    86,    87,    88,    89,    90,    91,    92,    93,
3130
      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
3131
     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
3132
     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
3133
     124,    -1,    -1,    -1,   128,   129,   130,   131,   132,    -1,
3134
     134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
3135
     144,   145,   146,   147,   148,   149,   150,   151,   152,     3,
3136
      -1,     5,     6,     7,     8,     9,    10,    11,    12,    13,
3137
      36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
3138
      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
3139
      56,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3140
      -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3141
      -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,    -1,
3142
      -1,    -1,    -1,    -1,    -1,    69,    -1,    71,    72,    -1,
3143
      -1,    75,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3144
      -1,    85,    86,    87,    88,    89,    90,    91,    92,    93,
3145
      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
3146
     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
3147
     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
3148
     124,    -1,    -1,    -1,   128,   129,   130,   131,   132,    -1,
3149
     134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
3150
     144,   145,   146,   147,   148,   149,   150,   151,   152,    75,
3151
      76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,    -1,
3152
      86,    37,    38,    39,    40,    41,    42,    43,    44,    45,
3153
      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
3154
      56,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3155
      -1,    -1,    68,   119,    -1,    -1,    -1,    -1,    -1,    -1,
3156
      -1,    -1,   128,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3157
      -1,    -1,    -1,    -1,    -1,    -1,   142,    -1,   144,   145,
3158
     146,   147,   148,   149,   150,   151,   152,    -1,    -1,    -1,
3159
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     9,    10,
3160
      11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3161
      -1,   177,    -1,    -1,    -1,   181,    -1,   183,   184,    30,
3162
      -1,    32,    33,    34,    35,    36,    37,    38,    39,    40,
3163
      41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
3164
      51,    52,    53,    54,    55,    56,    -1,    58,    -1,    -1,
3165
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,
3166
      -1,    -1,    -1,    -1,    -1,    -1,    -1,     9,    10,    11,
3167
      -1,    -1,    14,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3168
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    30,   100,
3169
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3170
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3171
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3172
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3173
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    30,    31,
3174
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3175
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3176
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3177
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3178
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    30,    -1,
3179
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3180
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3181
      52,    53,    54,    55,    56,    -1,    58,    10,    11,    -1,
3182
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3183
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    30,    -1,    32,
3184
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3185
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3186
      53,    54,    55,    56,    14,    58,    -1,    -1,    -1,    -1,
3187
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3188
      30,    -1,    32,    33,    34,    35,    36,    37,    38,    39,
3189
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
3190
      50,    51,    52,    53,    54,    55,    56,    -1,    58,    -1,
3191
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    39,
3192
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
3193
      50,    51,    52,    53,    54,    55,    56,    -1,    58,    -1,
3194
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    39,
3195
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
3196
      50,    51,    52,    53,    54,    55,    56,    -1,    58,    -1,
3197
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68
3198
};
3199
3200
  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
3201
     symbol of state STATE-NUM.  */
3202
static const yytype_int16 yystos[] =
3203
{
3204
       0,   186,   191,     0,     3,     5,     6,     7,     8,    12,
3205
      13,    15,    52,    53,    57,    59,    60,    61,    62,    63,
3206
      64,    65,    66,    67,    69,    73,    74,    75,    76,    77,
3207
      78,    79,    80,    82,    85,    86,    87,    88,    90,    91,
3208
      92,    94,    96,    98,   101,   105,   106,   107,   108,   109,
3209
     110,   111,   112,   113,   116,   118,   119,   120,   121,   128,
3210
     130,   131,   132,   133,   134,   135,   136,   137,   140,   141,
3211
     142,   144,   145,   146,   147,   148,   149,   150,   151,   152,
3212
     153,   154,   155,   156,   165,   176,   177,   179,   181,   182,
3213
     183,   184,   195,   198,   199,   200,   201,   202,   218,   227,
3214
     230,   233,   236,   237,   239,   241,   256,   262,   263,   264,
3215
     265,   327,   328,   329,   330,   331,   332,   340,   342,   346,
3216
     347,   348,   349,   351,   352,   353,   354,   355,   356,   357,
3217
     358,   369,    75,   119,   128,   199,   329,   332,   329,   329,
3218
     329,   329,   329,   329,   329,   329,   329,   329,   329,   329,
3219
     329,   329,   329,   329,   329,   329,   329,   329,    31,   177,
3220
     119,   128,   177,   195,   199,   234,   235,   236,   325,   342,
3221
     343,   357,   359,   177,   283,   345,   177,   320,   321,   329,
3222
     218,   177,   177,   177,   177,   177,   177,   329,   350,   350,
3223
      75,    75,   215,   319,   350,   179,    75,    76,    78,   109,
3224
     111,   193,   194,   205,   207,   211,   214,   286,   287,   357,
3225
      79,   288,   289,   330,   283,   177,   177,   177,   177,   232,
3226
     238,   240,   242,     3,     5,     6,     7,     8,     9,    10,
3227
      11,    12,    13,    58,    69,    71,    72,    75,    78,    85,
3228
      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
3229
      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
3230
     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
3231
     116,   117,   118,   119,   120,   121,   122,   123,   124,   128,
3232
     129,   130,   131,   132,   134,   135,   136,   137,   138,   139,
3233
     140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
3234
     150,   151,   152,   187,   188,   190,   192,   204,   177,   177,
3235
     196,   197,   342,    86,   177,   181,   327,   346,   348,   349,
3236
     356,   356,   329,    79,    81,   166,   167,   168,   366,   367,
3237
     329,   216,    37,    38,   141,   171,   189,   329,   362,   363,
3238
     364,   365,    81,   344,   366,    81,   366,   179,   357,   283,
3239
     119,   198,   201,   330,   134,   236,    71,    72,    71,    72,
3240
      89,     9,    10,    11,    30,    32,    33,    34,    35,    36,
3241
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3242
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3243
      58,    68,   176,   189,   336,   336,   169,   169,   157,   158,
3244
     181,   341,    16,    17,    18,    19,    20,    21,    22,    23,
3245
      24,    25,    26,    27,    28,    29,   154,   155,   336,    14,
3246
     329,   329,   325,   236,   134,   169,   283,   157,   158,   169,
3247
     181,     3,     5,     6,     7,     8,    12,    13,    69,    75,
3248
      85,    86,    87,   105,   109,   110,   119,   128,   131,   132,
3249
     141,   142,   144,   145,   146,   147,   148,   149,   150,   151,
3250
     152,   171,   178,   190,   284,   285,   329,   329,   174,   176,
3251
      92,   329,   156,   323,   324,   329,   329,   215,   329,   329,
3252
     176,   176,   176,    16,   174,   176,   176,   216,   100,   170,
3253
     194,   206,   211,   176,   174,   176,   174,   176,    16,   174,
3254
     176,   224,   225,   356,   329,   370,   371,   329,   178,    75,
3255
      75,    75,    75,   176,   203,   179,   362,   362,   174,   208,
3256
     283,   343,   329,   362,   176,   157,   158,   181,   166,   367,
3257
      83,   329,   356,    81,   166,   367,   178,   133,   180,   199,
3258
     200,   217,   218,   177,   329,   356,    14,   175,   174,   182,
3259
     183,   329,   330,   231,   177,   218,   177,    31,   176,   329,
3260
     329,   329,    31,   329,   329,   329,   329,   329,   329,   329,
3261
     329,   329,   329,   329,   329,   329,   329,   329,   329,   329,
3262
     329,   329,   329,   329,   329,   329,   329,   329,   329,   343,
3263
     329,   333,    75,   128,   226,   333,   179,   190,   357,   360,
3264
     179,   190,   357,   360,    75,   179,   357,   361,   361,   350,
3265
     283,   189,   329,   329,   329,   329,   329,   329,   329,   329,
3266
     329,   329,   329,   329,   329,   329,   329,   178,   178,   326,
3267
     357,   361,   361,   357,   350,   178,   329,    31,   174,   208,
3268
     178,   321,   177,   178,   329,   176,   174,   100,   178,   178,
3269
     178,   329,   319,   180,    75,   179,   170,   176,   176,   194,
3270
     214,   287,   329,   289,   174,   208,   174,   208,   178,   176,
3271
     138,   246,   333,   138,   247,    31,   243,   179,   191,   178,
3272
     178,   196,   175,   178,   175,    75,    75,    53,    75,    79,
3273
      84,   368,   180,   181,   180,   180,   177,   200,   362,   141,
3274
     189,   329,    16,   363,   180,    75,   329,   329,   216,   329,
3275
      31,   177,   333,   177,   329,   283,   329,   283,   329,   283,
3276
     283,   175,   356,   345,   175,   329,   171,   285,   178,    31,
3277
     218,   329,    31,   218,   261,   322,   324,   329,   156,   329,
3278
     141,   181,   189,   249,   356,   219,    31,   179,   253,   179,
3279
     333,   220,   193,   205,   209,   212,   213,   179,   225,   178,
3280
     371,   178,   342,   139,   248,   179,   293,   342,   333,    30,
3281
     119,   142,   143,   177,   195,   272,   273,   274,   275,   276,
3282
     278,   248,   191,   180,    16,    84,   175,   329,   178,   178,
3283
     177,   356,   329,   246,   178,   178,    89,   329,   119,   120,
3284
     121,   122,   123,   124,   125,   126,   127,   128,   199,   266,
3285
     267,   268,   269,   270,   305,   306,   177,   266,   180,   180,
3286
     180,   246,   216,   178,   216,   176,   174,   329,   177,   362,
3287
     356,    14,   178,    31,   218,   252,   176,   254,   176,   254,
3288
     104,   257,   258,   259,   260,   329,   114,   115,   223,   100,
3289
     213,   174,   208,   210,   213,   176,   293,   333,   290,   174,
3290
     179,   273,   273,   276,    37,    35,    35,    37,   333,   180,
3291
     329,   175,   176,   362,   248,   218,    31,   176,   270,   178,
3292
     174,   208,    30,   177,   271,   277,   278,   279,   280,   281,
3293
     306,   266,   178,   248,   176,    93,   323,   329,   362,   175,
3294
     249,    31,   218,   251,   216,   254,   102,   103,   104,   254,
3295
     180,   174,   208,   180,   174,   208,   174,   208,   177,   179,
3296
      75,   212,   180,   174,   208,   179,   103,   116,   129,   180,
3297
     199,   244,   291,   292,   302,   303,   304,   305,   342,   290,
3298
     178,   273,   273,   274,   274,   273,   179,   180,   178,   333,
3299
     216,    31,   282,   268,   278,   278,   281,    38,   228,    37,
3300
      35,    35,    37,   178,   116,   337,   333,   176,   178,   178,
3301
     178,   216,    99,   102,   176,   329,    31,   176,   255,   180,
3302
      14,   259,   329,    14,   221,   342,   216,   213,   180,   290,
3303
     333,   293,   291,   271,   332,   111,   180,   290,   179,   272,
3304
      14,   178,   171,   229,   278,   278,   279,   279,   278,   282,
3305
     177,   282,   179,    31,   218,   250,   251,    97,   176,   176,
3306
     255,   216,   329,   329,    35,    79,   222,   180,   180,   190,
3307
     176,   179,   294,    79,   307,   308,   309,   336,    75,   119,
3308
     142,   143,   188,   272,   317,   318,   180,   290,   334,    79,
3309
     334,    79,   189,   338,   339,   334,   290,   216,   176,   216,
3310
     342,   178,    16,   245,   119,   180,   190,   295,   296,   297,
3311
     298,   299,   300,   342,    16,   333,   174,   176,   190,    16,
3312
      16,    75,   317,   174,   176,   180,   335,   333,   179,    79,
3313
     174,   208,   179,   180,    95,   179,   329,   176,   180,   296,
3314
     176,   176,   100,   117,   169,   329,   179,    79,   308,   333,
3315
     329,   329,   176,   318,   329,    16,   179,   311,   216,   339,
3316
     178,   216,   176,   216,    75,   187,   306,   293,   190,   333,
3317
     310,    16,   333,   177,   333,   333,   334,   329,   310,   180,
3318
     180,   180,   190,   179,   180,   199,   305,   312,   313,   329,
3319
     266,   311,   180,   334,   334,   310,   313,   336,   333,   178,
3320
     180,    75,   282,   333,   334,   314,   176,   179,   301,   177,
3321
     316,   216,   334,   266,   334,   180,   178,    14,   176,   179,
3322
     315,   329,   216,   334,   176,   180
3323
};
3324
3325
  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
3326
static const yytype_int16 yyr1[] =
3327
{
3328
       0,   185,   186,   187,   187,   187,   187,   187,   187,   187,
3329
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3330
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3331
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3332
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3333
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3334
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3335
     187,   187,   187,   187,   188,   188,   188,   188,   188,   188,
3336
     188,   188,   189,   189,   190,   190,   191,   191,   192,   192,
3337
     193,   193,   194,   194,   195,   195,   195,   195,   196,   196,
3338
     197,   197,   198,   199,   199,   200,   200,   200,   200,   200,
3339
     201,   201,   202,   202,   202,   202,   202,   203,   202,   204,
3340
     202,   202,   202,   202,   202,   205,   205,   206,   207,   208,
3341
     208,   209,   209,   210,   210,   211,   211,   212,   212,   213,
3342
     213,   214,   214,   215,   215,   216,   216,   217,   217,   217,
3343
     217,   218,   218,   218,   218,   218,   218,   218,   218,   218,
3344
     218,   218,   218,   218,   218,   218,   218,   218,   218,   219,
3345
     218,   218,   218,   218,   218,   218,   220,   220,   221,   221,
3346
     222,   222,   223,   223,   224,   224,   225,   226,   226,   227,
3347
     228,   228,   229,   229,   231,   230,   232,   230,   233,   233,
3348
     234,   234,   235,   235,   236,   236,   236,   238,   237,   240,
3349
     239,   242,   241,   243,   243,   244,   245,   245,   246,   246,
3350
     247,   247,   248,   248,   249,   249,   249,   249,   250,   250,
3351
     251,   251,   252,   252,   253,   253,   253,   253,   254,   254,
3352
     254,   255,   255,   256,   257,   257,   258,   258,   259,   259,
3353
     260,   260,   261,   261,   262,   262,   263,   263,   264,   264,
3354
     265,   265,   266,   266,   267,   267,   268,   268,   269,   269,
3355
     270,   270,   271,   271,   272,   272,   272,   272,   273,   273,
3356
     274,   274,   275,   275,   276,   276,   277,   277,   277,   277,
3357
     278,   278,   278,   279,   279,   280,   280,   281,   281,   282,
3358
     282,   283,   283,   283,   284,   284,   285,   285,   285,   286,
3359
     286,   287,   288,   288,   289,   289,   290,   290,   291,   291,
3360
     291,   291,   291,   291,   292,   292,   292,   293,   293,   294,
3361
     294,   294,   295,   295,   296,   296,   297,   298,   298,   298,
3362
     298,   299,   299,   300,   301,   301,   302,   302,   303,   303,
3363
     304,   304,   305,   305,   306,   306,   306,   306,   306,   306,
3364
     306,   306,   306,   306,   307,   307,   308,   308,   309,   309,
3365
     310,   310,   310,   311,   311,   312,   312,   314,   313,   315,
3366
     315,   315,   316,   316,   317,   317,   318,   318,   319,   320,
3367
     320,   321,   322,   322,   322,   323,   323,   324,   324,   324,
3368
     324,   326,   325,   327,   327,   327,   328,   329,   329,   329,
3369
     329,   329,   329,   329,   329,   329,   329,   329,   329,   329,
3370
     329,   329,   329,   329,   329,   329,   329,   329,   329,   329,
3371
     329,   329,   329,   329,   329,   329,   329,   329,   329,   329,
3372
     329,   329,   329,   329,   329,   329,   329,   329,   329,   329,
3373
     329,   329,   329,   329,   329,   329,   329,   329,   329,   329,
3374
     329,   329,   329,   329,   329,   329,   329,   329,   329,   329,
3375
     329,   329,   329,   329,   329,   329,   329,   329,   329,   329,
3376
     329,   329,   329,   329,   329,   329,   329,   329,   329,   329,
3377
     329,   329,   330,   330,   331,   332,   333,   334,   335,   336,
3378
     336,   337,   337,   338,   338,   339,   339,   340,   340,   340,
3379
     340,   341,   340,   342,   342,   343,   343,   343,   344,   344,
3380
     344,   345,   345,   346,   346,   346,   346,   347,   347,   347,
3381
     347,   347,   347,   347,   347,   348,   348,   348,   348,   348,
3382
     348,   348,   348,   348,   348,   349,   349,   349,   349,   350,
3383
     350,   351,   352,   352,   352,   352,   352,   353,   353,   354,
3384
     354,   354,   354,   355,   355,   355,   355,   355,   356,   356,
3385
     356,   356,   357,   357,   357,   358,   358,   359,   359,   359,
3386
     359,   359,   359,   360,   360,   360,   361,   361,   361,   362,
3387
     363,   363,   364,   364,   365,   365,   365,   365,   365,   365,
3388
     365,   366,   366,   366,   366,   367,   367,   367,   367,   367,
3389
     367,   367,   367,   368,   368,   368,   368,   369,   369,   369,
3390
     369,   369,   369,   369,   370,   370,   371
3391
};
3392
3393
  /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
3394
static const yytype_int8 yyr2[] =
3395
{
3396
       0,     2,     1,     1,     1,     1,     1,     1,     1,     1,
3397
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3398
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3399
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3400
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3401
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3402
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3403
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3404
       1,     1,     1,     1,     1,     1,     2,     0,     1,     1,
3405
       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
3406
       1,     3,     4,     1,     2,     1,     1,     1,     1,     1,
3407
       1,     3,     1,     1,     2,     4,     3,     0,     6,     0,
3408
       5,     3,     4,     3,     4,     1,     1,     6,     6,     0,
3409
       1,     3,     1,     3,     1,     3,     1,     1,     2,     1,
3410
       3,     1,     3,     3,     1,     2,     0,     1,     1,     2,
3411
       4,     3,     1,     1,     5,     7,     9,     5,     3,     3,
3412
       3,     3,     3,     3,     1,     2,     6,     7,     9,     0,
3413
       6,     1,     6,     3,     2,     3,     0,     9,     1,     3,
3414
       0,     1,     0,     4,     1,     3,     1,     1,     1,    13,
3415
       0,     1,     0,     1,     0,    10,     0,     9,     1,     2,
3416
       1,     2,     0,     1,     1,     1,     1,     0,     7,     0,
3417
       8,     0,     9,     0,     2,     5,     0,     2,     0,     2,
3418
       0,     2,     0,     2,     1,     2,     4,     3,     1,     4,
3419
       1,     4,     1,     4,     3,     4,     4,     5,     0,     5,
3420
       4,     1,     1,     7,     0,     2,     1,     3,     4,     4,
3421
       1,     3,     1,     4,     5,     6,     1,     3,     6,     7,
3422
       3,     6,     2,     0,     1,     3,     2,     1,     0,     1,
3423
       7,     9,     0,     1,     1,     2,     1,     1,     1,     1,
3424
       1,     3,     3,     3,     3,     3,     1,     2,     1,     1,
3425
       1,     1,     1,     1,     3,     3,     3,     3,     3,     0,
3426
       2,     2,     4,     3,     1,     3,     1,     3,     2,     3,
3427
       1,     1,     3,     1,     1,     3,     2,     0,     4,     3,
3428
       4,     5,    12,     1,     1,     2,     3,     1,     3,     1,
3429
       2,     3,     1,     2,     2,     2,     3,     3,     3,     4,
3430
       3,     1,     1,     3,     1,     3,     1,     1,     0,     1,
3431
       0,     1,     1,     2,     1,     1,     1,     1,     1,     1,
3432
       1,     1,     1,     1,     3,     1,     2,     4,     5,     7,
3433
       0,     2,     3,     0,     3,     0,     1,     0,     9,     1,
3434
       3,     3,     0,     3,     3,     1,     4,     4,     4,     3,
3435
       1,     1,     0,     3,     1,     0,     1,     3,     4,     2,
3436
       1,     0,    10,     3,     2,     3,     2,     1,     6,     5,
3437
       3,     4,     2,     3,     3,     3,     3,     3,     3,     3,
3438
       3,     3,     3,     3,     3,     3,     2,     2,     2,     2,
3439
       3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
3440
       3,     3,     3,     3,     3,     3,     3,     3,     2,     2,
3441
       2,     2,     3,     3,     3,     3,     3,     3,     3,     3,
3442
       3,     3,     3,     3,     1,     1,     5,     4,     3,     1,
3443
       2,     2,     2,     2,     2,     2,     2,     2,     2,     1,
3444
       3,     2,     1,     2,     4,     2,     2,     1,     2,     2,
3445
       3,     1,    13,    12,     1,     1,     0,     0,     0,     0,
3446
       1,     0,     5,     3,     1,     1,     2,     2,     2,     4,
3447
       4,     0,     3,     1,     1,     1,     1,     3,     0,     1,
3448
       1,     0,     1,     4,     3,     1,     3,     1,     1,     3,
3449
       2,     3,     1,     1,     1,     1,     1,     1,     1,     1,
3450
       1,     1,     1,     1,     1,     3,     3,     5,     5,     0,
3451
       1,     1,     1,     3,     1,     1,     1,     1,     1,     1,
3452
       3,     1,     1,     1,     4,     4,     4,     1,     1,     1,
3453
       3,     3,     1,     4,     2,     3,     3,     1,     4,     3,
3454
       3,     3,     3,     1,     3,     1,     1,     3,     1,     1,
3455
       0,     1,     3,     1,     3,     1,     4,     2,     2,     6,
3456
       4,     2,     2,     1,     2,     1,     4,     3,     3,     3,
3457
       3,     6,     3,     1,     1,     2,     1,     5,     4,     2,
3458
       2,     4,     2,     2,     1,     3,     1
3459
};
3460
3461
3462
#define yyerrok         (yyerrstatus = 0)
3463
#define yyclearin       (yychar = YYEMPTY)
3464
32.9M
#define YYEMPTY         (-2)
3465
21.2M
#define YYEOF           0
3466
3467
103k
#define YYACCEPT        goto yyacceptlab
3468
43.9k
#define YYABORT         goto yyabortlab
3469
289
#define YYERROR         goto yyerrorlab
3470
3471
3472
#define YYRECOVERING()  (!!yyerrstatus)
3473
3474
#define YYBACKUP(Token, Value)                                    \
3475
  do                                                              \
3476
    if (yychar == YYEMPTY)                                        \
3477
      {                                                           \
3478
        yychar = (Token);                                         \
3479
        yylval = (Value);                                         \
3480
        YYPOPSTACK (yylen);                                       \
3481
        yystate = *yyssp;                                         \
3482
        goto yybackup;                                            \
3483
      }                                                           \
3484
    else                                                          \
3485
      {                                                           \
3486
        yyerror (YY_("syntax error: cannot back up")); \
3487
        YYERROR;                                                  \
3488
      }                                                           \
3489
  while (0)
3490
3491
/* Error token number */
3492
4.24M
#define YYTERROR        1
3493
#define YYERRCODE       256
3494
3495
3496
3497
/* Enable debugging if requested.  */
3498
#if ZENDDEBUG
3499
3500
# ifndef YYFPRINTF
3501
#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
3502
#  define YYFPRINTF fprintf
3503
# endif
3504
3505
# define YYDPRINTF(Args)                        \
3506
do {                                            \
3507
  if (yydebug)                                  \
3508
    YYFPRINTF Args;                             \
3509
} while (0)
3510
3511
/* This macro is provided for backward compatibility. */
3512
#ifndef YY_LOCATION_PRINT
3513
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
3514
#endif
3515
3516
3517
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
3518
do {                                                                      \
3519
  if (yydebug)                                                            \
3520
    {                                                                     \
3521
      YYFPRINTF (stderr, "%s ", Title);                                   \
3522
      yy_symbol_print (stderr,                                            \
3523
                  Type, Value); \
3524
      YYFPRINTF (stderr, "\n");                                           \
3525
    }                                                                     \
3526
} while (0)
3527
3528
3529
/*-----------------------------------.
3530
| Print this symbol's value on YYO.  |
3531
`-----------------------------------*/
3532
3533
static void
3534
yy_symbol_value_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep)
3535
{
3536
  FILE *yyoutput = yyo;
3537
  YYUSE (yyoutput);
3538
  if (!yyvaluep)
3539
    return;
3540
# ifdef YYPRINT
3541
  if (yytype < YYNTOKENS)
3542
    YYPRINT (yyo, yytoknum[yytype], *yyvaluep);
3543
# endif
3544
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
3545
  YYUSE (yytype);
3546
  YY_IGNORE_MAYBE_UNINITIALIZED_END
3547
}
3548
3549
3550
/*---------------------------.
3551
| Print this symbol on YYO.  |
3552
`---------------------------*/
3553
3554
static void
3555
yy_symbol_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep)
3556
{
3557
  YYFPRINTF (yyo, "%s %s (",
3558
             yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
3559
3560
  yy_symbol_value_print (yyo, yytype, yyvaluep);
3561
  YYFPRINTF (yyo, ")");
3562
}
3563
3564
/*------------------------------------------------------------------.
3565
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
3566
| TOP (included).                                                   |
3567
`------------------------------------------------------------------*/
3568
3569
static void
3570
yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop)
3571
{
3572
  YYFPRINTF (stderr, "Stack now");
3573
  for (; yybottom <= yytop; yybottom++)
3574
    {
3575
      int yybot = *yybottom;
3576
      YYFPRINTF (stderr, " %d", yybot);
3577
    }
3578
  YYFPRINTF (stderr, "\n");
3579
}
3580
3581
# define YY_STACK_PRINT(Bottom, Top)                            \
3582
do {                                                            \
3583
  if (yydebug)                                                  \
3584
    yy_stack_print ((Bottom), (Top));                           \
3585
} while (0)
3586
3587
3588
/*------------------------------------------------.
3589
| Report that the YYRULE is going to be reduced.  |
3590
`------------------------------------------------*/
3591
3592
static void
3593
yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp, int yyrule)
3594
{
3595
  int yylno = yyrline[yyrule];
3596
  int yynrhs = yyr2[yyrule];
3597
  int yyi;
3598
  YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n",
3599
             yyrule - 1, yylno);
3600
  /* The symbols being reduced.  */
3601
  for (yyi = 0; yyi < yynrhs; yyi++)
3602
    {
3603
      YYFPRINTF (stderr, "   $%d = ", yyi + 1);
3604
      yy_symbol_print (stderr,
3605
                       yystos[+yyssp[yyi + 1 - yynrhs]],
3606
                       &yyvsp[(yyi + 1) - (yynrhs)]
3607
                                              );
3608
      YYFPRINTF (stderr, "\n");
3609
    }
3610
}
3611
3612
# define YY_REDUCE_PRINT(Rule)          \
3613
do {                                    \
3614
  if (yydebug)                          \
3615
    yy_reduce_print (yyssp, yyvsp, Rule); \
3616
} while (0)
3617
3618
/* Nonzero means print parse trace.  It is left uninitialized so that
3619
   multiple parsers can coexist.  */
3620
int yydebug;
3621
#else /* !ZENDDEBUG */
3622
# define YYDPRINTF(Args)
3623
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
3624
# define YY_STACK_PRINT(Bottom, Top)
3625
# define YY_REDUCE_PRINT(Rule)
3626
#endif /* !ZENDDEBUG */
3627
3628
3629
/* YYINITDEPTH -- initial size of the parser's stacks.  */
3630
#ifndef YYINITDEPTH
3631
147k
# define YYINITDEPTH 200
3632
#endif
3633
3634
/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
3635
   if the built-in stack extension method is used).
3636
3637
   Do not make this value too large; the results are undefined if
3638
   YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
3639
   evaluated with infinite-precision integer arithmetic.  */
3640
3641
#ifndef YYMAXDEPTH
3642
4.29k
# define YYMAXDEPTH 10000
3643
#endif
3644
3645
3646
#if YYERROR_VERBOSE
3647
3648
# ifndef yystrlen
3649
#  if defined __GLIBC__ && defined _STRING_H
3650
43.6k
#   define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S)))
3651
#  else
3652
/* Return the length of YYSTR.  */
3653
static YYPTRDIFF_T
3654
yystrlen (const char *yystr)
3655
{
3656
  YYPTRDIFF_T yylen;
3657
  for (yylen = 0; yystr[yylen]; yylen++)
3658
    continue;
3659
  return yylen;
3660
}
3661
#  endif
3662
# endif
3663
3664
# ifndef yystpcpy
3665
#  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
3666
43.6k
#   define yystpcpy stpcpy
3667
#  else
3668
/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
3669
   YYDEST.  */
3670
static char *
3671
yystpcpy (char *yydest, const char *yysrc)
3672
{
3673
  char *yyd = yydest;
3674
  const char *yys = yysrc;
3675
3676
  while ((*yyd++ = *yys++) != '\0')
3677
    continue;
3678
3679
  return yyd - 1;
3680
}
3681
#  endif
3682
# endif
3683
3684
# ifndef yytnamerr
3685
/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
3686
   quotes and backslashes, so that it's suitable for yyerror.  The
3687
   heuristic is that double-quoting is unnecessary unless the string
3688
   contains an apostrophe, a comma, or backslash (other than
3689
   backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
3690
   null, do not copy; instead, return the length of what the result
3691
   would have been.  */
3692
static YYPTRDIFF_T
3693
yytnamerr (char *yyres, const char *yystr)
3694
{
3695
  if (*yystr == '"')
3696
    {
3697
      YYPTRDIFF_T yyn = 0;
3698
      char const *yyp = yystr;
3699
3700
      for (;;)
3701
        switch (*++yyp)
3702
          {
3703
          case '\'':
3704
          case ',':
3705
            goto do_not_strip_quotes;
3706
3707
          case '\\':
3708
            if (*++yyp != '\\')
3709
              goto do_not_strip_quotes;
3710
            else
3711
              goto append;
3712
3713
          append:
3714
          default:
3715
            if (yyres)
3716
              yyres[yyn] = *yyp;
3717
            yyn++;
3718
            break;
3719
3720
          case '"':
3721
            if (yyres)
3722
              yyres[yyn] = '\0';
3723
            return yyn;
3724
          }
3725
    do_not_strip_quotes: ;
3726
    }
3727
3728
  if (yyres)
3729
    return yystpcpy (yyres, yystr) - yyres;
3730
  else
3731
    return yystrlen (yystr);
3732
}
3733
# endif
3734
3735
/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
3736
   about the unexpected token YYTOKEN for the state stack whose top is
3737
   YYSSP.
3738
3739
   Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
3740
   not large enough to hold the message.  In that case, also set
3741
   *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
3742
   required number of bytes is too large to store.  */
3743
static int
3744
yysyntax_error (YYPTRDIFF_T *yymsg_alloc, char **yymsg,
3745
                yy_state_t *yyssp, int yytoken)
3746
43.6k
{
3747
43.6k
  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
3748
  /* Internationalized format string. */
3749
43.6k
  const char *yyformat = YY_NULLPTR;
3750
  /* Arguments of yyformat: reported tokens (one for the "unexpected",
3751
     one per "expected"). */
3752
43.6k
  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
3753
  /* Actual size of YYARG. */
3754
43.6k
  int yycount = 0;
3755
  /* Cumulated lengths of YYARG.  */
3756
43.6k
  YYPTRDIFF_T yysize = 0;
3757
3758
  /* There are many possibilities here to consider:
3759
     - If this state is a consistent state with a default action, then
3760
       the only way this function was invoked is if the default action
3761
       is an error action.  In that case, don't check for expected
3762
       tokens because there are none.
3763
     - The only way there can be no lookahead present (in yychar) is if
3764
       this state is a consistent state with a default action.  Thus,
3765
       detecting the absence of a lookahead is sufficient to determine
3766
       that there is no unexpected or expected token to report.  In that
3767
       case, just report a simple "syntax error".
3768
     - Don't assume there isn't a lookahead just because this state is a
3769
       consistent state with a default action.  There might have been a
3770
       previous inconsistent state, consistent state with a non-default
3771
       action, or user semantic action that manipulated yychar.
3772
     - Of course, the expected token list depends on states to have
3773
       correct lookahead information, and it depends on the parser not
3774
       to perform extra reductions after fetching a lookahead from the
3775
       scanner and before detecting a syntax error.  Thus, state merging
3776
       (from LALR or IELR) and default reductions corrupt the expected
3777
       token list.  However, the list is correct for canonical LR with
3778
       one exception: it will still contain any token that will not be
3779
       accepted due to an error action in a later state.
3780
  */
3781
43.6k
  if (yytoken != YYEMPTY)
3782
43.6k
    {
3783
43.6k
      int yyn = yypact[+*yyssp];
3784
43.6k
      YYPTRDIFF_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
3785
43.6k
      yysize = yysize0;
3786
43.6k
      yyarg[yycount++] = yytname[yytoken];
3787
43.6k
      if (!yypact_value_is_default (yyn))
3788
43.6k
        {
3789
          /* Start YYX at -YYN if negative to avoid negative indexes in
3790
             YYCHECK.  In other words, skip the first -YYN actions for
3791
             this state because they are default actions.  */
3792
43.6k
          int yyxbegin = yyn < 0 ? -yyn : 0;
3793
          /* Stay within bounds of both yycheck and yytname.  */
3794
43.6k
          int yychecklim = YYLAST - yyn + 1;
3795
43.6k
          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
3796
43.6k
          int yyx;
3797
3798
2.85M
          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
3799
2.84M
            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
3800
2.84M
                && !yytable_value_is_error (yytable[yyx + yyn]))
3801
184k
              {
3802
184k
                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
3803
33.1k
                  {
3804
33.1k
                    yycount = 1;
3805
33.1k
                    yysize = yysize0;
3806
33.1k
                    break;
3807
33.1k
                  }
3808
151k
                yyarg[yycount++] = yytname[yyx];
3809
151k
                {
3810
151k
                  YYPTRDIFF_T yysize1
3811
151k
                    = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
3812
151k
                  if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
3813
151k
                    yysize = yysize1;
3814
0
                  else
3815
0
                    return 2;
3816
151k
                }
3817
151k
              }
3818
43.6k
        }
3819
43.6k
    }
3820
3821
43.6k
  switch (yycount)
3822
43.6k
    {
3823
0
# define YYCASE_(N, S)                      \
3824
43.6k
      case N:                               \
3825
43.6k
        yyformat = S;                       \
3826
43.6k
      break
3827
0
    default: /* Avoid compiler warnings. */
3828
0
      YYCASE_(0, YY_("syntax error"));
3829
33.1k
      YYCASE_(1, YY_("syntax error, unexpected %s"));
3830
7.05k
      YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
3831
375
      YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
3832
1.38k
      YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
3833
43.6k
      YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
3834
43.6k
# undef YYCASE_
3835
43.6k
    }
3836
3837
43.6k
  {
3838
    /* Don't count the "%s"s in the final size, but reserve room for
3839
       the terminator.  */
3840
43.6k
    YYPTRDIFF_T yysize1 = yysize + (yystrlen (yyformat) - 2 * yycount) + 1;
3841
43.6k
    if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
3842
43.6k
      yysize = yysize1;
3843
0
    else
3844
0
      return 2;
3845
43.6k
  }
3846
3847
43.6k
  if (*yymsg_alloc < yysize)
3848
2
    {
3849
2
      *yymsg_alloc = 2 * yysize;
3850
2
      if (! (yysize <= *yymsg_alloc
3851
2
             && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
3852
0
        *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
3853
2
      return 1;
3854
2
    }
3855
3856
  /* Avoid sprintf, as that infringes on the user's name space.
3857
     Don't have undefined behavior even if the translation
3858
     produced a string with the wrong number of "%s"s.  */
3859
43.6k
  {
3860
43.6k
    char *yyp = *yymsg;
3861
43.6k
    int yyi = 0;
3862
1.35M
    while ((*yyp = *yyformat) != '\0')
3863
1.31M
      if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
3864
62.5k
        {
3865
62.5k
          yyp += yytnamerr (yyp, yyarg[yyi++]);
3866
62.5k
          yyformat += 2;
3867
62.5k
        }
3868
1.25M
      else
3869
1.25M
        {
3870
1.25M
          ++yyp;
3871
1.25M
          ++yyformat;
3872
1.25M
        }
3873
43.6k
  }
3874
43.6k
  return 0;
3875
43.6k
}
3876
#endif /* YYERROR_VERBOSE */
3877
3878
/*-----------------------------------------------.
3879
| Release the memory associated to this symbol.  |
3880
`-----------------------------------------------*/
3881
3882
static void
3883
yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
3884
917k
{
3885
917k
  YYUSE (yyvaluep);
3886
917k
  if (!yymsg)
3887
0
    yymsg = "Deleting";
3888
917k
  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
3889
3890
917k
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
3891
917k
  switch (yytype)
3892
917k
    {
3893
141
    case 73: /* "integer"  */
3894
141
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3895
141
            { zend_ast_destroy(((*yyvaluep).ast)); }
3896
141
#line 3897 "/src/php-src/Zend/zend_language_parser.c"
3897
141
        break;
3898
3899
212
    case 74: /* "floating-point number"  */
3900
212
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3901
212
            { zend_ast_destroy(((*yyvaluep).ast)); }
3902
212
#line 3903 "/src/php-src/Zend/zend_language_parser.c"
3903
212
        break;
3904
3905
5.15k
    case 75: /* "identifier"  */
3906
5.15k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3907
5.15k
            { zend_ast_destroy(((*yyvaluep).ast)); }
3908
5.15k
#line 3909 "/src/php-src/Zend/zend_language_parser.c"
3909
5.15k
        break;
3910
3911
40
    case 76: /* "fully qualified name"  */
3912
40
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3913
40
            { zend_ast_destroy(((*yyvaluep).ast)); }
3914
40
#line 3915 "/src/php-src/Zend/zend_language_parser.c"
3915
40
        break;
3916
3917
19
    case 77: /* "namespace-relative name"  */
3918
19
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3919
19
            { zend_ast_destroy(((*yyvaluep).ast)); }
3920
19
#line 3921 "/src/php-src/Zend/zend_language_parser.c"
3921
19
        break;
3922
3923
36
    case 78: /* "namespaced name"  */
3924
36
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3925
36
            { zend_ast_destroy(((*yyvaluep).ast)); }
3926
36
#line 3927 "/src/php-src/Zend/zend_language_parser.c"
3927
36
        break;
3928
3929
1.99k
    case 79: /* "variable"  */
3930
1.99k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3931
1.99k
            { zend_ast_destroy(((*yyvaluep).ast)); }
3932
1.99k
#line 3933 "/src/php-src/Zend/zend_language_parser.c"
3933
1.99k
        break;
3934
3935
6
    case 80: /* T_INLINE_HTML  */
3936
6
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3937
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
3938
6
#line 3939 "/src/php-src/Zend/zend_language_parser.c"
3939
6
        break;
3940
3941
30.0k
    case 81: /* "string content"  */
3942
30.0k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3943
30.0k
            { zend_ast_destroy(((*yyvaluep).ast)); }
3944
30.0k
#line 3945 "/src/php-src/Zend/zend_language_parser.c"
3945
30.0k
        break;
3946
3947
225
    case 82: /* "quoted string"  */
3948
225
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3949
225
            { zend_ast_destroy(((*yyvaluep).ast)); }
3950
225
#line 3951 "/src/php-src/Zend/zend_language_parser.c"
3951
225
        break;
3952
3953
278
    case 83: /* "variable name"  */
3954
278
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3955
278
            { zend_ast_destroy(((*yyvaluep).ast)); }
3956
278
#line 3957 "/src/php-src/Zend/zend_language_parser.c"
3957
278
        break;
3958
3959
3
    case 84: /* "number"  */
3960
3
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3961
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
3962
3
#line 3963 "/src/php-src/Zend/zend_language_parser.c"
3963
3
        break;
3964
3965
610
    case 190: /* identifier  */
3966
610
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3967
610
            { zend_ast_destroy(((*yyvaluep).ast)); }
3968
610
#line 3969 "/src/php-src/Zend/zend_language_parser.c"
3969
610
        break;
3970
3971
43.6k
    case 191: /* top_statement_list  */
3972
43.6k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3973
43.6k
            { zend_ast_destroy(((*yyvaluep).ast)); }
3974
43.6k
#line 3975 "/src/php-src/Zend/zend_language_parser.c"
3975
43.6k
        break;
3976
3977
292
    case 192: /* namespace_declaration_name  */
3978
292
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3979
292
            { zend_ast_destroy(((*yyvaluep).ast)); }
3980
292
#line 3981 "/src/php-src/Zend/zend_language_parser.c"
3981
292
        break;
3982
3983
1
    case 193: /* namespace_name  */
3984
1
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3985
1
            { zend_ast_destroy(((*yyvaluep).ast)); }
3986
1
#line 3987 "/src/php-src/Zend/zend_language_parser.c"
3987
1
        break;
3988
3989
82
    case 194: /* legacy_namespace_name  */
3990
82
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3991
82
            { zend_ast_destroy(((*yyvaluep).ast)); }
3992
82
#line 3993 "/src/php-src/Zend/zend_language_parser.c"
3993
82
        break;
3994
3995
9.05k
    case 195: /* name  */
3996
9.05k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
3997
9.05k
            { zend_ast_destroy(((*yyvaluep).ast)); }
3998
9.05k
#line 3999 "/src/php-src/Zend/zend_language_parser.c"
3999
9.05k
        break;
4000
4001
0
    case 196: /* attribute_decl  */
4002
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4003
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4004
0
#line 4005 "/src/php-src/Zend/zend_language_parser.c"
4005
0
        break;
4006
4007
242
    case 197: /* attribute_group  */
4008
242
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4009
242
            { zend_ast_destroy(((*yyvaluep).ast)); }
4010
242
#line 4011 "/src/php-src/Zend/zend_language_parser.c"
4011
242
        break;
4012
4013
0
    case 198: /* attribute  */
4014
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4015
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4016
0
#line 4017 "/src/php-src/Zend/zend_language_parser.c"
4017
0
        break;
4018
4019
172
    case 199: /* attributes  */
4020
172
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4021
172
            { zend_ast_destroy(((*yyvaluep).ast)); }
4022
172
#line 4023 "/src/php-src/Zend/zend_language_parser.c"
4023
172
        break;
4024
4025
0
    case 200: /* attributed_statement  */
4026
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4027
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4028
0
#line 4029 "/src/php-src/Zend/zend_language_parser.c"
4029
0
        break;
4030
4031
0
    case 201: /* attributed_top_statement  */
4032
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4033
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4034
0
#line 4035 "/src/php-src/Zend/zend_language_parser.c"
4035
0
        break;
4036
4037
0
    case 202: /* top_statement  */
4038
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4039
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4040
0
#line 4041 "/src/php-src/Zend/zend_language_parser.c"
4041
0
        break;
4042
4043
4
    case 206: /* group_use_declaration  */
4044
4
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4045
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4046
4
#line 4047 "/src/php-src/Zend/zend_language_parser.c"
4047
4
        break;
4048
4049
4
    case 207: /* mixed_group_use_declaration  */
4050
4
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4051
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4052
4
#line 4053 "/src/php-src/Zend/zend_language_parser.c"
4053
4
        break;
4054
4055
33
    case 209: /* inline_use_declarations  */
4056
33
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4057
33
            { zend_ast_destroy(((*yyvaluep).ast)); }
4058
33
#line 4059 "/src/php-src/Zend/zend_language_parser.c"
4059
33
        break;
4060
4061
17
    case 210: /* unprefixed_use_declarations  */
4062
17
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4063
17
            { zend_ast_destroy(((*yyvaluep).ast)); }
4064
17
#line 4065 "/src/php-src/Zend/zend_language_parser.c"
4065
17
        break;
4066
4067
47
    case 211: /* use_declarations  */
4068
47
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4069
47
            { zend_ast_destroy(((*yyvaluep).ast)); }
4070
47
#line 4071 "/src/php-src/Zend/zend_language_parser.c"
4071
47
        break;
4072
4073
0
    case 212: /* inline_use_declaration  */
4074
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4075
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4076
0
#line 4077 "/src/php-src/Zend/zend_language_parser.c"
4077
0
        break;
4078
4079
0
    case 213: /* unprefixed_use_declaration  */
4080
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4081
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4082
0
#line 4083 "/src/php-src/Zend/zend_language_parser.c"
4083
0
        break;
4084
4085
0
    case 214: /* use_declaration  */
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
116
    case 215: /* const_list  */
4092
116
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4093
116
            { zend_ast_destroy(((*yyvaluep).ast)); }
4094
116
#line 4095 "/src/php-src/Zend/zend_language_parser.c"
4095
116
        break;
4096
4097
31.0k
    case 216: /* inner_statement_list  */
4098
31.0k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4099
31.0k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4100
31.0k
#line 4101 "/src/php-src/Zend/zend_language_parser.c"
4101
31.0k
        break;
4102
4103
0
    case 217: /* inner_statement  */
4104
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4105
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4106
0
#line 4107 "/src/php-src/Zend/zend_language_parser.c"
4107
0
        break;
4108
4109
75
    case 218: /* statement  */
4110
75
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4111
75
            { zend_ast_destroy(((*yyvaluep).ast)); }
4112
75
#line 4113 "/src/php-src/Zend/zend_language_parser.c"
4113
75
        break;
4114
4115
401
    case 220: /* catch_list  */
4116
401
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4117
401
            { zend_ast_destroy(((*yyvaluep).ast)); }
4118
401
#line 4119 "/src/php-src/Zend/zend_language_parser.c"
4119
401
        break;
4120
4121
174
    case 221: /* catch_name_list  */
4122
174
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4123
174
            { zend_ast_destroy(((*yyvaluep).ast)); }
4124
174
#line 4125 "/src/php-src/Zend/zend_language_parser.c"
4125
174
        break;
4126
4127
174
    case 222: /* optional_variable  */
4128
174
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4129
174
            { zend_ast_destroy(((*yyvaluep).ast)); }
4130
174
#line 4131 "/src/php-src/Zend/zend_language_parser.c"
4131
174
        break;
4132
4133
0
    case 223: /* finally_statement  */
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
46
    case 224: /* unset_variables  */
4140
46
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4141
46
            { zend_ast_destroy(((*yyvaluep).ast)); }
4142
46
#line 4143 "/src/php-src/Zend/zend_language_parser.c"
4143
46
        break;
4144
4145
0
    case 225: /* unset_variable  */
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
1.41k
    case 226: /* function_name  */
4152
1.41k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4153
1.41k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4154
1.41k
#line 4155 "/src/php-src/Zend/zend_language_parser.c"
4155
1.41k
        break;
4156
4157
0
    case 227: /* function_declaration_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 230: /* class_declaration_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 237: /* trait_declaration_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 239: /* interface_declaration_statement  */
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 241: /* enum_declaration_statement  */
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
473
    case 243: /* enum_backing_type  */
4188
473
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4189
473
            { zend_ast_destroy(((*yyvaluep).ast)); }
4190
473
#line 4191 "/src/php-src/Zend/zend_language_parser.c"
4191
473
        break;
4192
4193
0
    case 244: /* enum_case  */
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
14
    case 245: /* enum_case_expr  */
4200
14
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4201
14
            { zend_ast_destroy(((*yyvaluep).ast)); }
4202
14
#line 4203 "/src/php-src/Zend/zend_language_parser.c"
4203
14
        break;
4204
4205
1.30k
    case 246: /* extends_from  */
4206
1.30k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4207
1.30k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4208
1.30k
#line 4209 "/src/php-src/Zend/zend_language_parser.c"
4209
1.30k
        break;
4210
4211
113
    case 247: /* interface_extends_list  */
4212
113
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4213
113
            { zend_ast_destroy(((*yyvaluep).ast)); }
4214
113
#line 4215 "/src/php-src/Zend/zend_language_parser.c"
4215
113
        break;
4216
4217
1.77k
    case 248: /* implements_list  */
4218
1.77k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4219
1.77k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4220
1.77k
#line 4221 "/src/php-src/Zend/zend_language_parser.c"
4221
1.77k
        break;
4222
4223
351
    case 249: /* foreach_variable  */
4224
351
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4225
351
            { zend_ast_destroy(((*yyvaluep).ast)); }
4226
351
#line 4227 "/src/php-src/Zend/zend_language_parser.c"
4227
351
        break;
4228
4229
0
    case 250: /* for_statement  */
4230
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4231
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4232
0
#line 4233 "/src/php-src/Zend/zend_language_parser.c"
4233
0
        break;
4234
4235
0
    case 251: /* foreach_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 252: /* declare_statement  */
4242
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4243
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4244
0
#line 4245 "/src/php-src/Zend/zend_language_parser.c"
4245
0
        break;
4246
4247
0
    case 253: /* switch_case_list  */
4248
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4249
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4250
0
#line 4251 "/src/php-src/Zend/zend_language_parser.c"
4251
0
        break;
4252
4253
96
    case 254: /* case_list  */
4254
96
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4255
96
            { zend_ast_destroy(((*yyvaluep).ast)); }
4256
96
#line 4257 "/src/php-src/Zend/zend_language_parser.c"
4257
96
        break;
4258
4259
0
    case 256: /* match  */
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
22
    case 257: /* match_arm_list  */
4266
22
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4267
22
            { zend_ast_destroy(((*yyvaluep).ast)); }
4268
22
#line 4269 "/src/php-src/Zend/zend_language_parser.c"
4269
22
        break;
4270
4271
109
    case 258: /* non_empty_match_arm_list  */
4272
109
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4273
109
            { zend_ast_destroy(((*yyvaluep).ast)); }
4274
109
#line 4275 "/src/php-src/Zend/zend_language_parser.c"
4275
109
        break;
4276
4277
0
    case 259: /* match_arm  */
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
90
    case 260: /* match_arm_cond_list  */
4284
90
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4285
90
            { zend_ast_destroy(((*yyvaluep).ast)); }
4286
90
#line 4287 "/src/php-src/Zend/zend_language_parser.c"
4287
90
        break;
4288
4289
0
    case 261: /* while_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
111
    case 262: /* if_stmt_without_else  */
4296
111
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4297
111
            { zend_ast_destroy(((*yyvaluep).ast)); }
4298
111
#line 4299 "/src/php-src/Zend/zend_language_parser.c"
4299
111
        break;
4300
4301
0
    case 263: /* if_stmt  */
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
81
    case 264: /* alt_if_stmt_without_else  */
4308
81
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4309
81
            { zend_ast_destroy(((*yyvaluep).ast)); }
4310
81
#line 4311 "/src/php-src/Zend/zend_language_parser.c"
4311
81
        break;
4312
4313
0
    case 265: /* alt_if_stmt  */
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
3.35k
    case 266: /* parameter_list  */
4320
3.35k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4321
3.35k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4322
3.35k
#line 4323 "/src/php-src/Zend/zend_language_parser.c"
4323
3.35k
        break;
4324
4325
108
    case 267: /* non_empty_parameter_list  */
4326
108
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4327
108
            { zend_ast_destroy(((*yyvaluep).ast)); }
4328
108
#line 4329 "/src/php-src/Zend/zend_language_parser.c"
4329
108
        break;
4330
4331
0
    case 268: /* attributed_parameter  */
4332
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4333
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4334
0
#line 4335 "/src/php-src/Zend/zend_language_parser.c"
4335
0
        break;
4336
4337
0
    case 270: /* parameter  */
4338
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4339
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4340
0
#line 4341 "/src/php-src/Zend/zend_language_parser.c"
4341
0
        break;
4342
4343
1.03k
    case 271: /* optional_type_without_static  */
4344
1.03k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4345
1.03k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4346
1.03k
#line 4347 "/src/php-src/Zend/zend_language_parser.c"
4347
1.03k
        break;
4348
4349
118
    case 272: /* type_expr  */
4350
118
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4351
118
            { zend_ast_destroy(((*yyvaluep).ast)); }
4352
118
#line 4353 "/src/php-src/Zend/zend_language_parser.c"
4353
118
        break;
4354
4355
4
    case 273: /* type  */
4356
4
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4357
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4358
4
#line 4359 "/src/php-src/Zend/zend_language_parser.c"
4359
4
        break;
4360
4361
13
    case 274: /* union_type_element  */
4362
13
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4363
13
            { zend_ast_destroy(((*yyvaluep).ast)); }
4364
13
#line 4365 "/src/php-src/Zend/zend_language_parser.c"
4365
13
        break;
4366
4367
9
    case 275: /* union_type  */
4368
9
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4369
9
            { zend_ast_destroy(((*yyvaluep).ast)); }
4370
9
#line 4371 "/src/php-src/Zend/zend_language_parser.c"
4371
9
        break;
4372
4373
10
    case 276: /* intersection_type  */
4374
10
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4375
10
            { zend_ast_destroy(((*yyvaluep).ast)); }
4376
10
#line 4377 "/src/php-src/Zend/zend_language_parser.c"
4377
10
        break;
4378
4379
0
    case 277: /* type_expr_without_static  */
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
20
    case 278: /* type_without_static  */
4386
20
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4387
20
            { zend_ast_destroy(((*yyvaluep).ast)); }
4388
20
#line 4389 "/src/php-src/Zend/zend_language_parser.c"
4389
20
        break;
4390
4391
8
    case 279: /* union_type_without_static_element  */
4392
8
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4393
8
            { zend_ast_destroy(((*yyvaluep).ast)); }
4394
8
#line 4395 "/src/php-src/Zend/zend_language_parser.c"
4395
8
        break;
4396
4397
5
    case 280: /* union_type_without_static  */
4398
5
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4399
5
            { zend_ast_destroy(((*yyvaluep).ast)); }
4400
5
#line 4401 "/src/php-src/Zend/zend_language_parser.c"
4401
5
        break;
4402
4403
6
    case 281: /* intersection_type_without_static  */
4404
6
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4405
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4406
6
#line 4407 "/src/php-src/Zend/zend_language_parser.c"
4407
6
        break;
4408
4409
3.21k
    case 282: /* return_type  */
4410
3.21k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4411
3.21k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4412
3.21k
#line 4413 "/src/php-src/Zend/zend_language_parser.c"
4413
3.21k
        break;
4414
4415
0
    case 283: /* argument_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
1.98k
    case 284: /* non_empty_argument_list  */
4422
1.98k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4423
1.98k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4424
1.98k
#line 4425 "/src/php-src/Zend/zend_language_parser.c"
4425
1.98k
        break;
4426
4427
0
    case 285: /* argument  */
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
38
    case 286: /* global_var_list  */
4434
38
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4435
38
            { zend_ast_destroy(((*yyvaluep).ast)); }
4436
38
#line 4437 "/src/php-src/Zend/zend_language_parser.c"
4437
38
        break;
4438
4439
0
    case 287: /* global_var  */
4440
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4441
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4442
0
#line 4443 "/src/php-src/Zend/zend_language_parser.c"
4443
0
        break;
4444
4445
38
    case 288: /* static_var_list  */
4446
38
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4447
38
            { zend_ast_destroy(((*yyvaluep).ast)); }
4448
38
#line 4449 "/src/php-src/Zend/zend_language_parser.c"
4449
38
        break;
4450
4451
0
    case 289: /* static_var  */
4452
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4453
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4454
0
#line 4455 "/src/php-src/Zend/zend_language_parser.c"
4455
0
        break;
4456
4457
1.63k
    case 290: /* class_statement_list  */
4458
1.63k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4459
1.63k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4460
1.63k
#line 4461 "/src/php-src/Zend/zend_language_parser.c"
4461
1.63k
        break;
4462
4463
0
    case 291: /* attributed_class_statement  */
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 292: /* class_statement  */
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
108
    case 293: /* class_name_list  */
4476
108
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4477
108
            { zend_ast_destroy(((*yyvaluep).ast)); }
4478
108
#line 4479 "/src/php-src/Zend/zend_language_parser.c"
4479
108
        break;
4480
4481
0
    case 294: /* trait_adaptations  */
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
58
    case 295: /* trait_adaptation_list  */
4488
58
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4489
58
            { zend_ast_destroy(((*yyvaluep).ast)); }
4490
58
#line 4491 "/src/php-src/Zend/zend_language_parser.c"
4491
58
        break;
4492
4493
0
    case 296: /* trait_adaptation  */
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
1
    case 297: /* trait_precedence  */
4500
1
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4501
1
            { zend_ast_destroy(((*yyvaluep).ast)); }
4502
1
#line 4503 "/src/php-src/Zend/zend_language_parser.c"
4503
1
        break;
4504
4505
18
    case 298: /* trait_alias  */
4506
18
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4507
18
            { zend_ast_destroy(((*yyvaluep).ast)); }
4508
18
#line 4509 "/src/php-src/Zend/zend_language_parser.c"
4509
18
        break;
4510
4511
23
    case 299: /* trait_method_reference  */
4512
23
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4513
23
            { zend_ast_destroy(((*yyvaluep).ast)); }
4514
23
#line 4515 "/src/php-src/Zend/zend_language_parser.c"
4515
23
        break;
4516
4517
1
    case 300: /* absolute_trait_method_reference  */
4518
1
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4519
1
            { zend_ast_destroy(((*yyvaluep).ast)); }
4520
1
#line 4521 "/src/php-src/Zend/zend_language_parser.c"
4521
1
        break;
4522
4523
0
    case 301: /* method_body  */
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 305: /* non_empty_member_modifiers  */
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
49
    case 307: /* property_list  */
4536
49
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4537
49
            { zend_ast_destroy(((*yyvaluep).ast)); }
4538
49
#line 4539 "/src/php-src/Zend/zend_language_parser.c"
4539
49
        break;
4540
4541
0
    case 308: /* property  */
4542
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4543
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4544
0
#line 4545 "/src/php-src/Zend/zend_language_parser.c"
4545
0
        break;
4546
4547
0
    case 309: /* hooked_property  */
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
608
    case 310: /* property_hook_list  */
4554
608
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4555
608
            { zend_ast_destroy(((*yyvaluep).ast)); }
4556
608
#line 4557 "/src/php-src/Zend/zend_language_parser.c"
4557
608
        break;
4558
4559
0
    case 311: /* optional_property_hook_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 313: /* property_hook  */
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 315: /* property_hook_body  */
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
219
    case 316: /* optional_parameter_list  */
4578
219
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4579
219
            { zend_ast_destroy(((*yyvaluep).ast)); }
4580
219
#line 4581 "/src/php-src/Zend/zend_language_parser.c"
4581
219
        break;
4582
4583
73
    case 317: /* class_const_list  */
4584
73
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4585
73
            { zend_ast_destroy(((*yyvaluep).ast)); }
4586
73
#line 4587 "/src/php-src/Zend/zend_language_parser.c"
4587
73
        break;
4588
4589
0
    case 318: /* class_const_decl  */
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 319: /* const_decl  */
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
213
    case 320: /* echo_expr_list  */
4602
213
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4603
213
            { zend_ast_destroy(((*yyvaluep).ast)); }
4604
213
#line 4605 "/src/php-src/Zend/zend_language_parser.c"
4605
213
        break;
4606
4607
0
    case 321: /* echo_expr  */
4608
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4609
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4610
0
#line 4611 "/src/php-src/Zend/zend_language_parser.c"
4611
0
        break;
4612
4613
814
    case 322: /* for_cond_exprs  */
4614
814
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4615
814
            { zend_ast_destroy(((*yyvaluep).ast)); }
4616
814
#line 4617 "/src/php-src/Zend/zend_language_parser.c"
4617
814
        break;
4618
4619
1.47k
    case 323: /* for_exprs  */
4620
1.47k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4621
1.47k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4622
1.47k
#line 4623 "/src/php-src/Zend/zend_language_parser.c"
4623
1.47k
        break;
4624
4625
46
    case 324: /* non_empty_for_exprs  */
4626
46
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4627
46
            { zend_ast_destroy(((*yyvaluep).ast)); }
4628
46
#line 4629 "/src/php-src/Zend/zend_language_parser.c"
4629
46
        break;
4630
4631
0
    case 325: /* anonymous_class  */
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 327: /* new_dereferenceable  */
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 328: /* new_non_dereferenceable  */
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
28.7k
    case 329: /* expr  */
4650
28.7k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4651
28.7k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4652
28.7k
#line 4653 "/src/php-src/Zend/zend_language_parser.c"
4653
28.7k
        break;
4654
4655
0
    case 330: /* inline_function  */
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
7.01k
    case 333: /* backup_doc_comment  */
4662
7.01k
#line 52 "/src/php-src/Zend/zend_language_parser.y"
4663
7.01k
            { if (((*yyvaluep).str)) zend_string_release_ex(((*yyvaluep).str), 0); }
4664
7.01k
#line 4665 "/src/php-src/Zend/zend_language_parser.c"
4665
7.01k
        break;
4666
4667
1.03k
    case 337: /* lexical_vars  */
4668
1.03k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4669
1.03k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4670
1.03k
#line 4671 "/src/php-src/Zend/zend_language_parser.c"
4671
1.03k
        break;
4672
4673
17
    case 338: /* lexical_var_list  */
4674
17
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4675
17
            { zend_ast_destroy(((*yyvaluep).ast)); }
4676
17
#line 4677 "/src/php-src/Zend/zend_language_parser.c"
4677
17
        break;
4678
4679
0
    case 339: /* lexical_var  */
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 340: /* function_call  */
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
908
    case 342: /* class_name  */
4692
908
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4693
908
            { zend_ast_destroy(((*yyvaluep).ast)); }
4694
908
#line 4695 "/src/php-src/Zend/zend_language_parser.c"
4695
908
        break;
4696
4697
1.47k
    case 343: /* class_name_reference  */
4698
1.47k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4699
1.47k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4700
1.47k
#line 4701 "/src/php-src/Zend/zend_language_parser.c"
4701
1.47k
        break;
4702
4703
556
    case 344: /* backticks_expr  */
4704
556
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4705
556
            { zend_ast_destroy(((*yyvaluep).ast)); }
4706
556
#line 4707 "/src/php-src/Zend/zend_language_parser.c"
4707
556
        break;
4708
4709
164
    case 345: /* ctor_arguments  */
4710
164
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4711
164
            { zend_ast_destroy(((*yyvaluep).ast)); }
4712
164
#line 4713 "/src/php-src/Zend/zend_language_parser.c"
4713
164
        break;
4714
4715
0
    case 346: /* dereferenceable_scalar  */
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 347: /* scalar  */
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 348: /* constant  */
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 349: /* class_constant  */
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
344
    case 350: /* optional_expr  */
4740
344
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4741
344
            { zend_ast_destroy(((*yyvaluep).ast)); }
4742
344
#line 4743 "/src/php-src/Zend/zend_language_parser.c"
4743
344
        break;
4744
4745
467
    case 351: /* variable_class_name  */
4746
467
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4747
467
            { zend_ast_destroy(((*yyvaluep).ast)); }
4748
467
#line 4749 "/src/php-src/Zend/zend_language_parser.c"
4749
467
        break;
4750
4751
0
    case 352: /* fully_dereferenceable  */
4752
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4753
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4754
0
#line 4755 "/src/php-src/Zend/zend_language_parser.c"
4755
0
        break;
4756
4757
3.18k
    case 353: /* array_object_dereferenceable  */
4758
3.18k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4759
3.18k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4760
3.18k
#line 4761 "/src/php-src/Zend/zend_language_parser.c"
4761
3.18k
        break;
4762
4763
2.27k
    case 354: /* callable_expr  */
4764
2.27k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4765
2.27k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4766
2.27k
#line 4767 "/src/php-src/Zend/zend_language_parser.c"
4767
2.27k
        break;
4768
4769
0
    case 355: /* callable_variable  */
4770
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4771
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4772
0
#line 4773 "/src/php-src/Zend/zend_language_parser.c"
4773
0
        break;
4774
4775
2.31k
    case 356: /* variable  */
4776
2.31k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4777
2.31k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4778
2.31k
#line 4779 "/src/php-src/Zend/zend_language_parser.c"
4779
2.31k
        break;
4780
4781
0
    case 357: /* simple_variable  */
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 358: /* static_member  */
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
196
    case 359: /* new_variable  */
4794
196
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4795
196
            { zend_ast_destroy(((*yyvaluep).ast)); }
4796
196
#line 4797 "/src/php-src/Zend/zend_language_parser.c"
4797
196
        break;
4798
4799
364
    case 360: /* member_name  */
4800
364
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4801
364
            { zend_ast_destroy(((*yyvaluep).ast)); }
4802
364
#line 4803 "/src/php-src/Zend/zend_language_parser.c"
4803
364
        break;
4804
4805
672
    case 361: /* property_name  */
4806
672
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4807
672
            { zend_ast_destroy(((*yyvaluep).ast)); }
4808
672
#line 4809 "/src/php-src/Zend/zend_language_parser.c"
4809
672
        break;
4810
4811
569
    case 362: /* array_pair_list  */
4812
569
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4813
569
            { zend_ast_destroy(((*yyvaluep).ast)); }
4814
569
#line 4815 "/src/php-src/Zend/zend_language_parser.c"
4815
569
        break;
4816
4817
0
    case 363: /* possible_array_pair  */
4818
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4819
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4820
0
#line 4821 "/src/php-src/Zend/zend_language_parser.c"
4821
0
        break;
4822
4823
728
    case 364: /* non_empty_array_pair_list  */
4824
728
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4825
728
            { zend_ast_destroy(((*yyvaluep).ast)); }
4826
728
#line 4827 "/src/php-src/Zend/zend_language_parser.c"
4827
728
        break;
4828
4829
0
    case 365: /* array_pair  */
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
10.4k
    case 366: /* encaps_list  */
4836
10.4k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4837
10.4k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4838
10.4k
#line 4839 "/src/php-src/Zend/zend_language_parser.c"
4839
10.4k
        break;
4840
4841
0
    case 367: /* encaps_var  */
4842
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4843
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4844
0
#line 4845 "/src/php-src/Zend/zend_language_parser.c"
4845
0
        break;
4846
4847
705
    case 368: /* encaps_var_offset  */
4848
705
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4849
705
            { zend_ast_destroy(((*yyvaluep).ast)); }
4850
705
#line 4851 "/src/php-src/Zend/zend_language_parser.c"
4851
705
        break;
4852
4853
0
    case 369: /* internal_functions_in_yacc  */
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
216
    case 370: /* isset_variables  */
4860
216
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4861
216
            { zend_ast_destroy(((*yyvaluep).ast)); }
4862
216
#line 4863 "/src/php-src/Zend/zend_language_parser.c"
4863
216
        break;
4864
4865
0
    case 371: /* isset_variable  */
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
709k
      default:
4872
709k
        break;
4873
917k
    }
4874
917k
  YY_IGNORE_MAYBE_UNINITIALIZED_END
4875
917k
}
4876
4877
4878
4879
4880
/*----------.
4881
| yyparse.  |
4882
`----------*/
4883
4884
int
4885
yyparse (void)
4886
147k
{
4887
/* The lookahead symbol.  */
4888
147k
int yychar;
4889
4890
4891
/* The semantic value of the lookahead symbol.  */
4892
/* Default value used for initialization, for pacifying older GCCs
4893
   or non-GCC compilers.  */
4894
147k
YY_INITIAL_VALUE (static YYSTYPE yyval_default;)
4895
147k
YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
4896
4897
    /* Number of syntax errors so far.  */
4898
147k
    int yynerrs;
4899
4900
147k
    yy_state_fast_t yystate;
4901
    /* Number of tokens to shift before error messages enabled.  */
4902
147k
    int yyerrstatus;
4903
4904
    /* The stacks and their tools:
4905
       'yyss': related to states.
4906
       'yyvs': related to semantic values.
4907
4908
       Refer to the stacks through separate pointers, to allow yyoverflow
4909
       to reallocate them elsewhere.  */
4910
4911
    /* The state stack.  */
4912
147k
    yy_state_t yyssa[YYINITDEPTH];
4913
147k
    yy_state_t *yyss;
4914
147k
    yy_state_t *yyssp;
4915
4916
    /* The semantic value stack.  */
4917
147k
    YYSTYPE yyvsa[YYINITDEPTH];
4918
147k
    YYSTYPE *yyvs;
4919
147k
    YYSTYPE *yyvsp;
4920
4921
147k
    YYPTRDIFF_T yystacksize;
4922
4923
147k
  int yyn;
4924
147k
  int yyresult;
4925
  /* Lookahead token as an internal (translated) token number.  */
4926
147k
  int yytoken = 0;
4927
  /* The variables used to return semantic value and location from the
4928
     action routines.  */
4929
147k
  YYSTYPE yyval;
4930
4931
147k
#if YYERROR_VERBOSE
4932
  /* Buffer for error messages, and its allocated size.  */
4933
147k
  char yymsgbuf[128];
4934
147k
  char *yymsg = yymsgbuf;
4935
147k
  YYPTRDIFF_T yymsg_alloc = sizeof yymsgbuf;
4936
147k
#endif
4937
4938
25.1M
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
4939
4940
  /* The number of symbols on the RHS of the reduced rule.
4941
     Keep to zero when no symbol should be popped.  */
4942
147k
  int yylen = 0;
4943
4944
147k
  yyssp = yyss = yyssa;
4945
147k
  yyvsp = yyvs = yyvsa;
4946
147k
  yystacksize = YYINITDEPTH;
4947
4948
147k
  YYDPRINTF ((stderr, "Starting parse\n"));
4949
4950
147k
  yystate = 0;
4951
147k
  yyerrstatus = 0;
4952
147k
  yynerrs = 0;
4953
147k
  yychar = YYEMPTY; /* Cause a token to be read.  */
4954
147k
  goto yysetstate;
4955
4956
4957
/*------------------------------------------------------------.
4958
| yynewstate -- push a new state, which is found in yystate.  |
4959
`------------------------------------------------------------*/
4960
35.7M
yynewstate:
4961
  /* In all cases, when you get here, the value and location stacks
4962
     have just been pushed.  So pushing a state here evens the stacks.  */
4963
35.7M
  yyssp++;
4964
4965
4966
/*--------------------------------------------------------------------.
4967
| yysetstate -- set current state (the top of the stack) to yystate.  |
4968
`--------------------------------------------------------------------*/
4969
35.9M
yysetstate:
4970
35.9M
  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
4971
35.9M
  YY_ASSERT (0 <= yystate && yystate < YYNSTATES);
4972
35.9M
  YY_IGNORE_USELESS_CAST_BEGIN
4973
35.9M
  *yyssp = YY_CAST (yy_state_t, yystate);
4974
35.9M
  YY_IGNORE_USELESS_CAST_END
4975
4976
35.9M
  if (yyss + yystacksize - 1 <= yyssp)
4977
#if !defined yyoverflow && !defined YYSTACK_RELOCATE
4978
    goto yyexhaustedlab;
4979
#else
4980
2.14k
    {
4981
      /* Get the current used size of the three stacks, in elements.  */
4982
2.14k
      YYPTRDIFF_T yysize = yyssp - yyss + 1;
4983
4984
# if defined yyoverflow
4985
      {
4986
        /* Give user a chance to reallocate the stack.  Use copies of
4987
           these so that the &'s don't force the real ones into
4988
           memory.  */
4989
        yy_state_t *yyss1 = yyss;
4990
        YYSTYPE *yyvs1 = yyvs;
4991
4992
        /* Each stack pointer address is followed by the size of the
4993
           data in use in that stack, in bytes.  This used to be a
4994
           conditional around just the two extra args, but that might
4995
           be undefined if yyoverflow is a macro.  */
4996
        yyoverflow (YY_("memory exhausted"),
4997
                    &yyss1, yysize * YYSIZEOF (*yyssp),
4998
                    &yyvs1, yysize * YYSIZEOF (*yyvsp),
4999
                    &yystacksize);
5000
        yyss = yyss1;
5001
        yyvs = yyvs1;
5002
      }
5003
# else /* defined YYSTACK_RELOCATE */
5004
      /* Extend the stack our own way.  */
5005
2.14k
      if (YYMAXDEPTH <= yystacksize)
5006
1
        goto yyexhaustedlab;
5007
2.14k
      yystacksize *= 2;
5008
2.14k
      if (YYMAXDEPTH < yystacksize)
5009
5
        yystacksize = YYMAXDEPTH;
5010
5011
2.14k
      {
5012
2.14k
        yy_state_t *yyss1 = yyss;
5013
2.14k
        union yyalloc *yyptr =
5014
2.14k
          YY_CAST (union yyalloc *,
5015
2.14k
                   YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
5016
2.14k
        if (! yyptr)
5017
0
          goto yyexhaustedlab;
5018
2.14k
        YYSTACK_RELOCATE (yyss_alloc, yyss);
5019
2.14k
        YYSTACK_RELOCATE (yyvs_alloc, yyvs);
5020
2.14k
# undef YYSTACK_RELOCATE
5021
2.14k
        if (yyss1 != yyssa)
5022
1.13k
          YYSTACK_FREE (yyss1);
5023
2.14k
      }
5024
0
# endif
5025
5026
0
      yyssp = yyss + yysize - 1;
5027
2.14k
      yyvsp = yyvs + yysize - 1;
5028
5029
2.14k
      YY_IGNORE_USELESS_CAST_BEGIN
5030
2.14k
      YYDPRINTF ((stderr, "Stack size increased to %ld\n",
5031
2.14k
                  YY_CAST (long, yystacksize)));
5032
2.14k
      YY_IGNORE_USELESS_CAST_END
5033
5034
2.14k
      if (yyss + yystacksize - 1 <= yyssp)
5035
0
        YYABORT;
5036
2.14k
    }
5037
35.9M
#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
5038
5039
35.9M
  if (yystate == YYFINAL)
5040
103k
    YYACCEPT;
5041
5042
35.8M
  goto yybackup;
5043
5044
5045
/*-----------.
5046
| yybackup.  |
5047
`-----------*/
5048
35.8M
yybackup:
5049
  /* Do appropriate processing given the current state.  Read a
5050
     lookahead token if we need one and don't already have one.  */
5051
5052
  /* First try to decide what to do without reference to lookahead token.  */
5053
35.8M
  yyn = yypact[yystate];
5054
35.8M
  if (yypact_value_is_default (yyn))
5055
14.8M
    goto yydefault;
5056
5057
  /* Not known => get a lookahead token if don't already have one.  */
5058
5059
  /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
5060
20.9M
  if (yychar == YYEMPTY)
5061
11.6M
    {
5062
11.6M
      YYDPRINTF ((stderr, "Reading a token: "));
5063
11.6M
      yychar = yylex (&yylval);
5064
11.6M
    }
5065
5066
20.9M
  if (yychar <= YYEOF)
5067
238k
    {
5068
238k
      yychar = yytoken = YYEOF;
5069
238k
      YYDPRINTF ((stderr, "Now at end of input.\n"));
5070
238k
    }
5071
20.7M
  else
5072
20.7M
    {
5073
20.7M
      yytoken = YYTRANSLATE (yychar);
5074
20.7M
      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
5075
20.7M
    }
5076
5077
  /* If the proper action on seeing token YYTOKEN is to reduce or to
5078
     detect an error, take that action.  */
5079
20.9M
  yyn += yytoken;
5080
20.9M
  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
5081
8.86M
    goto yydefault;
5082
12.1M
  yyn = yytable[yyn];
5083
12.1M
  if (yyn <= 0)
5084
491k
    {
5085
491k
      if (yytable_value_is_error (yyn))
5086
174
        goto yyerrlab;
5087
491k
      yyn = -yyn;
5088
491k
      goto yyreduce;
5089
491k
    }
5090
5091
  /* Count tokens shifted since error; after three, turn off error
5092
     status.  */
5093
11.6M
  if (yyerrstatus)
5094
0
    yyerrstatus--;
5095
5096
  /* Shift the lookahead token.  */
5097
11.6M
  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
5098
11.6M
  yystate = yyn;
5099
11.6M
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
5100
11.6M
  *++yyvsp = yylval;
5101
11.6M
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5102
5103
  /* Discard the shifted token.  */
5104
11.6M
  yychar = YYEMPTY;
5105
11.6M
  goto yynewstate;
5106
5107
5108
/*-----------------------------------------------------------.
5109
| yydefault -- do the default action for the current state.  |
5110
`-----------------------------------------------------------*/
5111
23.6M
yydefault:
5112
23.6M
  yyn = yydefact[yystate];
5113
23.6M
  if (yyn == 0)
5114
43.4k
    goto yyerrlab;
5115
23.6M
  goto yyreduce;
5116
5117
5118
/*-----------------------------.
5119
| yyreduce -- do a reduction.  |
5120
`-----------------------------*/
5121
24.1M
yyreduce:
5122
  /* yyn is the number of a rule to reduce with.  */
5123
24.1M
  yylen = yyr2[yyn];
5124
5125
  /* If YYLEN is nonzero, implement the default value of the action:
5126
     '$$ = $1'.
5127
5128
     Otherwise, the following line sets YYVAL to garbage.
5129
     This behavior is undocumented and Bison
5130
     users should not rely upon it.  Assigning to YYVAL
5131
     unconditionally makes the parser a bit smaller, and it avoids a
5132
     GCC warning that YYVAL may be used uninitialized.  */
5133
24.1M
  yyval = yyvsp[1-yylen];
5134
5135
5136
24.1M
  YY_REDUCE_PRINT (yyn);
5137
24.1M
  switch (yyn)
5138
24.1M
    {
5139
104k
  case 2:
5140
104k
#line 304 "/src/php-src/Zend/zend_language_parser.y"
5141
104k
                                { CG(ast) = (yyvsp[0].ast); (void) zendnerrs; }
5142
104k
#line 5143 "/src/php-src/Zend/zend_language_parser.c"
5143
104k
    break;
5144
5145
101k
  case 84:
5146
101k
#line 329 "/src/php-src/Zend/zend_language_parser.y"
5147
101k
                         { (yyval.ast) = (yyvsp[0].ast); }
5148
101k
#line 5149 "/src/php-src/Zend/zend_language_parser.c"
5149
101k
    break;
5150
5151
12.8k
  case 85:
5152
12.8k
#line 330 "/src/php-src/Zend/zend_language_parser.y"
5153
12.8k
                               {
5154
12.8k
      zval zv;
5155
12.8k
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5156
12.8k
      (yyval.ast) = zend_ast_create_zval(&zv);
5157
12.8k
    }
5158
0
#line 5159 "/src/php-src/Zend/zend_language_parser.c"
5159
0
    break;
5160
5161
667k
  case 86:
5162
667k
#line 338 "/src/php-src/Zend/zend_language_parser.y"
5163
667k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5164
667k
#line 5165 "/src/php-src/Zend/zend_language_parser.c"
5165
667k
    break;
5166
5167
150k
  case 87:
5168
150k
#line 339 "/src/php-src/Zend/zend_language_parser.y"
5169
150k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5170
150k
#line 5171 "/src/php-src/Zend/zend_language_parser.c"
5171
150k
    break;
5172
5173
4.62k
  case 88:
5174
4.62k
#line 344 "/src/php-src/Zend/zend_language_parser.y"
5175
4.62k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5176
4.62k
#line 5177 "/src/php-src/Zend/zend_language_parser.c"
5177
4.62k
    break;
5178
5179
546
  case 89:
5180
546
#line 345 "/src/php-src/Zend/zend_language_parser.y"
5181
546
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5182
546
#line 5183 "/src/php-src/Zend/zend_language_parser.c"
5183
546
    break;
5184
5185
4.28k
  case 90:
5186
4.28k
#line 350 "/src/php-src/Zend/zend_language_parser.y"
5187
4.28k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5188
4.28k
#line 5189 "/src/php-src/Zend/zend_language_parser.c"
5189
4.28k
    break;
5190
5191
969
  case 91:
5192
969
#line 351 "/src/php-src/Zend/zend_language_parser.y"
5193
969
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5194
969
#line 5195 "/src/php-src/Zend/zend_language_parser.c"
5195
969
    break;
5196
5197
3.52k
  case 92:
5198
3.52k
#line 356 "/src/php-src/Zend/zend_language_parser.y"
5199
3.52k
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5200
3.52k
#line 5201 "/src/php-src/Zend/zend_language_parser.c"
5201
3.52k
    break;
5202
5203
441
  case 93:
5204
441
#line 357 "/src/php-src/Zend/zend_language_parser.y"
5205
441
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5206
441
#line 5207 "/src/php-src/Zend/zend_language_parser.c"
5207
441
    break;
5208
5209
886k
  case 94:
5210
886k
#line 361 "/src/php-src/Zend/zend_language_parser.y"
5211
886k
                                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5212
886k
#line 5213 "/src/php-src/Zend/zend_language_parser.c"
5213
886k
    break;
5214
5215
3.79k
  case 95:
5216
3.79k
#line 362 "/src/php-src/Zend/zend_language_parser.y"
5217
3.79k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5218
3.79k
#line 5219 "/src/php-src/Zend/zend_language_parser.c"
5219
3.79k
    break;
5220
5221
14.2k
  case 96:
5222
14.2k
#line 363 "/src/php-src/Zend/zend_language_parser.y"
5223
14.2k
                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_FQ; }
5224
14.2k
#line 5225 "/src/php-src/Zend/zend_language_parser.c"
5225
14.2k
    break;
5226
5227
1.00k
  case 97:
5228
1.00k
#line 364 "/src/php-src/Zend/zend_language_parser.y"
5229
1.00k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_RELATIVE; }
5230
1.00k
#line 5231 "/src/php-src/Zend/zend_language_parser.c"
5231
1.00k
    break;
5232
5233
10.3k
  case 98:
5234
10.3k
#line 369 "/src/php-src/Zend/zend_language_parser.y"
5235
10.3k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[0].ast), NULL); }
5236
10.3k
#line 5237 "/src/php-src/Zend/zend_language_parser.c"
5237
10.3k
    break;
5238
5239
3.76k
  case 99:
5240
3.76k
#line 371 "/src/php-src/Zend/zend_language_parser.y"
5241
3.76k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[-1].ast), (yyvsp[0].ast)); }
5242
3.76k
#line 5243 "/src/php-src/Zend/zend_language_parser.c"
5243
3.76k
    break;
5244
5245
10.0k
  case 100:
5246
10.0k
#line 376 "/src/php-src/Zend/zend_language_parser.y"
5247
10.0k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_GROUP, (yyvsp[0].ast)); }
5248
10.0k
#line 5249 "/src/php-src/Zend/zend_language_parser.c"
5249
10.0k
    break;
5250
5251
4.12k
  case 101:
5252
4.12k
#line 378 "/src/php-src/Zend/zend_language_parser.y"
5253
4.12k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5254
4.12k
#line 5255 "/src/php-src/Zend/zend_language_parser.c"
5255
4.12k
    break;
5256
5257
9.79k
  case 102:
5258
9.79k
#line 382 "/src/php-src/Zend/zend_language_parser.y"
5259
9.79k
                                                                { (yyval.ast) = (yyvsp[-2].ast); }
5260
9.79k
#line 5261 "/src/php-src/Zend/zend_language_parser.c"
5261
9.79k
    break;
5262
5263
7.85k
  case 103:
5264
7.85k
#line 386 "/src/php-src/Zend/zend_language_parser.y"
5265
7.85k
                                                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_LIST, (yyvsp[0].ast)); }
5266
7.85k
#line 5267 "/src/php-src/Zend/zend_language_parser.c"
5267
7.85k
    break;
5268
5269
1.93k
  case 104:
5270
1.93k
#line 387 "/src/php-src/Zend/zend_language_parser.y"
5271
1.93k
                                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5272
1.93k
#line 5273 "/src/php-src/Zend/zend_language_parser.c"
5273
1.93k
    break;
5274
5275
18.5k
  case 105:
5276
18.5k
#line 391 "/src/php-src/Zend/zend_language_parser.y"
5277
18.5k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5278
18.5k
#line 5279 "/src/php-src/Zend/zend_language_parser.c"
5279
18.5k
    break;
5280
5281
47.8k
  case 106:
5282
47.8k
#line 392 "/src/php-src/Zend/zend_language_parser.y"
5283
47.8k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5284
47.8k
#line 5285 "/src/php-src/Zend/zend_language_parser.c"
5285
47.8k
    break;
5286
5287
3.61k
  case 107:
5288
3.61k
#line 393 "/src/php-src/Zend/zend_language_parser.y"
5289
3.61k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5290
3.61k
#line 5291 "/src/php-src/Zend/zend_language_parser.c"
5291
3.61k
    break;
5292
5293
3.75k
  case 108:
5294
3.75k
#line 394 "/src/php-src/Zend/zend_language_parser.y"
5295
3.75k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5296
3.75k
#line 5297 "/src/php-src/Zend/zend_language_parser.c"
5297
3.75k
    break;
5298
5299
6.06k
  case 109:
5300
6.06k
#line 395 "/src/php-src/Zend/zend_language_parser.y"
5301
6.06k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5302
6.06k
#line 5303 "/src/php-src/Zend/zend_language_parser.c"
5303
6.06k
    break;
5304
5305
72.9k
  case 110:
5306
72.9k
#line 399 "/src/php-src/Zend/zend_language_parser.y"
5307
72.9k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5308
72.9k
#line 5309 "/src/php-src/Zend/zend_language_parser.c"
5309
72.9k
    break;
5310
5311
5.16k
  case 111:
5312
5.16k
#line 400 "/src/php-src/Zend/zend_language_parser.y"
5313
5.16k
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5314
5.16k
#line 5315 "/src/php-src/Zend/zend_language_parser.c"
5315
5.16k
    break;
5316
5317
581k
  case 112:
5318
581k
#line 404 "/src/php-src/Zend/zend_language_parser.y"
5319
581k
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5320
581k
#line 5321 "/src/php-src/Zend/zend_language_parser.c"
5321
581k
    break;
5322
5323
74.6k
  case 113:
5324
74.6k
#line 405 "/src/php-src/Zend/zend_language_parser.y"
5325
74.6k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5326
74.6k
#line 5327 "/src/php-src/Zend/zend_language_parser.c"
5327
74.6k
    break;
5328
5329
3.43k
  case 114:
5330
3.43k
#line 406 "/src/php-src/Zend/zend_language_parser.y"
5331
3.43k
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5332
3.43k
#line 5333 "/src/php-src/Zend/zend_language_parser.c"
5333
3.43k
    break;
5334
5335
60
  case 115:
5336
60
#line 408 "/src/php-src/Zend/zend_language_parser.y"
5337
60
                        { (yyval.ast) = zend_ast_create(ZEND_AST_HALT_COMPILER,
5338
60
            zend_ast_create_zval_from_long(zend_get_scanned_file_offset()));
5339
60
        zend_stop_lexing(); }
5340
60
#line 5341 "/src/php-src/Zend/zend_language_parser.c"
5341
60
    break;
5342
5343
3.27k
  case 116:
5344
3.27k
#line 412 "/src/php-src/Zend/zend_language_parser.y"
5345
3.27k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-1].ast), NULL);
5346
3.27k
        RESET_DOC_COMMENT(); }
5347
3.27k
#line 5348 "/src/php-src/Zend/zend_language_parser.c"
5348
3.27k
    break;
5349
5350
1.89k
  case 117:
5351
1.89k
#line 414 "/src/php-src/Zend/zend_language_parser.y"
5352
1.89k
                                                       { RESET_DOC_COMMENT(); }
5353
1.89k
#line 5354 "/src/php-src/Zend/zend_language_parser.c"
5354
1.89k
    break;
5355
5356
1.60k
  case 118:
5357
1.60k
#line 416 "/src/php-src/Zend/zend_language_parser.y"
5358
1.60k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
5359
1.60k
#line 5360 "/src/php-src/Zend/zend_language_parser.c"
5360
1.60k
    break;
5361
5362
1.23k
  case 119:
5363
1.23k
#line 417 "/src/php-src/Zend/zend_language_parser.y"
5364
1.23k
                            { RESET_DOC_COMMENT(); }
5365
1.23k
#line 5366 "/src/php-src/Zend/zend_language_parser.c"
5366
1.23k
    break;
5367
5368
718
  case 120:
5369
718
#line 419 "/src/php-src/Zend/zend_language_parser.y"
5370
718
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, NULL, (yyvsp[-1].ast)); }
5371
718
#line 5372 "/src/php-src/Zend/zend_language_parser.c"
5372
718
    break;
5373
5374
329
  case 121:
5375
329
#line 420 "/src/php-src/Zend/zend_language_parser.y"
5376
329
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5377
329
#line 5378 "/src/php-src/Zend/zend_language_parser.c"
5378
329
    break;
5379
5380
128
  case 122:
5381
128
#line 421 "/src/php-src/Zend/zend_language_parser.y"
5382
128
                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5383
128
#line 5384 "/src/php-src/Zend/zend_language_parser.c"
5384
128
    break;
5385
5386
1.70k
  case 123:
5387
1.70k
#line 422 "/src/php-src/Zend/zend_language_parser.y"
5388
1.70k
                                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5389
1.70k
#line 5390 "/src/php-src/Zend/zend_language_parser.c"
5390
1.70k
    break;
5391
5392
655
  case 124:
5393
655
#line 423 "/src/php-src/Zend/zend_language_parser.y"
5394
655
                                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5395
655
#line 5396 "/src/php-src/Zend/zend_language_parser.c"
5396
655
    break;
5397
5398
516
  case 125:
5399
516
#line 427 "/src/php-src/Zend/zend_language_parser.y"
5400
516
                                        { (yyval.num) = ZEND_SYMBOL_FUNCTION; }
5401
516
#line 5402 "/src/php-src/Zend/zend_language_parser.c"
5402
516
    break;
5403
5404
633
  case 126:
5405
633
#line 428 "/src/php-src/Zend/zend_language_parser.y"
5406
633
                                        { (yyval.num) = ZEND_SYMBOL_CONST; }
5407
633
#line 5408 "/src/php-src/Zend/zend_language_parser.c"
5408
633
    break;
5409
5410
132
  case 127:
5411
132
#line 433 "/src/php-src/Zend/zend_language_parser.y"
5412
132
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5413
132
#line 5414 "/src/php-src/Zend/zend_language_parser.c"
5414
132
    break;
5415
5416
333
  case 128:
5417
333
#line 438 "/src/php-src/Zend/zend_language_parser.y"
5418
333
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast));}
5419
333
#line 5420 "/src/php-src/Zend/zend_language_parser.c"
5420
333
    break;
5421
5422
860
  case 131:
5423
860
#line 448 "/src/php-src/Zend/zend_language_parser.y"
5424
860
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5425
860
#line 5426 "/src/php-src/Zend/zend_language_parser.c"
5426
860
    break;
5427
5428
366
  case 132:
5429
366
#line 450 "/src/php-src/Zend/zend_language_parser.y"
5430
366
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5431
366
#line 5432 "/src/php-src/Zend/zend_language_parser.c"
5432
366
    break;
5433
5434
354
  case 133:
5435
354
#line 455 "/src/php-src/Zend/zend_language_parser.y"
5436
354
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5437
354
#line 5438 "/src/php-src/Zend/zend_language_parser.c"
5438
354
    break;
5439
5440
149
  case 134:
5441
149
#line 457 "/src/php-src/Zend/zend_language_parser.y"
5442
149
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5443
149
#line 5444 "/src/php-src/Zend/zend_language_parser.c"
5444
149
    break;
5445
5446
1.00k
  case 135:
5447
1.00k
#line 462 "/src/php-src/Zend/zend_language_parser.y"
5448
1.00k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5449
1.00k
#line 5450 "/src/php-src/Zend/zend_language_parser.c"
5450
1.00k
    break;
5451
5452
2.41k
  case 136:
5453
2.41k
#line 464 "/src/php-src/Zend/zend_language_parser.y"
5454
2.41k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5455
2.41k
#line 5456 "/src/php-src/Zend/zend_language_parser.c"
5456
2.41k
    break;
5457
5458
889
  case 137:
5459
889
#line 468 "/src/php-src/Zend/zend_language_parser.y"
5460
889
                                           { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5461
889
#line 5462 "/src/php-src/Zend/zend_language_parser.c"
5462
889
    break;
5463
5464
337
  case 138:
5465
337
#line 469 "/src/php-src/Zend/zend_language_parser.y"
5466
337
                                                    { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = (yyvsp[-1].num); }
5467
337
#line 5468 "/src/php-src/Zend/zend_language_parser.c"
5468
337
    break;
5469
5470
1.45k
  case 139:
5471
1.45k
#line 474 "/src/php-src/Zend/zend_language_parser.y"
5472
1.45k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5473
1.45k
#line 5474 "/src/php-src/Zend/zend_language_parser.c"
5474
1.45k
    break;
5475
5476
271
  case 140:
5477
271
#line 476 "/src/php-src/Zend/zend_language_parser.y"
5478
271
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5479
271
#line 5480 "/src/php-src/Zend/zend_language_parser.c"
5480
271
    break;
5481
5482
2.84k
  case 141:
5483
2.84k
#line 481 "/src/php-src/Zend/zend_language_parser.y"
5484
2.84k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5485
2.84k
#line 5486 "/src/php-src/Zend/zend_language_parser.c"
5486
2.84k
    break;
5487
5488
577
  case 142:
5489
577
#line 483 "/src/php-src/Zend/zend_language_parser.y"
5490
577
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5491
577
#line 5492 "/src/php-src/Zend/zend_language_parser.c"
5492
577
    break;
5493
5494
1.68k
  case 143:
5495
1.68k
#line 487 "/src/php-src/Zend/zend_language_parser.y"
5496
1.68k
                                          { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5497
1.68k
#line 5498 "/src/php-src/Zend/zend_language_parser.c"
5498
1.68k
    break;
5499
5500
7.17k
  case 144:
5501
7.17k
#line 488 "/src/php-src/Zend/zend_language_parser.y"
5502
7.17k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CONST_DECL, (yyvsp[0].ast)); }
5503
7.17k
#line 5504 "/src/php-src/Zend/zend_language_parser.c"
5504
7.17k
    break;
5505
5506
322k
  case 145:
5507
322k
#line 493 "/src/php-src/Zend/zend_language_parser.y"
5508
322k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5509
322k
#line 5510 "/src/php-src/Zend/zend_language_parser.c"
5510
322k
    break;
5511
5512
257k
  case 146:
5513
257k
#line 495 "/src/php-src/Zend/zend_language_parser.y"
5514
257k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5515
257k
#line 5516 "/src/php-src/Zend/zend_language_parser.c"
5516
257k
    break;
5517
5518
315k
  case 147:
5519
315k
#line 500 "/src/php-src/Zend/zend_language_parser.y"
5520
315k
                          { (yyval.ast) = (yyvsp[0].ast); }
5521
315k
#line 5522 "/src/php-src/Zend/zend_language_parser.c"
5522
315k
    break;
5523
5524
6.36k
  case 148:
5525
6.36k
#line 501 "/src/php-src/Zend/zend_language_parser.y"
5526
6.36k
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5527
6.36k
#line 5528 "/src/php-src/Zend/zend_language_parser.c"
5528
6.36k
    break;
5529
5530
547
  case 149:
5531
547
#line 502 "/src/php-src/Zend/zend_language_parser.y"
5532
547
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5533
547
#line 5534 "/src/php-src/Zend/zend_language_parser.c"
5534
547
    break;
5535
5536
11
  case 150:
5537
11
#line 504 "/src/php-src/Zend/zend_language_parser.y"
5538
11
                        { (yyval.ast) = NULL; zend_throw_exception(zend_ce_compile_error,
5539
11
            "__HALT_COMPILER() can only be used from the outermost scope", 0); YYERROR; }
5540
0
#line 5541 "/src/php-src/Zend/zend_language_parser.c"
5541
0
    break;
5542
5543
48.8k
  case 151:
5544
48.8k
#line 510 "/src/php-src/Zend/zend_language_parser.y"
5545
48.8k
                                             { (yyval.ast) = (yyvsp[-1].ast); }
5546
48.8k
#line 5547 "/src/php-src/Zend/zend_language_parser.c"
5547
48.8k
    break;
5548
5549
19.6k
  case 152:
5550
19.6k
#line 511 "/src/php-src/Zend/zend_language_parser.y"
5551
19.6k
                        { (yyval.ast) = (yyvsp[0].ast); }
5552
19.6k
#line 5553 "/src/php-src/Zend/zend_language_parser.c"
5553
19.6k
    break;
5554
5555
174
  case 153:
5556
174
#line 512 "/src/php-src/Zend/zend_language_parser.y"
5557
174
                            { (yyval.ast) = (yyvsp[0].ast); }
5558
174
#line 5559 "/src/php-src/Zend/zend_language_parser.c"
5559
174
    break;
5560
5561
1.74k
  case 154:
5562
1.74k
#line 514 "/src/php-src/Zend/zend_language_parser.y"
5563
1.74k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_WHILE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5564
1.74k
#line 5565 "/src/php-src/Zend/zend_language_parser.c"
5565
1.74k
    break;
5566
5567
584
  case 155:
5568
584
#line 516 "/src/php-src/Zend/zend_language_parser.y"
5569
584
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DO_WHILE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5570
584
#line 5571 "/src/php-src/Zend/zend_language_parser.c"
5571
584
    break;
5572
5573
18.6k
  case 156:
5574
18.6k
#line 518 "/src/php-src/Zend/zend_language_parser.y"
5575
18.6k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOR, (yyvsp[-6].ast), (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
5576
18.6k
#line 5577 "/src/php-src/Zend/zend_language_parser.c"
5577
18.6k
    break;
5578
5579
2.25k
  case 157:
5580
2.25k
#line 520 "/src/php-src/Zend/zend_language_parser.y"
5581
2.25k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_SWITCH, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5582
2.25k
#line 5583 "/src/php-src/Zend/zend_language_parser.c"
5583
2.25k
    break;
5584
5585
1.70k
  case 158:
5586
1.70k
#line 521 "/src/php-src/Zend/zend_language_parser.y"
5587
1.70k
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_BREAK, (yyvsp[-1].ast)); }
5588
1.70k
#line 5589 "/src/php-src/Zend/zend_language_parser.c"
5589
1.70k
    break;
5590
5591
1.36k
  case 159:
5592
1.36k
#line 522 "/src/php-src/Zend/zend_language_parser.y"
5593
1.36k
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONTINUE, (yyvsp[-1].ast)); }
5594
1.36k
#line 5595 "/src/php-src/Zend/zend_language_parser.c"
5595
1.36k
    break;
5596
5597
15.8k
  case 160:
5598
15.8k
#line 523 "/src/php-src/Zend/zend_language_parser.y"
5599
15.8k
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_RETURN, (yyvsp[-1].ast)); }
5600
15.8k
#line 5601 "/src/php-src/Zend/zend_language_parser.c"
5601
15.8k
    break;
5602
5603
2.24k
  case 161:
5604
2.24k
#line 524 "/src/php-src/Zend/zend_language_parser.y"
5605
2.24k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5606
2.24k
#line 5607 "/src/php-src/Zend/zend_language_parser.c"
5607
2.24k
    break;
5608
5609
1.40k
  case 162:
5610
1.40k
#line 525 "/src/php-src/Zend/zend_language_parser.y"
5611
1.40k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5612
1.40k
#line 5613 "/src/php-src/Zend/zend_language_parser.c"
5613
1.40k
    break;
5614
5615
53.0k
  case 163:
5616
53.0k
#line 526 "/src/php-src/Zend/zend_language_parser.y"
5617
53.0k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
5618
53.0k
#line 5619 "/src/php-src/Zend/zend_language_parser.c"
5619
53.0k
    break;
5620
5621
125k
  case 164:
5622
125k
#line 527 "/src/php-src/Zend/zend_language_parser.y"
5623
125k
                              { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
5624
125k
#line 5625 "/src/php-src/Zend/zend_language_parser.c"
5625
125k
    break;
5626
5627
494k
  case 165:
5628
494k
#line 528 "/src/php-src/Zend/zend_language_parser.y"
5629
494k
                         { (yyval.ast) = (yyvsp[-1].ast); }
5630
494k
#line 5631 "/src/php-src/Zend/zend_language_parser.c"
5631
494k
    break;
5632
5633
5.69k
  case 166:
5634
5.69k
#line 529 "/src/php-src/Zend/zend_language_parser.y"
5635
5.69k
                                                                   { (yyval.ast) = (yyvsp[-3].ast); }
5636
5.69k
#line 5637 "/src/php-src/Zend/zend_language_parser.c"
5637
5.69k
    break;
5638
5639
17.3k
  case 167:
5640
17.3k
#line 531 "/src/php-src/Zend/zend_language_parser.y"
5641
17.3k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-4].ast), (yyvsp[-2].ast), NULL, (yyvsp[0].ast)); }
5642
17.3k
#line 5643 "/src/php-src/Zend/zend_language_parser.c"
5643
17.3k
    break;
5644
5645
1.47k
  case 168:
5646
1.47k
#line 534 "/src/php-src/Zend/zend_language_parser.y"
5647
1.47k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-4].ast), (yyvsp[0].ast)); }
5648
1.47k
#line 5649 "/src/php-src/Zend/zend_language_parser.c"
5649
1.47k
    break;
5650
5651
1.97k
  case 169:
5652
1.97k
#line 536 "/src/php-src/Zend/zend_language_parser.y"
5653
1.97k
                        { if (!zend_handle_encoding_declaration((yyvsp[-1].ast))) { YYERROR; } }
5654
1.95k
#line 5655 "/src/php-src/Zend/zend_language_parser.c"
5655
1.95k
    break;
5656
5657
1.95k
  case 170:
5658
1.89k
#line 538 "/src/php-src/Zend/zend_language_parser.y"
5659
1.89k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DECLARE, (yyvsp[-3].ast), (yyvsp[0].ast)); }
5660
1.89k
#line 5661 "/src/php-src/Zend/zend_language_parser.c"
5661
1.89k
    break;
5662
5663
98.3k
  case 171:
5664
98.3k
#line 539 "/src/php-src/Zend/zend_language_parser.y"
5665
98.3k
                                              { (yyval.ast) = NULL; }
5666
98.3k
#line 5667 "/src/php-src/Zend/zend_language_parser.c"
5667
98.3k
    break;
5668
5669
45.9k
  case 172:
5670
45.9k
#line 541 "/src/php-src/Zend/zend_language_parser.y"
5671
45.9k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRY, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
5672
45.9k
#line 5673 "/src/php-src/Zend/zend_language_parser.c"
5673
45.9k
    break;
5674
5675
1.46k
  case 173:
5676
1.46k
#line 542 "/src/php-src/Zend/zend_language_parser.y"
5677
1.46k
                                    { (yyval.ast) = zend_ast_create(ZEND_AST_GOTO, (yyvsp[-1].ast)); }
5678
1.46k
#line 5679 "/src/php-src/Zend/zend_language_parser.c"
5679
1.46k
    break;
5680
5681
2.14k
  case 174:
5682
2.14k
#line 543 "/src/php-src/Zend/zend_language_parser.y"
5683
2.14k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_LABEL, (yyvsp[-1].ast)); }
5684
2.14k
#line 5685 "/src/php-src/Zend/zend_language_parser.c"
5685
2.14k
    break;
5686
5687
337
  case 175:
5688
337
#line 544 "/src/php-src/Zend/zend_language_parser.y"
5689
337
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[-1].ast)); }
5690
337
#line 5691 "/src/php-src/Zend/zend_language_parser.c"
5691
337
    break;
5692
5693
46.3k
  case 176:
5694
46.3k
#line 549 "/src/php-src/Zend/zend_language_parser.y"
5695
46.3k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_CATCH_LIST); }
5696
46.3k
#line 5697 "/src/php-src/Zend/zend_language_parser.c"
5697
46.3k
    break;
5698
5699
49.6k
  case 177:
5700
49.6k
#line 551 "/src/php-src/Zend/zend_language_parser.y"
5701
49.6k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-8].ast), zend_ast_create(ZEND_AST_CATCH, (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast))); }
5702
49.6k
#line 5703 "/src/php-src/Zend/zend_language_parser.c"
5703
49.6k
    break;
5704
5705
49.8k
  case 178:
5706
49.8k
#line 555 "/src/php-src/Zend/zend_language_parser.y"
5707
49.8k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
5708
49.8k
#line 5709 "/src/php-src/Zend/zend_language_parser.c"
5709
49.8k
    break;
5710
5711
3.78k
  case 179:
5712
3.78k
#line 556 "/src/php-src/Zend/zend_language_parser.y"
5713
3.78k
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5714
3.78k
#line 5715 "/src/php-src/Zend/zend_language_parser.c"
5715
3.78k
    break;
5716
5717
10.6k
  case 180:
5718
10.6k
#line 560 "/src/php-src/Zend/zend_language_parser.y"
5719
10.6k
                       { (yyval.ast) = NULL; }
5720
10.6k
#line 5721 "/src/php-src/Zend/zend_language_parser.c"
5721
10.6k
    break;
5722
5723
39.2k
  case 181:
5724
39.2k
#line 561 "/src/php-src/Zend/zend_language_parser.y"
5725
39.2k
                           { (yyval.ast) = (yyvsp[0].ast); }
5726
39.2k
#line 5727 "/src/php-src/Zend/zend_language_parser.c"
5727
39.2k
    break;
5728
5729
43.3k
  case 182:
5730
43.3k
#line 565 "/src/php-src/Zend/zend_language_parser.y"
5731
43.3k
                       { (yyval.ast) = NULL; }
5732
43.3k
#line 5733 "/src/php-src/Zend/zend_language_parser.c"
5733
43.3k
    break;
5734
5735
2.59k
  case 183:
5736
2.59k
#line 566 "/src/php-src/Zend/zend_language_parser.y"
5737
2.59k
                                                       { (yyval.ast) = (yyvsp[-1].ast); }
5738
2.59k
#line 5739 "/src/php-src/Zend/zend_language_parser.c"
5739
2.59k
    break;
5740
5741
5.74k
  case 184:
5742
5.74k
#line 570 "/src/php-src/Zend/zend_language_parser.y"
5743
5.74k
                               { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
5744
5.74k
#line 5745 "/src/php-src/Zend/zend_language_parser.c"
5745
5.74k
    break;
5746
5747
1.13k
  case 185:
5748
1.13k
#line 571 "/src/php-src/Zend/zend_language_parser.y"
5749
1.13k
                                                   { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5750
1.13k
#line 5751 "/src/php-src/Zend/zend_language_parser.c"
5751
1.13k
    break;
5752
5753
6.88k
  case 186:
5754
6.88k
#line 575 "/src/php-src/Zend/zend_language_parser.y"
5755
6.88k
                         { (yyval.ast) = zend_ast_create(ZEND_AST_UNSET, (yyvsp[0].ast)); }
5756
6.88k
#line 5757 "/src/php-src/Zend/zend_language_parser.c"
5757
6.88k
    break;
5758
5759
19.9k
  case 187:
5760
19.9k
#line 579 "/src/php-src/Zend/zend_language_parser.y"
5761
19.9k
                         { (yyval.ast) = (yyvsp[0].ast); }
5762
19.9k
#line 5763 "/src/php-src/Zend/zend_language_parser.c"
5763
19.9k
    break;
5764
5765
10
  case 188:
5766
10
#line 580 "/src/php-src/Zend/zend_language_parser.y"
5767
10
                           {
5768
10
      zval zv;
5769
10
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5770
10
      (yyval.ast) = zend_ast_create_zval(&zv);
5771
10
    }
5772
0
#line 5773 "/src/php-src/Zend/zend_language_parser.c"
5773
0
    break;
5774
5775
18.5k
  case 189:
5776
18.5k
#line 590 "/src/php-src/Zend/zend_language_parser.y"
5777
18.5k
                { (yyval.ast) = zend_ast_create_decl(ZEND_AST_FUNC_DECL, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-9].str),
5778
18.5k
          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); }
5779
18.5k
#line 5780 "/src/php-src/Zend/zend_language_parser.c"
5780
18.5k
    break;
5781
5782
50.3k
  case 190:
5783
50.3k
#line 595 "/src/php-src/Zend/zend_language_parser.y"
5784
50.3k
                        { (yyval.num) = 0; }
5785
50.3k
#line 5786 "/src/php-src/Zend/zend_language_parser.c"
5786
50.3k
    break;
5787
5788
3.45k
  case 191:
5789
3.45k
#line 596 "/src/php-src/Zend/zend_language_parser.y"
5790
3.45k
                                                        { (yyval.num) = ZEND_PARAM_REF; }
5791
3.45k
#line 5792 "/src/php-src/Zend/zend_language_parser.c"
5792
3.45k
    break;
5793
5794
53.0k
  case 192:
5795
53.0k
#line 600 "/src/php-src/Zend/zend_language_parser.y"
5796
53.0k
                       { (yyval.num) = 0; }
5797
53.0k
#line 5798 "/src/php-src/Zend/zend_language_parser.c"
5798
53.0k
    break;
5799
5800
721
  case 193:
5801
721
#line 601 "/src/php-src/Zend/zend_language_parser.y"
5802
721
                            { (yyval.num) = ZEND_PARAM_VARIADIC; }
5803
721
#line 5804 "/src/php-src/Zend/zend_language_parser.c"
5804
721
    break;
5805
5806
4.08k
  case 194:
5807
4.08k
#line 605 "/src/php-src/Zend/zend_language_parser.y"
5808
4.08k
                                        { (yyval.num) = CG(zend_lineno); }
5809
4.08k
#line 5810 "/src/php-src/Zend/zend_language_parser.c"
5810
4.08k
    break;
5811
5812
4.04k
  case 195:
5813
4.04k
#line 607 "/src/php-src/Zend/zend_language_parser.y"
5814
4.04k
                        { (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); }
5815
4.04k
#line 5816 "/src/php-src/Zend/zend_language_parser.c"
5816
4.04k
    break;
5817
5818
44.9k
  case 196:
5819
44.9k
#line 608 "/src/php-src/Zend/zend_language_parser.y"
5820
44.9k
                        { (yyval.num) = CG(zend_lineno); }
5821
44.9k
#line 5822 "/src/php-src/Zend/zend_language_parser.c"
5822
44.9k
    break;
5823
5824
43.7k
  case 197:
5825
43.7k
#line 610 "/src/php-src/Zend/zend_language_parser.y"
5826
43.7k
                        { (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); }
5827
43.7k
#line 5828 "/src/php-src/Zend/zend_language_parser.c"
5828
43.7k
    break;
5829
5830
4.16k
  case 198:
5831
4.16k
#line 614 "/src/php-src/Zend/zend_language_parser.y"
5832
4.16k
                                                                { (yyval.num) = (yyvsp[0].num); }
5833
4.16k
#line 5834 "/src/php-src/Zend/zend_language_parser.c"
5834
4.16k
    break;
5835
5836
174
  case 199:
5837
174
#line 616 "/src/php-src/Zend/zend_language_parser.y"
5838
174
                        { (yyval.num) = zend_add_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5839
147
#line 5840 "/src/php-src/Zend/zend_language_parser.c"
5840
147
    break;
5841
5842
147
  case 200:
5843
66
#line 621 "/src/php-src/Zend/zend_language_parser.y"
5844
66
                        { (yyval.num) = zend_add_anonymous_class_modifier(0, (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5845
54
#line 5846 "/src/php-src/Zend/zend_language_parser.c"
5846
54
    break;
5847
5848
54
  case 201:
5849
6
#line 623 "/src/php-src/Zend/zend_language_parser.y"
5850
6
                        { (yyval.num) = zend_add_anonymous_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5851
0
#line 5852 "/src/php-src/Zend/zend_language_parser.c"
5852
0
    break;
5853
5854
2.88k
  case 202:
5855
2.88k
#line 627 "/src/php-src/Zend/zend_language_parser.y"
5856
2.88k
                                                { (yyval.num) = 0; }
5857
2.88k
#line 5858 "/src/php-src/Zend/zend_language_parser.c"
5858
2.88k
    break;
5859
5860
48
  case 203:
5861
48
#line 628 "/src/php-src/Zend/zend_language_parser.y"
5862
48
                                                { (yyval.num) = (yyvsp[0].num); }
5863
48
#line 5864 "/src/php-src/Zend/zend_language_parser.c"
5864
48
    break;
5865
5866
1.51k
  case 204:
5867
1.51k
#line 632 "/src/php-src/Zend/zend_language_parser.y"
5868
1.51k
                                        { (yyval.num) = ZEND_ACC_EXPLICIT_ABSTRACT_CLASS; }
5869
1.51k
#line 5870 "/src/php-src/Zend/zend_language_parser.c"
5870
1.51k
    break;
5871
5872
2.49k
  case 205:
5873
2.49k
#line 633 "/src/php-src/Zend/zend_language_parser.y"
5874
2.49k
                                        { (yyval.num) = ZEND_ACC_FINAL; }
5875
2.49k
#line 5876 "/src/php-src/Zend/zend_language_parser.c"
5876
2.49k
    break;
5877
5878
399
  case 206:
5879
399
#line 634 "/src/php-src/Zend/zend_language_parser.y"
5880
399
                                        { (yyval.num) = ZEND_ACC_READONLY_CLASS|ZEND_ACC_NO_DYNAMIC_PROPERTIES; }
5881
399
#line 5882 "/src/php-src/Zend/zend_language_parser.c"
5882
399
    break;
5883
5884
3.76k
  case 207:
5885
3.76k
#line 638 "/src/php-src/Zend/zend_language_parser.y"
5886
3.76k
                        { (yyval.num) = CG(zend_lineno); }
5887
3.76k
#line 5888 "/src/php-src/Zend/zend_language_parser.c"
5888
3.76k
    break;
5889
5890
3.61k
  case 208:
5891
3.61k
#line 640 "/src/php-src/Zend/zend_language_parser.y"
5892
3.61k
                        { (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); }
5893
3.61k
#line 5894 "/src/php-src/Zend/zend_language_parser.c"
5894
3.61k
    break;
5895
5896
3.87k
  case 209:
5897
3.87k
#line 644 "/src/php-src/Zend/zend_language_parser.y"
5898
3.87k
                            { (yyval.num) = CG(zend_lineno); }
5899
3.87k
#line 5900 "/src/php-src/Zend/zend_language_parser.c"
5900
3.87k
    break;
5901
5902
3.75k
  case 210:
5903
3.75k
#line 646 "/src/php-src/Zend/zend_language_parser.y"
5904
3.75k
                        { (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); }
5905
3.75k
#line 5906 "/src/php-src/Zend/zend_language_parser.c"
5906
3.75k
    break;
5907
5908
6.78k
  case 211:
5909
6.78k
#line 650 "/src/php-src/Zend/zend_language_parser.y"
5910
6.78k
                       { (yyval.num) = CG(zend_lineno); }
5911
6.78k
#line 5912 "/src/php-src/Zend/zend_language_parser.c"
5912
6.78k
    break;
5913
5914
6.06k
  case 212:
5915
6.06k
#line 652 "/src/php-src/Zend/zend_language_parser.y"
5916
6.06k
                        { (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)); }
5917
6.06k
#line 5918 "/src/php-src/Zend/zend_language_parser.c"
5918
6.06k
    break;
5919
5920
5.77k
  case 213:
5921
5.77k
#line 656 "/src/php-src/Zend/zend_language_parser.y"
5922
5.77k
                        { (yyval.ast) = NULL; }
5923
5.77k
#line 5924 "/src/php-src/Zend/zend_language_parser.c"
5924
5.77k
    break;
5925
5926
763
  case 214:
5927
763
#line 657 "/src/php-src/Zend/zend_language_parser.y"
5928
763
                              { (yyval.ast) = (yyvsp[0].ast); }
5929
763
#line 5930 "/src/php-src/Zend/zend_language_parser.c"
5930
763
    break;
5931
5932
3.18k
  case 215:
5933
3.18k
#line 662 "/src/php-src/Zend/zend_language_parser.y"
5934
3.18k
                        { (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); }
5935
3.18k
#line 5936 "/src/php-src/Zend/zend_language_parser.c"
5936
3.18k
    break;
5937
5938
2.13k
  case 216:
5939
2.13k
#line 666 "/src/php-src/Zend/zend_language_parser.y"
5940
2.13k
                        { (yyval.ast) = NULL; }
5941
2.13k
#line 5942 "/src/php-src/Zend/zend_language_parser.c"
5942
2.13k
    break;
5943
5944
1.06k
  case 217:
5945
1.06k
#line 667 "/src/php-src/Zend/zend_language_parser.y"
5946
1.06k
                         { (yyval.ast) = (yyvsp[0].ast); }
5947
1.06k
#line 5948 "/src/php-src/Zend/zend_language_parser.c"
5948
1.06k
    break;
5949
5950
37.2k
  case 218:
5951
37.2k
#line 671 "/src/php-src/Zend/zend_language_parser.y"
5952
37.2k
                                                { (yyval.ast) = NULL; }
5953
37.2k
#line 5954 "/src/php-src/Zend/zend_language_parser.c"
5954
37.2k
    break;
5955
5956
14.4k
  case 219:
5957
14.4k
#line 672 "/src/php-src/Zend/zend_language_parser.y"
5958
14.4k
                                        { (yyval.ast) = (yyvsp[0].ast); }
5959
14.4k
#line 5960 "/src/php-src/Zend/zend_language_parser.c"
5960
14.4k
    break;
5961
5962
3.33k
  case 220:
5963
3.33k
#line 676 "/src/php-src/Zend/zend_language_parser.y"
5964
3.33k
                                                { (yyval.ast) = NULL; }
5965
3.33k
#line 5966 "/src/php-src/Zend/zend_language_parser.c"
5966
3.33k
    break;
5967
5968
528
  case 221:
5969
528
#line 677 "/src/php-src/Zend/zend_language_parser.y"
5970
528
                                                { (yyval.ast) = (yyvsp[0].ast); }
5971
528
#line 5972 "/src/php-src/Zend/zend_language_parser.c"
5972
528
    break;
5973
5974
55.3k
  case 222:
5975
55.3k
#line 681 "/src/php-src/Zend/zend_language_parser.y"
5976
55.3k
                                                        { (yyval.ast) = NULL; }
5977
55.3k
#line 5978 "/src/php-src/Zend/zend_language_parser.c"
5978
55.3k
    break;
5979
5980
2.83k
  case 223:
5981
2.83k
#line 682 "/src/php-src/Zend/zend_language_parser.y"
5982
2.83k
                                                { (yyval.ast) = (yyvsp[0].ast); }
5983
2.83k
#line 5984 "/src/php-src/Zend/zend_language_parser.c"
5984
2.83k
    break;
5985
5986
18.7k
  case 224:
5987
18.7k
#line 686 "/src/php-src/Zend/zend_language_parser.y"
5988
18.7k
                                                { (yyval.ast) = (yyvsp[0].ast); }
5989
18.7k
#line 5990 "/src/php-src/Zend/zend_language_parser.c"
5990
18.7k
    break;
5991
5992
1.39k
  case 225:
5993
1.39k
#line 687 "/src/php-src/Zend/zend_language_parser.y"
5994
1.39k
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_REF, (yyvsp[0].ast)); }
5995
1.39k
#line 5996 "/src/php-src/Zend/zend_language_parser.c"
5996
1.39k
    break;
5997
5998
246
  case 226:
5999
246
#line 688 "/src/php-src/Zend/zend_language_parser.y"
6000
246
                                               { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LIST; }
6001
246
#line 6002 "/src/php-src/Zend/zend_language_parser.c"
6002
246
    break;
6003
6004
260
  case 227:
6005
260
#line 689 "/src/php-src/Zend/zend_language_parser.y"
6006
260
                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
6007
260
#line 6008 "/src/php-src/Zend/zend_language_parser.c"
6008
260
    break;
6009
6010
18.5k
  case 228:
6011
18.5k
#line 693 "/src/php-src/Zend/zend_language_parser.y"
6012
18.5k
                          { (yyval.ast) = (yyvsp[0].ast); }
6013
18.5k
#line 6014 "/src/php-src/Zend/zend_language_parser.c"
6014
18.5k
    break;
6015
6016
41
  case 229:
6017
41
#line 694 "/src/php-src/Zend/zend_language_parser.y"
6018
41
                                                      { (yyval.ast) = (yyvsp[-2].ast); }
6019
41
#line 6020 "/src/php-src/Zend/zend_language_parser.c"
6020
41
    break;
6021
6022
18.8k
  case 230:
6023
18.8k
#line 698 "/src/php-src/Zend/zend_language_parser.y"
6024
18.8k
                          { (yyval.ast) = (yyvsp[0].ast); }
6025
18.8k
#line 6026 "/src/php-src/Zend/zend_language_parser.c"
6026
18.8k
    break;
6027
6028
0
  case 231:
6029
0
#line 699 "/src/php-src/Zend/zend_language_parser.y"
6030
0
                                                          { (yyval.ast) = (yyvsp[-2].ast); }
6031
0
#line 6032 "/src/php-src/Zend/zend_language_parser.c"
6032
0
    break;
6033
6034
1.82k
  case 232:
6035
1.82k
#line 703 "/src/php-src/Zend/zend_language_parser.y"
6036
1.82k
                          { (yyval.ast) = (yyvsp[0].ast); }
6037
1.82k
#line 6038 "/src/php-src/Zend/zend_language_parser.c"
6038
1.82k
    break;
6039
6040
68
  case 233:
6041
68
#line 704 "/src/php-src/Zend/zend_language_parser.y"
6042
68
                                                          { (yyval.ast) = (yyvsp[-2].ast); }
6043
68
#line 6044 "/src/php-src/Zend/zend_language_parser.c"
6044
68
    break;
6045
6046
2.02k
  case 234:
6047
2.02k
#line 708 "/src/php-src/Zend/zend_language_parser.y"
6048
2.02k
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6049
2.02k
#line 6050 "/src/php-src/Zend/zend_language_parser.c"
6050
2.02k
    break;
6051
6052
231
  case 235:
6053
231
#line 709 "/src/php-src/Zend/zend_language_parser.y"
6054
231
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
6055
231
#line 6056 "/src/php-src/Zend/zend_language_parser.c"
6056
231
    break;
6057
6058
0
  case 236:
6059
0
#line 710 "/src/php-src/Zend/zend_language_parser.y"
6060
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6061
0
#line 6062 "/src/php-src/Zend/zend_language_parser.c"
6062
0
    break;
6063
6064
0
  case 237:
6065
0
#line 711 "/src/php-src/Zend/zend_language_parser.y"
6066
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6067
0
#line 6068 "/src/php-src/Zend/zend_language_parser.c"
6068
0
    break;
6069
6070
2.34k
  case 238:
6071
2.34k
#line 715 "/src/php-src/Zend/zend_language_parser.y"
6072
2.34k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_SWITCH_LIST); }
6073
2.34k
#line 6074 "/src/php-src/Zend/zend_language_parser.c"
6074
2.34k
    break;
6075
6076
6.74k
  case 239:
6077
6.74k
#line 717 "/src/php-src/Zend/zend_language_parser.y"
6078
6.74k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-4].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6079
6.74k
#line 6080 "/src/php-src/Zend/zend_language_parser.c"
6080
6.74k
    break;
6081
6082
533
  case 240:
6083
533
#line 719 "/src/php-src/Zend/zend_language_parser.y"
6084
533
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, NULL, (yyvsp[0].ast))); }
6085
533
#line 6086 "/src/php-src/Zend/zend_language_parser.c"
6086
533
    break;
6087
6088
2.78k
  case 243:
6089
2.78k
#line 730 "/src/php-src/Zend/zend_language_parser.y"
6090
2.78k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
6091
2.78k
#line 6092 "/src/php-src/Zend/zend_language_parser.c"
6092
2.78k
    break;
6093
6094
217
  case 244:
6095
217
#line 734 "/src/php-src/Zend/zend_language_parser.y"
6096
217
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_MATCH_ARM_LIST); }
6097
217
#line 6098 "/src/php-src/Zend/zend_language_parser.c"
6098
217
    break;
6099
6100
2.58k
  case 245:
6101
2.58k
#line 735 "/src/php-src/Zend/zend_language_parser.y"
6102
2.58k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6103
2.58k
#line 6104 "/src/php-src/Zend/zend_language_parser.c"
6104
2.58k
    break;
6105
6106
2.69k
  case 246:
6107
2.69k
#line 739 "/src/php-src/Zend/zend_language_parser.y"
6108
2.69k
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MATCH_ARM_LIST, (yyvsp[0].ast)); }
6109
2.69k
#line 6110 "/src/php-src/Zend/zend_language_parser.c"
6110
2.69k
    break;
6111
6112
2.63k
  case 247:
6113
2.63k
#line 740 "/src/php-src/Zend/zend_language_parser.y"
6114
2.63k
                                                       { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6115
2.63k
#line 6116 "/src/php-src/Zend/zend_language_parser.c"
6116
2.63k
    break;
6117
6118
4.31k
  case 248:
6119
4.31k
#line 745 "/src/php-src/Zend/zend_language_parser.y"
6120
4.31k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, (yyvsp[-3].ast), (yyvsp[0].ast)); }
6121
4.31k
#line 6122 "/src/php-src/Zend/zend_language_parser.c"
6122
4.31k
    break;
6123
6124
1.02k
  case 249:
6125
1.02k
#line 747 "/src/php-src/Zend/zend_language_parser.y"
6126
1.02k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, NULL, (yyvsp[0].ast)); }
6127
1.02k
#line 6128 "/src/php-src/Zend/zend_language_parser.c"
6128
1.02k
    break;
6129
6130
4.40k
  case 250:
6131
4.40k
#line 751 "/src/php-src/Zend/zend_language_parser.y"
6132
4.40k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
6133
4.40k
#line 6134 "/src/php-src/Zend/zend_language_parser.c"
6134
4.40k
    break;
6135
6136
2.85k
  case 251:
6137
2.85k
#line 752 "/src/php-src/Zend/zend_language_parser.y"
6138
2.85k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6139
2.85k
#line 6140 "/src/php-src/Zend/zend_language_parser.c"
6140
2.85k
    break;
6141
6142
1.74k
  case 252:
6143
1.74k
#line 757 "/src/php-src/Zend/zend_language_parser.y"
6144
1.74k
                          { (yyval.ast) = (yyvsp[0].ast); }
6145
1.74k
#line 6146 "/src/php-src/Zend/zend_language_parser.c"
6146
1.74k
    break;
6147
6148
0
  case 253:
6149
0
#line 758 "/src/php-src/Zend/zend_language_parser.y"
6150
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6151
0
#line 6152 "/src/php-src/Zend/zend_language_parser.c"
6152
0
    break;
6153
6154
19.7k
  case 254:
6155
19.7k
#line 764 "/src/php-src/Zend/zend_language_parser.y"
6156
19.7k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6157
19.7k
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6158
19.7k
#line 6159 "/src/php-src/Zend/zend_language_parser.c"
6159
19.7k
    break;
6160
6161
1.11k
  case 255:
6162
1.11k
#line 767 "/src/php-src/Zend/zend_language_parser.y"
6163
1.11k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6164
1.11k
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6165
1.11k
#line 6166 "/src/php-src/Zend/zend_language_parser.c"
6166
1.11k
    break;
6167
6168
17.6k
  case 256:
6169
17.6k
#line 772 "/src/php-src/Zend/zend_language_parser.y"
6170
17.6k
                                                    { (yyval.ast) = (yyvsp[0].ast); }
6171
17.6k
#line 6172 "/src/php-src/Zend/zend_language_parser.c"
6172
17.6k
    break;
6173
6174
2.06k
  case 257:
6175
2.06k
#line 774 "/src/php-src/Zend/zend_language_parser.y"
6176
2.06k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[0].ast))); }
6177
2.06k
#line 6178 "/src/php-src/Zend/zend_language_parser.c"
6178
2.06k
    break;
6179
6180
255
  case 258:
6181
255
#line 779 "/src/php-src/Zend/zend_language_parser.y"
6182
255
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6183
255
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6184
255
#line 6185 "/src/php-src/Zend/zend_language_parser.c"
6185
255
    break;
6186
6187
82
  case 259:
6188
82
#line 782 "/src/php-src/Zend/zend_language_parser.y"
6189
82
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-6].ast),
6190
82
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6191
82
#line 6192 "/src/php-src/Zend/zend_language_parser.c"
6192
82
    break;
6193
6194
101
  case 260:
6195
101
#line 787 "/src/php-src/Zend/zend_language_parser.y"
6196
101
                                                     { (yyval.ast) = (yyvsp[-2].ast); }
6197
101
#line 6198 "/src/php-src/Zend/zend_language_parser.c"
6198
101
    break;
6199
6200
73
  case 261:
6201
73
#line 789 "/src/php-src/Zend/zend_language_parser.y"
6202
73
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6203
73
            zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[-2].ast))); }
6204
73
#line 6205 "/src/php-src/Zend/zend_language_parser.c"
6205
73
    break;
6206
6207
34.2k
  case 262:
6208
34.2k
#line 794 "/src/php-src/Zend/zend_language_parser.y"
6209
34.2k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6210
34.2k
#line 6211 "/src/php-src/Zend/zend_language_parser.c"
6211
34.2k
    break;
6212
6213
59.0k
  case 263:
6214
59.0k
#line 795 "/src/php-src/Zend/zend_language_parser.y"
6215
59.0k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_PARAM_LIST); }
6216
59.0k
#line 6217 "/src/php-src/Zend/zend_language_parser.c"
6217
59.0k
    break;
6218
6219
34.3k
  case 264:
6220
34.3k
#line 801 "/src/php-src/Zend/zend_language_parser.y"
6221
34.3k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PARAM_LIST, (yyvsp[0].ast)); }
6222
34.3k
#line 6223 "/src/php-src/Zend/zend_language_parser.c"
6223
34.3k
    break;
6224
6225
18.8k
  case 265:
6226
18.8k
#line 803 "/src/php-src/Zend/zend_language_parser.y"
6227
18.8k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6228
18.8k
#line 6229 "/src/php-src/Zend/zend_language_parser.c"
6229
18.8k
    break;
6230
6231
748
  case 266:
6232
748
#line 807 "/src/php-src/Zend/zend_language_parser.y"
6233
748
                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6234
748
#line 6235 "/src/php-src/Zend/zend_language_parser.c"
6235
748
    break;
6236
6237
52.5k
  case 267:
6238
52.5k
#line 808 "/src/php-src/Zend/zend_language_parser.y"
6239
52.5k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6240
52.5k
#line 6241 "/src/php-src/Zend/zend_language_parser.c"
6241
52.5k
    break;
6242
6243
52.7k
  case 268:
6244
52.7k
#line 813 "/src/php-src/Zend/zend_language_parser.y"
6245
52.7k
                        { (yyval.num) = 0; }
6246
52.7k
#line 6247 "/src/php-src/Zend/zend_language_parser.c"
6247
52.7k
    break;
6248
6249
1.09k
  case 269:
6250
1.09k
#line 815 "/src/php-src/Zend/zend_language_parser.y"
6251
1.09k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CPP, (yyvsp[0].ast));
6252
1.09k
        if (!(yyval.num)) { YYERROR; } }
6253
1.06k
#line 6254 "/src/php-src/Zend/zend_language_parser.c"
6254
1.06k
    break;
6255
6256
45.6k
  case 270:
6257
45.6k
#line 822 "/src/php-src/Zend/zend_language_parser.y"
6258
45.6k
                        { (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,
6259
45.6k
          NULL, (yyvsp[-1].str) ? zend_ast_create_zval_from_str((yyvsp[-1].str)) : NULL, (yyvsp[0].ast)); }
6260
45.6k
#line 6261 "/src/php-src/Zend/zend_language_parser.c"
6261
45.6k
    break;
6262
6263
7.60k
  case 271:
6264
7.60k
#line 826 "/src/php-src/Zend/zend_language_parser.y"
6265
7.60k
                        { (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),
6266
7.60k
          NULL, (yyvsp[-3].str) ? zend_ast_create_zval_from_str((yyvsp[-3].str)) : NULL, (yyvsp[0].ast)); }
6267
7.60k
#line 6268 "/src/php-src/Zend/zend_language_parser.c"
6268
7.60k
    break;
6269
6270
48.7k
  case 272:
6271
48.7k
#line 831 "/src/php-src/Zend/zend_language_parser.y"
6272
48.7k
                        { (yyval.ast) = NULL; }
6273
48.7k
#line 6274 "/src/php-src/Zend/zend_language_parser.c"
6274
48.7k
    break;
6275
6276
31.9k
  case 273:
6277
31.9k
#line 832 "/src/php-src/Zend/zend_language_parser.y"
6278
31.9k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6279
31.9k
#line 6280 "/src/php-src/Zend/zend_language_parser.c"
6280
31.9k
    break;
6281
6282
13.5k
  case 274:
6283
13.5k
#line 836 "/src/php-src/Zend/zend_language_parser.y"
6284
13.5k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6285
13.5k
#line 6286 "/src/php-src/Zend/zend_language_parser.c"
6286
13.5k
    break;
6287
6288
1.05k
  case 275:
6289
1.05k
#line 837 "/src/php-src/Zend/zend_language_parser.y"
6290
1.05k
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6291
1.05k
#line 6292 "/src/php-src/Zend/zend_language_parser.c"
6292
1.05k
    break;
6293
6294
3.08k
  case 276:
6295
3.08k
#line 838 "/src/php-src/Zend/zend_language_parser.y"
6296
3.08k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6297
3.08k
#line 6298 "/src/php-src/Zend/zend_language_parser.c"
6298
3.08k
    break;
6299
6300
771
  case 277:
6301
771
#line 839 "/src/php-src/Zend/zend_language_parser.y"
6302
771
                                        { (yyval.ast) = (yyvsp[0].ast); }
6303
771
#line 6304 "/src/php-src/Zend/zend_language_parser.c"
6304
771
    break;
6305
6306
24.5k
  case 278:
6307
24.5k
#line 843 "/src/php-src/Zend/zend_language_parser.y"
6308
24.5k
                                        { (yyval.ast) = (yyvsp[0].ast); }
6309
24.5k
#line 6310 "/src/php-src/Zend/zend_language_parser.c"
6310
24.5k
    break;
6311
6312
1.41k
  case 279:
6313
1.41k
#line 844 "/src/php-src/Zend/zend_language_parser.y"
6314
1.41k
                                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_STATIC); }
6315
1.41k
#line 6316 "/src/php-src/Zend/zend_language_parser.c"
6316
1.41k
    break;
6317
6318
8.07k
  case 280:
6319
8.07k
#line 848 "/src/php-src/Zend/zend_language_parser.y"
6320
8.07k
                     { (yyval.ast) = (yyvsp[0].ast); }
6321
8.07k
#line 6322 "/src/php-src/Zend/zend_language_parser.c"
6322
8.07k
    break;
6323
6324
713
  case 281:
6325
713
#line 849 "/src/php-src/Zend/zend_language_parser.y"
6326
713
                                           { (yyval.ast) = (yyvsp[-1].ast); }
6327
713
#line 6328 "/src/php-src/Zend/zend_language_parser.c"
6328
713
    break;
6329
6330
3.09k
  case 282:
6331
3.09k
#line 854 "/src/php-src/Zend/zend_language_parser.y"
6332
3.09k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6333
3.09k
#line 6334 "/src/php-src/Zend/zend_language_parser.c"
6334
3.09k
    break;
6335
6336
2.58k
  case 283:
6337
2.58k
#line 856 "/src/php-src/Zend/zend_language_parser.y"
6338
2.58k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6339
2.58k
#line 6340 "/src/php-src/Zend/zend_language_parser.c"
6340
2.58k
    break;
6341
6342
1.49k
  case 284:
6343
1.49k
#line 860 "/src/php-src/Zend/zend_language_parser.y"
6344
1.49k
                                                                          { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6345
1.49k
#line 6346 "/src/php-src/Zend/zend_language_parser.c"
6346
1.49k
    break;
6347
6348
289
  case 285:
6349
289
#line 861 "/src/php-src/Zend/zend_language_parser.y"
6350
289
                                                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6351
289
#line 6352 "/src/php-src/Zend/zend_language_parser.c"
6352
289
    break;
6353
6354
23.2k
  case 286:
6355
23.2k
#line 868 "/src/php-src/Zend/zend_language_parser.y"
6356
23.2k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6357
23.2k
#line 6358 "/src/php-src/Zend/zend_language_parser.c"
6358
23.2k
    break;
6359
6360
1.62k
  case 287:
6361
1.62k
#line 869 "/src/php-src/Zend/zend_language_parser.y"
6362
1.62k
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6363
1.62k
#line 6364 "/src/php-src/Zend/zend_language_parser.c"
6364
1.62k
    break;
6365
6366
5.95k
  case 288:
6367
5.95k
#line 870 "/src/php-src/Zend/zend_language_parser.y"
6368
5.95k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6369
5.95k
#line 6370 "/src/php-src/Zend/zend_language_parser.c"
6370
5.95k
    break;
6371
6372
1.13k
  case 289:
6373
1.13k
#line 871 "/src/php-src/Zend/zend_language_parser.y"
6374
1.13k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6375
1.13k
#line 6376 "/src/php-src/Zend/zend_language_parser.c"
6376
1.13k
    break;
6377
6378
4.49k
  case 290:
6379
4.49k
#line 875 "/src/php-src/Zend/zend_language_parser.y"
6380
4.49k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_ARRAY); }
6381
4.49k
#line 6382 "/src/php-src/Zend/zend_language_parser.c"
6382
4.49k
    break;
6383
6384
406
  case 291:
6385
406
#line 876 "/src/php-src/Zend/zend_language_parser.y"
6386
406
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_CALLABLE); }
6387
406
#line 6388 "/src/php-src/Zend/zend_language_parser.c"
6388
406
    break;
6389
6390
70.1k
  case 292:
6391
70.1k
#line 877 "/src/php-src/Zend/zend_language_parser.y"
6392
70.1k
                                { (yyval.ast) = (yyvsp[0].ast); }
6393
70.1k
#line 6394 "/src/php-src/Zend/zend_language_parser.c"
6394
70.1k
    break;
6395
6396
11.5k
  case 293:
6397
11.5k
#line 881 "/src/php-src/Zend/zend_language_parser.y"
6398
11.5k
                                    { (yyval.ast) = (yyvsp[0].ast); }
6399
11.5k
#line 6400 "/src/php-src/Zend/zend_language_parser.c"
6400
11.5k
    break;
6401
6402
4.42k
  case 294:
6403
4.42k
#line 882 "/src/php-src/Zend/zend_language_parser.y"
6404
4.42k
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
6405
4.42k
#line 6406 "/src/php-src/Zend/zend_language_parser.c"
6406
4.42k
    break;
6407
6408
5.95k
  case 295:
6409
5.95k
#line 887 "/src/php-src/Zend/zend_language_parser.y"
6410
5.95k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6411
5.95k
#line 6412 "/src/php-src/Zend/zend_language_parser.c"
6412
5.95k
    break;
6413
6414
4.02k
  case 296:
6415
4.02k
#line 889 "/src/php-src/Zend/zend_language_parser.y"
6416
4.02k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6417
4.02k
#line 6418 "/src/php-src/Zend/zend_language_parser.c"
6418
4.02k
    break;
6419
6420
5.56k
  case 297:
6421
5.56k
#line 894 "/src/php-src/Zend/zend_language_parser.y"
6422
5.56k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6423
5.56k
#line 6424 "/src/php-src/Zend/zend_language_parser.c"
6424
5.56k
    break;
6425
6426
3.01k
  case 298:
6427
3.01k
#line 896 "/src/php-src/Zend/zend_language_parser.y"
6428
3.01k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6429
3.01k
#line 6430 "/src/php-src/Zend/zend_language_parser.c"
6430
3.01k
    break;
6431
6432
76.5k
  case 299:
6433
76.5k
#line 900 "/src/php-src/Zend/zend_language_parser.y"
6434
76.5k
                        { (yyval.ast) = NULL; }
6435
76.5k
#line 6436 "/src/php-src/Zend/zend_language_parser.c"
6436
76.5k
    break;
6437
6438
15.8k
  case 300:
6439
15.8k
#line 901 "/src/php-src/Zend/zend_language_parser.y"
6440
15.8k
                                { (yyval.ast) = (yyvsp[0].ast); }
6441
15.8k
#line 6442 "/src/php-src/Zend/zend_language_parser.c"
6442
15.8k
    break;
6443
6444
95.3k
  case 301:
6445
95.3k
#line 905 "/src/php-src/Zend/zend_language_parser.y"
6446
95.3k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_ARG_LIST); }
6447
95.3k
#line 6448 "/src/php-src/Zend/zend_language_parser.c"
6448
95.3k
    break;
6449
6450
281k
  case 302:
6451
281k
#line 906 "/src/php-src/Zend/zend_language_parser.y"
6452
281k
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
6453
281k
#line 6454 "/src/php-src/Zend/zend_language_parser.c"
6454
281k
    break;
6455
6456
2.44k
  case 303:
6457
2.44k
#line 907 "/src/php-src/Zend/zend_language_parser.y"
6458
2.44k
                                   { (yyval.ast) = zend_ast_create_fcc(); }
6459
2.44k
#line 6460 "/src/php-src/Zend/zend_language_parser.c"
6460
2.44k
    break;
6461
6462
283k
  case 304:
6463
283k
#line 912 "/src/php-src/Zend/zend_language_parser.y"
6464
283k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6465
283k
#line 6466 "/src/php-src/Zend/zend_language_parser.c"
6466
283k
    break;
6467
6468
166k
  case 305:
6469
166k
#line 914 "/src/php-src/Zend/zend_language_parser.y"
6470
166k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6471
166k
#line 6472 "/src/php-src/Zend/zend_language_parser.c"
6472
166k
    break;
6473
6474
434k
  case 306:
6475
434k
#line 918 "/src/php-src/Zend/zend_language_parser.y"
6476
434k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6477
434k
#line 6478 "/src/php-src/Zend/zend_language_parser.c"
6478
434k
    break;
6479
6480
13.7k
  case 307:
6481
13.7k
#line 920 "/src/php-src/Zend/zend_language_parser.y"
6482
13.7k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMED_ARG, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6483
13.7k
#line 6484 "/src/php-src/Zend/zend_language_parser.c"
6484
13.7k
    break;
6485
6486
1.88k
  case 308:
6487
1.88k
#line 921 "/src/php-src/Zend/zend_language_parser.y"
6488
1.88k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
6489
1.88k
#line 6490 "/src/php-src/Zend/zend_language_parser.c"
6490
1.88k
    break;
6491
6492
261
  case 309:
6493
261
#line 925 "/src/php-src/Zend/zend_language_parser.y"
6494
261
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6495
261
#line 6496 "/src/php-src/Zend/zend_language_parser.c"
6496
261
    break;
6497
6498
2.28k
  case 310:
6499
2.28k
#line 926 "/src/php-src/Zend/zend_language_parser.y"
6500
2.28k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6501
2.28k
#line 6502 "/src/php-src/Zend/zend_language_parser.c"
6502
2.28k
    break;
6503
6504
2.54k
  case 311:
6505
2.54k
#line 931 "/src/php-src/Zend/zend_language_parser.y"
6506
2.54k
                { (yyval.ast) = zend_ast_create(ZEND_AST_GLOBAL, zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast))); }
6507
2.54k
#line 6508 "/src/php-src/Zend/zend_language_parser.c"
6508
2.54k
    break;
6509
6510
160
  case 312:
6511
160
#line 936 "/src/php-src/Zend/zend_language_parser.y"
6512
160
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6513
160
#line 6514 "/src/php-src/Zend/zend_language_parser.c"
6514
160
    break;
6515
6516
1.44k
  case 313:
6517
1.44k
#line 937 "/src/php-src/Zend/zend_language_parser.y"
6518
1.44k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6519
1.44k
#line 6520 "/src/php-src/Zend/zend_language_parser.c"
6520
1.44k
    break;
6521
6522
779
  case 314:
6523
779
#line 941 "/src/php-src/Zend/zend_language_parser.y"
6524
779
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[0].ast), NULL); }
6525
779
#line 6526 "/src/php-src/Zend/zend_language_parser.c"
6526
779
    break;
6527
6528
827
  case 315:
6529
827
#line 942 "/src/php-src/Zend/zend_language_parser.y"
6530
827
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6531
827
#line 6532 "/src/php-src/Zend/zend_language_parser.c"
6532
827
    break;
6533
6534
77.2k
  case 316:
6535
77.2k
#line 947 "/src/php-src/Zend/zend_language_parser.y"
6536
77.2k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6537
77.2k
#line 6538 "/src/php-src/Zend/zend_language_parser.c"
6538
77.2k
    break;
6539
6540
65.4k
  case 317:
6541
65.4k
#line 949 "/src/php-src/Zend/zend_language_parser.y"
6542
65.4k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
6543
65.4k
#line 6544 "/src/php-src/Zend/zend_language_parser.c"
6544
65.4k
    break;
6545
6546
21.1k
  case 318:
6547
21.1k
#line 955 "/src/php-src/Zend/zend_language_parser.y"
6548
21.1k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_GROUP, (yyvsp[-2].ast), (yyvsp[-1].ast), NULL);
6549
21.1k
        (yyval.ast)->attr = (yyvsp[-3].num); }
6550
21.1k
#line 6551 "/src/php-src/Zend/zend_language_parser.c"
6551
21.1k
    break;
6552
6553
5.24k
  case 319:
6554
5.24k
#line 958 "/src/php-src/Zend/zend_language_parser.y"
6555
5.24k
                        { (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);
6556
5.24k
        (yyval.ast)->attr = (yyvsp[-2].num); }
6557
5.24k
#line 6558 "/src/php-src/Zend/zend_language_parser.c"
6558
5.24k
    break;
6559
6560
5.85k
  case 320:
6561
5.85k
#line 961 "/src/php-src/Zend/zend_language_parser.y"
6562
5.85k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, NULL);
6563
5.85k
        (yyval.ast)->attr = (yyvsp[-3].num); }
6564
5.85k
#line 6565 "/src/php-src/Zend/zend_language_parser.c"
6565
5.85k
    break;
6566
6567
1.70k
  case 321:
6568
1.70k
#line 964 "/src/php-src/Zend/zend_language_parser.y"
6569
1.70k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, (yyvsp[-2].ast));
6570
1.70k
        (yyval.ast)->attr = (yyvsp[-4].num); }
6571
1.70k
#line 6572 "/src/php-src/Zend/zend_language_parser.c"
6572
1.70k
    break;
6573
6574
36.0k
  case 322:
6575
36.0k
#line 968 "/src/php-src/Zend/zend_language_parser.y"
6576
36.0k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_METHOD, (yyvsp[-9].num) | (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-10].num), (yyvsp[-7].str),
6577
36.0k
          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); }
6578
36.0k
#line 6579 "/src/php-src/Zend/zend_language_parser.c"
6579
36.0k
    break;
6580
6581
3.18k
  case 323:
6582
3.18k
#line 970 "/src/php-src/Zend/zend_language_parser.y"
6583
3.18k
                          { (yyval.ast) = (yyvsp[0].ast); }
6584
3.18k
#line 6585 "/src/php-src/Zend/zend_language_parser.c"
6585
3.18k
    break;
6586
6587
71.8k
  case 324:
6588
71.8k
#line 974 "/src/php-src/Zend/zend_language_parser.y"
6589
71.8k
                                           { (yyval.ast) = (yyvsp[0].ast); }
6590
71.8k
#line 6591 "/src/php-src/Zend/zend_language_parser.c"
6591
71.8k
    break;
6592
6593
1.34k
  case 325:
6594
1.34k
#line 975 "/src/php-src/Zend/zend_language_parser.y"
6595
1.34k
                                                      { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6596
1.34k
#line 6597 "/src/php-src/Zend/zend_language_parser.c"
6597
1.34k
    break;
6598
6599
3.99k
  case 326:
6600
3.99k
#line 977 "/src/php-src/Zend/zend_language_parser.y"
6601
3.99k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_TRAIT, (yyvsp[-1].ast), (yyvsp[0].ast)); }
6602
3.99k
#line 6603 "/src/php-src/Zend/zend_language_parser.c"
6603
3.99k
    break;
6604
6605
8.24k
  case 327:
6606
8.24k
#line 981 "/src/php-src/Zend/zend_language_parser.y"
6607
8.24k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
6608
8.24k
#line 6609 "/src/php-src/Zend/zend_language_parser.c"
6609
8.24k
    break;
6610
6611
3.39k
  case 328:
6612
3.39k
#line 982 "/src/php-src/Zend/zend_language_parser.y"
6613
3.39k
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6614
3.39k
#line 6615 "/src/php-src/Zend/zend_language_parser.c"
6615
3.39k
    break;
6616
6617
1.85k
  case 329:
6618
1.85k
#line 986 "/src/php-src/Zend/zend_language_parser.y"
6619
1.85k
                                                                                { (yyval.ast) = NULL; }
6620
1.85k
#line 6621 "/src/php-src/Zend/zend_language_parser.c"
6621
1.85k
    break;
6622
6623
381
  case 330:
6624
381
#line 987 "/src/php-src/Zend/zend_language_parser.y"
6625
381
                                                                        { (yyval.ast) = NULL; }
6626
381
#line 6627 "/src/php-src/Zend/zend_language_parser.c"
6627
381
    break;
6628
6629
1.76k
  case 331:
6630
1.76k
#line 988 "/src/php-src/Zend/zend_language_parser.y"
6631
1.76k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6632
1.76k
#line 6633 "/src/php-src/Zend/zend_language_parser.c"
6633
1.76k
    break;
6634
6635
1.81k
  case 332:
6636
1.81k
#line 993 "/src/php-src/Zend/zend_language_parser.y"
6637
1.81k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_TRAIT_ADAPTATIONS, (yyvsp[0].ast)); }
6638
1.81k
#line 6639 "/src/php-src/Zend/zend_language_parser.c"
6639
1.81k
    break;
6640
6641
3.10k
  case 333:
6642
3.10k
#line 995 "/src/php-src/Zend/zend_language_parser.y"
6643
3.10k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6644
3.10k
#line 6645 "/src/php-src/Zend/zend_language_parser.c"
6645
3.10k
    break;
6646
6647
773
  case 334:
6648
773
#line 999 "/src/php-src/Zend/zend_language_parser.y"
6649
773
                                        { (yyval.ast) = (yyvsp[-1].ast); }
6650
773
#line 6651 "/src/php-src/Zend/zend_language_parser.c"
6651
773
    break;
6652
6653
4.15k
  case 335:
6654
4.15k
#line 1000 "/src/php-src/Zend/zend_language_parser.y"
6655
4.15k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6656
4.15k
#line 6657 "/src/php-src/Zend/zend_language_parser.c"
6657
4.15k
    break;
6658
6659
774
  case 336:
6660
774
#line 1005 "/src/php-src/Zend/zend_language_parser.y"
6661
774
                { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_PRECEDENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6662
774
#line 6663 "/src/php-src/Zend/zend_language_parser.c"
6663
774
    break;
6664
6665
2.53k
  case 337:
6666
2.53k
#line 1010 "/src/php-src/Zend/zend_language_parser.y"
6667
2.53k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6668
2.53k
#line 6669 "/src/php-src/Zend/zend_language_parser.c"
6669
2.53k
    break;
6670
6671
1.07k
  case 338:
6672
1.07k
#line 1012 "/src/php-src/Zend/zend_language_parser.y"
6673
1.07k
                        { zval zv;
6674
1.07k
        if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
6675
1.07k
        (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), zend_ast_create_zval(&zv)); }
6676
0
#line 6677 "/src/php-src/Zend/zend_language_parser.c"
6677
0
    break;
6678
6679
112
  case 339:
6680
112
#line 1016 "/src/php-src/Zend/zend_language_parser.y"
6681
112
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[-1].num));
6682
112
        (yyval.ast) = zend_ast_create_ex(ZEND_AST_TRAIT_ALIAS, modifiers, (yyvsp[-3].ast), (yyvsp[0].ast));
6683
        /* identifier nonterminal can cause allocations, so we need to free the node */
6684
112
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6685
111
#line 6686 "/src/php-src/Zend/zend_language_parser.c"
6686
111
    break;
6687
6688
452
  case 340:
6689
452
#line 1021 "/src/php-src/Zend/zend_language_parser.y"
6690
452
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].num));
6691
452
        (yyval.ast) = zend_ast_create_ex(ZEND_AST_TRAIT_ALIAS, modifiers, (yyvsp[-2].ast), NULL);
6692
        /* identifier nonterminal can cause allocations, so we need to free the node */
6693
452
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6694
446
#line 6695 "/src/php-src/Zend/zend_language_parser.c"
6695
446
    break;
6696
6697
3.04k
  case 341:
6698
3.04k
#line 1029 "/src/php-src/Zend/zend_language_parser.y"
6699
3.04k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_REFERENCE, NULL, (yyvsp[0].ast)); }
6700
3.04k
#line 6701 "/src/php-src/Zend/zend_language_parser.c"
6701
3.04k
    break;
6702
6703
1.15k
  case 342:
6704
1.15k
#line 1030 "/src/php-src/Zend/zend_language_parser.y"
6705
1.15k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6706
1.15k
#line 6707 "/src/php-src/Zend/zend_language_parser.c"
6707
1.15k
    break;
6708
6709
1.93k
  case 343:
6710
1.93k
#line 1035 "/src/php-src/Zend/zend_language_parser.y"
6711
1.93k
                { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_REFERENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6712
1.93k
#line 6713 "/src/php-src/Zend/zend_language_parser.c"
6713
1.93k
    break;
6714
6715
1.93k
  case 344:
6716
1.93k
#line 1039 "/src/php-src/Zend/zend_language_parser.y"
6717
1.93k
                                                        { (yyval.ast) = NULL; }
6718
1.93k
#line 6719 "/src/php-src/Zend/zend_language_parser.c"
6719
1.93k
    break;
6720
6721
34.1k
  case 345:
6722
34.1k
#line 1040 "/src/php-src/Zend/zend_language_parser.y"
6723
34.1k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6724
34.1k
#line 6725 "/src/php-src/Zend/zend_language_parser.c"
6725
34.1k
    break;
6726
6727
26.2k
  case 346:
6728
26.2k
#line 1045 "/src/php-src/Zend/zend_language_parser.y"
6729
26.2k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY, (yyvsp[0].ast));
6730
26.2k
        if (!(yyval.num)) { YYERROR; } }
6731
26.1k
#line 6732 "/src/php-src/Zend/zend_language_parser.c"
6732
26.1k
    break;
6733
6734
26.1k
  case 347:
6735
801
#line 1048 "/src/php-src/Zend/zend_language_parser.y"
6736
801
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6737
801
#line 6738 "/src/php-src/Zend/zend_language_parser.c"
6738
801
    break;
6739
6740
9.31k
  case 348:
6741
9.31k
#line 1053 "/src/php-src/Zend/zend_language_parser.y"
6742
9.31k
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6743
9.31k
#line 6744 "/src/php-src/Zend/zend_language_parser.c"
6744
9.31k
    break;
6745
6746
27.3k
  case 349:
6747
27.3k
#line 1055 "/src/php-src/Zend/zend_language_parser.y"
6748
27.3k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].ast));
6749
27.3k
        if (!(yyval.num)) { YYERROR; }
6750
27.3k
        if (!((yyval.num) & ZEND_ACC_PPP_MASK)) { (yyval.num) |= ZEND_ACC_PUBLIC; } }
6751
0
#line 6752 "/src/php-src/Zend/zend_language_parser.c"
6752
0
    break;
6753
6754
5.18k
  case 350:
6755
5.18k
#line 1062 "/src/php-src/Zend/zend_language_parser.y"
6756
5.18k
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6757
5.18k
#line 6758 "/src/php-src/Zend/zend_language_parser.c"
6758
5.18k
    break;
6759
6760
2.58k
  case 351:
6761
2.58k
#line 1064 "/src/php-src/Zend/zend_language_parser.y"
6762
2.58k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CONSTANT, (yyvsp[0].ast));
6763
2.58k
        if (!(yyval.num)) { YYERROR; }
6764
2.57k
        if (!((yyval.num) & ZEND_ACC_PPP_MASK)) { (yyval.num) |= ZEND_ACC_PUBLIC; } }
6765
0
#line 6766 "/src/php-src/Zend/zend_language_parser.c"
6766
0
    break;
6767
6768
57.6k
  case 352:
6769
57.6k
#line 1071 "/src/php-src/Zend/zend_language_parser.y"
6770
57.6k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MODIFIER_LIST, zend_ast_create_zval_from_long((yyvsp[0].num))); }
6771
57.6k
#line 6772 "/src/php-src/Zend/zend_language_parser.c"
6772
57.6k
    break;
6773
6774
9.79k
  case 353:
6775
9.79k
#line 1073 "/src/php-src/Zend/zend_language_parser.y"
6776
9.79k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), zend_ast_create_zval_from_long((yyvsp[0].num))); }
6777
9.79k
#line 6778 "/src/php-src/Zend/zend_language_parser.c"
6778
9.79k
    break;
6779
6780
43.0k
  case 354:
6781
43.0k
#line 1077 "/src/php-src/Zend/zend_language_parser.y"
6782
43.0k
                                                        { (yyval.num) = T_PUBLIC; }
6783
43.0k
#line 6784 "/src/php-src/Zend/zend_language_parser.c"
6784
43.0k
    break;
6785
6786
2.28k
  case 355:
6787
2.28k
#line 1078 "/src/php-src/Zend/zend_language_parser.y"
6788
2.28k
                                                        { (yyval.num) = T_PROTECTED; }
6789
2.28k
#line 6790 "/src/php-src/Zend/zend_language_parser.c"
6790
2.28k
    break;
6791
6792
5.94k
  case 356:
6793
5.94k
#line 1079 "/src/php-src/Zend/zend_language_parser.y"
6794
5.94k
                                                        { (yyval.num) = T_PRIVATE; }
6795
5.94k
#line 6796 "/src/php-src/Zend/zend_language_parser.c"
6796
5.94k
    break;
6797
6798
246
  case 357:
6799
246
#line 1080 "/src/php-src/Zend/zend_language_parser.y"
6800
246
                                                { (yyval.num) = T_PUBLIC_SET; }
6801
246
#line 6802 "/src/php-src/Zend/zend_language_parser.c"
6802
246
    break;
6803
6804
366
  case 358:
6805
366
#line 1081 "/src/php-src/Zend/zend_language_parser.y"
6806
366
                                                { (yyval.num) = T_PROTECTED_SET; }
6807
366
#line 6808 "/src/php-src/Zend/zend_language_parser.c"
6808
366
    break;
6809
6810
571
  case 359:
6811
571
#line 1082 "/src/php-src/Zend/zend_language_parser.y"
6812
571
                                                { (yyval.num) = T_PRIVATE_SET; }
6813
571
#line 6814 "/src/php-src/Zend/zend_language_parser.c"
6814
571
    break;
6815
6816
10.5k
  case 360:
6817
10.5k
#line 1083 "/src/php-src/Zend/zend_language_parser.y"
6818
10.5k
                                                        { (yyval.num) = T_STATIC; }
6819
10.5k
#line 6820 "/src/php-src/Zend/zend_language_parser.c"
6820
10.5k
    break;
6821
6822
1.69k
  case 361:
6823
1.69k
#line 1084 "/src/php-src/Zend/zend_language_parser.y"
6824
1.69k
                                                        { (yyval.num) = T_ABSTRACT; }
6825
1.69k
#line 6826 "/src/php-src/Zend/zend_language_parser.c"
6826
1.69k
    break;
6827
6828
1.93k
  case 362:
6829
1.93k
#line 1085 "/src/php-src/Zend/zend_language_parser.y"
6830
1.93k
                                                        { (yyval.num) = T_FINAL; }
6831
1.93k
#line 6832 "/src/php-src/Zend/zend_language_parser.c"
6832
1.93k
    break;
6833
6834
1.30k
  case 363:
6835
1.30k
#line 1086 "/src/php-src/Zend/zend_language_parser.y"
6836
1.30k
                                                        { (yyval.num) = T_READONLY; }
6837
1.30k
#line 6838 "/src/php-src/Zend/zend_language_parser.c"
6838
1.30k
    break;
6839
6840
541
  case 364:
6841
541
#line 1090 "/src/php-src/Zend/zend_language_parser.y"
6842
541
                                           { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6843
541
#line 6844 "/src/php-src/Zend/zend_language_parser.c"
6844
541
    break;
6845
6846
21.2k
  case 365:
6847
21.2k
#line 1091 "/src/php-src/Zend/zend_language_parser.y"
6848
21.2k
                         { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PROP_DECL, (yyvsp[0].ast)); }
6849
21.2k
#line 6850 "/src/php-src/Zend/zend_language_parser.c"
6850
21.2k
    break;
6851
6852
13.1k
  case 366:
6853
13.1k
#line 1096 "/src/php-src/Zend/zend_language_parser.y"
6854
13.1k
                        { (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); }
6855
13.1k
#line 6856 "/src/php-src/Zend/zend_language_parser.c"
6856
13.1k
    break;
6857
6858
8.58k
  case 367:
6859
8.58k
#line 1098 "/src/php-src/Zend/zend_language_parser.y"
6860
8.58k
                        { (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); }
6861
8.58k
#line 6862 "/src/php-src/Zend/zend_language_parser.c"
6862
8.58k
    break;
6863
6864
4.73k
  case 368:
6865
4.73k
#line 1103 "/src/php-src/Zend/zend_language_parser.y"
6866
4.73k
                        { (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)); }
6867
4.73k
#line 6868 "/src/php-src/Zend/zend_language_parser.c"
6868
4.73k
    break;
6869
6870
507
  case 369:
6871
507
#line 1105 "/src/php-src/Zend/zend_language_parser.y"
6872
507
                        { (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)); }
6873
507
#line 6874 "/src/php-src/Zend/zend_language_parser.c"
6874
507
    break;
6875
6876
6.07k
  case 370:
6877
6.07k
#line 1109 "/src/php-src/Zend/zend_language_parser.y"
6878
6.07k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
6879
6.07k
#line 6880 "/src/php-src/Zend/zend_language_parser.c"
6880
6.07k
    break;
6881
6882
9.45k
  case 371:
6883
9.45k
#line 1110 "/src/php-src/Zend/zend_language_parser.y"
6884
9.45k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6885
9.45k
#line 6886 "/src/php-src/Zend/zend_language_parser.c"
6886
9.45k
    break;
6887
6888
112
  case 372:
6889
112
#line 1111 "/src/php-src/Zend/zend_language_parser.y"
6890
112
                                                            {
6891
112
      (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)));
6892
112
    }
6893
112
#line 6894 "/src/php-src/Zend/zend_language_parser.c"
6894
112
    break;
6895
6896
53.0k
  case 373:
6897
53.0k
#line 1117 "/src/php-src/Zend/zend_language_parser.y"
6898
53.0k
                        { (yyval.ast) = NULL; }
6899
53.0k
#line 6900 "/src/php-src/Zend/zend_language_parser.c"
6900
53.0k
    break;
6901
6902
217
  case 374:
6903
217
#line 1118 "/src/php-src/Zend/zend_language_parser.y"
6904
217
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6905
217
#line 6906 "/src/php-src/Zend/zend_language_parser.c"
6906
217
    break;
6907
6908
9.86k
  case 375:
6909
9.86k
#line 1122 "/src/php-src/Zend/zend_language_parser.y"
6910
9.86k
                       { (yyval.num) = 0; }
6911
9.86k
#line 6912 "/src/php-src/Zend/zend_language_parser.c"
6912
9.86k
    break;
6913
6914
302
  case 376:
6915
302
#line 1123 "/src/php-src/Zend/zend_language_parser.y"
6916
302
                                           {
6917
302
      (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY_HOOK, (yyvsp[0].ast));
6918
302
      if (!(yyval.num)) { YYERROR; }
6919
302
    }
6920
276
#line 6921 "/src/php-src/Zend/zend_language_parser.c"
6921
276
    break;
6922
6923
10.1k
  case 377:
6924
10.1k
#line 1131 "/src/php-src/Zend/zend_language_parser.y"
6925
10.1k
                                   { (yyval.num) = CG(zend_lineno); }
6926
10.1k
#line 6927 "/src/php-src/Zend/zend_language_parser.c"
6927
10.1k
    break;
6928
6929
9.56k
  case 378:
6930
9.56k
#line 1132 "/src/php-src/Zend/zend_language_parser.y"
6931
9.56k
                                                                                           {
6932
9.56k
      (yyval.ast) = zend_ast_create_decl(
6933
9.56k
        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)),
6934
9.56k
        (yyvsp[-3].ast), NULL, (yyvsp[-1].ast), NULL, NULL);
6935
9.56k
      CG(extra_fn_flags) = (yyvsp[-2].num);
6936
9.56k
    }
6937
9.56k
#line 6938 "/src/php-src/Zend/zend_language_parser.c"
6938
9.56k
    break;
6939
6940
3.17k
  case 379:
6941
3.17k
#line 1141 "/src/php-src/Zend/zend_language_parser.y"
6942
3.17k
                    { (yyval.ast) = NULL; }
6943
3.17k
#line 6944 "/src/php-src/Zend/zend_language_parser.c"
6944
3.17k
    break;
6945
6946
3.74k
  case 380:
6947
3.74k
#line 1142 "/src/php-src/Zend/zend_language_parser.y"
6948
3.74k
                                             { (yyval.ast) = (yyvsp[-1].ast); }
6949
3.74k
#line 6950 "/src/php-src/Zend/zend_language_parser.c"
6950
3.74k
    break;
6951
6952
2.64k
  case 381:
6953
2.64k
#line 1144 "/src/php-src/Zend/zend_language_parser.y"
6954
2.64k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROPERTY_HOOK_SHORT_BODY, (yyvsp[-1].ast)); }
6955
2.64k
#line 6956 "/src/php-src/Zend/zend_language_parser.c"
6956
2.64k
    break;
6957
6958
9.01k
  case 382:
6959
9.01k
#line 1148 "/src/php-src/Zend/zend_language_parser.y"
6960
9.01k
                       { (yyval.ast) = NULL; }
6961
9.01k
#line 6962 "/src/php-src/Zend/zend_language_parser.c"
6962
9.01k
    break;
6963
6964
763
  case 383:
6965
763
#line 1149 "/src/php-src/Zend/zend_language_parser.y"
6966
763
                                       { (yyval.ast) = (yyvsp[-1].ast); }
6967
763
#line 6968 "/src/php-src/Zend/zend_language_parser.c"
6968
763
    break;
6969
6970
325
  case 384:
6971
325
#line 1153 "/src/php-src/Zend/zend_language_parser.y"
6972
325
                                                      { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6973
325
#line 6974 "/src/php-src/Zend/zend_language_parser.c"
6974
325
    break;
6975
6976
7.63k
  case 385:
6977
7.63k
#line 1154 "/src/php-src/Zend/zend_language_parser.y"
6978
7.63k
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLASS_CONST_DECL, (yyvsp[0].ast)); }
6979
7.63k
#line 6980 "/src/php-src/Zend/zend_language_parser.c"
6980
7.63k
    break;
6981
6982
5.69k
  case 386:
6983
5.69k
#line 1158 "/src/php-src/Zend/zend_language_parser.y"
6984
5.69k
                                                     { (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)); }
6985
5.69k
#line 6986 "/src/php-src/Zend/zend_language_parser.c"
6986
5.69k
    break;
6987
6988
2.26k
  case 387:
6989
2.26k
#line 1159 "/src/php-src/Zend/zend_language_parser.y"
6990
2.26k
                                                          {
6991
2.26k
      zval zv;
6992
2.26k
      if (zend_lex_tstring(&zv, (yyvsp[-3].ident)) == FAILURE) { YYABORT; }
6993
2.26k
      (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));
6994
2.26k
    }
6995
0
#line 6996 "/src/php-src/Zend/zend_language_parser.c"
6996
0
    break;
6997
6998
8.86k
  case 388:
6999
8.86k
#line 1167 "/src/php-src/Zend/zend_language_parser.y"
7000
8.86k
                                             { (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)); }
7001
8.86k
#line 7002 "/src/php-src/Zend/zend_language_parser.c"
7002
8.86k
    break;
7003
7004
17.8k
  case 389:
7005
17.8k
#line 1171 "/src/php-src/Zend/zend_language_parser.y"
7006
17.8k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7007
17.8k
#line 7008 "/src/php-src/Zend/zend_language_parser.c"
7008
17.8k
    break;
7009
7010
53.3k
  case 390:
7011
53.3k
#line 1172 "/src/php-src/Zend/zend_language_parser.y"
7012
53.3k
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
7013
53.3k
#line 7014 "/src/php-src/Zend/zend_language_parser.c"
7014
53.3k
    break;
7015
7016
71.1k
  case 391:
7017
71.1k
#line 1175 "/src/php-src/Zend/zend_language_parser.y"
7018
71.1k
             { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
7019
71.1k
#line 7020 "/src/php-src/Zend/zend_language_parser.c"
7020
71.1k
    break;
7021
7022
1.82k
  case 392:
7023
1.82k
#line 1179 "/src/php-src/Zend/zend_language_parser.y"
7024
1.82k
                                        { (yyval.ast) = NULL; }
7025
1.82k
#line 7026 "/src/php-src/Zend/zend_language_parser.c"
7026
1.82k
    break;
7027
7028
1.97k
  case 393:
7029
1.97k
#line 1180 "/src/php-src/Zend/zend_language_parser.y"
7030
1.97k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7031
1.97k
#line 7032 "/src/php-src/Zend/zend_language_parser.c"
7032
1.97k
    break;
7033
7034
15.6k
  case 394:
7035
15.6k
#line 1181 "/src/php-src/Zend/zend_language_parser.y"
7036
15.6k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7037
15.6k
#line 7038 "/src/php-src/Zend/zend_language_parser.c"
7038
15.6k
    break;
7039
7040
17.4k
  case 395:
7041
17.4k
#line 1185 "/src/php-src/Zend/zend_language_parser.y"
7042
17.4k
                                        { (yyval.ast) = NULL; }
7043
17.4k
#line 7044 "/src/php-src/Zend/zend_language_parser.c"
7044
17.4k
    break;
7045
7046
21.3k
  case 396:
7047
21.3k
#line 1186 "/src/php-src/Zend/zend_language_parser.y"
7048
21.3k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7049
21.3k
#line 7050 "/src/php-src/Zend/zend_language_parser.c"
7050
21.3k
    break;
7051
7052
1.70k
  case 397:
7053
1.70k
#line 1190 "/src/php-src/Zend/zend_language_parser.y"
7054
1.70k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7055
1.70k
#line 7056 "/src/php-src/Zend/zend_language_parser.c"
7056
1.70k
    break;
7057
7058
79
  case 398:
7059
79
#line 1191 "/src/php-src/Zend/zend_language_parser.y"
7060
79
                                                         { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7061
79
#line 7062 "/src/php-src/Zend/zend_language_parser.c"
7062
79
    break;
7063
7064
125
  case 399:
7065
125
#line 1192 "/src/php-src/Zend/zend_language_parser.y"
7066
125
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7067
125
#line 7068 "/src/php-src/Zend/zend_language_parser.c"
7068
125
    break;
7069
7070
23.2k
  case 400:
7071
23.2k
#line 1193 "/src/php-src/Zend/zend_language_parser.y"
7072
23.2k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7073
23.2k
#line 7074 "/src/php-src/Zend/zend_language_parser.c"
7074
23.2k
    break;
7075
7076
2.88k
  case 401:
7077
2.88k
#line 1197 "/src/php-src/Zend/zend_language_parser.y"
7078
2.88k
                                                           { (yyval.num) = CG(zend_lineno); }
7079
2.88k
#line 7080 "/src/php-src/Zend/zend_language_parser.c"
7080
2.88k
    break;
7081
7082
2.53k
  case 402:
7083
2.53k
#line 1198 "/src/php-src/Zend/zend_language_parser.y"
7084
2.53k
                                                                                             {
7085
2.53k
      zend_ast *decl = zend_ast_create_decl(
7086
2.53k
        ZEND_AST_CLASS, ZEND_ACC_ANON_CLASS | (yyvsp[-9].num), (yyvsp[-7].num), (yyvsp[-3].str), NULL,
7087
2.53k
        (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL);
7088
2.53k
      (yyval.ast) = zend_ast_create(ZEND_AST_NEW, decl, (yyvsp[-6].ast));
7089
2.53k
    }
7090
2.53k
#line 7091 "/src/php-src/Zend/zend_language_parser.c"
7091
2.53k
    break;
7092
7093
61.7k
  case 403:
7094
61.7k
#line 1208 "/src/php-src/Zend/zend_language_parser.y"
7095
61.7k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7096
61.7k
#line 7097 "/src/php-src/Zend/zend_language_parser.c"
7097
61.7k
    break;
7098
7099
2.38k
  case 404:
7100
2.38k
#line 1210 "/src/php-src/Zend/zend_language_parser.y"
7101
2.38k
                        { (yyval.ast) = (yyvsp[0].ast); }
7102
2.38k
#line 7103 "/src/php-src/Zend/zend_language_parser.c"
7103
2.38k
    break;
7104
7105
147
  case 405:
7106
147
#line 1212 "/src/php-src/Zend/zend_language_parser.y"
7107
147
                        { zend_ast_with_attributes((yyvsp[0].ast)->child[0], (yyvsp[-1].ast)); (yyval.ast) = (yyvsp[0].ast); }
7108
147
#line 7109 "/src/php-src/Zend/zend_language_parser.c"
7109
147
    break;
7110
7111
24.2k
  case 406:
7112
24.2k
#line 1217 "/src/php-src/Zend/zend_language_parser.y"
7113
24.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[0].ast), zend_ast_create_list(0, ZEND_AST_ARG_LIST)); }
7114
24.2k
#line 7115 "/src/php-src/Zend/zend_language_parser.c"
7115
24.2k
    break;
7116
7117
594k
  case 407:
7118
594k
#line 1222 "/src/php-src/Zend/zend_language_parser.y"
7119
594k
                        { (yyval.ast) = (yyvsp[0].ast); }
7120
594k
#line 7121 "/src/php-src/Zend/zend_language_parser.c"
7121
594k
    break;
7122
7123
1.40k
  case 408:
7124
1.40k
#line 1224 "/src/php-src/Zend/zend_language_parser.y"
7125
1.40k
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_LIST; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7126
1.40k
#line 7127 "/src/php-src/Zend/zend_language_parser.c"
7127
1.40k
    break;
7128
7129
2.45k
  case 409:
7130
2.45k
#line 1226 "/src/php-src/Zend/zend_language_parser.y"
7131
2.45k
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7132
2.45k
#line 7133 "/src/php-src/Zend/zend_language_parser.c"
7133
2.45k
    break;
7134
7135
269k
  case 410:
7136
269k
#line 1228 "/src/php-src/Zend/zend_language_parser.y"
7137
269k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7138
269k
#line 7139 "/src/php-src/Zend/zend_language_parser.c"
7139
269k
    break;
7140
7141
5.61k
  case 411:
7142
5.61k
#line 1230 "/src/php-src/Zend/zend_language_parser.y"
7143
5.61k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_REF, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7144
5.61k
#line 7145 "/src/php-src/Zend/zend_language_parser.c"
7145
5.61k
    break;
7146
7147
935
  case 412:
7148
935
#line 1231 "/src/php-src/Zend/zend_language_parser.y"
7149
935
                             { (yyval.ast) = zend_ast_create(ZEND_AST_CLONE, (yyvsp[0].ast)); }
7150
935
#line 7151 "/src/php-src/Zend/zend_language_parser.c"
7151
935
    break;
7152
7153
2.66k
  case 413:
7154
2.66k
#line 1233 "/src/php-src/Zend/zend_language_parser.y"
7155
2.66k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7156
2.66k
#line 7157 "/src/php-src/Zend/zend_language_parser.c"
7157
2.66k
    break;
7158
7159
694
  case 414:
7160
694
#line 1235 "/src/php-src/Zend/zend_language_parser.y"
7161
694
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7162
694
#line 7163 "/src/php-src/Zend/zend_language_parser.c"
7163
694
    break;
7164
7165
2.73k
  case 415:
7166
2.73k
#line 1237 "/src/php-src/Zend/zend_language_parser.y"
7167
2.73k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7168
2.73k
#line 7169 "/src/php-src/Zend/zend_language_parser.c"
7169
2.73k
    break;
7170
7171
386
  case 416:
7172
386
#line 1239 "/src/php-src/Zend/zend_language_parser.y"
7173
386
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7174
386
#line 7175 "/src/php-src/Zend/zend_language_parser.c"
7175
386
    break;
7176
7177
841
  case 417:
7178
841
#line 1241 "/src/php-src/Zend/zend_language_parser.y"
7179
841
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7180
841
#line 7181 "/src/php-src/Zend/zend_language_parser.c"
7181
841
    break;
7182
7183
172k
  case 418:
7184
172k
#line 1243 "/src/php-src/Zend/zend_language_parser.y"
7185
172k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_CONCAT, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7186
172k
#line 7187 "/src/php-src/Zend/zend_language_parser.c"
7187
172k
    break;
7188
7189
1.37k
  case 419:
7190
1.37k
#line 1245 "/src/php-src/Zend/zend_language_parser.y"
7191
1.37k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7192
1.37k
#line 7193 "/src/php-src/Zend/zend_language_parser.c"
7193
1.37k
    break;
7194
7195
24.8k
  case 420:
7196
24.8k
#line 1247 "/src/php-src/Zend/zend_language_parser.y"
7197
24.8k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7198
24.8k
#line 7199 "/src/php-src/Zend/zend_language_parser.c"
7199
24.8k
    break;
7200
7201
508
  case 421:
7202
508
#line 1249 "/src/php-src/Zend/zend_language_parser.y"
7203
508
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7204
508
#line 7205 "/src/php-src/Zend/zend_language_parser.c"
7205
508
    break;
7206
7207
495
  case 422:
7208
495
#line 1251 "/src/php-src/Zend/zend_language_parser.y"
7209
495
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7210
495
#line 7211 "/src/php-src/Zend/zend_language_parser.c"
7211
495
    break;
7212
7213
203
  case 423:
7214
203
#line 1253 "/src/php-src/Zend/zend_language_parser.y"
7215
203
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7216
203
#line 7217 "/src/php-src/Zend/zend_language_parser.c"
7217
203
    break;
7218
7219
409
  case 424:
7220
409
#line 1255 "/src/php-src/Zend/zend_language_parser.y"
7221
409
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7222
409
#line 7223 "/src/php-src/Zend/zend_language_parser.c"
7223
409
    break;
7224
7225
7.75k
  case 425:
7226
7.75k
#line 1257 "/src/php-src/Zend/zend_language_parser.y"
7227
7.75k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7228
7.75k
#line 7229 "/src/php-src/Zend/zend_language_parser.c"
7229
7.75k
    break;
7230
7231
7.48k
  case 426:
7232
7.48k
#line 1258 "/src/php-src/Zend/zend_language_parser.y"
7233
7.48k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_INC, (yyvsp[-1].ast)); }
7234
7.48k
#line 7235 "/src/php-src/Zend/zend_language_parser.c"
7235
7.48k
    break;
7236
7237
4.98k
  case 427:
7238
4.98k
#line 1259 "/src/php-src/Zend/zend_language_parser.y"
7239
4.98k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_INC, (yyvsp[0].ast)); }
7240
4.98k
#line 7241 "/src/php-src/Zend/zend_language_parser.c"
7241
4.98k
    break;
7242
7243
3.52k
  case 428:
7244
3.52k
#line 1260 "/src/php-src/Zend/zend_language_parser.y"
7245
3.52k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_DEC, (yyvsp[-1].ast)); }
7246
3.52k
#line 7247 "/src/php-src/Zend/zend_language_parser.c"
7247
3.52k
    break;
7248
7249
2.20k
  case 429:
7250
2.20k
#line 1261 "/src/php-src/Zend/zend_language_parser.y"
7251
2.20k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_DEC, (yyvsp[0].ast)); }
7252
2.20k
#line 7253 "/src/php-src/Zend/zend_language_parser.c"
7253
2.20k
    break;
7254
7255
3.73k
  case 430:
7256
3.73k
#line 1263 "/src/php-src/Zend/zend_language_parser.y"
7257
3.73k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7258
3.73k
#line 7259 "/src/php-src/Zend/zend_language_parser.c"
7259
3.73k
    break;
7260
7261
4.30k
  case 431:
7262
4.30k
#line 1265 "/src/php-src/Zend/zend_language_parser.y"
7263
4.30k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7264
4.30k
#line 7265 "/src/php-src/Zend/zend_language_parser.c"
7265
4.30k
    break;
7266
7267
906
  case 432:
7268
906
#line 1267 "/src/php-src/Zend/zend_language_parser.y"
7269
906
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7270
906
#line 7271 "/src/php-src/Zend/zend_language_parser.c"
7271
906
    break;
7272
7273
953
  case 433:
7274
953
#line 1269 "/src/php-src/Zend/zend_language_parser.y"
7275
953
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7276
953
#line 7277 "/src/php-src/Zend/zend_language_parser.c"
7277
953
    break;
7278
7279
2.54k
  case 434:
7280
2.54k
#line 1271 "/src/php-src/Zend/zend_language_parser.y"
7281
2.54k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BOOL_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7282
2.54k
#line 7283 "/src/php-src/Zend/zend_language_parser.c"
7283
2.54k
    break;
7284
7285
32.7k
  case 435:
7286
32.7k
#line 1272 "/src/php-src/Zend/zend_language_parser.y"
7287
32.7k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7288
32.7k
#line 7289 "/src/php-src/Zend/zend_language_parser.c"
7289
32.7k
    break;
7290
7291
23.3k
  case 436:
7292
23.3k
#line 1273 "/src/php-src/Zend/zend_language_parser.y"
7293
23.3k
                                                                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7294
23.3k
#line 7295 "/src/php-src/Zend/zend_language_parser.c"
7295
23.3k
    break;
7296
7297
3.74k
  case 437:
7298
3.74k
#line 1274 "/src/php-src/Zend/zend_language_parser.y"
7299
3.74k
                                                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7300
3.74k
#line 7301 "/src/php-src/Zend/zend_language_parser.c"
7301
3.74k
    break;
7302
7303
15.6k
  case 438:
7304
15.6k
#line 1275 "/src/php-src/Zend/zend_language_parser.y"
7305
15.6k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7306
15.6k
#line 7307 "/src/php-src/Zend/zend_language_parser.c"
7307
15.6k
    break;
7308
7309
116k
  case 439:
7310
116k
#line 1276 "/src/php-src/Zend/zend_language_parser.y"
7311
116k
                                { (yyval.ast) = zend_ast_create_concat_op((yyvsp[-2].ast), (yyvsp[0].ast)); }
7312
116k
#line 7313 "/src/php-src/Zend/zend_language_parser.c"
7313
116k
    break;
7314
7315
51.4k
  case 440:
7316
51.4k
#line 1277 "/src/php-src/Zend/zend_language_parser.y"
7317
51.4k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7318
51.4k
#line 7319 "/src/php-src/Zend/zend_language_parser.c"
7319
51.4k
    break;
7320
7321
25.0k
  case 441:
7322
25.0k
#line 1278 "/src/php-src/Zend/zend_language_parser.y"
7323
25.0k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7324
25.0k
#line 7325 "/src/php-src/Zend/zend_language_parser.c"
7325
25.0k
    break;
7326
7327
20.3k
  case 442:
7328
20.3k
#line 1279 "/src/php-src/Zend/zend_language_parser.y"
7329
20.3k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7330
20.3k
#line 7331 "/src/php-src/Zend/zend_language_parser.c"
7331
20.3k
    break;
7332
7333
6.96k
  case 443:
7334
6.96k
#line 1280 "/src/php-src/Zend/zend_language_parser.y"
7335
6.96k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7336
6.96k
#line 7337 "/src/php-src/Zend/zend_language_parser.c"
7337
6.96k
    break;
7338
7339
14.6k
  case 444:
7340
14.6k
#line 1281 "/src/php-src/Zend/zend_language_parser.y"
7341
14.6k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7342
14.6k
#line 7343 "/src/php-src/Zend/zend_language_parser.c"
7343
14.6k
    break;
7344
7345
16.5k
  case 445:
7346
16.5k
#line 1282 "/src/php-src/Zend/zend_language_parser.y"
7347
16.5k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7348
16.5k
#line 7349 "/src/php-src/Zend/zend_language_parser.c"
7349
16.5k
    break;
7350
7351
4.80k
  case 446:
7352
4.80k
#line 1283 "/src/php-src/Zend/zend_language_parser.y"
7353
4.80k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7354
4.80k
#line 7355 "/src/php-src/Zend/zend_language_parser.c"
7355
4.80k
    break;
7356
7357
2.46k
  case 447:
7358
2.46k
#line 1284 "/src/php-src/Zend/zend_language_parser.y"
7359
2.46k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7360
2.46k
#line 7361 "/src/php-src/Zend/zend_language_parser.c"
7361
2.46k
    break;
7362
7363
22.2k
  case 448:
7364
22.2k
#line 1285 "/src/php-src/Zend/zend_language_parser.y"
7365
22.2k
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_PLUS, (yyvsp[0].ast)); }
7366
22.2k
#line 7367 "/src/php-src/Zend/zend_language_parser.c"
7367
22.2k
    break;
7368
7369
38.1k
  case 449:
7370
38.1k
#line 1286 "/src/php-src/Zend/zend_language_parser.y"
7371
38.1k
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_MINUS, (yyvsp[0].ast)); }
7372
38.1k
#line 7373 "/src/php-src/Zend/zend_language_parser.c"
7373
38.1k
    break;
7374
7375
52.9k
  case 450:
7376
52.9k
#line 1287 "/src/php-src/Zend/zend_language_parser.y"
7377
52.9k
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BOOL_NOT, (yyvsp[0].ast)); }
7378
52.9k
#line 7379 "/src/php-src/Zend/zend_language_parser.c"
7379
52.9k
    break;
7380
7381
13.6k
  case 451:
7382
13.6k
#line 1288 "/src/php-src/Zend/zend_language_parser.y"
7383
13.6k
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BW_NOT, (yyvsp[0].ast)); }
7384
13.6k
#line 7385 "/src/php-src/Zend/zend_language_parser.c"
7385
13.6k
    break;
7386
7387
4.99k
  case 452:
7388
4.99k
#line 1290 "/src/php-src/Zend/zend_language_parser.y"
7389
4.99k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7390
4.99k
#line 7391 "/src/php-src/Zend/zend_language_parser.c"
7391
4.99k
    break;
7392
7393
2.53k
  case 453:
7394
2.53k
#line 1292 "/src/php-src/Zend/zend_language_parser.y"
7395
2.53k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7396
2.53k
#line 7397 "/src/php-src/Zend/zend_language_parser.c"
7397
2.53k
    break;
7398
7399
20.5k
  case 454:
7400
20.5k
#line 1294 "/src/php-src/Zend/zend_language_parser.y"
7401
20.5k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7402
20.5k
#line 7403 "/src/php-src/Zend/zend_language_parser.c"
7403
20.5k
    break;
7404
7405
6.01k
  case 455:
7406
6.01k
#line 1296 "/src/php-src/Zend/zend_language_parser.y"
7407
6.01k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7408
6.01k
#line 7409 "/src/php-src/Zend/zend_language_parser.c"
7409
6.01k
    break;
7410
7411
502
  case 456:
7412
502
#line 1298 "/src/php-src/Zend/zend_language_parser.y"
7413
502
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PIPE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7414
502
#line 7415 "/src/php-src/Zend/zend_language_parser.c"
7415
502
    break;
7416
7417
24.6k
  case 457:
7418
24.6k
#line 1300 "/src/php-src/Zend/zend_language_parser.y"
7419
24.6k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7420
24.6k
#line 7421 "/src/php-src/Zend/zend_language_parser.c"
7421
24.6k
    break;
7422
7423
3.18k
  case 458:
7424
3.18k
#line 1302 "/src/php-src/Zend/zend_language_parser.y"
7425
3.18k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER_OR_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7426
3.18k
#line 7427 "/src/php-src/Zend/zend_language_parser.c"
7427
3.18k
    break;
7428
7429
15.6k
  case 459:
7430
15.6k
#line 1304 "/src/php-src/Zend/zend_language_parser.y"
7431
15.6k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7432
15.6k
#line 7433 "/src/php-src/Zend/zend_language_parser.c"
7433
15.6k
    break;
7434
7435
2.88k
  case 460:
7436
2.88k
#line 1306 "/src/php-src/Zend/zend_language_parser.y"
7437
2.88k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7438
2.88k
#line 7439 "/src/php-src/Zend/zend_language_parser.c"
7439
2.88k
    break;
7440
7441
1.03k
  case 461:
7442
1.03k
#line 1308 "/src/php-src/Zend/zend_language_parser.y"
7443
1.03k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_SPACESHIP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7444
1.03k
#line 7445 "/src/php-src/Zend/zend_language_parser.c"
7445
1.03k
    break;
7446
7447
746
  case 462:
7448
746
#line 1310 "/src/php-src/Zend/zend_language_parser.y"
7449
746
                        { (yyval.ast) = zend_ast_create(ZEND_AST_INSTANCEOF, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7450
746
#line 7451 "/src/php-src/Zend/zend_language_parser.c"
7451
746
    break;
7452
7453
26.2k
  case 463:
7454
26.2k
#line 1311 "/src/php-src/Zend/zend_language_parser.y"
7455
26.2k
                             {
7456
26.2k
      (yyval.ast) = (yyvsp[-1].ast);
7457
26.2k
      if ((yyval.ast)->kind == ZEND_AST_CONDITIONAL) (yyval.ast)->attr = ZEND_PARENTHESIZED_CONDITIONAL;
7458
26.2k
    }
7459
26.2k
#line 7460 "/src/php-src/Zend/zend_language_parser.c"
7460
26.2k
    break;
7461
7462
63.3k
  case 464:
7463
63.3k
#line 1315 "/src/php-src/Zend/zend_language_parser.y"
7464
63.3k
                                    { (yyval.ast) = (yyvsp[0].ast); }
7465
63.3k
#line 7466 "/src/php-src/Zend/zend_language_parser.c"
7466
63.3k
    break;
7467
7468
24.2k
  case 465:
7469
24.2k
#line 1316 "/src/php-src/Zend/zend_language_parser.y"
7470
24.2k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7471
24.2k
#line 7472 "/src/php-src/Zend/zend_language_parser.c"
7472
24.2k
    break;
7473
7474
5.17k
  case 466:
7475
5.17k
#line 1318 "/src/php-src/Zend/zend_language_parser.y"
7476
5.17k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
7477
5.17k
#line 7478 "/src/php-src/Zend/zend_language_parser.c"
7478
5.17k
    break;
7479
7480
3.49k
  case 467:
7481
3.49k
#line 1320 "/src/php-src/Zend/zend_language_parser.y"
7482
3.49k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-3].ast), NULL, (yyvsp[0].ast)); }
7483
3.49k
#line 7484 "/src/php-src/Zend/zend_language_parser.c"
7484
3.49k
    break;
7485
7486
11.9k
  case 468:
7487
11.9k
#line 1322 "/src/php-src/Zend/zend_language_parser.y"
7488
11.9k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7489
11.9k
#line 7490 "/src/php-src/Zend/zend_language_parser.c"
7490
11.9k
    break;
7491
7492
16.5k
  case 469:
7493
16.5k
#line 1323 "/src/php-src/Zend/zend_language_parser.y"
7494
16.5k
                                           { (yyval.ast) = (yyvsp[0].ast); }
7495
16.5k
#line 7496 "/src/php-src/Zend/zend_language_parser.c"
7496
16.5k
    break;
7497
7498
1.22k
  case 470:
7499
1.22k
#line 1324 "/src/php-src/Zend/zend_language_parser.y"
7500
1.22k
                                        { (yyval.ast) = zend_ast_create_cast(IS_LONG, (yyvsp[0].ast)); }
7501
1.22k
#line 7502 "/src/php-src/Zend/zend_language_parser.c"
7502
1.22k
    break;
7503
7504
355
  case 471:
7505
355
#line 1325 "/src/php-src/Zend/zend_language_parser.y"
7506
355
                                        { (yyval.ast) = zend_ast_create_cast(IS_DOUBLE, (yyvsp[0].ast)); }
7507
355
#line 7508 "/src/php-src/Zend/zend_language_parser.c"
7508
355
    break;
7509
7510
1.25k
  case 472:
7511
1.25k
#line 1326 "/src/php-src/Zend/zend_language_parser.y"
7512
1.25k
                                        { (yyval.ast) = zend_ast_create_cast(IS_STRING, (yyvsp[0].ast)); }
7513
1.25k
#line 7514 "/src/php-src/Zend/zend_language_parser.c"
7514
1.25k
    break;
7515
7516
946
  case 473:
7517
946
#line 1327 "/src/php-src/Zend/zend_language_parser.y"
7518
946
                                        { (yyval.ast) = zend_ast_create_cast(IS_ARRAY, (yyvsp[0].ast)); }
7519
946
#line 7520 "/src/php-src/Zend/zend_language_parser.c"
7520
946
    break;
7521
7522
629
  case 474:
7523
629
#line 1328 "/src/php-src/Zend/zend_language_parser.y"
7524
629
                                        { (yyval.ast) = zend_ast_create_cast(IS_OBJECT, (yyvsp[0].ast)); }
7525
629
#line 7526 "/src/php-src/Zend/zend_language_parser.c"
7526
629
    break;
7527
7528
214
  case 475:
7529
214
#line 1329 "/src/php-src/Zend/zend_language_parser.y"
7530
214
                                        { (yyval.ast) = zend_ast_create_cast(_IS_BOOL, (yyvsp[0].ast)); }
7531
214
#line 7532 "/src/php-src/Zend/zend_language_parser.c"
7532
214
    break;
7533
7534
254
  case 476:
7535
254
#line 1330 "/src/php-src/Zend/zend_language_parser.y"
7536
254
                                        { (yyval.ast) = zend_ast_create_cast(IS_NULL, (yyvsp[0].ast)); }
7537
254
#line 7538 "/src/php-src/Zend/zend_language_parser.c"
7538
254
    break;
7539
7540
858
  case 477:
7541
858
#line 1331 "/src/php-src/Zend/zend_language_parser.y"
7542
858
                                      {
7543
858
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_EXIT));
7544
858
      name->attr = ZEND_NAME_FQ;
7545
858
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7546
858
    }
7547
858
#line 7548 "/src/php-src/Zend/zend_language_parser.c"
7548
858
    break;
7549
7550
552k
  case 478:
7551
552k
#line 1336 "/src/php-src/Zend/zend_language_parser.y"
7552
552k
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_SILENCE, (yyvsp[0].ast)); }
7553
552k
#line 7554 "/src/php-src/Zend/zend_language_parser.c"
7554
552k
    break;
7555
7556
1.61M
  case 479:
7557
1.61M
#line 1337 "/src/php-src/Zend/zend_language_parser.y"
7558
1.61M
                       { (yyval.ast) = (yyvsp[0].ast); }
7559
1.61M
#line 7560 "/src/php-src/Zend/zend_language_parser.c"
7560
1.61M
    break;
7561
7562
7.19k
  case 480:
7563
7.19k
#line 1338 "/src/php-src/Zend/zend_language_parser.y"
7564
7.19k
                                       { (yyval.ast) = zend_ast_create(ZEND_AST_SHELL_EXEC, (yyvsp[-1].ast)); }
7565
7.19k
#line 7566 "/src/php-src/Zend/zend_language_parser.c"
7566
7.19k
    break;
7567
7568
3.83k
  case 481:
7569
3.83k
#line 1339 "/src/php-src/Zend/zend_language_parser.y"
7570
3.83k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_PRINT, (yyvsp[0].ast)); }
7571
3.83k
#line 7572 "/src/php-src/Zend/zend_language_parser.c"
7572
3.83k
    break;
7573
7574
2.71k
  case 482:
7575
2.71k
#line 1340 "/src/php-src/Zend/zend_language_parser.y"
7576
2.71k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, NULL, NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7577
2.71k
#line 7578 "/src/php-src/Zend/zend_language_parser.c"
7578
2.71k
    break;
7579
7580
4.84k
  case 483:
7581
4.84k
#line 1341 "/src/php-src/Zend/zend_language_parser.y"
7582
4.84k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7583
4.84k
#line 7584 "/src/php-src/Zend/zend_language_parser.c"
7584
4.84k
    break;
7585
7586
604
  case 484:
7587
604
#line 1342 "/src/php-src/Zend/zend_language_parser.y"
7588
604
                                                 { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), (yyvsp[-2].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7589
604
#line 7590 "/src/php-src/Zend/zend_language_parser.c"
7590
604
    break;
7591
7592
1.09k
  case 485:
7593
1.09k
#line 1343 "/src/php-src/Zend/zend_language_parser.y"
7594
1.09k
                                  { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD_FROM, (yyvsp[0].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7595
1.09k
#line 7596 "/src/php-src/Zend/zend_language_parser.c"
7596
1.09k
    break;
7597
7598
3.27k
  case 486:
7599
3.27k
#line 1344 "/src/php-src/Zend/zend_language_parser.y"
7600
3.27k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_THROW, (yyvsp[0].ast)); }
7601
3.27k
#line 7602 "/src/php-src/Zend/zend_language_parser.c"
7602
3.27k
    break;
7603
7604
32.9k
  case 487:
7605
32.9k
#line 1345 "/src/php-src/Zend/zend_language_parser.y"
7606
32.9k
                                { (yyval.ast) = (yyvsp[0].ast); }
7607
32.9k
#line 7608 "/src/php-src/Zend/zend_language_parser.c"
7608
32.9k
    break;
7609
7610
1.29k
  case 488:
7611
1.29k
#line 1346 "/src/php-src/Zend/zend_language_parser.y"
7612
1.29k
                                           { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
7613
1.29k
#line 7614 "/src/php-src/Zend/zend_language_parser.c"
7614
1.29k
    break;
7615
7616
299
  case 489:
7617
299
#line 1347 "/src/php-src/Zend/zend_language_parser.y"
7618
299
                                         { (yyval.ast) = (yyvsp[0].ast); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7619
299
#line 7620 "/src/php-src/Zend/zend_language_parser.c"
7620
299
    break;
7621
7622
65
  case 490:
7623
65
#line 1349 "/src/php-src/Zend/zend_language_parser.y"
7624
65
                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-2].ast)); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7625
65
#line 7626 "/src/php-src/Zend/zend_language_parser.c"
7626
65
    break;
7627
7628
2.78k
  case 491:
7629
2.78k
#line 1350 "/src/php-src/Zend/zend_language_parser.y"
7630
2.78k
                      { (yyval.ast) = (yyvsp[0].ast); }
7631
2.78k
#line 7632 "/src/php-src/Zend/zend_language_parser.c"
7632
2.78k
    break;
7633
7634
15.0k
  case 492:
7635
15.0k
#line 1357 "/src/php-src/Zend/zend_language_parser.y"
7636
15.0k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLOSURE, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-10].str),
7637
15.0k
          NULL,
7638
15.0k
          (yyvsp[-8].ast), (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-5].ast), NULL); CG(extra_fn_flags) = (yyvsp[-4].num); }
7639
15.0k
#line 7640 "/src/php-src/Zend/zend_language_parser.c"
7640
15.0k
    break;
7641
7642
19.5k
  case 493:
7643
19.5k
#line 1362 "/src/php-src/Zend/zend_language_parser.y"
7644
19.5k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_ARROW_FUNC, (yyvsp[-10].num) | (yyvsp[0].num), (yyvsp[-11].num), (yyvsp[-9].str),
7645
19.5k
          NULL, (yyvsp[-7].ast), NULL, (yyvsp[-1].ast), (yyvsp[-5].ast), NULL);
7646
19.5k
          CG(extra_fn_flags) = (yyvsp[-3].num); }
7647
19.5k
#line 7648 "/src/php-src/Zend/zend_language_parser.c"
7648
19.5k
    break;
7649
7650
20.4k
  case 494:
7651
20.4k
#line 1368 "/src/php-src/Zend/zend_language_parser.y"
7652
20.4k
             { (yyval.num) = CG(zend_lineno); }
7653
20.4k
#line 7654 "/src/php-src/Zend/zend_language_parser.c"
7654
20.4k
    break;
7655
7656
72.5k
  case 495:
7657
72.5k
#line 1372 "/src/php-src/Zend/zend_language_parser.y"
7658
72.5k
                   { (yyval.num) = CG(zend_lineno); }
7659
72.5k
#line 7660 "/src/php-src/Zend/zend_language_parser.c"
7660
72.5k
    break;
7661
7662
269k
  case 496:
7663
269k
#line 1376 "/src/php-src/Zend/zend_language_parser.y"
7664
269k
               { (yyval.str) = CG(doc_comment); CG(doc_comment) = NULL; }
7665
269k
#line 7666 "/src/php-src/Zend/zend_language_parser.c"
7666
269k
    break;
7667
7668
200k
  case 497:
7669
200k
#line 1380 "/src/php-src/Zend/zend_language_parser.y"
7670
200k
                                         { (yyval.num) = CG(extra_fn_flags); CG(extra_fn_flags) = 0; }
7671
200k
#line 7672 "/src/php-src/Zend/zend_language_parser.c"
7672
200k
    break;
7673
7674
20.2k
  case 498:
7675
20.2k
#line 1384 "/src/php-src/Zend/zend_language_parser.y"
7676
20.2k
               { (yyval.ptr) = LANG_SCNG(yy_text); }
7677
20.2k
#line 7678 "/src/php-src/Zend/zend_language_parser.c"
7678
20.2k
    break;
7679
7680
97.6k
  case 499:
7681
97.6k
#line 1388 "/src/php-src/Zend/zend_language_parser.y"
7682
97.6k
                        { (yyval.num) = 0; }
7683
97.6k
#line 7684 "/src/php-src/Zend/zend_language_parser.c"
7684
97.6k
    break;
7685
7686
5.52k
  case 500:
7687
5.52k
#line 1389 "/src/php-src/Zend/zend_language_parser.y"
7688
5.52k
                                { (yyval.num) = ZEND_ACC_RETURN_REFERENCE; }
7689
5.52k
#line 7690 "/src/php-src/Zend/zend_language_parser.c"
7690
5.52k
    break;
7691
7692
14.3k
  case 501:
7693
14.3k
#line 1393 "/src/php-src/Zend/zend_language_parser.y"
7694
14.3k
                       { (yyval.ast) = NULL; }
7695
14.3k
#line 7696 "/src/php-src/Zend/zend_language_parser.c"
7696
14.3k
    break;
7697
7698
1.70k
  case 502:
7699
1.70k
#line 1394 "/src/php-src/Zend/zend_language_parser.y"
7700
1.70k
                                                              { (yyval.ast) = (yyvsp[-2].ast); }
7701
1.70k
#line 7702 "/src/php-src/Zend/zend_language_parser.c"
7702
1.70k
    break;
7703
7704
2.68k
  case 503:
7705
2.68k
#line 1398 "/src/php-src/Zend/zend_language_parser.y"
7706
2.68k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7707
2.68k
#line 7708 "/src/php-src/Zend/zend_language_parser.c"
7708
2.68k
    break;
7709
7710
1.72k
  case 504:
7711
1.72k
#line 1399 "/src/php-src/Zend/zend_language_parser.y"
7712
1.72k
                            { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLOSURE_USES, (yyvsp[0].ast)); }
7713
1.72k
#line 7714 "/src/php-src/Zend/zend_language_parser.c"
7714
1.72k
    break;
7715
7716
3.28k
  case 505:
7717
3.28k
#line 1403 "/src/php-src/Zend/zend_language_parser.y"
7718
3.28k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7719
3.28k
#line 7720 "/src/php-src/Zend/zend_language_parser.c"
7720
3.28k
    break;
7721
7722
1.12k
  case 506:
7723
1.12k
#line 1404 "/src/php-src/Zend/zend_language_parser.y"
7724
1.12k
                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_BIND_REF; }
7725
1.12k
#line 7726 "/src/php-src/Zend/zend_language_parser.c"
7726
1.12k
    break;
7727
7728
225k
  case 507:
7729
225k
#line 1409 "/src/php-src/Zend/zend_language_parser.y"
7730
225k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7731
225k
#line 7732 "/src/php-src/Zend/zend_language_parser.c"
7732
225k
    break;
7733
7734
198
  case 508:
7735
198
#line 1410 "/src/php-src/Zend/zend_language_parser.y"
7736
198
                                         {
7737
198
      zval zv;
7738
198
      if (zend_lex_tstring(&zv, (yyvsp[-1].ident)) == FAILURE) { YYABORT; }
7739
198
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, zend_ast_create_zval(&zv), (yyvsp[0].ast));
7740
198
    }
7741
0
#line 7742 "/src/php-src/Zend/zend_language_parser.c"
7742
0
    break;
7743
7744
10.6k
  case 509:
7745
10.6k
#line 1416 "/src/php-src/Zend/zend_language_parser.y"
7746
10.6k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
7747
10.6k
#line 7748 "/src/php-src/Zend/zend_language_parser.c"
7748
10.6k
    break;
7749
7750
6.03k
  case 510:
7751
6.03k
#line 1418 "/src/php-src/Zend/zend_language_parser.y"
7752
6.03k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
7753
6.03k
#line 7754 "/src/php-src/Zend/zend_language_parser.c"
7754
6.03k
    break;
7755
7756
16.2k
  case 511:
7757
16.2k
#line 1419 "/src/php-src/Zend/zend_language_parser.y"
7758
16.2k
                              { (yyval.num) = CG(zend_lineno); }
7759
16.2k
#line 7760 "/src/php-src/Zend/zend_language_parser.c"
7760
16.2k
    break;
7761
7762
13.9k
  case 512:
7763
13.9k
#line 1419 "/src/php-src/Zend/zend_language_parser.y"
7764
13.9k
                                                                           {
7765
13.9k
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-2].ast), (yyvsp[0].ast));
7766
13.9k
      (yyval.ast)->lineno = (yyvsp[-1].num);
7767
13.9k
    }
7768
13.9k
#line 7769 "/src/php-src/Zend/zend_language_parser.c"
7769
13.9k
    break;
7770
7771
1.13k
  case 513:
7772
1.13k
#line 1427 "/src/php-src/Zend/zend_language_parser.y"
7773
1.13k
                        { zval zv; ZVAL_INTERNED_STR(&zv, ZSTR_KNOWN(ZEND_STR_STATIC));
7774
1.13k
        (yyval.ast) = zend_ast_create_zval_ex(&zv, ZEND_NAME_NOT_FQ); }
7775
1.13k
#line 7776 "/src/php-src/Zend/zend_language_parser.c"
7776
1.13k
    break;
7777
7778
223k
  case 514:
7779
223k
#line 1429 "/src/php-src/Zend/zend_language_parser.y"
7780
223k
                     { (yyval.ast) = (yyvsp[0].ast); }
7781
223k
#line 7782 "/src/php-src/Zend/zend_language_parser.c"
7782
223k
    break;
7783
7784
85.8k
  case 515:
7785
85.8k
#line 1433 "/src/php-src/Zend/zend_language_parser.y"
7786
85.8k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7787
85.8k
#line 7788 "/src/php-src/Zend/zend_language_parser.c"
7788
85.8k
    break;
7789
7790
1.87k
  case 516:
7791
1.87k
#line 1434 "/src/php-src/Zend/zend_language_parser.y"
7792
1.87k
                                { (yyval.ast) = (yyvsp[0].ast); }
7793
1.87k
#line 7794 "/src/php-src/Zend/zend_language_parser.c"
7794
1.87k
    break;
7795
7796
423
  case 517:
7797
423
#line 1435 "/src/php-src/Zend/zend_language_parser.y"
7798
423
                                { (yyval.ast) = (yyvsp[-1].ast); }
7799
423
#line 7800 "/src/php-src/Zend/zend_language_parser.c"
7800
423
    break;
7801
7802
1.48k
  case 518:
7803
1.48k
#line 1440 "/src/php-src/Zend/zend_language_parser.y"
7804
1.48k
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
7805
1.48k
#line 7806 "/src/php-src/Zend/zend_language_parser.c"
7806
1.48k
    break;
7807
7808
2.05k
  case 519:
7809
2.05k
#line 1441 "/src/php-src/Zend/zend_language_parser.y"
7810
2.05k
                                          { (yyval.ast) = (yyvsp[0].ast); }
7811
2.05k
#line 7812 "/src/php-src/Zend/zend_language_parser.c"
7812
2.05k
    break;
7813
7814
4.21k
  case 520:
7815
4.21k
#line 1442 "/src/php-src/Zend/zend_language_parser.y"
7816
4.21k
                            { (yyval.ast) = (yyvsp[0].ast); }
7817
4.21k
#line 7818 "/src/php-src/Zend/zend_language_parser.c"
7818
4.21k
    break;
7819
7820
2.64k
  case 521:
7821
2.64k
#line 1447 "/src/php-src/Zend/zend_language_parser.y"
7822
2.64k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_ARG_LIST); }
7823
2.64k
#line 7824 "/src/php-src/Zend/zend_language_parser.c"
7824
2.64k
    break;
7825
7826
907
  case 522:
7827
907
#line 1448 "/src/php-src/Zend/zend_language_parser.y"
7828
907
                              { (yyval.ast) = (yyvsp[0].ast); }
7829
907
#line 7830 "/src/php-src/Zend/zend_language_parser.c"
7830
907
    break;
7831
7832
6.45k
  case 523:
7833
6.45k
#line 1453 "/src/php-src/Zend/zend_language_parser.y"
7834
6.45k
                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LONG; }
7835
6.45k
#line 7836 "/src/php-src/Zend/zend_language_parser.c"
7836
6.45k
    break;
7837
7838
127k
  case 524:
7839
127k
#line 1454 "/src/php-src/Zend/zend_language_parser.y"
7840
127k
                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
7841
127k
#line 7842 "/src/php-src/Zend/zend_language_parser.c"
7842
127k
    break;
7843
7844
352k
  case 525:
7845
352k
#line 1455 "/src/php-src/Zend/zend_language_parser.y"
7846
352k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
7847
352k
#line 7848 "/src/php-src/Zend/zend_language_parser.c"
7848
352k
    break;
7849
7850
39.3k
  case 526:
7851
39.3k
#line 1456 "/src/php-src/Zend/zend_language_parser.y"
7852
39.3k
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
7853
39.3k
#line 7854 "/src/php-src/Zend/zend_language_parser.c"
7854
39.3k
    break;
7855
7856
617k
  case 527:
7857
617k
#line 1460 "/src/php-src/Zend/zend_language_parser.y"
7858
617k
                                { (yyval.ast) = (yyvsp[0].ast); }
7859
617k
#line 7860 "/src/php-src/Zend/zend_language_parser.c"
7860
617k
    break;
7861
7862
70.3k
  case 528:
7863
70.3k
#line 1461 "/src/php-src/Zend/zend_language_parser.y"
7864
70.3k
                                { (yyval.ast) = (yyvsp[0].ast); }
7865
70.3k
#line 7866 "/src/php-src/Zend/zend_language_parser.c"
7866
70.3k
    break;
7867
7868
2.48k
  case 529:
7869
2.48k
#line 1462 "/src/php-src/Zend/zend_language_parser.y"
7870
2.48k
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
7871
2.48k
#line 7872 "/src/php-src/Zend/zend_language_parser.c"
7872
2.48k
    break;
7873
7874
469
  case 530:
7875
469
#line 1464 "/src/php-src/Zend/zend_language_parser.y"
7876
469
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
7877
469
#line 7878 "/src/php-src/Zend/zend_language_parser.c"
7878
469
    break;
7879
7880
3.35k
  case 531:
7881
3.35k
#line 1465 "/src/php-src/Zend/zend_language_parser.y"
7882
3.35k
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
7883
3.35k
#line 7884 "/src/php-src/Zend/zend_language_parser.c"
7884
3.35k
    break;
7885
7886
515k
  case 532:
7887
515k
#line 1466 "/src/php-src/Zend/zend_language_parser.y"
7888
515k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7889
515k
#line 7890 "/src/php-src/Zend/zend_language_parser.c"
7890
515k
    break;
7891
7892
382k
  case 533:
7893
382k
#line 1467 "/src/php-src/Zend/zend_language_parser.y"
7894
382k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
7895
382k
#line 7896 "/src/php-src/Zend/zend_language_parser.c"
7896
382k
    break;
7897
7898
21.9k
  case 534:
7899
21.9k
#line 1468 "/src/php-src/Zend/zend_language_parser.y"
7900
21.9k
                                                { (yyval.ast) = (yyvsp[0].ast); }
7901
21.9k
#line 7902 "/src/php-src/Zend/zend_language_parser.c"
7902
21.9k
    break;
7903
7904
376k
  case 535:
7905
376k
#line 1472 "/src/php-src/Zend/zend_language_parser.y"
7906
376k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONST, (yyvsp[0].ast)); }
7907
376k
#line 7908 "/src/php-src/Zend/zend_language_parser.c"
7908
376k
    break;
7909
7910
420
  case 536:
7911
420
#line 1473 "/src/php-src/Zend/zend_language_parser.y"
7912
420
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_LINE); }
7913
420
#line 7914 "/src/php-src/Zend/zend_language_parser.c"
7914
420
    break;
7915
7916
5.70k
  case 537:
7917
5.70k
#line 1474 "/src/php-src/Zend/zend_language_parser.y"
7918
5.70k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FILE); }
7919
5.70k
#line 7920 "/src/php-src/Zend/zend_language_parser.c"
7920
5.70k
    break;
7921
7922
2.64k
  case 538:
7923
2.64k
#line 1475 "/src/php-src/Zend/zend_language_parser.y"
7924
2.64k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_DIR); }
7925
2.64k
#line 7926 "/src/php-src/Zend/zend_language_parser.c"
7926
2.64k
    break;
7927
7928
848
  case 539:
7929
848
#line 1476 "/src/php-src/Zend/zend_language_parser.y"
7930
848
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_TRAIT_C); }
7931
848
#line 7932 "/src/php-src/Zend/zend_language_parser.c"
7932
848
    break;
7933
7934
5.66k
  case 540:
7935
5.66k
#line 1477 "/src/php-src/Zend/zend_language_parser.y"
7936
5.66k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_METHOD_C); }
7937
5.66k
#line 7938 "/src/php-src/Zend/zend_language_parser.c"
7938
5.66k
    break;
7939
7940
1.58k
  case 541:
7941
1.58k
#line 1478 "/src/php-src/Zend/zend_language_parser.y"
7942
1.58k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FUNC_C); }
7943
1.58k
#line 7944 "/src/php-src/Zend/zend_language_parser.c"
7944
1.58k
    break;
7945
7946
414
  case 542:
7947
414
#line 1479 "/src/php-src/Zend/zend_language_parser.y"
7948
414
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_PROPERTY_C); }
7949
414
#line 7950 "/src/php-src/Zend/zend_language_parser.c"
7950
414
    break;
7951
7952
1.13k
  case 543:
7953
1.13k
#line 1480 "/src/php-src/Zend/zend_language_parser.y"
7954
1.13k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_NS_C); }
7955
1.13k
#line 7956 "/src/php-src/Zend/zend_language_parser.c"
7956
1.13k
    break;
7957
7958
1.50k
  case 544:
7959
1.50k
#line 1481 "/src/php-src/Zend/zend_language_parser.y"
7960
1.50k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_CLASS_C); }
7961
1.50k
#line 7962 "/src/php-src/Zend/zend_language_parser.c"
7962
1.50k
    break;
7963
7964
18.7k
  case 545:
7965
18.7k
#line 1486 "/src/php-src/Zend/zend_language_parser.y"
7966
18.7k
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
7967
18.7k
#line 7968 "/src/php-src/Zend/zend_language_parser.c"
7968
18.7k
    break;
7969
7970
16.8k
  case 546:
7971
16.8k
#line 1488 "/src/php-src/Zend/zend_language_parser.y"
7972
16.8k
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
7973
16.8k
#line 7974 "/src/php-src/Zend/zend_language_parser.c"
7974
16.8k
    break;
7975
7976
698
  case 547:
7977
698
#line 1490 "/src/php-src/Zend/zend_language_parser.y"
7978
698
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
7979
698
#line 7980 "/src/php-src/Zend/zend_language_parser.c"
7980
698
    break;
7981
7982
970
  case 548:
7983
970
#line 1492 "/src/php-src/Zend/zend_language_parser.y"
7984
970
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
7985
970
#line 7986 "/src/php-src/Zend/zend_language_parser.c"
7986
970
    break;
7987
7988
15.4k
  case 549:
7989
15.4k
#line 1496 "/src/php-src/Zend/zend_language_parser.y"
7990
15.4k
                        { (yyval.ast) = NULL; }
7991
15.4k
#line 7992 "/src/php-src/Zend/zend_language_parser.c"
7992
15.4k
    break;
7993
7994
100k
  case 550:
7995
100k
#line 1497 "/src/php-src/Zend/zend_language_parser.y"
7996
100k
                                { (yyval.ast) = (yyvsp[0].ast); }
7997
100k
#line 7998 "/src/php-src/Zend/zend_language_parser.c"
7998
100k
    break;
7999
8000
27.4k
  case 551:
8001
27.4k
#line 1501 "/src/php-src/Zend/zend_language_parser.y"
8002
27.4k
                                      { (yyval.ast) = (yyvsp[0].ast); }
8003
27.4k
#line 8004 "/src/php-src/Zend/zend_language_parser.c"
8004
27.4k
    break;
8005
8006
198k
  case 552:
8007
198k
#line 1505 "/src/php-src/Zend/zend_language_parser.y"
8008
198k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8009
198k
#line 8010 "/src/php-src/Zend/zend_language_parser.c"
8010
198k
    break;
8011
8012
3.15k
  case 553:
8013
3.15k
#line 1506 "/src/php-src/Zend/zend_language_parser.y"
8014
3.15k
                             {
8015
3.15k
      (yyval.ast) = (yyvsp[-1].ast);
8016
3.15k
      if ((yyval.ast)->kind == ZEND_AST_STATIC_PROP) (yyval.ast)->attr = ZEND_PARENTHESIZED_STATIC_PROP;
8017
3.15k
    }
8018
3.15k
#line 8019 "/src/php-src/Zend/zend_language_parser.c"
8019
3.15k
    break;
8020
8021
9.08k
  case 554:
8022
9.08k
#line 1510 "/src/php-src/Zend/zend_language_parser.y"
8023
9.08k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8024
9.08k
#line 8025 "/src/php-src/Zend/zend_language_parser.c"
8025
9.08k
    break;
8026
8027
15.2k
  case 555:
8028
15.2k
#line 1511 "/src/php-src/Zend/zend_language_parser.y"
8029
15.2k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8030
15.2k
#line 8031 "/src/php-src/Zend/zend_language_parser.c"
8031
15.2k
    break;
8032
8033
561
  case 556:
8034
561
#line 1512 "/src/php-src/Zend/zend_language_parser.y"
8035
561
                                                { (yyval.ast) = (yyvsp[0].ast); }
8036
561
#line 8037 "/src/php-src/Zend/zend_language_parser.c"
8037
561
    break;
8038
8039
199k
  case 557:
8040
199k
#line 1516 "/src/php-src/Zend/zend_language_parser.y"
8041
199k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8042
199k
#line 8043 "/src/php-src/Zend/zend_language_parser.c"
8043
199k
    break;
8044
8045
14.4k
  case 558:
8046
14.4k
#line 1517 "/src/php-src/Zend/zend_language_parser.y"
8047
14.4k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8048
14.4k
#line 8049 "/src/php-src/Zend/zend_language_parser.c"
8049
14.4k
    break;
8050
8051
12.1k
  case 559:
8052
12.1k
#line 1521 "/src/php-src/Zend/zend_language_parser.y"
8053
12.1k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8054
12.1k
#line 8055 "/src/php-src/Zend/zend_language_parser.c"
8055
12.1k
    break;
8056
8057
2.00k
  case 560:
8058
2.00k
#line 1522 "/src/php-src/Zend/zend_language_parser.y"
8059
2.00k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
8060
2.00k
#line 8061 "/src/php-src/Zend/zend_language_parser.c"
8061
2.00k
    break;
8062
8063
1.67k
  case 561:
8064
1.67k
#line 1523 "/src/php-src/Zend/zend_language_parser.y"
8065
1.67k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8066
1.67k
#line 8067 "/src/php-src/Zend/zend_language_parser.c"
8067
1.67k
    break;
8068
8069
372
  case 562:
8070
372
#line 1524 "/src/php-src/Zend/zend_language_parser.y"
8071
372
                                                { (yyval.ast) = (yyvsp[0].ast); }
8072
372
#line 8073 "/src/php-src/Zend/zend_language_parser.c"
8073
372
    break;
8074
8075
871k
  case 563:
8076
871k
#line 1529 "/src/php-src/Zend/zend_language_parser.y"
8077
871k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8078
871k
#line 8079 "/src/php-src/Zend/zend_language_parser.c"
8079
871k
    break;
8080
8081
96.8k
  case 564:
8082
96.8k
#line 1531 "/src/php-src/Zend/zend_language_parser.y"
8083
96.8k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8084
96.8k
#line 8085 "/src/php-src/Zend/zend_language_parser.c"
8085
96.8k
    break;
8086
8087
52.8k
  case 565:
8088
52.8k
#line 1533 "/src/php-src/Zend/zend_language_parser.y"
8089
52.8k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8090
52.8k
#line 8091 "/src/php-src/Zend/zend_language_parser.c"
8091
52.8k
    break;
8092
8093
3.48k
  case 566:
8094
3.48k
#line 1535 "/src/php-src/Zend/zend_language_parser.y"
8095
3.48k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8096
3.48k
#line 8097 "/src/php-src/Zend/zend_language_parser.c"
8097
3.48k
    break;
8098
8099
256k
  case 567:
8100
256k
#line 1536 "/src/php-src/Zend/zend_language_parser.y"
8101
256k
                              { (yyval.ast) = (yyvsp[0].ast); }
8102
256k
#line 8103 "/src/php-src/Zend/zend_language_parser.c"
8103
256k
    break;
8104
8105
1.26M
  case 568:
8106
1.26M
#line 1541 "/src/php-src/Zend/zend_language_parser.y"
8107
1.26M
                        { (yyval.ast) = (yyvsp[0].ast); }
8108
1.26M
#line 8109 "/src/php-src/Zend/zend_language_parser.c"
8109
1.26M
    break;
8110
8111
15.1k
  case 569:
8112
15.1k
#line 1543 "/src/php-src/Zend/zend_language_parser.y"
8113
15.1k
                        { (yyval.ast) = (yyvsp[0].ast); }
8114
15.1k
#line 8115 "/src/php-src/Zend/zend_language_parser.c"
8115
15.1k
    break;
8116
8117
50.4k
  case 570:
8118
50.4k
#line 1545 "/src/php-src/Zend/zend_language_parser.y"
8119
50.4k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8120
50.4k
#line 8121 "/src/php-src/Zend/zend_language_parser.c"
8121
50.4k
    break;
8122
8123
6.66k
  case 571:
8124
6.66k
#line 1547 "/src/php-src/Zend/zend_language_parser.y"
8125
6.66k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8126
6.66k
#line 8127 "/src/php-src/Zend/zend_language_parser.c"
8127
6.66k
    break;
8128
8129
888k
  case 572:
8130
888k
#line 1551 "/src/php-src/Zend/zend_language_parser.y"
8131
888k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8132
888k
#line 8133 "/src/php-src/Zend/zend_language_parser.c"
8133
888k
    break;
8134
8135
8.07k
  case 573:
8136
8.07k
#line 1552 "/src/php-src/Zend/zend_language_parser.y"
8137
8.07k
                                        { (yyval.ast) = (yyvsp[-1].ast); }
8138
8.07k
#line 8139 "/src/php-src/Zend/zend_language_parser.c"
8139
8.07k
    break;
8140
8141
125k
  case 574:
8142
125k
#line 1553 "/src/php-src/Zend/zend_language_parser.y"
8143
125k
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8144
125k
#line 8145 "/src/php-src/Zend/zend_language_parser.c"
8145
125k
    break;
8146
8147
12.0k
  case 575:
8148
12.0k
#line 1558 "/src/php-src/Zend/zend_language_parser.y"
8149
12.0k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8150
12.0k
#line 8151 "/src/php-src/Zend/zend_language_parser.c"
8151
12.0k
    break;
8152
8153
3.16k
  case 576:
8154
3.16k
#line 1560 "/src/php-src/Zend/zend_language_parser.y"
8155
3.16k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8156
3.16k
#line 8157 "/src/php-src/Zend/zend_language_parser.c"
8157
3.16k
    break;
8158
8159
1.85k
  case 577:
8160
1.85k
#line 1565 "/src/php-src/Zend/zend_language_parser.y"
8161
1.85k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8162
1.85k
#line 8163 "/src/php-src/Zend/zend_language_parser.c"
8163
1.85k
    break;
8164
8165
324
  case 578:
8166
324
#line 1567 "/src/php-src/Zend/zend_language_parser.y"
8167
324
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8168
324
#line 8169 "/src/php-src/Zend/zend_language_parser.c"
8169
324
    break;
8170
8171
222
  case 579:
8172
222
#line 1569 "/src/php-src/Zend/zend_language_parser.y"
8173
222
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8174
222
#line 8175 "/src/php-src/Zend/zend_language_parser.c"
8175
222
    break;
8176
8177
294
  case 580:
8178
294
#line 1571 "/src/php-src/Zend/zend_language_parser.y"
8179
294
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8180
294
#line 8181 "/src/php-src/Zend/zend_language_parser.c"
8181
294
    break;
8182
8183
217
  case 581:
8184
217
#line 1573 "/src/php-src/Zend/zend_language_parser.y"
8185
217
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8186
217
#line 8187 "/src/php-src/Zend/zend_language_parser.c"
8187
217
    break;
8188
8189
240
  case 582:
8190
240
#line 1575 "/src/php-src/Zend/zend_language_parser.y"
8191
240
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8192
240
#line 8193 "/src/php-src/Zend/zend_language_parser.c"
8193
240
    break;
8194
8195
15.0k
  case 583:
8196
15.0k
#line 1579 "/src/php-src/Zend/zend_language_parser.y"
8197
15.0k
                           { (yyval.ast) = (yyvsp[0].ast); }
8198
15.0k
#line 8199 "/src/php-src/Zend/zend_language_parser.c"
8199
15.0k
    break;
8200
8201
125
  case 584:
8202
125
#line 1580 "/src/php-src/Zend/zend_language_parser.y"
8203
125
                                { (yyval.ast) = (yyvsp[-1].ast); }
8204
125
#line 8205 "/src/php-src/Zend/zend_language_parser.c"
8205
125
    break;
8206
8207
1.83k
  case 585:
8208
1.83k
#line 1581 "/src/php-src/Zend/zend_language_parser.y"
8209
1.83k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8210
1.83k
#line 8211 "/src/php-src/Zend/zend_language_parser.c"
8211
1.83k
    break;
8212
8213
110k
  case 586:
8214
110k
#line 1585 "/src/php-src/Zend/zend_language_parser.y"
8215
110k
                         { (yyval.ast) = (yyvsp[0].ast); }
8216
110k
#line 8217 "/src/php-src/Zend/zend_language_parser.c"
8217
110k
    break;
8218
8219
1.49k
  case 587:
8220
1.49k
#line 1586 "/src/php-src/Zend/zend_language_parser.y"
8221
1.49k
                                { (yyval.ast) = (yyvsp[-1].ast); }
8222
1.49k
#line 8223 "/src/php-src/Zend/zend_language_parser.c"
8223
1.49k
    break;
8224
8225
2.80k
  case 588:
8226
2.80k
#line 1587 "/src/php-src/Zend/zend_language_parser.y"
8227
2.80k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8228
2.80k
#line 8229 "/src/php-src/Zend/zend_language_parser.c"
8229
2.80k
    break;
8230
8231
139k
  case 589:
8232
139k
#line 1592 "/src/php-src/Zend/zend_language_parser.y"
8233
139k
                        { /* allow single trailing comma */ (yyval.ast) = zend_ast_list_rtrim((yyvsp[0].ast)); }
8234
139k
#line 8235 "/src/php-src/Zend/zend_language_parser.c"
8235
139k
    break;
8236
8237
52.4k
  case 590:
8238
52.4k
#line 1596 "/src/php-src/Zend/zend_language_parser.y"
8239
52.4k
                       { (yyval.ast) = NULL; }
8240
52.4k
#line 8241 "/src/php-src/Zend/zend_language_parser.c"
8241
52.4k
    break;
8242
8243
555k
  case 591:
8244
555k
#line 1597 "/src/php-src/Zend/zend_language_parser.y"
8245
555k
                            { (yyval.ast) = (yyvsp[0].ast); }
8246
555k
#line 8247 "/src/php-src/Zend/zend_language_parser.c"
8247
555k
    break;
8248
8249
467k
  case 592:
8250
467k
#line 1602 "/src/php-src/Zend/zend_language_parser.y"
8251
467k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
8252
467k
#line 8253 "/src/php-src/Zend/zend_language_parser.c"
8253
467k
    break;
8254
8255
140k
  case 593:
8256
140k
#line 1604 "/src/php-src/Zend/zend_language_parser.y"
8257
140k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARRAY, (yyvsp[0].ast)); }
8258
140k
#line 8259 "/src/php-src/Zend/zend_language_parser.c"
8259
140k
    break;
8260
8261
21.2k
  case 594:
8262
21.2k
#line 1609 "/src/php-src/Zend/zend_language_parser.y"
8263
21.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), (yyvsp[-2].ast)); }
8264
21.2k
#line 8265 "/src/php-src/Zend/zend_language_parser.c"
8265
21.2k
    break;
8266
8267
527k
  case 595:
8268
527k
#line 1611 "/src/php-src/Zend/zend_language_parser.y"
8269
527k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), NULL); }
8270
527k
#line 8271 "/src/php-src/Zend/zend_language_parser.c"
8271
527k
    break;
8272
8273
645
  case 596:
8274
645
#line 1613 "/src/php-src/Zend/zend_language_parser.y"
8275
645
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), (yyvsp[-3].ast)); }
8276
645
#line 8277 "/src/php-src/Zend/zend_language_parser.c"
8277
645
    break;
8278
8279
2.75k
  case 597:
8280
2.75k
#line 1615 "/src/php-src/Zend/zend_language_parser.y"
8281
2.75k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), NULL); }
8282
2.75k
#line 8283 "/src/php-src/Zend/zend_language_parser.c"
8283
2.75k
    break;
8284
8285
2.41k
  case 598:
8286
2.41k
#line 1617 "/src/php-src/Zend/zend_language_parser.y"
8287
2.41k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
8288
2.41k
#line 8289 "/src/php-src/Zend/zend_language_parser.c"
8289
2.41k
    break;
8290
8291
101
  case 599:
8292
101
#line 1619 "/src/php-src/Zend/zend_language_parser.y"
8293
101
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8294
101
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), (yyvsp[-5].ast)); }
8295
101
#line 8296 "/src/php-src/Zend/zend_language_parser.c"
8296
101
    break;
8297
8298
516
  case 600:
8299
516
#line 1622 "/src/php-src/Zend/zend_language_parser.y"
8300
516
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8301
516
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), NULL); }
8302
516
#line 8303 "/src/php-src/Zend/zend_language_parser.c"
8303
516
    break;
8304
8305
229k
  case 601:
8306
229k
#line 1628 "/src/php-src/Zend/zend_language_parser.y"
8307
229k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8308
229k
#line 8309 "/src/php-src/Zend/zend_language_parser.c"
8309
229k
    break;
8310
8311
267k
  case 602:
8312
267k
#line 1630 "/src/php-src/Zend/zend_language_parser.y"
8313
267k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8314
267k
#line 8315 "/src/php-src/Zend/zend_language_parser.c"
8315
267k
    break;
8316
8317
15.0k
  case 603:
8318
15.0k
#line 1632 "/src/php-src/Zend/zend_language_parser.y"
8319
15.0k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ENCAPS_LIST, (yyvsp[0].ast)); }
8320
15.0k
#line 8321 "/src/php-src/Zend/zend_language_parser.c"
8321
15.0k
    break;
8322
8323
42.3k
  case 604:
8324
42.3k
#line 1634 "/src/php-src/Zend/zend_language_parser.y"
8325
42.3k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_ENCAPS_LIST, (yyvsp[-1].ast), (yyvsp[0].ast)); }
8326
42.3k
#line 8327 "/src/php-src/Zend/zend_language_parser.c"
8327
42.3k
    break;
8328
8329
208k
  case 605:
8330
208k
#line 1639 "/src/php-src/Zend/zend_language_parser.y"
8331
208k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8332
208k
#line 8333 "/src/php-src/Zend/zend_language_parser.c"
8333
208k
    break;
8334
8335
4.02k
  case 606:
8336
4.02k
#line 1641 "/src/php-src/Zend/zend_language_parser.y"
8337
4.02k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM,
8338
4.02k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-3].ast)), (yyvsp[-1].ast)); }
8339
4.02k
#line 8340 "/src/php-src/Zend/zend_language_parser.c"
8340
4.02k
    break;
8341
8342
18.2k
  case 607:
8343
18.2k
#line 1644 "/src/php-src/Zend/zend_language_parser.y"
8344
18.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP,
8345
18.2k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8346
18.2k
#line 8347 "/src/php-src/Zend/zend_language_parser.c"
8347
18.2k
    break;
8348
8349
50.3k
  case 608:
8350
50.3k
#line 1647 "/src/php-src/Zend/zend_language_parser.y"
8351
50.3k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP,
8352
50.3k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8353
50.3k
#line 8354 "/src/php-src/Zend/zend_language_parser.c"
8354
50.3k
    break;
8355
8356
3.53k
  case 609:
8357
3.53k
#line 1650 "/src/php-src/Zend/zend_language_parser.y"
8358
3.53k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY_VAR_VAR, (yyvsp[-1].ast)); }
8359
3.53k
#line 8360 "/src/php-src/Zend/zend_language_parser.c"
8360
3.53k
    break;
8361
8362
506
  case 610:
8363
506
#line 1652 "/src/php-src/Zend/zend_language_parser.y"
8364
506
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY, (yyvsp[-1].ast)); }
8365
506
#line 8366 "/src/php-src/Zend/zend_language_parser.c"
8366
506
    break;
8367
8368
320
  case 611:
8369
320
#line 1654 "/src/php-src/Zend/zend_language_parser.y"
8370
320
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_DIM, ZEND_ENCAPS_VAR_DOLLAR_CURLY,
8371
320
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-4].ast)), (yyvsp[-2].ast)); }
8372
320
#line 8373 "/src/php-src/Zend/zend_language_parser.c"
8373
320
    break;
8374
8375
1.56k
  case 612:
8376
1.56k
#line 1656 "/src/php-src/Zend/zend_language_parser.y"
8377
1.56k
                                          { (yyval.ast) = (yyvsp[-1].ast); }
8378
1.56k
#line 8379 "/src/php-src/Zend/zend_language_parser.c"
8379
1.56k
    break;
8380
8381
925
  case 613:
8382
925
#line 1660 "/src/php-src/Zend/zend_language_parser.y"
8383
925
                                                { (yyval.ast) = (yyvsp[0].ast); }
8384
925
#line 8385 "/src/php-src/Zend/zend_language_parser.c"
8385
925
    break;
8386
8387
1.70k
  case 614:
8388
1.70k
#line 1661 "/src/php-src/Zend/zend_language_parser.y"
8389
1.70k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8390
1.70k
#line 8391 "/src/php-src/Zend/zend_language_parser.c"
8391
1.70k
    break;
8392
8393
1.26k
  case 615:
8394
1.26k
#line 1662 "/src/php-src/Zend/zend_language_parser.y"
8395
1.26k
                                        { (yyval.ast) = zend_negate_num_string((yyvsp[0].ast)); }
8396
1.26k
#line 8397 "/src/php-src/Zend/zend_language_parser.c"
8397
1.26k
    break;
8398
8399
841
  case 616:
8400
841
#line 1663 "/src/php-src/Zend/zend_language_parser.y"
8401
841
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8402
841
#line 8403 "/src/php-src/Zend/zend_language_parser.c"
8403
841
    break;
8404
8405
4.13k
  case 617:
8406
4.13k
#line 1668 "/src/php-src/Zend/zend_language_parser.y"
8407
4.13k
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
8408
4.13k
#line 8409 "/src/php-src/Zend/zend_language_parser.c"
8409
4.13k
    break;
8410
8411
1.99k
  case 618:
8412
1.99k
#line 1669 "/src/php-src/Zend/zend_language_parser.y"
8413
1.99k
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_EMPTY, (yyvsp[-1].ast)); }
8414
1.99k
#line 8415 "/src/php-src/Zend/zend_language_parser.c"
8415
1.99k
    break;
8416
8417
1.45k
  case 619:
8418
1.45k
#line 1671 "/src/php-src/Zend/zend_language_parser.y"
8419
1.45k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE, (yyvsp[0].ast)); }
8420
1.45k
#line 8421 "/src/php-src/Zend/zend_language_parser.c"
8421
1.45k
    break;
8422
8423
341
  case 620:
8424
341
#line 1673 "/src/php-src/Zend/zend_language_parser.y"
8425
341
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE_ONCE, (yyvsp[0].ast)); }
8426
341
#line 8427 "/src/php-src/Zend/zend_language_parser.c"
8427
341
    break;
8428
8429
2.33k
  case 621:
8430
2.33k
#line 1675 "/src/php-src/Zend/zend_language_parser.y"
8431
2.33k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_EVAL, (yyvsp[-1].ast)); }
8432
2.33k
#line 8433 "/src/php-src/Zend/zend_language_parser.c"
8433
2.33k
    break;
8434
8435
5.77k
  case 622:
8436
5.77k
#line 1677 "/src/php-src/Zend/zend_language_parser.y"
8437
5.77k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE, (yyvsp[0].ast)); }
8438
5.77k
#line 8439 "/src/php-src/Zend/zend_language_parser.c"
8439
5.77k
    break;
8440
8441
554
  case 623:
8442
554
#line 1679 "/src/php-src/Zend/zend_language_parser.y"
8443
554
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE_ONCE, (yyvsp[0].ast)); }
8444
554
#line 8445 "/src/php-src/Zend/zend_language_parser.c"
8445
554
    break;
8446
8447
4.35k
  case 624:
8448
4.35k
#line 1683 "/src/php-src/Zend/zend_language_parser.y"
8449
4.35k
                               { (yyval.ast) = (yyvsp[0].ast); }
8450
4.35k
#line 8451 "/src/php-src/Zend/zend_language_parser.c"
8451
4.35k
    break;
8452
8453
5.39k
  case 625:
8454
5.39k
#line 1685 "/src/php-src/Zend/zend_language_parser.y"
8455
5.39k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8456
5.39k
#line 8457 "/src/php-src/Zend/zend_language_parser.c"
8457
5.39k
    break;
8458
8459
9.75k
  case 626:
8460
9.75k
#line 1689 "/src/php-src/Zend/zend_language_parser.y"
8461
9.75k
                     { (yyval.ast) = zend_ast_create(ZEND_AST_ISSET, (yyvsp[0].ast)); }
8462
9.75k
#line 8463 "/src/php-src/Zend/zend_language_parser.c"
8463
9.75k
    break;
8464
8465
8466
0
#line 8467 "/src/php-src/Zend/zend_language_parser.c"
8467
8468
401k
      default: break;
8469
24.1M
    }
8470
  /* User semantic actions sometimes alter yychar, and that requires
8471
     that yytoken be updated with the new translation.  We take the
8472
     approach of translating immediately before every use of yytoken.
8473
     One alternative is translating here after every semantic action,
8474
     but that translation would be missed if the semantic action invokes
8475
     YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
8476
     if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
8477
     incorrect destructor might then be invoked immediately.  In the
8478
     case of YYERROR or YYBACKUP, subsequent parser actions might lead
8479
     to an incorrect destructor call or verbose syntax error message
8480
     before the lookahead is translated.  */
8481
24.1M
  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
8482
8483
24.1M
  YYPOPSTACK (yylen);
8484
24.1M
  yylen = 0;
8485
24.1M
  YY_STACK_PRINT (yyss, yyssp);
8486
8487
24.1M
  *++yyvsp = yyval;
8488
8489
  /* Now 'shift' the result of the reduction.  Determine what state
8490
     that goes to, based on the state we popped back to and the rule
8491
     number reduced by.  */
8492
24.1M
  {
8493
24.1M
    const int yylhs = yyr1[yyn] - YYNTOKENS;
8494
24.1M
    const int yyi = yypgoto[yylhs] + *yyssp;
8495
24.1M
    yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp
8496
24.1M
               ? yytable[yyi]
8497
24.1M
               : yydefgoto[yylhs]);
8498
24.1M
  }
8499
8500
24.1M
  goto yynewstate;
8501
8502
8503
/*--------------------------------------.
8504
| yyerrlab -- here on detecting error.  |
8505
`--------------------------------------*/
8506
43.6k
yyerrlab:
8507
  /* Make sure we have latest lookahead translation.  See comments at
8508
     user semantic actions for why this is necessary.  */
8509
43.6k
  yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
8510
8511
  /* If not already recovering from an error, report this error.  */
8512
43.6k
  if (!yyerrstatus)
8513
43.6k
    {
8514
43.6k
      ++yynerrs;
8515
#if ! YYERROR_VERBOSE
8516
      yyerror (YY_("syntax error"));
8517
#else
8518
43.6k
# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
8519
43.6k
                                        yyssp, yytoken)
8520
43.6k
      {
8521
43.6k
        char const *yymsgp = YY_("syntax error");
8522
43.6k
        int yysyntax_error_status;
8523
43.6k
        yysyntax_error_status = YYSYNTAX_ERROR;
8524
43.6k
        if (yysyntax_error_status == 0)
8525
43.6k
          yymsgp = yymsg;
8526
2
        else if (yysyntax_error_status == 1)
8527
2
          {
8528
2
            if (yymsg != yymsgbuf)
8529
0
              YYSTACK_FREE (yymsg);
8530
2
            yymsg = YY_CAST (char *, YYSTACK_ALLOC (YY_CAST (YYSIZE_T, yymsg_alloc)));
8531
2
            if (!yymsg)
8532
0
              {
8533
0
                yymsg = yymsgbuf;
8534
0
                yymsg_alloc = sizeof yymsgbuf;
8535
0
                yysyntax_error_status = 2;
8536
0
              }
8537
2
            else
8538
2
              {
8539
2
                yysyntax_error_status = YYSYNTAX_ERROR;
8540
2
                yymsgp = yymsg;
8541
2
              }
8542
2
          }
8543
43.6k
        yyerror (yymsgp);
8544
43.6k
        if (yysyntax_error_status == 2)
8545
0
          goto yyexhaustedlab;
8546
43.6k
      }
8547
43.6k
# undef YYSYNTAX_ERROR
8548
43.6k
#endif
8549
43.6k
    }
8550
8551
8552
8553
43.6k
  if (yyerrstatus == 3)
8554
0
    {
8555
      /* If just tried and failed to reuse lookahead token after an
8556
         error, discard it.  */
8557
8558
0
      if (yychar <= YYEOF)
8559
0
        {
8560
          /* Return failure if at end of input.  */
8561
0
          if (yychar == YYEOF)
8562
0
            YYABORT;
8563
0
        }
8564
0
      else
8565
0
        {
8566
0
          yydestruct ("Error: discarding",
8567
0
                      yytoken, &yylval);
8568
0
          yychar = YYEMPTY;
8569
0
        }
8570
0
    }
8571
8572
  /* Else will try to reuse lookahead token after shifting the error
8573
     token.  */
8574
43.6k
  goto yyerrlab1;
8575
8576
8577
/*---------------------------------------------------.
8578
| yyerrorlab -- error raised explicitly by YYERROR.  |
8579
`---------------------------------------------------*/
8580
43.6k
yyerrorlab:
8581
  /* Pacify compilers when the user code never invokes YYERROR and the
8582
     label yyerrorlab therefore never appears in user code.  */
8583
289
  if (0)
8584
0
    YYERROR;
8585
8586
  /* Do not reclaim the symbols of the rule whose action triggered
8587
     this YYERROR.  */
8588
289
  YYPOPSTACK (yylen);
8589
289
  yylen = 0;
8590
289
  YY_STACK_PRINT (yyss, yyssp);
8591
289
  yystate = *yyssp;
8592
289
  goto yyerrlab1;
8593
8594
8595
/*-------------------------------------------------------------.
8596
| yyerrlab1 -- common code for both syntax error and YYERROR.  |
8597
`-------------------------------------------------------------*/
8598
43.9k
yyerrlab1:
8599
43.9k
  yyerrstatus = 3;      /* Each real token shifted decrements this.  */
8600
8601
43.9k
  for (;;)
8602
699k
    {
8603
699k
      yyn = yypact[yystate];
8604
699k
      if (!yypact_value_is_default (yyn))
8605
610k
        {
8606
610k
          yyn += YYTERROR;
8607
610k
          if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
8608
0
            {
8609
0
              yyn = yytable[yyn];
8610
0
              if (0 < yyn)
8611
0
                break;
8612
0
            }
8613
610k
        }
8614
8615
      /* Pop the current state because it cannot handle the error token.  */
8616
699k
      if (yyssp == yyss)
8617
43.9k
        YYABORT;
8618
8619
8620
655k
      yydestruct ("Error: popping",
8621
655k
                  yystos[yystate], yyvsp);
8622
655k
      YYPOPSTACK (1);
8623
655k
      yystate = *yyssp;
8624
655k
      YY_STACK_PRINT (yyss, yyssp);
8625
655k
    }
8626
8627
0
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
8628
0
  *++yyvsp = yylval;
8629
0
  YY_IGNORE_MAYBE_UNINITIALIZED_END
8630
8631
8632
  /* Shift the error token.  */
8633
0
  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
8634
8635
0
  yystate = yyn;
8636
0
  goto yynewstate;
8637
8638
8639
/*-------------------------------------.
8640
| yyacceptlab -- YYACCEPT comes here.  |
8641
`-------------------------------------*/
8642
103k
yyacceptlab:
8643
103k
  yyresult = 0;
8644
103k
  goto yyreturn;
8645
8646
8647
/*-----------------------------------.
8648
| yyabortlab -- YYABORT comes here.  |
8649
`-----------------------------------*/
8650
43.9k
yyabortlab:
8651
43.9k
  yyresult = 1;
8652
43.9k
  goto yyreturn;
8653
8654
8655
0
#if !defined yyoverflow || YYERROR_VERBOSE
8656
/*-------------------------------------------------.
8657
| yyexhaustedlab -- memory exhaustion comes here.  |
8658
`-------------------------------------------------*/
8659
1
yyexhaustedlab:
8660
1
  yyerror (YY_("memory exhausted"));
8661
1
  yyresult = 2;
8662
  /* Fall through.  */
8663
1
#endif
8664
8665
8666
/*-----------------------------------------------------.
8667
| yyreturn -- parsing is finished, return the result.  |
8668
`-----------------------------------------------------*/
8669
147k
yyreturn:
8670
147k
  if (yychar != YYEMPTY)
8671
43.8k
    {
8672
      /* Make sure we have latest lookahead translation.  See comments at
8673
         user semantic actions for why this is necessary.  */
8674
43.8k
      yytoken = YYTRANSLATE (yychar);
8675
43.8k
      yydestruct ("Cleanup: discarding lookahead",
8676
43.8k
                  yytoken, &yylval);
8677
43.8k
    }
8678
  /* Do not reclaim the symbols of the rule whose action triggered
8679
     this YYABORT or YYACCEPT.  */
8680
147k
  YYPOPSTACK (yylen);
8681
147k
  YY_STACK_PRINT (yyss, yyssp);
8682
365k
  while (yyssp != yyss)
8683
218k
    {
8684
218k
      yydestruct ("Cleanup: popping",
8685
218k
                  yystos[+*yyssp], yyvsp);
8686
218k
      YYPOPSTACK (1);
8687
218k
    }
8688
147k
#ifndef yyoverflow
8689
147k
  if (yyss != yyssa)
8690
1.01k
    YYSTACK_FREE (yyss);
8691
147k
#endif
8692
147k
#if YYERROR_VERBOSE
8693
147k
  if (yymsg != yymsgbuf)
8694
2
    YYSTACK_FREE (yymsg);
8695
147k
#endif
8696
147k
  return yyresult;
8697
1
}
8698
#line 1692 "/src/php-src/Zend/zend_language_parser.y"
8699
8700
8701
/* Over-ride Bison formatting routine to give better token descriptions.
8702
   Copy to YYRES the contents of YYSTR for use in yyerror.
8703
   YYSTR is taken from yytname, from the %token declaration.
8704
   If YYRES is null, do not copy; instead, return the length of what
8705
   the result would have been.  */
8706
static YYSIZE_T zend_yytnamerr(char *yyres, const char *yystr)
8707
257k
{
8708
257k
  const char *toktype = yystr;
8709
257k
  size_t toktype_len = strlen(toktype);
8710
8711
  /* CG(parse_error) states:
8712
   * 0 => yyres = NULL, yystr is the unexpected token
8713
   * 1 => yyres = NULL, yystr is one of the expected tokens
8714
   * 2 => yyres != NULL, yystr is the unexpected token
8715
   * 3 => yyres != NULL, yystr is one of the expected tokens
8716
   */
8717
257k
  if (yyres && CG(parse_error) < 2) {
8718
43.6k
    CG(parse_error) = 2;
8719
43.6k
  }
8720
8721
257k
  if (CG(parse_error) % 2 == 0) {
8722
    /* The unexpected token */
8723
87.3k
    char buffer[120];
8724
87.3k
    const unsigned char *tokcontent, *tokcontent_end;
8725
87.3k
    size_t tokcontent_len;
8726
8727
87.3k
    CG(parse_error)++;
8728
8729
87.3k
    if (LANG_SCNG(yy_text)[0] == 0 &&
8730
87.3k
      LANG_SCNG(yy_leng) == 1 &&
8731
87.3k
      strcmp(toktype, "\"end of file\"") == 0) {
8732
15.4k
      if (yyres) {
8733
7.73k
        yystpcpy(yyres, "end of file");
8734
7.73k
      }
8735
15.4k
      return sizeof("end of file")-1;
8736
15.4k
    }
8737
8738
    /* Prevent the backslash getting doubled in the output (eugh) */
8739
71.8k
    if (strcmp(toktype, "\"'\\\\'\"") == 0) {
8740
932
      if (yyres) {
8741
466
        yystpcpy(yyres, "token \"\\\"");
8742
466
      }
8743
932
      return sizeof("token \"\\\"")-1;
8744
932
    }
8745
8746
    /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
8747
70.9k
    if (strcmp(toktype, "\"amp\"") == 0) {
8748
2.32k
      if (yyres) {
8749
1.16k
        yystpcpy(yyres, "token \"&\"");
8750
1.16k
      }
8751
2.32k
      return sizeof("token \"&\"")-1;
8752
2.32k
    }
8753
8754
    /* Avoid unreadable """ */
8755
    /* "'" would theoretically be just as bad, but is never currently parsed as a separate token */
8756
68.6k
    if (strcmp(toktype, "'\"'") == 0) {
8757
292
      if (yyres) {
8758
146
        yystpcpy(yyres, "double-quote mark");
8759
146
      }
8760
292
      return sizeof("double-quote mark")-1;
8761
292
    }
8762
8763
    /* Strip off the outer quote marks */
8764
68.3k
    if (toktype_len >= 2 && *toktype == '"') {
8765
31.8k
      toktype++;
8766
31.8k
      toktype_len -= 2;
8767
31.8k
    }
8768
8769
    /* If the token always has one form, the %token line should have a single-quoted name */
8770
    /* The parser rules also include single-character un-named tokens which will be single-quoted here */
8771
    /* We re-format this with double quotes here to ensure everything's consistent */
8772
68.3k
    if (toktype_len > 0 && *toktype == '\'') {
8773
32.7k
      if (yyres) {
8774
16.3k
        snprintf(buffer, sizeof(buffer), "token \"%.*s\"", (int)toktype_len-2, toktype+1);
8775
16.3k
        yystpcpy(yyres, buffer);
8776
16.3k
      }
8777
32.7k
      return toktype_len + sizeof("token ")-1;
8778
32.7k
    }
8779
8780
    /* Fetch the content of the last seen token from global lexer state */
8781
35.5k
    tokcontent = LANG_SCNG(yy_text);
8782
35.5k
    tokcontent_len = LANG_SCNG(yy_leng);
8783
8784
    /* For T_BAD_CHARACTER, the content probably won't be a printable char */
8785
    /* Also, "unexpected invalid character" sounds a bit redundant */
8786
35.5k
    if (tokcontent_len == 1 && strcmp(yystr, "\"invalid character\"") == 0) {
8787
5.75k
      if (yyres) {
8788
2.87k
        snprintf(buffer, sizeof(buffer), "character 0x%02hhX", *tokcontent);
8789
2.87k
        yystpcpy(yyres, buffer);
8790
2.87k
      }
8791
5.75k
      return sizeof("character 0x00")-1;
8792
5.75k
    }
8793
8794
    /* Truncate at line end to avoid messing up log formats */
8795
29.8k
    tokcontent_end = memchr(tokcontent, '\n', tokcontent_len);
8796
29.8k
    if (tokcontent_end != NULL) {
8797
1.86k
      tokcontent_len = (tokcontent_end - tokcontent);
8798
1.86k
    }
8799
8800
    /* Try to be helpful about what kind of string was found, before stripping the quotes */
8801
29.8k
    if (tokcontent_len > 0 && strcmp(yystr, "\"quoted string\"") == 0) {
8802
450
      if (*tokcontent == '"') {
8803
116
        toktype = "double-quoted string";
8804
116
        toktype_len = sizeof("double-quoted string")-1;
8805
116
      }
8806
334
      else if (*tokcontent == '\'') {
8807
314
        toktype = "single-quoted string";
8808
314
        toktype_len = sizeof("single-quoted string")-1;
8809
314
      }
8810
450
    }
8811
8812
    /* For quoted strings, strip off another layer of quotes to avoid putting quotes inside quotes */
8813
29.8k
    if (tokcontent_len > 0 && (*tokcontent == '\'' || *tokcontent=='"'))  {
8814
848
      tokcontent++;
8815
848
      tokcontent_len--;
8816
848
    }
8817
29.8k
    if (tokcontent_len > 0 && (tokcontent[tokcontent_len-1] == '\'' || tokcontent[tokcontent_len-1] == '"'))  {
8818
422
      tokcontent_len--;
8819
422
    }
8820
8821
    /* Truncate to 30 characters and add a ... */
8822
29.8k
    if (tokcontent_len > 30 + sizeof("...")-1) {
8823
250
      if (yyres) {
8824
125
        snprintf(buffer, sizeof(buffer), "%.*s \"%.*s...\"", (int)toktype_len, toktype, 30, tokcontent);
8825
125
        yystpcpy(yyres, buffer);
8826
125
      }
8827
250
      return toktype_len + 30 + sizeof(" \"...\"")-1;
8828
250
    }
8829
8830
29.5k
    if (yyres) {
8831
14.7k
      snprintf(buffer, sizeof(buffer), "%.*s \"%.*s\"", (int)toktype_len, toktype, (int)tokcontent_len, tokcontent);
8832
14.7k
      yystpcpy(yyres, buffer);
8833
14.7k
    }
8834
29.5k
    return toktype_len + tokcontent_len + sizeof(" \"\"")-1;
8835
29.8k
  }
8836
8837
  /* One of the expected tokens */
8838
8839
  /* Prevent the backslash getting doubled in the output (eugh) */
8840
170k
  if (strcmp(toktype, "\"'\\\\'\"") == 0) {
8841
0
    if (yyres) {
8842
0
      yystpcpy(yyres, "\"\\\"");
8843
0
    }
8844
0
    return sizeof("\"\\\"")-1;
8845
0
  }
8846
8847
  /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
8848
170k
  if (strcmp(toktype, "\"amp\"") == 0) {
8849
58
    if (yyres) {
8850
26
      yystpcpy(yyres, "token \"&\"");
8851
26
    }
8852
58
    return sizeof("token \"&\"")-1;
8853
58
  }
8854
8855
  /* Strip off the outer quote marks */
8856
170k
  if (toktype_len >= 2 && *toktype == '"') {
8857
138k
    toktype++;
8858
138k
    toktype_len -= 2;
8859
138k
  }
8860
8861
170k
  if (yyres) {
8862
18.8k
    YYSIZE_T yyn = 0;
8863
8864
124k
    for (; yyn < toktype_len; ++yyn) {
8865
      /* Replace single quotes with double for consistency */
8866
105k
      if (toktype[yyn] == '\'') {
8867
24.4k
        yyres[yyn] = '"';
8868
24.4k
      }
8869
81.4k
      else {
8870
81.4k
        yyres[yyn] = toktype[yyn];
8871
81.4k
      }
8872
105k
    }
8873
18.8k
    yyres[toktype_len] = '\0';
8874
18.8k
  }
8875
8876
170k
  return toktype_len;
8877
170k
}