Coverage Report

Created: 2026-06-13 07:01

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/php-src/Zend/zend_language_parser.c
Line
Count
Source
1
/* A Bison parser, made by GNU Bison 3.5.1.  */
2
3
/* Bison implementation for Yacc-like parsers in C
4
5
   Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2020 Free Software Foundation,
6
   Inc.
7
8
   This program is free software: you can redistribute it and/or modify
9
   it under the terms of the GNU General Public License as published by
10
   the Free Software Foundation, either version 3 of the License, or
11
   (at your option) any later version.
12
13
   This program is distributed in the hope that it will be useful,
14
   but WITHOUT ANY WARRANTY; without even the implied warranty of
15
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
   GNU General Public License for more details.
17
18
   You should have received a copy of the GNU General Public License
19
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
20
21
/* As a special exception, you may create a larger work that contains
22
   part or all of the Bison parser skeleton and distribute that work
23
   under terms of your choice, so long as that work isn't itself a
24
   parser generator using the skeleton or a modified version thereof
25
   as a parser skeleton.  Alternatively, if you modify or redistribute
26
   the parser skeleton itself, you may (at your option) remove this
27
   special exception, which will cause the skeleton and the resulting
28
   Bison output files to be licensed under the GNU General Public
29
   License without this special exception.
30
31
   This special exception was added by the Free Software Foundation in
32
   version 2.2 of Bison.  */
33
34
/* C LALR(1) parser skeleton written by Richard Stallman, by
35
   simplifying the original so-called "semantic" parser.  */
36
37
/* All symbols defined below should begin with yy or YY, to avoid
38
   infringing on user name space.  This should be done even for local
39
   variables, as they might otherwise be expanded by user macros.
40
   There are some unavoidable exceptions within include files to
41
   define necessary library symbols; they are noted "INFRINGES ON
42
   USER NAME SPACE" below.  */
43
44
/* Undocumented macros, especially those whose name start with YY_,
45
   are private implementation details.  Do not rely on them.  */
46
47
/* Identify Bison output.  */
48
#define YYBISON 1
49
50
/* Bison version.  */
51
#define YYBISON_VERSION "3.5.1"
52
53
/* Skeleton name.  */
54
#define YYSKELETON_NAME "yacc.c"
55
56
/* Pure parsers.  */
57
#define YYPURE 2
58
59
/* Push parsers.  */
60
#define YYPUSH 0
61
62
/* Pull parsers.  */
63
#define YYPULL 1
64
65
/* "%code top" blocks.  */
66
#line 21 "/src/php-src/Zend/zend_language_parser.y"
67
68
#include "zend.h"
69
#include "zend_list.h"
70
#include "zend_globals.h"
71
#include "zend_API.h"
72
#include "zend_constants.h"
73
#include "zend_language_scanner.h"
74
#include "zend_exceptions.h"
75
76
11.7k
#define YYSIZE_T size_t
77
178k
#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
565k
#define YYSTYPE         ZENDSTYPE
88
/* Substitute the variable and function names.  */
89
#define yyparse         zendparse
90
9.84M
#define yylex           zendlex
91
30.1k
#define yyerror         zenderror
92
#define yydebug         zenddebug
93
143k
#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
30.7M
#   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
166k
#   define YY_NULLPTR ((void*)0)
114
#  endif
115
# endif
116
117
/* Enabling verbose error messages.  */
118
#ifdef YYERROR_VERBOSE
119
# undef YYERROR_VERBOSE
120
# define YYERROR_VERBOSE 1
121
#else
122
# define YYERROR_VERBOSE 1
123
#endif
124
125
/* Use api.header.include to #include this header
126
   instead of duplicating it here.  */
127
#ifndef YY_ZEND_SRC_PHP_SRC_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED
128
# define YY_ZEND_SRC_PHP_SRC_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED
129
/* Debug traces.  */
130
#ifndef ZENDDEBUG
131
# if defined YYDEBUG
132
#if YYDEBUG
133
#   define ZENDDEBUG 1
134
#  else
135
#   define ZENDDEBUG 0
136
#  endif
137
# else /* ! defined YYDEBUG */
138
#  define ZENDDEBUG 0
139
# endif /* ! defined YYDEBUG */
140
#endif  /* ! defined ZENDDEBUG */
141
#if ZENDDEBUG
142
extern int zenddebug;
143
#endif
144
/* "%code requires" blocks.  */
145
#line 40 "/src/php-src/Zend/zend_language_parser.y"
146
147
#include "zend_compile.h"
148
149
#line 150 "/src/php-src/Zend/zend_language_parser.c"
150
151
/* Token type.  */
152
#ifndef ZENDTOKENTYPE
153
# define ZENDTOKENTYPE
154
  enum zendtokentype
155
  {
156
    END = 0,
157
    T_THROW = 258,
158
    PREC_ARROW_FUNCTION = 259,
159
    T_INCLUDE = 260,
160
    T_INCLUDE_ONCE = 261,
161
    T_REQUIRE = 262,
162
    T_REQUIRE_ONCE = 263,
163
    T_LOGICAL_OR = 264,
164
    T_LOGICAL_XOR = 265,
165
    T_LOGICAL_AND = 266,
166
    T_PRINT = 267,
167
    T_YIELD = 268,
168
    T_DOUBLE_ARROW = 269,
169
    T_YIELD_FROM = 270,
170
    T_PLUS_EQUAL = 271,
171
    T_MINUS_EQUAL = 272,
172
    T_MUL_EQUAL = 273,
173
    T_DIV_EQUAL = 274,
174
    T_CONCAT_EQUAL = 275,
175
    T_MOD_EQUAL = 276,
176
    T_AND_EQUAL = 277,
177
    T_OR_EQUAL = 278,
178
    T_XOR_EQUAL = 279,
179
    T_SL_EQUAL = 280,
180
    T_SR_EQUAL = 281,
181
    T_POW_EQUAL = 282,
182
    T_COALESCE_EQUAL = 283,
183
    T_COALESCE = 284,
184
    T_BOOLEAN_OR = 285,
185
    T_BOOLEAN_AND = 286,
186
    T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG = 287,
187
    T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG = 288,
188
    T_IS_EQUAL = 289,
189
    T_IS_NOT_EQUAL = 290,
190
    T_IS_IDENTICAL = 291,
191
    T_IS_NOT_IDENTICAL = 292,
192
    T_SPACESHIP = 293,
193
    T_IS_SMALLER_OR_EQUAL = 294,
194
    T_IS_GREATER_OR_EQUAL = 295,
195
    T_PIPE = 296,
196
    T_SL = 297,
197
    T_SR = 298,
198
    T_INSTANCEOF = 299,
199
    T_INT_CAST = 300,
200
    T_DOUBLE_CAST = 301,
201
    T_STRING_CAST = 302,
202
    T_ARRAY_CAST = 303,
203
    T_OBJECT_CAST = 304,
204
    T_BOOL_CAST = 305,
205
    T_UNSET_CAST = 306,
206
    T_POW = 307,
207
    T_CLONE = 308,
208
    T_NOELSE = 309,
209
    T_ELSEIF = 310,
210
    T_ELSE = 311,
211
    T_LNUMBER = 312,
212
    T_DNUMBER = 313,
213
    T_STRING = 314,
214
    T_NAME_FULLY_QUALIFIED = 315,
215
    T_NAME_RELATIVE = 316,
216
    T_NAME_QUALIFIED = 317,
217
    T_VARIABLE = 318,
218
    T_INLINE_HTML = 319,
219
    T_ENCAPSED_AND_WHITESPACE = 320,
220
    T_CONSTANT_ENCAPSED_STRING = 321,
221
    T_STRING_VARNAME = 322,
222
    T_NUM_STRING = 323,
223
    T_EVAL = 324,
224
    T_NEW = 325,
225
    T_EXIT = 326,
226
    T_IF = 327,
227
    T_ENDIF = 328,
228
    T_ECHO = 329,
229
    T_DO = 330,
230
    T_WHILE = 331,
231
    T_ENDWHILE = 332,
232
    T_FOR = 333,
233
    T_ENDFOR = 334,
234
    T_FOREACH = 335,
235
    T_ENDFOREACH = 336,
236
    T_DECLARE = 337,
237
    T_ENDDECLARE = 338,
238
    T_AS = 339,
239
    T_SWITCH = 340,
240
    T_ENDSWITCH = 341,
241
    T_CASE = 342,
242
    T_DEFAULT = 343,
243
    T_MATCH = 344,
244
    T_BREAK = 345,
245
    T_CONTINUE = 346,
246
    T_GOTO = 347,
247
    T_FUNCTION = 348,
248
    T_FN = 349,
249
    T_CONST = 350,
250
    T_RETURN = 351,
251
    T_TRY = 352,
252
    T_CATCH = 353,
253
    T_FINALLY = 354,
254
    T_USE = 355,
255
    T_INSTEADOF = 356,
256
    T_GLOBAL = 357,
257
    T_STATIC = 358,
258
    T_ABSTRACT = 359,
259
    T_FINAL = 360,
260
    T_PRIVATE = 361,
261
    T_PROTECTED = 362,
262
    T_PUBLIC = 363,
263
    T_PRIVATE_SET = 364,
264
    T_PROTECTED_SET = 365,
265
    T_PUBLIC_SET = 366,
266
    T_READONLY = 367,
267
    T_VAR = 368,
268
    T_UNSET = 369,
269
    T_ISSET = 370,
270
    T_EMPTY = 371,
271
    T_HALT_COMPILER = 372,
272
    T_CLASS = 373,
273
    T_TRAIT = 374,
274
    T_INTERFACE = 375,
275
    T_ENUM = 376,
276
    T_EXTENDS = 377,
277
    T_IMPLEMENTS = 378,
278
    T_NAMESPACE = 379,
279
    T_LIST = 380,
280
    T_ARRAY = 381,
281
    T_CALLABLE = 382,
282
    T_LINE = 383,
283
    T_FILE = 384,
284
    T_DIR = 385,
285
    T_CLASS_C = 386,
286
    T_TRAIT_C = 387,
287
    T_METHOD_C = 388,
288
    T_FUNC_C = 389,
289
    T_PROPERTY_C = 390,
290
    T_NS_C = 391,
291
    T_ATTRIBUTE = 392,
292
    T_INC = 393,
293
    T_DEC = 394,
294
    T_VOID_CAST = 395,
295
    T_OBJECT_OPERATOR = 396,
296
    T_NULLSAFE_OBJECT_OPERATOR = 397,
297
    T_COMMENT = 398,
298
    T_DOC_COMMENT = 399,
299
    T_OPEN_TAG = 400,
300
    T_OPEN_TAG_WITH_ECHO = 401,
301
    T_CLOSE_TAG = 402,
302
    T_WHITESPACE = 403,
303
    T_START_HEREDOC = 404,
304
    T_END_HEREDOC = 405,
305
    T_DOLLAR_OPEN_CURLY_BRACES = 406,
306
    T_CURLY_OPEN = 407,
307
    T_PAAMAYIM_NEKUDOTAYIM = 408,
308
    T_NS_SEPARATOR = 409,
309
    T_ELLIPSIS = 410,
310
    T_BAD_CHARACTER = 411,
311
    T_ERROR = 412
312
  };
313
#endif
314
315
/* Value type.  */
316
#if ! defined ZENDSTYPE && ! defined ZENDSTYPE_IS_DECLARED
317
typedef zend_parser_stack_elem ZENDSTYPE;
318
# define ZENDSTYPE_IS_TRIVIAL 1
319
# define ZENDSTYPE_IS_DECLARED 1
320
#endif
321
322
323
324
ZEND_API int zendparse (void);
325
326
#endif /* !YY_ZEND_SRC_PHP_SRC_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED  */
327
328
329
330
#ifdef short
331
# undef short
332
#endif
333
334
/* On compilers that do not define __PTRDIFF_MAX__ etc., make sure
335
   <limits.h> and (if available) <stdint.h> are included
336
   so that the code can choose integer types of a good width.  */
337
338
#ifndef __PTRDIFF_MAX__
339
# include <limits.h> /* INFRINGES ON USER NAME SPACE */
340
# if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
341
#  include <stdint.h> /* INFRINGES ON USER NAME SPACE */
342
#  define YY_STDINT_H
343
# endif
344
#endif
345
346
/* Narrow types that promote to a signed type and that can represent a
347
   signed or unsigned integer of at least N bits.  In tables they can
348
   save space and decrease cache pressure.  Promoting to a signed type
349
   helps avoid bugs in integer arithmetic.  */
350
351
#ifdef __INT_LEAST8_MAX__
352
typedef __INT_LEAST8_TYPE__ yytype_int8;
353
#elif defined YY_STDINT_H
354
typedef int_least8_t yytype_int8;
355
#else
356
typedef signed char yytype_int8;
357
#endif
358
359
#ifdef __INT_LEAST16_MAX__
360
typedef __INT_LEAST16_TYPE__ yytype_int16;
361
#elif defined YY_STDINT_H
362
typedef int_least16_t yytype_int16;
363
#else
364
typedef short yytype_int16;
365
#endif
366
367
#if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__
368
typedef __UINT_LEAST8_TYPE__ yytype_uint8;
369
#elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \
370
       && UINT_LEAST8_MAX <= INT_MAX)
371
typedef uint_least8_t yytype_uint8;
372
#elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX
373
typedef unsigned char yytype_uint8;
374
#else
375
typedef short yytype_uint8;
376
#endif
377
378
#if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__
379
typedef __UINT_LEAST16_TYPE__ yytype_uint16;
380
#elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \
381
       && UINT_LEAST16_MAX <= INT_MAX)
382
typedef uint_least16_t yytype_uint16;
383
#elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX
384
typedef unsigned short yytype_uint16;
385
#else
386
typedef int yytype_uint16;
387
#endif
388
389
#ifndef YYPTRDIFF_T
390
# if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__
391
428k
#  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
136k
  YY_CAST (YYPTRDIFF_T,                                 \
420
           (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1)  \
421
            ? YYPTRDIFF_MAXIMUM                         \
422
            : YY_CAST (YYSIZE_T, -1)))
423
424
11.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
30.1k
#  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
769k
# 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
226k
# 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
30.6M
#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
1.98k
#  define YYSTACK_FREE YYFREE
542
#  ifndef YYSTACK_ALLOC_MAXIMUM
543
136k
#   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
1.98k
#   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
3.95k
# 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
3.95k
    do                                                                  \
598
3.95k
      {                                                                 \
599
3.95k
        YYPTRDIFF_T yynewbytes;                                         \
600
3.95k
        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
601
3.95k
        Stack = &yyptr->Stack_alloc;                                    \
602
3.95k
        yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
603
3.95k
        yyptr += yynewbytes / YYSIZEOF (*yyptr);                        \
604
3.95k
      }                                                                 \
605
3.95k
    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
3.95k
      __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
30.6M
#define YYFINAL  3
631
/* YYLAST -- Last index in YYTABLE.  */
632
52.5M
#define YYLAST   10430
633
634
/* YYNTOKENS -- Number of terminals.  */
635
20.7M
#define YYNTOKENS  185
636
/* YYNNTS -- Number of nonterminals.  */
637
#define YYNNTS  189
638
/* YYNRULES -- Number of rules.  */
639
#define YYNRULES  636
640
/* YYNSTATES -- Number of states.  */
641
#define YYNSTATES  1204
642
643
0
#define YYUNDEFTOK  2
644
17.7M
#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
17.7M
  (0 <= (YYX) && (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
651
652
/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
653
   as returned by yylex.  */
654
static const yytype_uint8 yytranslate[] =
655
{
656
       0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
657
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
658
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
659
       2,     2,     2,    57,   183,     2,   184,    56,     2,     2,
660
     177,   178,    54,    52,   174,    53,    49,    55,     2,     2,
661
       2,     2,     2,     2,     2,     2,     2,     2,    31,   176,
662
      44,    16,    46,    30,    67,     2,     2,     2,     2,     2,
663
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
664
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
665
       2,   181,     2,   175,    36,     2,   182,     2,     2,     2,
666
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
667
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
668
       2,     2,     2,   179,    35,   180,    59,     2,     2,     2,
669
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
670
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
671
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
672
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
673
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
674
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
675
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
676
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
677
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
678
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
679
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
680
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
681
       2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
682
       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
683
      15,    17,    18,    19,    20,    21,    22,    23,    24,    25,
684
      26,    27,    28,    29,    32,    33,    34,    37,    38,    39,
685
      40,    41,    42,    43,    45,    47,    48,    50,    51,    58,
686
      60,    61,    62,    63,    64,    65,    66,    68,    69,    70,
687
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
688
      81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
689
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
690
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
691
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
692
     121,   122,   123,   124,   125,   126,   127,   128,   129,   130,
693
     131,   132,   133,   134,   135,   136,   137,   138,   139,   140,
694
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
695
     151,   152,   153,   154,   155,   156,   157,   158,   159,   160,
696
     161,   162,   163,   164,   165,   166,   167,   168,   169,   170,
697
     171,   172,   173
698
};
699
700
#if ZENDDEBUG
701
  /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
702
static const yytype_int16 yyrline[] =
703
{
704
       0,   303,   303,   307,   307,   307,   307,   307,   307,   307,
705
     307,   308,   308,   308,   308,   308,   308,   308,   308,   308,
706
     308,   308,   308,   309,   309,   309,   309,   309,   309,   309,
707
     309,   309,   309,   310,   310,   310,   310,   310,   310,   310,
708
     310,   310,   310,   311,   311,   311,   311,   311,   311,   311,
709
     311,   311,   311,   311,   312,   312,   312,   312,   312,   312,
710
     312,   312,   313,   313,   313,   313,   313,   313,   313,   313,
711
     313,   313,   313,   314,   318,   319,   319,   319,   319,   319,
712
     319,   319,   323,   324,   328,   329,   337,   338,   343,   344,
713
     349,   350,   355,   356,   360,   361,   362,   363,   367,   369,
714
     374,   376,   381,   385,   386,   390,   391,   392,   393,   394,
715
     398,   399,   403,   404,   405,   406,   410,   413,   413,   416,
716
     416,   419,   420,   421,   422,   426,   427,   431,   436,   441,
717
     442,   446,   448,   453,   455,   460,   462,   467,   468,   472,
718
     474,   479,   481,   486,   487,   491,   493,   499,   500,   501,
719
     502,   509,   510,   511,   512,   514,   516,   518,   520,   521,
720
     522,   523,   524,   525,   526,   527,   528,   529,   531,   535,
721
     534,   538,   539,   541,   542,   543,   547,   549,   554,   555,
722
     559,   560,   564,   565,   569,   570,   574,   578,   579,   587,
723
     594,   595,   599,   600,   604,   604,   607,   607,   613,   614,
724
     619,   621,   626,   627,   631,   632,   633,   637,   637,   643,
725
     643,   649,   649,   655,   656,   660,   665,   666,   670,   671,
726
     675,   676,   680,   681,   685,   686,   687,   688,   692,   693,
727
     697,   698,   702,   703,   707,   708,   709,   710,   714,   715,
728
     717,   719,   721,   727,   732,   733,   737,   738,   742,   744,
729
     749,   750,   755,   756,   761,   764,   770,   771,   776,   779,
730
     785,   786,   792,   793,   798,   800,   805,   806,   810,   812,
731
     818,   822,   829,   830,   834,   835,   836,   837,   841,   842,
732
     846,   847,   851,   853,   858,   859,   866,   867,   868,   869,
733
     873,   874,   875,   879,   880,   884,   886,   891,   893,   898,
734
     899,   903,   904,   908,   910,   924,   925,   926,   930,   932,
735
     934,   939,   941,   943,   945,   947,   952,   953,   957,   958,
736
     962,   968,   969,   973,   974,   978,   980,   986,   989,   992,
737
     995,   998,  1002,  1006,  1007,  1008,  1013,  1014,  1018,  1019,
738
    1020,  1024,  1026,  1031,  1032,  1036,  1041,  1043,  1047,  1052,
739
    1060,  1062,  1066,  1071,  1072,  1076,  1079,  1084,  1086,  1093,
740
    1095,  1102,  1104,  1109,  1110,  1111,  1112,  1113,  1114,  1115,
741
    1116,  1117,  1118,  1122,  1123,  1127,  1129,  1134,  1136,  1141,
742
    1142,  1143,  1149,  1150,  1154,  1155,  1163,  1162,  1173,  1174,
743
    1175,  1180,  1181,  1185,  1186,  1190,  1191,  1199,  1203,  1204,
744
    1207,  1211,  1212,  1213,  1217,  1218,  1222,  1223,  1224,  1225,
745
    1229,  1229,  1239,  1241,  1243,  1248,  1253,  1255,  1257,  1259,
746
    1261,  1263,  1268,  1273,  1275,  1277,  1279,  1281,  1283,  1285,
747
    1287,  1289,  1291,  1293,  1295,  1297,  1299,  1300,  1301,  1302,
748
    1303,  1305,  1307,  1309,  1311,  1313,  1314,  1315,  1316,  1317,
749
    1318,  1319,  1320,  1321,  1322,  1323,  1324,  1325,  1326,  1327,
750
    1328,  1329,  1330,  1332,  1334,  1336,  1338,  1340,  1342,  1344,
751
    1346,  1348,  1350,  1352,  1357,  1358,  1359,  1361,  1363,  1365,
752
    1366,  1367,  1368,  1369,  1370,  1371,  1372,  1373,  1378,  1379,
753
    1380,  1381,  1382,  1383,  1384,  1385,  1386,  1387,  1388,  1389,
754
    1390,  1392,  1397,  1402,  1410,  1414,  1418,  1422,  1426,  1430,
755
    1431,  1435,  1436,  1440,  1441,  1445,  1446,  1450,  1452,  1457,
756
    1459,  1461,  1461,  1468,  1471,  1475,  1476,  1477,  1481,  1483,
757
    1484,  1489,  1490,  1495,  1496,  1497,  1498,  1502,  1503,  1504,
758
    1505,  1507,  1508,  1509,  1510,  1514,  1515,  1516,  1517,  1518,
759
    1519,  1520,  1521,  1522,  1523,  1527,  1529,  1531,  1533,  1538,
760
    1539,  1543,  1547,  1548,  1552,  1553,  1554,  1558,  1559,  1563,
761
    1564,  1565,  1566,  1570,  1572,  1574,  1576,  1578,  1582,  1584,
762
    1586,  1588,  1593,  1594,  1595,  1599,  1601,  1606,  1608,  1610,
763
    1612,  1614,  1616,  1621,  1622,  1623,  1627,  1628,  1629,  1633,
764
    1638,  1639,  1643,  1645,  1650,  1652,  1654,  1656,  1658,  1660,
765
    1663,  1669,  1671,  1673,  1675,  1680,  1682,  1685,  1688,  1691,
766
    1693,  1695,  1698,  1702,  1703,  1704,  1705,  1710,  1711,  1712,
767
    1714,  1716,  1718,  1720,  1725,  1726,  1731
768
};
769
#endif
770
771
#if ZENDDEBUG || YYERROR_VERBOSE || 1
772
/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
773
   First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
774
static const char *const yytname[] =
775
{
776
  "\"end of file\"", "error", "$undefined", "\"'throw'\"",
777
  "PREC_ARROW_FUNCTION", "\"'include'\"", "\"'include_once'\"",
778
  "\"'require'\"", "\"'require_once'\"", "\"'or'\"", "\"'xor'\"",
779
  "\"'and'\"", "\"'print'\"", "\"'yield'\"", "\"'=>'\"",
780
  "\"'yield from'\"", "'='", "\"'+='\"", "\"'-='\"", "\"'*='\"",
781
  "\"'/='\"", "\"'.='\"", "\"'%='\"", "\"'&='\"", "\"'|='\"", "\"'^='\"",
782
  "\"'<<='\"", "\"'>>='\"", "\"'**='\"", "\"'?""?='\"", "'?'", "':'",
783
  "\"'?""?'\"", "\"'||'\"", "\"'&&'\"", "'|'", "'^'", "\"amp\"", "\"'&'\"",
784
  "\"'=='\"", "\"'!='\"", "\"'==='\"", "\"'!=='\"", "\"'<=>'\"", "'<'",
785
  "\"'<='\"", "'>'", "\"'>='\"", "\"'|>'\"", "'.'", "\"'<<'\"", "\"'>>'\"",
786
  "'+'", "'-'", "'*'", "'/'", "'%'", "'!'", "\"'instanceof'\"", "'~'",
787
  "\"'(int)'\"", "\"'(float)'\"", "\"'(string)'\"", "\"'(array)'\"",
788
  "\"'(object)'\"", "\"'(bool)'\"", "\"'(unset)'\"", "'@'", "\"'**'\"",
789
  "\"'clone'\"", "T_NOELSE", "\"'elseif'\"", "\"'else'\"", "\"integer\"",
790
  "\"floating-point number\"", "\"identifier\"",
791
  "\"fully qualified name\"", "\"namespace-relative name\"",
792
  "\"namespaced name\"", "\"variable\"", "T_INLINE_HTML",
793
  "\"string content\"", "\"quoted string\"", "\"variable name\"",
794
  "\"number\"", "\"'eval'\"", "\"'new'\"", "\"'exit'\"", "\"'if'\"",
795
  "\"'endif'\"", "\"'echo'\"", "\"'do'\"", "\"'while'\"", "\"'endwhile'\"",
796
  "\"'for'\"", "\"'endfor'\"", "\"'foreach'\"", "\"'endforeach'\"",
797
  "\"'declare'\"", "\"'enddeclare'\"", "\"'as'\"", "\"'switch'\"",
798
  "\"'endswitch'\"", "\"'case'\"", "\"'default'\"", "\"'match'\"",
799
  "\"'break'\"", "\"'continue'\"", "\"'goto'\"", "\"'function'\"",
800
  "\"'fn'\"", "\"'const'\"", "\"'return'\"", "\"'try'\"", "\"'catch'\"",
801
  "\"'finally'\"", "\"'use'\"", "\"'insteadof'\"", "\"'global'\"",
802
  "\"'static'\"", "\"'abstract'\"", "\"'final'\"", "\"'private'\"",
803
  "\"'protected'\"", "\"'public'\"", "\"'private(set)'\"",
804
  "\"'protected(set)'\"", "\"'public(set)'\"", "\"'readonly'\"",
805
  "\"'var'\"", "\"'unset'\"", "\"'isset'\"", "\"'empty'\"",
806
  "\"'__halt_compiler'\"", "\"'class'\"", "\"'trait'\"", "\"'interface'\"",
807
  "\"'enum'\"", "\"'extends'\"", "\"'implements'\"", "\"'namespace'\"",
808
  "\"'list'\"", "\"'array'\"", "\"'callable'\"", "\"'__LINE__'\"",
809
  "\"'__FILE__'\"", "\"'__DIR__'\"", "\"'__CLASS__'\"", "\"'__TRAIT__'\"",
810
  "\"'__METHOD__'\"", "\"'__FUNCTION__'\"", "\"'__PROPERTY__'\"",
811
  "\"'__NAMESPACE__'\"", "\"'#['\"", "\"'++'\"", "\"'--'\"",
812
  "\"'(void)'\"", "\"'->'\"", "\"'?->'\"", "\"comment\"",
813
  "\"doc comment\"", "\"open tag\"", "\"'<?='\"", "\"'?>'\"",
814
  "\"whitespace\"", "\"heredoc start\"", "\"heredoc end\"", "\"'${'\"",
815
  "\"'{$'\"", "\"'::'\"", "\"'\\\\'\"", "\"'...'\"",
816
  "\"invalid character\"", "T_ERROR", "','", "']'", "';'", "'('", "')'",
817
  "'{'", "'}'", "'['", "'`'", "'\"'", "'$'", "$accept", "start",
818
  "reserved_non_modifiers", "semi_reserved", "ampersand", "identifier",
819
  "top_statement_list", "namespace_declaration_name", "namespace_name",
820
  "legacy_namespace_name", "name", "attribute_decl", "attribute_group",
821
  "attribute", "attributes", "attributed_statement",
822
  "attributed_top_statement", "top_statement", "$@1", "$@2", "use_type",
823
  "group_use_declaration", "mixed_group_use_declaration", "possible_comma",
824
  "inline_use_declarations", "unprefixed_use_declarations",
825
  "use_declarations", "inline_use_declaration",
826
  "unprefixed_use_declaration", "use_declaration", "const_list",
827
  "inner_statement_list", "inner_statement", "statement", "$@3",
828
  "catch_list", "catch_name_list", "optional_variable",
829
  "finally_statement", "unset_variables", "unset_variable",
830
  "function_name", "function_declaration_statement", "is_reference",
831
  "is_variadic", "class_declaration_statement", "@4", "@5",
832
  "class_modifiers", "anonymous_class_modifiers",
833
  "anonymous_class_modifiers_optional", "class_modifier",
834
  "trait_declaration_statement", "@6", "interface_declaration_statement",
835
  "@7", "enum_declaration_statement", "@8", "enum_backing_type",
836
  "enum_case", "enum_case_expr", "extends_from", "interface_extends_list",
837
  "implements_list", "foreach_variable", "for_statement",
838
  "foreach_statement", "declare_statement", "switch_case_list",
839
  "case_list", "match", "match_arm_list", "non_empty_match_arm_list",
840
  "match_arm", "match_arm_cond_list", "while_statement",
841
  "if_stmt_without_else", "if_stmt", "alt_if_stmt_without_else",
842
  "alt_if_stmt", "parameter_list", "non_empty_parameter_list",
843
  "attributed_parameter", "optional_cpp_modifiers", "parameter",
844
  "optional_type_without_static", "type_expr", "type",
845
  "union_type_element", "union_type", "intersection_type",
846
  "type_expr_without_static", "type_without_static",
847
  "union_type_without_static_element", "union_type_without_static",
848
  "intersection_type_without_static", "return_type", "argument_list",
849
  "non_empty_argument_list", "clone_argument_list",
850
  "non_empty_clone_argument_list", "argument_no_expr", "argument",
851
  "global_var_list", "global_var", "static_var_list", "static_var",
852
  "class_statement_list", "attributed_class_statement", "class_statement",
853
  "class_name_list", "trait_adaptations", "trait_adaptation_list",
854
  "trait_adaptation", "trait_precedence", "trait_alias",
855
  "trait_method_reference", "absolute_trait_method_reference",
856
  "method_body", "property_modifiers", "method_modifiers",
857
  "class_const_modifiers", "non_empty_member_modifiers", "member_modifier",
858
  "property_list", "property", "hooked_property", "property_hook_list",
859
  "optional_property_hook_list", "property_hook_modifiers",
860
  "property_hook", "@9", "property_hook_body", "optional_parameter_list",
861
  "class_const_list", "class_const_decl", "const_decl", "echo_expr_list",
862
  "echo_expr", "for_cond_exprs", "for_exprs", "non_empty_for_exprs",
863
  "anonymous_class", "@10", "new_dereferenceable",
864
  "new_non_dereferenceable", "expr", "inline_function", "fn", "function",
865
  "backup_doc_comment", "backup_fn_flags", "backup_lex_pos", "returns_ref",
866
  "lexical_vars", "lexical_var_list", "lexical_var", "function_call",
867
  "@11", "class_name", "class_name_reference", "backticks_expr",
868
  "ctor_arguments", "dereferenceable_scalar", "scalar", "constant",
869
  "class_constant", "optional_expr", "variable_class_name",
870
  "fully_dereferenceable", "array_object_dereferenceable", "callable_expr",
871
  "callable_variable", "variable", "simple_variable", "static_member",
872
  "new_variable", "member_name", "property_name", "array_pair_list",
873
  "possible_array_pair", "non_empty_array_pair_list", "array_pair",
874
  "encaps_list", "encaps_var", "encaps_var_offset",
875
  "internal_functions_in_yacc", "isset_variables", "isset_variable", YY_NULLPTR
876
};
877
#endif
878
879
# ifdef YYPRINT
880
/* YYTOKNUM[NUM] -- (External) token number corresponding to the
881
   (internal) symbol number NUM (which must be that of a token).  */
882
static const yytype_int16 yytoknum[] =
883
{
884
       0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
885
     265,   266,   267,   268,   269,   270,    61,   271,   272,   273,
886
     274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
887
      63,    58,   284,   285,   286,   124,    94,   287,   288,   289,
888
     290,   291,   292,   293,    60,   294,    62,   295,   296,    46,
889
     297,   298,    43,    45,    42,    47,    37,    33,   299,   126,
890
     300,   301,   302,   303,   304,   305,   306,    64,   307,   308,
891
     309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
892
     319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
893
     329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
894
     339,   340,   341,   342,   343,   344,   345,   346,   347,   348,
895
     349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
896
     359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
897
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
898
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
899
     389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
900
     399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
901
     409,   410,   411,   412,    44,    93,    59,    40,    41,   123,
902
     125,    91,    96,    34,    36
903
};
904
# endif
905
906
31.1M
#define YYPACT_NINF (-1071)
907
908
#define yypact_value_is_default(Yyn) \
909
31.1M
  ((Yyn) == YYPACT_NINF)
910
911
566k
#define YYTABLE_NINF (-608)
912
913
#define yytable_value_is_error(Yyn) \
914
566k
  ((Yyn) == YYTABLE_NINF)
915
916
  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
917
     STATE-NUM.  */
918
static const yytype_int16 yypact[] =
919
{
920
   -1071,    62,  2252, -1071,  7334,  7334,  7334,  7334,  7334,  7334,
921
    7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,
922
    7334,  7334,  7334,  7334,  7488, -1071, -1071,    52, -1071, -1071,
923
   -1071, -1071, -1071, -1071,   -75,  1041,   -50,   -23,  7334,  5639,
924
      13,    21,    43,    49,   103,   125,  7334,  7334,   108, -1071,
925
   -1071,   156,  7334,    73,   271,   -32,   -20, -1071, -1071,   -50,
926
     149,   157,   180,   186, -1071, -1071, -1071, -1071,  9538,   196,
927
     207, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
928
   -1071,  9916,  9916,  7334,   172, -1071,  7334, -1071,  5793,    -1,
929
     153,    -6,   -81, -1071,   836, -1071, -1071, -1071, -1071, -1071,
930
   -1071,   307, -1071, -1071, -1071, -1071, -1071,   461, -1071,   136,
931
   -1071,   214, -1071,  9048, -1071,   501,   501, -1071,   107,   384,
932
   -1071,   170,   390,   184,   220,   388, -1071,   215,  1808, -1071,
933
   -1071, -1071, -1071,   445,   -50,   250, 10240,   501, 10240, 10240,
934
   10240, 10240,  7643, 10332,  7643,   328,   328,     9,   328,   328,
935
     328,   328,   328,   328,   328,   328,   328,  1244, -1071, -1071,
936
   -1071,  7334, -1071, -1071,  7334, -1071,   117,   529,   284, -1071,
937
   -1071,   252,   -50, -1071,   427,  1426, -1071, -1071,  7334,   231,
938
   -1071, 10240,   348,  7334,  6255,  7334,   156,  7334,  7334, 10240,
939
     272,   319,   339,   510,   257, -1071,   367, -1071, -1071, -1071,
940
   -1071, -1071, -1071, -1071,     0,   292,   387,   263, -1071,   318,
941
   -1071, -1071,   556,   324, -1071, -1071, -1071,  9916,  7334,  7334,
942
     413,   508,   536,   539,   559, -1071, -1071, -1071, -1071, -1071,
943
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
944
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
945
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
946
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
947
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
948
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
949
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
950
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,   462,   473,
951
    5793,  5793,   323,  1041,  7334,  5793,   481,   485, -1071, -1071,
952
     435,   435,  9098,   417,    -8, -1071,  6409,  9916,   176, -1071,
953
    8398,  2406, -1071, -1071,   492,  7334,  9916, 10140,   502, -1071,
954
     505, -1071,   101,   498,   194,   101,    50,  7334, -1071, -1071,
955
     445, -1071, -1071, -1071, -1071, -1071,   504,  5639,   509,   651,
956
     511,  7334,  7334,  7334,  6563,  7334,  7334,  7334,  7334,  7334,
957
    7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,
958
    7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,
959
     135,  7334, -1071, -1071, -1071,   -29,  4569,  4719,    -7,    -7,
960
    7334,   -50,  5947,  7334,  7334,  7334,  7334,  7334,  7334,  7334,
961
    7334,  7334,  7334,  7334,  7334,  7334, -1071, -1071, -1071,  7334,
962
    7334,  7334,  7334,  7334,  7334,  7334,  6717, -1071,  7488,    30,
963
     -75,  1036,    11,   125,   660,   663,    66,   -50,   157,   180,
964
     196,   207,   667,   668,   671,   672,   673,   680,   681,   683,
965
     685,  7334, -1071,   686,   545, -1071,  8347,  8448,  8498, -1071,
966
   -1071, -1071,   -32, -1071,    -7,    -7,   -32,  7334, -1071,   548,
967
   -1071, -1071, 10240,  8548,  7334, -1071,   547,  8598,  7334,   551,
968
     554, 10240, 10071,    28,  8648,  8698, -1071, -1071, -1071,  7334,
969
     156, -1071, -1071,  2560,   654,   558,    74,   555,   405, -1071,
970
     292, -1071,   -32, -1071,  7334,   656, -1071,   565, -1071,    84,
971
   10240,   566, -1071,  8748,   568,   608, -1071,   610,   719, -1071,
972
     572, -1071,   576,   577, -1071,   583,   -50,   -50,  8798,   589,
973
   -1071,   690,   691,   340, -1071, -1071,   440,  8096,   588, -1071,
974
   -1071, -1071,   399,   593, -1071,  4484, -1071, -1071, -1071,  5793,
975
   10240,   121,  6101,   759,  5793, -1071, -1071,  8146, -1071,   701,
976
    7334, -1071,  7334, -1071, -1071, 10289,  9531,  7643,  7334, 10190,
977
    7798,  7947,  9667,  4718,  9815,  9964,  9964, 10362, 10362, 10362,
978
   10362, 10362,  1595,  1595,  1595,  1595,  1156,   823,   834,   834,
979
     704,   704,     9,     9,     9, -1071,   328,   600, -1071, -1071,
980
   -1071,   602,  7334,   603,   604,   -50,  7334,   603,   604,   -50,
981
   -1071,  7334, -1071,   -50,   -50,   611, -1071,  9916,  7643,  7643,
982
    7643,  7643,  7643,  7643,  7643,  7643,  7643,  7643,  7643,  7643,
983
    7643,  7643,  7643, 10240,  6872,  1790,   607,  1608, -1071, -1071,
984
     -50, -1071, -1071, -1071, -1071,   612,  1790,   614,  4869, -1071,
985
    7334,  5023, 10240,  6255,  7026,  9285, -1071,    10,   609, 10240,
986
   -1071, -1071, -1071,   277,   615, -1071, -1071,   689, -1071, -1071,
987
   10240, -1071,  9916,   618,  7334,   619, -1071, -1071,   323,   659,
988
     621,   323, -1071,   189,   659, -1071,  1944,   774, -1071,   323,
989
     628, -1071,   629, -1071, -1071, -1071,   721, -1071, -1071, -1071,
990
     632, -1071,  7334, -1071, -1071,   630, -1071,   633,   638,  9916,
991
   10240,  7334, -1071, -1071,   608,  8848,  8898,  2714,  7798,  7334,
992
    1005,   639,  1005,  8196, -1071,  8247, -1071,  8297, -1071, -1071,
993
   -1071,   435, -1071, 10240, -1071, -1071, -1071, -1071,   608, -1071,
994
   -1071, -1071, -1071, -1071,  8948, -1071, -1071, -1071,   641,   645,
995
    9248,  7334, 10240,   644,  5793,  9916,     8,    14,  5177,   646,
996
     647, -1071,  7180, -1071,   531,   725,   232,   652, -1071, -1071,
997
     232, -1071,   655, -1071, -1071, -1071,   323, -1071, -1071,   653,
998
   -1071,   649,   301, -1071, -1071, -1071,   301, -1071, -1071,   523,
999
     798,   801,   805, -1071, -1071,  2098, -1071,  7334, -1071, -1071,
1000
   -1071, -1071,  9198,   662,   774,  5793,   248,  7643,   659,  5639,
1001
     813,   669,  7798, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
1002
   -1071, -1071, -1071,  1341,   670,   677, -1071,   564, -1071,  1687,
1003
   -1071,  1005,   674,   678,   678, -1071,   659,  4408,   682,  2868,
1004
    6255,  7026, 10240,  5793,   687,    17,  9285,  5331, -1071, -1071,
1005
   -1071, -1071,   355, -1071,   -46,   694,   705,   695, -1071,   696,
1006
   10240,   718,   684, -1071,   772, -1071,   277,   717,   724, -1071,
1007
   -1071,   653,   722,  2321,   323, -1071, -1071,   866,     6,   301,
1008
     171,   171,   301,   726, -1071,  7643,   727, -1071,   728, -1071,
1009
   -1071, -1071, -1071, -1071,   878,  1117, -1071,   459,   459,   872,
1010
   -1071,   552,   876,   877,   879, -1071,   735,   799, -1071, -1071,
1011
     738,   741,  9298,   742,    23,   744, -1071, -1071, -1071,  3022,
1012
     426,   748,  7334,    20,   -38, -1071, -1071,   911, -1071,  7180,
1013
   -1071,  7334,   912,   323, -1071, -1071, -1071, -1071,   232,   749,
1014
   -1071, -1071,   323, -1071, -1071,  1161, -1071, -1071, -1071,   564,
1015
     821,   820,  1859, -1071,  2783, -1071, -1071, -1071, -1071, -1071,
1016
   -1071, -1071, -1071,   774,   754,  4408,   189,   922, -1071, -1071,
1017
     900,    16, -1071,   767,   459,   374,   374,   459,   878,   764,
1018
     878,   770, -1071,  5485, -1071,  5331,  3176,   777,   782, -1071,
1019
    8998, -1071, -1071, -1071,  7334, -1071, 10240,  7334,    46, -1071,
1020
    3330, -1071, -1071,  2937,  9688,   -82, -1071,   864,   501,  7950,
1021
   -1071,  3091, -1071, -1071, -1071, -1071, -1071,   869, -1071, -1071,
1022
   -1071, -1071, -1071, -1071,   285, -1071, -1071, -1071, -1071, -1071,
1023
   -1071,   789, -1071, -1071, -1071, -1071,  4408,  4408, 10240, 10240,
1024
     323, -1071,   788, -1071, -1071,   934, -1071,  7649, -1071,   951,
1025
     423, -1071, -1071,  9688,   952,   958,   959,   960,   961,  9838,
1026
     433, -1071, -1071,  3245, -1071,   962,   800, -1071,   902,   808,
1027
   -1071,   804,  3553,  3484, -1071,  4408,  4408, -1071,   806,  7334,
1028
     810,   819, -1071, -1071,  7799, -1071,   815,   816,   895,   880,
1029
     830,  7334,   824,   921, -1071, -1071,  7334,  7334,   952,   436,
1030
    9838, -1071, -1071,  7334,  7334,   826, -1071, -1071,   285,   832,
1031
   -1071, -1071,   835, -1071, 10240, -1071, -1071, -1071, -1071, -1071,
1032
    9388,   323,  9688, 10240, -1071,   986, -1071,   831, 10240, 10240,
1033
   -1071, -1071, 10240, 10240, -1071, -1071,  3638, -1071, -1071,  3792,
1034
   -1071,  3946, -1071, -1071,  9688,   653, -1071,   833,   503,  7334,
1035
   -1071,  1005, -1071, -1071, -1071,   826,  1327, -1071, -1071, -1071,
1036
   -1071, -1071, -1071,  1341,  1687,   501, -1071, 10240,   837, -1071,
1037
   -1071, -1071, -1071,  1509, -1071,   939, -1071,   878, -1071, -1071,
1038
   -1071, -1071,   154,   839, -1071, -1071, -1071,  1005, -1071,  4100,
1039
   -1071,   840,    24, -1071, -1071,  7334, -1071, -1071, -1071,  9148,
1040
    4254, -1071, -1071, -1071
1041
};
1042
1043
  /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
1044
     Performed when YYTABLE does not specify something else to do.  Zero
1045
     means the default is an error.  */
1046
static const yytype_int16 yydefact[] =
1047
{
1048
      87,     0,     2,     1,     0,     0,     0,     0,     0,     0,
1049
     492,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1050
       0,     0,     0,     0,     0,   537,   538,    94,    96,    97,
1051
      95,   582,   164,   535,     0,   202,   531,     0,     0,     0,
1052
       0,     0,     0,     0,     0,     0,   559,   559,     0,   505,
1053
     504,     0,   559,     0,     0,     0,   523,   204,   205,   206,
1054
       0,     0,     0,     0,   196,   207,   209,   211,   119,     0,
1055
       0,   546,   547,   548,   554,   549,   550,   551,   552,   553,
1056
     506,     0,     0,     0,     0,   171,     0,   146,   600,   528,
1057
       0,     0,   545,   103,     0,   110,   113,    86,   112,   105,
1058
     106,     0,   198,   107,   108,   109,   501,   256,   152,     0,
1059
     153,   474,   475,     0,   497,   509,   509,   577,     0,   542,
1060
     489,   543,   544,     0,   567,     0,   521,   578,   416,   573,
1061
     579,   479,    94,   523,     0,     0,   496,   509,   629,   630,
1062
     632,   633,   491,   493,   495,   458,   459,   460,   461,   480,
1063
     481,   482,   483,   484,   485,   486,   488,     0,   421,   422,
1064
     174,     0,   523,   206,     0,   524,   202,   203,     0,   200,
1065
     413,   525,   415,   587,   526,     0,   532,   487,     0,     0,
1066
     399,   400,     0,     0,   404,     0,     0,     0,     0,   560,
1067
       0,     0,     0,     0,     0,   144,     0,   146,    90,    93,
1068
      91,   125,   126,    92,   141,     0,     0,     0,   136,     0,
1069
     319,   320,   323,     0,   322,   499,   518,     0,     0,     0,
1070
       0,     0,     0,     0,     0,    33,     3,     4,     6,     7,
1071
       8,     9,    10,    46,    47,    11,    13,    16,    17,    84,
1072
      89,     5,    12,    14,    15,    18,    19,    20,    21,    22,
1073
      23,    24,    25,    26,    27,    28,    29,    49,    50,    51,
1074
      52,    71,    53,    41,    42,    43,    70,    44,    45,    30,
1075
      31,    32,    34,    35,    36,    75,    76,    77,    78,    79,
1076
      80,    81,    37,    38,    39,    40,    61,    59,    60,    72,
1077
      56,    57,    58,    48,    54,    55,    66,    67,    68,    62,
1078
      63,    65,    64,    73,    69,    74,    85,    88,   117,     0,
1079
     600,   600,     0,   202,     0,   600,   566,   564,   568,   565,
1080
     437,   439,     0,   615,     0,   540,     0,     0,     0,   613,
1081
       0,     0,    83,    82,     0,     0,     0,   605,     0,   603,
1082
     599,   601,   529,     0,   530,     0,     0,     0,   584,   517,
1083
       0,   104,   114,   498,   194,   199,     0,     0,     0,     0,
1084
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1085
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1086
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1087
       0,     0,   165,   510,   506,   506,     0,     0,     0,     0,
1088
     559,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1089
       0,     0,     0,     0,     0,     0,   436,   438,   506,     0,
1090
      33,     3,     4,     6,     7,    46,   492,   313,    13,    94,
1091
       5,    12,   531,    71,   505,   504,    75,    81,    39,    40,
1092
      48,    54,   546,   547,   548,   554,   549,   550,   551,   552,
1093
     553,   312,   305,     0,   129,   309,     0,     0,     0,   414,
1094
     201,   410,     0,   412,     0,     0,     0,   559,   301,   129,
1095
     317,   303,   316,     0,     0,   163,     0,     0,     0,     0,
1096
     405,   409,     0,     0,     0,     0,   158,   159,   173,     0,
1097
       0,   111,   160,     0,     0,     0,   141,     0,     0,   121,
1098
       0,   123,     0,   161,     0,     0,   162,   129,   184,   562,
1099
     636,   129,   634,     0,     0,   218,   506,   220,   213,   116,
1100
       0,    87,     0,     0,   100,   129,    98,     0,     0,     0,
1101
     175,     0,     0,     0,   539,   614,     0,     0,   562,   612,
1102
     541,   611,   473,     0,   151,     0,   148,   145,   147,   600,
1103
     608,   562,     0,   534,   600,   490,   536,     0,   500,     0,
1104
       0,   257,     0,   146,   260,   442,   444,   443,     0,     0,
1105
     478,   440,   441,   445,   448,   446,   447,   464,   465,   462,
1106
     463,   471,   467,   468,   469,   470,   466,   449,   456,   457,
1107
     450,   451,   452,   454,   455,   472,   453,     0,   187,   188,
1108
     506,     0,     0,   555,   585,     0,     0,   556,   586,     0,
1109
     596,     0,   598,   580,   581,     0,   522,     0,   419,   423,
1110
     424,   425,   427,   428,   429,   430,   431,   432,   433,   434,
1111
     426,   435,   494,   315,     0,   130,     0,     0,   631,   527,
1112
     531,   591,   589,   590,   592,     0,   130,     0,     0,   398,
1113
       0,     0,   408,   401,     0,     0,   169,     0,     0,   506,
1114
     143,   176,   142,     0,     0,   122,   124,   141,   135,   318,
1115
     324,   321,   130,     0,   130,     0,   628,   115,     0,   222,
1116
       0,     0,   506,     0,   222,    87,     0,     0,   533,   130,
1117
       0,    99,   563,   534,   617,   618,     0,   623,   626,   624,
1118
       0,   620,     0,   619,   622,     0,   149,     0,     0,     0,
1119
     604,     0,   602,   583,   218,     0,     0,     0,   477,     0,
1120
     268,     0,   268,     0,   519,     0,   520,     0,   575,   576,
1121
     574,   420,   314,   311,   310,   306,   307,   308,   218,   588,
1122
     304,   302,   146,   254,     0,   146,   252,   154,     0,     0,
1123
     403,     0,   406,     0,   600,     0,     0,   562,     0,   238,
1124
     238,   157,   244,   397,   182,   139,     0,   129,   132,   137,
1125
       0,   185,     0,   635,   627,   219,     0,   506,   326,   221,
1126
     336,     0,     0,   279,   290,   291,     0,   292,   214,   274,
1127
       0,   276,   277,   278,   506,     0,   120,     0,   101,   102,
1128
     625,   616,     0,     0,   610,   600,   562,   418,   222,     0,
1129
       0,     0,   476,   369,   370,   371,   365,   364,   363,   368,
1130
     367,   366,   372,   268,     0,   129,   264,   272,   267,   269,
1131
     361,   268,     0,   557,   558,   597,   222,   258,     0,     0,
1132
     404,     0,   407,   600,     0,   562,     0,     0,   146,   232,
1133
     170,   238,     0,   238,     0,   129,     0,   129,   246,   129,
1134
     250,     0,     0,   172,     0,   138,   130,     0,   129,   134,
1135
     166,   223,     0,   357,     0,   326,   275,     0,     0,     0,
1136
       0,     0,     0,     0,   118,   417,     0,   150,     0,   506,
1137
     255,   146,   261,   266,   299,   268,   262,     0,     0,   190,
1138
     273,   286,     0,   288,   289,   362,     0,   511,   506,   155,
1139
       0,     0,   402,     0,   534,     0,   146,   230,   167,     0,
1140
       0,     0,     0,     0,     0,   234,   130,     0,   243,   130,
1141
     245,   130,     0,     0,   146,   140,   131,   128,   130,     0,
1142
     326,   506,     0,   356,   208,   357,   332,   333,   325,   272,
1143
       0,     0,   355,   337,   357,   281,   284,   280,   282,   283,
1144
     285,   326,   621,   609,     0,   259,     0,     0,   265,   287,
1145
       0,     0,   191,   192,     0,     0,     0,     0,   299,     0,
1146
     299,     0,   253,     0,   226,     0,     0,     0,     0,   236,
1147
       0,   146,   146,   235,     0,   247,   251,     0,   180,   178,
1148
       0,   133,   127,   357,     0,     0,   334,     0,   509,     0,
1149
     210,   357,   326,   300,   507,   294,   193,     0,   297,   293,
1150
     295,   296,   298,   507,     0,   507,   326,   146,   228,   156,
1151
     168,     0,   233,   237,   146,   146,   241,   242,   249,   248,
1152
       0,   181,     0,   183,   197,   216,   338,     0,   335,   506,
1153
       0,   374,   328,     0,    94,   279,   290,   291,     0,     0,
1154
       0,   394,   212,   357,   508,   506,     0,   515,     0,   129,
1155
     514,     0,   357,     0,   231,   239,   240,   179,     0,     0,
1156
       0,    75,   339,   350,     0,   341,     0,     0,     0,   351,
1157
       0,     0,   375,     0,   327,   506,     0,     0,     0,     0,
1158
       0,   329,   195,     0,     0,   382,   146,   516,   130,     0,
1159
     146,   411,     0,   146,   217,   215,   340,   342,   343,   344,
1160
       0,     0,     0,   506,   379,   506,   373,     0,   506,   506,
1161
     330,   393,   507,   506,   379,   270,     0,   513,   512,     0,
1162
     229,     0,   346,   347,   349,   345,   352,   376,   384,     0,
1163
     375,   268,   395,   396,   503,   382,   384,   507,   507,   177,
1164
     348,   379,   377,   384,   385,   509,   380,   506,     0,   271,
1165
     383,   189,   502,   384,   381,     0,   376,   299,   378,   506,
1166
     507,   386,     0,   391,   353,   146,   507,   268,   507,     0,
1167
     331,     0,     0,   354,   392,     0,   388,   146,   507,     0,
1168
       0,   387,   390,   389
1169
};
1170
1171
  /* YYPGOTO[NTERM-NUM].  */
1172
static const yytype_int16 yypgoto[] =
1173
{
1174
   -1071, -1071,  -103,  -974,    34,   -60,  -481, -1071,   -44,  -191,
1175
     -15,   334, -1071,   -91,    -2,     7,   933, -1071, -1071, -1071,
1176
     975, -1071, -1071,  -451, -1071, -1071,   828,   165,  -745,   537,
1177
     850,  -178, -1071,    37, -1071, -1071, -1071, -1071, -1071, -1071,
1178
     366, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
1179
   -1071,   -19, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
1180
   -1071,  -651, -1071,  -655,   193, -1071,    58, -1071, -1071,  -712,
1181
   -1071, -1071, -1071,   115, -1071, -1071, -1071, -1071, -1071, -1071,
1182
    -698, -1071,   150, -1071,   223,    98,  -914,  -658,  -216, -1071,
1183
     262, -1071,  -734,  -303, -1071,   151,  -948,   169, -1071, -1071,
1184
   -1071,   896,  -346, -1071,   550, -1071,   560,  -796,   110, -1071,
1185
    -763, -1071, -1071,   -27, -1071, -1071, -1071, -1071, -1071, -1071,
1186
   -1071, -1071,  -718,  -814, -1071,   -30, -1071, -1070,   -89, -1071,
1187
     -96, -1071, -1071, -1071,    19,   -25,   578, -1071,   616, -1071,
1188
     236,   428,   917, -1071,   -77, -1071,    99,   -49, -1071,     4,
1189
     -69,  -989, -1071,  -114, -1071, -1071,   -22, -1071, -1071,   -34,
1190
    -258, -1071,   448,   -55, -1071,   -12,    54,   -35, -1071, -1071,
1191
   -1071, -1071, -1071,    75,   769, -1071, -1071,   688,  -160,  -261,
1192
     535, -1071, -1071,   586,   291, -1071, -1071, -1071,   418
1193
};
1194
1195
  /* YYDEFGOTO[NTERM-NUM].  */
1196
static const yytype_int16 yydefgoto[] =
1197
{
1198
      -1,     1,   305,   306,   336,   453,     2,   308,   765,   204,
1199
      92,   524,   525,    93,   135,   546,    96,    97,   520,   309,
1200
     766,   497,   206,   636,   767,   868,   207,   768,   769,   208,
1201
     194,   331,   547,   548,   758,   764,   998,  1042,   863,   507,
1202
     508,   600,    99,   973,  1017,   100,   559,   221,   101,   167,
1203
     168,   102,   103,   222,   104,   223,   105,   224,   684,   946,
1204
    1080,   679,   682,   777,   756,  1029,   918,   850,   761,   852,
1205
     106,   856,   857,   858,   859,   747,   107,   108,   109,   110,
1206
     824,   825,   826,   827,   828,   899,   788,   789,   790,   791,
1207
     792,   900,   793,   902,   903,   904,   967,   176,   469,   158,
1208
     454,   470,   471,   209,   210,   213,   214,   873,   947,   948,
1209
     779,  1048,  1084,  1085,  1086,  1087,  1088,  1089,  1186,   949,
1210
     950,   951,   829,   830,  1050,  1051,  1052,  1148,  1135,  1165,
1211
    1166,  1183,  1198,  1188,  1060,  1061,   195,   179,   180,   748,
1212
     479,   480,   170,   640,   111,   112,   113,   114,   115,   137,
1213
     601,  1064,  1103,   394,   980,  1069,  1070,   117,   401,   118,
1214
     172,   343,   177,   119,   120,   121,   122,   190,   123,   124,
1215
     125,   126,   127,   128,   129,   130,   174,   605,   613,   338,
1216
     339,   340,   341,   328,   329,   700,   131,   511,   512
1217
};
1218
1219
  /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
1220
     positive, shift that token.  If negative, reduce the rule whose
1221
     number is the opposite.  If YYTABLE_NINF, syntax error.  */
1222
static const yytype_int16 yytable[] =
1223
{
1224
      94,   171,   395,   351,   316,   316,   116,   215,   307,    95,
1225
     203,   312,   191,   871,   496,   905,   169,   196,   647,   493,
1226
     165,   865,   846,   418,   832,   869,   317,   317,  -224,   794,
1227
    1023,  -225,  1025,   166,  1066,  1058,  1071,  -227,  1195,    98,
1228
     686,   759,   -14,   882,   351,   353,   598,    31,   854,   522,
1229
     523,   991,  1013,   977,   529,   527,   673,   922,   923,   212,
1230
     675,   -84,     3,   808,  1156,   922,   923,   390,   610,   318,
1231
     318,   323,    31,    31,   690,   351,   182,   391,   323,   954,
1232
     342,  1040,   355,   160,   215,  1058,   353,   836,  -524,    49,
1233
      50,  1173,   874,   901,  1046,  1059,   175,  1047,   116,   599,
1234
     494,    95,   161,   136,   138,   139,   140,   141,   142,   143,
1235
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
1236
     154,   155,   156,   159,   876,  1041,  1058,   175,   877,   323,
1237
     -84,   539,   595,   906,   925,   319,   319,   181,   905,   920,
1238
     316,   924,   993,  1154,  1003,   189,   189,   169,   460,   393,
1239
     393,   189,    91,   889,   178,   952,   320,   321,   534,   326,
1240
     327,   203,   317,   969,   970,  1011,   326,   327,  1171,  1172,
1241
     495,   393,   611,   347,   494,    49,    50,    91,    91,  1005,
1242
     323,   908,   322,   192,   955,   330,   847,   337,   175,   760,
1243
     183,  1182,  -224,  1001,  1015,  -225,   992,  1190,   184,  1192,
1244
    1196,  -227,   490,  1197,   795,   318,   656,   358,   359,  1201,
1245
     132,    28,    29,    30,    31,   901,  1063,   326,   327,   782,
1246
     185,   956,   957,   957,   960,   360,   186,   952,   216,  1180,
1247
    1072,   193,   323,   556,   345,  -523,   952,    57,    58,   614,
1248
    1018,  1019,  1019,  1022,   664,   163,   132,    28,    29,    30,
1249
     316,   323,   197,   324,   162,   323,   456,   539,  -186,   316,
1250
     457,   349,  -186,   458,   132,    28,    29,    30,   326,   327,
1251
      80,   319,   317,   323,   472,   539,   396,   473,   526,   171,
1252
     187,   317,   477,   481,   482,   952,   484,   485,   707,   734,
1253
     783,   737,   509,   952,   169,  -607,  -607,   165,   165,  -607,
1254
     740,   558,   188,   216,   642,   643,  1144,   198,   783,   667,
1255
     200,   166,   164,   784,   785,   318,   867,   510,   513,    91,
1256
     326,   327,   332,   333,   318,   597,   217,  -568,  -568,   545,
1257
    1184,   784,   785,  1185,   218,   116,   603,   607,   325,   326,
1258
     327,   463,   540,   326,   327,   952,   198,   199,   786,   200,
1259
     905,  -568,   198,   397,   952,   200,   171,   219,  1145,    49,
1260
      50,   326,   327,   220,  1067,   615,   786,   198,   199,   350,
1261
     200,  -566,  -566,   310,   896,   165,   132,    28,    29,    30,
1262
     201,   319,   202,  -566,   311,   717,   201,   215,   202,  -561,
1263
     319,  -572,  -569,   696,   561,  -566,   391,   171,   132,    28,
1264
      29,    30,   538,    80,   927,   474,   930,   475,   932,   337,
1265
     337,   551,   169,   528,   337,   697,   165,   939,   461,   698,
1266
     783,   462,  -606,  -606,   699,   537,  -606,    57,    58,   166,
1267
    1164,   490,   645,   491,   550,   163,   617,   500,  1164,   501,
1268
     476,   354,   162,   784,   785,  1164,   557,   680,   486,   132,
1269
      28,    29,    30,  1168,   351,  1164,   203,   921,   922,   923,
1270
     565,   566,   567,   569,   570,   571,   572,   573,   574,   575,
1271
     576,   577,   578,   579,   580,   581,   582,   583,   584,   585,
1272
     586,   587,   588,   589,   590,   591,   592,   593,   594,  1191,
1273
     596,   545,   502,   844,   503,   487,   353,   116,   505,   189,
1274
     506,   618,   619,   620,   621,   622,   623,   624,   625,   626,
1275
     627,   628,   629,   630,   631,   488,   784,   785,   632,   136,
1276
     138,   139,   140,   141,   142,   143,   489,   159,   988,   922,
1277
     923,   721,   356,   357,   132,    28,    29,    30,   332,   333,
1278
     316,  -564,  -564,   492,   888,   398,   399,  -565,  -565,   116,
1279
     633,   898,   706,  -564,    49,    50,  -563,  -563,  -280,  -565,
1280
     879,  -571,   317,   499,   837,  -564,   189,   839,  -563,   400,
1281
     616,  -565,   504,   181,   531,   532,  -570,   652,   316,   500,
1282
    -563,   666,   913,   515,   464,   465,   709,  -293,   659,   974,
1283
     763,   514,  -562,  -562,   897,   316,   466,  1093,   533,  1094,
1284
     317,   784,   785,   670,  -562,   318,   216,  1100,   467,  1101,
1285
    1100,   516,  1130,   781,   517,   535,  -562,   317,  1109,   541,
1286
     701,   702,   813,   814,   815,   816,   817,   818,   819,   820,
1287
     821,   822,   316,   535,   518,   541,   535,   541,   519,   132,
1288
      28,    29,    30,   318,   775,   861,   862,   780,   337,    57,
1289
      58,   710,   521,   337,   317,   526,    80,   163,  -572,   715,
1290
     318,   716,  -571,   165,   958,   959,   165,   718,   787,   549,
1291
     919,   319,  1020,  1021,   165,   344,   346,   553,   316,   554,
1292
     555,   560,   563,  1162,    94,   743,   562,   564,   746,   755,
1293
     116,   -43,   731,    95,   -70,   691,   463,   318,   -66,   -67,
1294
     317,   723,   -68,   -62,   -63,   725,   784,   785,   872,   319,
1295
     727,   -65,   -64,   965,   -73,   545,   -69,   634,   823,   635,
1296
     823,   116,   646,    98,   650,   883,   319,   653,   654,   662,
1297
     757,   665,   351,   733,   472,   212,   472,   663,   986,   672,
1298
     674,   898,   780,   318,   677,   472,   678,   509,   681,   744,
1299
     683,   685,   750,   752,   687,   688,  1000,   689,   387,   388,
1300
     389,   165,   390,   319,   693,   694,   695,   787,   704,   316,
1301
     705,   787,   391,   510,   724,   711,   714,   720,   726,   722,
1302
    -593,  -595,   728,   729,   806,   735,   730,   739,   762,   494,
1303
     797,   317,   741,    94,   770,   849,   772,   774,   776,   116,
1304
     778,   802,    95,   799,   173,   800,  -570,   801,   803,   319,
1305
     807,   804,   787,  1036,  1037,   805,   831,   840,   812,   841,
1306
     964,   843,   851,   853,   211,   864,   866,   874,   875,   823,
1307
     845,   870,    98,   880,   318,   545,   881,   545,   887,   981,
1308
     953,   116,   882,   116,   891,   892,   890,   935,   894,  1073,
1309
     842,   895,   907,   337,   351,  -594,  1075,  1076,   909,   165,
1310
     348,   860,   914,   934,   787,   787,   787,   787,   926,   929,
1311
     931,   945,  1004,   383,   384,   385,   386,   387,   388,   389,
1312
     755,   390,   787,   787,   917,   928,   385,   386,   387,   388,
1313
     389,   391,   390,   823,  1053,   933,   885,   937,   938,   999,
1314
     319,   940,   391,   879,   337,   961,   963,   962,   780,   966,
1315
     972,   975,   976,   978,   982,   979,   977,   545,   165,   983,
1316
     984,   757,   985,   116,   989,   994,   997,   165,  1136,  1002,
1317
      49,  1009,  1139,  1012,   787,  1141,  1014,   974,  1016,   481,
1318
     912,  1024,   337,  1049,  1045,    49,    50,    51,  1065,  1026,
1319
    1079,   787,   945,  1032,  1008,   350,    57,    58,  1033,   787,
1320
     787,   787,   787,   545,   163,  1074,  1078,  1091,  1096,   116,
1321
      64,    65,    66,    67,   -75,   -54,   -55,  1097,  1104,  1106,
1322
    1092,  1107,  1108,  1110,   545,  1113,  1115,  1083,  -523,    80,
1323
     116,  1118,  1119,  1095,   787,  1120,  1105,  1121,   545,  1122,
1324
    1125,   945,  1149,  1124,   116,  1134,  1077,  1189,  1151,   945,
1325
    1138,  1140,  1161,  1090,  1179,  1177,  1187,  1143,  1194,  1200,
1326
    1028,   990,   917,   798,  1083,   165,  1127,   352,   860,   205,
1327
     996,   936,   165,   498,   545,   545,   483,   668,   771,   915,
1328
     116,   116,   393,  1030,   995,   968,   893,  1007,   878,   971,
1329
    1090,  1175,   669,   455,  1147,  1006,  1150,  1117,  1068,  1152,
1330
    1153,   945,  1146,  1126,  1155,   671,  1169,  1174,   660,   165,
1331
     945,   545,   351,   545,   545,  1131,   911,   116,  1099,   116,
1332
     116,   749,   173,   459,  1160,   609,  1137,   780,   738,   712,
1333
     649,     0,   773,  1038,     0,     0,  1039,     0,  1176,     0,
1334
       0,     0,     0,     0,     0,     0,   165,     0,     0,     0,
1335
    1181,   132,    28,    29,    30,    31,   132,    28,    29,    30,
1336
      31,     0,     0,     0,   813,   814,   815,   816,   817,   818,
1337
     819,   820,   821,   822,   545,     0,     0,   545,     0,   545,
1338
     116,     0,  1068,   116,     0,   116,  1163,     0,     0,   823,
1339
       0,     0,     0,     0,  1163,   162,    57,    58,    80,   173,
1340
     162,    57,    58,     0,   163,   604,   608,   612,   612,   163,
1341
    -202,  1163,     0,     0,     0,     0,     0,     0,  1114,     0,
1342
       0,     0,     0,  -263,     0,   823,     0,   545,     0,    80,
1343
    1123,     0,     0,   116,    80,  1128,  1129,     0,   545,   393,
1344
     173,     0,  1132,  1133,   116,   382,   383,   384,   385,   386,
1345
     387,   388,   389,   164,   390,     0,     0,     0,   164,     0,
1346
      91,     0,     0,     0,   391,    91,     0,     0,     0,     0,
1347
       0,   641,     0,   612,   612,   644,   813,   814,   815,   816,
1348
     817,   818,   819,   820,   821,   822,     0,   420,  1167,   421,
1349
     422,   423,   424,   230,   231,   232,   425,   426,     0,    11,
1350
       0,     0,     0,     0,   941,     0,     0,     0,     0,     0,
1351
      80,   211,  -359,     0,   427,     0,     0,     0,     0,     0,
1352
     813,   814,   815,   816,   817,   818,   819,   820,   821,   822,
1353
     943,     0,     0,     0,  1199,  -130,    12,    13,     0,     0,
1354
       0,    14,   235,    15,    16,    17,    18,    19,    20,    21,
1355
      22,    23,     0,   428,    80,   237,   238,    25,    26,   429,
1356
      28,    29,    30,    31,     0,     0,    33,     0,     0,   430,
1357
     431,   432,   244,   245,   246,   247,   248,   249,   250,   251,
1358
     252,   253,   254,   255,   256,   257,   258,   259,   260,   433,
1359
     262,   263,   264,   434,   435,   267,   268,   269,   270,   271,
1360
     272,   273,   274,   436,   276,   277,   278,   279,   280,     0,
1361
       0,     0,   437,   282,   283,   438,   439,     0,   286,   287,
1362
     288,   289,   290,   291,   292,   440,   441,   295,   442,   443,
1363
     444,   445,   446,   447,   448,   449,   450,    80,    81,    82,
1364
       0,     0,     0,     0,     0,     0,     0,     0,     0,    84,
1365
       0,     0,     0,     0,     0,   451,     0,     0,     0,     0,
1366
       0,    86,   452,     0,     0,    88,    89,    90,    91,   420,
1367
       0,   421,   422,   423,   424,   230,   231,   232,   425,   426,
1368
       0,    11,     0,     0,     0,     0,   813,   814,   815,   816,
1369
     817,   818,   819,   820,   821,   822,   427,     0,     0,     0,
1370
     813,   814,   815,   816,   817,   818,   819,   820,   821,   822,
1371
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1372
      80,     0,     0,    14,   235,    15,    16,    17,    18,    19,
1373
      20,    21,    22,    23,    80,   428,     0,   237,   238,    25,
1374
      26,   429,    28,    29,    30,    31,     0,  1170,    33,     0,
1375
       0,   430,   431,   432,   244,   245,   246,   247,   248,   249,
1376
     250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
1377
     260,   433,   262,   263,   264,   434,   435,   267,   268,   269,
1378
     270,   271,   272,   273,   274,   436,   276,   277,   278,   279,
1379
     280,     0,     0,     0,   437,   282,   283,   438,   439,     0,
1380
     286,   287,   288,   289,   290,   291,   292,   440,   441,   295,
1381
     442,   443,   444,   445,   446,   447,   448,   449,   450,    80,
1382
      81,    82,     0,     0,     0,     0,     0,     0,     0,     0,
1383
       0,    84,     0,     0,     0,     0,     0,   451,     0,     0,
1384
       0,     0,     0,    86,   468,     0,     0,    88,    89,    90,
1385
      91,   420,     0,   421,   422,   423,   424,   230,   231,   232,
1386
     425,   426,     0,    11,     0,     0,     0,     0,   813,   814,
1387
     815,   816,   817,   818,   819,   820,   821,   822,   427,  -608,
1388
    -608,  -608,  -608,   381,   382,   383,   384,   385,   386,   387,
1389
     388,   389,     0,   390,     0,     0,     0,     0,     0,     0,
1390
      12,    13,    80,   391,     0,    14,   235,    15,    16,    17,
1391
      18,    19,    20,    21,    22,    23,     0,   428,     0,   237,
1392
     238,    25,    26,   429,    28,    29,    30,    31,     0,  1178,
1393
      33,     0,     0,   430,   431,   432,   244,   245,   246,   247,
1394
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
1395
     258,   259,   260,   433,   262,   263,   264,   434,   435,   267,
1396
     268,   269,   270,   271,   272,   273,   274,   436,   276,   277,
1397
     278,   279,   280,     0,     0,     0,   437,   282,   283,   438,
1398
     439,     0,   286,   287,   288,   289,   290,   291,   292,   440,
1399
     441,   295,   442,   443,   444,   445,   446,   447,   448,   449,
1400
     450,    80,    81,    82,     0,     0,     0,     0,     0,     0,
1401
       0,     0,     0,    84,     0,     0,     0,     0,     0,   451,
1402
       0,     0,     0,     0,     0,    86,   736,     0,     0,    88,
1403
      89,    90,    91,   420,     0,   421,   422,   423,   424,   230,
1404
     231,   232,   425,   426,     0,    11,   813,   814,   815,   816,
1405
     817,   818,   819,   820,   821,   822,     0,     0,     0,     0,
1406
     427,     0,     0,     0,   402,   403,   404,   405,   406,   407,
1407
     408,   409,   410,   411,   412,   413,   414,   415,     0,     0,
1408
       0,     0,    12,    13,     0,     0,     0,    14,   235,    15,
1409
      16,    17,    18,    19,    20,    21,    22,    23,     0,   428,
1410
       0,   237,   238,    25,    26,   429,    28,    29,    30,    31,
1411
       0,     0,    33,     0,     0,   430,   431,   432,   244,   245,
1412
     246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
1413
     256,   257,   258,   259,   260,   433,   262,   263,   264,   434,
1414
     435,   267,   268,   269,   270,   271,   272,   273,   274,   436,
1415
     276,   277,   278,   279,   280,     0,     0,     0,   437,   282,
1416
     283,   438,   439,     0,   286,   287,   288,   289,   290,   291,
1417
     292,   440,   441,   295,   442,   443,   444,   445,   446,   447,
1418
     448,   449,   450,    80,    81,    82,     0,     4,     0,     5,
1419
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1420
       0,   451,   416,   417,     0,  -562,  -562,    86,  -358,     0,
1421
    -360,    88,    89,    90,    91,     0,     0,  -562,   813,   814,
1422
     815,   816,   817,   818,   819,   820,   821,   822,     0,  -562,
1423
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1424
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1425
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1426
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1427
      35,    36,    37,     0,    38,    39,    40,     0,    41,     0,
1428
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1429
      46,    47,    48,    49,    50,    51,    52,    53,     0,     0,
1430
      54,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1431
       0,     0,    59,     0,    60,    61,    62,    63,    64,    65,
1432
      66,    67,     0,     0,    68,    69,    70,     0,    71,    72,
1433
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1434
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1435
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1436
      85,    86,     0,    87,   796,    88,    89,    90,    91,     0,
1437
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1438
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1439
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1440
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1441
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1442
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1443
      40,     0,    41,     0,    42,     0,    43,     0,     0,    44,
1444
       0,     0,     0,    45,    46,    47,    48,    49,    50,    51,
1445
      52,    53,     0,     0,    54,     0,    55,    56,    57,    58,
1446
       0,     0,     0,     0,     0,     0,    59,     0,    60,    61,
1447
      62,    63,    64,    65,    66,    67,     0,     0,    68,    69,
1448
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1449
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1450
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1451
       0,     0,     0,     0,    85,    86,     0,    87,   884,    88,
1452
      89,    90,    91,     0,     0,     0,     0,     0,     0,     0,
1453
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1454
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1455
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1456
       0,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1457
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1458
      37,     0,    38,    39,    40,     0,    41,     0,    42,     0,
1459
      43,     0,     0,    44,     0,     0,     0,    45,    46,    47,
1460
      48,    49,    50,    51,    52,    53,     0,     0,    54,     0,
1461
      55,    56,    57,    58,     0,     0,     0,     0,     0,     0,
1462
      59,     0,    60,    61,    62,    63,    64,    65,    66,    67,
1463
       0,     0,    68,    69,    70,     0,    71,    72,    73,    74,
1464
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1465
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1466
       0,    11,     0,     0,   941,     0,     0,     0,    85,    86,
1467
       0,    87,  -359,    88,    89,    90,    91,   942,     0,     0,
1468
     813,   814,   815,   816,   817,   818,   819,   820,   821,   822,
1469
     943,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1470
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1471
      20,    21,    22,    23,    80,    24,     0,     0,     0,    25,
1472
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1473
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1474
      41,   944,    42,     0,    43,     0,     0,    44,     0,     0,
1475
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1476
       0,     0,     0,     0,    55,    56,    57,    58,     0,     0,
1477
       0,     0,     0,     0,    59,     0,    60,    61,    62,   543,
1478
      64,    65,    66,    67,     0,     0,     0,    69,    70,     0,
1479
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1480
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1481
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1482
       0,     0,    85,    86,     0,    87,   544,    88,    89,    90,
1483
      91,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1484
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1485
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1486
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1487
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1488
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1489
      38,    39,    40,     0,    41,     0,    42,     0,    43,     0,
1490
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1491
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1492
      57,    58,     0,     0,     0,     0,     0,     0,    59,     0,
1493
      60,    61,    62,   543,    64,    65,    66,    67,     0,     0,
1494
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1495
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1496
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1497
       0,     0,     0,     0,     0,     0,    85,    86,     0,    87,
1498
     661,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1499
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1500
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1501
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1502
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1503
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1504
      35,    36,    37,   811,    38,    39,    40,     0,    41,     0,
1505
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1506
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1507
       0,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1508
       0,     0,    59,     0,    60,    61,    62,   543,    64,    65,
1509
      66,    67,     0,     0,     0,    69,    70,     0,    71,    72,
1510
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1511
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1512
       9,    10,     0,    11,     0,     0,   941,     0,     0,     0,
1513
      85,    86,     0,    87,  -359,    88,    89,    90,    91,   942,
1514
       0,     0,   813,   814,   815,   816,   817,   818,   819,   820,
1515
     821,   822,   943,     0,     0,     0,     0,     0,     0,     0,
1516
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1517
      18,    19,    20,    21,    22,    23,    80,    24,     0,     0,
1518
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1519
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1520
      40,   910,    41,  1010,    42,     0,    43,     0,     0,    44,
1521
       0,     0,     0,    45,    46,    47,    48,    49,    50,     0,
1522
      52,    53,     0,     0,     0,     0,    55,    56,    57,    58,
1523
       0,     0,     0,     0,     0,     0,    59,     0,    60,    61,
1524
      62,   543,    64,    65,    66,    67,     0,     0,     0,    69,
1525
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1526
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1527
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1528
     941,     0,     0,     0,    85,    86,     0,    87,  -359,    88,
1529
      89,    90,    91,   942,     0,     0,   813,   814,   815,   816,
1530
     817,   818,   819,   820,   821,   822,   943,     0,     0,     0,
1531
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1532
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1533
      80,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1534
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1535
      37,     0,    38,    39,    40,     0,    41,  1044,    42,     0,
1536
      43,   987,     0,    44,     0,     0,     0,    45,    46,    47,
1537
      48,    49,    50,     0,    52,    53,     0,     0,     0,     0,
1538
      55,    56,    57,    58,     0,     0,     0,     0,     0,     0,
1539
      59,     0,    60,    61,    62,   543,    64,    65,    66,    67,
1540
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1541
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1542
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1543
       0,    11,     0,     0,   941,     0,     0,     0,    85,    86,
1544
       0,    87,  -359,    88,    89,    90,    91,   942,     0,     0,
1545
     813,   814,   815,   816,   817,   818,   819,   820,   821,   822,
1546
     943,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1547
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1548
      20,    21,    22,    23,    80,    24,     0,     0,     0,    25,
1549
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1550
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1551
      41,  1062,    42,  1031,    43,     0,     0,    44,     0,     0,
1552
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1553
       0,     0,     0,     0,    55,    56,    57,    58,     0,     0,
1554
       0,     0,     0,     0,    59,     0,    60,    61,    62,   543,
1555
      64,    65,    66,    67,     0,     0,     0,    69,    70,     0,
1556
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1557
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1558
       0,    84,     9,    10,     0,    11,     0,     0,   941,     0,
1559
       0,     0,    85,    86,     0,    87,  -359,    88,    89,    90,
1560
      91,   942,     0,     0,   813,   814,   815,   816,   817,   818,
1561
     819,   820,   821,   822,   943,     0,     0,     0,     0,     0,
1562
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1563
      16,    17,    18,    19,    20,    21,    22,    23,    80,    24,
1564
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1565
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1566
      38,    39,    40,     0,    41,  1102,    42,     0,    43,     0,
1567
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1568
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1569
      57,    58,     0,     0,     0,     0,     0,     0,    59,     0,
1570
      60,    61,    62,   543,    64,    65,    66,    67,     0,     0,
1571
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1572
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1573
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1574
       0,     0,     0,     0,     0,     0,    85,    86,     0,    87,
1575
    1043,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1576
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1577
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1578
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1579
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1580
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1581
      35,    36,    37,     0,    38,    39,    40,     0,    41,  1112,
1582
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1583
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1584
       0,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1585
       0,     0,    59,     0,    60,    61,    62,   543,    64,    65,
1586
      66,    67,     0,     0,     0,    69,    70,     0,    71,    72,
1587
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1588
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1589
       9,    10,     0,    11,     0,     0,   941,     0,     0,     0,
1590
      85,    86,     0,    87,  -359,    88,    89,    90,    91,   942,
1591
       0,     0,   813,   814,   815,   816,   817,   818,   819,   820,
1592
     821,   822,   943,     0,     0,     0,     0,     0,     0,     0,
1593
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1594
      18,    19,    20,    21,    22,    23,    80,    24,     0,     0,
1595
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1596
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1597
      40,     0,    41,  1111,    42,     0,    43,     0,     0,    44,
1598
       0,     0,     0,    45,    46,    47,    48,    49,    50,     0,
1599
      52,    53,     0,     0,     0,     0,    55,    56,    57,    58,
1600
       0,     0,     0,     0,     0,     0,    59,     0,    60,    61,
1601
      62,   543,    64,    65,    66,    67,     0,     0,     0,    69,
1602
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1603
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1604
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1605
       0,     0,     0,     0,    85,    86,     0,    87,  1157,    88,
1606
      89,    90,    91,     0,     0,     0,     0,     0,     0,     0,
1607
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1608
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1609
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1610
       0,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1611
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1612
      37,     0,    38,    39,    40,     0,    41,     0,    42,     0,
1613
      43,     0,     0,    44,     0,     0,     0,    45,    46,    47,
1614
      48,    49,    50,     0,    52,    53,     0,     0,     0,     0,
1615
      55,    56,    57,    58,     0,     0,     0,     0,     0,     0,
1616
      59,     0,    60,    61,    62,   543,    64,    65,    66,    67,
1617
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1618
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1619
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1620
       0,    11,     0,     0,     0,     0,     0,     0,    85,    86,
1621
       0,    87,  1158,    88,    89,    90,    91,     0,     0,     0,
1622
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1623
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1624
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1625
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1626
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1627
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1628
      41,     0,    42,     0,    43,     0,     0,    44,     0,     0,
1629
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1630
       0,     0,     0,     0,    55,    56,    57,    58,     0,     0,
1631
       0,     0,     0,     0,    59,     0,    60,    61,    62,   543,
1632
      64,    65,    66,    67,     0,     0,     0,    69,    70,     0,
1633
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1634
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1635
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1636
       0,     0,    85,    86,     0,    87,  1159,    88,    89,    90,
1637
      91,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1638
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1639
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1640
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1641
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1642
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1643
      38,    39,    40,     0,    41,     0,    42,     0,    43,     0,
1644
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1645
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1646
      57,    58,     0,     0,     0,     0,     0,     0,    59,     0,
1647
      60,    61,    62,   543,    64,    65,    66,    67,     0,     0,
1648
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1649
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1650
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1651
       0,     0,     0,     0,     0,     0,    85,    86,     0,    87,
1652
    1193,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1653
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1654
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1655
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1656
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1657
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1658
      35,    36,    37,     0,    38,    39,    40,     0,    41,     0,
1659
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1660
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1661
       0,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1662
       0,     0,    59,     0,    60,    61,    62,   543,    64,    65,
1663
      66,    67,     0,     0,     0,    69,    70,     0,    71,    72,
1664
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1665
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1666
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1667
      85,    86,     0,    87,  1203,    88,    89,    90,    91,     0,
1668
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1669
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1670
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1671
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1672
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1673
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1674
      40,     0,    41,     0,    42,     0,    43,     0,     0,    44,
1675
       0,     0,     0,    45,    46,    47,    48,    49,    50,     0,
1676
      52,    53,     0,     0,     0,     0,    55,    56,    57,    58,
1677
       0,     0,     0,     0,     0,     0,    59,     0,    60,    61,
1678
      62,   543,    64,    65,    66,    67,     0,     0,     0,    69,
1679
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1680
      79,    80,    81,    82,    83,     0,     0,     0,     0,     0,
1681
       0,     0,   225,    84,   226,   227,   228,   229,   230,   231,
1682
     232,   233,   234,     0,    85,    86,     0,    87,     0,    88,
1683
      89,    90,    91,    49,    50,     0,     0,     0,     0,     0,
1684
       0,     0,     0,   350,    57,    58,     0,     0,     0,     0,
1685
       0,     0,   163,     0,     0,     0,     0,     0,    64,    65,
1686
      66,    67,     0,     0,     0,     0,     0,   235,     0,     0,
1687
       0,     0,     0,     0,     0,     0,     0,    80,   236,     0,
1688
     237,   238,     0,     0,   239,     0,     0,     0,    31,     0,
1689
       0,     0,     0,     0,   241,   242,   243,   244,   245,   246,
1690
     247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1691
     257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
1692
     267,   268,   269,   270,   271,   272,   273,   274,   275,   276,
1693
     277,   278,   279,   280,     0,     0,     0,   281,   282,   283,
1694
     284,   285,     0,   286,   287,   288,   289,   290,   291,   292,
1695
     293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
1696
     303,   304,   225,     0,   226,   227,   228,   229,   230,   231,
1697
     232,   233,   234,     0,     0,     0,     0,     0,     0,     0,
1698
       0,     0,     0,     0,     0,     0,     0,     0,   602,     0,
1699
       0,     0,     0,    91,   369,   370,   371,   372,   373,   374,
1700
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
1701
     385,   386,   387,   388,   389,     0,   390,   235,     0,     0,
1702
       0,     0,     0,     0,     0,     0,   391,     0,   236,     0,
1703
     237,   238,     0,     0,   239,     0,     0,     0,    31,     0,
1704
       0,     0,     0,     0,   241,   242,   243,   244,   245,   246,
1705
     247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1706
     257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
1707
     267,   268,   269,   270,   271,   272,   273,   274,   275,   276,
1708
     277,   278,   279,   280,     0,     0,     0,   281,   282,   283,
1709
     284,   285,     0,   286,   287,   288,   289,   290,   291,   292,
1710
     293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
1711
     303,   304,     4,     0,     5,     6,     7,     8,     0,     0,
1712
       0,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1713
       0,     0,     0,     0,     0,     0,     0,     0,   606,     0,
1714
     742,     0,     0,    91,     0,     0,     0,     0,     0,     0,
1715
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1716
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1717
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1718
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1719
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1720
      39,    40,     0,    41,     0,    42,     0,    43,     0,     0,
1721
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1722
       0,    52,    53,     0,     0,     0,     0,    55,    56,     0,
1723
       0,     0,     0,     0,     0,     0,     0,   134,     0,    60,
1724
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1725
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1726
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1727
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1728
       0,     0,     0,     0,     0,    85,    86,     0,    87,     0,
1729
      88,    89,    90,    91,   745,     0,     0,     0,     0,     0,
1730
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1731
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1732
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1733
      23,     0,    24,     0,     0,     0,    25,    26,    27,    28,
1734
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1735
      36,    37,     0,    38,    39,    40,     0,    41,     0,    42,
1736
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1737
      47,    48,    49,    50,     0,    52,    53,     0,     0,     0,
1738
       0,    55,    56,     0,     0,     0,     0,     0,     0,     0,
1739
       0,   134,     0,    60,    61,    62,     0,     0,     0,     0,
1740
       0,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1741
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1742
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1743
      10,     0,    11,     0,     0,     0,     0,     0,     0,    85,
1744
      86,     0,    87,     0,    88,    89,    90,    91,   848,     0,
1745
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1746
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1747
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1748
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1749
      25,    26,    27,    28,    29,    30,    31,    32,     0,    33,
1750
       0,     0,    34,    35,    36,    37,     0,    38,    39,    40,
1751
       0,    41,     0,    42,     0,    43,     0,     0,    44,     0,
1752
       0,     0,    45,    46,    47,    48,    49,    50,     0,    52,
1753
      53,     0,     0,     0,     0,    55,    56,     0,     0,     0,
1754
       0,     0,     0,     0,     0,   134,     0,    60,    61,    62,
1755
       0,     0,     0,     0,     0,     0,     0,     0,    69,    70,
1756
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1757
      80,    81,    82,    83,     4,     0,     5,     6,     7,     8,
1758
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1759
       0,     0,     0,    85,    86,     0,    87,     0,    88,    89,
1760
      90,    91,   916,     0,     0,     0,     0,     0,     0,     0,
1761
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1762
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1763
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1764
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1765
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1766
       0,    38,    39,    40,     0,    41,     0,    42,     0,    43,
1767
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1768
      49,    50,     0,    52,    53,     0,     0,     0,     0,    55,
1769
      56,     0,     0,     0,     0,     0,     0,     0,     0,   134,
1770
       0,    60,    61,    62,     0,     0,     0,     0,     0,     0,
1771
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1772
      76,    77,    78,    79,    80,    81,    82,    83,     4,     0,
1773
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1774
      11,     0,     0,     0,     0,     0,     0,    85,    86,     0,
1775
      87,     0,    88,    89,    90,    91,  1027,     0,     0,     0,
1776
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1777
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1778
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1779
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1780
      27,    28,    29,    30,    31,    32,     0,    33,     0,     0,
1781
      34,    35,    36,    37,     0,    38,    39,    40,     0,    41,
1782
       0,    42,     0,    43,     0,     0,    44,     0,     0,     0,
1783
      45,    46,    47,    48,    49,    50,     0,    52,    53,     0,
1784
       0,     0,     0,    55,    56,     0,     0,     0,     0,     0,
1785
       0,     0,     0,   134,     0,    60,    61,    62,     0,     0,
1786
       0,     0,     0,     0,     0,     0,    69,    70,     0,    71,
1787
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1788
      82,    83,     4,     0,     5,     6,     7,     8,     0,     0,
1789
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1790
       0,    85,    86,     0,    87,     0,    88,    89,    90,    91,
1791
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1792
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1793
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1794
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1795
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1796
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1797
      39,    40,     0,    41,     0,    42,     0,    43,     0,     0,
1798
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1799
       0,    52,    53,     0,     0,     0,     0,    55,    56,     0,
1800
       0,     0,     0,     0,     0,     0,     0,   134,     0,    60,
1801
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1802
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1803
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1804
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1805
       0,     0,     0,     0,     0,    85,    86,     0,    87,     0,
1806
      88,    89,    90,    91,     0,     0,     0,     0,     0,     0,
1807
     332,   333,     0,     0,     0,     0,     0,     0,     0,     0,
1808
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1809
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1810
      23,     0,    24,     0,     0,     0,    25,    26,   132,    28,
1811
      29,    30,    31,     0,     0,    33,     0,     0,    34,    35,
1812
      36,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1813
       0,     0,     0,     0,     0,     0,     0,     0,    45,     0,
1814
       0,     0,    49,    50,     0,     0,     0,     0,     0,     0,
1815
       0,     0,   133,     0,     0,     0,     0,     0,     0,     0,
1816
       0,   134,     0,     0,    61,    62,     0,     0,     0,     0,
1817
       0,     0,     0,     0,   334,    70,     0,    71,    72,    73,
1818
      74,    75,    76,    77,    78,    79,    80,    81,    82,     0,
1819
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1820
      10,     0,    11,     0,   335,     0,     0,     0,     0,     0,
1821
      86,     0,     0,     0,    88,    89,    90,    91,     0,     0,
1822
       0,     0,     0,     0,   332,   333,     0,     0,     0,     0,
1823
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1824
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1825
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1826
      25,    26,   132,    28,    29,    30,    31,     0,     0,    33,
1827
       0,     0,    34,    35,    36,     0,     0,     0,     0,     0,
1828
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1829
       0,     0,    45,     0,     0,     0,    49,    50,     0,     0,
1830
       0,     0,     0,     0,     0,     0,   133,     0,     0,     0,
1831
       0,     0,     0,     0,     0,   134,     0,     0,    61,    62,
1832
       0,     0,     0,     0,     0,     0,     0,     0,    69,    70,
1833
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1834
      80,    81,    82,     0,     4,     0,     5,     6,     7,     8,
1835
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1836
       0,     0,     0,     0,    86,     0,     0,     0,    88,    89,
1837
      90,    91,     0,     0,     0,     0,     0,     0,   332,   333,
1838
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1839
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1840
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1841
      24,     0,     0,     0,    25,    26,   132,    28,    29,    30,
1842
      31,     0,     0,    33,     0,     0,    34,    35,    36,     0,
1843
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1844
       0,     0,     0,     0,     0,     0,    45,     0,     0,     0,
1845
      49,    50,     0,     0,     0,     0,     0,     0,     0,     0,
1846
     133,     0,     0,     0,     0,     0,     0,     0,     0,   134,
1847
       0,     0,    61,    62,     0,     0,     0,     0,     0,     0,
1848
       0,     0,   708,    70,     0,    71,    72,    73,    74,    75,
1849
      76,    77,    78,    79,    80,    81,    82,     0,     4,     0,
1850
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1851
      11,     0,     0,     0,     0,     0,     0,     0,    86,     0,
1852
       0,     0,    88,    89,    90,    91,     0,     0,     0,     0,
1853
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1854
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1855
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1856
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1857
     132,    28,    29,    30,    31,     0,     0,    33,     0,     0,
1858
      34,    35,    36,     0,     0,     0,     0,     0,     0,     0,
1859
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1860
      45,     0,     0,     0,    49,    50,     0,     0,     0,     0,
1861
       0,     0,     0,     0,   133,     0,     0,     0,     0,     0,
1862
       0,     0,     0,   134,     0,     0,    61,    62,     0,     0,
1863
       0,     0,     0,     0,     0,     0,    69,    70,     0,    71,
1864
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1865
      82,   478,     4,     0,     5,     6,     7,     8,     0,     0,
1866
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1867
       0,     0,    86,     0,     0,     0,    88,    89,    90,    91,
1868
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1869
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1870
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1871
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1872
       0,     0,    25,    26,   132,    28,    29,    30,    31,     0,
1873
       0,    33,   536,     0,    34,    35,    36,     0,     0,     0,
1874
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1875
       0,     0,     0,     0,    45,     0,     0,     0,    49,    50,
1876
       0,     0,     0,     0,     0,     0,     0,     0,   133,     0,
1877
       0,     0,     0,     0,     0,     0,     0,   134,     0,     0,
1878
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1879
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1880
      78,    79,    80,    81,    82,     0,     4,     0,     5,     6,
1881
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1882
       0,     0,     0,     0,     0,     0,    86,     0,     0,     0,
1883
      88,    89,    90,    91,   568,     0,     0,     0,     0,     0,
1884
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1885
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1886
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1887
      23,     0,    24,     0,     0,     0,    25,    26,   132,    28,
1888
      29,    30,    31,     0,     0,    33,     0,     0,    34,    35,
1889
      36,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1890
       0,     0,     0,     0,     0,     0,     0,     0,    45,     0,
1891
       0,     0,    49,    50,     0,     0,     0,     0,     0,     0,
1892
       0,     0,   133,     0,     0,     0,     0,     0,     0,     0,
1893
       0,   134,     0,     0,    61,    62,     0,     0,     0,     0,
1894
       0,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1895
      74,    75,    76,    77,    78,    79,    80,    81,    82,     0,
1896
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1897
      10,     0,    11,     0,     0,     0,     0,     0,     0,     0,
1898
      86,     0,     0,     0,    88,    89,    90,    91,   -47,     0,
1899
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1900
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1901
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1902
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1903
      25,    26,   132,    28,    29,    30,    31,     0,     0,    33,
1904
       0,     0,    34,    35,    36,     0,     0,     0,     0,     0,
1905
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1906
       0,     0,    45,     0,     0,     0,    49,    50,     0,     0,
1907
       0,     0,     0,     0,     0,     0,   133,     0,     0,     0,
1908
       0,     0,     0,     0,     0,   134,     0,     0,    61,    62,
1909
       0,     0,     0,     0,     0,     0,     0,     0,    69,    70,
1910
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1911
      80,    81,    82,     0,     0,     4,     0,     5,     6,     7,
1912
       8,     0,    84,     0,     9,    10,     0,    11,     0,     0,
1913
       0,     0,     0,     0,    86,     0,     0,     0,    88,    89,
1914
      90,    91,   732,     0,     0,     0,     0,     0,     0,     0,
1915
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1916
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1917
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1918
       0,    24,     0,     0,     0,    25,    26,   132,    28,    29,
1919
      30,    31,     0,     0,    33,     0,     0,    34,    35,    36,
1920
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1921
       0,     0,     0,     0,     0,     0,     0,    45,     0,     0,
1922
       0,    49,    50,     0,     0,     0,     0,     0,     0,     0,
1923
       0,   133,     0,     0,     0,     0,     0,     0,     0,     0,
1924
     134,     0,     0,    61,    62,     0,     0,     0,     0,     0,
1925
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1926
      75,    76,    77,    78,    79,    80,    81,    82,     0,     4,
1927
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1928
       0,    11,     0,     0,     0,     0,     0,     0,     0,    86,
1929
       0,     0,     0,    88,    89,    90,    91,     0,     0,     0,
1930
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1931
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1932
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1933
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1934
      26,   132,    28,    29,    30,    31,     0,     0,    33,     0,
1935
       0,    34,    35,    36,     0,     0,     0,     0,     0,     0,
1936
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1937
       0,    45,     0,     0,     0,    49,    50,     0,     0,     0,
1938
       0,     0,     0,     0,     0,   133,     0,     0,     0,     0,
1939
       0,     0,     0,     0,   134,     0,     0,    61,    62,     0,
1940
       0,     0,     0,     0,     0,     0,     0,    69,    70,     0,
1941
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1942
      81,    82,   751,     4,     0,     5,     6,     7,     8,     0,
1943
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1944
       0,     0,     0,    86,     0,     0,     0,    88,    89,    90,
1945
      91,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1946
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1947
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1948
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1949
       0,     0,     0,    25,    26,   132,    28,    29,    30,    31,
1950
       0,     0,    33,     0,     0,    34,    35,    36,     0,     0,
1951
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1952
       0,     0,     0,     0,   855,    45,     0,     0,     0,    49,
1953
      50,     0,     0,     0,     0,     0,     0,     0,     0,   133,
1954
       0,     0,     0,     0,     0,     0,     0,     0,   134,     0,
1955
       0,    61,    62,     0,     0,     0,     0,     0,     0,     0,
1956
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1957
      77,    78,    79,    80,    81,    82,     0,     4,     0,     5,
1958
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1959
       0,     0,     0,     0,     0,     0,     0,    86,     0,     0,
1960
       0,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1961
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1962
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1963
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1964
      22,    23,     0,    24,     0,     0,     0,    25,    26,   132,
1965
      28,    29,    30,    31,     0,     0,    33,     0,     0,    34,
1966
      35,    36,     0,     0,     0,     0,     0,     0,     0,     0,
1967
       0,     0,     0,     0,     0,     0,     0,     0,     0,    45,
1968
       0,     0,     0,    49,    50,     0,     0,     0,     0,     0,
1969
       0,     0,     0,   133,     0,     0,     0,     0,     0,     0,
1970
       0,     0,   134,     0,     0,    61,    62,     0,     0,     0,
1971
       0,     0,     0,     0,     0,    69,    70,     0,    71,    72,
1972
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1973
       0,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1974
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1975
       0,    86,     0,     0,     0,    88,    89,    90,    91,     0,
1976
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1977
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1978
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1979
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1980
       0,    25,    26,   132,    28,    29,    30,    31,     0,     0,
1981
      33,     0,     0,    34,    35,    36,     0,     0,     0,     0,
1982
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1983
       0,     0,     0,    45,     0,     0,     0,    49,    50,     0,
1984
       0,     0,     0,     0,     0,     0,     0,   133,     0,     0,
1985
       0,     0,     0,     0,     0,     0,   134,     0,     0,    61,
1986
      62,     0,     0,     0,     0,     0,     0,     0,     0,    69,
1987
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1988
      79,    80,    81,    82,     0,     0,     0,     0,     0,     0,
1989
       0,     0,   225,    84,   226,   227,   228,   229,   230,   231,
1990
     232,   233,   234,     0,     0,   157,     0,     0,     0,    88,
1991
      89,    90,    91,   364,     0,   365,   366,   367,   368,   369,
1992
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
1993
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
1994
       0,   390,     0,     0,     0,     0,     0,   235,     0,     0,
1995
       0,   391,     0,     0,     0,     0,     0,     0,   236,     0,
1996
     237,   238,     0,     0,   429,    28,    29,    30,     0,     0,
1997
       0,     0,     0,     0,   241,   242,   243,   244,   245,   246,
1998
     247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1999
     257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
2000
     267,   268,   269,   270,   271,   272,   273,   274,  1081,   276,
2001
     277,   278,   279,   280,     0,     0,     0,   281,   282,   283,
2002
     284,   285,     0,   286,   287,   288,   289,   290,   291,   292,
2003
     293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
2004
     303,   304,   225,     0,   226,   227,   228,   229,   230,   231,
2005
     232,   233,   234,     0,     0,     0,     0,     0,     0,     0,
2006
       0,     0,     0,     0,     0,     0,     0,     0,     0,  1082,
2007
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2008
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2009
     385,   386,   387,   388,   389,     0,   390,   235,     0,     0,
2010
       0,     0,     0,     0,     0,     0,   391,     0,   236,     0,
2011
     237,   238,     0,     0,   429,    28,    29,    30,     0,     0,
2012
       0,     0,     0,     0,   241,   242,   243,   244,   245,   246,
2013
     247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
2014
     257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
2015
     267,   268,   269,   270,   271,   272,   273,   274,  1081,   276,
2016
     277,   278,   279,   280,     0,     0,     0,   281,   282,   283,
2017
     284,   285,     0,   286,   287,   288,   289,   290,   291,   292,
2018
     293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
2019
     303,   304,     0,   225,     0,   226,   227,   228,   229,   230,
2020
     231,   232,   233,   234,     0,     0,     0,     0,     0,     0,
2021
       0,     0,     0,     0,     0,     0,     0,     0,     0,  1116,
2022
     782,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2023
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2024
     386,   387,   388,   389,     0,   390,     0,     0,   235,     0,
2025
       0,     0,     0,     0,     0,   391,     0,     0,     0,   236,
2026
       0,   237,   238,     0,     0,  1054,    28,    29,    30,     0,
2027
       0,     0,     0,     0,     0,   241,   242,   243,   244,   245,
2028
     246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
2029
     256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
2030
     266,   267,   268,   269,   270,   271,   272,   273,   274,  1055,
2031
     276,   277,   278,   279,   280,     0,     0,     0,   281,   282,
2032
     283,   284,   285,     0,   286,   287,   288,   289,   290,   291,
2033
     292,   293,  1056,  1057,   296,   297,   298,   299,   300,   301,
2034
     302,   303,   304,     0,     0,   361,   362,   363,     0,     0,
2035
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2036
       0,     0,     0,     0,     0,     0,   364,   786,   365,   366,
2037
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2038
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2039
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2040
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2041
       0,     0,     0,     0,     0,     0,   364,     0,   365,   366,
2042
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2043
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2044
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2045
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2046
       0,     0,     0,     0,     0,     0,   364,     0,   365,   366,
2047
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2048
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2049
     387,   388,   389,     0,   390,     0,   361,   362,   363,     0,
2050
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2051
       0,     0,     0,     0,     0,     0,   703,   364,     0,   365,
2052
     366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2053
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2054
     386,   387,   388,   389,     0,   390,   361,   362,   363,     0,
2055
       0,     0,     0,     0,     0,   391,     0,     0,     0,     0,
2056
       0,     0,     0,     0,     0,     0,   713,   364,     0,   365,
2057
     366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2058
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2059
     386,   387,   388,   389,     0,   390,   361,   362,   363,     0,
2060
       0,     0,     0,     0,     0,   391,     0,     0,     0,     0,
2061
       0,     0,     0,     0,     0,     0,   833,   364,     0,   365,
2062
     366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2063
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2064
     386,   387,   388,   389,     0,   390,     0,   361,   362,   363,
2065
       0,     0,     0,     0,     0,   391,     0,     0,     0,     0,
2066
       0,     0,     0,     0,     0,     0,     0,   834,   364,     0,
2067
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2068
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2069
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2070
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2071
       0,     0,     0,     0,     0,     0,     0,   835,   364,     0,
2072
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2073
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2074
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2075
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2076
       0,   637,     0,     0,     0,   542,     0,     0,   364,     0,
2077
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2078
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2079
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2080
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2081
       0,     0,     0,     0,     0,     0,   542,     0,   364,     0,
2082
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2083
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2084
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2085
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2086
       0,     0,     0,     0,     0,     0,   638,     0,   364,     0,
2087
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2088
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2089
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2090
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2091
       0,     0,     0,     0,     0,     0,   639,     0,   364,     0,
2092
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2093
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2094
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2095
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2096
       0,     0,     0,     0,     0,     0,   648,     0,   364,     0,
2097
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2098
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2099
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2100
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2101
       0,     0,     0,     0,     0,     0,   651,     0,   364,     0,
2102
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2103
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2104
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2105
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2106
       0,     0,     0,     0,     0,     0,   657,     0,   364,     0,
2107
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2108
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2109
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2110
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2111
       0,     0,     0,     0,     0,     0,   658,     0,   364,     0,
2112
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2113
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2114
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2115
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2116
       0,     0,     0,     0,     0,     0,   676,     0,   364,     0,
2117
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2118
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2119
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2120
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2121
       0,     0,     0,     0,     0,     0,   692,     0,   364,     0,
2122
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2123
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2124
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2125
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2126
       0,     0,     0,     0,     0,     0,   809,     0,   364,  1034,
2127
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2128
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2129
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2130
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2131
       0,     0,     0,     0,     0,     0,   810,     0,   364,     0,
2132
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2133
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2134
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2135
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2136
       0,     0,     0,     0,     0,     0,   838,     0,   364,     0,
2137
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2138
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2139
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2140
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2141
       0,     0,     0,     0,  1035,     0,     0,     0,   364,     0,
2142
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2143
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2144
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2145
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2146
       0,     0,     0,     0,   392,     0,     0,     0,   364,     0,
2147
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2148
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2149
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2150
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2151
       0,     0,     0,     0,   530,     0,     0,     0,   364,     0,
2152
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2153
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2154
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2155
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2156
       0,     0,   332,   333,  1202,     0,     0,     0,   364,     0,
2157
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2158
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2159
     385,   386,   387,   388,   389,     0,   390,     0,     0,     0,
2160
     132,    28,    29,    30,    31,     0,   391,    33,     0,     0,
2161
       0,   313,     0,   886,     0,     0,     0,     0,     0,     0,
2162
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2163
       0,   225,     0,   226,   227,   228,   229,   230,   231,   232,
2164
     233,   234,     0,     0,   162,     0,     0,     0,     0,     0,
2165
       0,     0,     0,   134,     0,     0,     0,     0,     0,     0,
2166
       0,     0,  -409,     0,     0,     0,   753,    70,     0,    71,
2167
      72,    73,    74,    75,    76,    77,    78,    79,     0,     0,
2168
       0,     0,     0,     0,     0,     0,   235,     0,     0,     0,
2169
       0,     0,     0,     0,     0,     0,     0,   236,     0,   237,
2170
     238,     0,   314,  1142,     0,     0,   754,     0,    90,    91,
2171
       0,     0,  -406,   241,   242,   243,   244,   245,   246,   247,
2172
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
2173
     258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
2174
     268,   269,   270,   271,   272,   273,   274,   813,   814,   815,
2175
     816,   817,   818,   819,   820,   821,   822,   282,   283,   284,
2176
     285,     0,   286,   287,   288,   289,   290,   291,   292,   293,
2177
     294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
2178
     304,   225,   363,   226,   227,   228,   229,   230,   231,   232,
2179
     233,   234,     0,     0,     0,     0,     0,     0,     0,     0,
2180
       0,   364,     0,   365,   366,   367,   368,   369,   370,   371,
2181
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2182
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
2183
       0,     0,     0,     0,     0,     0,   235,     0,     0,   391,
2184
       0,     0,     0,     0,     0,     0,     0,   236,     0,   237,
2185
     238,     0,     0,   239,     0,     0,   240,     0,     0,     0,
2186
       0,     0,     0,   241,   242,   243,   244,   245,   246,   247,
2187
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
2188
     258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
2189
     268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
2190
     278,   279,   280,     0,     0,     0,   281,   282,   283,   284,
2191
     285,     0,   286,   287,   288,   289,   290,   291,   292,   293,
2192
     294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
2193
     304,   225,     0,   226,   227,   228,   229,   230,   231,   232,
2194
     233,   234,   368,   369,   370,   371,   372,   373,   374,   375,
2195
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2196
     386,   387,   388,   389,     0,   390,     0,     0,     0,     0,
2197
       0,     0,     0,     0,     0,   391,     0,     0,     0,     0,
2198
       0,     0,     0,     0,     0,     0,   235,     0,     0,     0,
2199
       0,     0,     0,     0,     0,     0,     0,   236,     0,   237,
2200
     238,     0,     0,   239,     0,     0,     0,     0,     0,     0,
2201
       0,     0,     0,   241,   242,   243,   244,   245,   246,   247,
2202
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
2203
     258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
2204
     268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
2205
     278,   279,   280,     0,     0,     0,   281,   282,   283,   284,
2206
     285,     0,   286,   287,   288,   289,   290,   291,   292,   293,
2207
     294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
2208
     304,   225,     0,   226,   227,   228,   229,   230,   231,   232,
2209
     233,   234,   370,   371,   372,   373,   374,   375,   376,   377,
2210
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2211
     388,   389,     0,   390,     0,     0,     0,     0,     0,     0,
2212
       0,     0,     0,   391,     0,     0,     0,     0,     0,     0,
2213
       0,     0,     0,     0,     0,     0,   235,     0,     0,     0,
2214
       0,     0,     0,     0,     0,     0,     0,   236,     0,   237,
2215
     238,     0,     0,  1098,     0,     0,     0,     0,     0,     0,
2216
       0,     0,     0,   241,   242,   243,   244,   245,   246,   247,
2217
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
2218
     258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
2219
     268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
2220
     278,   279,   280,     0,     0,     0,   281,   282,   283,   284,
2221
     285,     0,   286,   287,   288,   289,   290,   291,   292,   293,
2222
     294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
2223
     304,   132,    28,    29,    30,    31,     0,     0,    33,     0,
2224
       0,     0,   313,   372,   373,   374,   375,   376,   377,   378,
2225
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
2226
     389,     0,   390,     0,     0,     0,     0,     0,     0,     0,
2227
       0,     0,   391,     0,     0,   162,     0,     0,     0,     0,
2228
       0,     0,     0,     0,   134,     0,     0,     0,     0,     0,
2229
       0,     0,     0,     0,     0,     0,     0,     0,    70,     0,
2230
      71,    72,    73,    74,    75,    76,    77,    78,    79,     0,
2231
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2232
     361,   362,   363,     0,     0,     0,     0,     0,     0,     0,
2233
       0,     0,     0,   314,     0,     0,     0,   315,     0,    90,
2234
      91,   364,     0,   365,   366,   367,   368,   369,   370,   371,
2235
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2236
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
2237
       0,     0,     0,     0,     0,     0,     0,     0,     0,   391,
2238
       0,     0,     0,     0,     0,     0,     0,     0,     0,   361,
2239
     362,   363,     0,     0,   552,     0,     0,     0,     0,     0,
2240
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2241
     364,   655,   365,   366,   367,   368,   369,   370,   371,   372,
2242
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2243
     383,   384,   385,   386,   387,   388,   389,     0,   390,   361,
2244
     362,   363,     0,     0,     0,     0,     0,     0,   391,     0,
2245
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2246
     364,   719,   365,   366,   367,   368,   369,   370,   371,   372,
2247
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2248
     383,   384,   385,   386,   387,   388,   389,     0,   390,   361,
2249
     362,   363,     0,     0,     0,     0,     0,     0,   391,     0,
2250
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2251
     364,     0,   365,   366,   367,   368,   369,   370,   371,   372,
2252
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2253
     383,   384,   385,   386,   387,   388,   389,     0,   390,   362,
2254
     363,     0,     0,     0,     0,     0,     0,     0,   391,     0,
2255
       0,     0,     0,     0,     0,     0,     0,     0,     0,   364,
2256
       0,   365,   366,   367,   368,   369,   370,   371,   372,   373,
2257
     374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
2258
     384,   385,   386,   387,   388,   389,   419,   390,     0,     0,
2259
       0,     0,     0,     0,     0,     0,     0,   391,     0,     0,
2260
       0,     0,   364,     0,   365,   366,   367,   368,   369,   370,
2261
     371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
2262
     381,   382,   383,   384,   385,   386,   387,   388,   389,     0,
2263
     390,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2264
     391,  -608,  -608,  -608,  -608,  -608,   377,   378,   379,   380,
2265
     381,   382,   383,   384,   385,   386,   387,   388,   389,     0,
2266
     390,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2267
     391
2268
};
2269
2270
static const yytype_int16 yycheck[] =
2271
{
2272
       2,    35,   116,    94,    81,    82,     2,    56,    68,     2,
2273
      54,    80,    47,   776,   205,   829,    35,    52,   469,   197,
2274
      35,   766,    14,   137,   722,   770,    81,    82,    14,   684,
2275
     978,    14,   980,    35,  1023,  1009,  1025,    14,    14,     2,
2276
     521,    31,    31,    37,   135,    94,    75,    79,   760,   310,
2277
     311,    31,   966,    37,   315,   313,   507,   103,   104,    79,
2278
     511,    31,     0,   714,  1134,   103,   104,    58,    75,    81,
2279
      82,    79,    79,    79,   525,   166,    39,    68,    79,   875,
2280
      81,    35,   101,    31,   133,  1059,   135,   738,   169,   109,
2281
     110,  1161,   174,   827,   176,  1009,   177,   179,    94,   128,
2282
     100,    94,   177,     4,     5,     6,     7,     8,     9,    10,
2283
      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
2284
      21,    22,    23,    24,   782,    79,  1100,   177,   786,    79,
2285
     100,    81,   390,   831,   180,    81,    82,    38,   952,   851,
2286
     217,   853,   180,  1132,   940,    46,    47,   166,   167,   115,
2287
     116,    52,   184,   808,   177,   873,    81,    82,   166,   167,
2288
     168,   205,   217,   897,   898,   961,   167,   168,  1157,  1158,
2289
     170,   137,   179,   179,   100,   109,   110,   184,   184,   942,
2290
      79,   836,    83,    75,   178,    86,   178,    88,   177,   179,
2291
     177,  1180,   178,   938,   178,   178,   176,  1186,   177,  1188,
2292
     176,   178,   174,   179,   685,   217,   178,    71,    72,  1198,
2293
      75,    76,    77,    78,    79,   949,  1012,   167,   168,    30,
2294
     177,   879,   880,   881,   882,    89,   177,   945,    59,  1177,
2295
    1026,    75,    79,   183,    81,   169,   954,   120,   121,   399,
2296
     974,   975,   976,   977,   170,   128,    75,    76,    77,    78,
2297
     327,    79,   179,    81,   119,    79,   157,    81,   174,   336,
2298
     161,    92,   178,   164,    75,    76,    77,    78,   167,   168,
2299
     153,   217,   327,    79,   175,    81,   169,   178,   312,   313,
2300
     177,   336,   183,   184,   185,  1003,   187,   188,   549,   635,
2301
     119,   637,   217,  1011,   313,   174,   175,   312,   313,   178,
2302
     646,   350,   177,   134,   464,   465,  1120,    75,   119,   500,
2303
      78,   313,   177,   142,   143,   327,   767,   218,   219,   184,
2304
     167,   168,    37,    38,   336,   394,   177,   157,   158,   331,
2305
     176,   142,   143,   179,   177,   331,   396,   397,   166,   167,
2306
     168,   172,   166,   167,   168,  1063,    75,    76,   177,    78,
2307
    1164,   181,    75,   169,  1072,    78,   390,   177,  1121,   109,
2308
     110,   167,   168,   177,    79,   400,   177,    75,    76,   119,
2309
      78,   157,   158,   177,   825,   390,    75,    76,    77,    78,
2310
     109,   327,   111,   169,   177,   563,   109,   436,   111,   169,
2311
     336,   177,   177,    53,   357,   181,    68,   431,    75,    76,
2312
      77,    78,   327,   153,   855,   174,   857,   176,   859,   310,
2313
     311,   336,   431,   314,   315,    75,   431,   868,   134,    79,
2314
     119,   169,   174,   175,    84,   326,   178,   120,   121,   431,
2315
    1148,   174,   467,   176,   335,   128,   402,   174,  1156,   176,
2316
      92,   134,   119,   142,   143,  1163,   347,   516,   176,    75,
2317
      76,    77,    78,  1151,   545,  1173,   500,   102,   103,   104,
2318
     361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
2319
     371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
2320
     381,   382,   383,   384,   385,   386,   387,   388,   389,  1187,
2321
     391,   493,   174,   754,   176,   176,   545,   493,   174,   400,
2322
     176,   402,   403,   404,   405,   406,   407,   408,   409,   410,
2323
     411,   412,   413,   414,   415,   176,   142,   143,   419,   420,
2324
     421,   422,   423,   424,   425,   426,    16,   428,   102,   103,
2325
     104,   600,    71,    72,    75,    76,    77,    78,    37,    38,
2326
     617,   157,   158,   176,   805,   157,   158,   157,   158,   545,
2327
     451,   177,   545,   169,   109,   110,   157,   158,    35,   169,
2328
      37,   177,   617,   176,   742,   181,   467,   745,   169,   181,
2329
     401,   181,    16,   474,   157,   158,   177,   478,   655,   174,
2330
     181,   176,   843,    75,   157,   158,   552,    35,   489,    37,
2331
     659,   178,   157,   158,    30,   672,   169,   174,   181,   176,
2332
     655,   142,   143,   504,   169,   617,   437,   174,   181,   176,
2333
     174,    75,   176,   682,    75,   324,   181,   672,  1069,   328,
2334
     180,   181,   119,   120,   121,   122,   123,   124,   125,   126,
2335
     127,   128,   709,   342,    75,   344,   345,   346,   176,    75,
2336
      76,    77,    78,   655,   678,   114,   115,   681,   549,   120,
2337
     121,   552,   179,   554,   709,   689,   153,   128,   177,   560,
2338
     672,   562,   177,   678,   880,   881,   681,   568,   683,   177,
2339
     848,   617,   975,   976,   689,    89,    90,   175,   755,   174,
2340
     182,   177,    31,   180,   686,   648,   177,   176,   651,   655,
2341
     686,    31,   617,   686,    31,   526,   527,   709,    31,    31,
2342
     755,   602,    31,    31,    31,   606,   142,   143,   777,   655,
2343
     611,    31,    31,   891,    31,   717,    31,    31,   720,   174,
2344
     722,   717,   174,   686,   177,   794,   672,   176,   174,    75,
2345
     655,   176,   823,   634,   635,    79,   637,   179,   916,   174,
2346
     174,   177,   776,   755,   176,   646,   138,   672,   138,   650,
2347
      31,   179,   653,   654,   178,   178,   934,   174,    54,    55,
2348
      56,   776,    58,   709,   175,    75,    75,   782,   180,   846,
2349
     177,   786,    68,   674,   605,    16,    75,   177,   609,   177,
2350
     177,   177,   613,   614,   709,   178,   175,   175,   179,   100,
2351
      16,   846,   178,   795,   179,   758,   178,   178,   139,   795,
2352
     179,   702,   795,   175,    35,    84,   177,   175,   178,   755,
2353
     711,   178,   827,   991,   992,   177,   177,   176,   719,   174,
2354
     889,   177,   176,   176,    55,   100,   174,   174,   179,   831,
2355
     755,   176,   795,    35,   846,   837,    35,   839,   176,   908,
2356
     874,   837,    37,   839,    31,   176,   809,    75,   178,  1027,
2357
     751,   174,   178,   754,   945,   177,  1034,  1035,   176,   874,
2358
      91,   762,   175,   179,   879,   880,   881,   882,   174,   174,
2359
     174,   873,   941,    50,    51,    52,    53,    54,    55,    56,
2360
     846,    58,   897,   898,   847,   180,    52,    53,    54,    55,
2361
      56,    68,    58,   895,  1008,   177,   797,   180,   174,   933,
2362
     846,   179,    68,    37,   805,   179,   178,   180,   942,    31,
2363
      38,    35,    35,   178,   176,   116,    37,   919,   933,   178,
2364
     178,   846,   178,   919,   176,    14,    14,   942,  1106,   180,
2365
     109,   111,  1110,   179,   949,  1113,    14,    37,   171,   840,
2366
     841,   177,   843,    79,  1004,   109,   110,   111,    79,   179,
2367
      16,   966,   954,   176,   950,   119,   120,   121,   176,   974,
2368
     975,   976,   977,   965,   128,   176,   178,    16,    16,   965,
2369
     134,   135,   136,   137,    16,    16,    16,    16,    16,   179,
2370
    1049,    79,   174,   179,   986,   179,   176,  1047,   169,   153,
2371
     986,   176,   176,  1053,  1009,   100,  1065,   117,  1000,   169,
2372
      79,  1003,    16,   179,  1000,   179,  1040,  1185,   177,  1011,
2373
     178,   176,   179,  1047,    75,   178,   177,  1120,   178,  1197,
2374
     983,   922,   985,   689,  1084,  1040,  1095,    94,   929,    54,
2375
     931,   866,  1047,   205,  1036,  1037,   186,   500,   672,   846,
2376
    1036,  1037,  1008,   985,   929,   895,   823,   949,   786,   898,
2377
    1084,  1165,   502,   157,  1123,   945,  1125,  1084,  1024,  1128,
2378
    1129,  1063,  1122,  1093,  1133,   505,  1155,  1163,   490,  1084,
2379
    1072,  1073,  1163,  1075,  1076,  1100,   840,  1073,  1059,  1075,
2380
    1076,   653,   313,   166,  1144,   397,  1108,  1121,   640,   554,
2381
     474,    -1,   674,   994,    -1,    -1,   997,    -1,  1167,    -1,
2382
      -1,    -1,    -1,    -1,    -1,    -1,  1121,    -1,    -1,    -1,
2383
    1179,    75,    76,    77,    78,    79,    75,    76,    77,    78,
2384
      79,    -1,    -1,    -1,   119,   120,   121,   122,   123,   124,
2385
     125,   126,   127,   128,  1136,    -1,    -1,  1139,    -1,  1141,
2386
    1136,    -1,  1108,  1139,    -1,  1141,  1148,    -1,    -1,  1151,
2387
      -1,    -1,    -1,    -1,  1156,   119,   120,   121,   153,   390,
2388
     119,   120,   121,    -1,   128,   396,   397,   398,   399,   128,
2389
     134,  1173,    -1,    -1,    -1,    -1,    -1,    -1,  1079,    -1,
2390
      -1,    -1,    -1,   178,    -1,  1187,    -1,  1189,    -1,   153,
2391
    1091,    -1,    -1,  1189,   153,  1096,  1097,    -1,  1200,  1165,
2392
     431,    -1,  1103,  1104,  1200,    49,    50,    51,    52,    53,
2393
      54,    55,    56,   177,    58,    -1,    -1,    -1,   177,    -1,
2394
     184,    -1,    -1,    -1,    68,   184,    -1,    -1,    -1,    -1,
2395
      -1,   462,    -1,   464,   465,   466,   119,   120,   121,   122,
2396
     123,   124,   125,   126,   127,   128,    -1,     3,  1149,     5,
2397
       6,     7,     8,     9,    10,    11,    12,    13,    -1,    15,
2398
      -1,    -1,    -1,    -1,   103,    -1,    -1,    -1,    -1,    -1,
2399
     153,   502,   111,    -1,    30,    -1,    -1,    -1,    -1,    -1,
2400
     119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2401
     129,    -1,    -1,    -1,  1195,   178,    52,    53,    -1,    -1,
2402
      -1,    57,    58,    59,    60,    61,    62,    63,    64,    65,
2403
      66,    67,    -1,    69,   153,    71,    72,    73,    74,    75,
2404
      76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,
2405
      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
2406
      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
2407
     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
2408
     116,   117,   118,   119,   120,   121,   122,   123,   124,    -1,
2409
      -1,    -1,   128,   129,   130,   131,   132,    -1,   134,   135,
2410
     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
2411
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2412
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   165,
2413
      -1,    -1,    -1,    -1,    -1,   171,    -1,    -1,    -1,    -1,
2414
      -1,   177,   178,    -1,    -1,   181,   182,   183,   184,     3,
2415
      -1,     5,     6,     7,     8,     9,    10,    11,    12,    13,
2416
      -1,    15,    -1,    -1,    -1,    -1,   119,   120,   121,   122,
2417
     123,   124,   125,   126,   127,   128,    30,    -1,    -1,    -1,
2418
     119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2419
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2420
     153,    -1,    -1,    57,    58,    59,    60,    61,    62,    63,
2421
      64,    65,    66,    67,   153,    69,    -1,    71,    72,    73,
2422
      74,    75,    76,    77,    78,    79,    -1,   180,    82,    -1,
2423
      -1,    85,    86,    87,    88,    89,    90,    91,    92,    93,
2424
      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
2425
     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
2426
     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
2427
     124,    -1,    -1,    -1,   128,   129,   130,   131,   132,    -1,
2428
     134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
2429
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2430
     154,   155,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2431
      -1,   165,    -1,    -1,    -1,    -1,    -1,   171,    -1,    -1,
2432
      -1,    -1,    -1,   177,   178,    -1,    -1,   181,   182,   183,
2433
     184,     3,    -1,     5,     6,     7,     8,     9,    10,    11,
2434
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,   119,   120,
2435
     121,   122,   123,   124,   125,   126,   127,   128,    30,    44,
2436
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
2437
      55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,
2438
      52,    53,   153,    68,    -1,    57,    58,    59,    60,    61,
2439
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    71,
2440
      72,    73,    74,    75,    76,    77,    78,    79,    -1,   180,
2441
      82,    -1,    -1,    85,    86,    87,    88,    89,    90,    91,
2442
      92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
2443
     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
2444
     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
2445
     122,   123,   124,    -1,    -1,    -1,   128,   129,   130,   131,
2446
     132,    -1,   134,   135,   136,   137,   138,   139,   140,   141,
2447
     142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
2448
     152,   153,   154,   155,    -1,    -1,    -1,    -1,    -1,    -1,
2449
      -1,    -1,    -1,   165,    -1,    -1,    -1,    -1,    -1,   171,
2450
      -1,    -1,    -1,    -1,    -1,   177,   178,    -1,    -1,   181,
2451
     182,   183,   184,     3,    -1,     5,     6,     7,     8,     9,
2452
      10,    11,    12,    13,    -1,    15,   119,   120,   121,   122,
2453
     123,   124,   125,   126,   127,   128,    -1,    -1,    -1,    -1,
2454
      30,    -1,    -1,    -1,    16,    17,    18,    19,    20,    21,
2455
      22,    23,    24,    25,    26,    27,    28,    29,    -1,    -1,
2456
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    58,    59,
2457
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2458
      -1,    71,    72,    73,    74,    75,    76,    77,    78,    79,
2459
      -1,    -1,    82,    -1,    -1,    85,    86,    87,    88,    89,
2460
      90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
2461
     100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
2462
     110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
2463
     120,   121,   122,   123,   124,    -1,    -1,    -1,   128,   129,
2464
     130,   131,   132,    -1,   134,   135,   136,   137,   138,   139,
2465
     140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
2466
     150,   151,   152,   153,   154,   155,    -1,     3,    -1,     5,
2467
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2468
      -1,   171,   154,   155,    -1,   157,   158,   177,   109,    -1,
2469
     111,   181,   182,   183,   184,    -1,    -1,   169,   119,   120,
2470
     121,   122,   123,   124,   125,   126,   127,   128,    -1,   181,
2471
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2472
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2473
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2474
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2475
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    -1,
2476
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2477
     106,   107,   108,   109,   110,   111,   112,   113,    -1,    -1,
2478
     116,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2479
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2480
     136,   137,    -1,    -1,   140,   141,   142,    -1,   144,   145,
2481
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2482
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2483
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2484
     176,   177,    -1,   179,   180,   181,   182,   183,   184,    -1,
2485
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2486
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2487
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2488
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2489
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2490
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2491
      92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,
2492
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,   111,
2493
     112,   113,    -1,    -1,   116,    -1,   118,   119,   120,   121,
2494
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2495
     132,   133,   134,   135,   136,   137,    -1,    -1,   140,   141,
2496
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2497
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2498
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2499
      -1,    -1,    -1,    -1,   176,   177,    -1,   179,   180,   181,
2500
     182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2501
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2502
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2503
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2504
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2505
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2506
      88,    -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,
2507
      98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2508
     108,   109,   110,   111,   112,   113,    -1,    -1,   116,    -1,
2509
     118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,
2510
     128,    -1,   130,   131,   132,   133,   134,   135,   136,   137,
2511
      -1,    -1,   140,   141,   142,    -1,   144,   145,   146,   147,
2512
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2513
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2514
      -1,    15,    -1,    -1,   103,    -1,    -1,    -1,   176,   177,
2515
      -1,   179,   111,   181,   182,   183,   184,   116,    -1,    -1,
2516
     119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2517
     129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2518
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2519
      64,    65,    66,    67,   153,    69,    -1,    -1,    -1,    73,
2520
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2521
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2522
      94,   180,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
2523
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2524
      -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,
2525
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
2526
     134,   135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,
2527
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2528
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2529
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2530
      -1,    -1,   176,   177,    -1,   179,   180,   181,   182,   183,
2531
     184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2532
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2533
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2534
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2535
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2536
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2537
      90,    91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,
2538
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2539
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2540
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2541
     130,   131,   132,   133,   134,   135,   136,   137,    -1,    -1,
2542
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2543
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2544
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2545
      -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,
2546
     180,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2547
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2548
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2549
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2550
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2551
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2552
      86,    87,    88,    89,    90,    91,    92,    -1,    94,    -1,
2553
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2554
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2555
      -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2556
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2557
     136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2558
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2559
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2560
      12,    13,    -1,    15,    -1,    -1,   103,    -1,    -1,    -1,
2561
     176,   177,    -1,   179,   111,   181,   182,   183,   184,   116,
2562
      -1,    -1,   119,   120,   121,   122,   123,   124,   125,   126,
2563
     127,   128,   129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2564
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2565
      62,    63,    64,    65,    66,    67,   153,    69,    -1,    -1,
2566
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2567
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2568
      92,    93,    94,   180,    96,    -1,    98,    -1,    -1,   101,
2569
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,    -1,
2570
     112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,
2571
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2572
     132,   133,   134,   135,   136,   137,    -1,    -1,    -1,   141,
2573
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2574
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2575
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2576
     103,    -1,    -1,    -1,   176,   177,    -1,   179,   111,   181,
2577
     182,   183,   184,   116,    -1,    -1,   119,   120,   121,   122,
2578
     123,   124,   125,   126,   127,   128,   129,    -1,    -1,    -1,
2579
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2580
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2581
     153,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2582
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2583
      88,    -1,    90,    91,    92,    -1,    94,   180,    96,    -1,
2584
      98,    99,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2585
     108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,
2586
     118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,
2587
     128,    -1,   130,   131,   132,   133,   134,   135,   136,   137,
2588
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2589
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2590
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2591
      -1,    15,    -1,    -1,   103,    -1,    -1,    -1,   176,   177,
2592
      -1,   179,   111,   181,   182,   183,   184,   116,    -1,    -1,
2593
     119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2594
     129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2595
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2596
      64,    65,    66,    67,   153,    69,    -1,    -1,    -1,    73,
2597
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2598
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2599
      94,   180,    96,    97,    98,    -1,    -1,   101,    -1,    -1,
2600
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2601
      -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,
2602
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
2603
     134,   135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,
2604
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2605
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2606
      -1,   165,    12,    13,    -1,    15,    -1,    -1,   103,    -1,
2607
      -1,    -1,   176,   177,    -1,   179,   111,   181,   182,   183,
2608
     184,   116,    -1,    -1,   119,   120,   121,   122,   123,   124,
2609
     125,   126,   127,   128,   129,    -1,    -1,    -1,    -1,    -1,
2610
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2611
      60,    61,    62,    63,    64,    65,    66,    67,   153,    69,
2612
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2613
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2614
      90,    91,    92,    -1,    94,   180,    96,    -1,    98,    -1,
2615
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2616
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2617
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2618
     130,   131,   132,   133,   134,   135,   136,   137,    -1,    -1,
2619
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2620
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2621
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2622
      -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,
2623
     180,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2624
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2625
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2626
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2627
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2628
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2629
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    95,
2630
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2631
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2632
      -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2633
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2634
     136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2635
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2636
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2637
      12,    13,    -1,    15,    -1,    -1,   103,    -1,    -1,    -1,
2638
     176,   177,    -1,   179,   111,   181,   182,   183,   184,   116,
2639
      -1,    -1,   119,   120,   121,   122,   123,   124,   125,   126,
2640
     127,   128,   129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2641
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2642
      62,    63,    64,    65,    66,    67,   153,    69,    -1,    -1,
2643
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2644
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2645
      92,    -1,    94,   180,    96,    -1,    98,    -1,    -1,   101,
2646
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,    -1,
2647
     112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,
2648
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2649
     132,   133,   134,   135,   136,   137,    -1,    -1,    -1,   141,
2650
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2651
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2652
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2653
      -1,    -1,    -1,    -1,   176,   177,    -1,   179,   180,   181,
2654
     182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2655
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2656
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2657
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2658
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2659
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2660
      88,    -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,
2661
      98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2662
     108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,
2663
     118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,
2664
     128,    -1,   130,   131,   132,   133,   134,   135,   136,   137,
2665
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2666
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2667
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2668
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,
2669
      -1,   179,   180,   181,   182,   183,   184,    -1,    -1,    -1,
2670
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2671
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2672
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2673
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2674
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2675
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2676
      94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
2677
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2678
      -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,
2679
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
2680
     134,   135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,
2681
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2682
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2683
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2684
      -1,    -1,   176,   177,    -1,   179,   180,   181,   182,   183,
2685
     184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2686
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2687
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2688
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2689
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2690
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2691
      90,    91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,
2692
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2693
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2694
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2695
     130,   131,   132,   133,   134,   135,   136,   137,    -1,    -1,
2696
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2697
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2698
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2699
      -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,
2700
     180,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2701
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2702
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2703
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2704
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2705
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2706
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    -1,
2707
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2708
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2709
      -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2710
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2711
     136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2712
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2713
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2714
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2715
     176,   177,    -1,   179,   180,   181,   182,   183,   184,    -1,
2716
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2717
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2718
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2719
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2720
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2721
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2722
      92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,
2723
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,    -1,
2724
     112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,
2725
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2726
     132,   133,   134,   135,   136,   137,    -1,    -1,    -1,   141,
2727
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2728
     152,   153,   154,   155,   156,    -1,    -1,    -1,    -1,    -1,
2729
      -1,    -1,     3,   165,     5,     6,     7,     8,     9,    10,
2730
      11,    12,    13,    -1,   176,   177,    -1,   179,    -1,   181,
2731
     182,   183,   184,   109,   110,    -1,    -1,    -1,    -1,    -1,
2732
      -1,    -1,    -1,   119,   120,   121,    -1,    -1,    -1,    -1,
2733
      -1,    -1,   128,    -1,    -1,    -1,    -1,    -1,   134,   135,
2734
     136,   137,    -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,
2735
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   153,    69,    -1,
2736
      71,    72,    -1,    -1,    75,    -1,    -1,    -1,    79,    -1,
2737
      -1,    -1,    -1,    -1,    85,    86,    87,    88,    89,    90,
2738
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
2739
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
2740
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
2741
     121,   122,   123,   124,    -1,    -1,    -1,   128,   129,   130,
2742
     131,   132,    -1,   134,   135,   136,   137,   138,   139,   140,
2743
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
2744
     151,   152,     3,    -1,     5,     6,     7,     8,     9,    10,
2745
      11,    12,    13,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2746
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   179,    -1,
2747
      -1,    -1,    -1,   184,    36,    37,    38,    39,    40,    41,
2748
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
2749
      52,    53,    54,    55,    56,    -1,    58,    58,    -1,    -1,
2750
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    69,    -1,
2751
      71,    72,    -1,    -1,    75,    -1,    -1,    -1,    79,    -1,
2752
      -1,    -1,    -1,    -1,    85,    86,    87,    88,    89,    90,
2753
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
2754
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
2755
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
2756
     121,   122,   123,   124,    -1,    -1,    -1,   128,   129,   130,
2757
     131,   132,    -1,   134,   135,   136,   137,   138,   139,   140,
2758
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
2759
     151,   152,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2760
      -1,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2761
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   179,    -1,
2762
      31,    -1,    -1,   184,    -1,    -1,    -1,    -1,    -1,    -1,
2763
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2764
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2765
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2766
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2767
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2768
      91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,
2769
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2770
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,    -1,
2771
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2772
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2773
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2774
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2775
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2776
      -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,    -1,
2777
     181,   182,   183,   184,    31,    -1,    -1,    -1,    -1,    -1,
2778
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2779
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2780
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2781
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2782
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2783
      87,    88,    -1,    90,    91,    92,    -1,    94,    -1,    96,
2784
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2785
     107,   108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,
2786
      -1,   118,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2787
      -1,   128,    -1,   130,   131,   132,    -1,    -1,    -1,    -1,
2788
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2789
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2790
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2791
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,
2792
     177,    -1,   179,    -1,   181,   182,   183,   184,    31,    -1,
2793
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2794
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2795
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2796
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2797
      73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
2798
      -1,    -1,    85,    86,    87,    88,    -1,    90,    91,    92,
2799
      -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,
2800
      -1,    -1,   105,   106,   107,   108,   109,   110,    -1,   112,
2801
     113,    -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,
2802
      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
2803
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
2804
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2805
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2806
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2807
      -1,    -1,    -1,   176,   177,    -1,   179,    -1,   181,   182,
2808
     183,   184,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2809
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2810
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2811
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
2812
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2813
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2814
      -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,    98,
2815
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2816
     109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,
2817
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2818
      -1,   130,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,
2819
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2820
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2821
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2822
      15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,
2823
     179,    -1,   181,   182,   183,   184,    31,    -1,    -1,    -1,
2824
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2825
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2826
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2827
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2828
      75,    76,    77,    78,    79,    80,    -1,    82,    -1,    -1,
2829
      85,    86,    87,    88,    -1,    90,    91,    92,    -1,    94,
2830
      -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,
2831
     105,   106,   107,   108,   109,   110,    -1,   112,   113,    -1,
2832
      -1,    -1,    -1,   118,   119,    -1,    -1,    -1,    -1,    -1,
2833
      -1,    -1,    -1,   128,    -1,   130,   131,   132,    -1,    -1,
2834
      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,
2835
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2836
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2837
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2838
      -1,   176,   177,    -1,   179,    -1,   181,   182,   183,   184,
2839
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2840
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2841
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2842
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2843
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2844
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2845
      91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,
2846
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2847
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,    -1,
2848
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2849
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2850
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2851
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2852
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2853
      -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,    -1,
2854
     181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
2855
      37,    38,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2856
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2857
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2858
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2859
      77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,
2860
      87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2861
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,
2862
      -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
2863
      -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2864
      -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,
2865
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2866
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
2867
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2868
      13,    -1,    15,    -1,   171,    -1,    -1,    -1,    -1,    -1,
2869
     177,    -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
2870
      -1,    -1,    -1,    -1,    37,    38,    -1,    -1,    -1,    -1,
2871
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2872
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2873
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2874
      73,    74,    75,    76,    77,    78,    79,    -1,    -1,    82,
2875
      -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,
2876
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2877
      -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,
2878
      -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,
2879
      -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,
2880
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
2881
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2882
     153,   154,   155,    -1,     3,    -1,     5,     6,     7,     8,
2883
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2884
      -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,
2885
     183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    37,    38,
2886
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2887
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2888
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
2889
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2890
      79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,    -1,
2891
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2892
      -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,
2893
     109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2894
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2895
      -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,
2896
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2897
     149,   150,   151,   152,   153,   154,   155,    -1,     3,    -1,
2898
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2899
      15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,
2900
      -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
2901
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2902
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2903
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2904
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2905
      75,    76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,
2906
      85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2907
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2908
     105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,
2909
      -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,
2910
      -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,
2911
      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,
2912
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2913
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2914
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2915
      -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,   184,
2916
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2917
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2918
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2919
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2920
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    -1,
2921
      -1,    82,    83,    -1,    85,    86,    87,    -1,    -1,    -1,
2922
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2923
      -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,
2924
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,
2925
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,
2926
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2927
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2928
     151,   152,   153,   154,   155,    -1,     3,    -1,     5,     6,
2929
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2930
      -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,
2931
     181,   182,   183,   184,    31,    -1,    -1,    -1,    -1,    -1,
2932
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2933
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2934
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2935
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2936
      77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,
2937
      87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2938
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,
2939
      -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
2940
      -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2941
      -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,
2942
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2943
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
2944
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2945
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2946
     177,    -1,    -1,    -1,   181,   182,   183,   184,    31,    -1,
2947
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2948
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2949
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2950
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2951
      73,    74,    75,    76,    77,    78,    79,    -1,    -1,    82,
2952
      -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,
2953
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2954
      -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,
2955
      -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,
2956
      -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,
2957
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
2958
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2959
     153,   154,   155,    -1,    -1,     3,    -1,     5,     6,     7,
2960
       8,    -1,   165,    -1,    12,    13,    -1,    15,    -1,    -1,
2961
      -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,
2962
     183,   184,    30,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2963
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2964
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2965
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2966
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2967
      78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,
2968
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2969
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,
2970
      -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2971
      -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2972
     128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,
2973
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2974
     148,   149,   150,   151,   152,   153,   154,   155,    -1,     3,
2975
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2976
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,
2977
      -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,
2978
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2979
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2980
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2981
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2982
      74,    75,    76,    77,    78,    79,    -1,    -1,    82,    -1,
2983
      -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
2984
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2985
      -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,
2986
      -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,
2987
      -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,
2988
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,
2989
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2990
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2991
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2992
      -1,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,
2993
     184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2994
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2995
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2996
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2997
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2998
      -1,    -1,    82,    -1,    -1,    85,    86,    87,    -1,    -1,
2999
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3000
      -1,    -1,    -1,    -1,   104,   105,    -1,    -1,    -1,   109,
3001
     110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,
3002
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
3003
      -1,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3004
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
3005
     150,   151,   152,   153,   154,   155,    -1,     3,    -1,     5,
3006
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
3007
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,
3008
      -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
3009
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3010
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
3011
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
3012
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
3013
      76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,
3014
      86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3015
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,
3016
      -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,
3017
      -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,
3018
      -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,
3019
      -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
3020
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
3021
      -1,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
3022
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
3023
      -1,   177,    -1,    -1,    -1,   181,   182,   183,   184,    -1,
3024
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3025
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3026
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
3027
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
3028
      -1,    73,    74,    75,    76,    77,    78,    79,    -1,    -1,
3029
      82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,
3030
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3031
      -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,
3032
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,
3033
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,
3034
     132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,
3035
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
3036
     152,   153,   154,   155,    -1,    -1,    -1,    -1,    -1,    -1,
3037
      -1,    -1,     3,   165,     5,     6,     7,     8,     9,    10,
3038
      11,    12,    13,    -1,    -1,   177,    -1,    -1,    -1,   181,
3039
     182,   183,   184,    30,    -1,    32,    33,    34,    35,    36,
3040
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3041
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3042
      -1,    58,    -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,
3043
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,
3044
      71,    72,    -1,    -1,    75,    76,    77,    78,    -1,    -1,
3045
      -1,    -1,    -1,    -1,    85,    86,    87,    88,    89,    90,
3046
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
3047
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
3048
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
3049
     121,   122,   123,   124,    -1,    -1,    -1,   128,   129,   130,
3050
     131,   132,    -1,   134,   135,   136,   137,   138,   139,   140,
3051
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
3052
     151,   152,     3,    -1,     5,     6,     7,     8,     9,    10,
3053
      11,    12,    13,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3054
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,
3055
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3056
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3057
      52,    53,    54,    55,    56,    -1,    58,    58,    -1,    -1,
3058
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    69,    -1,
3059
      71,    72,    -1,    -1,    75,    76,    77,    78,    -1,    -1,
3060
      -1,    -1,    -1,    -1,    85,    86,    87,    88,    89,    90,
3061
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
3062
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
3063
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
3064
     121,   122,   123,   124,    -1,    -1,    -1,   128,   129,   130,
3065
     131,   132,    -1,   134,   135,   136,   137,   138,   139,   140,
3066
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
3067
     151,   152,    -1,     3,    -1,     5,     6,     7,     8,     9,
3068
      10,    11,    12,    13,    -1,    -1,    -1,    -1,    -1,    -1,
3069
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,
3070
      30,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3071
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3072
      53,    54,    55,    56,    -1,    58,    -1,    -1,    58,    -1,
3073
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    69,
3074
      -1,    71,    72,    -1,    -1,    75,    76,    77,    78,    -1,
3075
      -1,    -1,    -1,    -1,    -1,    85,    86,    87,    88,    89,
3076
      90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
3077
     100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
3078
     110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
3079
     120,   121,   122,   123,   124,    -1,    -1,    -1,   128,   129,
3080
     130,   131,   132,    -1,   134,   135,   136,   137,   138,   139,
3081
     140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
3082
     150,   151,   152,    -1,    -1,     9,    10,    11,    -1,    -1,
3083
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3084
      -1,    -1,    -1,    -1,    -1,    -1,    30,   177,    32,    33,
3085
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3086
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3087
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3088
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3089
      -1,    -1,    -1,    -1,    -1,    -1,    30,    -1,    32,    33,
3090
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3091
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3092
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3093
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3094
      -1,    -1,    -1,    -1,    -1,    -1,    30,    -1,    32,    33,
3095
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3096
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3097
      54,    55,    56,    -1,    58,    -1,     9,    10,    11,    -1,
3098
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3099
      -1,    -1,    -1,    -1,    -1,    -1,   180,    30,    -1,    32,
3100
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3101
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3102
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3103
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3104
      -1,    -1,    -1,    -1,    -1,    -1,   180,    30,    -1,    32,
3105
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3106
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3107
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3108
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3109
      -1,    -1,    -1,    -1,    -1,    -1,   180,    30,    -1,    32,
3110
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3111
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3112
      53,    54,    55,    56,    -1,    58,    -1,     9,    10,    11,
3113
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3114
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,    30,    -1,
3115
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3116
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3117
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3118
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3119
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,    30,    -1,
3120
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3121
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3122
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3123
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3124
      -1,   174,    -1,    -1,    -1,   178,    -1,    -1,    30,    -1,
3125
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3126
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3127
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3128
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3129
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3130
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3131
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3132
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3133
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3134
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3135
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3136
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3137
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3138
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3139
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3140
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3141
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3142
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3143
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3144
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3145
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3146
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3147
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3148
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3149
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3150
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3151
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3152
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3153
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3154
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3155
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3156
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3157
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3158
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3159
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3160
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3161
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3162
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3163
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3164
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3165
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3166
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3167
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3168
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3169
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3170
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3171
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3172
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3173
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3174
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    31,
3175
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3176
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3177
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3178
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3179
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3180
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3181
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3182
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3183
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3184
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3185
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3186
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3187
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3188
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3189
      -1,    -1,    -1,    -1,   176,    -1,    -1,    -1,    30,    -1,
3190
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3191
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3192
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3193
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3194
      -1,    -1,    -1,    -1,   176,    -1,    -1,    -1,    30,    -1,
3195
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3196
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3197
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3198
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3199
      -1,    -1,    -1,    -1,   176,    -1,    -1,    -1,    30,    -1,
3200
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3201
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3202
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3203
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3204
      -1,    -1,    37,    38,   176,    -1,    -1,    -1,    30,    -1,
3205
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3206
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3207
      52,    53,    54,    55,    56,    -1,    58,    -1,    -1,    -1,
3208
      75,    76,    77,    78,    79,    -1,    68,    82,    -1,    -1,
3209
      -1,    86,    -1,   175,    -1,    -1,    -1,    -1,    -1,    -1,
3210
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3211
      -1,     3,    -1,     5,     6,     7,     8,     9,    10,    11,
3212
      12,    13,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,
3213
      -1,    -1,    -1,   128,    -1,    -1,    -1,    -1,    -1,    -1,
3214
      -1,    -1,   174,    -1,    -1,    -1,   141,   142,    -1,   144,
3215
     145,   146,   147,   148,   149,   150,   151,   152,    -1,    -1,
3216
      -1,    -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,
3217
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,    71,
3218
      72,    -1,   177,    75,    -1,    -1,   181,    -1,   183,   184,
3219
      -1,    -1,   174,    85,    86,    87,    88,    89,    90,    91,
3220
      92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
3221
     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
3222
     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
3223
     122,   123,   124,   125,   126,   127,   128,   129,   130,   131,
3224
     132,    -1,   134,   135,   136,   137,   138,   139,   140,   141,
3225
     142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
3226
     152,     3,    11,     5,     6,     7,     8,     9,    10,    11,
3227
      12,    13,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3228
      -1,    30,    -1,    32,    33,    34,    35,    36,    37,    38,
3229
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3230
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3231
      -1,    -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    68,
3232
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,    71,
3233
      72,    -1,    -1,    75,    -1,    -1,    78,    -1,    -1,    -1,
3234
      -1,    -1,    -1,    85,    86,    87,    88,    89,    90,    91,
3235
      92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
3236
     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
3237
     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
3238
     122,   123,   124,    -1,    -1,    -1,   128,   129,   130,   131,
3239
     132,    -1,   134,   135,   136,   137,   138,   139,   140,   141,
3240
     142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
3241
     152,     3,    -1,     5,     6,     7,     8,     9,    10,    11,
3242
      12,    13,    35,    36,    37,    38,    39,    40,    41,    42,
3243
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3244
      53,    54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,
3245
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3246
      -1,    -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,
3247
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,    71,
3248
      72,    -1,    -1,    75,    -1,    -1,    -1,    -1,    -1,    -1,
3249
      -1,    -1,    -1,    85,    86,    87,    88,    89,    90,    91,
3250
      92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
3251
     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
3252
     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
3253
     122,   123,   124,    -1,    -1,    -1,   128,   129,   130,   131,
3254
     132,    -1,   134,   135,   136,   137,   138,   139,   140,   141,
3255
     142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
3256
     152,     3,    -1,     5,     6,     7,     8,     9,    10,    11,
3257
      12,    13,    37,    38,    39,    40,    41,    42,    43,    44,
3258
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3259
      55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,
3260
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3261
      -1,    -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,
3262
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,    71,
3263
      72,    -1,    -1,    75,    -1,    -1,    -1,    -1,    -1,    -1,
3264
      -1,    -1,    -1,    85,    86,    87,    88,    89,    90,    91,
3265
      92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
3266
     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
3267
     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
3268
     122,   123,   124,    -1,    -1,    -1,   128,   129,   130,   131,
3269
     132,    -1,   134,   135,   136,   137,   138,   139,   140,   141,
3270
     142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
3271
     152,    75,    76,    77,    78,    79,    -1,    -1,    82,    -1,
3272
      -1,    -1,    86,    39,    40,    41,    42,    43,    44,    45,
3273
      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
3274
      56,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3275
      -1,    -1,    68,    -1,    -1,   119,    -1,    -1,    -1,    -1,
3276
      -1,    -1,    -1,    -1,   128,    -1,    -1,    -1,    -1,    -1,
3277
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   142,    -1,
3278
     144,   145,   146,   147,   148,   149,   150,   151,   152,    -1,
3279
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3280
       9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3281
      -1,    -1,    -1,   177,    -1,    -1,    -1,   181,    -1,   183,
3282
     184,    30,    -1,    32,    33,    34,    35,    36,    37,    38,
3283
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3284
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3285
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,
3286
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     9,
3287
      10,    11,    -1,    -1,    14,    -1,    -1,    -1,    -1,    -1,
3288
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3289
      30,   100,    32,    33,    34,    35,    36,    37,    38,    39,
3290
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
3291
      50,    51,    52,    53,    54,    55,    56,    -1,    58,     9,
3292
      10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,
3293
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3294
      30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
3295
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
3296
      50,    51,    52,    53,    54,    55,    56,    -1,    58,     9,
3297
      10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,
3298
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3299
      30,    -1,    32,    33,    34,    35,    36,    37,    38,    39,
3300
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
3301
      50,    51,    52,    53,    54,    55,    56,    -1,    58,    10,
3302
      11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,
3303
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    30,
3304
      -1,    32,    33,    34,    35,    36,    37,    38,    39,    40,
3305
      41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
3306
      51,    52,    53,    54,    55,    56,    14,    58,    -1,    -1,
3307
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,
3308
      -1,    -1,    30,    -1,    32,    33,    34,    35,    36,    37,
3309
      38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
3310
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
3311
      58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3312
      68,    39,    40,    41,    42,    43,    44,    45,    46,    47,
3313
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
3314
      58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3315
      68
3316
};
3317
3318
  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
3319
     symbol of state STATE-NUM.  */
3320
static const yytype_int16 yystos[] =
3321
{
3322
       0,   186,   191,     0,     3,     5,     6,     7,     8,    12,
3323
      13,    15,    52,    53,    57,    59,    60,    61,    62,    63,
3324
      64,    65,    66,    67,    69,    73,    74,    75,    76,    77,
3325
      78,    79,    80,    82,    85,    86,    87,    88,    90,    91,
3326
      92,    94,    96,    98,   101,   105,   106,   107,   108,   109,
3327
     110,   111,   112,   113,   116,   118,   119,   120,   121,   128,
3328
     130,   131,   132,   133,   134,   135,   136,   137,   140,   141,
3329
     142,   144,   145,   146,   147,   148,   149,   150,   151,   152,
3330
     153,   154,   155,   156,   165,   176,   177,   179,   181,   182,
3331
     183,   184,   195,   198,   199,   200,   201,   202,   218,   227,
3332
     230,   233,   236,   237,   239,   241,   255,   261,   262,   263,
3333
     264,   329,   330,   331,   332,   333,   334,   342,   344,   348,
3334
     349,   350,   351,   353,   354,   355,   356,   357,   358,   359,
3335
     360,   371,    75,   119,   128,   199,   331,   334,   331,   331,
3336
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3337
     331,   331,   331,   331,   331,   331,   331,   177,   284,   331,
3338
      31,   177,   119,   128,   177,   195,   199,   234,   235,   236,
3339
     327,   344,   345,   359,   361,   177,   282,   347,   177,   322,
3340
     323,   331,   218,   177,   177,   177,   177,   177,   177,   331,
3341
     352,   352,    75,    75,   215,   321,   352,   179,    75,    76,
3342
      78,   109,   111,   193,   194,   205,   207,   211,   214,   288,
3343
     289,   359,    79,   290,   291,   332,   282,   177,   177,   177,
3344
     177,   232,   238,   240,   242,     3,     5,     6,     7,     8,
3345
       9,    10,    11,    12,    13,    58,    69,    71,    72,    75,
3346
      78,    85,    86,    87,    88,    89,    90,    91,    92,    93,
3347
      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
3348
     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
3349
     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
3350
     124,   128,   129,   130,   131,   132,   134,   135,   136,   137,
3351
     138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
3352
     148,   149,   150,   151,   152,   187,   188,   190,   192,   204,
3353
     177,   177,   335,    86,   177,   181,   329,   348,   350,   351,
3354
     358,   358,   331,    79,    81,   166,   167,   168,   368,   369,
3355
     331,   216,    37,    38,   141,   171,   189,   331,   364,   365,
3356
     366,   367,    81,   346,   368,    81,   368,   179,   359,   282,
3357
     119,   198,   201,   332,   134,   236,    71,    72,    71,    72,
3358
      89,     9,    10,    11,    30,    32,    33,    34,    35,    36,
3359
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3360
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3361
      58,    68,   176,   189,   338,   338,   169,   169,   157,   158,
3362
     181,   343,    16,    17,    18,    19,    20,    21,    22,    23,
3363
      24,    25,    26,    27,    28,    29,   154,   155,   338,    14,
3364
       3,     5,     6,     7,     8,    12,    13,    30,    69,    75,
3365
      85,    86,    87,   105,   109,   110,   119,   128,   131,   132,
3366
     141,   142,   144,   145,   146,   147,   148,   149,   150,   151,
3367
     152,   171,   178,   190,   285,   286,   331,   331,   331,   327,
3368
     236,   134,   169,   282,   157,   158,   169,   181,   178,   283,
3369
     286,   287,   331,   331,   174,   176,    92,   331,   156,   325,
3370
     326,   331,   331,   215,   331,   331,   176,   176,   176,    16,
3371
     174,   176,   176,   216,   100,   170,   194,   206,   211,   176,
3372
     174,   176,   174,   176,    16,   174,   176,   224,   225,   358,
3373
     331,   372,   373,   331,   178,    75,    75,    75,    75,   176,
3374
     203,   179,   364,   364,   196,   197,   344,   345,   331,   364,
3375
     176,   157,   158,   181,   166,   369,    83,   331,   358,    81,
3376
     166,   369,   178,   133,   180,   199,   200,   217,   218,   177,
3377
     331,   358,    14,   175,   174,   182,   183,   331,   332,   231,
3378
     177,   218,   177,    31,   176,   331,   331,   331,    31,   331,
3379
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3380
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3381
     331,   331,   331,   331,   331,   345,   331,   335,    75,   128,
3382
     226,   335,   179,   190,   359,   362,   179,   190,   359,   362,
3383
      75,   179,   359,   363,   363,   352,   282,   189,   331,   331,
3384
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3385
     331,   331,   331,   331,    31,   174,   208,   174,   178,   178,
3386
     328,   359,   363,   363,   359,   352,   174,   208,   178,   323,
3387
     177,   178,   331,   176,   174,   100,   178,   178,   178,   331,
3388
     321,   180,    75,   179,   170,   176,   176,   194,   214,   289,
3389
     331,   291,   174,   208,   174,   208,   178,   176,   138,   246,
3390
     335,   138,   247,    31,   243,   179,   191,   178,   178,   174,
3391
     208,   282,   178,   175,    75,    75,    53,    75,    79,    84,
3392
     370,   180,   181,   180,   180,   177,   200,   364,   141,   189,
3393
     331,    16,   365,   180,    75,   331,   331,   216,   331,    31,
3394
     177,   335,   177,   331,   282,   331,   282,   331,   282,   282,
3395
     175,   358,    30,   331,   287,   178,   178,   287,   347,   175,
3396
     287,   178,    31,   218,   331,    31,   218,   260,   324,   326,
3397
     331,   156,   331,   141,   181,   189,   249,   358,   219,    31,
3398
     179,   253,   179,   335,   220,   193,   205,   209,   212,   213,
3399
     179,   225,   178,   373,   178,   344,   139,   248,   179,   295,
3400
     344,   335,    30,   119,   142,   143,   177,   195,   271,   272,
3401
     273,   274,   275,   277,   248,   191,   180,    16,   196,   175,
3402
      84,   175,   331,   178,   178,   177,   358,   331,   246,   178,
3403
     178,    89,   331,   119,   120,   121,   122,   123,   124,   125,
3404
     126,   127,   128,   199,   265,   266,   267,   268,   269,   307,
3405
     308,   177,   265,   180,   180,   180,   246,   216,   178,   216,
3406
     176,   174,   331,   177,   364,   358,    14,   178,    31,   218,
3407
     252,   176,   254,   176,   254,   104,   256,   257,   258,   259,
3408
     331,   114,   115,   223,   100,   213,   174,   208,   210,   213,
3409
     176,   295,   335,   292,   174,   179,   272,   272,   275,    37,
3410
      35,    35,    37,   335,   180,   331,   175,   176,   364,   248,
3411
     218,    31,   176,   269,   178,   174,   208,    30,   177,   270,
3412
     276,   277,   278,   279,   280,   308,   265,   178,   248,   176,
3413
      93,   325,   331,   364,   175,   249,    31,   218,   251,   216,
3414
     254,   102,   103,   104,   254,   180,   174,   208,   180,   174,
3415
     208,   174,   208,   177,   179,    75,   212,   180,   174,   208,
3416
     179,   103,   116,   129,   180,   199,   244,   293,   294,   304,
3417
     305,   306,   307,   344,   292,   178,   272,   272,   273,   273,
3418
     272,   179,   180,   178,   335,   216,    31,   281,   267,   277,
3419
     277,   280,    38,   228,    37,    35,    35,    37,   178,   116,
3420
     339,   335,   176,   178,   178,   178,   216,    99,   102,   176,
3421
     331,    31,   176,   180,    14,   258,   331,    14,   221,   344,
3422
     216,   213,   180,   292,   335,   295,   293,   270,   334,   111,
3423
     180,   292,   179,   271,    14,   178,   171,   229,   277,   277,
3424
     278,   278,   277,   281,   177,   281,   179,    31,   218,   250,
3425
     251,    97,   176,   176,    31,   176,   216,   216,   331,   331,
3426
      35,    79,   222,   180,   180,   190,   176,   179,   296,    79,
3427
     309,   310,   311,   338,    75,   119,   142,   143,   188,   271,
3428
     319,   320,   180,   292,   336,    79,   336,    79,   189,   340,
3429
     341,   336,   292,   216,   176,   216,   216,   344,   178,    16,
3430
     245,   119,   180,   190,   297,   298,   299,   300,   301,   302,
3431
     344,    16,   335,   174,   176,   190,    16,    16,    75,   319,
3432
     174,   176,   180,   337,    16,   335,   179,    79,   174,   208,
3433
     179,   180,    95,   179,   331,   176,   180,   298,   176,   176,
3434
     100,   117,   169,   331,   179,    79,   310,   335,   331,   331,
3435
     176,   320,   331,   331,   179,   313,   216,   341,   178,   216,
3436
     176,   216,    75,   187,   308,   295,   190,   335,   312,    16,
3437
     335,   177,   335,   335,   336,   335,   312,   180,   180,   180,
3438
     190,   179,   180,   199,   307,   314,   315,   331,   265,   313,
3439
     180,   336,   336,   312,   315,   338,   335,   178,   180,    75,
3440
     281,   335,   336,   316,   176,   179,   303,   177,   318,   216,
3441
     336,   265,   336,   180,   178,    14,   176,   179,   317,   331,
3442
     216,   336,   176,   180
3443
};
3444
3445
  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
3446
static const yytype_int16 yyr1[] =
3447
{
3448
       0,   185,   186,   187,   187,   187,   187,   187,   187,   187,
3449
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3450
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3451
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3452
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3453
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3454
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3455
     187,   187,   187,   187,   188,   188,   188,   188,   188,   188,
3456
     188,   188,   189,   189,   190,   190,   191,   191,   192,   192,
3457
     193,   193,   194,   194,   195,   195,   195,   195,   196,   196,
3458
     197,   197,   198,   199,   199,   200,   200,   200,   200,   200,
3459
     201,   201,   202,   202,   202,   202,   202,   203,   202,   204,
3460
     202,   202,   202,   202,   202,   205,   205,   206,   207,   208,
3461
     208,   209,   209,   210,   210,   211,   211,   212,   212,   213,
3462
     213,   214,   214,   215,   215,   216,   216,   217,   217,   217,
3463
     217,   218,   218,   218,   218,   218,   218,   218,   218,   218,
3464
     218,   218,   218,   218,   218,   218,   218,   218,   218,   219,
3465
     218,   218,   218,   218,   218,   218,   220,   220,   221,   221,
3466
     222,   222,   223,   223,   224,   224,   225,   226,   226,   227,
3467
     228,   228,   229,   229,   231,   230,   232,   230,   233,   233,
3468
     234,   234,   235,   235,   236,   236,   236,   238,   237,   240,
3469
     239,   242,   241,   243,   243,   244,   245,   245,   246,   246,
3470
     247,   247,   248,   248,   249,   249,   249,   249,   250,   250,
3471
     251,   251,   252,   252,   253,   253,   253,   253,   254,   254,
3472
     254,   254,   254,   255,   256,   256,   257,   257,   258,   258,
3473
     259,   259,   260,   260,   261,   261,   262,   262,   263,   263,
3474
     264,   264,   265,   265,   266,   266,   267,   267,   268,   268,
3475
     269,   269,   270,   270,   271,   271,   271,   271,   272,   272,
3476
     273,   273,   274,   274,   275,   275,   276,   276,   276,   276,
3477
     277,   277,   277,   278,   278,   279,   279,   280,   280,   281,
3478
     281,   282,   282,   283,   283,   284,   284,   284,   285,   285,
3479
     285,   286,   286,   286,   286,   286,   287,   287,   288,   288,
3480
     289,   290,   290,   291,   291,   292,   292,   293,   293,   293,
3481
     293,   293,   293,   294,   294,   294,   295,   295,   296,   296,
3482
     296,   297,   297,   298,   298,   299,   300,   300,   300,   300,
3483
     301,   301,   302,   303,   303,   304,   304,   305,   305,   306,
3484
     306,   307,   307,   308,   308,   308,   308,   308,   308,   308,
3485
     308,   308,   308,   309,   309,   310,   310,   311,   311,   312,
3486
     312,   312,   313,   313,   314,   314,   316,   315,   317,   317,
3487
     317,   318,   318,   319,   319,   320,   320,   321,   322,   322,
3488
     323,   324,   324,   324,   325,   325,   326,   326,   326,   326,
3489
     328,   327,   329,   329,   329,   330,   331,   331,   331,   331,
3490
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3491
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3492
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3493
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3494
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3495
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3496
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3497
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3498
     331,   331,   332,   332,   333,   334,   335,   336,   337,   338,
3499
     338,   339,   339,   340,   340,   341,   341,   342,   342,   342,
3500
     342,   343,   342,   344,   344,   345,   345,   345,   346,   346,
3501
     346,   347,   347,   348,   348,   348,   348,   349,   349,   349,
3502
     349,   349,   349,   349,   349,   350,   350,   350,   350,   350,
3503
     350,   350,   350,   350,   350,   351,   351,   351,   351,   352,
3504
     352,   353,   354,   354,   354,   354,   354,   355,   355,   356,
3505
     356,   356,   356,   357,   357,   357,   357,   357,   358,   358,
3506
     358,   358,   359,   359,   359,   360,   360,   361,   361,   361,
3507
     361,   361,   361,   362,   362,   362,   363,   363,   363,   364,
3508
     365,   365,   366,   366,   367,   367,   367,   367,   367,   367,
3509
     367,   368,   368,   368,   368,   369,   369,   369,   369,   369,
3510
     369,   369,   369,   370,   370,   370,   370,   371,   371,   371,
3511
     371,   371,   371,   371,   372,   372,   373
3512
};
3513
3514
  /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
3515
static const yytype_int8 yyr2[] =
3516
{
3517
       0,     2,     1,     1,     1,     1,     1,     1,     1,     1,
3518
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3519
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3520
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3521
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3522
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3523
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3524
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3525
       1,     1,     1,     1,     1,     1,     2,     0,     1,     1,
3526
       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
3527
       1,     3,     5,     1,     2,     1,     1,     1,     1,     1,
3528
       1,     3,     1,     1,     2,     4,     3,     0,     6,     0,
3529
       5,     3,     4,     3,     4,     1,     1,     6,     6,     0,
3530
       1,     3,     1,     3,     1,     3,     1,     1,     2,     1,
3531
       3,     1,     3,     3,     1,     2,     0,     1,     1,     2,
3532
       4,     3,     1,     1,     5,     7,     9,     5,     3,     3,
3533
       3,     3,     3,     3,     1,     2,     6,     7,     9,     0,
3534
       6,     1,     6,     3,     2,     3,     0,     9,     1,     3,
3535
       0,     1,     0,     4,     1,     3,     1,     1,     1,    13,
3536
       0,     1,     0,     1,     0,    10,     0,     9,     1,     2,
3537
       1,     2,     0,     1,     1,     1,     1,     0,     7,     0,
3538
       8,     0,     9,     0,     2,     5,     0,     2,     0,     2,
3539
       0,     2,     0,     2,     1,     2,     4,     3,     1,     4,
3540
       1,     4,     1,     4,     3,     4,     4,     5,     0,     5,
3541
       5,     4,     4,     7,     0,     2,     1,     3,     4,     4,
3542
       1,     3,     1,     4,     5,     6,     1,     3,     6,     7,
3543
       3,     6,     2,     0,     1,     3,     2,     1,     0,     1,
3544
       7,     9,     0,     1,     1,     2,     1,     1,     1,     1,
3545
       1,     3,     3,     3,     3,     3,     1,     2,     1,     1,
3546
       1,     1,     1,     1,     3,     3,     3,     3,     3,     0,
3547
       2,     2,     4,     1,     3,     2,     4,     4,     3,     1,
3548
       3,     3,     1,     1,     3,     2,     1,     1,     3,     1,
3549
       1,     3,     1,     1,     3,     2,     0,     4,     3,     4,
3550
       5,    12,     1,     1,     2,     3,     1,     3,     1,     2,
3551
       3,     1,     2,     2,     2,     3,     3,     3,     4,     3,
3552
       1,     1,     3,     1,     3,     1,     1,     0,     1,     0,
3553
       1,     1,     2,     1,     1,     1,     1,     1,     1,     1,
3554
       1,     1,     1,     3,     1,     2,     4,     5,     7,     0,
3555
       2,     3,     0,     3,     0,     1,     0,     9,     1,     3,
3556
       3,     0,     3,     3,     1,     4,     4,     4,     3,     1,
3557
       1,     0,     3,     1,     0,     1,     3,     4,     2,     1,
3558
       0,    10,     3,     2,     3,     2,     1,     6,     5,     3,
3559
       4,     2,     2,     3,     3,     3,     3,     3,     3,     3,
3560
       3,     3,     3,     3,     3,     3,     2,     2,     2,     2,
3561
       3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
3562
       3,     3,     3,     3,     3,     3,     3,     3,     2,     2,
3563
       2,     2,     3,     3,     3,     3,     3,     3,     3,     3,
3564
       3,     3,     3,     3,     1,     1,     5,     4,     3,     1,
3565
       2,     2,     2,     2,     2,     2,     2,     2,     2,     1,
3566
       3,     2,     1,     2,     4,     2,     2,     1,     2,     2,
3567
       3,     1,    13,    12,     1,     1,     0,     0,     0,     0,
3568
       1,     0,     5,     3,     1,     1,     2,     2,     2,     4,
3569
       4,     0,     3,     1,     1,     1,     1,     3,     0,     1,
3570
       1,     0,     1,     4,     3,     1,     3,     1,     1,     3,
3571
       2,     3,     1,     1,     1,     1,     1,     1,     1,     1,
3572
       1,     1,     1,     1,     1,     3,     3,     5,     5,     0,
3573
       1,     1,     1,     3,     1,     1,     1,     1,     1,     1,
3574
       3,     1,     1,     1,     4,     4,     4,     1,     1,     1,
3575
       3,     3,     1,     4,     2,     3,     3,     1,     4,     3,
3576
       3,     3,     3,     1,     3,     1,     1,     3,     1,     1,
3577
       0,     1,     3,     1,     3,     1,     4,     2,     2,     6,
3578
       4,     2,     2,     1,     2,     1,     4,     3,     3,     3,
3579
       3,     6,     3,     1,     1,     2,     1,     5,     4,     2,
3580
       2,     4,     2,     2,     1,     3,     1
3581
};
3582
3583
3584
#define yyerrok         (yyerrstatus = 0)
3585
#define yyclearin       (yychar = YYEMPTY)
3586
27.9M
#define YYEMPTY         (-2)
3587
18.0M
#define YYEOF           0
3588
3589
82.7k
#define YYACCEPT        goto yyacceptlab
3590
30.3k
#define YYABORT         goto yyabortlab
3591
207
#define YYERROR         goto yyerrorlab
3592
3593
3594
#define YYRECOVERING()  (!!yyerrstatus)
3595
3596
#define YYBACKUP(Token, Value)                                    \
3597
  do                                                              \
3598
    if (yychar == YYEMPTY)                                        \
3599
      {                                                           \
3600
        yychar = (Token);                                         \
3601
        yylval = (Value);                                         \
3602
        YYPOPSTACK (yylen);                                       \
3603
        yystate = *yyssp;                                         \
3604
        goto yybackup;                                            \
3605
      }                                                           \
3606
    else                                                          \
3607
      {                                                           \
3608
        yyerror (YY_("syntax error: cannot back up")); \
3609
        YYERROR;                                                  \
3610
      }                                                           \
3611
  while (0)
3612
3613
/* Error token number */
3614
2.88M
#define YYTERROR        1
3615
#define YYERRCODE       256
3616
3617
3618
3619
/* Enable debugging if requested.  */
3620
#if ZENDDEBUG
3621
3622
# ifndef YYFPRINTF
3623
#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
3624
#  define YYFPRINTF fprintf
3625
# endif
3626
3627
# define YYDPRINTF(Args)                        \
3628
do {                                            \
3629
  if (yydebug)                                  \
3630
    YYFPRINTF Args;                             \
3631
} while (0)
3632
3633
/* This macro is provided for backward compatibility. */
3634
#ifndef YY_LOCATION_PRINT
3635
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
3636
#endif
3637
3638
3639
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
3640
do {                                                                      \
3641
  if (yydebug)                                                            \
3642
    {                                                                     \
3643
      YYFPRINTF (stderr, "%s ", Title);                                   \
3644
      yy_symbol_print (stderr,                                            \
3645
                  Type, Value); \
3646
      YYFPRINTF (stderr, "\n");                                           \
3647
    }                                                                     \
3648
} while (0)
3649
3650
3651
/*-----------------------------------.
3652
| Print this symbol's value on YYO.  |
3653
`-----------------------------------*/
3654
3655
static void
3656
yy_symbol_value_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep)
3657
{
3658
  FILE *yyoutput = yyo;
3659
  YYUSE (yyoutput);
3660
  if (!yyvaluep)
3661
    return;
3662
# ifdef YYPRINT
3663
  if (yytype < YYNTOKENS)
3664
    YYPRINT (yyo, yytoknum[yytype], *yyvaluep);
3665
# endif
3666
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
3667
  YYUSE (yytype);
3668
  YY_IGNORE_MAYBE_UNINITIALIZED_END
3669
}
3670
3671
3672
/*---------------------------.
3673
| Print this symbol on YYO.  |
3674
`---------------------------*/
3675
3676
static void
3677
yy_symbol_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep)
3678
{
3679
  YYFPRINTF (yyo, "%s %s (",
3680
             yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
3681
3682
  yy_symbol_value_print (yyo, yytype, yyvaluep);
3683
  YYFPRINTF (yyo, ")");
3684
}
3685
3686
/*------------------------------------------------------------------.
3687
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
3688
| TOP (included).                                                   |
3689
`------------------------------------------------------------------*/
3690
3691
static void
3692
yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop)
3693
{
3694
  YYFPRINTF (stderr, "Stack now");
3695
  for (; yybottom <= yytop; yybottom++)
3696
    {
3697
      int yybot = *yybottom;
3698
      YYFPRINTF (stderr, " %d", yybot);
3699
    }
3700
  YYFPRINTF (stderr, "\n");
3701
}
3702
3703
# define YY_STACK_PRINT(Bottom, Top)                            \
3704
do {                                                            \
3705
  if (yydebug)                                                  \
3706
    yy_stack_print ((Bottom), (Top));                           \
3707
} while (0)
3708
3709
3710
/*------------------------------------------------.
3711
| Report that the YYRULE is going to be reduced.  |
3712
`------------------------------------------------*/
3713
3714
static void
3715
yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp, int yyrule)
3716
{
3717
  int yylno = yyrline[yyrule];
3718
  int yynrhs = yyr2[yyrule];
3719
  int yyi;
3720
  YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n",
3721
             yyrule - 1, yylno);
3722
  /* The symbols being reduced.  */
3723
  for (yyi = 0; yyi < yynrhs; yyi++)
3724
    {
3725
      YYFPRINTF (stderr, "   $%d = ", yyi + 1);
3726
      yy_symbol_print (stderr,
3727
                       yystos[+yyssp[yyi + 1 - yynrhs]],
3728
                       &yyvsp[(yyi + 1) - (yynrhs)]
3729
                                              );
3730
      YYFPRINTF (stderr, "\n");
3731
    }
3732
}
3733
3734
# define YY_REDUCE_PRINT(Rule)          \
3735
do {                                    \
3736
  if (yydebug)                          \
3737
    yy_reduce_print (yyssp, yyvsp, Rule); \
3738
} while (0)
3739
3740
/* Nonzero means print parse trace.  It is left uninitialized so that
3741
   multiple parsers can coexist.  */
3742
int yydebug;
3743
#else /* !ZENDDEBUG */
3744
# define YYDPRINTF(Args)
3745
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
3746
# define YY_STACK_PRINT(Bottom, Top)
3747
# define YY_REDUCE_PRINT(Rule)
3748
#endif /* !ZENDDEBUG */
3749
3750
3751
/* YYINITDEPTH -- initial size of the parser's stacks.  */
3752
#ifndef YYINITDEPTH
3753
113k
# define YYINITDEPTH 200
3754
#endif
3755
3756
/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
3757
   if the built-in stack extension method is used).
3758
3759
   Do not make this value too large; the results are undefined if
3760
   YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
3761
   evaluated with infinite-precision integer arithmetic.  */
3762
3763
#ifndef YYMAXDEPTH
3764
3.96k
# define YYMAXDEPTH 10000
3765
#endif
3766
3767
3768
#if YYERROR_VERBOSE
3769
3770
# ifndef yystrlen
3771
#  if defined __GLIBC__ && defined _STRING_H
3772
30.1k
#   define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S)))
3773
#  else
3774
/* Return the length of YYSTR.  */
3775
static YYPTRDIFF_T
3776
yystrlen (const char *yystr)
3777
{
3778
  YYPTRDIFF_T yylen;
3779
  for (yylen = 0; yystr[yylen]; yylen++)
3780
    continue;
3781
  return yylen;
3782
}
3783
#  endif
3784
# endif
3785
3786
# ifndef yystpcpy
3787
#  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
3788
30.1k
#   define yystpcpy stpcpy
3789
#  else
3790
/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
3791
   YYDEST.  */
3792
static char *
3793
yystpcpy (char *yydest, const char *yysrc)
3794
{
3795
  char *yyd = yydest;
3796
  const char *yys = yysrc;
3797
3798
  while ((*yyd++ = *yys++) != '\0')
3799
    continue;
3800
3801
  return yyd - 1;
3802
}
3803
#  endif
3804
# endif
3805
3806
# ifndef yytnamerr
3807
/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
3808
   quotes and backslashes, so that it's suitable for yyerror.  The
3809
   heuristic is that double-quoting is unnecessary unless the string
3810
   contains an apostrophe, a comma, or backslash (other than
3811
   backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
3812
   null, do not copy; instead, return the length of what the result
3813
   would have been.  */
3814
static YYPTRDIFF_T
3815
yytnamerr (char *yyres, const char *yystr)
3816
{
3817
  if (*yystr == '"')
3818
    {
3819
      YYPTRDIFF_T yyn = 0;
3820
      char const *yyp = yystr;
3821
3822
      for (;;)
3823
        switch (*++yyp)
3824
          {
3825
          case '\'':
3826
          case ',':
3827
            goto do_not_strip_quotes;
3828
3829
          case '\\':
3830
            if (*++yyp != '\\')
3831
              goto do_not_strip_quotes;
3832
            else
3833
              goto append;
3834
3835
          append:
3836
          default:
3837
            if (yyres)
3838
              yyres[yyn] = *yyp;
3839
            yyn++;
3840
            break;
3841
3842
          case '"':
3843
            if (yyres)
3844
              yyres[yyn] = '\0';
3845
            return yyn;
3846
          }
3847
    do_not_strip_quotes: ;
3848
    }
3849
3850
  if (yyres)
3851
    return yystpcpy (yyres, yystr) - yyres;
3852
  else
3853
    return yystrlen (yystr);
3854
}
3855
# endif
3856
3857
/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
3858
   about the unexpected token YYTOKEN for the state stack whose top is
3859
   YYSSP.
3860
3861
   Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
3862
   not large enough to hold the message.  In that case, also set
3863
   *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
3864
   required number of bytes is too large to store.  */
3865
static int
3866
yysyntax_error (YYPTRDIFF_T *yymsg_alloc, char **yymsg,
3867
                yy_state_t *yyssp, int yytoken)
3868
30.1k
{
3869
30.1k
  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
3870
  /* Internationalized format string. */
3871
30.1k
  const char *yyformat = YY_NULLPTR;
3872
  /* Arguments of yyformat: reported tokens (one for the "unexpected",
3873
     one per "expected"). */
3874
30.1k
  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
3875
  /* Actual size of YYARG. */
3876
30.1k
  int yycount = 0;
3877
  /* Cumulated lengths of YYARG.  */
3878
30.1k
  YYPTRDIFF_T yysize = 0;
3879
3880
  /* There are many possibilities here to consider:
3881
     - If this state is a consistent state with a default action, then
3882
       the only way this function was invoked is if the default action
3883
       is an error action.  In that case, don't check for expected
3884
       tokens because there are none.
3885
     - The only way there can be no lookahead present (in yychar) is if
3886
       this state is a consistent state with a default action.  Thus,
3887
       detecting the absence of a lookahead is sufficient to determine
3888
       that there is no unexpected or expected token to report.  In that
3889
       case, just report a simple "syntax error".
3890
     - Don't assume there isn't a lookahead just because this state is a
3891
       consistent state with a default action.  There might have been a
3892
       previous inconsistent state, consistent state with a non-default
3893
       action, or user semantic action that manipulated yychar.
3894
     - Of course, the expected token list depends on states to have
3895
       correct lookahead information, and it depends on the parser not
3896
       to perform extra reductions after fetching a lookahead from the
3897
       scanner and before detecting a syntax error.  Thus, state merging
3898
       (from LALR or IELR) and default reductions corrupt the expected
3899
       token list.  However, the list is correct for canonical LR with
3900
       one exception: it will still contain any token that will not be
3901
       accepted due to an error action in a later state.
3902
  */
3903
30.1k
  if (yytoken != YYEMPTY)
3904
30.1k
    {
3905
30.1k
      int yyn = yypact[+*yyssp];
3906
30.1k
      YYPTRDIFF_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
3907
30.1k
      yysize = yysize0;
3908
30.1k
      yyarg[yycount++] = yytname[yytoken];
3909
30.1k
      if (!yypact_value_is_default (yyn))
3910
30.1k
        {
3911
          /* Start YYX at -YYN if negative to avoid negative indexes in
3912
             YYCHECK.  In other words, skip the first -YYN actions for
3913
             this state because they are default actions.  */
3914
30.1k
          int yyxbegin = yyn < 0 ? -yyn : 0;
3915
          /* Stay within bounds of both yycheck and yytname.  */
3916
30.1k
          int yychecklim = YYLAST - yyn + 1;
3917
30.1k
          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
3918
30.1k
          int yyx;
3919
3920
1.79M
          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
3921
1.78M
            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
3922
130k
                && !yytable_value_is_error (yytable[yyx + yyn]))
3923
129k
              {
3924
129k
                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
3925
23.5k
                  {
3926
23.5k
                    yycount = 1;
3927
23.5k
                    yysize = yysize0;
3928
23.5k
                    break;
3929
23.5k
                  }
3930
106k
                yyarg[yycount++] = yytname[yyx];
3931
106k
                {
3932
106k
                  YYPTRDIFF_T yysize1
3933
106k
                    = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
3934
106k
                  if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
3935
106k
                    yysize = yysize1;
3936
0
                  else
3937
0
                    return 2;
3938
106k
                }
3939
106k
              }
3940
30.1k
        }
3941
30.1k
    }
3942
3943
30.1k
  switch (yycount)
3944
30.1k
    {
3945
0
# define YYCASE_(N, S)                      \
3946
30.1k
      case N:                               \
3947
30.1k
        yyformat = S;                       \
3948
30.1k
      break
3949
0
    default: /* Avoid compiler warnings. */
3950
0
      YYCASE_(0, YY_("syntax error"));
3951
23.5k
      YYCASE_(1, YY_("syntax error, unexpected %s"));
3952
4.46k
      YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
3953
260
      YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
3954
743
      YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
3955
30.1k
      YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
3956
30.1k
# undef YYCASE_
3957
30.1k
    }
3958
3959
30.1k
  {
3960
    /* Don't count the "%s"s in the final size, but reserve room for
3961
       the terminator.  */
3962
30.1k
    YYPTRDIFF_T yysize1 = yysize + (yystrlen (yyformat) - 2 * yycount) + 1;
3963
30.1k
    if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
3964
30.1k
      yysize = yysize1;
3965
0
    else
3966
0
      return 2;
3967
30.1k
  }
3968
3969
30.1k
  if (*yymsg_alloc < yysize)
3970
7
    {
3971
7
      *yymsg_alloc = 2 * yysize;
3972
7
      if (! (yysize <= *yymsg_alloc
3973
7
             && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
3974
0
        *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
3975
7
      return 1;
3976
7
    }
3977
3978
  /* Avoid sprintf, as that infringes on the user's name space.
3979
     Don't have undefined behavior even if the translation
3980
     produced a string with the wrong number of "%s"s.  */
3981
30.1k
  {
3982
30.1k
    char *yyp = *yymsg;
3983
30.1k
    int yyi = 0;
3984
926k
    while ((*yyp = *yyformat) != '\0')
3985
895k
      if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
3986
41.8k
        {
3987
41.8k
          yyp += yytnamerr (yyp, yyarg[yyi++]);
3988
41.8k
          yyformat += 2;
3989
41.8k
        }
3990
853k
      else
3991
853k
        {
3992
853k
          ++yyp;
3993
853k
          ++yyformat;
3994
853k
        }
3995
30.1k
  }
3996
30.1k
  return 0;
3997
30.1k
}
3998
#endif /* YYERROR_VERBOSE */
3999
4000
/*-----------------------------------------------.
4001
| Release the memory associated to this symbol.  |
4002
`-----------------------------------------------*/
4003
4004
static void
4005
yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
4006
769k
{
4007
769k
  YYUSE (yyvaluep);
4008
769k
  if (!yymsg)
4009
0
    yymsg = "Deleting";
4010
769k
  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
4011
4012
769k
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
4013
769k
  switch (yytype)
4014
769k
    {
4015
94
    case 73: /* "integer"  */
4016
94
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4017
94
            { zend_ast_destroy(((*yyvaluep).ast)); }
4018
94
#line 4019 "/src/php-src/Zend/zend_language_parser.c"
4019
94
        break;
4020
4021
98
    case 74: /* "floating-point number"  */
4022
98
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4023
98
            { zend_ast_destroy(((*yyvaluep).ast)); }
4024
98
#line 4025 "/src/php-src/Zend/zend_language_parser.c"
4025
98
        break;
4026
4027
3.96k
    case 75: /* "identifier"  */
4028
3.96k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4029
3.96k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4030
3.96k
#line 4031 "/src/php-src/Zend/zend_language_parser.c"
4031
3.96k
        break;
4032
4033
30
    case 76: /* "fully qualified name"  */
4034
30
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4035
30
            { zend_ast_destroy(((*yyvaluep).ast)); }
4036
30
#line 4037 "/src/php-src/Zend/zend_language_parser.c"
4037
30
        break;
4038
4039
21
    case 77: /* "namespace-relative name"  */
4040
21
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4041
21
            { zend_ast_destroy(((*yyvaluep).ast)); }
4042
21
#line 4043 "/src/php-src/Zend/zend_language_parser.c"
4043
21
        break;
4044
4045
45
    case 78: /* "namespaced name"  */
4046
45
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4047
45
            { zend_ast_destroy(((*yyvaluep).ast)); }
4048
45
#line 4049 "/src/php-src/Zend/zend_language_parser.c"
4049
45
        break;
4050
4051
1.73k
    case 79: /* "variable"  */
4052
1.73k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4053
1.73k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4054
1.73k
#line 4055 "/src/php-src/Zend/zend_language_parser.c"
4055
1.73k
        break;
4056
4057
6
    case 80: /* T_INLINE_HTML  */
4058
6
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4059
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4060
6
#line 4061 "/src/php-src/Zend/zend_language_parser.c"
4061
6
        break;
4062
4063
27.0k
    case 81: /* "string content"  */
4064
27.0k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4065
27.0k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4066
27.0k
#line 4067 "/src/php-src/Zend/zend_language_parser.c"
4067
27.0k
        break;
4068
4069
130
    case 82: /* "quoted string"  */
4070
130
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4071
130
            { zend_ast_destroy(((*yyvaluep).ast)); }
4072
130
#line 4073 "/src/php-src/Zend/zend_language_parser.c"
4073
130
        break;
4074
4075
73
    case 83: /* "variable name"  */
4076
73
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4077
73
            { zend_ast_destroy(((*yyvaluep).ast)); }
4078
73
#line 4079 "/src/php-src/Zend/zend_language_parser.c"
4079
73
        break;
4080
4081
4
    case 84: /* "number"  */
4082
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4083
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4084
4
#line 4085 "/src/php-src/Zend/zend_language_parser.c"
4085
4
        break;
4086
4087
680
    case 190: /* identifier  */
4088
680
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4089
680
            { zend_ast_destroy(((*yyvaluep).ast)); }
4090
680
#line 4091 "/src/php-src/Zend/zend_language_parser.c"
4091
680
        break;
4092
4093
30.6k
    case 191: /* top_statement_list  */
4094
30.6k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4095
30.6k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4096
30.6k
#line 4097 "/src/php-src/Zend/zend_language_parser.c"
4097
30.6k
        break;
4098
4099
382
    case 192: /* namespace_declaration_name  */
4100
382
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4101
382
            { zend_ast_destroy(((*yyvaluep).ast)); }
4102
382
#line 4103 "/src/php-src/Zend/zend_language_parser.c"
4103
382
        break;
4104
4105
2
    case 193: /* namespace_name  */
4106
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4107
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4108
2
#line 4109 "/src/php-src/Zend/zend_language_parser.c"
4109
2
        break;
4110
4111
53
    case 194: /* legacy_namespace_name  */
4112
53
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4113
53
            { zend_ast_destroy(((*yyvaluep).ast)); }
4114
53
#line 4115 "/src/php-src/Zend/zend_language_parser.c"
4115
53
        break;
4116
4117
5.87k
    case 195: /* name  */
4118
5.87k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4119
5.87k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4120
5.87k
#line 4121 "/src/php-src/Zend/zend_language_parser.c"
4121
5.87k
        break;
4122
4123
0
    case 196: /* attribute_decl  */
4124
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4125
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4126
0
#line 4127 "/src/php-src/Zend/zend_language_parser.c"
4127
0
        break;
4128
4129
90
    case 197: /* attribute_group  */
4130
90
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4131
90
            { zend_ast_destroy(((*yyvaluep).ast)); }
4132
90
#line 4133 "/src/php-src/Zend/zend_language_parser.c"
4133
90
        break;
4134
4135
0
    case 198: /* attribute  */
4136
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4137
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4138
0
#line 4139 "/src/php-src/Zend/zend_language_parser.c"
4139
0
        break;
4140
4141
153
    case 199: /* attributes  */
4142
153
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4143
153
            { zend_ast_destroy(((*yyvaluep).ast)); }
4144
153
#line 4145 "/src/php-src/Zend/zend_language_parser.c"
4145
153
        break;
4146
4147
0
    case 200: /* attributed_statement  */
4148
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4149
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4150
0
#line 4151 "/src/php-src/Zend/zend_language_parser.c"
4151
0
        break;
4152
4153
0
    case 201: /* attributed_top_statement  */
4154
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4155
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4156
0
#line 4157 "/src/php-src/Zend/zend_language_parser.c"
4157
0
        break;
4158
4159
0
    case 202: /* top_statement  */
4160
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4161
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4162
0
#line 4163 "/src/php-src/Zend/zend_language_parser.c"
4163
0
        break;
4164
4165
4
    case 206: /* group_use_declaration  */
4166
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4167
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4168
4
#line 4169 "/src/php-src/Zend/zend_language_parser.c"
4169
4
        break;
4170
4171
2
    case 207: /* mixed_group_use_declaration  */
4172
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4173
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4174
2
#line 4175 "/src/php-src/Zend/zend_language_parser.c"
4175
2
        break;
4176
4177
28
    case 209: /* inline_use_declarations  */
4178
28
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4179
28
            { zend_ast_destroy(((*yyvaluep).ast)); }
4180
28
#line 4181 "/src/php-src/Zend/zend_language_parser.c"
4181
28
        break;
4182
4183
12
    case 210: /* unprefixed_use_declarations  */
4184
12
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4185
12
            { zend_ast_destroy(((*yyvaluep).ast)); }
4186
12
#line 4187 "/src/php-src/Zend/zend_language_parser.c"
4187
12
        break;
4188
4189
21
    case 211: /* use_declarations  */
4190
21
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4191
21
            { zend_ast_destroy(((*yyvaluep).ast)); }
4192
21
#line 4193 "/src/php-src/Zend/zend_language_parser.c"
4193
21
        break;
4194
4195
0
    case 212: /* inline_use_declaration  */
4196
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4197
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4198
0
#line 4199 "/src/php-src/Zend/zend_language_parser.c"
4199
0
        break;
4200
4201
0
    case 213: /* unprefixed_use_declaration  */
4202
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4203
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4204
0
#line 4205 "/src/php-src/Zend/zend_language_parser.c"
4205
0
        break;
4206
4207
0
    case 214: /* use_declaration  */
4208
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4209
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4210
0
#line 4211 "/src/php-src/Zend/zend_language_parser.c"
4211
0
        break;
4212
4213
119
    case 215: /* const_list  */
4214
119
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4215
119
            { zend_ast_destroy(((*yyvaluep).ast)); }
4216
119
#line 4217 "/src/php-src/Zend/zend_language_parser.c"
4217
119
        break;
4218
4219
38.4k
    case 216: /* inner_statement_list  */
4220
38.4k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4221
38.4k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4222
38.4k
#line 4223 "/src/php-src/Zend/zend_language_parser.c"
4223
38.4k
        break;
4224
4225
0
    case 217: /* inner_statement  */
4226
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4227
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4228
0
#line 4229 "/src/php-src/Zend/zend_language_parser.c"
4229
0
        break;
4230
4231
35
    case 218: /* statement  */
4232
35
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4233
35
            { zend_ast_destroy(((*yyvaluep).ast)); }
4234
35
#line 4235 "/src/php-src/Zend/zend_language_parser.c"
4235
35
        break;
4236
4237
552
    case 220: /* catch_list  */
4238
552
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4239
552
            { zend_ast_destroy(((*yyvaluep).ast)); }
4240
552
#line 4241 "/src/php-src/Zend/zend_language_parser.c"
4241
552
        break;
4242
4243
186
    case 221: /* catch_name_list  */
4244
186
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4245
186
            { zend_ast_destroy(((*yyvaluep).ast)); }
4246
186
#line 4247 "/src/php-src/Zend/zend_language_parser.c"
4247
186
        break;
4248
4249
186
    case 222: /* optional_variable  */
4250
186
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4251
186
            { zend_ast_destroy(((*yyvaluep).ast)); }
4252
186
#line 4253 "/src/php-src/Zend/zend_language_parser.c"
4253
186
        break;
4254
4255
0
    case 223: /* finally_statement  */
4256
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4257
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4258
0
#line 4259 "/src/php-src/Zend/zend_language_parser.c"
4259
0
        break;
4260
4261
76
    case 224: /* unset_variables  */
4262
76
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4263
76
            { zend_ast_destroy(((*yyvaluep).ast)); }
4264
76
#line 4265 "/src/php-src/Zend/zend_language_parser.c"
4265
76
        break;
4266
4267
0
    case 225: /* unset_variable  */
4268
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4269
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4270
0
#line 4271 "/src/php-src/Zend/zend_language_parser.c"
4271
0
        break;
4272
4273
1.10k
    case 226: /* function_name  */
4274
1.10k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4275
1.10k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4276
1.10k
#line 4277 "/src/php-src/Zend/zend_language_parser.c"
4277
1.10k
        break;
4278
4279
0
    case 227: /* function_declaration_statement  */
4280
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4281
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4282
0
#line 4283 "/src/php-src/Zend/zend_language_parser.c"
4283
0
        break;
4284
4285
0
    case 230: /* class_declaration_statement  */
4286
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4287
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4288
0
#line 4289 "/src/php-src/Zend/zend_language_parser.c"
4289
0
        break;
4290
4291
0
    case 237: /* trait_declaration_statement  */
4292
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4293
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4294
0
#line 4295 "/src/php-src/Zend/zend_language_parser.c"
4295
0
        break;
4296
4297
0
    case 239: /* interface_declaration_statement  */
4298
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4299
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4300
0
#line 4301 "/src/php-src/Zend/zend_language_parser.c"
4301
0
        break;
4302
4303
0
    case 241: /* enum_declaration_statement  */
4304
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4305
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4306
0
#line 4307 "/src/php-src/Zend/zend_language_parser.c"
4307
0
        break;
4308
4309
223
    case 243: /* enum_backing_type  */
4310
223
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4311
223
            { zend_ast_destroy(((*yyvaluep).ast)); }
4312
223
#line 4313 "/src/php-src/Zend/zend_language_parser.c"
4313
223
        break;
4314
4315
0
    case 244: /* enum_case  */
4316
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4317
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4318
0
#line 4319 "/src/php-src/Zend/zend_language_parser.c"
4319
0
        break;
4320
4321
8
    case 245: /* enum_case_expr  */
4322
8
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4323
8
            { zend_ast_destroy(((*yyvaluep).ast)); }
4324
8
#line 4325 "/src/php-src/Zend/zend_language_parser.c"
4325
8
        break;
4326
4327
1.13k
    case 246: /* extends_from  */
4328
1.13k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4329
1.13k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4330
1.13k
#line 4331 "/src/php-src/Zend/zend_language_parser.c"
4331
1.13k
        break;
4332
4333
58
    case 247: /* interface_extends_list  */
4334
58
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4335
58
            { zend_ast_destroy(((*yyvaluep).ast)); }
4336
58
#line 4337 "/src/php-src/Zend/zend_language_parser.c"
4337
58
        break;
4338
4339
1.35k
    case 248: /* implements_list  */
4340
1.35k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4341
1.35k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4342
1.35k
#line 4343 "/src/php-src/Zend/zend_language_parser.c"
4343
1.35k
        break;
4344
4345
530
    case 249: /* foreach_variable  */
4346
530
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4347
530
            { zend_ast_destroy(((*yyvaluep).ast)); }
4348
530
#line 4349 "/src/php-src/Zend/zend_language_parser.c"
4349
530
        break;
4350
4351
0
    case 250: /* for_statement  */
4352
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4353
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4354
0
#line 4355 "/src/php-src/Zend/zend_language_parser.c"
4355
0
        break;
4356
4357
0
    case 251: /* foreach_statement  */
4358
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4359
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4360
0
#line 4361 "/src/php-src/Zend/zend_language_parser.c"
4361
0
        break;
4362
4363
0
    case 252: /* declare_statement  */
4364
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4365
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4366
0
#line 4367 "/src/php-src/Zend/zend_language_parser.c"
4367
0
        break;
4368
4369
0
    case 253: /* switch_case_list  */
4370
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4371
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4372
0
#line 4373 "/src/php-src/Zend/zend_language_parser.c"
4373
0
        break;
4374
4375
193
    case 254: /* case_list  */
4376
193
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4377
193
            { zend_ast_destroy(((*yyvaluep).ast)); }
4378
193
#line 4379 "/src/php-src/Zend/zend_language_parser.c"
4379
193
        break;
4380
4381
0
    case 255: /* match  */
4382
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4383
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4384
0
#line 4385 "/src/php-src/Zend/zend_language_parser.c"
4385
0
        break;
4386
4387
13
    case 256: /* match_arm_list  */
4388
13
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4389
13
            { zend_ast_destroy(((*yyvaluep).ast)); }
4390
13
#line 4391 "/src/php-src/Zend/zend_language_parser.c"
4391
13
        break;
4392
4393
87
    case 257: /* non_empty_match_arm_list  */
4394
87
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4395
87
            { zend_ast_destroy(((*yyvaluep).ast)); }
4396
87
#line 4397 "/src/php-src/Zend/zend_language_parser.c"
4397
87
        break;
4398
4399
0
    case 258: /* match_arm  */
4400
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4401
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4402
0
#line 4403 "/src/php-src/Zend/zend_language_parser.c"
4403
0
        break;
4404
4405
97
    case 259: /* match_arm_cond_list  */
4406
97
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4407
97
            { zend_ast_destroy(((*yyvaluep).ast)); }
4408
97
#line 4409 "/src/php-src/Zend/zend_language_parser.c"
4409
97
        break;
4410
4411
0
    case 260: /* while_statement  */
4412
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4413
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4414
0
#line 4415 "/src/php-src/Zend/zend_language_parser.c"
4415
0
        break;
4416
4417
104
    case 261: /* if_stmt_without_else  */
4418
104
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4419
104
            { zend_ast_destroy(((*yyvaluep).ast)); }
4420
104
#line 4421 "/src/php-src/Zend/zend_language_parser.c"
4421
104
        break;
4422
4423
0
    case 262: /* if_stmt  */
4424
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4425
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4426
0
#line 4427 "/src/php-src/Zend/zend_language_parser.c"
4427
0
        break;
4428
4429
52
    case 263: /* alt_if_stmt_without_else  */
4430
52
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4431
52
            { zend_ast_destroy(((*yyvaluep).ast)); }
4432
52
#line 4433 "/src/php-src/Zend/zend_language_parser.c"
4433
52
        break;
4434
4435
0
    case 264: /* alt_if_stmt  */
4436
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4437
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4438
0
#line 4439 "/src/php-src/Zend/zend_language_parser.c"
4439
0
        break;
4440
4441
3.07k
    case 265: /* parameter_list  */
4442
3.07k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4443
3.07k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4444
3.07k
#line 4445 "/src/php-src/Zend/zend_language_parser.c"
4445
3.07k
        break;
4446
4447
120
    case 266: /* non_empty_parameter_list  */
4448
120
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4449
120
            { zend_ast_destroy(((*yyvaluep).ast)); }
4450
120
#line 4451 "/src/php-src/Zend/zend_language_parser.c"
4451
120
        break;
4452
4453
0
    case 267: /* attributed_parameter  */
4454
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4455
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4456
0
#line 4457 "/src/php-src/Zend/zend_language_parser.c"
4457
0
        break;
4458
4459
0
    case 269: /* parameter  */
4460
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4461
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4462
0
#line 4463 "/src/php-src/Zend/zend_language_parser.c"
4463
0
        break;
4464
4465
1.01k
    case 270: /* optional_type_without_static  */
4466
1.01k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4467
1.01k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4468
1.01k
#line 4469 "/src/php-src/Zend/zend_language_parser.c"
4469
1.01k
        break;
4470
4471
46
    case 271: /* type_expr  */
4472
46
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4473
46
            { zend_ast_destroy(((*yyvaluep).ast)); }
4474
46
#line 4475 "/src/php-src/Zend/zend_language_parser.c"
4475
46
        break;
4476
4477
6
    case 272: /* type  */
4478
6
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4479
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4480
6
#line 4481 "/src/php-src/Zend/zend_language_parser.c"
4481
6
        break;
4482
4483
3
    case 273: /* union_type_element  */
4484
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4485
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4486
3
#line 4487 "/src/php-src/Zend/zend_language_parser.c"
4487
3
        break;
4488
4489
4
    case 274: /* union_type  */
4490
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4491
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4492
4
#line 4493 "/src/php-src/Zend/zend_language_parser.c"
4493
4
        break;
4494
4495
8
    case 275: /* intersection_type  */
4496
8
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4497
8
            { zend_ast_destroy(((*yyvaluep).ast)); }
4498
8
#line 4499 "/src/php-src/Zend/zend_language_parser.c"
4499
8
        break;
4500
4501
0
    case 276: /* type_expr_without_static  */
4502
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4503
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4504
0
#line 4505 "/src/php-src/Zend/zend_language_parser.c"
4505
0
        break;
4506
4507
12
    case 277: /* type_without_static  */
4508
12
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4509
12
            { zend_ast_destroy(((*yyvaluep).ast)); }
4510
12
#line 4511 "/src/php-src/Zend/zend_language_parser.c"
4511
12
        break;
4512
4513
6
    case 278: /* union_type_without_static_element  */
4514
6
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4515
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4516
6
#line 4517 "/src/php-src/Zend/zend_language_parser.c"
4517
6
        break;
4518
4519
6
    case 279: /* union_type_without_static  */
4520
6
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4521
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4522
6
#line 4523 "/src/php-src/Zend/zend_language_parser.c"
4523
6
        break;
4524
4525
10
    case 280: /* intersection_type_without_static  */
4526
10
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4527
10
            { zend_ast_destroy(((*yyvaluep).ast)); }
4528
10
#line 4529 "/src/php-src/Zend/zend_language_parser.c"
4529
10
        break;
4530
4531
3.00k
    case 281: /* return_type  */
4532
3.00k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4533
3.00k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4534
3.00k
#line 4535 "/src/php-src/Zend/zend_language_parser.c"
4535
3.00k
        break;
4536
4537
0
    case 282: /* argument_list  */
4538
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4539
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4540
0
#line 4541 "/src/php-src/Zend/zend_language_parser.c"
4541
0
        break;
4542
4543
1.72k
    case 283: /* non_empty_argument_list  */
4544
1.72k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4545
1.72k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4546
1.72k
#line 4547 "/src/php-src/Zend/zend_language_parser.c"
4547
1.72k
        break;
4548
4549
0
    case 284: /* clone_argument_list  */
4550
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4551
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4552
0
#line 4553 "/src/php-src/Zend/zend_language_parser.c"
4553
0
        break;
4554
4555
289
    case 285: /* non_empty_clone_argument_list  */
4556
289
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4557
289
            { zend_ast_destroy(((*yyvaluep).ast)); }
4558
289
#line 4559 "/src/php-src/Zend/zend_language_parser.c"
4559
289
        break;
4560
4561
0
    case 286: /* argument_no_expr  */
4562
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4563
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4564
0
#line 4565 "/src/php-src/Zend/zend_language_parser.c"
4565
0
        break;
4566
4567
0
    case 287: /* argument  */
4568
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4569
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4570
0
#line 4571 "/src/php-src/Zend/zend_language_parser.c"
4571
0
        break;
4572
4573
8
    case 288: /* global_var_list  */
4574
8
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4575
8
            { zend_ast_destroy(((*yyvaluep).ast)); }
4576
8
#line 4577 "/src/php-src/Zend/zend_language_parser.c"
4577
8
        break;
4578
4579
0
    case 289: /* global_var  */
4580
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4581
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4582
0
#line 4583 "/src/php-src/Zend/zend_language_parser.c"
4583
0
        break;
4584
4585
44
    case 290: /* static_var_list  */
4586
44
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4587
44
            { zend_ast_destroy(((*yyvaluep).ast)); }
4588
44
#line 4589 "/src/php-src/Zend/zend_language_parser.c"
4589
44
        break;
4590
4591
0
    case 291: /* static_var  */
4592
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4593
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4594
0
#line 4595 "/src/php-src/Zend/zend_language_parser.c"
4595
0
        break;
4596
4597
1.25k
    case 292: /* class_statement_list  */
4598
1.25k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4599
1.25k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4600
1.25k
#line 4601 "/src/php-src/Zend/zend_language_parser.c"
4601
1.25k
        break;
4602
4603
0
    case 293: /* attributed_class_statement  */
4604
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4605
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4606
0
#line 4607 "/src/php-src/Zend/zend_language_parser.c"
4607
0
        break;
4608
4609
0
    case 294: /* class_statement  */
4610
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4611
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4612
0
#line 4613 "/src/php-src/Zend/zend_language_parser.c"
4613
0
        break;
4614
4615
61
    case 295: /* class_name_list  */
4616
61
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4617
61
            { zend_ast_destroy(((*yyvaluep).ast)); }
4618
61
#line 4619 "/src/php-src/Zend/zend_language_parser.c"
4619
61
        break;
4620
4621
0
    case 296: /* trait_adaptations  */
4622
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4623
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4624
0
#line 4625 "/src/php-src/Zend/zend_language_parser.c"
4625
0
        break;
4626
4627
28
    case 297: /* trait_adaptation_list  */
4628
28
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4629
28
            { zend_ast_destroy(((*yyvaluep).ast)); }
4630
28
#line 4631 "/src/php-src/Zend/zend_language_parser.c"
4631
28
        break;
4632
4633
0
    case 298: /* trait_adaptation  */
4634
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4635
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4636
0
#line 4637 "/src/php-src/Zend/zend_language_parser.c"
4637
0
        break;
4638
4639
3
    case 299: /* trait_precedence  */
4640
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4641
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4642
3
#line 4643 "/src/php-src/Zend/zend_language_parser.c"
4643
3
        break;
4644
4645
7
    case 300: /* trait_alias  */
4646
7
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4647
7
            { zend_ast_destroy(((*yyvaluep).ast)); }
4648
7
#line 4649 "/src/php-src/Zend/zend_language_parser.c"
4649
7
        break;
4650
4651
16
    case 301: /* trait_method_reference  */
4652
16
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4653
16
            { zend_ast_destroy(((*yyvaluep).ast)); }
4654
16
#line 4655 "/src/php-src/Zend/zend_language_parser.c"
4655
16
        break;
4656
4657
5
    case 302: /* absolute_trait_method_reference  */
4658
5
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4659
5
            { zend_ast_destroy(((*yyvaluep).ast)); }
4660
5
#line 4661 "/src/php-src/Zend/zend_language_parser.c"
4661
5
        break;
4662
4663
0
    case 303: /* method_body  */
4664
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4665
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4666
0
#line 4667 "/src/php-src/Zend/zend_language_parser.c"
4667
0
        break;
4668
4669
0
    case 307: /* non_empty_member_modifiers  */
4670
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4671
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4672
0
#line 4673 "/src/php-src/Zend/zend_language_parser.c"
4673
0
        break;
4674
4675
75
    case 309: /* property_list  */
4676
75
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4677
75
            { zend_ast_destroy(((*yyvaluep).ast)); }
4678
75
#line 4679 "/src/php-src/Zend/zend_language_parser.c"
4679
75
        break;
4680
4681
0
    case 310: /* property  */
4682
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4683
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4684
0
#line 4685 "/src/php-src/Zend/zend_language_parser.c"
4685
0
        break;
4686
4687
0
    case 311: /* hooked_property  */
4688
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4689
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4690
0
#line 4691 "/src/php-src/Zend/zend_language_parser.c"
4691
0
        break;
4692
4693
556
    case 312: /* property_hook_list  */
4694
556
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4695
556
            { zend_ast_destroy(((*yyvaluep).ast)); }
4696
556
#line 4697 "/src/php-src/Zend/zend_language_parser.c"
4697
556
        break;
4698
4699
0
    case 313: /* optional_property_hook_list  */
4700
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4701
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4702
0
#line 4703 "/src/php-src/Zend/zend_language_parser.c"
4703
0
        break;
4704
4705
0
    case 315: /* property_hook  */
4706
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4707
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4708
0
#line 4709 "/src/php-src/Zend/zend_language_parser.c"
4709
0
        break;
4710
4711
0
    case 317: /* property_hook_body  */
4712
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4713
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4714
0
#line 4715 "/src/php-src/Zend/zend_language_parser.c"
4715
0
        break;
4716
4717
174
    case 318: /* optional_parameter_list  */
4718
174
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4719
174
            { zend_ast_destroy(((*yyvaluep).ast)); }
4720
174
#line 4721 "/src/php-src/Zend/zend_language_parser.c"
4721
174
        break;
4722
4723
16
    case 319: /* class_const_list  */
4724
16
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4725
16
            { zend_ast_destroy(((*yyvaluep).ast)); }
4726
16
#line 4727 "/src/php-src/Zend/zend_language_parser.c"
4727
16
        break;
4728
4729
0
    case 320: /* class_const_decl  */
4730
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4731
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4732
0
#line 4733 "/src/php-src/Zend/zend_language_parser.c"
4733
0
        break;
4734
4735
0
    case 321: /* const_decl  */
4736
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4737
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4738
0
#line 4739 "/src/php-src/Zend/zend_language_parser.c"
4739
0
        break;
4740
4741
235
    case 322: /* echo_expr_list  */
4742
235
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4743
235
            { zend_ast_destroy(((*yyvaluep).ast)); }
4744
235
#line 4745 "/src/php-src/Zend/zend_language_parser.c"
4745
235
        break;
4746
4747
0
    case 323: /* echo_expr  */
4748
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4749
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4750
0
#line 4751 "/src/php-src/Zend/zend_language_parser.c"
4751
0
        break;
4752
4753
690
    case 324: /* for_cond_exprs  */
4754
690
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4755
690
            { zend_ast_destroy(((*yyvaluep).ast)); }
4756
690
#line 4757 "/src/php-src/Zend/zend_language_parser.c"
4757
690
        break;
4758
4759
1.22k
    case 325: /* for_exprs  */
4760
1.22k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4761
1.22k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4762
1.22k
#line 4763 "/src/php-src/Zend/zend_language_parser.c"
4763
1.22k
        break;
4764
4765
80
    case 326: /* non_empty_for_exprs  */
4766
80
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4767
80
            { zend_ast_destroy(((*yyvaluep).ast)); }
4768
80
#line 4769 "/src/php-src/Zend/zend_language_parser.c"
4769
80
        break;
4770
4771
0
    case 327: /* anonymous_class  */
4772
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4773
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4774
0
#line 4775 "/src/php-src/Zend/zend_language_parser.c"
4775
0
        break;
4776
4777
0
    case 329: /* new_dereferenceable  */
4778
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4779
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4780
0
#line 4781 "/src/php-src/Zend/zend_language_parser.c"
4781
0
        break;
4782
4783
0
    case 330: /* new_non_dereferenceable  */
4784
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4785
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4786
0
#line 4787 "/src/php-src/Zend/zend_language_parser.c"
4787
0
        break;
4788
4789
18.9k
    case 331: /* expr  */
4790
18.9k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4791
18.9k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4792
18.9k
#line 4793 "/src/php-src/Zend/zend_language_parser.c"
4793
18.9k
        break;
4794
4795
0
    case 332: /* inline_function  */
4796
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4797
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4798
0
#line 4799 "/src/php-src/Zend/zend_language_parser.c"
4799
0
        break;
4800
4801
6.40k
    case 335: /* backup_doc_comment  */
4802
6.40k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4803
6.40k
            { if (((*yyvaluep).str)) zend_string_release_ex(((*yyvaluep).str), 0); }
4804
6.40k
#line 4805 "/src/php-src/Zend/zend_language_parser.c"
4805
6.40k
        break;
4806
4807
839
    case 339: /* lexical_vars  */
4808
839
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4809
839
            { zend_ast_destroy(((*yyvaluep).ast)); }
4810
839
#line 4811 "/src/php-src/Zend/zend_language_parser.c"
4811
839
        break;
4812
4813
12
    case 340: /* lexical_var_list  */
4814
12
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4815
12
            { zend_ast_destroy(((*yyvaluep).ast)); }
4816
12
#line 4817 "/src/php-src/Zend/zend_language_parser.c"
4817
12
        break;
4818
4819
0
    case 341: /* lexical_var  */
4820
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4821
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4822
0
#line 4823 "/src/php-src/Zend/zend_language_parser.c"
4823
0
        break;
4824
4825
0
    case 342: /* function_call  */
4826
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4827
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4828
0
#line 4829 "/src/php-src/Zend/zend_language_parser.c"
4829
0
        break;
4830
4831
515
    case 344: /* class_name  */
4832
515
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4833
515
            { zend_ast_destroy(((*yyvaluep).ast)); }
4834
515
#line 4835 "/src/php-src/Zend/zend_language_parser.c"
4835
515
        break;
4836
4837
312
    case 345: /* class_name_reference  */
4838
312
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4839
312
            { zend_ast_destroy(((*yyvaluep).ast)); }
4840
312
#line 4841 "/src/php-src/Zend/zend_language_parser.c"
4841
312
        break;
4842
4843
290
    case 346: /* backticks_expr  */
4844
290
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4845
290
            { zend_ast_destroy(((*yyvaluep).ast)); }
4846
290
#line 4847 "/src/php-src/Zend/zend_language_parser.c"
4847
290
        break;
4848
4849
119
    case 347: /* ctor_arguments  */
4850
119
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4851
119
            { zend_ast_destroy(((*yyvaluep).ast)); }
4852
119
#line 4853 "/src/php-src/Zend/zend_language_parser.c"
4853
119
        break;
4854
4855
0
    case 348: /* dereferenceable_scalar  */
4856
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4857
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4858
0
#line 4859 "/src/php-src/Zend/zend_language_parser.c"
4859
0
        break;
4860
4861
0
    case 349: /* scalar  */
4862
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4863
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4864
0
#line 4865 "/src/php-src/Zend/zend_language_parser.c"
4865
0
        break;
4866
4867
0
    case 350: /* constant  */
4868
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4869
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4870
0
#line 4871 "/src/php-src/Zend/zend_language_parser.c"
4871
0
        break;
4872
4873
0
    case 351: /* class_constant  */
4874
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4875
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4876
0
#line 4877 "/src/php-src/Zend/zend_language_parser.c"
4877
0
        break;
4878
4879
256
    case 352: /* optional_expr  */
4880
256
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4881
256
            { zend_ast_destroy(((*yyvaluep).ast)); }
4882
256
#line 4883 "/src/php-src/Zend/zend_language_parser.c"
4883
256
        break;
4884
4885
440
    case 353: /* variable_class_name  */
4886
440
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4887
440
            { zend_ast_destroy(((*yyvaluep).ast)); }
4888
440
#line 4889 "/src/php-src/Zend/zend_language_parser.c"
4889
440
        break;
4890
4891
0
    case 354: /* fully_dereferenceable  */
4892
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4893
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4894
0
#line 4895 "/src/php-src/Zend/zend_language_parser.c"
4895
0
        break;
4896
4897
1.42k
    case 355: /* array_object_dereferenceable  */
4898
1.42k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4899
1.42k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4900
1.42k
#line 4901 "/src/php-src/Zend/zend_language_parser.c"
4901
1.42k
        break;
4902
4903
1.38k
    case 356: /* callable_expr  */
4904
1.38k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4905
1.38k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4906
1.38k
#line 4907 "/src/php-src/Zend/zend_language_parser.c"
4907
1.38k
        break;
4908
4909
0
    case 357: /* callable_variable  */
4910
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4911
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4912
0
#line 4913 "/src/php-src/Zend/zend_language_parser.c"
4913
0
        break;
4914
4915
2.11k
    case 358: /* variable  */
4916
2.11k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4917
2.11k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4918
2.11k
#line 4919 "/src/php-src/Zend/zend_language_parser.c"
4919
2.11k
        break;
4920
4921
0
    case 359: /* simple_variable  */
4922
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4923
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4924
0
#line 4925 "/src/php-src/Zend/zend_language_parser.c"
4925
0
        break;
4926
4927
0
    case 360: /* static_member  */
4928
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4929
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4930
0
#line 4931 "/src/php-src/Zend/zend_language_parser.c"
4931
0
        break;
4932
4933
365
    case 361: /* new_variable  */
4934
365
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4935
365
            { zend_ast_destroy(((*yyvaluep).ast)); }
4936
365
#line 4937 "/src/php-src/Zend/zend_language_parser.c"
4937
365
        break;
4938
4939
208
    case 362: /* member_name  */
4940
208
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4941
208
            { zend_ast_destroy(((*yyvaluep).ast)); }
4942
208
#line 4943 "/src/php-src/Zend/zend_language_parser.c"
4943
208
        break;
4944
4945
255
    case 363: /* property_name  */
4946
255
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4947
255
            { zend_ast_destroy(((*yyvaluep).ast)); }
4948
255
#line 4949 "/src/php-src/Zend/zend_language_parser.c"
4949
255
        break;
4950
4951
458
    case 364: /* array_pair_list  */
4952
458
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4953
458
            { zend_ast_destroy(((*yyvaluep).ast)); }
4954
458
#line 4955 "/src/php-src/Zend/zend_language_parser.c"
4955
458
        break;
4956
4957
0
    case 365: /* possible_array_pair  */
4958
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4959
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4960
0
#line 4961 "/src/php-src/Zend/zend_language_parser.c"
4961
0
        break;
4962
4963
546
    case 366: /* non_empty_array_pair_list  */
4964
546
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4965
546
            { zend_ast_destroy(((*yyvaluep).ast)); }
4966
546
#line 4967 "/src/php-src/Zend/zend_language_parser.c"
4967
546
        break;
4968
4969
0
    case 367: /* array_pair  */
4970
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4971
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4972
0
#line 4973 "/src/php-src/Zend/zend_language_parser.c"
4973
0
        break;
4974
4975
9.28k
    case 368: /* encaps_list  */
4976
9.28k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4977
9.28k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4978
9.28k
#line 4979 "/src/php-src/Zend/zend_language_parser.c"
4979
9.28k
        break;
4980
4981
0
    case 369: /* encaps_var  */
4982
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4983
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4984
0
#line 4985 "/src/php-src/Zend/zend_language_parser.c"
4985
0
        break;
4986
4987
420
    case 370: /* encaps_var_offset  */
4988
420
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4989
420
            { zend_ast_destroy(((*yyvaluep).ast)); }
4990
420
#line 4991 "/src/php-src/Zend/zend_language_parser.c"
4991
420
        break;
4992
4993
0
    case 371: /* internal_functions_in_yacc  */
4994
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4995
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4996
0
#line 4997 "/src/php-src/Zend/zend_language_parser.c"
4997
0
        break;
4998
4999
85
    case 372: /* isset_variables  */
5000
85
#line 50 "/src/php-src/Zend/zend_language_parser.y"
5001
85
            { zend_ast_destroy(((*yyvaluep).ast)); }
5002
85
#line 5003 "/src/php-src/Zend/zend_language_parser.c"
5003
85
        break;
5004
5005
0
    case 373: /* isset_variable  */
5006
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
5007
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
5008
0
#line 5009 "/src/php-src/Zend/zend_language_parser.c"
5009
0
        break;
5010
5011
595k
      default:
5012
595k
        break;
5013
769k
    }
5014
769k
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5015
769k
}
5016
5017
5018
5019
5020
/*----------.
5021
| yyparse.  |
5022
`----------*/
5023
5024
int
5025
yyparse (void)
5026
113k
{
5027
/* The lookahead symbol.  */
5028
113k
int yychar;
5029
5030
5031
/* The semantic value of the lookahead symbol.  */
5032
/* Default value used for initialization, for pacifying older GCCs
5033
   or non-GCC compilers.  */
5034
113k
YY_INITIAL_VALUE (static YYSTYPE yyval_default;)
5035
113k
YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
5036
5037
    /* Number of syntax errors so far.  */
5038
113k
    int yynerrs;
5039
5040
113k
    yy_state_fast_t yystate;
5041
    /* Number of tokens to shift before error messages enabled.  */
5042
113k
    int yyerrstatus;
5043
5044
    /* The stacks and their tools:
5045
       'yyss': related to states.
5046
       'yyvs': related to semantic values.
5047
5048
       Refer to the stacks through separate pointers, to allow yyoverflow
5049
       to reallocate them elsewhere.  */
5050
5051
    /* The state stack.  */
5052
113k
    yy_state_t yyssa[YYINITDEPTH];
5053
113k
    yy_state_t *yyss;
5054
113k
    yy_state_t *yyssp;
5055
5056
    /* The semantic value stack.  */
5057
113k
    YYSTYPE yyvsa[YYINITDEPTH];
5058
113k
    YYSTYPE *yyvs;
5059
113k
    YYSTYPE *yyvsp;
5060
5061
113k
    YYPTRDIFF_T yystacksize;
5062
5063
113k
  int yyn;
5064
113k
  int yyresult;
5065
  /* Lookahead token as an internal (translated) token number.  */
5066
113k
  int yytoken = 0;
5067
  /* The variables used to return semantic value and location from the
5068
     action routines.  */
5069
113k
  YYSTYPE yyval;
5070
5071
113k
#if YYERROR_VERBOSE
5072
  /* Buffer for error messages, and its allocated size.  */
5073
113k
  char yymsgbuf[128];
5074
113k
  char *yymsg = yymsgbuf;
5075
113k
  YYPTRDIFF_T yymsg_alloc = sizeof yymsgbuf;
5076
113k
#endif
5077
5078
21.5M
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
5079
5080
  /* The number of symbols on the RHS of the reduced rule.
5081
     Keep to zero when no symbol should be popped.  */
5082
113k
  int yylen = 0;
5083
5084
113k
  yyssp = yyss = yyssa;
5085
113k
  yyvsp = yyvs = yyvsa;
5086
113k
  yystacksize = YYINITDEPTH;
5087
5088
113k
  YYDPRINTF ((stderr, "Starting parse\n"));
5089
5090
113k
  yystate = 0;
5091
113k
  yyerrstatus = 0;
5092
113k
  yynerrs = 0;
5093
113k
  yychar = YYEMPTY; /* Cause a token to be read.  */
5094
113k
  goto yysetstate;
5095
5096
5097
/*------------------------------------------------------------.
5098
| yynewstate -- push a new state, which is found in yystate.  |
5099
`------------------------------------------------------------*/
5100
30.5M
yynewstate:
5101
  /* In all cases, when you get here, the value and location stacks
5102
     have just been pushed.  So pushing a state here evens the stacks.  */
5103
30.5M
  yyssp++;
5104
5105
5106
/*--------------------------------------------------------------------.
5107
| yysetstate -- set current state (the top of the stack) to yystate.  |
5108
`--------------------------------------------------------------------*/
5109
30.6M
yysetstate:
5110
30.6M
  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
5111
30.6M
  YY_ASSERT (0 <= yystate && yystate < YYNSTATES);
5112
30.6M
  YY_IGNORE_USELESS_CAST_BEGIN
5113
30.6M
  *yyssp = YY_CAST (yy_state_t, yystate);
5114
30.6M
  YY_IGNORE_USELESS_CAST_END
5115
5116
30.6M
  if (yyss + yystacksize - 1 <= yyssp)
5117
#if !defined yyoverflow && !defined YYSTACK_RELOCATE
5118
    goto yyexhaustedlab;
5119
#else
5120
1.98k
    {
5121
      /* Get the current used size of the three stacks, in elements.  */
5122
1.98k
      YYPTRDIFF_T yysize = yyssp - yyss + 1;
5123
5124
# if defined yyoverflow
5125
      {
5126
        /* Give user a chance to reallocate the stack.  Use copies of
5127
           these so that the &'s don't force the real ones into
5128
           memory.  */
5129
        yy_state_t *yyss1 = yyss;
5130
        YYSTYPE *yyvs1 = yyvs;
5131
5132
        /* Each stack pointer address is followed by the size of the
5133
           data in use in that stack, in bytes.  This used to be a
5134
           conditional around just the two extra args, but that might
5135
           be undefined if yyoverflow is a macro.  */
5136
        yyoverflow (YY_("memory exhausted"),
5137
                    &yyss1, yysize * YYSIZEOF (*yyssp),
5138
                    &yyvs1, yysize * YYSIZEOF (*yyvsp),
5139
                    &yystacksize);
5140
        yyss = yyss1;
5141
        yyvs = yyvs1;
5142
      }
5143
# else /* defined YYSTACK_RELOCATE */
5144
      /* Extend the stack our own way.  */
5145
1.98k
      if (YYMAXDEPTH <= yystacksize)
5146
3
        goto yyexhaustedlab;
5147
1.97k
      yystacksize *= 2;
5148
1.97k
      if (YYMAXDEPTH < yystacksize)
5149
4
        yystacksize = YYMAXDEPTH;
5150
5151
1.97k
      {
5152
1.97k
        yy_state_t *yyss1 = yyss;
5153
1.97k
        union yyalloc *yyptr =
5154
1.97k
          YY_CAST (union yyalloc *,
5155
1.97k
                   YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
5156
1.97k
        if (! yyptr)
5157
0
          goto yyexhaustedlab;
5158
1.97k
        YYSTACK_RELOCATE (yyss_alloc, yyss);
5159
1.97k
        YYSTACK_RELOCATE (yyvs_alloc, yyvs);
5160
1.97k
# undef YYSTACK_RELOCATE
5161
1.97k
        if (yyss1 != yyssa)
5162
887
          YYSTACK_FREE (yyss1);
5163
1.97k
      }
5164
0
# endif
5165
5166
0
      yyssp = yyss + yysize - 1;
5167
1.97k
      yyvsp = yyvs + yysize - 1;
5168
5169
1.97k
      YY_IGNORE_USELESS_CAST_BEGIN
5170
1.97k
      YYDPRINTF ((stderr, "Stack size increased to %ld\n",
5171
1.97k
                  YY_CAST (long, yystacksize)));
5172
1.97k
      YY_IGNORE_USELESS_CAST_END
5173
5174
1.97k
      if (yyss + yystacksize - 1 <= yyssp)
5175
0
        YYABORT;
5176
1.97k
    }
5177
30.6M
#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
5178
5179
30.6M
  if (yystate == YYFINAL)
5180
82.7k
    YYACCEPT;
5181
5182
30.5M
  goto yybackup;
5183
5184
5185
/*-----------.
5186
| yybackup.  |
5187
`-----------*/
5188
30.5M
yybackup:
5189
  /* Do appropriate processing given the current state.  Read a
5190
     lookahead token if we need one and don't already have one.  */
5191
5192
  /* First try to decide what to do without reference to lookahead token.  */
5193
30.5M
  yyn = yypact[yystate];
5194
30.5M
  if (yypact_value_is_default (yyn))
5195
12.6M
    goto yydefault;
5196
5197
  /* Not known => get a lookahead token if don't already have one.  */
5198
5199
  /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
5200
17.8M
  if (yychar == YYEMPTY)
5201
9.84M
    {
5202
9.84M
      YYDPRINTF ((stderr, "Reading a token: "));
5203
9.84M
      yychar = yylex (&yylval);
5204
9.84M
    }
5205
5206
17.8M
  if (yychar <= YYEOF)
5207
175k
    {
5208
175k
      yychar = yytoken = YYEOF;
5209
175k
      YYDPRINTF ((stderr, "Now at end of input.\n"));
5210
175k
    }
5211
17.6M
  else
5212
17.6M
    {
5213
17.6M
      yytoken = YYTRANSLATE (yychar);
5214
17.6M
      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
5215
17.6M
    }
5216
5217
  /* If the proper action on seeing token YYTOKEN is to reduce or to
5218
     detect an error, take that action.  */
5219
17.8M
  yyn += yytoken;
5220
17.8M
  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
5221
7.62M
    goto yydefault;
5222
10.2M
  yyn = yytable[yyn];
5223
10.2M
  if (yyn <= 0)
5224
436k
    {
5225
436k
      if (yytable_value_is_error (yyn))
5226
104
        goto yyerrlab;
5227
436k
      yyn = -yyn;
5228
436k
      goto yyreduce;
5229
436k
    }
5230
5231
  /* Count tokens shifted since error; after three, turn off error
5232
     status.  */
5233
9.81M
  if (yyerrstatus)
5234
0
    yyerrstatus--;
5235
5236
  /* Shift the lookahead token.  */
5237
9.81M
  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
5238
9.81M
  yystate = yyn;
5239
9.81M
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
5240
9.81M
  *++yyvsp = yylval;
5241
9.81M
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5242
5243
  /* Discard the shifted token.  */
5244
9.81M
  yychar = YYEMPTY;
5245
9.81M
  goto yynewstate;
5246
5247
5248
/*-----------------------------------------------------------.
5249
| yydefault -- do the default action for the current state.  |
5250
`-----------------------------------------------------------*/
5251
20.2M
yydefault:
5252
20.2M
  yyn = yydefact[yystate];
5253
20.2M
  if (yyn == 0)
5254
30.0k
    goto yyerrlab;
5255
20.2M
  goto yyreduce;
5256
5257
5258
/*-----------------------------.
5259
| yyreduce -- do a reduction.  |
5260
`-----------------------------*/
5261
20.6M
yyreduce:
5262
  /* yyn is the number of a rule to reduce with.  */
5263
20.6M
  yylen = yyr2[yyn];
5264
5265
  /* If YYLEN is nonzero, implement the default value of the action:
5266
     '$$ = $1'.
5267
5268
     Otherwise, the following line sets YYVAL to garbage.
5269
     This behavior is undocumented and Bison
5270
     users should not rely upon it.  Assigning to YYVAL
5271
     unconditionally makes the parser a bit smaller, and it avoids a
5272
     GCC warning that YYVAL may be used uninitialized.  */
5273
20.6M
  yyval = yyvsp[1-yylen];
5274
5275
5276
20.6M
  YY_REDUCE_PRINT (yyn);
5277
20.6M
  switch (yyn)
5278
20.6M
    {
5279
83.3k
  case 2:
5280
83.3k
#line 303 "/src/php-src/Zend/zend_language_parser.y"
5281
83.3k
                                { CG(ast) = (yyvsp[0].ast); (void) zendnerrs; }
5282
83.3k
#line 5283 "/src/php-src/Zend/zend_language_parser.c"
5283
83.3k
    break;
5284
5285
92.5k
  case 84:
5286
92.5k
#line 328 "/src/php-src/Zend/zend_language_parser.y"
5287
92.5k
                         { (yyval.ast) = (yyvsp[0].ast); }
5288
92.5k
#line 5289 "/src/php-src/Zend/zend_language_parser.c"
5289
92.5k
    break;
5290
5291
12.0k
  case 85:
5292
12.0k
#line 329 "/src/php-src/Zend/zend_language_parser.y"
5293
12.0k
                               {
5294
12.0k
      zval zv;
5295
12.0k
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5296
12.0k
      (yyval.ast) = zend_ast_create_zval(&zv);
5297
12.0k
    }
5298
0
#line 5299 "/src/php-src/Zend/zend_language_parser.c"
5299
0
    break;
5300
5301
597k
  case 86:
5302
597k
#line 337 "/src/php-src/Zend/zend_language_parser.y"
5303
597k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5304
597k
#line 5305 "/src/php-src/Zend/zend_language_parser.c"
5305
597k
    break;
5306
5307
115k
  case 87:
5308
115k
#line 338 "/src/php-src/Zend/zend_language_parser.y"
5309
115k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5310
115k
#line 5311 "/src/php-src/Zend/zend_language_parser.c"
5311
115k
    break;
5312
5313
4.13k
  case 88:
5314
4.13k
#line 343 "/src/php-src/Zend/zend_language_parser.y"
5315
4.13k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5316
4.13k
#line 5317 "/src/php-src/Zend/zend_language_parser.c"
5317
4.13k
    break;
5318
5319
419
  case 89:
5320
419
#line 344 "/src/php-src/Zend/zend_language_parser.y"
5321
419
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5322
419
#line 5323 "/src/php-src/Zend/zend_language_parser.c"
5323
419
    break;
5324
5325
3.11k
  case 90:
5326
3.11k
#line 349 "/src/php-src/Zend/zend_language_parser.y"
5327
3.11k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5328
3.11k
#line 5329 "/src/php-src/Zend/zend_language_parser.c"
5329
3.11k
    break;
5330
5331
1.00k
  case 91:
5332
1.00k
#line 350 "/src/php-src/Zend/zend_language_parser.y"
5333
1.00k
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5334
1.00k
#line 5335 "/src/php-src/Zend/zend_language_parser.c"
5335
1.00k
    break;
5336
5337
2.53k
  case 92:
5338
2.53k
#line 355 "/src/php-src/Zend/zend_language_parser.y"
5339
2.53k
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5340
2.53k
#line 5341 "/src/php-src/Zend/zend_language_parser.c"
5341
2.53k
    break;
5342
5343
390
  case 93:
5344
390
#line 356 "/src/php-src/Zend/zend_language_parser.y"
5345
390
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5346
390
#line 5347 "/src/php-src/Zend/zend_language_parser.c"
5347
390
    break;
5348
5349
773k
  case 94:
5350
773k
#line 360 "/src/php-src/Zend/zend_language_parser.y"
5351
773k
                                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5352
773k
#line 5353 "/src/php-src/Zend/zend_language_parser.c"
5353
773k
    break;
5354
5355
2.68k
  case 95:
5356
2.68k
#line 361 "/src/php-src/Zend/zend_language_parser.y"
5357
2.68k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5358
2.68k
#line 5359 "/src/php-src/Zend/zend_language_parser.c"
5359
2.68k
    break;
5360
5361
16.1k
  case 96:
5362
16.1k
#line 362 "/src/php-src/Zend/zend_language_parser.y"
5363
16.1k
                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_FQ; }
5364
16.1k
#line 5365 "/src/php-src/Zend/zend_language_parser.c"
5365
16.1k
    break;
5366
5367
929
  case 97:
5368
929
#line 363 "/src/php-src/Zend/zend_language_parser.y"
5369
929
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_RELATIVE; }
5370
929
#line 5371 "/src/php-src/Zend/zend_language_parser.c"
5371
929
    break;
5372
5373
27.9k
  case 98:
5374
27.9k
#line 368 "/src/php-src/Zend/zend_language_parser.y"
5375
27.9k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[0].ast), NULL); }
5376
27.9k
#line 5377 "/src/php-src/Zend/zend_language_parser.c"
5377
27.9k
    break;
5378
5379
3.64k
  case 99:
5380
3.64k
#line 370 "/src/php-src/Zend/zend_language_parser.y"
5381
3.64k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[-1].ast), (yyvsp[0].ast)); }
5382
3.64k
#line 5383 "/src/php-src/Zend/zend_language_parser.c"
5383
3.64k
    break;
5384
5385
15.4k
  case 100:
5386
15.4k
#line 375 "/src/php-src/Zend/zend_language_parser.y"
5387
15.4k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_GROUP, (yyvsp[0].ast)); }
5388
15.4k
#line 5389 "/src/php-src/Zend/zend_language_parser.c"
5389
15.4k
    break;
5390
5391
16.2k
  case 101:
5392
16.2k
#line 377 "/src/php-src/Zend/zend_language_parser.y"
5393
16.2k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5394
16.2k
#line 5395 "/src/php-src/Zend/zend_language_parser.c"
5395
16.2k
    break;
5396
5397
15.3k
  case 102:
5398
15.3k
#line 381 "/src/php-src/Zend/zend_language_parser.y"
5399
15.3k
                                                                                        { (yyval.ast) = (yyvsp[-2].ast); CG(doc_comment) = (yyvsp[-3].str); }
5400
15.3k
#line 5401 "/src/php-src/Zend/zend_language_parser.c"
5401
15.3k
    break;
5402
5403
12.5k
  case 103:
5404
12.5k
#line 385 "/src/php-src/Zend/zend_language_parser.y"
5405
12.5k
                                                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_LIST, (yyvsp[0].ast)); }
5406
12.5k
#line 5407 "/src/php-src/Zend/zend_language_parser.c"
5407
12.5k
    break;
5408
5409
2.81k
  case 104:
5410
2.81k
#line 386 "/src/php-src/Zend/zend_language_parser.y"
5411
2.81k
                                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5412
2.81k
#line 5413 "/src/php-src/Zend/zend_language_parser.c"
5413
2.81k
    break;
5414
5415
18.6k
  case 105:
5416
18.6k
#line 390 "/src/php-src/Zend/zend_language_parser.y"
5417
18.6k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5418
18.6k
#line 5419 "/src/php-src/Zend/zend_language_parser.c"
5419
18.6k
    break;
5420
5421
38.7k
  case 106:
5422
38.7k
#line 391 "/src/php-src/Zend/zend_language_parser.y"
5423
38.7k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5424
38.7k
#line 5425 "/src/php-src/Zend/zend_language_parser.c"
5425
38.7k
    break;
5426
5427
2.98k
  case 107:
5428
2.98k
#line 392 "/src/php-src/Zend/zend_language_parser.y"
5429
2.98k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5430
2.98k
#line 5431 "/src/php-src/Zend/zend_language_parser.c"
5431
2.98k
    break;
5432
5433
3.25k
  case 108:
5434
3.25k
#line 393 "/src/php-src/Zend/zend_language_parser.y"
5435
3.25k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5436
3.25k
#line 5437 "/src/php-src/Zend/zend_language_parser.c"
5437
3.25k
    break;
5438
5439
4.82k
  case 109:
5440
4.82k
#line 394 "/src/php-src/Zend/zend_language_parser.y"
5441
4.82k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5442
4.82k
#line 5443 "/src/php-src/Zend/zend_language_parser.c"
5443
4.82k
    break;
5444
5445
63.3k
  case 110:
5446
63.3k
#line 398 "/src/php-src/Zend/zend_language_parser.y"
5447
63.3k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5448
63.3k
#line 5449 "/src/php-src/Zend/zend_language_parser.c"
5449
63.3k
    break;
5450
5451
5.12k
  case 111:
5452
5.12k
#line 399 "/src/php-src/Zend/zend_language_parser.y"
5453
5.12k
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5454
5.12k
#line 5455 "/src/php-src/Zend/zend_language_parser.c"
5455
5.12k
    break;
5456
5457
522k
  case 112:
5458
522k
#line 403 "/src/php-src/Zend/zend_language_parser.y"
5459
522k
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5460
522k
#line 5461 "/src/php-src/Zend/zend_language_parser.c"
5461
522k
    break;
5462
5463
65.0k
  case 113:
5464
65.0k
#line 404 "/src/php-src/Zend/zend_language_parser.y"
5465
65.0k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5466
65.0k
#line 5467 "/src/php-src/Zend/zend_language_parser.c"
5467
65.0k
    break;
5468
5469
3.44k
  case 114:
5470
3.44k
#line 405 "/src/php-src/Zend/zend_language_parser.y"
5471
3.44k
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5472
3.44k
#line 5473 "/src/php-src/Zend/zend_language_parser.c"
5473
3.44k
    break;
5474
5475
85
  case 115:
5476
85
#line 407 "/src/php-src/Zend/zend_language_parser.y"
5477
85
                        { (yyval.ast) = zend_ast_create(ZEND_AST_HALT_COMPILER,
5478
85
            zend_ast_create_zval_from_long(zend_get_scanned_file_offset()));
5479
85
        zend_stop_lexing(); }
5480
85
#line 5481 "/src/php-src/Zend/zend_language_parser.c"
5481
85
    break;
5482
5483
3.18k
  case 116:
5484
3.18k
#line 411 "/src/php-src/Zend/zend_language_parser.y"
5485
3.18k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-1].ast), NULL);
5486
3.18k
        RESET_DOC_COMMENT(); }
5487
3.18k
#line 5488 "/src/php-src/Zend/zend_language_parser.c"
5488
3.18k
    break;
5489
5490
1.36k
  case 117:
5491
1.36k
#line 413 "/src/php-src/Zend/zend_language_parser.y"
5492
1.36k
                                                       { RESET_DOC_COMMENT(); }
5493
1.36k
#line 5494 "/src/php-src/Zend/zend_language_parser.c"
5494
1.36k
    break;
5495
5496
986
  case 118:
5497
986
#line 415 "/src/php-src/Zend/zend_language_parser.y"
5498
986
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
5499
986
#line 5500 "/src/php-src/Zend/zend_language_parser.c"
5500
986
    break;
5501
5502
1.08k
  case 119:
5503
1.08k
#line 416 "/src/php-src/Zend/zend_language_parser.y"
5504
1.08k
                            { RESET_DOC_COMMENT(); }
5505
1.08k
#line 5506 "/src/php-src/Zend/zend_language_parser.c"
5506
1.08k
    break;
5507
5508
542
  case 120:
5509
542
#line 418 "/src/php-src/Zend/zend_language_parser.y"
5510
542
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, NULL, (yyvsp[-1].ast)); }
5511
542
#line 5512 "/src/php-src/Zend/zend_language_parser.c"
5512
542
    break;
5513
5514
286
  case 121:
5515
286
#line 419 "/src/php-src/Zend/zend_language_parser.y"
5516
286
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5517
286
#line 5518 "/src/php-src/Zend/zend_language_parser.c"
5518
286
    break;
5519
5520
111
  case 122:
5521
111
#line 420 "/src/php-src/Zend/zend_language_parser.y"
5522
111
                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5523
111
#line 5524 "/src/php-src/Zend/zend_language_parser.c"
5524
111
    break;
5525
5526
979
  case 123:
5527
979
#line 421 "/src/php-src/Zend/zend_language_parser.y"
5528
979
                                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5529
979
#line 5530 "/src/php-src/Zend/zend_language_parser.c"
5530
979
    break;
5531
5532
597
  case 124:
5533
597
#line 422 "/src/php-src/Zend/zend_language_parser.y"
5534
597
                                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5535
597
#line 5536 "/src/php-src/Zend/zend_language_parser.c"
5536
597
    break;
5537
5538
660
  case 125:
5539
660
#line 426 "/src/php-src/Zend/zend_language_parser.y"
5540
660
                                        { (yyval.num) = ZEND_SYMBOL_FUNCTION; }
5541
660
#line 5542 "/src/php-src/Zend/zend_language_parser.c"
5542
660
    break;
5543
5544
597
  case 126:
5545
597
#line 427 "/src/php-src/Zend/zend_language_parser.y"
5546
597
                                        { (yyval.num) = ZEND_SYMBOL_CONST; }
5547
597
#line 5548 "/src/php-src/Zend/zend_language_parser.c"
5548
597
    break;
5549
5550
115
  case 127:
5551
115
#line 432 "/src/php-src/Zend/zend_language_parser.y"
5552
115
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5553
115
#line 5554 "/src/php-src/Zend/zend_language_parser.c"
5554
115
    break;
5555
5556
288
  case 128:
5557
288
#line 437 "/src/php-src/Zend/zend_language_parser.y"
5558
288
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast));}
5559
288
#line 5560 "/src/php-src/Zend/zend_language_parser.c"
5560
288
    break;
5561
5562
995
  case 131:
5563
995
#line 447 "/src/php-src/Zend/zend_language_parser.y"
5564
995
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5565
995
#line 5566 "/src/php-src/Zend/zend_language_parser.c"
5566
995
    break;
5567
5568
316
  case 132:
5569
316
#line 449 "/src/php-src/Zend/zend_language_parser.y"
5570
316
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5571
316
#line 5572 "/src/php-src/Zend/zend_language_parser.c"
5572
316
    break;
5573
5574
157
  case 133:
5575
157
#line 454 "/src/php-src/Zend/zend_language_parser.y"
5576
157
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5577
157
#line 5578 "/src/php-src/Zend/zend_language_parser.c"
5578
157
    break;
5579
5580
127
  case 134:
5581
127
#line 456 "/src/php-src/Zend/zend_language_parser.y"
5582
127
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5583
127
#line 5584 "/src/php-src/Zend/zend_language_parser.c"
5584
127
    break;
5585
5586
868
  case 135:
5587
868
#line 461 "/src/php-src/Zend/zend_language_parser.y"
5588
868
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5589
868
#line 5590 "/src/php-src/Zend/zend_language_parser.c"
5590
868
    break;
5591
5592
1.59k
  case 136:
5593
1.59k
#line 463 "/src/php-src/Zend/zend_language_parser.y"
5594
1.59k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5595
1.59k
#line 5596 "/src/php-src/Zend/zend_language_parser.c"
5596
1.59k
    break;
5597
5598
787
  case 137:
5599
787
#line 467 "/src/php-src/Zend/zend_language_parser.y"
5600
787
                                           { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5601
787
#line 5602 "/src/php-src/Zend/zend_language_parser.c"
5602
787
    break;
5603
5604
524
  case 138:
5605
524
#line 468 "/src/php-src/Zend/zend_language_parser.y"
5606
524
                                                    { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = (yyvsp[-1].num); }
5607
524
#line 5608 "/src/php-src/Zend/zend_language_parser.c"
5608
524
    break;
5609
5610
1.25k
  case 139:
5611
1.25k
#line 473 "/src/php-src/Zend/zend_language_parser.y"
5612
1.25k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5613
1.25k
#line 5614 "/src/php-src/Zend/zend_language_parser.c"
5614
1.25k
    break;
5615
5616
340
  case 140:
5617
340
#line 475 "/src/php-src/Zend/zend_language_parser.y"
5618
340
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5619
340
#line 5620 "/src/php-src/Zend/zend_language_parser.c"
5620
340
    break;
5621
5622
1.89k
  case 141:
5623
1.89k
#line 480 "/src/php-src/Zend/zend_language_parser.y"
5624
1.89k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5625
1.89k
#line 5626 "/src/php-src/Zend/zend_language_parser.c"
5626
1.89k
    break;
5627
5628
567
  case 142:
5629
567
#line 482 "/src/php-src/Zend/zend_language_parser.y"
5630
567
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5631
567
#line 5632 "/src/php-src/Zend/zend_language_parser.c"
5632
567
    break;
5633
5634
1.26k
  case 143:
5635
1.26k
#line 486 "/src/php-src/Zend/zend_language_parser.y"
5636
1.26k
                                          { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5637
1.26k
#line 5638 "/src/php-src/Zend/zend_language_parser.c"
5638
1.26k
    break;
5639
5640
8.48k
  case 144:
5641
8.48k
#line 487 "/src/php-src/Zend/zend_language_parser.y"
5642
8.48k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CONST_DECL, (yyvsp[0].ast)); }
5643
8.48k
#line 5644 "/src/php-src/Zend/zend_language_parser.c"
5644
8.48k
    break;
5645
5646
318k
  case 145:
5647
318k
#line 492 "/src/php-src/Zend/zend_language_parser.y"
5648
318k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5649
318k
#line 5650 "/src/php-src/Zend/zend_language_parser.c"
5650
318k
    break;
5651
5652
217k
  case 146:
5653
217k
#line 494 "/src/php-src/Zend/zend_language_parser.y"
5654
217k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5655
217k
#line 5656 "/src/php-src/Zend/zend_language_parser.c"
5656
217k
    break;
5657
5658
313k
  case 147:
5659
313k
#line 499 "/src/php-src/Zend/zend_language_parser.y"
5660
313k
                          { (yyval.ast) = (yyvsp[0].ast); }
5661
313k
#line 5662 "/src/php-src/Zend/zend_language_parser.c"
5662
313k
    break;
5663
5664
4.39k
  case 148:
5665
4.39k
#line 500 "/src/php-src/Zend/zend_language_parser.y"
5666
4.39k
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5667
4.39k
#line 5668 "/src/php-src/Zend/zend_language_parser.c"
5668
4.39k
    break;
5669
5670
611
  case 149:
5671
611
#line 501 "/src/php-src/Zend/zend_language_parser.y"
5672
611
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5673
611
#line 5674 "/src/php-src/Zend/zend_language_parser.c"
5674
611
    break;
5675
5676
15
  case 150:
5677
15
#line 503 "/src/php-src/Zend/zend_language_parser.y"
5678
15
                        { (yyval.ast) = NULL; zend_throw_exception(zend_ce_compile_error,
5679
15
            "__HALT_COMPILER() can only be used from the outermost scope", 0); YYERROR; }
5680
0
#line 5681 "/src/php-src/Zend/zend_language_parser.c"
5681
0
    break;
5682
5683
42.1k
  case 151:
5684
42.1k
#line 509 "/src/php-src/Zend/zend_language_parser.y"
5685
42.1k
                                             { (yyval.ast) = (yyvsp[-1].ast); }
5686
42.1k
#line 5687 "/src/php-src/Zend/zend_language_parser.c"
5687
42.1k
    break;
5688
5689
18.3k
  case 152:
5690
18.3k
#line 510 "/src/php-src/Zend/zend_language_parser.y"
5691
18.3k
                        { (yyval.ast) = (yyvsp[0].ast); }
5692
18.3k
#line 5693 "/src/php-src/Zend/zend_language_parser.c"
5693
18.3k
    break;
5694
5695
246
  case 153:
5696
246
#line 511 "/src/php-src/Zend/zend_language_parser.y"
5697
246
                            { (yyval.ast) = (yyvsp[0].ast); }
5698
246
#line 5699 "/src/php-src/Zend/zend_language_parser.c"
5699
246
    break;
5700
5701
1.27k
  case 154:
5702
1.27k
#line 513 "/src/php-src/Zend/zend_language_parser.y"
5703
1.27k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_WHILE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5704
1.27k
#line 5705 "/src/php-src/Zend/zend_language_parser.c"
5705
1.27k
    break;
5706
5707
568
  case 155:
5708
568
#line 515 "/src/php-src/Zend/zend_language_parser.y"
5709
568
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DO_WHILE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5710
568
#line 5711 "/src/php-src/Zend/zend_language_parser.c"
5711
568
    break;
5712
5713
12.5k
  case 156:
5714
12.5k
#line 517 "/src/php-src/Zend/zend_language_parser.y"
5715
12.5k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOR, (yyvsp[-6].ast), (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
5716
12.5k
#line 5717 "/src/php-src/Zend/zend_language_parser.c"
5717
12.5k
    break;
5718
5719
1.46k
  case 157:
5720
1.46k
#line 519 "/src/php-src/Zend/zend_language_parser.y"
5721
1.46k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_SWITCH, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5722
1.46k
#line 5723 "/src/php-src/Zend/zend_language_parser.c"
5723
1.46k
    break;
5724
5725
1.27k
  case 158:
5726
1.27k
#line 520 "/src/php-src/Zend/zend_language_parser.y"
5727
1.27k
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_BREAK, (yyvsp[-1].ast)); }
5728
1.27k
#line 5729 "/src/php-src/Zend/zend_language_parser.c"
5729
1.27k
    break;
5730
5731
1.31k
  case 159:
5732
1.31k
#line 521 "/src/php-src/Zend/zend_language_parser.y"
5733
1.31k
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONTINUE, (yyvsp[-1].ast)); }
5734
1.31k
#line 5735 "/src/php-src/Zend/zend_language_parser.c"
5735
1.31k
    break;
5736
5737
19.0k
  case 160:
5738
19.0k
#line 522 "/src/php-src/Zend/zend_language_parser.y"
5739
19.0k
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_RETURN, (yyvsp[-1].ast)); }
5740
19.0k
#line 5741 "/src/php-src/Zend/zend_language_parser.c"
5741
19.0k
    break;
5742
5743
1.28k
  case 161:
5744
1.28k
#line 523 "/src/php-src/Zend/zend_language_parser.y"
5745
1.28k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5746
1.28k
#line 5747 "/src/php-src/Zend/zend_language_parser.c"
5747
1.28k
    break;
5748
5749
1.29k
  case 162:
5750
1.29k
#line 524 "/src/php-src/Zend/zend_language_parser.y"
5751
1.29k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5752
1.29k
#line 5753 "/src/php-src/Zend/zend_language_parser.c"
5753
1.29k
    break;
5754
5755
51.8k
  case 163:
5756
51.8k
#line 525 "/src/php-src/Zend/zend_language_parser.y"
5757
51.8k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
5758
51.8k
#line 5759 "/src/php-src/Zend/zend_language_parser.c"
5759
51.8k
    break;
5760
5761
101k
  case 164:
5762
101k
#line 526 "/src/php-src/Zend/zend_language_parser.y"
5763
101k
                              { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
5764
101k
#line 5765 "/src/php-src/Zend/zend_language_parser.c"
5765
101k
    break;
5766
5767
452k
  case 165:
5768
452k
#line 527 "/src/php-src/Zend/zend_language_parser.y"
5769
452k
                         { (yyval.ast) = (yyvsp[-1].ast); }
5770
452k
#line 5771 "/src/php-src/Zend/zend_language_parser.c"
5771
452k
    break;
5772
5773
7.39k
  case 166:
5774
7.39k
#line 528 "/src/php-src/Zend/zend_language_parser.y"
5775
7.39k
                                                                   { (yyval.ast) = (yyvsp[-3].ast); }
5776
7.39k
#line 5777 "/src/php-src/Zend/zend_language_parser.c"
5777
7.39k
    break;
5778
5779
14.1k
  case 167:
5780
14.1k
#line 530 "/src/php-src/Zend/zend_language_parser.y"
5781
14.1k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-4].ast), (yyvsp[-2].ast), NULL, (yyvsp[0].ast)); }
5782
14.1k
#line 5783 "/src/php-src/Zend/zend_language_parser.c"
5783
14.1k
    break;
5784
5785
2.18k
  case 168:
5786
2.18k
#line 533 "/src/php-src/Zend/zend_language_parser.y"
5787
2.18k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-4].ast), (yyvsp[0].ast)); }
5788
2.18k
#line 5789 "/src/php-src/Zend/zend_language_parser.c"
5789
2.18k
    break;
5790
5791
3.34k
  case 169:
5792
3.34k
#line 535 "/src/php-src/Zend/zend_language_parser.y"
5793
3.34k
                        { if (!zend_handle_encoding_declaration((yyvsp[-1].ast))) { YYERROR; } }
5794
3.32k
#line 5795 "/src/php-src/Zend/zend_language_parser.c"
5795
3.32k
    break;
5796
5797
3.32k
  case 170:
5798
3.24k
#line 537 "/src/php-src/Zend/zend_language_parser.y"
5799
3.24k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DECLARE, (yyvsp[-3].ast), (yyvsp[0].ast)); }
5800
3.24k
#line 5801 "/src/php-src/Zend/zend_language_parser.c"
5801
3.24k
    break;
5802
5803
124k
  case 171:
5804
124k
#line 538 "/src/php-src/Zend/zend_language_parser.y"
5805
124k
                                              { (yyval.ast) = NULL; }
5806
124k
#line 5807 "/src/php-src/Zend/zend_language_parser.c"
5807
124k
    break;
5808
5809
28.7k
  case 172:
5810
28.7k
#line 540 "/src/php-src/Zend/zend_language_parser.y"
5811
28.7k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRY, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
5812
28.7k
#line 5813 "/src/php-src/Zend/zend_language_parser.c"
5813
28.7k
    break;
5814
5815
2.13k
  case 173:
5816
2.13k
#line 541 "/src/php-src/Zend/zend_language_parser.y"
5817
2.13k
                                    { (yyval.ast) = zend_ast_create(ZEND_AST_GOTO, (yyvsp[-1].ast)); }
5818
2.13k
#line 5819 "/src/php-src/Zend/zend_language_parser.c"
5819
2.13k
    break;
5820
5821
1.81k
  case 174:
5822
1.81k
#line 542 "/src/php-src/Zend/zend_language_parser.y"
5823
1.81k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_LABEL, (yyvsp[-1].ast)); }
5824
1.81k
#line 5825 "/src/php-src/Zend/zend_language_parser.c"
5825
1.81k
    break;
5826
5827
188
  case 175:
5828
188
#line 543 "/src/php-src/Zend/zend_language_parser.y"
5829
188
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[-1].ast)); }
5830
188
#line 5831 "/src/php-src/Zend/zend_language_parser.c"
5831
188
    break;
5832
5833
29.3k
  case 176:
5834
29.3k
#line 548 "/src/php-src/Zend/zend_language_parser.y"
5835
29.3k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_CATCH_LIST); }
5836
29.3k
#line 5837 "/src/php-src/Zend/zend_language_parser.c"
5837
29.3k
    break;
5838
5839
31.6k
  case 177:
5840
31.6k
#line 550 "/src/php-src/Zend/zend_language_parser.y"
5841
31.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))); }
5842
31.6k
#line 5843 "/src/php-src/Zend/zend_language_parser.c"
5843
31.6k
    break;
5844
5845
31.8k
  case 178:
5846
31.8k
#line 554 "/src/php-src/Zend/zend_language_parser.y"
5847
31.8k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
5848
31.8k
#line 5849 "/src/php-src/Zend/zend_language_parser.c"
5849
31.8k
    break;
5850
5851
6.20k
  case 179:
5852
6.20k
#line 555 "/src/php-src/Zend/zend_language_parser.y"
5853
6.20k
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5854
6.20k
#line 5855 "/src/php-src/Zend/zend_language_parser.c"
5855
6.20k
    break;
5856
5857
1.61k
  case 180:
5858
1.61k
#line 559 "/src/php-src/Zend/zend_language_parser.y"
5859
1.61k
                       { (yyval.ast) = NULL; }
5860
1.61k
#line 5861 "/src/php-src/Zend/zend_language_parser.c"
5861
1.61k
    break;
5862
5863
30.2k
  case 181:
5864
30.2k
#line 560 "/src/php-src/Zend/zend_language_parser.y"
5865
30.2k
                           { (yyval.ast) = (yyvsp[0].ast); }
5866
30.2k
#line 5867 "/src/php-src/Zend/zend_language_parser.c"
5867
30.2k
    break;
5868
5869
26.8k
  case 182:
5870
26.8k
#line 564 "/src/php-src/Zend/zend_language_parser.y"
5871
26.8k
                       { (yyval.ast) = NULL; }
5872
26.8k
#line 5873 "/src/php-src/Zend/zend_language_parser.c"
5873
26.8k
    break;
5874
5875
1.94k
  case 183:
5876
1.94k
#line 565 "/src/php-src/Zend/zend_language_parser.y"
5877
1.94k
                                                       { (yyval.ast) = (yyvsp[-1].ast); }
5878
1.94k
#line 5879 "/src/php-src/Zend/zend_language_parser.c"
5879
1.94k
    break;
5880
5881
7.46k
  case 184:
5882
7.46k
#line 569 "/src/php-src/Zend/zend_language_parser.y"
5883
7.46k
                               { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
5884
7.46k
#line 5885 "/src/php-src/Zend/zend_language_parser.c"
5885
7.46k
    break;
5886
5887
1.18k
  case 185:
5888
1.18k
#line 570 "/src/php-src/Zend/zend_language_parser.y"
5889
1.18k
                                                   { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5890
1.18k
#line 5891 "/src/php-src/Zend/zend_language_parser.c"
5891
1.18k
    break;
5892
5893
8.65k
  case 186:
5894
8.65k
#line 574 "/src/php-src/Zend/zend_language_parser.y"
5895
8.65k
                         { (yyval.ast) = zend_ast_create(ZEND_AST_UNSET, (yyvsp[0].ast)); }
5896
8.65k
#line 5897 "/src/php-src/Zend/zend_language_parser.c"
5897
8.65k
    break;
5898
5899
19.6k
  case 187:
5900
19.6k
#line 578 "/src/php-src/Zend/zend_language_parser.y"
5901
19.6k
                         { (yyval.ast) = (yyvsp[0].ast); }
5902
19.6k
#line 5903 "/src/php-src/Zend/zend_language_parser.c"
5903
19.6k
    break;
5904
5905
79
  case 188:
5906
79
#line 579 "/src/php-src/Zend/zend_language_parser.y"
5907
79
                           {
5908
79
      zval zv;
5909
79
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5910
79
      (yyval.ast) = zend_ast_create_zval(&zv);
5911
79
    }
5912
0
#line 5913 "/src/php-src/Zend/zend_language_parser.c"
5913
0
    break;
5914
5915
18.6k
  case 189:
5916
18.6k
#line 589 "/src/php-src/Zend/zend_language_parser.y"
5917
18.6k
                { (yyval.ast) = zend_ast_create_decl(ZEND_AST_FUNC_DECL, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-9].str),
5918
18.6k
          zend_ast_get_str((yyvsp[-10].ast)), (yyvsp[-7].ast), NULL, (yyvsp[-2].ast), (yyvsp[-5].ast), NULL); CG(extra_fn_flags) = (yyvsp[-4].num); }
5919
18.6k
#line 5920 "/src/php-src/Zend/zend_language_parser.c"
5920
18.6k
    break;
5921
5922
48.8k
  case 190:
5923
48.8k
#line 594 "/src/php-src/Zend/zend_language_parser.y"
5924
48.8k
                        { (yyval.num) = 0; }
5925
48.8k
#line 5926 "/src/php-src/Zend/zend_language_parser.c"
5926
48.8k
    break;
5927
5928
3.78k
  case 191:
5929
3.78k
#line 595 "/src/php-src/Zend/zend_language_parser.y"
5930
3.78k
                                                        { (yyval.num) = ZEND_PARAM_REF; }
5931
3.78k
#line 5932 "/src/php-src/Zend/zend_language_parser.c"
5932
3.78k
    break;
5933
5934
51.6k
  case 192:
5935
51.6k
#line 599 "/src/php-src/Zend/zend_language_parser.y"
5936
51.6k
                       { (yyval.num) = 0; }
5937
51.6k
#line 5938 "/src/php-src/Zend/zend_language_parser.c"
5938
51.6k
    break;
5939
5940
976
  case 193:
5941
976
#line 600 "/src/php-src/Zend/zend_language_parser.y"
5942
976
                            { (yyval.num) = ZEND_PARAM_VARIADIC; }
5943
976
#line 5944 "/src/php-src/Zend/zend_language_parser.c"
5944
976
    break;
5945
5946
2.51k
  case 194:
5947
2.51k
#line 604 "/src/php-src/Zend/zend_language_parser.y"
5948
2.51k
                                        { (yyval.num) = CG(zend_lineno); }
5949
2.51k
#line 5950 "/src/php-src/Zend/zend_language_parser.c"
5950
2.51k
    break;
5951
5952
2.45k
  case 195:
5953
2.45k
#line 606 "/src/php-src/Zend/zend_language_parser.y"
5954
2.45k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, (yyvsp[-9].num), (yyvsp[-7].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-6].ast)), (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL); }
5955
2.45k
#line 5956 "/src/php-src/Zend/zend_language_parser.c"
5956
2.45k
    break;
5957
5958
37.2k
  case 196:
5959
37.2k
#line 607 "/src/php-src/Zend/zend_language_parser.y"
5960
37.2k
                        { (yyval.num) = CG(zend_lineno); }
5961
37.2k
#line 5962 "/src/php-src/Zend/zend_language_parser.c"
5962
37.2k
    break;
5963
5964
36.2k
  case 197:
5965
36.2k
#line 609 "/src/php-src/Zend/zend_language_parser.y"
5966
36.2k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, 0, (yyvsp[-7].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-6].ast)), (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL); }
5967
36.2k
#line 5968 "/src/php-src/Zend/zend_language_parser.c"
5968
36.2k
    break;
5969
5970
2.57k
  case 198:
5971
2.57k
#line 613 "/src/php-src/Zend/zend_language_parser.y"
5972
2.57k
                                                                { (yyval.num) = (yyvsp[0].num); }
5973
2.57k
#line 5974 "/src/php-src/Zend/zend_language_parser.c"
5974
2.57k
    break;
5975
5976
200
  case 199:
5977
200
#line 615 "/src/php-src/Zend/zend_language_parser.y"
5978
200
                        { (yyval.num) = zend_add_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5979
179
#line 5980 "/src/php-src/Zend/zend_language_parser.c"
5980
179
    break;
5981
5982
179
  case 200:
5983
35
#line 620 "/src/php-src/Zend/zend_language_parser.y"
5984
35
                        { (yyval.num) = zend_add_anonymous_class_modifier(0, (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5985
25
#line 5986 "/src/php-src/Zend/zend_language_parser.c"
5986
25
    break;
5987
5988
25
  case 201:
5989
6
#line 622 "/src/php-src/Zend/zend_language_parser.y"
5990
6
                        { (yyval.num) = zend_add_anonymous_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5991
0
#line 5992 "/src/php-src/Zend/zend_language_parser.c"
5992
0
    break;
5993
5994
2.14k
  case 202:
5995
2.14k
#line 626 "/src/php-src/Zend/zend_language_parser.y"
5996
2.14k
                                                { (yyval.num) = 0; }
5997
2.14k
#line 5998 "/src/php-src/Zend/zend_language_parser.c"
5998
2.14k
    break;
5999
6000
19
  case 203:
6001
19
#line 627 "/src/php-src/Zend/zend_language_parser.y"
6002
19
                                                { (yyval.num) = (yyvsp[0].num); }
6003
19
#line 6004 "/src/php-src/Zend/zend_language_parser.c"
6004
19
    break;
6005
6006
1.22k
  case 204:
6007
1.22k
#line 631 "/src/php-src/Zend/zend_language_parser.y"
6008
1.22k
                                        { (yyval.num) = ZEND_ACC_EXPLICIT_ABSTRACT_CLASS; }
6009
1.22k
#line 6010 "/src/php-src/Zend/zend_language_parser.c"
6010
1.22k
    break;
6011
6012
1.20k
  case 205:
6013
1.20k
#line 632 "/src/php-src/Zend/zend_language_parser.y"
6014
1.20k
                                        { (yyval.num) = ZEND_ACC_FINAL; }
6015
1.20k
#line 6016 "/src/php-src/Zend/zend_language_parser.c"
6016
1.20k
    break;
6017
6018
382
  case 206:
6019
382
#line 633 "/src/php-src/Zend/zend_language_parser.y"
6020
382
                                        { (yyval.num) = ZEND_ACC_READONLY_CLASS|ZEND_ACC_NO_DYNAMIC_PROPERTIES; }
6021
382
#line 6022 "/src/php-src/Zend/zend_language_parser.c"
6022
382
    break;
6023
6024
3.06k
  case 207:
6025
3.06k
#line 637 "/src/php-src/Zend/zend_language_parser.y"
6026
3.06k
                        { (yyval.num) = CG(zend_lineno); }
6027
3.06k
#line 6028 "/src/php-src/Zend/zend_language_parser.c"
6028
3.06k
    break;
6029
6030
2.98k
  case 208:
6031
2.98k
#line 639 "/src/php-src/Zend/zend_language_parser.y"
6032
2.98k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, ZEND_ACC_TRAIT, (yyvsp[-5].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-4].ast)), NULL, NULL, (yyvsp[-1].ast), NULL, NULL); }
6033
2.98k
#line 6034 "/src/php-src/Zend/zend_language_parser.c"
6034
2.98k
    break;
6035
6036
3.31k
  case 209:
6037
3.31k
#line 643 "/src/php-src/Zend/zend_language_parser.y"
6038
3.31k
                            { (yyval.num) = CG(zend_lineno); }
6039
3.31k
#line 6040 "/src/php-src/Zend/zend_language_parser.c"
6040
3.31k
    break;
6041
6042
3.25k
  case 210:
6043
3.25k
#line 645 "/src/php-src/Zend/zend_language_parser.y"
6044
3.25k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, ZEND_ACC_INTERFACE, (yyvsp[-6].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-5].ast)), NULL, (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL); }
6045
3.25k
#line 6046 "/src/php-src/Zend/zend_language_parser.c"
6046
3.25k
    break;
6047
6048
5.19k
  case 211:
6049
5.19k
#line 649 "/src/php-src/Zend/zend_language_parser.y"
6050
5.19k
                       { (yyval.num) = CG(zend_lineno); }
6051
5.19k
#line 6052 "/src/php-src/Zend/zend_language_parser.c"
6052
5.19k
    break;
6053
6054
4.82k
  case 212:
6055
4.82k
#line 651 "/src/php-src/Zend/zend_language_parser.y"
6056
4.82k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, ZEND_ACC_ENUM|ZEND_ACC_FINAL, (yyvsp[-7].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-6].ast)), NULL, (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, (yyvsp[-5].ast)); }
6057
4.82k
#line 6058 "/src/php-src/Zend/zend_language_parser.c"
6058
4.82k
    break;
6059
6060
4.17k
  case 213:
6061
4.17k
#line 655 "/src/php-src/Zend/zend_language_parser.y"
6062
4.17k
                        { (yyval.ast) = NULL; }
6063
4.17k
#line 6064 "/src/php-src/Zend/zend_language_parser.c"
6064
4.17k
    break;
6065
6066
864
  case 214:
6067
864
#line 656 "/src/php-src/Zend/zend_language_parser.y"
6068
864
                              { (yyval.ast) = (yyvsp[0].ast); }
6069
864
#line 6070 "/src/php-src/Zend/zend_language_parser.c"
6070
864
    break;
6071
6072
2.76k
  case 215:
6073
2.76k
#line 661 "/src/php-src/Zend/zend_language_parser.y"
6074
2.76k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ENUM_CASE, (yyvsp[-2].ast), (yyvsp[-1].ast), ((yyvsp[-3].str) ? zend_ast_create_zval_from_str((yyvsp[-3].str)) : NULL), NULL); }
6075
2.76k
#line 6076 "/src/php-src/Zend/zend_language_parser.c"
6076
2.76k
    break;
6077
6078
1.79k
  case 216:
6079
1.79k
#line 665 "/src/php-src/Zend/zend_language_parser.y"
6080
1.79k
                        { (yyval.ast) = NULL; }
6081
1.79k
#line 6082 "/src/php-src/Zend/zend_language_parser.c"
6082
1.79k
    break;
6083
6084
978
  case 217:
6085
978
#line 666 "/src/php-src/Zend/zend_language_parser.y"
6086
978
                         { (yyval.ast) = (yyvsp[0].ast); }
6087
978
#line 6088 "/src/php-src/Zend/zend_language_parser.c"
6088
978
    break;
6089
6090
31.2k
  case 218:
6091
31.2k
#line 670 "/src/php-src/Zend/zend_language_parser.y"
6092
31.2k
                                                { (yyval.ast) = NULL; }
6093
31.2k
#line 6094 "/src/php-src/Zend/zend_language_parser.c"
6094
31.2k
    break;
6095
6096
10.6k
  case 219:
6097
10.6k
#line 671 "/src/php-src/Zend/zend_language_parser.y"
6098
10.6k
                                        { (yyval.ast) = (yyvsp[0].ast); }
6099
10.6k
#line 6100 "/src/php-src/Zend/zend_language_parser.c"
6100
10.6k
    break;
6101
6102
2.85k
  case 220:
6103
2.85k
#line 675 "/src/php-src/Zend/zend_language_parser.y"
6104
2.85k
                                                { (yyval.ast) = NULL; }
6105
2.85k
#line 6106 "/src/php-src/Zend/zend_language_parser.c"
6106
2.85k
    break;
6107
6108
456
  case 221:
6109
456
#line 676 "/src/php-src/Zend/zend_language_parser.y"
6110
456
                                                { (yyval.ast) = (yyvsp[0].ast); }
6111
456
#line 6112 "/src/php-src/Zend/zend_language_parser.c"
6112
456
    break;
6113
6114
44.2k
  case 222:
6115
44.2k
#line 680 "/src/php-src/Zend/zend_language_parser.y"
6116
44.2k
                                                        { (yyval.ast) = NULL; }
6117
44.2k
#line 6118 "/src/php-src/Zend/zend_language_parser.c"
6118
44.2k
    break;
6119
6120
2.72k
  case 223:
6121
2.72k
#line 681 "/src/php-src/Zend/zend_language_parser.y"
6122
2.72k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6123
2.72k
#line 6124 "/src/php-src/Zend/zend_language_parser.c"
6124
2.72k
    break;
6125
6126
16.7k
  case 224:
6127
16.7k
#line 685 "/src/php-src/Zend/zend_language_parser.y"
6128
16.7k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6129
16.7k
#line 6130 "/src/php-src/Zend/zend_language_parser.c"
6130
16.7k
    break;
6131
6132
1.68k
  case 225:
6133
1.68k
#line 686 "/src/php-src/Zend/zend_language_parser.y"
6134
1.68k
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_REF, (yyvsp[0].ast)); }
6135
1.68k
#line 6136 "/src/php-src/Zend/zend_language_parser.c"
6136
1.68k
    break;
6137
6138
291
  case 226:
6139
291
#line 687 "/src/php-src/Zend/zend_language_parser.y"
6140
291
                                               { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LIST; }
6141
291
#line 6142 "/src/php-src/Zend/zend_language_parser.c"
6142
291
    break;
6143
6144
244
  case 227:
6145
244
#line 688 "/src/php-src/Zend/zend_language_parser.y"
6146
244
                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
6147
244
#line 6148 "/src/php-src/Zend/zend_language_parser.c"
6148
244
    break;
6149
6150
12.4k
  case 228:
6151
12.4k
#line 692 "/src/php-src/Zend/zend_language_parser.y"
6152
12.4k
                          { (yyval.ast) = (yyvsp[0].ast); }
6153
12.4k
#line 6154 "/src/php-src/Zend/zend_language_parser.c"
6154
12.4k
    break;
6155
6156
165
  case 229:
6157
165
#line 693 "/src/php-src/Zend/zend_language_parser.y"
6158
165
                                                      { (yyval.ast) = (yyvsp[-2].ast); }
6159
165
#line 6160 "/src/php-src/Zend/zend_language_parser.c"
6160
165
    break;
6161
6162
16.2k
  case 230:
6163
16.2k
#line 697 "/src/php-src/Zend/zend_language_parser.y"
6164
16.2k
                          { (yyval.ast) = (yyvsp[0].ast); }
6165
16.2k
#line 6166 "/src/php-src/Zend/zend_language_parser.c"
6166
16.2k
    break;
6167
6168
0
  case 231:
6169
0
#line 698 "/src/php-src/Zend/zend_language_parser.y"
6170
0
                                                          { (yyval.ast) = (yyvsp[-2].ast); }
6171
0
#line 6172 "/src/php-src/Zend/zend_language_parser.c"
6172
0
    break;
6173
6174
3.18k
  case 232:
6175
3.18k
#line 702 "/src/php-src/Zend/zend_language_parser.y"
6176
3.18k
                          { (yyval.ast) = (yyvsp[0].ast); }
6177
3.18k
#line 6178 "/src/php-src/Zend/zend_language_parser.c"
6178
3.18k
    break;
6179
6180
61
  case 233:
6181
61
#line 703 "/src/php-src/Zend/zend_language_parser.y"
6182
61
                                                          { (yyval.ast) = (yyvsp[-2].ast); }
6183
61
#line 6184 "/src/php-src/Zend/zend_language_parser.c"
6184
61
    break;
6185
6186
1.24k
  case 234:
6187
1.24k
#line 707 "/src/php-src/Zend/zend_language_parser.y"
6188
1.24k
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6189
1.24k
#line 6190 "/src/php-src/Zend/zend_language_parser.c"
6190
1.24k
    break;
6191
6192
225
  case 235:
6193
225
#line 708 "/src/php-src/Zend/zend_language_parser.y"
6194
225
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
6195
225
#line 6196 "/src/php-src/Zend/zend_language_parser.c"
6196
225
    break;
6197
6198
0
  case 236:
6199
0
#line 709 "/src/php-src/Zend/zend_language_parser.y"
6200
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6201
0
#line 6202 "/src/php-src/Zend/zend_language_parser.c"
6202
0
    break;
6203
6204
0
  case 237:
6205
0
#line 710 "/src/php-src/Zend/zend_language_parser.y"
6206
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6207
0
#line 6208 "/src/php-src/Zend/zend_language_parser.c"
6208
0
    break;
6209
6210
1.65k
  case 238:
6211
1.65k
#line 714 "/src/php-src/Zend/zend_language_parser.y"
6212
1.65k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_SWITCH_LIST); }
6213
1.65k
#line 6214 "/src/php-src/Zend/zend_language_parser.c"
6214
1.65k
    break;
6215
6216
2.96k
  case 239:
6217
2.96k
#line 716 "/src/php-src/Zend/zend_language_parser.y"
6218
2.96k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-4].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6219
2.96k
#line 6220 "/src/php-src/Zend/zend_language_parser.c"
6220
2.96k
    break;
6221
6222
152
  case 240:
6223
152
#line 718 "/src/php-src/Zend/zend_language_parser.y"
6224
152
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-4].ast), zend_ast_create_ex(ZEND_AST_SWITCH_CASE, ZEND_ALT_CASE_SYNTAX, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6225
152
#line 6226 "/src/php-src/Zend/zend_language_parser.c"
6226
152
    break;
6227
6228
308
  case 241:
6229
308
#line 720 "/src/php-src/Zend/zend_language_parser.y"
6230
308
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, NULL, (yyvsp[0].ast))); }
6231
308
#line 6232 "/src/php-src/Zend/zend_language_parser.c"
6232
308
    break;
6233
6234
99
  case 242:
6235
99
#line 722 "/src/php-src/Zend/zend_language_parser.y"
6236
99
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create_ex(ZEND_AST_SWITCH_CASE, ZEND_ALT_CASE_SYNTAX, NULL, (yyvsp[0].ast))); }
6237
99
#line 6238 "/src/php-src/Zend/zend_language_parser.c"
6238
99
    break;
6239
6240
2.63k
  case 243:
6241
2.63k
#line 728 "/src/php-src/Zend/zend_language_parser.y"
6242
2.63k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
6243
2.63k
#line 6244 "/src/php-src/Zend/zend_language_parser.c"
6244
2.63k
    break;
6245
6246
177
  case 244:
6247
177
#line 732 "/src/php-src/Zend/zend_language_parser.y"
6248
177
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_MATCH_ARM_LIST); }
6249
177
#line 6250 "/src/php-src/Zend/zend_language_parser.c"
6250
177
    break;
6251
6252
2.47k
  case 245:
6253
2.47k
#line 733 "/src/php-src/Zend/zend_language_parser.y"
6254
2.47k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6255
2.47k
#line 6256 "/src/php-src/Zend/zend_language_parser.c"
6256
2.47k
    break;
6257
6258
2.55k
  case 246:
6259
2.55k
#line 737 "/src/php-src/Zend/zend_language_parser.y"
6260
2.55k
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MATCH_ARM_LIST, (yyvsp[0].ast)); }
6261
2.55k
#line 6262 "/src/php-src/Zend/zend_language_parser.c"
6262
2.55k
    break;
6263
6264
1.93k
  case 247:
6265
1.93k
#line 738 "/src/php-src/Zend/zend_language_parser.y"
6266
1.93k
                                                       { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6267
1.93k
#line 6268 "/src/php-src/Zend/zend_language_parser.c"
6268
1.93k
    break;
6269
6270
3.94k
  case 248:
6271
3.94k
#line 743 "/src/php-src/Zend/zend_language_parser.y"
6272
3.94k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, (yyvsp[-3].ast), (yyvsp[0].ast)); }
6273
3.94k
#line 6274 "/src/php-src/Zend/zend_language_parser.c"
6274
3.94k
    break;
6275
6276
555
  case 249:
6277
555
#line 745 "/src/php-src/Zend/zend_language_parser.y"
6278
555
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, NULL, (yyvsp[0].ast)); }
6279
555
#line 6280 "/src/php-src/Zend/zend_language_parser.c"
6280
555
    break;
6281
6282
4.04k
  case 250:
6283
4.04k
#line 749 "/src/php-src/Zend/zend_language_parser.y"
6284
4.04k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
6285
4.04k
#line 6286 "/src/php-src/Zend/zend_language_parser.c"
6286
4.04k
    break;
6287
6288
2.28k
  case 251:
6289
2.28k
#line 750 "/src/php-src/Zend/zend_language_parser.y"
6290
2.28k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6291
2.28k
#line 6292 "/src/php-src/Zend/zend_language_parser.c"
6292
2.28k
    break;
6293
6294
1.27k
  case 252:
6295
1.27k
#line 755 "/src/php-src/Zend/zend_language_parser.y"
6296
1.27k
                          { (yyval.ast) = (yyvsp[0].ast); }
6297
1.27k
#line 6298 "/src/php-src/Zend/zend_language_parser.c"
6298
1.27k
    break;
6299
6300
0
  case 253:
6301
0
#line 756 "/src/php-src/Zend/zend_language_parser.y"
6302
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6303
0
#line 6304 "/src/php-src/Zend/zend_language_parser.c"
6304
0
    break;
6305
6306
18.4k
  case 254:
6307
18.4k
#line 762 "/src/php-src/Zend/zend_language_parser.y"
6308
18.4k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6309
18.4k
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6310
18.4k
#line 6311 "/src/php-src/Zend/zend_language_parser.c"
6311
18.4k
    break;
6312
6313
1.63k
  case 255:
6314
1.63k
#line 765 "/src/php-src/Zend/zend_language_parser.y"
6315
1.63k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6316
1.63k
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6317
1.63k
#line 6318 "/src/php-src/Zend/zend_language_parser.c"
6318
1.63k
    break;
6319
6320
16.1k
  case 256:
6321
16.1k
#line 770 "/src/php-src/Zend/zend_language_parser.y"
6322
16.1k
                                                    { (yyval.ast) = (yyvsp[0].ast); }
6323
16.1k
#line 6324 "/src/php-src/Zend/zend_language_parser.c"
6324
16.1k
    break;
6325
6326
2.27k
  case 257:
6327
2.27k
#line 772 "/src/php-src/Zend/zend_language_parser.y"
6328
2.27k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[0].ast))); }
6329
2.27k
#line 6330 "/src/php-src/Zend/zend_language_parser.c"
6330
2.27k
    break;
6331
6332
298
  case 258:
6333
298
#line 777 "/src/php-src/Zend/zend_language_parser.y"
6334
298
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6335
298
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6336
298
#line 6337 "/src/php-src/Zend/zend_language_parser.c"
6337
298
    break;
6338
6339
19
  case 259:
6340
19
#line 780 "/src/php-src/Zend/zend_language_parser.y"
6341
19
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-6].ast),
6342
19
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6343
19
#line 6344 "/src/php-src/Zend/zend_language_parser.c"
6344
19
    break;
6345
6346
116
  case 260:
6347
116
#line 785 "/src/php-src/Zend/zend_language_parser.y"
6348
116
                                                     { (yyval.ast) = (yyvsp[-2].ast); }
6349
116
#line 6350 "/src/php-src/Zend/zend_language_parser.c"
6350
116
    break;
6351
6352
130
  case 261:
6353
130
#line 787 "/src/php-src/Zend/zend_language_parser.y"
6354
130
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6355
130
            zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[-2].ast))); }
6356
130
#line 6357 "/src/php-src/Zend/zend_language_parser.c"
6357
130
    break;
6358
6359
37.1k
  case 262:
6360
37.1k
#line 792 "/src/php-src/Zend/zend_language_parser.y"
6361
37.1k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6362
37.1k
#line 6363 "/src/php-src/Zend/zend_language_parser.c"
6363
37.1k
    break;
6364
6365
46.8k
  case 263:
6366
46.8k
#line 793 "/src/php-src/Zend/zend_language_parser.y"
6367
46.8k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_PARAM_LIST); }
6368
46.8k
#line 6369 "/src/php-src/Zend/zend_language_parser.c"
6369
46.8k
    break;
6370
6371
37.2k
  case 264:
6372
37.2k
#line 799 "/src/php-src/Zend/zend_language_parser.y"
6373
37.2k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PARAM_LIST, (yyvsp[0].ast)); }
6374
37.2k
#line 6375 "/src/php-src/Zend/zend_language_parser.c"
6375
37.2k
    break;
6376
6377
14.7k
  case 265:
6378
14.7k
#line 801 "/src/php-src/Zend/zend_language_parser.y"
6379
14.7k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6380
14.7k
#line 6381 "/src/php-src/Zend/zend_language_parser.c"
6381
14.7k
    break;
6382
6383
1.47k
  case 266:
6384
1.47k
#line 805 "/src/php-src/Zend/zend_language_parser.y"
6385
1.47k
                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6386
1.47k
#line 6387 "/src/php-src/Zend/zend_language_parser.c"
6387
1.47k
    break;
6388
6389
50.5k
  case 267:
6390
50.5k
#line 806 "/src/php-src/Zend/zend_language_parser.y"
6391
50.5k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6392
50.5k
#line 6393 "/src/php-src/Zend/zend_language_parser.c"
6393
50.5k
    break;
6394
6395
51.3k
  case 268:
6396
51.3k
#line 811 "/src/php-src/Zend/zend_language_parser.y"
6397
51.3k
                        { (yyval.num) = 0; }
6398
51.3k
#line 6399 "/src/php-src/Zend/zend_language_parser.c"
6399
51.3k
    break;
6400
6401
1.34k
  case 269:
6402
1.34k
#line 813 "/src/php-src/Zend/zend_language_parser.y"
6403
1.34k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CPP, (yyvsp[0].ast));
6404
1.34k
        if (!(yyval.num)) { YYERROR; } }
6405
1.32k
#line 6406 "/src/php-src/Zend/zend_language_parser.c"
6406
1.32k
    break;
6407
6408
45.3k
  case 270:
6409
45.3k
#line 820 "/src/php-src/Zend/zend_language_parser.y"
6410
45.3k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_PARAM, (yyvsp[-6].num) | (yyvsp[-4].num) | (yyvsp[-3].num), (yyvsp[-5].ast), (yyvsp[-2].ast), NULL,
6411
45.3k
          NULL, (yyvsp[-1].str) ? zend_ast_create_zval_from_str((yyvsp[-1].str)) : NULL, (yyvsp[0].ast)); }
6412
45.3k
#line 6413 "/src/php-src/Zend/zend_language_parser.c"
6413
45.3k
    break;
6414
6415
6.69k
  case 271:
6416
6.69k
#line 824 "/src/php-src/Zend/zend_language_parser.y"
6417
6.69k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_PARAM, (yyvsp[-8].num) | (yyvsp[-6].num) | (yyvsp[-5].num), (yyvsp[-7].ast), (yyvsp[-4].ast), (yyvsp[-2].ast),
6418
6.69k
          NULL, (yyvsp[-1].str) ? zend_ast_create_zval_from_str((yyvsp[-1].str)) : NULL, (yyvsp[0].ast)); }
6419
6.69k
#line 6420 "/src/php-src/Zend/zend_language_parser.c"
6420
6.69k
    break;
6421
6422
47.4k
  case 272:
6423
47.4k
#line 829 "/src/php-src/Zend/zend_language_parser.y"
6424
47.4k
                        { (yyval.ast) = NULL; }
6425
47.4k
#line 6426 "/src/php-src/Zend/zend_language_parser.c"
6426
47.4k
    break;
6427
6428
29.3k
  case 273:
6429
29.3k
#line 830 "/src/php-src/Zend/zend_language_parser.y"
6430
29.3k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6431
29.3k
#line 6432 "/src/php-src/Zend/zend_language_parser.c"
6432
29.3k
    break;
6433
6434
10.7k
  case 274:
6435
10.7k
#line 834 "/src/php-src/Zend/zend_language_parser.y"
6436
10.7k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6437
10.7k
#line 6438 "/src/php-src/Zend/zend_language_parser.c"
6438
10.7k
    break;
6439
6440
1.01k
  case 275:
6441
1.01k
#line 835 "/src/php-src/Zend/zend_language_parser.y"
6442
1.01k
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6443
1.01k
#line 6444 "/src/php-src/Zend/zend_language_parser.c"
6444
1.01k
    break;
6445
6446
2.35k
  case 276:
6447
2.35k
#line 836 "/src/php-src/Zend/zend_language_parser.y"
6448
2.35k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6449
2.35k
#line 6450 "/src/php-src/Zend/zend_language_parser.c"
6450
2.35k
    break;
6451
6452
712
  case 277:
6453
712
#line 837 "/src/php-src/Zend/zend_language_parser.y"
6454
712
                                        { (yyval.ast) = (yyvsp[0].ast); }
6455
712
#line 6456 "/src/php-src/Zend/zend_language_parser.c"
6456
712
    break;
6457
6458
20.3k
  case 278:
6459
20.3k
#line 841 "/src/php-src/Zend/zend_language_parser.y"
6460
20.3k
                                        { (yyval.ast) = (yyvsp[0].ast); }
6461
20.3k
#line 6462 "/src/php-src/Zend/zend_language_parser.c"
6462
20.3k
    break;
6463
6464
692
  case 279:
6465
692
#line 842 "/src/php-src/Zend/zend_language_parser.y"
6466
692
                                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_STATIC); }
6467
692
#line 6468 "/src/php-src/Zend/zend_language_parser.c"
6468
692
    break;
6469
6470
6.13k
  case 280:
6471
6.13k
#line 846 "/src/php-src/Zend/zend_language_parser.y"
6472
6.13k
                     { (yyval.ast) = (yyvsp[0].ast); }
6473
6.13k
#line 6474 "/src/php-src/Zend/zend_language_parser.c"
6474
6.13k
    break;
6475
6476
759
  case 281:
6477
759
#line 847 "/src/php-src/Zend/zend_language_parser.y"
6478
759
                                           { (yyval.ast) = (yyvsp[-1].ast); }
6479
759
#line 6480 "/src/php-src/Zend/zend_language_parser.c"
6480
759
    break;
6481
6482
2.36k
  case 282:
6483
2.36k
#line 852 "/src/php-src/Zend/zend_language_parser.y"
6484
2.36k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6485
2.36k
#line 6486 "/src/php-src/Zend/zend_language_parser.c"
6486
2.36k
    break;
6487
6488
2.17k
  case 283:
6489
2.17k
#line 854 "/src/php-src/Zend/zend_language_parser.y"
6490
2.17k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6491
2.17k
#line 6492 "/src/php-src/Zend/zend_language_parser.c"
6492
2.17k
    break;
6493
6494
1.47k
  case 284:
6495
1.47k
#line 858 "/src/php-src/Zend/zend_language_parser.y"
6496
1.47k
                                                                          { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6497
1.47k
#line 6498 "/src/php-src/Zend/zend_language_parser.c"
6498
1.47k
    break;
6499
6500
239
  case 285:
6501
239
#line 859 "/src/php-src/Zend/zend_language_parser.y"
6502
239
                                                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6503
239
#line 6504 "/src/php-src/Zend/zend_language_parser.c"
6504
239
    break;
6505
6506
23.2k
  case 286:
6507
23.2k
#line 866 "/src/php-src/Zend/zend_language_parser.y"
6508
23.2k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6509
23.2k
#line 6510 "/src/php-src/Zend/zend_language_parser.c"
6510
23.2k
    break;
6511
6512
1.72k
  case 287:
6513
1.72k
#line 867 "/src/php-src/Zend/zend_language_parser.y"
6514
1.72k
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6515
1.72k
#line 6516 "/src/php-src/Zend/zend_language_parser.c"
6516
1.72k
    break;
6517
6518
3.44k
  case 288:
6519
3.44k
#line 868 "/src/php-src/Zend/zend_language_parser.y"
6520
3.44k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6521
3.44k
#line 6522 "/src/php-src/Zend/zend_language_parser.c"
6522
3.44k
    break;
6523
6524
864
  case 289:
6525
864
#line 869 "/src/php-src/Zend/zend_language_parser.y"
6526
864
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6527
864
#line 6528 "/src/php-src/Zend/zend_language_parser.c"
6528
864
    break;
6529
6530
3.48k
  case 290:
6531
3.48k
#line 873 "/src/php-src/Zend/zend_language_parser.y"
6532
3.48k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_ARRAY); }
6533
3.48k
#line 6534 "/src/php-src/Zend/zend_language_parser.c"
6534
3.48k
    break;
6535
6536
371
  case 291:
6537
371
#line 874 "/src/php-src/Zend/zend_language_parser.y"
6538
371
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_CALLABLE); }
6539
371
#line 6540 "/src/php-src/Zend/zend_language_parser.c"
6540
371
    break;
6541
6542
57.6k
  case 292:
6543
57.6k
#line 875 "/src/php-src/Zend/zend_language_parser.y"
6544
57.6k
                                { (yyval.ast) = (yyvsp[0].ast); }
6545
57.6k
#line 6546 "/src/php-src/Zend/zend_language_parser.c"
6546
57.6k
    break;
6547
6548
6.50k
  case 293:
6549
6.50k
#line 879 "/src/php-src/Zend/zend_language_parser.y"
6550
6.50k
                                    { (yyval.ast) = (yyvsp[0].ast); }
6551
6.50k
#line 6552 "/src/php-src/Zend/zend_language_parser.c"
6552
6.50k
    break;
6553
6554
2.71k
  case 294:
6555
2.71k
#line 880 "/src/php-src/Zend/zend_language_parser.y"
6556
2.71k
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
6557
2.71k
#line 6558 "/src/php-src/Zend/zend_language_parser.c"
6558
2.71k
    break;
6559
6560
3.45k
  case 295:
6561
3.45k
#line 885 "/src/php-src/Zend/zend_language_parser.y"
6562
3.45k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6563
3.45k
#line 6564 "/src/php-src/Zend/zend_language_parser.c"
6564
3.45k
    break;
6565
6566
2.31k
  case 296:
6567
2.31k
#line 887 "/src/php-src/Zend/zend_language_parser.y"
6568
2.31k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6569
2.31k
#line 6570 "/src/php-src/Zend/zend_language_parser.c"
6570
2.31k
    break;
6571
6572
3.58k
  case 297:
6573
3.58k
#line 892 "/src/php-src/Zend/zend_language_parser.y"
6574
3.58k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6575
3.58k
#line 6576 "/src/php-src/Zend/zend_language_parser.c"
6576
3.58k
    break;
6577
6578
2.42k
  case 298:
6579
2.42k
#line 894 "/src/php-src/Zend/zend_language_parser.y"
6580
2.42k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6581
2.42k
#line 6582 "/src/php-src/Zend/zend_language_parser.c"
6582
2.42k
    break;
6583
6584
70.8k
  case 299:
6585
70.8k
#line 898 "/src/php-src/Zend/zend_language_parser.y"
6586
70.8k
                        { (yyval.ast) = NULL; }
6587
70.8k
#line 6588 "/src/php-src/Zend/zend_language_parser.c"
6588
70.8k
    break;
6589
6590
12.6k
  case 300:
6591
12.6k
#line 899 "/src/php-src/Zend/zend_language_parser.y"
6592
12.6k
                                { (yyval.ast) = (yyvsp[0].ast); }
6593
12.6k
#line 6594 "/src/php-src/Zend/zend_language_parser.c"
6594
12.6k
    break;
6595
6596
85.0k
  case 301:
6597
85.0k
#line 903 "/src/php-src/Zend/zend_language_parser.y"
6598
85.0k
                        { (yyval.ast) = zend_ast_create_arg_list(0, ZEND_AST_ARG_LIST); }
6599
85.0k
#line 6600 "/src/php-src/Zend/zend_language_parser.c"
6600
85.0k
    break;
6601
6602
262k
  case 302:
6603
262k
#line 904 "/src/php-src/Zend/zend_language_parser.y"
6604
262k
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
6605
262k
#line 6606 "/src/php-src/Zend/zend_language_parser.c"
6606
262k
    break;
6607
6608
263k
  case 303:
6609
263k
#line 909 "/src/php-src/Zend/zend_language_parser.y"
6610
263k
                        { (yyval.ast) = zend_ast_create_arg_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6611
263k
#line 6612 "/src/php-src/Zend/zend_language_parser.c"
6612
263k
    break;
6613
6614
129k
  case 304:
6615
129k
#line 911 "/src/php-src/Zend/zend_language_parser.y"
6616
129k
                        { (yyval.ast) = zend_ast_arg_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6617
129k
#line 6618 "/src/php-src/Zend/zend_language_parser.c"
6618
129k
    break;
6619
6620
45
  case 305:
6621
45
#line 924 "/src/php-src/Zend/zend_language_parser.y"
6622
45
                        { (yyval.ast) = zend_ast_create_arg_list(0, ZEND_AST_ARG_LIST); }
6623
45
#line 6624 "/src/php-src/Zend/zend_language_parser.c"
6624
45
    break;
6625
6626
404
  case 306:
6627
404
#line 925 "/src/php-src/Zend/zend_language_parser.y"
6628
404
                                                                     { (yyval.ast) = (yyvsp[-2].ast); }
6629
404
#line 6630 "/src/php-src/Zend/zend_language_parser.c"
6630
404
    break;
6631
6632
78
  case 307:
6633
78
#line 926 "/src/php-src/Zend/zend_language_parser.y"
6634
78
                                 { (yyval.ast) = zend_ast_create_arg_list(1, ZEND_AST_ARG_LIST, (yyvsp[-2].ast)); }
6635
78
#line 6636 "/src/php-src/Zend/zend_language_parser.c"
6636
78
    break;
6637
6638
620
  case 308:
6639
620
#line 931 "/src/php-src/Zend/zend_language_parser.y"
6640
620
                        { (yyval.ast) = zend_ast_create_arg_list(2, ZEND_AST_ARG_LIST, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6641
620
#line 6642 "/src/php-src/Zend/zend_language_parser.c"
6642
620
    break;
6643
6644
73
  case 309:
6645
73
#line 933 "/src/php-src/Zend/zend_language_parser.y"
6646
73
                        { (yyval.ast) = zend_ast_create_arg_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6647
73
#line 6648 "/src/php-src/Zend/zend_language_parser.c"
6648
73
    break;
6649
6650
276
  case 310:
6651
276
#line 935 "/src/php-src/Zend/zend_language_parser.y"
6652
276
                        { (yyval.ast) = zend_ast_arg_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6653
276
#line 6654 "/src/php-src/Zend/zend_language_parser.c"
6654
276
    break;
6655
6656
11.5k
  case 311:
6657
11.5k
#line 940 "/src/php-src/Zend/zend_language_parser.y"
6658
11.5k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMED_ARG, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6659
11.5k
#line 6660 "/src/php-src/Zend/zend_language_parser.c"
6660
11.5k
    break;
6661
6662
4.75k
  case 312:
6663
4.75k
#line 942 "/src/php-src/Zend/zend_language_parser.y"
6664
4.75k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_PLACEHOLDER_ARG, ZEND_PLACEHOLDER_VARIADIC); }
6665
4.75k
#line 6666 "/src/php-src/Zend/zend_language_parser.c"
6666
4.75k
    break;
6667
6668
480
  case 313:
6669
480
#line 944 "/src/php-src/Zend/zend_language_parser.y"
6670
480
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PLACEHOLDER_ARG); }
6671
480
#line 6672 "/src/php-src/Zend/zend_language_parser.c"
6672
480
    break;
6673
6674
290
  case 314:
6675
290
#line 946 "/src/php-src/Zend/zend_language_parser.y"
6676
290
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMED_ARG, (yyvsp[-2].ast), zend_ast_create(ZEND_AST_PLACEHOLDER_ARG)); }
6677
290
#line 6678 "/src/php-src/Zend/zend_language_parser.c"
6678
290
    break;
6679
6680
2.19k
  case 315:
6681
2.19k
#line 948 "/src/php-src/Zend/zend_language_parser.y"
6682
2.19k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
6683
2.19k
#line 6684 "/src/php-src/Zend/zend_language_parser.c"
6684
2.19k
    break;
6685
6686
375k
  case 316:
6687
375k
#line 952 "/src/php-src/Zend/zend_language_parser.y"
6688
375k
                     { (yyval.ast) = (yyvsp[0].ast); }
6689
375k
#line 6690 "/src/php-src/Zend/zend_language_parser.c"
6690
375k
    break;
6691
6692
19.1k
  case 317:
6693
19.1k
#line 953 "/src/php-src/Zend/zend_language_parser.y"
6694
19.1k
                                 { (yyval.ast) = (yyvsp[0].ast); }
6695
19.1k
#line 6696 "/src/php-src/Zend/zend_language_parser.c"
6696
19.1k
    break;
6697
6698
1.03k
  case 318:
6699
1.03k
#line 957 "/src/php-src/Zend/zend_language_parser.y"
6700
1.03k
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6701
1.03k
#line 6702 "/src/php-src/Zend/zend_language_parser.c"
6702
1.03k
    break;
6703
6704
1.28k
  case 319:
6705
1.28k
#line 958 "/src/php-src/Zend/zend_language_parser.y"
6706
1.28k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6707
1.28k
#line 6708 "/src/php-src/Zend/zend_language_parser.c"
6708
1.28k
    break;
6709
6710
2.31k
  case 320:
6711
2.31k
#line 963 "/src/php-src/Zend/zend_language_parser.y"
6712
2.31k
                { (yyval.ast) = zend_ast_create(ZEND_AST_GLOBAL, zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast))); }
6713
2.31k
#line 6714 "/src/php-src/Zend/zend_language_parser.c"
6714
2.31k
    break;
6715
6716
461
  case 321:
6717
461
#line 968 "/src/php-src/Zend/zend_language_parser.y"
6718
461
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6719
461
#line 6720 "/src/php-src/Zend/zend_language_parser.c"
6720
461
    break;
6721
6722
1.34k
  case 322:
6723
1.34k
#line 969 "/src/php-src/Zend/zend_language_parser.y"
6724
1.34k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6725
1.34k
#line 6726 "/src/php-src/Zend/zend_language_parser.c"
6726
1.34k
    break;
6727
6728
791
  case 323:
6729
791
#line 973 "/src/php-src/Zend/zend_language_parser.y"
6730
791
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[0].ast), NULL); }
6731
791
#line 6732 "/src/php-src/Zend/zend_language_parser.c"
6732
791
    break;
6733
6734
1.01k
  case 324:
6735
1.01k
#line 974 "/src/php-src/Zend/zend_language_parser.y"
6736
1.01k
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6737
1.01k
#line 6738 "/src/php-src/Zend/zend_language_parser.c"
6738
1.01k
    break;
6739
6740
68.3k
  case 325:
6741
68.3k
#line 979 "/src/php-src/Zend/zend_language_parser.y"
6742
68.3k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6743
68.3k
#line 6744 "/src/php-src/Zend/zend_language_parser.c"
6744
68.3k
    break;
6745
6746
53.0k
  case 326:
6747
53.0k
#line 981 "/src/php-src/Zend/zend_language_parser.y"
6748
53.0k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
6749
53.0k
#line 6750 "/src/php-src/Zend/zend_language_parser.c"
6750
53.0k
    break;
6751
6752
18.7k
  case 327:
6753
18.7k
#line 987 "/src/php-src/Zend/zend_language_parser.y"
6754
18.7k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_GROUP, (yyvsp[-2].ast), (yyvsp[-1].ast), NULL);
6755
18.7k
        (yyval.ast)->attr = (yyvsp[-3].num); }
6756
18.7k
#line 6757 "/src/php-src/Zend/zend_language_parser.c"
6757
18.7k
    break;
6758
6759
4.97k
  case 328:
6760
4.97k
#line 990 "/src/php-src/Zend/zend_language_parser.y"
6761
4.97k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_GROUP, (yyvsp[-1].ast), zend_ast_create_list(1, ZEND_AST_PROP_DECL, (yyvsp[0].ast)), NULL);
6762
4.97k
        (yyval.ast)->attr = (yyvsp[-2].num); }
6763
4.97k
#line 6764 "/src/php-src/Zend/zend_language_parser.c"
6764
4.97k
    break;
6765
6766
4.80k
  case 329:
6767
4.80k
#line 993 "/src/php-src/Zend/zend_language_parser.y"
6768
4.80k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, NULL);
6769
4.80k
        (yyval.ast)->attr = (yyvsp[-3].num); }
6770
4.80k
#line 6771 "/src/php-src/Zend/zend_language_parser.c"
6771
4.80k
    break;
6772
6773
1.22k
  case 330:
6774
1.22k
#line 996 "/src/php-src/Zend/zend_language_parser.y"
6775
1.22k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, (yyvsp[-2].ast));
6776
1.22k
        (yyval.ast)->attr = (yyvsp[-4].num); }
6777
1.22k
#line 6778 "/src/php-src/Zend/zend_language_parser.c"
6778
1.22k
    break;
6779
6780
32.8k
  case 331:
6781
32.8k
#line 1000 "/src/php-src/Zend/zend_language_parser.y"
6782
32.8k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_METHOD, (yyvsp[-9].num) | (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-10].num), (yyvsp[-7].str),
6783
32.8k
          zend_ast_get_str((yyvsp[-8].ast)), (yyvsp[-5].ast), NULL, (yyvsp[-1].ast), (yyvsp[-3].ast), NULL); CG(extra_fn_flags) = (yyvsp[-2].num); }
6784
32.8k
#line 6785 "/src/php-src/Zend/zend_language_parser.c"
6785
32.8k
    break;
6786
6787
2.76k
  case 332:
6788
2.76k
#line 1002 "/src/php-src/Zend/zend_language_parser.y"
6789
2.76k
                          { (yyval.ast) = (yyvsp[0].ast); }
6790
2.76k
#line 6791 "/src/php-src/Zend/zend_language_parser.c"
6791
2.76k
    break;
6792
6793
63.5k
  case 333:
6794
63.5k
#line 1006 "/src/php-src/Zend/zend_language_parser.y"
6795
63.5k
                                           { (yyval.ast) = (yyvsp[0].ast); }
6796
63.5k
#line 6797 "/src/php-src/Zend/zend_language_parser.c"
6797
63.5k
    break;
6798
6799
1.71k
  case 334:
6800
1.71k
#line 1007 "/src/php-src/Zend/zend_language_parser.y"
6801
1.71k
                                                      { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6802
1.71k
#line 6803 "/src/php-src/Zend/zend_language_parser.c"
6803
1.71k
    break;
6804
6805
3.09k
  case 335:
6806
3.09k
#line 1009 "/src/php-src/Zend/zend_language_parser.y"
6807
3.09k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_TRAIT, (yyvsp[-1].ast), (yyvsp[0].ast)); }
6808
3.09k
#line 6809 "/src/php-src/Zend/zend_language_parser.c"
6809
3.09k
    break;
6810
6811
7.25k
  case 336:
6812
7.25k
#line 1013 "/src/php-src/Zend/zend_language_parser.y"
6813
7.25k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
6814
7.25k
#line 6815 "/src/php-src/Zend/zend_language_parser.c"
6815
7.25k
    break;
6816
6817
2.61k
  case 337:
6818
2.61k
#line 1014 "/src/php-src/Zend/zend_language_parser.y"
6819
2.61k
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6820
2.61k
#line 6821 "/src/php-src/Zend/zend_language_parser.c"
6821
2.61k
    break;
6822
6823
1.77k
  case 338:
6824
1.77k
#line 1018 "/src/php-src/Zend/zend_language_parser.y"
6825
1.77k
                                                                                { (yyval.ast) = NULL; }
6826
1.77k
#line 6827 "/src/php-src/Zend/zend_language_parser.c"
6827
1.77k
    break;
6828
6829
602
  case 339:
6830
602
#line 1019 "/src/php-src/Zend/zend_language_parser.y"
6831
602
                                                                        { (yyval.ast) = NULL; }
6832
602
#line 6833 "/src/php-src/Zend/zend_language_parser.c"
6833
602
    break;
6834
6835
721
  case 340:
6836
721
#line 1020 "/src/php-src/Zend/zend_language_parser.y"
6837
721
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6838
721
#line 6839 "/src/php-src/Zend/zend_language_parser.c"
6839
721
    break;
6840
6841
749
  case 341:
6842
749
#line 1025 "/src/php-src/Zend/zend_language_parser.y"
6843
749
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_TRAIT_ADAPTATIONS, (yyvsp[0].ast)); }
6844
749
#line 6845 "/src/php-src/Zend/zend_language_parser.c"
6845
749
    break;
6846
6847
3.16k
  case 342:
6848
3.16k
#line 1027 "/src/php-src/Zend/zend_language_parser.y"
6849
3.16k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6850
3.16k
#line 6851 "/src/php-src/Zend/zend_language_parser.c"
6851
3.16k
    break;
6852
6853
910
  case 343:
6854
910
#line 1031 "/src/php-src/Zend/zend_language_parser.y"
6855
910
                                        { (yyval.ast) = (yyvsp[-1].ast); }
6856
910
#line 6857 "/src/php-src/Zend/zend_language_parser.c"
6857
910
    break;
6858
6859
3.00k
  case 344:
6860
3.00k
#line 1032 "/src/php-src/Zend/zend_language_parser.y"
6861
3.00k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6862
3.00k
#line 6863 "/src/php-src/Zend/zend_language_parser.c"
6863
3.00k
    break;
6864
6865
913
  case 345:
6866
913
#line 1037 "/src/php-src/Zend/zend_language_parser.y"
6867
913
                { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_PRECEDENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6868
913
#line 6869 "/src/php-src/Zend/zend_language_parser.c"
6869
913
    break;
6870
6871
1.27k
  case 346:
6872
1.27k
#line 1042 "/src/php-src/Zend/zend_language_parser.y"
6873
1.27k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6874
1.27k
#line 6875 "/src/php-src/Zend/zend_language_parser.c"
6875
1.27k
    break;
6876
6877
914
  case 347:
6878
914
#line 1044 "/src/php-src/Zend/zend_language_parser.y"
6879
914
                        { zval zv;
6880
914
        if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
6881
914
        (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), zend_ast_create_zval(&zv)); }
6882
0
#line 6883 "/src/php-src/Zend/zend_language_parser.c"
6883
0
    break;
6884
6885
136
  case 348:
6886
136
#line 1048 "/src/php-src/Zend/zend_language_parser.y"
6887
136
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[-1].num));
6888
136
        (yyval.ast) = zend_ast_create_ex(ZEND_AST_TRAIT_ALIAS, modifiers, (yyvsp[-3].ast), (yyvsp[0].ast));
6889
        /* identifier nonterminal can cause allocations, so we need to free the node */
6890
136
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6891
136
#line 6892 "/src/php-src/Zend/zend_language_parser.c"
6892
136
    break;
6893
6894
693
  case 349:
6895
693
#line 1053 "/src/php-src/Zend/zend_language_parser.y"
6896
693
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].num));
6897
693
        (yyval.ast) = zend_ast_create_ex(ZEND_AST_TRAIT_ALIAS, modifiers, (yyvsp[-2].ast), NULL);
6898
        /* identifier nonterminal can cause allocations, so we need to free the node */
6899
693
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6900
688
#line 6901 "/src/php-src/Zend/zend_language_parser.c"
6901
688
    break;
6902
6903
1.84k
  case 350:
6904
1.84k
#line 1061 "/src/php-src/Zend/zend_language_parser.y"
6905
1.84k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_METHOD_REFERENCE, NULL, (yyvsp[0].ast)); }
6906
1.84k
#line 6907 "/src/php-src/Zend/zend_language_parser.c"
6907
1.84k
    break;
6908
6909
1.19k
  case 351:
6910
1.19k
#line 1062 "/src/php-src/Zend/zend_language_parser.y"
6911
1.19k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6912
1.19k
#line 6913 "/src/php-src/Zend/zend_language_parser.c"
6913
1.19k
    break;
6914
6915
2.11k
  case 352:
6916
2.11k
#line 1067 "/src/php-src/Zend/zend_language_parser.y"
6917
2.11k
                { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_METHOD_REFERENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6918
2.11k
#line 6919 "/src/php-src/Zend/zend_language_parser.c"
6919
2.11k
    break;
6920
6921
1.56k
  case 353:
6922
1.56k
#line 1071 "/src/php-src/Zend/zend_language_parser.y"
6923
1.56k
                                                        { (yyval.ast) = NULL; }
6924
1.56k
#line 6925 "/src/php-src/Zend/zend_language_parser.c"
6925
1.56k
    break;
6926
6927
31.2k
  case 354:
6928
31.2k
#line 1072 "/src/php-src/Zend/zend_language_parser.y"
6929
31.2k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6930
31.2k
#line 6931 "/src/php-src/Zend/zend_language_parser.c"
6931
31.2k
    break;
6932
6933
23.4k
  case 355:
6934
23.4k
#line 1077 "/src/php-src/Zend/zend_language_parser.y"
6935
23.4k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY, (yyvsp[0].ast));
6936
23.4k
        if (!(yyval.num)) { YYERROR; } }
6937
23.3k
#line 6938 "/src/php-src/Zend/zend_language_parser.c"
6938
23.3k
    break;
6939
6940
23.3k
  case 356:
6941
725
#line 1080 "/src/php-src/Zend/zend_language_parser.y"
6942
725
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6943
725
#line 6944 "/src/php-src/Zend/zend_language_parser.c"
6944
725
    break;
6945
6946
9.65k
  case 357:
6947
9.65k
#line 1085 "/src/php-src/Zend/zend_language_parser.y"
6948
9.65k
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6949
9.65k
#line 6950 "/src/php-src/Zend/zend_language_parser.c"
6950
9.65k
    break;
6951
6952
23.7k
  case 358:
6953
23.7k
#line 1087 "/src/php-src/Zend/zend_language_parser.y"
6954
23.7k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].ast));
6955
23.7k
        if (!(yyval.num)) { YYERROR; }
6956
23.7k
        if (!((yyval.num) & ZEND_ACC_PPP_MASK)) { (yyval.num) |= ZEND_ACC_PUBLIC; } }
6957
0
#line 6958 "/src/php-src/Zend/zend_language_parser.c"
6958
0
    break;
6959
6960
3.64k
  case 359:
6961
3.64k
#line 1094 "/src/php-src/Zend/zend_language_parser.y"
6962
3.64k
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6963
3.64k
#line 6964 "/src/php-src/Zend/zend_language_parser.c"
6964
3.64k
    break;
6965
6966
2.49k
  case 360:
6967
2.49k
#line 1096 "/src/php-src/Zend/zend_language_parser.y"
6968
2.49k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CONSTANT, (yyvsp[0].ast));
6969
2.49k
        if (!(yyval.num)) { YYERROR; }
6970
2.48k
        if (!((yyval.num) & ZEND_ACC_PPP_MASK)) { (yyval.num) |= ZEND_ACC_PUBLIC; } }
6971
0
#line 6972 "/src/php-src/Zend/zend_language_parser.c"
6972
0
    break;
6973
6974
51.5k
  case 361:
6975
51.5k
#line 1103 "/src/php-src/Zend/zend_language_parser.y"
6976
51.5k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MODIFIER_LIST, zend_ast_create_zval_from_long((yyvsp[0].num))); }
6977
51.5k
#line 6978 "/src/php-src/Zend/zend_language_parser.c"
6978
51.5k
    break;
6979
6980
8.38k
  case 362:
6981
8.38k
#line 1105 "/src/php-src/Zend/zend_language_parser.y"
6982
8.38k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), zend_ast_create_zval_from_long((yyvsp[0].num))); }
6983
8.38k
#line 6984 "/src/php-src/Zend/zend_language_parser.c"
6984
8.38k
    break;
6985
6986
39.7k
  case 363:
6987
39.7k
#line 1109 "/src/php-src/Zend/zend_language_parser.y"
6988
39.7k
                                                        { (yyval.num) = T_PUBLIC; }
6989
39.7k
#line 6990 "/src/php-src/Zend/zend_language_parser.c"
6990
39.7k
    break;
6991
6992
2.27k
  case 364:
6993
2.27k
#line 1110 "/src/php-src/Zend/zend_language_parser.y"
6994
2.27k
                                                        { (yyval.num) = T_PROTECTED; }
6995
2.27k
#line 6996 "/src/php-src/Zend/zend_language_parser.c"
6996
2.27k
    break;
6997
6998
5.41k
  case 365:
6999
5.41k
#line 1111 "/src/php-src/Zend/zend_language_parser.y"
7000
5.41k
                                                        { (yyval.num) = T_PRIVATE; }
7001
5.41k
#line 7002 "/src/php-src/Zend/zend_language_parser.c"
7002
5.41k
    break;
7003
7004
359
  case 366:
7005
359
#line 1112 "/src/php-src/Zend/zend_language_parser.y"
7006
359
                                                { (yyval.num) = T_PUBLIC_SET; }
7007
359
#line 7008 "/src/php-src/Zend/zend_language_parser.c"
7008
359
    break;
7009
7010
273
  case 367:
7011
273
#line 1113 "/src/php-src/Zend/zend_language_parser.y"
7012
273
                                                { (yyval.num) = T_PROTECTED_SET; }
7013
273
#line 7014 "/src/php-src/Zend/zend_language_parser.c"
7014
273
    break;
7015
7016
376
  case 368:
7017
376
#line 1114 "/src/php-src/Zend/zend_language_parser.y"
7018
376
                                                { (yyval.num) = T_PRIVATE_SET; }
7019
376
#line 7020 "/src/php-src/Zend/zend_language_parser.c"
7020
376
    break;
7021
7022
8.88k
  case 369:
7023
8.88k
#line 1115 "/src/php-src/Zend/zend_language_parser.y"
7024
8.88k
                                                        { (yyval.num) = T_STATIC; }
7025
8.88k
#line 7026 "/src/php-src/Zend/zend_language_parser.c"
7026
8.88k
    break;
7027
7028
1.03k
  case 370:
7029
1.03k
#line 1116 "/src/php-src/Zend/zend_language_parser.y"
7030
1.03k
                                                        { (yyval.num) = T_ABSTRACT; }
7031
1.03k
#line 7032 "/src/php-src/Zend/zend_language_parser.c"
7032
1.03k
    break;
7033
7034
1.46k
  case 371:
7035
1.46k
#line 1117 "/src/php-src/Zend/zend_language_parser.y"
7036
1.46k
                                                        { (yyval.num) = T_FINAL; }
7037
1.46k
#line 7038 "/src/php-src/Zend/zend_language_parser.c"
7038
1.46k
    break;
7039
7040
927
  case 372:
7041
927
#line 1118 "/src/php-src/Zend/zend_language_parser.y"
7042
927
                                                        { (yyval.num) = T_READONLY; }
7043
927
#line 7044 "/src/php-src/Zend/zend_language_parser.c"
7044
927
    break;
7045
7046
528
  case 373:
7047
528
#line 1122 "/src/php-src/Zend/zend_language_parser.y"
7048
528
                                           { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7049
528
#line 7050 "/src/php-src/Zend/zend_language_parser.c"
7050
528
    break;
7051
7052
18.7k
  case 374:
7053
18.7k
#line 1123 "/src/php-src/Zend/zend_language_parser.y"
7054
18.7k
                         { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PROP_DECL, (yyvsp[0].ast)); }
7055
18.7k
#line 7056 "/src/php-src/Zend/zend_language_parser.c"
7056
18.7k
    break;
7057
7058
11.3k
  case 375:
7059
11.3k
#line 1128 "/src/php-src/Zend/zend_language_parser.y"
7060
11.3k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_ELEM, (yyvsp[-1].ast), NULL, ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL), NULL); }
7061
11.3k
#line 7062 "/src/php-src/Zend/zend_language_parser.c"
7062
11.3k
    break;
7063
7064
7.95k
  case 376:
7065
7.95k
#line 1130 "/src/php-src/Zend/zend_language_parser.y"
7066
7.95k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_ELEM, (yyvsp[-3].ast), (yyvsp[-1].ast), ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL), NULL); }
7067
7.95k
#line 7068 "/src/php-src/Zend/zend_language_parser.c"
7068
7.95k
    break;
7069
7070
4.50k
  case 377:
7071
4.50k
#line 1135 "/src/php-src/Zend/zend_language_parser.y"
7072
4.50k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_ELEM, (yyvsp[-4].ast), NULL, ((yyvsp[-3].str) ? zend_ast_create_zval_from_str((yyvsp[-3].str)) : NULL), (yyvsp[-1].ast)); }
7073
4.50k
#line 7074 "/src/php-src/Zend/zend_language_parser.c"
7074
4.50k
    break;
7075
7076
467
  case 378:
7077
467
#line 1137 "/src/php-src/Zend/zend_language_parser.y"
7078
467
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_ELEM, (yyvsp[-6].ast), (yyvsp[-4].ast), ((yyvsp[-3].str) ? zend_ast_create_zval_from_str((yyvsp[-3].str)) : NULL), (yyvsp[-1].ast)); }
7079
467
#line 7080 "/src/php-src/Zend/zend_language_parser.c"
7080
467
    break;
7081
7082
5.85k
  case 379:
7083
5.85k
#line 1141 "/src/php-src/Zend/zend_language_parser.y"
7084
5.85k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
7085
5.85k
#line 7086 "/src/php-src/Zend/zend_language_parser.c"
7086
5.85k
    break;
7087
7088
11.5k
  case 380:
7089
11.5k
#line 1142 "/src/php-src/Zend/zend_language_parser.y"
7090
11.5k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
7091
11.5k
#line 7092 "/src/php-src/Zend/zend_language_parser.c"
7092
11.5k
    break;
7093
7094
262
  case 381:
7095
262
#line 1143 "/src/php-src/Zend/zend_language_parser.y"
7096
262
                                                            {
7097
262
      (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)));
7098
262
    }
7099
262
#line 7100 "/src/php-src/Zend/zend_language_parser.c"
7100
262
    break;
7101
7102
51.6k
  case 382:
7103
51.6k
#line 1149 "/src/php-src/Zend/zend_language_parser.y"
7104
51.6k
                        { (yyval.ast) = NULL; }
7105
51.6k
#line 7106 "/src/php-src/Zend/zend_language_parser.c"
7106
51.6k
    break;
7107
7108
327
  case 383:
7109
327
#line 1150 "/src/php-src/Zend/zend_language_parser.y"
7110
327
                                                { (yyval.ast) = (yyvsp[-1].ast); }
7111
327
#line 7112 "/src/php-src/Zend/zend_language_parser.c"
7112
327
    break;
7113
7114
11.7k
  case 384:
7115
11.7k
#line 1154 "/src/php-src/Zend/zend_language_parser.y"
7116
11.7k
                       { (yyval.num) = 0; }
7117
11.7k
#line 7118 "/src/php-src/Zend/zend_language_parser.c"
7118
11.7k
    break;
7119
7120
535
  case 385:
7121
535
#line 1155 "/src/php-src/Zend/zend_language_parser.y"
7122
535
                                           {
7123
535
      (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY_HOOK, (yyvsp[0].ast));
7124
535
      if (!(yyval.num)) { YYERROR; }
7125
535
    }
7126
513
#line 7127 "/src/php-src/Zend/zend_language_parser.c"
7127
513
    break;
7128
7129
12.2k
  case 386:
7130
12.2k
#line 1163 "/src/php-src/Zend/zend_language_parser.y"
7131
12.2k
                                   { (yyval.num) = CG(zend_lineno); }
7132
12.2k
#line 7133 "/src/php-src/Zend/zend_language_parser.c"
7133
12.2k
    break;
7134
7135
11.7k
  case 387:
7136
11.7k
#line 1164 "/src/php-src/Zend/zend_language_parser.y"
7137
11.7k
                                                                                           {
7138
11.7k
      (yyval.ast) = zend_ast_create_decl(
7139
11.7k
        ZEND_AST_PROPERTY_HOOK, (yyvsp[-8].num) | (yyvsp[-7].num) | (yyvsp[0].num), (yyvsp[-4].num), (yyvsp[-5].str), zend_ast_get_str((yyvsp[-6].ast)),
7140
11.7k
        (yyvsp[-3].ast), NULL, (yyvsp[-1].ast), NULL, NULL);
7141
11.7k
      CG(extra_fn_flags) = (yyvsp[-2].num);
7142
11.7k
    }
7143
11.7k
#line 7144 "/src/php-src/Zend/zend_language_parser.c"
7144
11.7k
    break;
7145
7146
5.41k
  case 388:
7147
5.41k
#line 1173 "/src/php-src/Zend/zend_language_parser.y"
7148
5.41k
                    { (yyval.ast) = NULL; }
7149
5.41k
#line 7150 "/src/php-src/Zend/zend_language_parser.c"
7150
5.41k
    break;
7151
7152
3.14k
  case 389:
7153
3.14k
#line 1174 "/src/php-src/Zend/zend_language_parser.y"
7154
3.14k
                                             { (yyval.ast) = (yyvsp[-1].ast); }
7155
3.14k
#line 7156 "/src/php-src/Zend/zend_language_parser.c"
7156
3.14k
    break;
7157
7158
3.23k
  case 390:
7159
3.23k
#line 1176 "/src/php-src/Zend/zend_language_parser.y"
7160
3.23k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROPERTY_HOOK_SHORT_BODY, (yyvsp[-1].ast)); }
7161
3.23k
#line 7162 "/src/php-src/Zend/zend_language_parser.c"
7162
3.23k
    break;
7163
7164
11.5k
  case 391:
7165
11.5k
#line 1180 "/src/php-src/Zend/zend_language_parser.y"
7166
11.5k
                       { (yyval.ast) = NULL; }
7167
11.5k
#line 7168 "/src/php-src/Zend/zend_language_parser.c"
7168
11.5k
    break;
7169
7170
430
  case 392:
7171
430
#line 1181 "/src/php-src/Zend/zend_language_parser.y"
7172
430
                                       { (yyval.ast) = (yyvsp[-1].ast); }
7173
430
#line 7174 "/src/php-src/Zend/zend_language_parser.c"
7174
430
    break;
7175
7176
171
  case 393:
7177
171
#line 1185 "/src/php-src/Zend/zend_language_parser.y"
7178
171
                                                      { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7179
171
#line 7180 "/src/php-src/Zend/zend_language_parser.c"
7180
171
    break;
7181
7182
6.04k
  case 394:
7183
6.04k
#line 1186 "/src/php-src/Zend/zend_language_parser.y"
7184
6.04k
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLASS_CONST_DECL, (yyvsp[0].ast)); }
7185
6.04k
#line 7186 "/src/php-src/Zend/zend_language_parser.c"
7186
6.04k
    break;
7187
7188
5.00k
  case 395:
7189
5.00k
#line 1190 "/src/php-src/Zend/zend_language_parser.y"
7190
5.00k
                                                     { (yyval.ast) = zend_ast_create(ZEND_AST_CONST_ELEM, (yyvsp[-3].ast), (yyvsp[-1].ast), ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL)); }
7191
5.00k
#line 7192 "/src/php-src/Zend/zend_language_parser.c"
7192
5.00k
    break;
7193
7194
1.21k
  case 396:
7195
1.21k
#line 1191 "/src/php-src/Zend/zend_language_parser.y"
7196
1.21k
                                                          {
7197
1.21k
      zval zv;
7198
1.21k
      if (zend_lex_tstring(&zv, (yyvsp[-3].ident)) == FAILURE) { YYABORT; }
7199
1.21k
      (yyval.ast) = zend_ast_create(ZEND_AST_CONST_ELEM, zend_ast_create_zval(&zv), (yyvsp[-1].ast), ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL));
7200
1.21k
    }
7201
0
#line 7202 "/src/php-src/Zend/zend_language_parser.c"
7202
0
    break;
7203
7204
9.75k
  case 397:
7205
9.75k
#line 1199 "/src/php-src/Zend/zend_language_parser.y"
7206
9.75k
                                             { (yyval.ast) = zend_ast_create(ZEND_AST_CONST_ELEM, (yyvsp[-3].ast), (yyvsp[-1].ast), ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL)); }
7207
9.75k
#line 7208 "/src/php-src/Zend/zend_language_parser.c"
7208
9.75k
    break;
7209
7210
17.5k
  case 398:
7211
17.5k
#line 1203 "/src/php-src/Zend/zend_language_parser.y"
7212
17.5k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7213
17.5k
#line 7214 "/src/php-src/Zend/zend_language_parser.c"
7214
17.5k
    break;
7215
7216
52.1k
  case 399:
7217
52.1k
#line 1204 "/src/php-src/Zend/zend_language_parser.y"
7218
52.1k
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
7219
52.1k
#line 7220 "/src/php-src/Zend/zend_language_parser.c"
7220
52.1k
    break;
7221
7222
69.6k
  case 400:
7223
69.6k
#line 1207 "/src/php-src/Zend/zend_language_parser.y"
7224
69.6k
             { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
7225
69.6k
#line 7226 "/src/php-src/Zend/zend_language_parser.c"
7226
69.6k
    break;
7227
7228
2.08k
  case 401:
7229
2.08k
#line 1211 "/src/php-src/Zend/zend_language_parser.y"
7230
2.08k
                                        { (yyval.ast) = NULL; }
7231
2.08k
#line 7232 "/src/php-src/Zend/zend_language_parser.c"
7232
2.08k
    break;
7233
7234
769
  case 402:
7235
769
#line 1212 "/src/php-src/Zend/zend_language_parser.y"
7236
769
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7237
769
#line 7238 "/src/php-src/Zend/zend_language_parser.c"
7238
769
    break;
7239
7240
10.4k
  case 403:
7241
10.4k
#line 1213 "/src/php-src/Zend/zend_language_parser.y"
7242
10.4k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7243
10.4k
#line 7244 "/src/php-src/Zend/zend_language_parser.c"
7244
10.4k
    break;
7245
7246
7.81k
  case 404:
7247
7.81k
#line 1217 "/src/php-src/Zend/zend_language_parser.y"
7248
7.81k
                                        { (yyval.ast) = NULL; }
7249
7.81k
#line 7250 "/src/php-src/Zend/zend_language_parser.c"
7250
7.81k
    break;
7251
7252
18.5k
  case 405:
7253
18.5k
#line 1218 "/src/php-src/Zend/zend_language_parser.y"
7254
18.5k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7255
18.5k
#line 7256 "/src/php-src/Zend/zend_language_parser.c"
7256
18.5k
    break;
7257
7258
1.86k
  case 406:
7259
1.86k
#line 1222 "/src/php-src/Zend/zend_language_parser.y"
7260
1.86k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7261
1.86k
#line 7262 "/src/php-src/Zend/zend_language_parser.c"
7262
1.86k
    break;
7263
7264
95
  case 407:
7265
95
#line 1223 "/src/php-src/Zend/zend_language_parser.y"
7266
95
                                                         { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7267
95
#line 7268 "/src/php-src/Zend/zend_language_parser.c"
7268
95
    break;
7269
7270
91
  case 408:
7271
91
#line 1224 "/src/php-src/Zend/zend_language_parser.y"
7272
91
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7273
91
#line 7274 "/src/php-src/Zend/zend_language_parser.c"
7274
91
    break;
7275
7276
19.3k
  case 409:
7277
19.3k
#line 1225 "/src/php-src/Zend/zend_language_parser.y"
7278
19.3k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7279
19.3k
#line 7280 "/src/php-src/Zend/zend_language_parser.c"
7280
19.3k
    break;
7281
7282
2.13k
  case 410:
7283
2.13k
#line 1229 "/src/php-src/Zend/zend_language_parser.y"
7284
2.13k
                                                           { (yyval.num) = CG(zend_lineno); }
7285
2.13k
#line 7286 "/src/php-src/Zend/zend_language_parser.c"
7286
2.13k
    break;
7287
7288
2.01k
  case 411:
7289
2.01k
#line 1230 "/src/php-src/Zend/zend_language_parser.y"
7290
2.01k
                                                                                             {
7291
2.01k
      zend_ast *decl = zend_ast_create_decl(
7292
2.01k
        ZEND_AST_CLASS, ZEND_ACC_ANON_CLASS | (yyvsp[-9].num), (yyvsp[-7].num), (yyvsp[-3].str), NULL,
7293
2.01k
        (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL);
7294
2.01k
      (yyval.ast) = zend_ast_create(ZEND_AST_NEW, decl, (yyvsp[-6].ast));
7295
2.01k
    }
7296
2.01k
#line 7297 "/src/php-src/Zend/zend_language_parser.c"
7297
2.01k
    break;
7298
7299
42.9k
  case 412:
7300
42.9k
#line 1240 "/src/php-src/Zend/zend_language_parser.y"
7301
42.9k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7302
42.9k
#line 7303 "/src/php-src/Zend/zend_language_parser.c"
7303
42.9k
    break;
7304
7305
1.91k
  case 413:
7306
1.91k
#line 1242 "/src/php-src/Zend/zend_language_parser.y"
7307
1.91k
                        { (yyval.ast) = (yyvsp[0].ast); }
7308
1.91k
#line 7309 "/src/php-src/Zend/zend_language_parser.c"
7309
1.91k
    break;
7310
7311
105
  case 414:
7312
105
#line 1244 "/src/php-src/Zend/zend_language_parser.y"
7313
105
                        { zend_ast_with_attributes((yyvsp[0].ast)->child[0], (yyvsp[-1].ast)); (yyval.ast) = (yyvsp[0].ast); }
7314
105
#line 7315 "/src/php-src/Zend/zend_language_parser.c"
7315
105
    break;
7316
7317
18.2k
  case 415:
7318
18.2k
#line 1249 "/src/php-src/Zend/zend_language_parser.y"
7319
18.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[0].ast), zend_ast_create_list(0, ZEND_AST_ARG_LIST)); }
7320
18.2k
#line 7321 "/src/php-src/Zend/zend_language_parser.c"
7321
18.2k
    break;
7322
7323
561k
  case 416:
7324
561k
#line 1254 "/src/php-src/Zend/zend_language_parser.y"
7325
561k
                        { (yyval.ast) = (yyvsp[0].ast); }
7326
561k
#line 7327 "/src/php-src/Zend/zend_language_parser.c"
7327
561k
    break;
7328
7329
1.22k
  case 417:
7330
1.22k
#line 1256 "/src/php-src/Zend/zend_language_parser.y"
7331
1.22k
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_LIST; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7332
1.22k
#line 7333 "/src/php-src/Zend/zend_language_parser.c"
7333
1.22k
    break;
7334
7335
2.25k
  case 418:
7336
2.25k
#line 1258 "/src/php-src/Zend/zend_language_parser.y"
7337
2.25k
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7338
2.25k
#line 7339 "/src/php-src/Zend/zend_language_parser.c"
7339
2.25k
    break;
7340
7341
214k
  case 419:
7342
214k
#line 1260 "/src/php-src/Zend/zend_language_parser.y"
7343
214k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7344
214k
#line 7345 "/src/php-src/Zend/zend_language_parser.c"
7345
214k
    break;
7346
7347
6.37k
  case 420:
7348
6.37k
#line 1262 "/src/php-src/Zend/zend_language_parser.y"
7349
6.37k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_REF, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7350
6.37k
#line 7351 "/src/php-src/Zend/zend_language_parser.c"
7351
6.37k
    break;
7352
7353
527
  case 421:
7354
527
#line 1263 "/src/php-src/Zend/zend_language_parser.y"
7355
527
                                            {
7356
527
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_CLONE));
7357
527
      name->attr = ZEND_NAME_FQ;
7358
527
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7359
527
    }
7360
527
#line 7361 "/src/php-src/Zend/zend_language_parser.c"
7361
527
    break;
7362
7363
899
  case 422:
7364
899
#line 1268 "/src/php-src/Zend/zend_language_parser.y"
7365
899
                             {
7366
899
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_CLONE));
7367
899
      name->attr = ZEND_NAME_FQ;
7368
899
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, zend_ast_create_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)));
7369
899
    }
7370
899
#line 7371 "/src/php-src/Zend/zend_language_parser.c"
7371
899
    break;
7372
7373
3.51k
  case 423:
7374
3.51k
#line 1274 "/src/php-src/Zend/zend_language_parser.y"
7375
3.51k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7376
3.51k
#line 7377 "/src/php-src/Zend/zend_language_parser.c"
7377
3.51k
    break;
7378
7379
979
  case 424:
7380
979
#line 1276 "/src/php-src/Zend/zend_language_parser.y"
7381
979
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7382
979
#line 7383 "/src/php-src/Zend/zend_language_parser.c"
7383
979
    break;
7384
7385
3.43k
  case 425:
7386
3.43k
#line 1278 "/src/php-src/Zend/zend_language_parser.y"
7387
3.43k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7388
3.43k
#line 7389 "/src/php-src/Zend/zend_language_parser.c"
7389
3.43k
    break;
7390
7391
207
  case 426:
7392
207
#line 1280 "/src/php-src/Zend/zend_language_parser.y"
7393
207
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7394
207
#line 7395 "/src/php-src/Zend/zend_language_parser.c"
7395
207
    break;
7396
7397
1.47k
  case 427:
7398
1.47k
#line 1282 "/src/php-src/Zend/zend_language_parser.y"
7399
1.47k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7400
1.47k
#line 7401 "/src/php-src/Zend/zend_language_parser.c"
7401
1.47k
    break;
7402
7403
72.2k
  case 428:
7404
72.2k
#line 1284 "/src/php-src/Zend/zend_language_parser.y"
7405
72.2k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_CONCAT, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7406
72.2k
#line 7407 "/src/php-src/Zend/zend_language_parser.c"
7407
72.2k
    break;
7408
7409
902
  case 429:
7410
902
#line 1286 "/src/php-src/Zend/zend_language_parser.y"
7411
902
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7412
902
#line 7413 "/src/php-src/Zend/zend_language_parser.c"
7413
902
    break;
7414
7415
12.5k
  case 430:
7416
12.5k
#line 1288 "/src/php-src/Zend/zend_language_parser.y"
7417
12.5k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7418
12.5k
#line 7419 "/src/php-src/Zend/zend_language_parser.c"
7419
12.5k
    break;
7420
7421
438
  case 431:
7422
438
#line 1290 "/src/php-src/Zend/zend_language_parser.y"
7423
438
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7424
438
#line 7425 "/src/php-src/Zend/zend_language_parser.c"
7425
438
    break;
7426
7427
468
  case 432:
7428
468
#line 1292 "/src/php-src/Zend/zend_language_parser.y"
7429
468
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7430
468
#line 7431 "/src/php-src/Zend/zend_language_parser.c"
7431
468
    break;
7432
7433
375
  case 433:
7434
375
#line 1294 "/src/php-src/Zend/zend_language_parser.y"
7435
375
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7436
375
#line 7437 "/src/php-src/Zend/zend_language_parser.c"
7437
375
    break;
7438
7439
525
  case 434:
7440
525
#line 1296 "/src/php-src/Zend/zend_language_parser.y"
7441
525
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7442
525
#line 7443 "/src/php-src/Zend/zend_language_parser.c"
7443
525
    break;
7444
7445
7.21k
  case 435:
7446
7.21k
#line 1298 "/src/php-src/Zend/zend_language_parser.y"
7447
7.21k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7448
7.21k
#line 7449 "/src/php-src/Zend/zend_language_parser.c"
7449
7.21k
    break;
7450
7451
8.47k
  case 436:
7452
8.47k
#line 1299 "/src/php-src/Zend/zend_language_parser.y"
7453
8.47k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_INC, (yyvsp[-1].ast)); }
7454
8.47k
#line 7455 "/src/php-src/Zend/zend_language_parser.c"
7455
8.47k
    break;
7456
7457
2.57k
  case 437:
7458
2.57k
#line 1300 "/src/php-src/Zend/zend_language_parser.y"
7459
2.57k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_INC, (yyvsp[0].ast)); }
7460
2.57k
#line 7461 "/src/php-src/Zend/zend_language_parser.c"
7461
2.57k
    break;
7462
7463
2.95k
  case 438:
7464
2.95k
#line 1301 "/src/php-src/Zend/zend_language_parser.y"
7465
2.95k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_DEC, (yyvsp[-1].ast)); }
7466
2.95k
#line 7467 "/src/php-src/Zend/zend_language_parser.c"
7467
2.95k
    break;
7468
7469
1.71k
  case 439:
7470
1.71k
#line 1302 "/src/php-src/Zend/zend_language_parser.y"
7471
1.71k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_DEC, (yyvsp[0].ast)); }
7472
1.71k
#line 7473 "/src/php-src/Zend/zend_language_parser.c"
7473
1.71k
    break;
7474
7475
5.56k
  case 440:
7476
5.56k
#line 1304 "/src/php-src/Zend/zend_language_parser.y"
7477
5.56k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7478
5.56k
#line 7479 "/src/php-src/Zend/zend_language_parser.c"
7479
5.56k
    break;
7480
7481
4.75k
  case 441:
7482
4.75k
#line 1306 "/src/php-src/Zend/zend_language_parser.y"
7483
4.75k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7484
4.75k
#line 7485 "/src/php-src/Zend/zend_language_parser.c"
7485
4.75k
    break;
7486
7487
1.79k
  case 442:
7488
1.79k
#line 1308 "/src/php-src/Zend/zend_language_parser.y"
7489
1.79k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7490
1.79k
#line 7491 "/src/php-src/Zend/zend_language_parser.c"
7491
1.79k
    break;
7492
7493
2.90k
  case 443:
7494
2.90k
#line 1310 "/src/php-src/Zend/zend_language_parser.y"
7495
2.90k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7496
2.90k
#line 7497 "/src/php-src/Zend/zend_language_parser.c"
7497
2.90k
    break;
7498
7499
2.82k
  case 444:
7500
2.82k
#line 1312 "/src/php-src/Zend/zend_language_parser.y"
7501
2.82k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BOOL_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7502
2.82k
#line 7503 "/src/php-src/Zend/zend_language_parser.c"
7503
2.82k
    break;
7504
7505
23.1k
  case 445:
7506
23.1k
#line 1313 "/src/php-src/Zend/zend_language_parser.y"
7507
23.1k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7508
23.1k
#line 7509 "/src/php-src/Zend/zend_language_parser.c"
7509
23.1k
    break;
7510
7511
21.2k
  case 446:
7512
21.2k
#line 1314 "/src/php-src/Zend/zend_language_parser.y"
7513
21.2k
                                                                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7514
21.2k
#line 7515 "/src/php-src/Zend/zend_language_parser.c"
7515
21.2k
    break;
7516
7517
3.23k
  case 447:
7518
3.23k
#line 1315 "/src/php-src/Zend/zend_language_parser.y"
7519
3.23k
                                                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7520
3.23k
#line 7521 "/src/php-src/Zend/zend_language_parser.c"
7521
3.23k
    break;
7522
7523
12.3k
  case 448:
7524
12.3k
#line 1316 "/src/php-src/Zend/zend_language_parser.y"
7525
12.3k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7526
12.3k
#line 7527 "/src/php-src/Zend/zend_language_parser.c"
7527
12.3k
    break;
7528
7529
94.0k
  case 449:
7530
94.0k
#line 1317 "/src/php-src/Zend/zend_language_parser.y"
7531
94.0k
                                { (yyval.ast) = zend_ast_create_concat_op((yyvsp[-2].ast), (yyvsp[0].ast)); }
7532
94.0k
#line 7533 "/src/php-src/Zend/zend_language_parser.c"
7533
94.0k
    break;
7534
7535
43.0k
  case 450:
7536
43.0k
#line 1318 "/src/php-src/Zend/zend_language_parser.y"
7537
43.0k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7538
43.0k
#line 7539 "/src/php-src/Zend/zend_language_parser.c"
7539
43.0k
    break;
7540
7541
32.7k
  case 451:
7542
32.7k
#line 1319 "/src/php-src/Zend/zend_language_parser.y"
7543
32.7k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7544
32.7k
#line 7545 "/src/php-src/Zend/zend_language_parser.c"
7545
32.7k
    break;
7546
7547
16.0k
  case 452:
7548
16.0k
#line 1320 "/src/php-src/Zend/zend_language_parser.y"
7549
16.0k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7550
16.0k
#line 7551 "/src/php-src/Zend/zend_language_parser.c"
7551
16.0k
    break;
7552
7553
7.12k
  case 453:
7554
7.12k
#line 1321 "/src/php-src/Zend/zend_language_parser.y"
7555
7.12k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7556
7.12k
#line 7557 "/src/php-src/Zend/zend_language_parser.c"
7557
7.12k
    break;
7558
7559
17.8k
  case 454:
7560
17.8k
#line 1322 "/src/php-src/Zend/zend_language_parser.y"
7561
17.8k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7562
17.8k
#line 7563 "/src/php-src/Zend/zend_language_parser.c"
7563
17.8k
    break;
7564
7565
14.4k
  case 455:
7566
14.4k
#line 1323 "/src/php-src/Zend/zend_language_parser.y"
7567
14.4k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7568
14.4k
#line 7569 "/src/php-src/Zend/zend_language_parser.c"
7569
14.4k
    break;
7570
7571
5.74k
  case 456:
7572
5.74k
#line 1324 "/src/php-src/Zend/zend_language_parser.y"
7573
5.74k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7574
5.74k
#line 7575 "/src/php-src/Zend/zend_language_parser.c"
7575
5.74k
    break;
7576
7577
4.54k
  case 457:
7578
4.54k
#line 1325 "/src/php-src/Zend/zend_language_parser.y"
7579
4.54k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7580
4.54k
#line 7581 "/src/php-src/Zend/zend_language_parser.c"
7581
4.54k
    break;
7582
7583
16.8k
  case 458:
7584
16.8k
#line 1326 "/src/php-src/Zend/zend_language_parser.y"
7585
16.8k
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_PLUS, (yyvsp[0].ast)); }
7586
16.8k
#line 7587 "/src/php-src/Zend/zend_language_parser.c"
7587
16.8k
    break;
7588
7589
32.4k
  case 459:
7590
32.4k
#line 1327 "/src/php-src/Zend/zend_language_parser.y"
7591
32.4k
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_MINUS, (yyvsp[0].ast)); }
7592
32.4k
#line 7593 "/src/php-src/Zend/zend_language_parser.c"
7593
32.4k
    break;
7594
7595
38.0k
  case 460:
7596
38.0k
#line 1328 "/src/php-src/Zend/zend_language_parser.y"
7597
38.0k
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BOOL_NOT, (yyvsp[0].ast)); }
7598
38.0k
#line 7599 "/src/php-src/Zend/zend_language_parser.c"
7599
38.0k
    break;
7600
7601
29.8k
  case 461:
7602
29.8k
#line 1329 "/src/php-src/Zend/zend_language_parser.y"
7603
29.8k
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BW_NOT, (yyvsp[0].ast)); }
7604
29.8k
#line 7605 "/src/php-src/Zend/zend_language_parser.c"
7605
29.8k
    break;
7606
7607
6.14k
  case 462:
7608
6.14k
#line 1331 "/src/php-src/Zend/zend_language_parser.y"
7609
6.14k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7610
6.14k
#line 7611 "/src/php-src/Zend/zend_language_parser.c"
7611
6.14k
    break;
7612
7613
2.29k
  case 463:
7614
2.29k
#line 1333 "/src/php-src/Zend/zend_language_parser.y"
7615
2.29k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7616
2.29k
#line 7617 "/src/php-src/Zend/zend_language_parser.c"
7617
2.29k
    break;
7618
7619
18.9k
  case 464:
7620
18.9k
#line 1335 "/src/php-src/Zend/zend_language_parser.y"
7621
18.9k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7622
18.9k
#line 7623 "/src/php-src/Zend/zend_language_parser.c"
7623
18.9k
    break;
7624
7625
6.78k
  case 465:
7626
6.78k
#line 1337 "/src/php-src/Zend/zend_language_parser.y"
7627
6.78k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7628
6.78k
#line 7629 "/src/php-src/Zend/zend_language_parser.c"
7629
6.78k
    break;
7630
7631
4.99k
  case 466:
7632
4.99k
#line 1339 "/src/php-src/Zend/zend_language_parser.y"
7633
4.99k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PIPE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7634
4.99k
#line 7635 "/src/php-src/Zend/zend_language_parser.c"
7635
4.99k
    break;
7636
7637
19.7k
  case 467:
7638
19.7k
#line 1341 "/src/php-src/Zend/zend_language_parser.y"
7639
19.7k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7640
19.7k
#line 7641 "/src/php-src/Zend/zend_language_parser.c"
7641
19.7k
    break;
7642
7643
3.77k
  case 468:
7644
3.77k
#line 1343 "/src/php-src/Zend/zend_language_parser.y"
7645
3.77k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER_OR_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7646
3.77k
#line 7647 "/src/php-src/Zend/zend_language_parser.c"
7647
3.77k
    break;
7648
7649
14.9k
  case 469:
7650
14.9k
#line 1345 "/src/php-src/Zend/zend_language_parser.y"
7651
14.9k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7652
14.9k
#line 7653 "/src/php-src/Zend/zend_language_parser.c"
7653
14.9k
    break;
7654
7655
3.19k
  case 470:
7656
3.19k
#line 1347 "/src/php-src/Zend/zend_language_parser.y"
7657
3.19k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7658
3.19k
#line 7659 "/src/php-src/Zend/zend_language_parser.c"
7659
3.19k
    break;
7660
7661
426
  case 471:
7662
426
#line 1349 "/src/php-src/Zend/zend_language_parser.y"
7663
426
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_SPACESHIP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7664
426
#line 7665 "/src/php-src/Zend/zend_language_parser.c"
7665
426
    break;
7666
7667
869
  case 472:
7668
869
#line 1351 "/src/php-src/Zend/zend_language_parser.y"
7669
869
                        { (yyval.ast) = zend_ast_create(ZEND_AST_INSTANCEOF, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7670
869
#line 7671 "/src/php-src/Zend/zend_language_parser.c"
7671
869
    break;
7672
7673
22.0k
  case 473:
7674
22.0k
#line 1352 "/src/php-src/Zend/zend_language_parser.y"
7675
22.0k
                             {
7676
22.0k
      (yyval.ast) = (yyvsp[-1].ast);
7677
22.0k
      if ((yyval.ast)->kind == ZEND_AST_CONDITIONAL) (yyval.ast)->attr = ZEND_PARENTHESIZED_CONDITIONAL;
7678
22.0k
      if ((yyval.ast)->kind == ZEND_AST_ARROW_FUNC) (yyval.ast)->attr = ZEND_PARENTHESIZED_ARROW_FUNC;
7679
22.0k
    }
7680
22.0k
#line 7681 "/src/php-src/Zend/zend_language_parser.c"
7681
22.0k
    break;
7682
7683
44.2k
  case 474:
7684
44.2k
#line 1357 "/src/php-src/Zend/zend_language_parser.y"
7685
44.2k
                                    { (yyval.ast) = (yyvsp[0].ast); }
7686
44.2k
#line 7687 "/src/php-src/Zend/zend_language_parser.c"
7687
44.2k
    break;
7688
7689
18.2k
  case 475:
7690
18.2k
#line 1358 "/src/php-src/Zend/zend_language_parser.y"
7691
18.2k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7692
18.2k
#line 7693 "/src/php-src/Zend/zend_language_parser.c"
7693
18.2k
    break;
7694
7695
5.87k
  case 476:
7696
5.87k
#line 1360 "/src/php-src/Zend/zend_language_parser.y"
7697
5.87k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
7698
5.87k
#line 7699 "/src/php-src/Zend/zend_language_parser.c"
7699
5.87k
    break;
7700
7701
3.46k
  case 477:
7702
3.46k
#line 1362 "/src/php-src/Zend/zend_language_parser.y"
7703
3.46k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-3].ast), NULL, (yyvsp[0].ast)); }
7704
3.46k
#line 7705 "/src/php-src/Zend/zend_language_parser.c"
7705
3.46k
    break;
7706
7707
16.1k
  case 478:
7708
16.1k
#line 1364 "/src/php-src/Zend/zend_language_parser.y"
7709
16.1k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7710
16.1k
#line 7711 "/src/php-src/Zend/zend_language_parser.c"
7711
16.1k
    break;
7712
7713
14.1k
  case 479:
7714
14.1k
#line 1365 "/src/php-src/Zend/zend_language_parser.y"
7715
14.1k
                                           { (yyval.ast) = (yyvsp[0].ast); }
7716
14.1k
#line 7717 "/src/php-src/Zend/zend_language_parser.c"
7717
14.1k
    break;
7718
7719
1.02k
  case 480:
7720
1.02k
#line 1366 "/src/php-src/Zend/zend_language_parser.y"
7721
1.02k
                                        { (yyval.ast) = zend_ast_create_cast(IS_LONG, (yyvsp[0].ast)); }
7722
1.02k
#line 7723 "/src/php-src/Zend/zend_language_parser.c"
7723
1.02k
    break;
7724
7725
1.19k
  case 481:
7726
1.19k
#line 1367 "/src/php-src/Zend/zend_language_parser.y"
7727
1.19k
                                        { (yyval.ast) = zend_ast_create_cast(IS_DOUBLE, (yyvsp[0].ast)); }
7728
1.19k
#line 7729 "/src/php-src/Zend/zend_language_parser.c"
7729
1.19k
    break;
7730
7731
2.39k
  case 482:
7732
2.39k
#line 1368 "/src/php-src/Zend/zend_language_parser.y"
7733
2.39k
                                        { (yyval.ast) = zend_ast_create_cast(IS_STRING, (yyvsp[0].ast)); }
7734
2.39k
#line 7735 "/src/php-src/Zend/zend_language_parser.c"
7735
2.39k
    break;
7736
7737
988
  case 483:
7738
988
#line 1369 "/src/php-src/Zend/zend_language_parser.y"
7739
988
                                        { (yyval.ast) = zend_ast_create_cast(IS_ARRAY, (yyvsp[0].ast)); }
7740
988
#line 7741 "/src/php-src/Zend/zend_language_parser.c"
7741
988
    break;
7742
7743
599
  case 484:
7744
599
#line 1370 "/src/php-src/Zend/zend_language_parser.y"
7745
599
                                        { (yyval.ast) = zend_ast_create_cast(IS_OBJECT, (yyvsp[0].ast)); }
7746
599
#line 7747 "/src/php-src/Zend/zend_language_parser.c"
7747
599
    break;
7748
7749
564
  case 485:
7750
564
#line 1371 "/src/php-src/Zend/zend_language_parser.y"
7751
564
                                        { (yyval.ast) = zend_ast_create_cast(_IS_BOOL, (yyvsp[0].ast)); }
7752
564
#line 7753 "/src/php-src/Zend/zend_language_parser.c"
7753
564
    break;
7754
7755
405
  case 486:
7756
405
#line 1372 "/src/php-src/Zend/zend_language_parser.y"
7757
405
                                        { (yyval.ast) = zend_ast_create_cast(IS_NULL, (yyvsp[0].ast)); }
7758
405
#line 7759 "/src/php-src/Zend/zend_language_parser.c"
7759
405
    break;
7760
7761
3.64k
  case 487:
7762
3.64k
#line 1373 "/src/php-src/Zend/zend_language_parser.y"
7763
3.64k
                                      {
7764
3.64k
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_EXIT));
7765
3.64k
      name->attr = ZEND_NAME_FQ;
7766
3.64k
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7767
3.64k
    }
7768
3.64k
#line 7769 "/src/php-src/Zend/zend_language_parser.c"
7769
3.64k
    break;
7770
7771
493k
  case 488:
7772
493k
#line 1378 "/src/php-src/Zend/zend_language_parser.y"
7773
493k
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_SILENCE, (yyvsp[0].ast)); }
7774
493k
#line 7775 "/src/php-src/Zend/zend_language_parser.c"
7775
493k
    break;
7776
7777
1.35M
  case 489:
7778
1.35M
#line 1379 "/src/php-src/Zend/zend_language_parser.y"
7779
1.35M
                       { (yyval.ast) = (yyvsp[0].ast); }
7780
1.35M
#line 7781 "/src/php-src/Zend/zend_language_parser.c"
7781
1.35M
    break;
7782
7783
3.44k
  case 490:
7784
3.44k
#line 1380 "/src/php-src/Zend/zend_language_parser.y"
7785
3.44k
                                       { (yyval.ast) = zend_ast_create(ZEND_AST_SHELL_EXEC, (yyvsp[-1].ast)); }
7786
3.44k
#line 7787 "/src/php-src/Zend/zend_language_parser.c"
7787
3.44k
    break;
7788
7789
4.03k
  case 491:
7790
4.03k
#line 1381 "/src/php-src/Zend/zend_language_parser.y"
7791
4.03k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_PRINT, (yyvsp[0].ast)); }
7792
4.03k
#line 7793 "/src/php-src/Zend/zend_language_parser.c"
7793
4.03k
    break;
7794
7795
1.87k
  case 492:
7796
1.87k
#line 1382 "/src/php-src/Zend/zend_language_parser.y"
7797
1.87k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, NULL, NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7798
1.87k
#line 7799 "/src/php-src/Zend/zend_language_parser.c"
7799
1.87k
    break;
7800
7801
5.13k
  case 493:
7802
5.13k
#line 1383 "/src/php-src/Zend/zend_language_parser.y"
7803
5.13k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7804
5.13k
#line 7805 "/src/php-src/Zend/zend_language_parser.c"
7805
5.13k
    break;
7806
7807
814
  case 494:
7808
814
#line 1384 "/src/php-src/Zend/zend_language_parser.y"
7809
814
                                                 { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), (yyvsp[-2].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7810
814
#line 7811 "/src/php-src/Zend/zend_language_parser.c"
7811
814
    break;
7812
7813
1.11k
  case 495:
7814
1.11k
#line 1385 "/src/php-src/Zend/zend_language_parser.y"
7815
1.11k
                                  { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD_FROM, (yyvsp[0].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7816
1.11k
#line 7817 "/src/php-src/Zend/zend_language_parser.c"
7817
1.11k
    break;
7818
7819
3.41k
  case 496:
7820
3.41k
#line 1386 "/src/php-src/Zend/zend_language_parser.y"
7821
3.41k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_THROW, (yyvsp[0].ast)); }
7822
3.41k
#line 7823 "/src/php-src/Zend/zend_language_parser.c"
7823
3.41k
    break;
7824
7825
24.0k
  case 497:
7826
24.0k
#line 1387 "/src/php-src/Zend/zend_language_parser.y"
7827
24.0k
                                { (yyval.ast) = (yyvsp[0].ast); }
7828
24.0k
#line 7829 "/src/php-src/Zend/zend_language_parser.c"
7829
24.0k
    break;
7830
7831
4.72k
  case 498:
7832
4.72k
#line 1388 "/src/php-src/Zend/zend_language_parser.y"
7833
4.72k
                                           { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
7834
4.72k
#line 7835 "/src/php-src/Zend/zend_language_parser.c"
7835
4.72k
    break;
7836
7837
303
  case 499:
7838
303
#line 1389 "/src/php-src/Zend/zend_language_parser.y"
7839
303
                                         { (yyval.ast) = (yyvsp[0].ast); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7840
303
#line 7841 "/src/php-src/Zend/zend_language_parser.c"
7841
303
    break;
7842
7843
38
  case 500:
7844
38
#line 1391 "/src/php-src/Zend/zend_language_parser.y"
7845
38
                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-2].ast)); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7846
38
#line 7847 "/src/php-src/Zend/zend_language_parser.c"
7847
38
    break;
7848
7849
2.63k
  case 501:
7850
2.63k
#line 1392 "/src/php-src/Zend/zend_language_parser.y"
7851
2.63k
                      { (yyval.ast) = (yyvsp[0].ast); }
7852
2.63k
#line 7853 "/src/php-src/Zend/zend_language_parser.c"
7853
2.63k
    break;
7854
7855
17.1k
  case 502:
7856
17.1k
#line 1399 "/src/php-src/Zend/zend_language_parser.y"
7857
17.1k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLOSURE, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-10].str),
7858
17.1k
          NULL,
7859
17.1k
          (yyvsp[-8].ast), (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-5].ast), NULL); CG(extra_fn_flags) = (yyvsp[-4].num); }
7860
17.1k
#line 7861 "/src/php-src/Zend/zend_language_parser.c"
7861
17.1k
    break;
7862
7863
11.9k
  case 503:
7864
11.9k
#line 1404 "/src/php-src/Zend/zend_language_parser.y"
7865
11.9k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_ARROW_FUNC, (yyvsp[-10].num) | (yyvsp[0].num), (yyvsp[-11].num), (yyvsp[-9].str),
7866
11.9k
          NULL, (yyvsp[-7].ast), NULL, (yyvsp[-1].ast), (yyvsp[-5].ast), NULL);
7867
11.9k
          CG(extra_fn_flags) = (yyvsp[-3].num); }
7868
11.9k
#line 7869 "/src/php-src/Zend/zend_language_parser.c"
7869
11.9k
    break;
7870
7871
13.0k
  case 504:
7872
13.0k
#line 1410 "/src/php-src/Zend/zend_language_parser.y"
7873
13.0k
             { (yyval.num) = CG(zend_lineno); }
7874
13.0k
#line 7875 "/src/php-src/Zend/zend_language_parser.c"
7875
13.0k
    break;
7876
7877
70.9k
  case 505:
7878
70.9k
#line 1414 "/src/php-src/Zend/zend_language_parser.y"
7879
70.9k
                   { (yyval.num) = CG(zend_lineno); }
7880
70.9k
#line 7881 "/src/php-src/Zend/zend_language_parser.c"
7881
70.9k
    break;
7882
7883
260k
  case 506:
7884
260k
#line 1418 "/src/php-src/Zend/zend_language_parser.y"
7885
260k
               { (yyval.str) = CG(doc_comment); CG(doc_comment) = NULL; }
7886
260k
#line 7887 "/src/php-src/Zend/zend_language_parser.c"
7887
260k
    break;
7888
7889
187k
  case 507:
7890
187k
#line 1422 "/src/php-src/Zend/zend_language_parser.y"
7891
187k
                                         { (yyval.num) = CG(extra_fn_flags); CG(extra_fn_flags) = 0; }
7892
187k
#line 7893 "/src/php-src/Zend/zend_language_parser.c"
7893
187k
    break;
7894
7895
12.8k
  case 508:
7896
12.8k
#line 1426 "/src/php-src/Zend/zend_language_parser.y"
7897
12.8k
               { (yyval.ptr) = LANG_SCNG(yy_text); }
7898
12.8k
#line 7899 "/src/php-src/Zend/zend_language_parser.c"
7899
12.8k
    break;
7900
7901
91.5k
  case 509:
7902
91.5k
#line 1430 "/src/php-src/Zend/zend_language_parser.y"
7903
91.5k
                        { (yyval.num) = 0; }
7904
91.5k
#line 7905 "/src/php-src/Zend/zend_language_parser.c"
7905
91.5k
    break;
7906
7907
4.78k
  case 510:
7908
4.78k
#line 1431 "/src/php-src/Zend/zend_language_parser.y"
7909
4.78k
                                { (yyval.num) = ZEND_ACC_RETURN_REFERENCE; }
7910
4.78k
#line 7911 "/src/php-src/Zend/zend_language_parser.c"
7911
4.78k
    break;
7912
7913
16.0k
  case 511:
7914
16.0k
#line 1435 "/src/php-src/Zend/zend_language_parser.y"
7915
16.0k
                       { (yyval.ast) = NULL; }
7916
16.0k
#line 7917 "/src/php-src/Zend/zend_language_parser.c"
7917
16.0k
    break;
7918
7919
1.97k
  case 512:
7920
1.97k
#line 1436 "/src/php-src/Zend/zend_language_parser.y"
7921
1.97k
                                                              { (yyval.ast) = (yyvsp[-2].ast); }
7922
1.97k
#line 7923 "/src/php-src/Zend/zend_language_parser.c"
7923
1.97k
    break;
7924
7925
2.17k
  case 513:
7926
2.17k
#line 1440 "/src/php-src/Zend/zend_language_parser.y"
7927
2.17k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7928
2.17k
#line 7929 "/src/php-src/Zend/zend_language_parser.c"
7929
2.17k
    break;
7930
7931
1.98k
  case 514:
7932
1.98k
#line 1441 "/src/php-src/Zend/zend_language_parser.y"
7933
1.98k
                            { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLOSURE_USES, (yyvsp[0].ast)); }
7934
1.98k
#line 7935 "/src/php-src/Zend/zend_language_parser.c"
7935
1.98k
    break;
7936
7937
2.59k
  case 515:
7938
2.59k
#line 1445 "/src/php-src/Zend/zend_language_parser.y"
7939
2.59k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7940
2.59k
#line 7941 "/src/php-src/Zend/zend_language_parser.c"
7941
2.59k
    break;
7942
7943
1.55k
  case 516:
7944
1.55k
#line 1446 "/src/php-src/Zend/zend_language_parser.y"
7945
1.55k
                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_BIND_REF; }
7946
1.55k
#line 7947 "/src/php-src/Zend/zend_language_parser.c"
7947
1.55k
    break;
7948
7949
221k
  case 517:
7950
221k
#line 1451 "/src/php-src/Zend/zend_language_parser.y"
7951
221k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7952
221k
#line 7953 "/src/php-src/Zend/zend_language_parser.c"
7953
221k
    break;
7954
7955
73
  case 518:
7956
73
#line 1452 "/src/php-src/Zend/zend_language_parser.y"
7957
73
                                         {
7958
73
      zval zv;
7959
73
      if (zend_lex_tstring(&zv, (yyvsp[-1].ident)) == FAILURE) { YYABORT; }
7960
73
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, zend_ast_create_zval(&zv), (yyvsp[0].ast));
7961
73
    }
7962
0
#line 7963 "/src/php-src/Zend/zend_language_parser.c"
7963
0
    break;
7964
7965
9.66k
  case 519:
7966
9.66k
#line 1458 "/src/php-src/Zend/zend_language_parser.y"
7967
9.66k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
7968
9.66k
#line 7969 "/src/php-src/Zend/zend_language_parser.c"
7969
9.66k
    break;
7970
7971
3.91k
  case 520:
7972
3.91k
#line 1460 "/src/php-src/Zend/zend_language_parser.y"
7973
3.91k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
7974
3.91k
#line 7975 "/src/php-src/Zend/zend_language_parser.c"
7975
3.91k
    break;
7976
7977
16.3k
  case 521:
7978
16.3k
#line 1461 "/src/php-src/Zend/zend_language_parser.y"
7979
16.3k
                              { (yyval.num) = CG(zend_lineno); }
7980
16.3k
#line 7981 "/src/php-src/Zend/zend_language_parser.c"
7981
16.3k
    break;
7982
7983
15.0k
  case 522:
7984
15.0k
#line 1461 "/src/php-src/Zend/zend_language_parser.y"
7985
15.0k
                                                                           {
7986
15.0k
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-2].ast), (yyvsp[0].ast));
7987
15.0k
      (yyval.ast)->lineno = (yyvsp[-1].num);
7988
15.0k
    }
7989
15.0k
#line 7990 "/src/php-src/Zend/zend_language_parser.c"
7990
15.0k
    break;
7991
7992
1.08k
  case 523:
7993
1.08k
#line 1469 "/src/php-src/Zend/zend_language_parser.y"
7994
1.08k
                        { zval zv; ZVAL_INTERNED_STR(&zv, ZSTR_KNOWN(ZEND_STR_STATIC));
7995
1.08k
        (yyval.ast) = zend_ast_create_zval_ex(&zv, ZEND_NAME_NOT_FQ); }
7996
1.08k
#line 7997 "/src/php-src/Zend/zend_language_parser.c"
7997
1.08k
    break;
7998
7999
194k
  case 524:
8000
194k
#line 1471 "/src/php-src/Zend/zend_language_parser.y"
8001
194k
                     { (yyval.ast) = (yyvsp[0].ast); }
8002
194k
#line 8003 "/src/php-src/Zend/zend_language_parser.c"
8003
194k
    break;
8004
8005
60.1k
  case 525:
8006
60.1k
#line 1475 "/src/php-src/Zend/zend_language_parser.y"
8007
60.1k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8008
60.1k
#line 8009 "/src/php-src/Zend/zend_language_parser.c"
8009
60.1k
    break;
8010
8011
1.73k
  case 526:
8012
1.73k
#line 1476 "/src/php-src/Zend/zend_language_parser.y"
8013
1.73k
                                { (yyval.ast) = (yyvsp[0].ast); }
8014
1.73k
#line 8015 "/src/php-src/Zend/zend_language_parser.c"
8015
1.73k
    break;
8016
8017
456
  case 527:
8018
456
#line 1477 "/src/php-src/Zend/zend_language_parser.y"
8019
456
                                { (yyval.ast) = (yyvsp[-1].ast); }
8020
456
#line 8021 "/src/php-src/Zend/zend_language_parser.c"
8021
456
    break;
8022
8023
1.54k
  case 528:
8024
1.54k
#line 1482 "/src/php-src/Zend/zend_language_parser.y"
8025
1.54k
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
8026
1.54k
#line 8027 "/src/php-src/Zend/zend_language_parser.c"
8027
1.54k
    break;
8028
8029
1.15k
  case 529:
8030
1.15k
#line 1483 "/src/php-src/Zend/zend_language_parser.y"
8031
1.15k
                                          { (yyval.ast) = (yyvsp[0].ast); }
8032
1.15k
#line 8033 "/src/php-src/Zend/zend_language_parser.c"
8033
1.15k
    break;
8034
8035
1.03k
  case 530:
8036
1.03k
#line 1484 "/src/php-src/Zend/zend_language_parser.y"
8037
1.03k
                            { (yyval.ast) = (yyvsp[0].ast); }
8038
1.03k
#line 8039 "/src/php-src/Zend/zend_language_parser.c"
8039
1.03k
    break;
8040
8041
4.99k
  case 531:
8042
4.99k
#line 1489 "/src/php-src/Zend/zend_language_parser.y"
8043
4.99k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_ARG_LIST); }
8044
4.99k
#line 8045 "/src/php-src/Zend/zend_language_parser.c"
8045
4.99k
    break;
8046
8047
782
  case 532:
8048
782
#line 1490 "/src/php-src/Zend/zend_language_parser.y"
8049
782
                              { (yyval.ast) = (yyvsp[0].ast); }
8050
782
#line 8051 "/src/php-src/Zend/zend_language_parser.c"
8051
782
    break;
8052
8053
7.32k
  case 533:
8054
7.32k
#line 1495 "/src/php-src/Zend/zend_language_parser.y"
8055
7.32k
                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LONG; }
8056
7.32k
#line 8057 "/src/php-src/Zend/zend_language_parser.c"
8057
7.32k
    break;
8058
8059
93.5k
  case 534:
8060
93.5k
#line 1496 "/src/php-src/Zend/zend_language_parser.y"
8061
93.5k
                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
8062
93.5k
#line 8063 "/src/php-src/Zend/zend_language_parser.c"
8063
93.5k
    break;
8064
8065
320k
  case 535:
8066
320k
#line 1497 "/src/php-src/Zend/zend_language_parser.y"
8067
320k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8068
320k
#line 8069 "/src/php-src/Zend/zend_language_parser.c"
8069
320k
    break;
8070
8071
33.4k
  case 536:
8072
33.4k
#line 1498 "/src/php-src/Zend/zend_language_parser.y"
8073
33.4k
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
8074
33.4k
#line 8075 "/src/php-src/Zend/zend_language_parser.c"
8075
33.4k
    break;
8076
8077
503k
  case 537:
8078
503k
#line 1502 "/src/php-src/Zend/zend_language_parser.y"
8079
503k
                                { (yyval.ast) = (yyvsp[0].ast); }
8080
503k
#line 8081 "/src/php-src/Zend/zend_language_parser.c"
8081
503k
    break;
8082
8083
52.8k
  case 538:
8084
52.8k
#line 1503 "/src/php-src/Zend/zend_language_parser.y"
8085
52.8k
                                { (yyval.ast) = (yyvsp[0].ast); }
8086
52.8k
#line 8087 "/src/php-src/Zend/zend_language_parser.c"
8087
52.8k
    break;
8088
8089
2.58k
  case 539:
8090
2.58k
#line 1504 "/src/php-src/Zend/zend_language_parser.y"
8091
2.58k
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
8092
2.58k
#line 8093 "/src/php-src/Zend/zend_language_parser.c"
8093
2.58k
    break;
8094
8095
151
  case 540:
8096
151
#line 1506 "/src/php-src/Zend/zend_language_parser.y"
8097
151
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
8098
151
#line 8099 "/src/php-src/Zend/zend_language_parser.c"
8099
151
    break;
8100
8101
3.76k
  case 541:
8102
3.76k
#line 1507 "/src/php-src/Zend/zend_language_parser.y"
8103
3.76k
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
8104
3.76k
#line 8105 "/src/php-src/Zend/zend_language_parser.c"
8105
3.76k
    break;
8106
8107
446k
  case 542:
8108
446k
#line 1508 "/src/php-src/Zend/zend_language_parser.y"
8109
446k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8110
446k
#line 8111 "/src/php-src/Zend/zend_language_parser.c"
8111
446k
    break;
8112
8113
322k
  case 543:
8114
322k
#line 1509 "/src/php-src/Zend/zend_language_parser.y"
8115
322k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8116
322k
#line 8117 "/src/php-src/Zend/zend_language_parser.c"
8117
322k
    break;
8118
8119
24.3k
  case 544:
8120
24.3k
#line 1510 "/src/php-src/Zend/zend_language_parser.y"
8121
24.3k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8122
24.3k
#line 8123 "/src/php-src/Zend/zend_language_parser.c"
8123
24.3k
    break;
8124
8125
314k
  case 545:
8126
314k
#line 1514 "/src/php-src/Zend/zend_language_parser.y"
8127
314k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONST, (yyvsp[0].ast)); }
8128
314k
#line 8129 "/src/php-src/Zend/zend_language_parser.c"
8129
314k
    break;
8130
8131
381
  case 546:
8132
381
#line 1515 "/src/php-src/Zend/zend_language_parser.y"
8133
381
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_LINE); }
8134
381
#line 8135 "/src/php-src/Zend/zend_language_parser.c"
8135
381
    break;
8136
8137
4.17k
  case 547:
8138
4.17k
#line 1516 "/src/php-src/Zend/zend_language_parser.y"
8139
4.17k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FILE); }
8140
4.17k
#line 8141 "/src/php-src/Zend/zend_language_parser.c"
8141
4.17k
    break;
8142
8143
927
  case 548:
8144
927
#line 1517 "/src/php-src/Zend/zend_language_parser.y"
8145
927
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_DIR); }
8146
927
#line 8147 "/src/php-src/Zend/zend_language_parser.c"
8147
927
    break;
8148
8149
890
  case 549:
8150
890
#line 1518 "/src/php-src/Zend/zend_language_parser.y"
8151
890
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_TRAIT_C); }
8152
890
#line 8153 "/src/php-src/Zend/zend_language_parser.c"
8153
890
    break;
8154
8155
4.90k
  case 550:
8156
4.90k
#line 1519 "/src/php-src/Zend/zend_language_parser.y"
8157
4.90k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_METHOD_C); }
8158
4.90k
#line 8159 "/src/php-src/Zend/zend_language_parser.c"
8159
4.90k
    break;
8160
8161
1.53k
  case 551:
8162
1.53k
#line 1520 "/src/php-src/Zend/zend_language_parser.y"
8163
1.53k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FUNC_C); }
8164
1.53k
#line 8165 "/src/php-src/Zend/zend_language_parser.c"
8165
1.53k
    break;
8166
8167
696
  case 552:
8168
696
#line 1521 "/src/php-src/Zend/zend_language_parser.y"
8169
696
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_PROPERTY_C); }
8170
696
#line 8171 "/src/php-src/Zend/zend_language_parser.c"
8171
696
    break;
8172
8173
683
  case 553:
8174
683
#line 1522 "/src/php-src/Zend/zend_language_parser.y"
8175
683
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_NS_C); }
8176
683
#line 8177 "/src/php-src/Zend/zend_language_parser.c"
8177
683
    break;
8178
8179
3.52k
  case 554:
8180
3.52k
#line 1523 "/src/php-src/Zend/zend_language_parser.y"
8181
3.52k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_CLASS_C); }
8182
3.52k
#line 8183 "/src/php-src/Zend/zend_language_parser.c"
8183
3.52k
    break;
8184
8185
20.5k
  case 555:
8186
20.5k
#line 1528 "/src/php-src/Zend/zend_language_parser.y"
8187
20.5k
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
8188
20.5k
#line 8189 "/src/php-src/Zend/zend_language_parser.c"
8189
20.5k
    break;
8190
8191
15.1k
  case 556:
8192
15.1k
#line 1530 "/src/php-src/Zend/zend_language_parser.y"
8193
15.1k
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
8194
15.1k
#line 8195 "/src/php-src/Zend/zend_language_parser.c"
8195
15.1k
    break;
8196
8197
1.22k
  case 557:
8198
1.22k
#line 1532 "/src/php-src/Zend/zend_language_parser.y"
8199
1.22k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
8200
1.22k
#line 8201 "/src/php-src/Zend/zend_language_parser.c"
8201
1.22k
    break;
8202
8203
1.39k
  case 558:
8204
1.39k
#line 1534 "/src/php-src/Zend/zend_language_parser.y"
8205
1.39k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
8206
1.39k
#line 8207 "/src/php-src/Zend/zend_language_parser.c"
8207
1.39k
    break;
8208
8209
13.9k
  case 559:
8210
13.9k
#line 1538 "/src/php-src/Zend/zend_language_parser.y"
8211
13.9k
                        { (yyval.ast) = NULL; }
8212
13.9k
#line 8213 "/src/php-src/Zend/zend_language_parser.c"
8213
13.9k
    break;
8214
8215
96.6k
  case 560:
8216
96.6k
#line 1539 "/src/php-src/Zend/zend_language_parser.y"
8217
96.6k
                                { (yyval.ast) = (yyvsp[0].ast); }
8218
96.6k
#line 8219 "/src/php-src/Zend/zend_language_parser.c"
8219
96.6k
    break;
8220
8221
23.8k
  case 561:
8222
23.8k
#line 1543 "/src/php-src/Zend/zend_language_parser.y"
8223
23.8k
                                      { (yyval.ast) = (yyvsp[0].ast); }
8224
23.8k
#line 8225 "/src/php-src/Zend/zend_language_parser.c"
8225
23.8k
    break;
8226
8227
181k
  case 562:
8228
181k
#line 1547 "/src/php-src/Zend/zend_language_parser.y"
8229
181k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8230
181k
#line 8231 "/src/php-src/Zend/zend_language_parser.c"
8231
181k
    break;
8232
8233
3.48k
  case 563:
8234
3.48k
#line 1548 "/src/php-src/Zend/zend_language_parser.y"
8235
3.48k
                             {
8236
3.48k
      (yyval.ast) = (yyvsp[-1].ast);
8237
3.48k
      if ((yyval.ast)->kind == ZEND_AST_STATIC_PROP) (yyval.ast)->attr = ZEND_PARENTHESIZED_STATIC_PROP;
8238
3.48k
    }
8239
3.48k
#line 8240 "/src/php-src/Zend/zend_language_parser.c"
8240
3.48k
    break;
8241
8242
7.29k
  case 564:
8243
7.29k
#line 1552 "/src/php-src/Zend/zend_language_parser.y"
8244
7.29k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8245
7.29k
#line 8246 "/src/php-src/Zend/zend_language_parser.c"
8246
7.29k
    break;
8247
8248
13.9k
  case 565:
8249
13.9k
#line 1553 "/src/php-src/Zend/zend_language_parser.y"
8250
13.9k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8251
13.9k
#line 8252 "/src/php-src/Zend/zend_language_parser.c"
8252
13.9k
    break;
8253
8254
488
  case 566:
8255
488
#line 1554 "/src/php-src/Zend/zend_language_parser.y"
8256
488
                                                { (yyval.ast) = (yyvsp[0].ast); }
8257
488
#line 8258 "/src/php-src/Zend/zend_language_parser.c"
8258
488
    break;
8259
8260
183k
  case 567:
8261
183k
#line 1558 "/src/php-src/Zend/zend_language_parser.y"
8262
183k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8263
183k
#line 8264 "/src/php-src/Zend/zend_language_parser.c"
8264
183k
    break;
8265
8266
9.08k
  case 568:
8267
9.08k
#line 1559 "/src/php-src/Zend/zend_language_parser.y"
8268
9.08k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8269
9.08k
#line 8270 "/src/php-src/Zend/zend_language_parser.c"
8270
9.08k
    break;
8271
8272
13.2k
  case 569:
8273
13.2k
#line 1563 "/src/php-src/Zend/zend_language_parser.y"
8274
13.2k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8275
13.2k
#line 8276 "/src/php-src/Zend/zend_language_parser.c"
8276
13.2k
    break;
8277
8278
1.81k
  case 570:
8279
1.81k
#line 1564 "/src/php-src/Zend/zend_language_parser.y"
8280
1.81k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
8281
1.81k
#line 8282 "/src/php-src/Zend/zend_language_parser.c"
8282
1.81k
    break;
8283
8284
1.16k
  case 571:
8285
1.16k
#line 1565 "/src/php-src/Zend/zend_language_parser.y"
8286
1.16k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8287
1.16k
#line 8288 "/src/php-src/Zend/zend_language_parser.c"
8288
1.16k
    break;
8289
8290
199
  case 572:
8291
199
#line 1566 "/src/php-src/Zend/zend_language_parser.y"
8292
199
                                                { (yyval.ast) = (yyvsp[0].ast); }
8293
199
#line 8294 "/src/php-src/Zend/zend_language_parser.c"
8294
199
    break;
8295
8296
682k
  case 573:
8297
682k
#line 1571 "/src/php-src/Zend/zend_language_parser.y"
8298
682k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8299
682k
#line 8300 "/src/php-src/Zend/zend_language_parser.c"
8300
682k
    break;
8301
8302
88.5k
  case 574:
8303
88.5k
#line 1573 "/src/php-src/Zend/zend_language_parser.y"
8304
88.5k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8305
88.5k
#line 8306 "/src/php-src/Zend/zend_language_parser.c"
8306
88.5k
    break;
8307
8308
46.2k
  case 575:
8309
46.2k
#line 1575 "/src/php-src/Zend/zend_language_parser.y"
8310
46.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8311
46.2k
#line 8312 "/src/php-src/Zend/zend_language_parser.c"
8312
46.2k
    break;
8313
8314
3.33k
  case 576:
8315
3.33k
#line 1577 "/src/php-src/Zend/zend_language_parser.y"
8316
3.33k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8317
3.33k
#line 8318 "/src/php-src/Zend/zend_language_parser.c"
8318
3.33k
    break;
8319
8320
250k
  case 577:
8321
250k
#line 1578 "/src/php-src/Zend/zend_language_parser.y"
8322
250k
                              { (yyval.ast) = (yyvsp[0].ast); }
8323
250k
#line 8324 "/src/php-src/Zend/zend_language_parser.c"
8324
250k
    break;
8325
8326
1.05M
  case 578:
8327
1.05M
#line 1583 "/src/php-src/Zend/zend_language_parser.y"
8328
1.05M
                        { (yyval.ast) = (yyvsp[0].ast); }
8329
1.05M
#line 8330 "/src/php-src/Zend/zend_language_parser.c"
8330
1.05M
    break;
8331
8332
13.8k
  case 579:
8333
13.8k
#line 1585 "/src/php-src/Zend/zend_language_parser.y"
8334
13.8k
                        { (yyval.ast) = (yyvsp[0].ast); }
8335
13.8k
#line 8336 "/src/php-src/Zend/zend_language_parser.c"
8336
13.8k
    break;
8337
8338
49.4k
  case 580:
8339
49.4k
#line 1587 "/src/php-src/Zend/zend_language_parser.y"
8340
49.4k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8341
49.4k
#line 8342 "/src/php-src/Zend/zend_language_parser.c"
8342
49.4k
    break;
8343
8344
3.29k
  case 581:
8345
3.29k
#line 1589 "/src/php-src/Zend/zend_language_parser.y"
8346
3.29k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8347
3.29k
#line 8348 "/src/php-src/Zend/zend_language_parser.c"
8348
3.29k
    break;
8349
8350
699k
  case 582:
8351
699k
#line 1593 "/src/php-src/Zend/zend_language_parser.y"
8352
699k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8353
699k
#line 8354 "/src/php-src/Zend/zend_language_parser.c"
8354
699k
    break;
8355
8356
5.91k
  case 583:
8357
5.91k
#line 1594 "/src/php-src/Zend/zend_language_parser.y"
8358
5.91k
                                        { (yyval.ast) = (yyvsp[-1].ast); }
8359
5.91k
#line 8360 "/src/php-src/Zend/zend_language_parser.c"
8360
5.91k
    break;
8361
8362
86.7k
  case 584:
8363
86.7k
#line 1595 "/src/php-src/Zend/zend_language_parser.y"
8364
86.7k
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8365
86.7k
#line 8366 "/src/php-src/Zend/zend_language_parser.c"
8366
86.7k
    break;
8367
8368
10.8k
  case 585:
8369
10.8k
#line 1600 "/src/php-src/Zend/zend_language_parser.y"
8370
10.8k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8371
10.8k
#line 8372 "/src/php-src/Zend/zend_language_parser.c"
8372
10.8k
    break;
8373
8374
2.97k
  case 586:
8375
2.97k
#line 1602 "/src/php-src/Zend/zend_language_parser.y"
8376
2.97k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8377
2.97k
#line 8378 "/src/php-src/Zend/zend_language_parser.c"
8378
2.97k
    break;
8379
8380
1.80k
  case 587:
8381
1.80k
#line 1607 "/src/php-src/Zend/zend_language_parser.y"
8382
1.80k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8383
1.80k
#line 8384 "/src/php-src/Zend/zend_language_parser.c"
8384
1.80k
    break;
8385
8386
151
  case 588:
8387
151
#line 1609 "/src/php-src/Zend/zend_language_parser.y"
8388
151
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8389
151
#line 8390 "/src/php-src/Zend/zend_language_parser.c"
8390
151
    break;
8391
8392
585
  case 589:
8393
585
#line 1611 "/src/php-src/Zend/zend_language_parser.y"
8394
585
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8395
585
#line 8396 "/src/php-src/Zend/zend_language_parser.c"
8396
585
    break;
8397
8398
400
  case 590:
8399
400
#line 1613 "/src/php-src/Zend/zend_language_parser.y"
8400
400
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8401
400
#line 8402 "/src/php-src/Zend/zend_language_parser.c"
8402
400
    break;
8403
8404
295
  case 591:
8405
295
#line 1615 "/src/php-src/Zend/zend_language_parser.y"
8406
295
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8407
295
#line 8408 "/src/php-src/Zend/zend_language_parser.c"
8408
295
    break;
8409
8410
112
  case 592:
8411
112
#line 1617 "/src/php-src/Zend/zend_language_parser.y"
8412
112
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8413
112
#line 8414 "/src/php-src/Zend/zend_language_parser.c"
8414
112
    break;
8415
8416
12.6k
  case 593:
8417
12.6k
#line 1621 "/src/php-src/Zend/zend_language_parser.y"
8418
12.6k
                           { (yyval.ast) = (yyvsp[0].ast); }
8419
12.6k
#line 8420 "/src/php-src/Zend/zend_language_parser.c"
8420
12.6k
    break;
8421
8422
119
  case 594:
8423
119
#line 1622 "/src/php-src/Zend/zend_language_parser.y"
8424
119
                                { (yyval.ast) = (yyvsp[-1].ast); }
8425
119
#line 8426 "/src/php-src/Zend/zend_language_parser.c"
8426
119
    break;
8427
8428
979
  case 595:
8429
979
#line 1623 "/src/php-src/Zend/zend_language_parser.y"
8430
979
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8431
979
#line 8432 "/src/php-src/Zend/zend_language_parser.c"
8432
979
    break;
8433
8434
96.1k
  case 596:
8435
96.1k
#line 1627 "/src/php-src/Zend/zend_language_parser.y"
8436
96.1k
                         { (yyval.ast) = (yyvsp[0].ast); }
8437
96.1k
#line 8438 "/src/php-src/Zend/zend_language_parser.c"
8438
96.1k
    break;
8439
8440
3.06k
  case 597:
8441
3.06k
#line 1628 "/src/php-src/Zend/zend_language_parser.y"
8442
3.06k
                                { (yyval.ast) = (yyvsp[-1].ast); }
8443
3.06k
#line 8444 "/src/php-src/Zend/zend_language_parser.c"
8444
3.06k
    break;
8445
8446
4.38k
  case 598:
8447
4.38k
#line 1629 "/src/php-src/Zend/zend_language_parser.y"
8448
4.38k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8449
4.38k
#line 8450 "/src/php-src/Zend/zend_language_parser.c"
8450
4.38k
    break;
8451
8452
105k
  case 599:
8453
105k
#line 1634 "/src/php-src/Zend/zend_language_parser.y"
8454
105k
                        { /* allow single trailing comma */ (yyval.ast) = zend_ast_list_rtrim((yyvsp[0].ast)); }
8455
105k
#line 8456 "/src/php-src/Zend/zend_language_parser.c"
8456
105k
    break;
8457
8458
28.6k
  case 600:
8459
28.6k
#line 1638 "/src/php-src/Zend/zend_language_parser.y"
8460
28.6k
                       { (yyval.ast) = NULL; }
8461
28.6k
#line 8462 "/src/php-src/Zend/zend_language_parser.c"
8462
28.6k
    break;
8463
8464
409k
  case 601:
8465
409k
#line 1639 "/src/php-src/Zend/zend_language_parser.y"
8466
409k
                            { (yyval.ast) = (yyvsp[0].ast); }
8467
409k
#line 8468 "/src/php-src/Zend/zend_language_parser.c"
8468
409k
    break;
8469
8470
331k
  case 602:
8471
331k
#line 1644 "/src/php-src/Zend/zend_language_parser.y"
8472
331k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
8473
331k
#line 8474 "/src/php-src/Zend/zend_language_parser.c"
8474
331k
    break;
8475
8476
106k
  case 603:
8477
106k
#line 1646 "/src/php-src/Zend/zend_language_parser.y"
8478
106k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARRAY, (yyvsp[0].ast)); }
8479
106k
#line 8480 "/src/php-src/Zend/zend_language_parser.c"
8480
106k
    break;
8481
8482
20.3k
  case 604:
8483
20.3k
#line 1651 "/src/php-src/Zend/zend_language_parser.y"
8484
20.3k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), (yyvsp[-2].ast)); }
8485
20.3k
#line 8486 "/src/php-src/Zend/zend_language_parser.c"
8486
20.3k
    break;
8487
8488
383k
  case 605:
8489
383k
#line 1653 "/src/php-src/Zend/zend_language_parser.y"
8490
383k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), NULL); }
8491
383k
#line 8492 "/src/php-src/Zend/zend_language_parser.c"
8492
383k
    break;
8493
8494
270
  case 606:
8495
270
#line 1655 "/src/php-src/Zend/zend_language_parser.y"
8496
270
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), (yyvsp[-3].ast)); }
8497
270
#line 8498 "/src/php-src/Zend/zend_language_parser.c"
8498
270
    break;
8499
8500
2.08k
  case 607:
8501
2.08k
#line 1657 "/src/php-src/Zend/zend_language_parser.y"
8502
2.08k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), NULL); }
8503
2.08k
#line 8504 "/src/php-src/Zend/zend_language_parser.c"
8504
2.08k
    break;
8505
8506
2.48k
  case 608:
8507
2.48k
#line 1659 "/src/php-src/Zend/zend_language_parser.y"
8508
2.48k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
8509
2.48k
#line 8510 "/src/php-src/Zend/zend_language_parser.c"
8510
2.48k
    break;
8511
8512
68
  case 609:
8513
68
#line 1661 "/src/php-src/Zend/zend_language_parser.y"
8514
68
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8515
68
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), (yyvsp[-5].ast)); }
8516
68
#line 8517 "/src/php-src/Zend/zend_language_parser.c"
8517
68
    break;
8518
8519
573
  case 610:
8520
573
#line 1664 "/src/php-src/Zend/zend_language_parser.y"
8521
573
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8522
573
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), NULL); }
8523
573
#line 8524 "/src/php-src/Zend/zend_language_parser.c"
8524
573
    break;
8525
8526
168k
  case 611:
8527
168k
#line 1670 "/src/php-src/Zend/zend_language_parser.y"
8528
168k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8529
168k
#line 8530 "/src/php-src/Zend/zend_language_parser.c"
8530
168k
    break;
8531
8532
203k
  case 612:
8533
203k
#line 1672 "/src/php-src/Zend/zend_language_parser.y"
8534
203k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8535
203k
#line 8536 "/src/php-src/Zend/zend_language_parser.c"
8536
203k
    break;
8537
8538
13.9k
  case 613:
8539
13.9k
#line 1674 "/src/php-src/Zend/zend_language_parser.y"
8540
13.9k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ENCAPS_LIST, (yyvsp[0].ast)); }
8541
13.9k
#line 8542 "/src/php-src/Zend/zend_language_parser.c"
8542
13.9k
    break;
8543
8544
33.6k
  case 614:
8545
33.6k
#line 1676 "/src/php-src/Zend/zend_language_parser.y"
8546
33.6k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_ENCAPS_LIST, (yyvsp[-1].ast), (yyvsp[0].ast)); }
8547
33.6k
#line 8548 "/src/php-src/Zend/zend_language_parser.c"
8548
33.6k
    break;
8549
8550
162k
  case 615:
8551
162k
#line 1681 "/src/php-src/Zend/zend_language_parser.y"
8552
162k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8553
162k
#line 8554 "/src/php-src/Zend/zend_language_parser.c"
8554
162k
    break;
8555
8556
3.95k
  case 616:
8557
3.95k
#line 1683 "/src/php-src/Zend/zend_language_parser.y"
8558
3.95k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM,
8559
3.95k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-3].ast)), (yyvsp[-1].ast)); }
8560
3.95k
#line 8561 "/src/php-src/Zend/zend_language_parser.c"
8561
3.95k
    break;
8562
8563
13.0k
  case 617:
8564
13.0k
#line 1686 "/src/php-src/Zend/zend_language_parser.y"
8565
13.0k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP,
8566
13.0k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8567
13.0k
#line 8568 "/src/php-src/Zend/zend_language_parser.c"
8568
13.0k
    break;
8569
8570
32.4k
  case 618:
8571
32.4k
#line 1689 "/src/php-src/Zend/zend_language_parser.y"
8572
32.4k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP,
8573
32.4k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8574
32.4k
#line 8575 "/src/php-src/Zend/zend_language_parser.c"
8575
32.4k
    break;
8576
8577
2.27k
  case 619:
8578
2.27k
#line 1692 "/src/php-src/Zend/zend_language_parser.y"
8579
2.27k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY_VAR_VAR, (yyvsp[-1].ast)); }
8580
2.27k
#line 8581 "/src/php-src/Zend/zend_language_parser.c"
8581
2.27k
    break;
8582
8583
379
  case 620:
8584
379
#line 1694 "/src/php-src/Zend/zend_language_parser.y"
8585
379
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY, (yyvsp[-1].ast)); }
8586
379
#line 8587 "/src/php-src/Zend/zend_language_parser.c"
8587
379
    break;
8588
8589
538
  case 621:
8590
538
#line 1696 "/src/php-src/Zend/zend_language_parser.y"
8591
538
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_DIM, ZEND_ENCAPS_VAR_DOLLAR_CURLY,
8592
538
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-4].ast)), (yyvsp[-2].ast)); }
8593
538
#line 8594 "/src/php-src/Zend/zend_language_parser.c"
8594
538
    break;
8595
8596
1.36k
  case 622:
8597
1.36k
#line 1698 "/src/php-src/Zend/zend_language_parser.y"
8598
1.36k
                                          { (yyval.ast) = (yyvsp[-1].ast); }
8599
1.36k
#line 8600 "/src/php-src/Zend/zend_language_parser.c"
8600
1.36k
    break;
8601
8602
671
  case 623:
8603
671
#line 1702 "/src/php-src/Zend/zend_language_parser.y"
8604
671
                                                { (yyval.ast) = (yyvsp[0].ast); }
8605
671
#line 8606 "/src/php-src/Zend/zend_language_parser.c"
8606
671
    break;
8607
8608
1.67k
  case 624:
8609
1.67k
#line 1703 "/src/php-src/Zend/zend_language_parser.y"
8610
1.67k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8611
1.67k
#line 8612 "/src/php-src/Zend/zend_language_parser.c"
8612
1.67k
    break;
8613
8614
1.30k
  case 625:
8615
1.30k
#line 1704 "/src/php-src/Zend/zend_language_parser.y"
8616
1.30k
                                        { (yyval.ast) = zend_negate_num_string((yyvsp[0].ast)); }
8617
1.30k
#line 8618 "/src/php-src/Zend/zend_language_parser.c"
8618
1.30k
    break;
8619
8620
724
  case 626:
8621
724
#line 1705 "/src/php-src/Zend/zend_language_parser.y"
8622
724
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8623
724
#line 8624 "/src/php-src/Zend/zend_language_parser.c"
8624
724
    break;
8625
8626
4.60k
  case 627:
8627
4.60k
#line 1710 "/src/php-src/Zend/zend_language_parser.y"
8628
4.60k
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
8629
4.60k
#line 8630 "/src/php-src/Zend/zend_language_parser.c"
8630
4.60k
    break;
8631
8632
1.31k
  case 628:
8633
1.31k
#line 1711 "/src/php-src/Zend/zend_language_parser.y"
8634
1.31k
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_EMPTY, (yyvsp[-1].ast)); }
8635
1.31k
#line 8636 "/src/php-src/Zend/zend_language_parser.c"
8636
1.31k
    break;
8637
8638
1.52k
  case 629:
8639
1.52k
#line 1713 "/src/php-src/Zend/zend_language_parser.y"
8640
1.52k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE, (yyvsp[0].ast)); }
8641
1.52k
#line 8642 "/src/php-src/Zend/zend_language_parser.c"
8642
1.52k
    break;
8643
8644
181
  case 630:
8645
181
#line 1715 "/src/php-src/Zend/zend_language_parser.y"
8646
181
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE_ONCE, (yyvsp[0].ast)); }
8647
181
#line 8648 "/src/php-src/Zend/zend_language_parser.c"
8648
181
    break;
8649
8650
2.18k
  case 631:
8651
2.18k
#line 1717 "/src/php-src/Zend/zend_language_parser.y"
8652
2.18k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_EVAL, (yyvsp[-1].ast)); }
8653
2.18k
#line 8654 "/src/php-src/Zend/zend_language_parser.c"
8654
2.18k
    break;
8655
8656
3.98k
  case 632:
8657
3.98k
#line 1719 "/src/php-src/Zend/zend_language_parser.y"
8658
3.98k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE, (yyvsp[0].ast)); }
8659
3.98k
#line 8660 "/src/php-src/Zend/zend_language_parser.c"
8660
3.98k
    break;
8661
8662
318
  case 633:
8663
318
#line 1721 "/src/php-src/Zend/zend_language_parser.y"
8664
318
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE_ONCE, (yyvsp[0].ast)); }
8665
318
#line 8666 "/src/php-src/Zend/zend_language_parser.c"
8666
318
    break;
8667
8668
4.69k
  case 634:
8669
4.69k
#line 1725 "/src/php-src/Zend/zend_language_parser.y"
8670
4.69k
                               { (yyval.ast) = (yyvsp[0].ast); }
8671
4.69k
#line 8672 "/src/php-src/Zend/zend_language_parser.c"
8672
4.69k
    break;
8673
8674
3.46k
  case 635:
8675
3.46k
#line 1727 "/src/php-src/Zend/zend_language_parser.y"
8676
3.46k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8677
3.46k
#line 8678 "/src/php-src/Zend/zend_language_parser.c"
8678
3.46k
    break;
8679
8680
8.16k
  case 636:
8681
8.16k
#line 1731 "/src/php-src/Zend/zend_language_parser.y"
8682
8.16k
                     { (yyval.ast) = zend_ast_create(ZEND_AST_ISSET, (yyvsp[0].ast)); }
8683
8.16k
#line 8684 "/src/php-src/Zend/zend_language_parser.c"
8684
8.16k
    break;
8685
8686
8687
0
#line 8688 "/src/php-src/Zend/zend_language_parser.c"
8688
8689
381k
      default: break;
8690
20.6M
    }
8691
  /* User semantic actions sometimes alter yychar, and that requires
8692
     that yytoken be updated with the new translation.  We take the
8693
     approach of translating immediately before every use of yytoken.
8694
     One alternative is translating here after every semantic action,
8695
     but that translation would be missed if the semantic action invokes
8696
     YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
8697
     if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
8698
     incorrect destructor might then be invoked immediately.  In the
8699
     case of YYERROR or YYBACKUP, subsequent parser actions might lead
8700
     to an incorrect destructor call or verbose syntax error message
8701
     before the lookahead is translated.  */
8702
20.6M
  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
8703
8704
20.6M
  YYPOPSTACK (yylen);
8705
20.6M
  yylen = 0;
8706
20.6M
  YY_STACK_PRINT (yyss, yyssp);
8707
8708
20.6M
  *++yyvsp = yyval;
8709
8710
  /* Now 'shift' the result of the reduction.  Determine what state
8711
     that goes to, based on the state we popped back to and the rule
8712
     number reduced by.  */
8713
20.6M
  {
8714
20.6M
    const int yylhs = yyr1[yyn] - YYNTOKENS;
8715
20.6M
    const int yyi = yypgoto[yylhs] + *yyssp;
8716
20.6M
    yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp
8717
20.6M
               ? yytable[yyi]
8718
20.6M
               : yydefgoto[yylhs]);
8719
20.6M
  }
8720
8721
20.6M
  goto yynewstate;
8722
8723
8724
/*--------------------------------------.
8725
| yyerrlab -- here on detecting error.  |
8726
`--------------------------------------*/
8727
30.1k
yyerrlab:
8728
  /* Make sure we have latest lookahead translation.  See comments at
8729
     user semantic actions for why this is necessary.  */
8730
30.1k
  yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
8731
8732
  /* If not already recovering from an error, report this error.  */
8733
30.1k
  if (!yyerrstatus)
8734
30.1k
    {
8735
30.1k
      ++yynerrs;
8736
#if ! YYERROR_VERBOSE
8737
      yyerror (YY_("syntax error"));
8738
#else
8739
30.1k
# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
8740
30.1k
                                        yyssp, yytoken)
8741
30.1k
      {
8742
30.1k
        char const *yymsgp = YY_("syntax error");
8743
30.1k
        int yysyntax_error_status;
8744
30.1k
        yysyntax_error_status = YYSYNTAX_ERROR;
8745
30.1k
        if (yysyntax_error_status == 0)
8746
30.1k
          yymsgp = yymsg;
8747
7
        else if (yysyntax_error_status == 1)
8748
7
          {
8749
7
            if (yymsg != yymsgbuf)
8750
0
              YYSTACK_FREE (yymsg);
8751
7
            yymsg = YY_CAST (char *, YYSTACK_ALLOC (YY_CAST (YYSIZE_T, yymsg_alloc)));
8752
7
            if (!yymsg)
8753
0
              {
8754
0
                yymsg = yymsgbuf;
8755
0
                yymsg_alloc = sizeof yymsgbuf;
8756
0
                yysyntax_error_status = 2;
8757
0
              }
8758
7
            else
8759
7
              {
8760
7
                yysyntax_error_status = YYSYNTAX_ERROR;
8761
7
                yymsgp = yymsg;
8762
7
              }
8763
7
          }
8764
30.1k
        yyerror (yymsgp);
8765
30.1k
        if (yysyntax_error_status == 2)
8766
0
          goto yyexhaustedlab;
8767
30.1k
      }
8768
30.1k
# undef YYSYNTAX_ERROR
8769
30.1k
#endif
8770
30.1k
    }
8771
8772
8773
8774
30.1k
  if (yyerrstatus == 3)
8775
0
    {
8776
      /* If just tried and failed to reuse lookahead token after an
8777
         error, discard it.  */
8778
8779
0
      if (yychar <= YYEOF)
8780
0
        {
8781
          /* Return failure if at end of input.  */
8782
0
          if (yychar == YYEOF)
8783
0
            YYABORT;
8784
0
        }
8785
0
      else
8786
0
        {
8787
0
          yydestruct ("Error: discarding",
8788
0
                      yytoken, &yylval);
8789
0
          yychar = YYEMPTY;
8790
0
        }
8791
0
    }
8792
8793
  /* Else will try to reuse lookahead token after shifting the error
8794
     token.  */
8795
30.1k
  goto yyerrlab1;
8796
8797
8798
/*---------------------------------------------------.
8799
| yyerrorlab -- error raised explicitly by YYERROR.  |
8800
`---------------------------------------------------*/
8801
30.1k
yyerrorlab:
8802
  /* Pacify compilers when the user code never invokes YYERROR and the
8803
     label yyerrorlab therefore never appears in user code.  */
8804
207
  if (0)
8805
0
    YYERROR;
8806
8807
  /* Do not reclaim the symbols of the rule whose action triggered
8808
     this YYERROR.  */
8809
207
  YYPOPSTACK (yylen);
8810
207
  yylen = 0;
8811
207
  YY_STACK_PRINT (yyss, yyssp);
8812
207
  yystate = *yyssp;
8813
207
  goto yyerrlab1;
8814
8815
8816
/*-------------------------------------------------------------.
8817
| yyerrlab1 -- common code for both syntax error and YYERROR.  |
8818
`-------------------------------------------------------------*/
8819
30.3k
yyerrlab1:
8820
30.3k
  yyerrstatus = 3;      /* Each real token shifted decrements this.  */
8821
8822
30.3k
  for (;;)
8823
573k
    {
8824
573k
      yyn = yypact[yystate];
8825
573k
      if (!yypact_value_is_default (yyn))
8826
502k
        {
8827
502k
          yyn += YYTERROR;
8828
502k
          if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
8829
0
            {
8830
0
              yyn = yytable[yyn];
8831
0
              if (0 < yyn)
8832
0
                break;
8833
0
            }
8834
502k
        }
8835
8836
      /* Pop the current state because it cannot handle the error token.  */
8837
573k
      if (yyssp == yyss)
8838
30.3k
        YYABORT;
8839
8840
8841
542k
      yydestruct ("Error: popping",
8842
542k
                  yystos[yystate], yyvsp);
8843
542k
      YYPOPSTACK (1);
8844
542k
      yystate = *yyssp;
8845
542k
      YY_STACK_PRINT (yyss, yyssp);
8846
542k
    }
8847
8848
0
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
8849
0
  *++yyvsp = yylval;
8850
0
  YY_IGNORE_MAYBE_UNINITIALIZED_END
8851
8852
8853
  /* Shift the error token.  */
8854
0
  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
8855
8856
0
  yystate = yyn;
8857
0
  goto yynewstate;
8858
8859
8860
/*-------------------------------------.
8861
| yyacceptlab -- YYACCEPT comes here.  |
8862
`-------------------------------------*/
8863
82.7k
yyacceptlab:
8864
82.7k
  yyresult = 0;
8865
82.7k
  goto yyreturn;
8866
8867
8868
/*-----------------------------------.
8869
| yyabortlab -- YYABORT comes here.  |
8870
`-----------------------------------*/
8871
30.3k
yyabortlab:
8872
30.3k
  yyresult = 1;
8873
30.3k
  goto yyreturn;
8874
8875
8876
0
#if !defined yyoverflow || YYERROR_VERBOSE
8877
/*-------------------------------------------------.
8878
| yyexhaustedlab -- memory exhaustion comes here.  |
8879
`-------------------------------------------------*/
8880
3
yyexhaustedlab:
8881
3
  yyerror (YY_("memory exhausted"));
8882
3
  yyresult = 2;
8883
  /* Fall through.  */
8884
3
#endif
8885
8886
8887
/*-----------------------------------------------------.
8888
| yyreturn -- parsing is finished, return the result.  |
8889
`-----------------------------------------------------*/
8890
113k
yyreturn:
8891
113k
  if (yychar != YYEMPTY)
8892
30.3k
    {
8893
      /* Make sure we have latest lookahead translation.  See comments at
8894
         user semantic actions for why this is necessary.  */
8895
30.3k
      yytoken = YYTRANSLATE (yychar);
8896
30.3k
      yydestruct ("Cleanup: discarding lookahead",
8897
30.3k
                  yytoken, &yylval);
8898
30.3k
    }
8899
  /* Do not reclaim the symbols of the rule whose action triggered
8900
     this YYABORT or YYACCEPT.  */
8901
113k
  YYPOPSTACK (yylen);
8902
113k
  YY_STACK_PRINT (yyss, yyssp);
8903
309k
  while (yyssp != yyss)
8904
196k
    {
8905
196k
      yydestruct ("Cleanup: popping",
8906
196k
                  yystos[+*yyssp], yyvsp);
8907
196k
      YYPOPSTACK (1);
8908
196k
    }
8909
113k
#ifndef yyoverflow
8910
113k
  if (yyss != yyssa)
8911
1.09k
    YYSTACK_FREE (yyss);
8912
113k
#endif
8913
113k
#if YYERROR_VERBOSE
8914
113k
  if (yymsg != yymsgbuf)
8915
7
    YYSTACK_FREE (yymsg);
8916
113k
#endif
8917
113k
  return yyresult;
8918
3
}
8919
#line 1734 "/src/php-src/Zend/zend_language_parser.y"
8920
8921
8922
/* Over-ride Bison formatting routine to give better token descriptions.
8923
   Copy to YYRES the contents of YYSTR for use in yyerror.
8924
   YYSTR is taken from yytname, from the %token declaration.
8925
   If YYRES is null, do not copy; instead, return the length of what
8926
   the result would have been.  */
8927
static YYSIZE_T zend_yytnamerr(char *yyres, const char *yystr)
8928
178k
{
8929
178k
  const char *toktype = yystr;
8930
178k
  size_t toktype_len = strlen(toktype);
8931
8932
  /* CG(parse_error) states:
8933
   * 0 => yyres = NULL, yystr is the unexpected token
8934
   * 1 => yyres = NULL, yystr is one of the expected tokens
8935
   * 2 => yyres != NULL, yystr is the unexpected token
8936
   * 3 => yyres != NULL, yystr is one of the expected tokens
8937
   */
8938
178k
  if (yyres && CG(parse_error) < 2) {
8939
30.1k
    CG(parse_error) = 2;
8940
30.1k
  }
8941
8942
178k
  if (CG(parse_error) % 2 == 0) {
8943
    /* The unexpected token */
8944
60.3k
    char buffer[120];
8945
60.3k
    const unsigned char *tokcontent, *tokcontent_end;
8946
60.3k
    size_t tokcontent_len;
8947
8948
60.3k
    CG(parse_error)++;
8949
8950
60.3k
    if (LANG_SCNG(yy_text)[0] == 0 &&
8951
16.0k
      LANG_SCNG(yy_leng) == 1 &&
8952
16.0k
      strcmp(toktype, "\"end of file\"") == 0) {
8953
6.80k
      if (yyres) {
8954
3.40k
        yystpcpy(yyres, "end of file");
8955
3.40k
      }
8956
6.80k
      return sizeof("end of file")-1;
8957
6.80k
    }
8958
8959
    /* Prevent the backslash getting doubled in the output (eugh) */
8960
53.5k
    if (strcmp(toktype, "\"'\\\\'\"") == 0) {
8961
752
      if (yyres) {
8962
376
        yystpcpy(yyres, "token \"\\\"");
8963
376
      }
8964
752
      return sizeof("token \"\\\"")-1;
8965
752
    }
8966
8967
    /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
8968
52.7k
    if (strcmp(toktype, "\"amp\"") == 0) {
8969
1.16k
      if (yyres) {
8970
580
        yystpcpy(yyres, "token \"&\"");
8971
580
      }
8972
1.16k
      return sizeof("token \"&\"")-1;
8973
1.16k
    }
8974
8975
    /* Avoid unreadable """ */
8976
    /* "'" would theoretically be just as bad, but is never currently parsed as a separate token */
8977
51.6k
    if (strcmp(toktype, "'\"'") == 0) {
8978
310
      if (yyres) {
8979
155
        yystpcpy(yyres, "double-quote mark");
8980
155
      }
8981
310
      return sizeof("double-quote mark")-1;
8982
310
    }
8983
8984
    /* Strip off the outer quote marks */
8985
51.3k
    if (toktype_len >= 2 && *toktype == '"') {
8986
27.5k
      toktype++;
8987
27.5k
      toktype_len -= 2;
8988
27.5k
    }
8989
8990
    /* If the token always has one form, the %token line should have a single-quoted name */
8991
    /* The parser rules also include single-character un-named tokens which will be single-quoted here */
8992
    /* We re-format this with double quotes here to ensure everything's consistent */
8993
51.3k
    if (toktype_len > 0 && *toktype == '\'') {
8994
28.8k
      if (yyres) {
8995
14.4k
        snprintf(buffer, sizeof(buffer), "token \"%.*s\"", (int)toktype_len-2, toktype+1);
8996
14.4k
        yystpcpy(yyres, buffer);
8997
14.4k
      }
8998
28.8k
      return toktype_len + sizeof("token ")-1;
8999
28.8k
    }
9000
9001
    /* Fetch the content of the last seen token from global lexer state */
9002
22.4k
    tokcontent = LANG_SCNG(yy_text);
9003
22.4k
    tokcontent_len = LANG_SCNG(yy_leng);
9004
9005
    /* For T_BAD_CHARACTER, the content probably won't be a printable char */
9006
    /* Also, "unexpected invalid character" sounds a bit redundant */
9007
22.4k
    if (tokcontent_len == 1 && strcmp(yystr, "\"invalid character\"") == 0) {
9008
5.14k
      if (yyres) {
9009
2.57k
        snprintf(buffer, sizeof(buffer), "character 0x%02hhX", *tokcontent);
9010
2.57k
        yystpcpy(yyres, buffer);
9011
2.57k
      }
9012
5.14k
      return sizeof("character 0x00")-1;
9013
5.14k
    }
9014
9015
    /* Truncate at line end to avoid messing up log formats */
9016
17.2k
    tokcontent_end = memchr(tokcontent, '\n', tokcontent_len);
9017
17.2k
    if (tokcontent_end != NULL) {
9018
1.31k
      tokcontent_len = (tokcontent_end - tokcontent);
9019
1.31k
    }
9020
9021
    /* Try to be helpful about what kind of string was found, before stripping the quotes */
9022
17.2k
    if (tokcontent_len > 0 && strcmp(yystr, "\"quoted string\"") == 0) {
9023
260
      if (*tokcontent == '"') {
9024
110
        toktype = "double-quoted string";
9025
110
        toktype_len = sizeof("double-quoted string")-1;
9026
110
      }
9027
150
      else if (*tokcontent == '\'') {
9028
148
        toktype = "single-quoted string";
9029
148
        toktype_len = sizeof("single-quoted string")-1;
9030
148
      }
9031
260
    }
9032
9033
    /* For quoted strings, strip off another layer of quotes to avoid putting quotes inside quotes */
9034
17.2k
    if (tokcontent_len > 0 && (*tokcontent == '\'' || *tokcontent=='"'))  {
9035
706
      tokcontent++;
9036
706
      tokcontent_len--;
9037
706
    }
9038
17.2k
    if (tokcontent_len > 0 && (tokcontent[tokcontent_len-1] == '\'' || tokcontent[tokcontent_len-1] == '"'))  {
9039
250
      tokcontent_len--;
9040
250
    }
9041
9042
    /* Truncate to 30 characters and add a ... */
9043
17.2k
    if (tokcontent_len > 30 + sizeof("...")-1) {
9044
238
      if (yyres) {
9045
119
        snprintf(buffer, sizeof(buffer), "%.*s \"%.*s...\"", (int)toktype_len, toktype, 30, tokcontent);
9046
119
        yystpcpy(yyres, buffer);
9047
119
      }
9048
238
      return toktype_len + 30 + sizeof(" \"...\"")-1;
9049
238
    }
9050
9051
17.0k
    if (yyres) {
9052
8.52k
      snprintf(buffer, sizeof(buffer), "%.*s \"%.*s\"", (int)toktype_len, toktype, (int)tokcontent_len, tokcontent);
9053
8.52k
      yystpcpy(yyres, buffer);
9054
8.52k
    }
9055
17.0k
    return toktype_len + tokcontent_len + sizeof(" \"\"")-1;
9056
17.2k
  }
9057
9058
  /* One of the expected tokens */
9059
9060
  /* Prevent the backslash getting doubled in the output (eugh) */
9061
117k
  if (strcmp(toktype, "\"'\\\\'\"") == 0) {
9062
0
    if (yyres) {
9063
0
      yystpcpy(yyres, "\"\\\"");
9064
0
    }
9065
0
    return sizeof("\"\\\"")-1;
9066
0
  }
9067
9068
  /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
9069
117k
  if (strcmp(toktype, "\"amp\"") == 0) {
9070
49
    if (yyres) {
9071
24
      yystpcpy(yyres, "token \"&\"");
9072
24
    }
9073
49
    return sizeof("token \"&\"")-1;
9074
49
  }
9075
9076
  /* Strip off the outer quote marks */
9077
117k
  if (toktype_len >= 2 && *toktype == '"') {
9078
98.6k
    toktype++;
9079
98.6k
    toktype_len -= 2;
9080
98.6k
  }
9081
9082
117k
  if (yyres) {
9083
11.7k
    YYSIZE_T yyn = 0;
9084
9085
77.2k
    for (; yyn < toktype_len; ++yyn) {
9086
      /* Replace single quotes with double for consistency */
9087
65.5k
      if (toktype[yyn] == '\'') {
9088
15.4k
        yyres[yyn] = '"';
9089
15.4k
      }
9090
50.0k
      else {
9091
50.0k
        yyres[yyn] = toktype[yyn];
9092
50.0k
      }
9093
65.5k
    }
9094
11.7k
    yyres[toktype_len] = '\0';
9095
11.7k
  }
9096
9097
117k
  return toktype_len;
9098
117k
}