Coverage Report

Created: 2025-12-14 06:10

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/php-src/Zend/zend_language_parser.c
Line
Count
Source
1
/* A Bison parser, made by GNU Bison 3.5.1.  */
2
3
/* Bison implementation for Yacc-like parsers in C
4
5
   Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2020 Free Software Foundation,
6
   Inc.
7
8
   This program is free software: you can redistribute it and/or modify
9
   it under the terms of the GNU General Public License as published by
10
   the Free Software Foundation, either version 3 of the License, or
11
   (at your option) any later version.
12
13
   This program is distributed in the hope that it will be useful,
14
   but WITHOUT ANY WARRANTY; without even the implied warranty of
15
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
   GNU General Public License for more details.
17
18
   You should have received a copy of the GNU General Public License
19
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
20
21
/* As a special exception, you may create a larger work that contains
22
   part or all of the Bison parser skeleton and distribute that work
23
   under terms of your choice, so long as that work isn't itself a
24
   parser generator using the skeleton or a modified version thereof
25
   as a parser skeleton.  Alternatively, if you modify or redistribute
26
   the parser skeleton itself, you may (at your option) remove this
27
   special exception, which will cause the skeleton and the resulting
28
   Bison output files to be licensed under the GNU General Public
29
   License without this special exception.
30
31
   This special exception was added by the Free Software Foundation in
32
   version 2.2 of Bison.  */
33
34
/* C LALR(1) parser skeleton written by Richard Stallman, by
35
   simplifying the original so-called "semantic" parser.  */
36
37
/* All symbols defined below should begin with yy or YY, to avoid
38
   infringing on user name space.  This should be done even for local
39
   variables, as they might otherwise be expanded by user macros.
40
   There are some unavoidable exceptions within include files to
41
   define necessary library symbols; they are noted "INFRINGES ON
42
   USER NAME SPACE" below.  */
43
44
/* Undocumented macros, especially those whose name start with YY_,
45
   are private implementation details.  Do not rely on them.  */
46
47
/* Identify Bison output.  */
48
#define YYBISON 1
49
50
/* Bison version.  */
51
#define YYBISON_VERSION "3.5.1"
52
53
/* Skeleton name.  */
54
#define YYSKELETON_NAME "yacc.c"
55
56
/* Pure parsers.  */
57
#define YYPURE 2
58
59
/* Push parsers.  */
60
#define YYPUSH 0
61
62
/* Pull parsers.  */
63
#define YYPULL 1
64
65
/* "%code top" blocks.  */
66
#line 22 "/src/php-src/Zend/zend_language_parser.y"
67
68
#include "zend.h"
69
#include "zend_list.h"
70
#include "zend_globals.h"
71
#include "zend_API.h"
72
#include "zend_constants.h"
73
#include "zend_language_scanner.h"
74
#include "zend_exceptions.h"
75
76
18.9k
#define YYSIZE_T size_t
77
264k
#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
726k
#define YYSTYPE         ZENDSTYPE
88
/* Substitute the variable and function names.  */
89
#define yyparse         zendparse
90
11.3M
#define yylex           zendlex
91
44.9k
#define yyerror         zenderror
92
#define yydebug         zenddebug
93
190k
#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
35.0M
#   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
245k
#   define YY_NULLPTR ((void*)0)
114
#  endif
115
# endif
116
117
/* Enabling verbose error messages.  */
118
#ifdef YYERROR_VERBOSE
119
# undef YYERROR_VERBOSE
120
# define YYERROR_VERBOSE 1
121
#else
122
# define YYERROR_VERBOSE 1
123
#endif
124
125
/* Use api.header.include to #include this header
126
   instead of duplicating it here.  */
127
#ifndef YY_ZEND_SRC_PHP_SRC_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED
128
# define YY_ZEND_SRC_PHP_SRC_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED
129
/* Debug traces.  */
130
#ifndef ZENDDEBUG
131
# if defined YYDEBUG
132
#if YYDEBUG
133
#   define ZENDDEBUG 1
134
#  else
135
#   define ZENDDEBUG 0
136
#  endif
137
# else /* ! defined YYDEBUG */
138
#  define ZENDDEBUG 0
139
# endif /* ! defined YYDEBUG */
140
#endif  /* ! defined ZENDDEBUG */
141
#if ZENDDEBUG
142
extern int zenddebug;
143
#endif
144
/* "%code requires" blocks.  */
145
#line 41 "/src/php-src/Zend/zend_language_parser.y"
146
147
#include "zend_compile.h"
148
149
#line 150 "/src/php-src/Zend/zend_language_parser.c"
150
151
/* Token type.  */
152
#ifndef ZENDTOKENTYPE
153
# define ZENDTOKENTYPE
154
  enum zendtokentype
155
  {
156
    END = 0,
157
    T_THROW = 258,
158
    PREC_ARROW_FUNCTION = 259,
159
    T_INCLUDE = 260,
160
    T_INCLUDE_ONCE = 261,
161
    T_REQUIRE = 262,
162
    T_REQUIRE_ONCE = 263,
163
    T_LOGICAL_OR = 264,
164
    T_LOGICAL_XOR = 265,
165
    T_LOGICAL_AND = 266,
166
    T_PRINT = 267,
167
    T_YIELD = 268,
168
    T_DOUBLE_ARROW = 269,
169
    T_YIELD_FROM = 270,
170
    T_PLUS_EQUAL = 271,
171
    T_MINUS_EQUAL = 272,
172
    T_MUL_EQUAL = 273,
173
    T_DIV_EQUAL = 274,
174
    T_CONCAT_EQUAL = 275,
175
    T_MOD_EQUAL = 276,
176
    T_AND_EQUAL = 277,
177
    T_OR_EQUAL = 278,
178
    T_XOR_EQUAL = 279,
179
    T_SL_EQUAL = 280,
180
    T_SR_EQUAL = 281,
181
    T_POW_EQUAL = 282,
182
    T_COALESCE_EQUAL = 283,
183
    T_COALESCE = 284,
184
    T_BOOLEAN_OR = 285,
185
    T_BOOLEAN_AND = 286,
186
    T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG = 287,
187
    T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG = 288,
188
    T_IS_EQUAL = 289,
189
    T_IS_NOT_EQUAL = 290,
190
    T_IS_IDENTICAL = 291,
191
    T_IS_NOT_IDENTICAL = 292,
192
    T_SPACESHIP = 293,
193
    T_IS_SMALLER_OR_EQUAL = 294,
194
    T_IS_GREATER_OR_EQUAL = 295,
195
    T_PIPE = 296,
196
    T_SL = 297,
197
    T_SR = 298,
198
    T_INSTANCEOF = 299,
199
    T_INT_CAST = 300,
200
    T_DOUBLE_CAST = 301,
201
    T_STRING_CAST = 302,
202
    T_ARRAY_CAST = 303,
203
    T_OBJECT_CAST = 304,
204
    T_BOOL_CAST = 305,
205
    T_UNSET_CAST = 306,
206
    T_POW = 307,
207
    T_CLONE = 308,
208
    T_NOELSE = 309,
209
    T_ELSEIF = 310,
210
    T_ELSE = 311,
211
    T_LNUMBER = 312,
212
    T_DNUMBER = 313,
213
    T_STRING = 314,
214
    T_NAME_FULLY_QUALIFIED = 315,
215
    T_NAME_RELATIVE = 316,
216
    T_NAME_QUALIFIED = 317,
217
    T_VARIABLE = 318,
218
    T_INLINE_HTML = 319,
219
    T_ENCAPSED_AND_WHITESPACE = 320,
220
    T_CONSTANT_ENCAPSED_STRING = 321,
221
    T_STRING_VARNAME = 322,
222
    T_NUM_STRING = 323,
223
    T_EVAL = 324,
224
    T_NEW = 325,
225
    T_EXIT = 326,
226
    T_IF = 327,
227
    T_ENDIF = 328,
228
    T_ECHO = 329,
229
    T_DO = 330,
230
    T_WHILE = 331,
231
    T_ENDWHILE = 332,
232
    T_FOR = 333,
233
    T_ENDFOR = 334,
234
    T_FOREACH = 335,
235
    T_ENDFOREACH = 336,
236
    T_DECLARE = 337,
237
    T_ENDDECLARE = 338,
238
    T_AS = 339,
239
    T_SWITCH = 340,
240
    T_ENDSWITCH = 341,
241
    T_CASE = 342,
242
    T_DEFAULT = 343,
243
    T_MATCH = 344,
244
    T_BREAK = 345,
245
    T_CONTINUE = 346,
246
    T_GOTO = 347,
247
    T_FUNCTION = 348,
248
    T_FN = 349,
249
    T_CONST = 350,
250
    T_RETURN = 351,
251
    T_TRY = 352,
252
    T_CATCH = 353,
253
    T_FINALLY = 354,
254
    T_USE = 355,
255
    T_INSTEADOF = 356,
256
    T_GLOBAL = 357,
257
    T_STATIC = 358,
258
    T_ABSTRACT = 359,
259
    T_FINAL = 360,
260
    T_PRIVATE = 361,
261
    T_PROTECTED = 362,
262
    T_PUBLIC = 363,
263
    T_PRIVATE_SET = 364,
264
    T_PROTECTED_SET = 365,
265
    T_PUBLIC_SET = 366,
266
    T_READONLY = 367,
267
    T_VAR = 368,
268
    T_UNSET = 369,
269
    T_ISSET = 370,
270
    T_EMPTY = 371,
271
    T_HALT_COMPILER = 372,
272
    T_CLASS = 373,
273
    T_TRAIT = 374,
274
    T_INTERFACE = 375,
275
    T_ENUM = 376,
276
    T_EXTENDS = 377,
277
    T_IMPLEMENTS = 378,
278
    T_NAMESPACE = 379,
279
    T_LIST = 380,
280
    T_ARRAY = 381,
281
    T_CALLABLE = 382,
282
    T_LINE = 383,
283
    T_FILE = 384,
284
    T_DIR = 385,
285
    T_CLASS_C = 386,
286
    T_TRAIT_C = 387,
287
    T_METHOD_C = 388,
288
    T_FUNC_C = 389,
289
    T_PROPERTY_C = 390,
290
    T_NS_C = 391,
291
    T_ATTRIBUTE = 392,
292
    T_INC = 393,
293
    T_DEC = 394,
294
    T_VOID_CAST = 395,
295
    T_OBJECT_OPERATOR = 396,
296
    T_NULLSAFE_OBJECT_OPERATOR = 397,
297
    T_COMMENT = 398,
298
    T_DOC_COMMENT = 399,
299
    T_OPEN_TAG = 400,
300
    T_OPEN_TAG_WITH_ECHO = 401,
301
    T_CLOSE_TAG = 402,
302
    T_WHITESPACE = 403,
303
    T_START_HEREDOC = 404,
304
    T_END_HEREDOC = 405,
305
    T_DOLLAR_OPEN_CURLY_BRACES = 406,
306
    T_CURLY_OPEN = 407,
307
    T_PAAMAYIM_NEKUDOTAYIM = 408,
308
    T_NS_SEPARATOR = 409,
309
    T_ELLIPSIS = 410,
310
    T_BAD_CHARACTER = 411,
311
    T_ERROR = 412
312
  };
313
#endif
314
315
/* Value type.  */
316
#if ! defined ZENDSTYPE && ! defined ZENDSTYPE_IS_DECLARED
317
typedef zend_parser_stack_elem ZENDSTYPE;
318
# define ZENDSTYPE_IS_TRIVIAL 1
319
# define ZENDSTYPE_IS_DECLARED 1
320
#endif
321
322
323
324
ZEND_API int zendparse (void);
325
326
#endif /* !YY_ZEND_SRC_PHP_SRC_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED  */
327
328
329
330
#ifdef short
331
# undef short
332
#endif
333
334
/* On compilers that do not define __PTRDIFF_MAX__ etc., make sure
335
   <limits.h> and (if available) <stdint.h> are included
336
   so that the code can choose integer types of a good width.  */
337
338
#ifndef __PTRDIFF_MAX__
339
# include <limits.h> /* INFRINGES ON USER NAME SPACE */
340
# if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
341
#  include <stdint.h> /* INFRINGES ON USER NAME SPACE */
342
#  define YY_STDINT_H
343
# endif
344
#endif
345
346
/* Narrow types that promote to a signed type and that can represent a
347
   signed or unsigned integer of at least N bits.  In tables they can
348
   save space and decrease cache pressure.  Promoting to a signed type
349
   helps avoid bugs in integer arithmetic.  */
350
351
#ifdef __INT_LEAST8_MAX__
352
typedef __INT_LEAST8_TYPE__ yytype_int8;
353
#elif defined YY_STDINT_H
354
typedef int_least8_t yytype_int8;
355
#else
356
typedef signed char yytype_int8;
357
#endif
358
359
#ifdef __INT_LEAST16_MAX__
360
typedef __INT_LEAST16_TYPE__ yytype_int16;
361
#elif defined YY_STDINT_H
362
typedef int_least16_t yytype_int16;
363
#else
364
typedef short yytype_int16;
365
#endif
366
367
#if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__
368
typedef __UINT_LEAST8_TYPE__ yytype_uint8;
369
#elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \
370
       && UINT_LEAST8_MAX <= INT_MAX)
371
typedef uint_least8_t yytype_uint8;
372
#elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX
373
typedef unsigned char yytype_uint8;
374
#else
375
typedef short yytype_uint8;
376
#endif
377
378
#if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__
379
typedef __UINT_LEAST16_TYPE__ yytype_uint16;
380
#elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \
381
       && UINT_LEAST16_MAX <= INT_MAX)
382
typedef uint_least16_t yytype_uint16;
383
#elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX
384
typedef unsigned short yytype_uint16;
385
#else
386
typedef int yytype_uint16;
387
#endif
388
389
#ifndef YYPTRDIFF_T
390
# if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__
391
588k
#  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
200k
  YY_CAST (YYPTRDIFF_T,                                 \
420
           (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1)  \
421
            ? YYPTRDIFF_MAXIMUM                         \
422
            : YY_CAST (YYSIZE_T, -1)))
423
424
14.7k
#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
44.9k
#  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
961k
# 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
290k
# 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
34.7M
#define YY_ASSERT(E) ((void) (0 && (E)))
500
501
#if ! defined yyoverflow || YYERROR_VERBOSE
502
503
/* The parser invokes alloca or malloc; define the necessary symbols.  */
504
505
# ifdef YYSTACK_USE_ALLOCA
506
#  if YYSTACK_USE_ALLOCA
507
#   ifdef __GNUC__
508
#    define YYSTACK_ALLOC __builtin_alloca
509
#   elif defined __BUILTIN_VA_ARG_INCR
510
#    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
511
#   elif defined _AIX
512
#    define YYSTACK_ALLOC __alloca
513
#   elif defined _MSC_VER
514
#    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
515
#    define alloca _alloca
516
#   else
517
#    define YYSTACK_ALLOC alloca
518
#    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
519
#     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
520
      /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
521
#     ifndef EXIT_SUCCESS
522
#      define EXIT_SUCCESS 0
523
#     endif
524
#    endif
525
#   endif
526
#  endif
527
# endif
528
529
# ifdef YYSTACK_ALLOC
530
   /* Pacify GCC's 'empty if-body' warning.  */
531
#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
532
#  ifndef YYSTACK_ALLOC_MAXIMUM
533
    /* The OS might guarantee only one guard page at the bottom of the stack,
534
       and a page size can be as small as 4096 bytes.  So we cannot safely
535
       invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
536
       to allow for a few compiler-allocated temporary stack slots.  */
537
#   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
538
#  endif
539
# else
540
#  define YYSTACK_ALLOC YYMALLOC
541
2.45k
#  define YYSTACK_FREE YYFREE
542
#  ifndef YYSTACK_ALLOC_MAXIMUM
543
200k
#   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
544
#  endif
545
#  if (defined __cplusplus && ! defined EXIT_SUCCESS \
546
       && ! ((defined YYMALLOC || defined malloc) \
547
             && (defined YYFREE || defined free)))
548
#   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
549
#   ifndef EXIT_SUCCESS
550
#    define EXIT_SUCCESS 0
551
#   endif
552
#  endif
553
#  ifndef YYMALLOC
554
#   define YYMALLOC malloc
555
#   if ! defined malloc && ! defined EXIT_SUCCESS
556
void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
557
#   endif
558
#  endif
559
#  ifndef YYFREE
560
2.45k
#   define YYFREE free
561
#   if ! defined free && ! defined EXIT_SUCCESS
562
void free (void *); /* INFRINGES ON USER NAME SPACE */
563
#   endif
564
#  endif
565
# endif
566
#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
567
568
569
#if (! defined yyoverflow \
570
     && (! defined __cplusplus \
571
         || (defined ZENDSTYPE_IS_TRIVIAL && ZENDSTYPE_IS_TRIVIAL)))
572
573
/* A type that is properly aligned for any stack member.  */
574
union yyalloc
575
{
576
  yy_state_t yyss_alloc;
577
  YYSTYPE yyvs_alloc;
578
};
579
580
/* The size of the maximum gap between one aligned stack and the next.  */
581
4.90k
# define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1)
582
583
/* The size of an array large to enough to hold all stacks, each with
584
   N elements.  */
585
# define YYSTACK_BYTES(N) \
586
     ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE)) \
587
      + YYSTACK_GAP_MAXIMUM)
588
589
# define YYCOPY_NEEDED 1
590
591
/* Relocate STACK from its old location to the new one.  The
592
   local variables YYSIZE and YYSTACKSIZE give the old and new number of
593
   elements in the stack, and YYPTR gives the new location of the
594
   stack.  Advance YYPTR to a properly aligned location for the next
595
   stack.  */
596
# define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \
597
4.90k
    do                                                                  \
598
4.90k
      {                                                                 \
599
4.90k
        YYPTRDIFF_T yynewbytes;                                         \
600
4.90k
        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
601
4.90k
        Stack = &yyptr->Stack_alloc;                                    \
602
4.90k
        yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
603
4.90k
        yyptr += yynewbytes / YYSIZEOF (*yyptr);                        \
604
4.90k
      }                                                                 \
605
4.90k
    while (0)
606
607
#endif
608
609
#if defined YYCOPY_NEEDED && YYCOPY_NEEDED
610
/* Copy COUNT objects from SRC to DST.  The source and destination do
611
   not overlap.  */
612
# ifndef YYCOPY
613
#  if defined __GNUC__ && 1 < __GNUC__
614
#   define YYCOPY(Dst, Src, Count) \
615
4.90k
      __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
34.7M
#define YYFINAL  3
631
/* YYLAST -- Last index in YYTABLE.  */
632
59.9M
#define YYLAST   10685
633
634
/* YYNTOKENS -- Number of terminals.  */
635
23.4M
#define YYNTOKENS  185
636
/* YYNNTS -- Number of nonterminals.  */
637
#define YYNNTS  189
638
/* YYNRULES -- Number of rules.  */
639
#define YYNRULES  635
640
/* YYNSTATES -- Number of states.  */
641
#define YYNSTATES  1204
642
643
0
#define YYUNDEFTOK  2
644
20.3M
#define YYMAXUTOK   412
645
646
647
/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
648
   as returned by yylex, with out-of-bounds checking.  */
649
#define YYTRANSLATE(YYX)                                                \
650
20.3M
  (0 <= (YYX) && (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
651
652
/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
653
   as returned by yylex.  */
654
static const yytype_uint8 yytranslate[] =
655
{
656
       0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
657
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
658
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
659
       2,     2,     2,    57,   183,     2,   184,    56,     2,     2,
660
     177,   178,    54,    52,   174,    53,    49,    55,     2,     2,
661
       2,     2,     2,     2,     2,     2,     2,     2,    31,   176,
662
      44,    16,    46,    30,    67,     2,     2,     2,     2,     2,
663
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
664
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
665
       2,   181,     2,   175,    36,     2,   182,     2,     2,     2,
666
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
667
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
668
       2,     2,     2,   179,    35,   180,    59,     2,     2,     2,
669
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
670
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
671
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
672
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
673
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
674
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
675
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
676
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
677
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
678
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
679
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
680
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
681
       2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
682
       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
683
      15,    17,    18,    19,    20,    21,    22,    23,    24,    25,
684
      26,    27,    28,    29,    32,    33,    34,    37,    38,    39,
685
      40,    41,    42,    43,    45,    47,    48,    50,    51,    58,
686
      60,    61,    62,    63,    64,    65,    66,    68,    69,    70,
687
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
688
      81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
689
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
690
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
691
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
692
     121,   122,   123,   124,   125,   126,   127,   128,   129,   130,
693
     131,   132,   133,   134,   135,   136,   137,   138,   139,   140,
694
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
695
     151,   152,   153,   154,   155,   156,   157,   158,   159,   160,
696
     161,   162,   163,   164,   165,   166,   167,   168,   169,   170,
697
     171,   172,   173
698
};
699
700
#if ZENDDEBUG
701
  /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
702
static const yytype_int16 yyrline[] =
703
{
704
       0,   304,   304,   308,   308,   308,   308,   308,   308,   308,
705
     308,   309,   309,   309,   309,   309,   309,   309,   309,   309,
706
     309,   309,   309,   310,   310,   310,   310,   310,   310,   310,
707
     310,   310,   310,   311,   311,   311,   311,   311,   311,   311,
708
     311,   311,   311,   312,   312,   312,   312,   312,   312,   312,
709
     312,   312,   312,   312,   313,   313,   313,   313,   313,   313,
710
     313,   313,   314,   314,   314,   314,   314,   314,   314,   314,
711
     314,   314,   314,   315,   319,   320,   320,   320,   320,   320,
712
     320,   320,   324,   325,   329,   330,   338,   339,   344,   345,
713
     350,   351,   356,   357,   361,   362,   363,   364,   368,   370,
714
     375,   377,   382,   386,   387,   391,   392,   393,   394,   395,
715
     399,   400,   404,   405,   406,   407,   411,   414,   414,   417,
716
     417,   420,   421,   422,   423,   427,   428,   432,   437,   442,
717
     443,   447,   449,   454,   456,   461,   463,   468,   469,   473,
718
     475,   480,   482,   487,   488,   492,   494,   500,   501,   502,
719
     503,   510,   511,   512,   513,   515,   517,   519,   521,   522,
720
     523,   524,   525,   526,   527,   528,   529,   530,   532,   536,
721
     535,   539,   540,   542,   543,   544,   548,   550,   555,   556,
722
     560,   561,   565,   566,   570,   571,   575,   579,   580,   588,
723
     595,   596,   600,   601,   605,   605,   608,   608,   614,   615,
724
     620,   622,   627,   628,   632,   633,   634,   638,   638,   644,
725
     644,   650,   650,   656,   657,   661,   666,   667,   671,   672,
726
     676,   677,   681,   682,   686,   687,   688,   689,   693,   694,
727
     698,   699,   703,   704,   708,   709,   710,   711,   715,   716,
728
     718,   720,   722,   728,   733,   734,   738,   739,   743,   745,
729
     750,   751,   756,   757,   762,   765,   771,   772,   777,   780,
730
     786,   787,   793,   794,   799,   801,   806,   807,   811,   813,
731
     819,   823,   830,   831,   835,   836,   837,   838,   842,   843,
732
     847,   848,   852,   854,   859,   860,   867,   868,   869,   870,
733
     874,   875,   876,   880,   881,   885,   887,   892,   894,   899,
734
     900,   904,   905,   906,   910,   912,   926,   927,   928,   929,
735
     933,   935,   937,   942,   944,   948,   949,   953,   954,   958,
736
     964,   965,   969,   970,   974,   976,   982,   985,   988,   991,
737
     994,   998,  1002,  1003,  1004,  1009,  1010,  1014,  1015,  1016,
738
    1020,  1022,  1027,  1028,  1032,  1037,  1039,  1043,  1048,  1056,
739
    1058,  1062,  1067,  1068,  1072,  1075,  1080,  1082,  1089,  1091,
740
    1098,  1100,  1105,  1106,  1107,  1108,  1109,  1110,  1111,  1112,
741
    1113,  1114,  1118,  1119,  1123,  1125,  1130,  1132,  1137,  1138,
742
    1139,  1145,  1146,  1150,  1151,  1159,  1158,  1169,  1170,  1171,
743
    1176,  1177,  1181,  1182,  1186,  1187,  1195,  1199,  1200,  1203,
744
    1207,  1208,  1209,  1213,  1214,  1218,  1219,  1220,  1221,  1225,
745
    1225,  1235,  1237,  1239,  1244,  1249,  1251,  1253,  1255,  1257,
746
    1259,  1264,  1269,  1271,  1273,  1275,  1277,  1279,  1281,  1283,
747
    1285,  1287,  1289,  1291,  1293,  1295,  1296,  1297,  1298,  1299,
748
    1301,  1303,  1305,  1307,  1309,  1310,  1311,  1312,  1313,  1314,
749
    1315,  1316,  1317,  1318,  1319,  1320,  1321,  1322,  1323,  1324,
750
    1325,  1326,  1328,  1330,  1332,  1334,  1336,  1338,  1340,  1342,
751
    1344,  1346,  1348,  1353,  1354,  1355,  1357,  1359,  1361,  1362,
752
    1363,  1364,  1365,  1366,  1367,  1368,  1369,  1374,  1375,  1376,
753
    1377,  1378,  1379,  1380,  1381,  1382,  1383,  1384,  1385,  1386,
754
    1388,  1393,  1398,  1406,  1410,  1414,  1418,  1422,  1426,  1427,
755
    1431,  1432,  1436,  1437,  1441,  1442,  1446,  1448,  1453,  1455,
756
    1457,  1457,  1464,  1467,  1471,  1472,  1473,  1477,  1479,  1480,
757
    1485,  1486,  1491,  1492,  1493,  1494,  1498,  1499,  1500,  1501,
758
    1503,  1504,  1505,  1506,  1510,  1511,  1512,  1513,  1514,  1515,
759
    1516,  1517,  1518,  1519,  1523,  1525,  1527,  1529,  1534,  1535,
760
    1539,  1543,  1544,  1548,  1549,  1550,  1554,  1555,  1559,  1560,
761
    1561,  1562,  1566,  1568,  1570,  1572,  1574,  1578,  1580,  1582,
762
    1584,  1589,  1590,  1591,  1595,  1597,  1602,  1604,  1606,  1608,
763
    1610,  1612,  1617,  1618,  1619,  1623,  1624,  1625,  1629,  1634,
764
    1635,  1639,  1641,  1646,  1648,  1650,  1652,  1654,  1656,  1659,
765
    1665,  1667,  1669,  1671,  1676,  1678,  1681,  1684,  1687,  1689,
766
    1691,  1694,  1698,  1699,  1700,  1701,  1706,  1707,  1708,  1710,
767
    1712,  1714,  1716,  1721,  1722,  1727
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
35.4M
#define YYPACT_NINF (-1066)
907
908
#define yypact_value_is_default(Yyn) \
909
35.4M
  ((Yyn) == YYPACT_NINF)
910
911
662k
#define YYTABLE_NINF (-607)
912
913
#define yytable_value_is_error(Yyn) \
914
662k
  ((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
   -1066,    17,  2334, -1066,  7569,  7569,  7569,  7569,  7569,  7569,
921
    7569,  7569,  7569,  7569,  7569,  7569,  7569,  7569,  7569,  7569,
922
    7569,  7569,  7569,  7569,  7723, -1066, -1066,    44, -1066, -1066,
923
   -1066, -1066, -1066, -1066,   -91,   480,   -86,   -80,  7569,  5721,
924
     -50,    13,    29,    83,    97,   135,  7569,  7569,    56, -1066,
925
   -1066,   146,  7569,   151,   485,   -42,   138, -1066, -1066,   -86,
926
     148,   173,   183,   224, -1066, -1066, -1066, -1066,  9823,   245,
927
     250, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066,
928
     297, 10201, 10201,  7569,   137, -1066,  7569, -1066,  5875,    86,
929
     155,   -32,    87, -1066,   652, -1066, -1066, -1066, -1066, -1066,
930
   -1066,   519, -1066, -1066, -1066, -1066, -1066,   227, -1066,   475,
931
   -1066,   512, -1066,  9333, -1066,   200,   200, -1066,    43,   570,
932
   -1066,   190,   223,   248,   376,   240, -1066,   372,  1102, -1066,
933
   -1066, -1066, -1066,   280,   -86,   249, 10525,   200, 10525, 10525,
934
   10525, 10525,  4645, 10617,  4645,   486,   486,    65,   486,   486,
935
     486,   486,   486,   486,   486,   486,   486,  1326, -1066, -1066,
936
   -1066,  7569, -1066, -1066,  7569, -1066,   105,   312,   438, -1066,
937
   -1066,   433,   -86, -1066,   262,  1508, -1066, -1066,  7569,   144,
938
   -1066, 10525,   514,  7569,  6337,  7569,   146,  7569,  7569, 10525,
939
     447,   451,   461,   593,   168, -1066,   474, -1066, -1066, -1066,
940
   -1066, -1066, -1066, -1066,   -46,   604,   479,   203, -1066,   320,
941
   -1066, -1066,   640,   342, -1066, -1066, -1066, 10201,  7569,  7569,
942
     487,   596,   602,   609,   615, -1066, -1066, -1066, -1066, -1066,
943
   -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066,
944
   -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066,
945
   -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066,
946
   -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066,
947
   -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066,
948
   -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066,
949
   -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066,
950
   -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066,   525,   526,
951
    5875,  5875, -1066,   529,   -86,   480,  7569,  5875,   531,   535,
952
   -1066, -1066,   422,   422,  9383,   267,   186, -1066,  6491, 10201,
953
     365, -1066,  8683,  2488, -1066, -1066,   537,  7569, 10201, 10425,
954
     541, -1066,   543, -1066,     8,   540,   457,     8,    78,  7569,
955
   -1066, -1066,   280, -1066, -1066, -1066, -1066, -1066,   548,  5721,
956
     552,   701,   561,  7569,  7569,  7569,  6645,  7569,  7569,  7569,
957
    7569,  7569,  7569,  7569,  7569,  7569,  7569,  7569,  7569,  7569,
958
    7569,  7569,  7569,  7569,  7569,  7569,  7569,  7569,  7569,  7569,
959
    7569,  7569,   192,  7569, -1066, -1066, -1066,    -3,  4651,  4801,
960
      -1,    -1,  7569,   -86,  6029,  7569,  7569,  7569,  7569,  7569,
961
    7569,  7569,  7569,  7569,  7569,  7569,  7569,  7569, -1066, -1066,
962
   -1066,  7569,  7569,  7569,  7569,  7569,  7569,  7569,  6799,  7723,
963
      35,   -91,   464,   -17,   135,   710,   711,    61,   -86,   173,
964
     183,   245,   250,   713,   715,   718,   723,   728,   729,   733,
965
     736,   737,  6953, -1066,   738,   600, -1066,  8633,  8733,  8783,
966
   -1066, -1066, -1066,   -42, -1066,    -1,    -1,   -42,  7569,  7107,
967
   -1066,   601, -1066, -1066, 10525,  8833,  7569, -1066,   605,  8883,
968
    7569,   603,   611, 10525, 10356,    45,  8933,  8983, -1066, -1066,
969
   -1066,  7569,   146, -1066, -1066,  2642,   702,   599,   -44,   614,
970
     354, -1066,   604, -1066,   -42, -1066,  7569,   712, -1066,   618,
971
   -1066,   217, 10525,   620, -1066,  9033,   619,   659, -1066,   660,
972
     769, -1066,   627, -1066,   629,   630,   297,   635, -1066,   -86,
973
    9083,   636, -1066,   739,   742,   156, -1066, -1066,   225,  8331,
974
     633, -1066, -1066, -1066,   576,   641, -1066,   979, -1066, -1066,
975
   -1066,  5875, 10525,   323,  6183,   806,  5875, -1066, -1066,  8381,
976
   -1066,   748,  7569, -1066,  7569, -1066, -1066, 10574,  9816,  4645,
977
    7569, 10475,  7876,  8031,  8181,  4800,  9950, 10098, 10098, 10249,
978
   10249, 10249, 10249, 10249,  1495,  1495,  1495,  1495,  1161,  1259,
979
     835,   835,   851,   851,    65,    65,    65, -1066,   486,   647,
980
   -1066, -1066, -1066,   648,  7569,   649,   651,   -86,  7569,   649,
981
     651,   -86, -1066,  7569, -1066,   -86,   -86,   654, -1066, 10201,
982
    4645,  4645,  4645,  4645,  4645,  4645,  4645,  4645,  4645,  4645,
983
    4645,  4645,  4645,  4645,  4645, -1066, 10525,  7569,  1872,   653,
984
    1690, -1066, -1066,   -86, -1066, -1066, -1066, -1066,   657, -1066,
985
    1872,   661,  4951, -1066,  7569,  5105, 10525,  6337,  7261,  9570,
986
   -1066,    19,   656, 10525, -1066, -1066, -1066,    71,   658, -1066,
987
   -1066,   740, -1066, -1066, 10525, -1066, 10201,   663,  7569,   665,
988
   -1066, -1066,   297,   706,   667,   297, -1066,   219,   706, -1066,
989
    2026,   831, -1066, -1066, -1066,   671, -1066, -1066, -1066,   765,
990
   -1066, -1066, -1066,   675, -1066,  7569, -1066, -1066,   678, -1066,
991
     679,   684, 10201, 10525,  7569, -1066, -1066,   659,  9133,  9183,
992
    2796,  7876,  7569,  1592,   685,  1592,  8431, -1066,  8482, -1066,
993
    8532, -1066, -1066, -1066,   422, 10525,  7569, -1066, -1066, -1066,
994
   -1066,   659, -1066, -1066, -1066, -1066, -1066,  9233, -1066, -1066,
995
   -1066,   688,   693,  9533,  7569, 10525,   692,  5875, 10201,    15,
996
      18,  5259,   694,   698, -1066,  7415, -1066,   344,   775,   -10,
997
     722, -1066, -1066,   -10, -1066,   716, -1066, -1066, -1066,   297,
998
   -1066, -1066,   725, -1066,   721,   567, -1066, -1066, -1066,   567,
999
   -1066, -1066,   560,   862,   866,   865, -1066, -1066,  2180, -1066,
1000
    7569, -1066, -1066,  9483,   732,   831,  5875,   395,  4645,   706,
1001
    5721,   880,   741,  7876, -1066, -1066, -1066, -1066, -1066, -1066,
1002
   -1066, -1066, -1066, -1066,  1223,   735,   746, -1066,   257, -1066,
1003
    1602, -1066,  1592,   744,   749,   749, -1066,   706,  4490,   747,
1004
    2950,  6337,  7261, 10525,  5875,   752,    21,  9570,  5413, -1066,
1005
   -1066, -1066, -1066,   473, -1066,   -24,   756,   734,   758, -1066,
1006
     761, 10525,   754,   762, -1066,   840, -1066,    71,   763,   770,
1007
   -1066, -1066,   725,   766,   757,   297, -1066, -1066,   879,     9,
1008
     567,   251,   251,   567,   768, -1066,  4645,   771, -1066,   772,
1009
   -1066, -1066, -1066, -1066, -1066,   917,  1774, -1066,   166,   166,
1010
     911, -1066,   626,   921,   923,   915, -1066,   781,   845, -1066,
1011
   -1066,   787,   788,  9583,   789,    25,   790, -1066, -1066, -1066,
1012
    3104,   484,   793,  7569,    -7,   -19, -1066, -1066,   951, -1066,
1013
    7415, -1066,  7569,   957,   297, -1066, -1066, -1066, -1066,   -10,
1014
     802, -1066, -1066,   297, -1066, -1066,  3173, -1066, -1066, -1066,
1015
     257,   874,   873,  1243, -1066,  1175, -1066, -1066, -1066, -1066,
1016
   -1066, -1066, -1066, -1066,   831,   807,  4490,   219,   973, -1066,
1017
   -1066,   953,    33, -1066,   817,   166,   553,   553,   166,   917,
1018
     815,   917,   814, -1066,  5567, -1066,  5413,  3258,   818,   820,
1019
   -1066,  9283, -1066, -1066, -1066,  7569, -1066, 10525,  7569,    22,
1020
   -1066,  3412, -1066, -1066,  1941,  9973,   114, -1066,   918,   200,
1021
    8185, -1066,  2403, -1066, -1066, -1066, -1066, -1066,   919, -1066,
1022
   -1066, -1066, -1066, -1066, -1066,   213, -1066, -1066, -1066, -1066,
1023
   -1066, -1066,   824, -1066, -1066, -1066, -1066,  4490,  4490, 10525,
1024
   10525,   297, -1066,   823, -1066, -1066,   987, -1066,  7884, -1066,
1025
     988,   511, -1066, -1066,  9973,   996,   997,   998,   999,  1000,
1026
   10123,   523, -1066, -1066,  2865, -1066, -1066,   838, -1066,   939,
1027
     848, -1066,   844,  3019,  3566, -1066,  4490,  4490, -1066,   846,
1028
    7569,   843,   855, -1066, -1066,  8034, -1066,   858,   861,   927,
1029
     912,   869,  7569,   864,   961, -1066, -1066,  7569,  7569,   996,
1030
     524, 10123, -1066, -1066,  7569,     6, -1066, -1066,   213,   867,
1031
   -1066, -1066,   868, -1066, 10525, -1066, -1066, -1066, -1066, -1066,
1032
    9673,   297,  9973, 10525, -1066,  1030, -1066,   870, 10525, 10525,
1033
   -1066, -1066, 10525,  7569, -1066, -1066,  3720, -1066, -1066,  3874,
1034
   -1066,  4028, -1066, -1066,  9973,   725, -1066,   876,   853,  7569,
1035
   -1066,  1592, -1066, -1066, -1066,  8582,  1041, -1066, -1066, -1066,
1036
   -1066, -1066, -1066,  1223,  1602,   200, -1066, 10525,   871, -1066,
1037
   -1066, -1066, -1066,  1409, -1066,   977, -1066,   917, -1066, -1066,
1038
   -1066, -1066,   188,   881, -1066, -1066, -1066,  1592, -1066,  4182,
1039
   -1066,   875,    31, -1066, -1066,  7569, -1066, -1066, -1066,  9433,
1040
    4336, -1066, -1066, -1066
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
     491,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1050
       0,     0,     0,     0,     0,   536,   537,    94,    96,    97,
1051
      95,   581,   164,   534,     0,   202,   530,     0,     0,     0,
1052
       0,     0,     0,     0,     0,     0,   558,   558,     0,   504,
1053
     503,     0,   558,     0,     0,     0,   522,   204,   205,   206,
1054
       0,     0,     0,     0,   196,   207,   209,   211,   119,     0,
1055
       0,   545,   546,   547,   553,   548,   549,   550,   551,   552,
1056
       0,     0,     0,     0,     0,   171,     0,   146,   599,   527,
1057
       0,     0,   544,   103,     0,   110,   113,    86,   112,   105,
1058
     106,     0,   198,   107,   108,   109,   500,   256,   152,     0,
1059
     153,   473,   474,     0,   496,   508,   508,   576,     0,   541,
1060
     488,   542,   543,     0,   566,     0,   520,   577,   415,   572,
1061
     578,   478,    94,   522,     0,     0,   495,   508,   628,   629,
1062
     631,   632,   490,   492,   494,   457,   458,   459,   460,   479,
1063
     480,   481,   482,   483,   484,   485,   487,     0,   420,   421,
1064
     174,     0,   522,   206,     0,   523,   202,   203,     0,   200,
1065
     412,   524,   414,   586,   525,     0,   531,   486,     0,     0,
1066
     398,   399,     0,     0,   403,     0,     0,     0,     0,   559,
1067
       0,     0,     0,     0,     0,   144,     0,   146,    90,    93,
1068
      91,   125,   126,    92,   141,     0,     0,     0,   136,     0,
1069
     318,   319,   322,     0,   321,   498,   517,     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
     599,   599,   100,   129,    98,   202,     0,   599,   565,   563,
1080
     567,   564,   436,   438,     0,   614,     0,   539,     0,     0,
1081
       0,   612,     0,     0,    83,    82,     0,     0,     0,   604,
1082
       0,   602,   598,   600,   528,     0,   529,     0,     0,     0,
1083
     583,   516,     0,   104,   114,   497,   194,   199,     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,     0,     0,   165,   509,   505,   505,     0,     0,
1088
       0,     0,   558,     0,     0,     0,     0,     0,     0,     0,
1089
       0,     0,     0,     0,     0,     0,     0,     0,   435,   437,
1090
     505,     0,    33,     3,     4,     6,     7,    46,   491,    13,
1091
      94,     5,    12,   530,    71,   504,   503,    75,    81,    39,
1092
      40,    48,    54,   545,   546,   547,   553,   548,   549,   550,
1093
     551,   552,     0,   306,     0,   129,   311,     0,     0,     0,
1094
     413,   201,   409,     0,   411,     0,     0,     0,   558,     0,
1095
     301,   129,   316,   304,   315,     0,     0,   163,     0,     0,
1096
       0,     0,   404,   408,     0,     0,     0,     0,   158,   159,
1097
     173,     0,     0,   111,   160,     0,     0,     0,   141,     0,
1098
       0,   121,     0,   123,     0,   161,     0,     0,   162,   129,
1099
     184,   561,   635,   129,   633,     0,     0,   218,   505,   220,
1100
     213,   116,     0,    87,     0,     0,   130,     0,    99,     0,
1101
       0,     0,   175,     0,     0,     0,   538,   613,     0,     0,
1102
     561,   611,   540,   610,   472,     0,   151,     0,   148,   145,
1103
     147,   599,   607,   561,     0,   533,   599,   489,   535,     0,
1104
     499,     0,     0,   257,     0,   146,   260,   441,   443,   442,
1105
       0,     0,   477,   439,   440,   444,   447,   445,   446,   463,
1106
     464,   461,   462,   470,   466,   467,   468,   469,   465,   448,
1107
     455,   456,   449,   450,   451,   453,   454,   471,   452,     0,
1108
     187,   188,   505,     0,     0,   554,   584,     0,     0,   555,
1109
     585,     0,   595,     0,   597,   579,   580,     0,   521,     0,
1110
     418,   422,   423,   424,   426,   427,   428,   429,   430,   431,
1111
     432,   433,   425,   434,   493,   309,   314,     0,   130,     0,
1112
       0,   630,   526,   530,   590,   588,   589,   591,     0,   303,
1113
     130,     0,     0,   397,     0,     0,   407,   400,     0,     0,
1114
     169,     0,     0,   505,   143,   176,   142,     0,     0,   122,
1115
     124,   141,   135,   317,   323,   320,   130,     0,   130,     0,
1116
     627,   115,     0,   222,     0,     0,   505,     0,   222,    87,
1117
       0,     0,   532,   101,   102,   562,   533,   616,   617,     0,
1118
     622,   625,   623,     0,   619,     0,   618,   621,     0,   149,
1119
       0,     0,     0,   603,     0,   601,   582,   218,     0,     0,
1120
       0,   476,     0,   268,     0,   268,     0,   518,     0,   519,
1121
       0,   574,   575,   573,   419,   313,     0,   312,   307,   308,
1122
     310,   218,   587,   305,   302,   146,   254,     0,   146,   252,
1123
     154,     0,     0,   402,     0,   405,     0,   599,     0,     0,
1124
     561,     0,   238,   238,   157,   244,   396,   182,   139,     0,
1125
     129,   132,   137,     0,   185,     0,   634,   626,   219,     0,
1126
     505,   325,   221,   335,     0,     0,   279,   290,   291,     0,
1127
     292,   214,   274,     0,   276,   277,   278,   505,     0,   120,
1128
       0,   624,   615,     0,     0,   609,   599,   561,   417,   222,
1129
       0,     0,     0,   475,   368,   369,   370,   364,   363,   362,
1130
     367,   366,   365,   371,   268,     0,   129,   264,   272,   267,
1131
     269,   360,   268,     0,   556,   557,   596,   222,   258,     0,
1132
       0,   403,     0,   406,   599,     0,   561,     0,     0,   146,
1133
     232,   170,   238,     0,   238,     0,   129,     0,   129,   246,
1134
     129,   250,     0,     0,   172,     0,   138,   130,     0,   129,
1135
     134,   166,   223,     0,   356,     0,   325,   275,     0,     0,
1136
       0,     0,     0,     0,     0,   118,   416,     0,   150,     0,
1137
     505,   255,   146,   261,   266,   299,   268,   262,     0,     0,
1138
     190,   273,   286,     0,   288,   289,   361,     0,   510,   505,
1139
     155,     0,     0,   401,     0,   533,     0,   146,   230,   167,
1140
       0,     0,     0,     0,     0,     0,   234,   130,     0,   243,
1141
     130,   245,   130,     0,     0,   146,   140,   131,   128,   130,
1142
       0,   325,   505,     0,   355,   208,   356,   331,   332,   324,
1143
     272,     0,     0,   354,   336,   356,   281,   284,   280,   282,
1144
     283,   285,   325,   620,   608,     0,   259,     0,     0,   265,
1145
     287,     0,     0,   191,   192,     0,     0,     0,     0,   299,
1146
       0,   299,     0,   253,     0,   226,     0,     0,     0,     0,
1147
     236,     0,   146,   146,   235,     0,   247,   251,     0,   180,
1148
     178,     0,   133,   127,   356,     0,     0,   333,     0,   508,
1149
       0,   210,   356,   325,   300,   506,   294,   193,     0,   297,
1150
     293,   295,   296,   298,   506,     0,   506,   325,   146,   228,
1151
     156,   168,     0,   233,   237,   146,   146,   241,   242,   249,
1152
     248,     0,   181,     0,   183,   197,   216,   337,     0,   334,
1153
     505,     0,   373,   327,     0,    94,   279,   290,   291,     0,
1154
       0,     0,   393,   212,   356,   507,   505,     0,   514,     0,
1155
     129,   513,     0,   356,     0,   231,   239,   240,   179,     0,
1156
       0,     0,    75,   338,   349,     0,   340,     0,     0,     0,
1157
     350,     0,     0,   374,     0,   326,   505,     0,     0,     0,
1158
       0,     0,   328,   195,     0,   381,   146,   515,   130,     0,
1159
     146,   410,     0,   146,   217,   215,   339,   341,   342,   343,
1160
       0,     0,     0,   505,   378,   505,   372,     0,   505,   505,
1161
     329,   392,   506,     0,   378,   270,     0,   512,   511,     0,
1162
     229,     0,   345,   346,   348,   344,   351,   375,   383,     0,
1163
     374,   268,   394,   395,   502,   381,   383,   506,   506,   177,
1164
     347,   378,   376,   383,   384,   508,   379,   505,     0,   271,
1165
     382,   189,   501,   383,   380,     0,   375,   299,   377,   505,
1166
     506,   385,     0,   390,   352,   146,   506,   268,   506,     0,
1167
     330,     0,     0,   353,   391,     0,   387,   146,   506,     0,
1168
       0,   386,   389,   388
1169
};
1170
1171
  /* YYPGOTO[NTERM-NUM].  */
1172
static const yytype_int16 yypgoto[] =
1173
{
1174
   -1066, -1066,   -72,  -928,   -97,   -59,  -512, -1066,   -47,  -200,
1175
     275,   533, -1066,   -93,    -2,     1,   962, -1066, -1066, -1066,
1176
    1003, -1066, -1066,  -419, -1066, -1066,   856,   198,  -735,   564,
1177
     883,  -177, -1066,    23, -1066, -1066, -1066, -1066, -1066, -1066,
1178
     391, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066,
1179
   -1066,    28, -1066, -1066, -1066, -1066, -1066, -1066, -1066, -1066,
1180
   -1066,  -502, -1066,  -635,   226, -1066,    91, -1066, -1066,  -699,
1181
   -1066, -1066, -1066,   149, -1066, -1066, -1066, -1066, -1066, -1066,
1182
    -695, -1066,   191, -1066,   258,   134,  -867,  -470,  -347, -1066,
1183
     301, -1066,  -698,  -364, -1066,   187,  -969,     0, -1066, -1066,
1184
   -1066,   934,  -557, -1066,   588, -1066,   587,  -800,   158, -1066,
1185
    -775, -1066, -1066,    10, -1066, -1066, -1066, -1066, -1066, -1066,
1186
   -1066, -1066,  -807,  -799, -1066,     3, -1066, -1065,   -53, -1066,
1187
     -62, -1066, -1066, -1066,    46,    16,   613, -1066,   632, -1066,
1188
     268,   453,   945, -1066,   -66, -1066,    98,     5, -1066,     4,
1189
     141,  -966, -1066,  -114, -1066, -1066,    27, -1066, -1066,    -9,
1190
    -264, -1066,   490,   -54, -1066,   -38,     7,   -39, -1066, -1066,
1191
   -1066, -1066, -1066,   107,   -14, -1066, -1066,   743,  -237,  -262,
1192
     580, -1066, -1066,   530,   288, -1066, -1066, -1066,   460
1193
};
1194
1195
  /* YYDEFGOTO[NTERM-NUM].  */
1196
static const yytype_int16 yydefgoto[] =
1197
{
1198
      -1,     1,   305,   306,   338,   454,     2,   308,   768,   204,
1199
      92,   312,   313,    93,   135,   548,    96,    97,   522,   309,
1200
     769,   499,   206,   527,   770,   869,   207,   771,   772,   208,
1201
     194,   333,   549,   550,   761,   767,   999,  1043,   864,   509,
1202
     510,   602,    99,   974,  1018,   100,   561,   221,   101,   167,
1203
     168,   102,   103,   222,   104,   223,   105,   224,   688,   947,
1204
    1081,   683,   686,   780,   759,  1030,   919,   851,   764,   853,
1205
     106,   857,   858,   859,   860,   750,   107,   108,   109,   110,
1206
     825,   826,   827,   828,   829,   900,   791,   792,   793,   794,
1207
     795,   901,   796,   903,   904,   905,   968,   176,   471,   158,
1208
     455,   472,   473,   209,   210,   213,   214,   874,   948,   949,
1209
     782,  1049,  1085,  1086,  1087,  1088,  1089,  1090,  1186,   950,
1210
     951,   952,   830,   831,  1051,  1052,  1053,  1148,  1135,  1165,
1211
    1166,  1183,  1198,  1188,  1061,  1062,   195,   179,   180,   751,
1212
     481,   482,   170,   643,   111,   112,   113,   114,   115,   137,
1213
     603,  1065,  1104,   396,   981,  1070,  1071,   117,   403,   118,
1214
     172,   345,   177,   119,   120,   121,   122,   190,   123,   124,
1215
     125,   126,   127,   128,   129,   130,   174,   607,   615,   340,
1216
     341,   342,   343,   330,   331,   703,   131,   513,   514
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,   353,   397,    95,   872,   498,   116,   203,   191,   307,
1225
    1024,   690,  1026,   196,   -14,   318,   318,     3,   395,   395,
1226
     495,   173,  1133,   420,   992,    98,   171,   319,   319,   847,
1227
     833,   906,  -224,   166,   866,  -225,   639,    31,   870,  -227,
1228
     395,   211,   353,   320,   320,  1195,   883,    31,   524,   525,
1229
     762,   529,   651,   797,   496,   531,   496,  1041,  1067,   216,
1230
    1072,   215,   182,   169,   855,   198,   -84,   953,   200,  1156,
1231
     978,   314,   600,   353,   612,   160,   955,   350,    31,   923,
1232
     924,   737,  1059,   740,   923,   924,   161,   325,   321,   321,
1233
     677,   175,   351,   743,   679,    95,  1173,   178,   116,   355,
1234
    1014,  1042,   136,   138,   139,   140,   141,   142,   143,   144,
1235
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
1236
     155,   156,   159,   392,   497,   601,   668,   183,   597,   357,
1237
     902,   192,  1059,   393,   216,   -84,   181,   907,   215,   953,
1238
     355,  1004,    91,  1060,   189,   189,   198,   349,   953,   200,
1239
     189,   318,    91,   921,   906,   925,   926,   325,   203,   541,
1240
     175,   994,  1012,   319,   616,   325,  1154,   344,  1006,   993,
1241
      49,    50,   464,  1059,   890,   328,   329,   798,   613,   320,
1242
     201,   324,   202,    91,   332,  1134,   339,   956,   322,   323,
1243
     184,  1171,  1172,   848,   169,   461,  -224,   953,   763,  -225,
1244
     970,   971,   909,  -227,  1002,   953,   185,  1196,  1180,   699,
1245
    1197,  1016,   398,  1064,  1182,   809,   325,   212,   326,   492,
1246
    1190,   193,  1192,   660,   321,    57,    58,  1073,   645,   646,
1247
    -522,   700,  1201,   163,   325,   701,   347,   334,   335,   837,
1248
     702,   132,    28,    29,    30,   328,   329,    49,    50,   785,
1249
     334,   335,   902,   328,   329,   457,  -523,   953,    80,   458,
1250
     186,   558,   459,   318,   175,   325,   953,   132,    28,    29,
1251
      30,    31,   318,   474,   187,   319,   475,  1019,  1020,  1020,
1252
    1023,   479,   483,   484,   319,   486,   487,   898,   875,   710,
1253
    1047,   320,  1068,  1048,   132,    28,    29,    30,   358,   359,
1254
     320,   173,   671,   327,   328,   329,   171,   619,   787,   788,
1255
     165,   162,   188,   166,   528,   877,   512,   515,   476,   878,
1256
     477,  1144,   328,   329,   511,   217,   132,    28,    29,    30,
1257
     197,   547,   132,    28,    29,    30,   321,   116,   786,   605,
1258
     609,  1164,   492,   169,   493,   321,  1145,  -567,  -567,  1164,
1259
     218,   868,   536,   328,   329,   165,  1164,   560,    49,    50,
1260
     219,   787,   788,   617,  1184,   906,  1164,  1185,   352,   164,
1261
     786,  -567,   132,    28,    29,    30,    91,   502,   173,   503,
1262
    -564,  -564,   563,   171,   606,   610,   614,   614,   720,    49,
1263
      50,  -186,  -564,   787,   788,  -186,   789,   400,   401,   787,
1264
     788,   220,    80,   618,  -564,   704,   705,   897,   339,   339,
1265
     957,   958,   958,   961,   530,   339,   162,   399,   173,   465,
1266
     466,   402,   310,   171,   533,   534,   539,   311,   789,   648,
1267
     166,   467,    57,    58,   899,   552,   540,   928,   216,   931,
1268
     163,   933,   215,   468,   325,   553,   541,   559,   535,   644,
1269
     940,   614,   614,   647,   353,   203,  1168,   712,   862,   863,
1270
     169,   567,   568,   569,   571,   572,   573,   574,   575,   576,
1271
     577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
1272
     587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
1273
     211,   598,  1191,   547,   504,   845,   505,  -606,  -606,   116,
1274
     189,  -606,   620,   621,   622,   623,   624,   625,   626,   627,
1275
     628,   629,   630,   631,   632,   633,   507,   314,   508,   634,
1276
     136,   138,   139,   140,   141,   142,   143,   159,   502,   464,
1277
     670,   542,   328,   329,   959,   960,   325,   599,   541,   132,
1278
      28,    29,    30,    31,   889,  -560,   360,   361,   709,  -568,
1279
     636,   116,   355,   318,   393,   132,    28,    29,    30,    31,
1280
     198,   199,   758,   200,   362,   319,   189,   636,   838,  -605,
1281
    -605,   840,   462,  -605,   181,   922,   923,   924,   656,  -561,
1282
    -561,   320,   914,   162,    57,    58,   989,   923,   924,   663,
1283
     165,  -561,   163,   318,   201,  -280,   202,   880,  -202,   162,
1284
      57,    58,   463,  -561,   674,   319,   478,   727,   163,   491,
1285
     318,   729,  1021,  1022,   537,   731,   732,    80,   543,   346,
1286
     348,   320,   319,   488,   328,   329,   321,   489,   132,    28,
1287
      29,    30,   537,    80,   543,   537,   543,   490,   320,    57,
1288
      58,   164,   132,    28,    29,    30,   318,   163,    91,   339,
1289
     494,  1109,   713,   356,   339,   501,   506,   164,   319,   684,
1290
     718,  -293,   719,   975,    91,   516,   321,   165,   721,  -565,
1291
    -565,   517,   920,   778,   320,   746,   783,   518,   749,   198,
1292
     199,  -565,   200,   321,   519,  1094,   786,  1095,    94,  -571,
1293
     520,    95,   318,  -565,   116,   787,   788,  1101,  1101,  1102,
1294
    1130,   521,   726,   526,   319,   523,   728,   165,  -571,   787,
1295
     788,   730,  -570,    98,   551,   966,   555,   556,   547,   321,
1296
     320,   824,   557,   824,   116,   562,   734,  -563,  -563,   564,
1297
     899,   353,   565,  -562,  -562,   735,   474,   566,   474,  -563,
1298
     987,   -43,   -70,   724,   -66,  -562,   -67,  -570,   474,   -68,
1299
     758,  -563,   747,  -569,   -62,   753,   755,  -562,  1001,   -63,
1300
     -65,    49,    50,    51,   -64,   321,   760,   -73,   -69,   637,
1301
     783,   352,    57,    58,   638,   650,   512,   666,   667,   657,
1302
     163,   318,   654,   511,   850,   658,    64,    65,    66,    67,
1303
     669,   212,   676,   319,   678,   681,    94,   682,   685,    95,
1304
     687,   165,   116,   803,   766,    80,   689,   691,   692,   320,
1305
     694,   696,   808,   707,   697,  1037,  1038,   698,   708,   807,
1306
     813,    98,   714,   717,   723,   725,  -592,   784,  -594,   733,
1307
     824,   738,   742,   891,   636,   765,   547,   773,   547,   744,
1308
     496,   775,   116,   777,   116,   779,   781,   800,  -569,   801,
1309
     802,  1074,   843,   353,   321,   339,   804,   805,  1076,  1077,
1310
     942,   806,   832,   861,   841,   846,   954,   842,  -358,   844,
1311
     852,   918,   946,   943,   854,   865,   814,   815,   816,   817,
1312
     818,   819,   820,   821,   822,   823,   944,   387,   388,   389,
1313
     390,   391,   871,   392,   824,  1054,   867,   881,   886,   875,
1314
     876,   882,   883,   393,   339,   389,   390,   391,   888,   392,
1315
      80,   892,   395,   895,   929,   936,   880,   893,   547,   393,
1316
     896,   873,   908,   910,   116,  1000,  -593,   915,  1069,  1136,
1317
     927,   934,   930,  1139,   783,   932,  1141,   945,   884,   483,
1318
     913,   935,   339,   938,   939,   941,  1046,   962,   967,   973,
1319
     964,   963,   978,   946,   760,  1009,   976,   165,   977,   979,
1320
     165,   980,   790,   983,   547,   995,   984,   985,   986,   990,
1321
     116,   998,   814,   815,   816,   817,   818,   819,   820,   821,
1322
     822,   823,  1003,    49,  1010,   547,  1013,  1015,  1017,  1084,
1323
     975,   116,  1025,  1027,  1033,  1096,  1034,  1050,  1066,   547,
1324
    1075,  1079,   946,  1080,  1092,   116,    80,  1029,  1189,   918,
1325
     946,  1069,  1097,   -75,   -54,   -55,  1098,  1106,  1107,  1115,
1326
    1200,   991,  1108,  1110,  -522,  1113,  1084,  1120,   861,  1121,
1327
     997,   965,  1078,  1162,  1118,   547,   547,  1119,  1122,  1091,
1328
    1125,   116,   116,  1124,  1140,  1138,  1149,  1151,  1143,  1177,
1329
     982,  1175,  1179,  1194,   165,  1161,   354,   205,  1187,   693,
1330
     790,   500,   946,  1146,   790,   937,   672,   774,   395,   485,
1331
     353,   946,   547,   916,   547,   547,  1091,  1031,   116,   996,
1332
     116,   116,   894,  1005,  1008,  1160,   972,   969,    49,    50,
1333
     879,   456,   673,  1039,   675,  1117,  1040,  1126,   352,    57,
1334
      58,  1174,  1169,   790,  1007,   664,  1100,   163,   653,   912,
1335
     752,   460,   783,    64,    65,    66,    67,  1131,   404,   405,
1336
     406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
1337
     416,   417,    80,   741,   547,  1137,   715,   547,   776,   547,
1338
     116,     0,   611,   116,     0,   116,  1163,     0,     0,   824,
1339
     165,     0,     0,     0,  1163,   790,   790,   790,   790,     0,
1340
     814,   815,   816,   817,   818,   819,   820,   821,   822,   823,
1341
       0,  1163,     0,   790,   790,     0,     0,     0,  1114,     0,
1342
       0,     0,     0,     0,     0,   824,     0,   547,     0,     0,
1343
    1123,  1093,     0,   116,    80,  1128,  1129,     0,   547,     0,
1344
       0,     0,  1132,     0,   116,     0,     0,  1105,     0,   165,
1345
     384,   385,   386,   387,   388,   389,   390,   391,   165,   392,
1346
       0,  1170,     0,     0,     0,   790,     0,     0,     0,   393,
1347
       0,  1155,     0,     0,     0,     0,     0,  1127,     0,     0,
1348
       0,     0,   790,     0,     0,     0,     0,  1167,     0,     0,
1349
     790,   790,   790,   790,     0,     0,   418,   419,     0,  -561,
1350
    -561,     0,     0,     0,  1147,     0,  1150,     0,     0,  1152,
1351
    1153,  -561,     0,     0,     0,     0,     0,     0,   942,     0,
1352
       0,     0,     0,  -561,     0,   790,  -358,     0,     0,     0,
1353
       0,   943,     0,  1199,   814,   815,   816,   817,   818,   819,
1354
     820,   821,   822,   823,   944,     0,     0,     0,  1176,   385,
1355
     386,   387,   388,   389,   390,   391,   165,   392,     0,     0,
1356
    1181,     0,     0,   165,     0,     0,     0,   393,    80,   422,
1357
       0,   423,   424,   425,   426,   230,   231,   232,   427,   428,
1358
       0,    11,   814,   815,   816,   817,   818,   819,   820,   821,
1359
     822,   823,  -357,     0,  -359,  1011,     0,     0,     0,     0,
1360
     165,     0,   814,   815,   816,   817,   818,   819,   820,   821,
1361
     822,   823,     0,     0,     0,     0,    80,     0,    12,    13,
1362
       0,     0,     0,    14,   235,    15,    16,    17,    18,    19,
1363
      20,    21,    22,    23,     0,   429,   165,   237,   238,    25,
1364
      26,   430,    28,    29,    30,    31,     0,     0,    33,     0,
1365
       0,   431,   432,   433,   244,   245,   246,   247,   248,   249,
1366
     250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
1367
     260,   434,   262,   263,   264,   435,   436,   267,   268,   269,
1368
     270,   271,   272,   273,   274,   437,   276,   277,   278,   279,
1369
     280,     0,     0,     0,   438,   282,   283,   439,   440,     0,
1370
     286,   287,   288,   289,   290,   291,   292,   441,   442,   295,
1371
     443,   444,   445,   446,   447,   448,   449,   450,   451,    80,
1372
      81,    82,     0,     0,     0,     0,     0,     0,     0,     0,
1373
       0,    84,     0,     0,     0,     0,     0,   452,     0,     0,
1374
       0,     0,     0,    86,   453,     0,     0,    88,    89,    90,
1375
      91,   422,     0,   423,   424,   425,   426,   230,   231,   232,
1376
     427,   428,     0,    11,     0,     0,     0,     0,   814,   815,
1377
     816,   817,   818,   819,   820,   821,   822,   823,     0,  -607,
1378
    -607,  -607,  -607,   383,   384,   385,   386,   387,   388,   389,
1379
     390,   391,     0,   392,     0,     0,     0,     0,     0,     0,
1380
      12,    13,    80,   393,     0,    14,   235,    15,    16,    17,
1381
      18,    19,    20,    21,    22,    23,     0,   429,     0,   237,
1382
     238,    25,    26,   430,    28,    29,    30,    31,     0,  1178,
1383
      33,     0,     0,   431,   432,   433,   244,   245,   246,   247,
1384
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
1385
     258,   259,   260,   434,   262,   263,   264,   435,   436,   267,
1386
     268,   269,   270,   271,   272,   273,   274,   437,   276,   277,
1387
     278,   279,   280,     0,     0,     0,   438,   282,   283,   439,
1388
     440,     0,   286,   287,   288,   289,   290,   291,   292,   441,
1389
     442,   295,   443,   444,   445,   446,   447,   448,   449,   450,
1390
     451,    80,    81,    82,     0,     0,     0,     0,     0,     0,
1391
       0,     0,     0,    84,     0,     0,     0,     0,     0,   469,
1392
       0,     0,     0,     0,     0,    86,   470,     0,     0,    88,
1393
      89,    90,    91,   422,     0,   423,   424,   425,   426,   230,
1394
     231,   232,   427,   428,     0,    11,     0,     0,     0,     0,
1395
       0,   814,   815,   816,   817,   818,   819,   820,   821,   822,
1396
     823,   814,   815,   816,   817,   818,   819,   820,   821,   822,
1397
     823,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1398
       0,     0,    12,    13,     0,    80,     0,    14,   235,    15,
1399
      16,    17,    18,    19,    20,    21,    22,    23,     0,   429,
1400
       0,   237,   238,    25,    26,   430,    28,    29,    30,    31,
1401
    -263,     0,    33,     0,     0,   431,   432,   433,   244,   245,
1402
     246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
1403
     256,   257,   258,   259,   260,   434,   262,   263,   264,   435,
1404
     436,   267,   268,   269,   270,   271,   272,   273,   274,   437,
1405
     276,   277,   278,   279,   280,     0,     0,     0,   438,   282,
1406
     283,   439,   440,     0,   286,   287,   288,   289,   290,   291,
1407
     292,   441,   442,   295,   443,   444,   445,   446,   447,   448,
1408
     449,   450,   451,    80,    81,    82,     0,     0,     0,     0,
1409
       0,     0,     0,     0,     0,    84,     0,     0,     0,     0,
1410
       0,   736,     0,     0,     0,     0,     0,    86,   739,     0,
1411
       0,    88,    89,    90,    91,   422,     0,   423,   424,   425,
1412
     426,   230,   231,   232,   427,   428,     0,    11,     0,     0,
1413
       0,     0,     0,   814,   815,   816,   817,   818,   819,   820,
1414
     821,   822,   823,     0,     0,     0,     0,     0,     0,     0,
1415
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1416
       0,     0,     0,     0,    12,    13,     0,    80,     0,    14,
1417
     235,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1418
       0,   429,     0,   237,   238,    25,    26,   430,    28,    29,
1419
      30,    31,  -130,     0,    33,     0,     0,   431,   432,   433,
1420
     244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
1421
     254,   255,   256,   257,   258,   259,   260,   434,   262,   263,
1422
     264,   435,   436,   267,   268,   269,   270,   271,   272,   273,
1423
     274,   437,   276,   277,   278,   279,   280,     0,     0,     0,
1424
     438,   282,   283,   439,   440,     0,   286,   287,   288,   289,
1425
     290,   291,   292,   441,   442,   295,   443,   444,   445,   446,
1426
     447,   448,   449,   450,   451,    80,    81,    82,     0,     4,
1427
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1428
       0,    11,     0,   736,   942,     0,     0,     0,     0,    86,
1429
       0,     0,  -358,    88,    89,    90,    91,   943,     0,     0,
1430
     814,   815,   816,   817,   818,   819,   820,   821,   822,   823,
1431
     944,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1432
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1433
      20,    21,    22,    23,    80,    24,     0,     0,     0,    25,
1434
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1435
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1436
      41,  1045,    42,     0,    43,     0,     0,    44,     0,     0,
1437
       0,    45,    46,    47,    48,    49,    50,    51,    52,    53,
1438
       0,     0,    54,     0,    55,    56,    57,    58,     0,     0,
1439
       0,     0,     0,     0,    59,     0,    60,    61,    62,    63,
1440
      64,    65,    66,    67,     0,     0,    68,    69,    70,     0,
1441
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1442
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1443
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1444
       0,     0,    85,    86,     0,    87,   799,    88,    89,    90,
1445
      91,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1446
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1447
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1448
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1449
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1450
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1451
      38,    39,    40,     0,    41,     0,    42,     0,    43,     0,
1452
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1453
      50,    51,    52,    53,     0,     0,    54,     0,    55,    56,
1454
      57,    58,     0,     0,     0,     0,     0,     0,    59,     0,
1455
      60,    61,    62,    63,    64,    65,    66,    67,     0,     0,
1456
      68,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1457
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1458
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1459
       0,     0,     0,     0,     0,     0,    85,    86,     0,    87,
1460
     885,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1461
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1462
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1463
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1464
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1465
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1466
      35,    36,    37,     0,    38,    39,    40,     0,    41,     0,
1467
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1468
      46,    47,    48,    49,    50,    51,    52,    53,     0,     0,
1469
      54,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1470
       0,     0,    59,     0,    60,    61,    62,    63,    64,    65,
1471
      66,    67,     0,     0,    68,    69,    70,     0,    71,    72,
1472
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1473
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1474
       9,    10,     0,    11,     0,     0,   942,     0,     0,     0,
1475
      85,    86,     0,    87,  -358,    88,    89,    90,    91,   943,
1476
       0,     0,   814,   815,   816,   817,   818,   819,   820,   821,
1477
     822,   823,   944,     0,     0,     0,     0,     0,     0,     0,
1478
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1479
      18,    19,    20,    21,    22,    23,    80,    24,     0,     0,
1480
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1481
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1482
      40,     0,    41,  1063,    42,     0,    43,     0,     0,    44,
1483
       0,     0,     0,    45,    46,    47,    48,    49,    50,     0,
1484
      52,    53,     0,     0,     0,     0,    55,    56,    57,    58,
1485
       0,     0,     0,     0,     0,     0,    59,     0,    60,    61,
1486
      62,   545,    64,    65,    66,    67,     0,     0,     0,    69,
1487
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1488
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1489
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1490
       0,     0,     0,     0,    85,    86,     0,    87,   546,    88,
1491
      89,    90,    91,     0,     0,     0,     0,     0,     0,     0,
1492
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1493
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1494
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1495
       0,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1496
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1497
      37,     0,    38,    39,    40,     0,    41,     0,    42,     0,
1498
      43,     0,     0,    44,     0,     0,     0,    45,    46,    47,
1499
      48,    49,    50,     0,    52,    53,     0,     0,     0,     0,
1500
      55,    56,    57,    58,     0,     0,     0,     0,     0,     0,
1501
      59,     0,    60,    61,    62,   545,    64,    65,    66,    67,
1502
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1503
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1504
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1505
       0,    11,     0,     0,     0,     0,     0,     0,    85,    86,
1506
       0,    87,   665,    88,    89,    90,    91,     0,     0,     0,
1507
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1508
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1509
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1510
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1511
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1512
       0,    34,    35,    36,    37,   812,    38,    39,    40,     0,
1513
      41,     0,    42,     0,    43,     0,     0,    44,     0,     0,
1514
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1515
       0,     0,     0,     0,    55,    56,    57,    58,     0,     0,
1516
       0,     0,     0,     0,    59,     0,    60,    61,    62,   545,
1517
      64,    65,    66,    67,     0,     0,     0,    69,    70,     0,
1518
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1519
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1520
       0,    84,     9,    10,     0,    11,     0,     0,   942,     0,
1521
       0,     0,    85,    86,     0,    87,  -358,    88,    89,    90,
1522
      91,   943,     0,     0,   814,   815,   816,   817,   818,   819,
1523
     820,   821,   822,   823,   944,     0,     0,     0,     0,     0,
1524
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1525
      16,    17,    18,    19,    20,    21,    22,    23,    80,    24,
1526
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1527
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1528
      38,    39,    40,   911,    41,  1103,    42,     0,    43,     0,
1529
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1530
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1531
      57,    58,     0,     0,     0,     0,     0,     0,    59,     0,
1532
      60,    61,    62,   545,    64,    65,    66,    67,     0,     0,
1533
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1534
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1535
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1536
       0,     0,   942,     0,     0,     0,    85,    86,     0,    87,
1537
    -358,    88,    89,    90,    91,   943,     0,     0,   814,   815,
1538
     816,   817,   818,   819,   820,   821,   822,   823,   944,     0,
1539
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1540
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1541
      22,    23,    80,    24,     0,     0,     0,    25,    26,    27,
1542
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1543
      35,    36,    37,     0,    38,    39,    40,     0,    41,  1111,
1544
      42,     0,    43,   988,     0,    44,     0,     0,     0,    45,
1545
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1546
       0,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1547
       0,     0,    59,     0,    60,    61,    62,   545,    64,    65,
1548
      66,    67,     0,     0,     0,    69,    70,     0,    71,    72,
1549
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1550
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1551
       9,    10,     0,    11,     0,     0,   942,     0,     0,     0,
1552
      85,    86,     0,    87,  -358,    88,    89,    90,    91,     0,
1553
       0,     0,   814,   815,   816,   817,   818,   819,   820,   821,
1554
     822,   823,   944,     0,     0,     0,     0,     0,     0,     0,
1555
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1556
      18,    19,    20,    21,    22,    23,    80,    24,     0,     0,
1557
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1558
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1559
      40,     0,    41,     0,    42,  1032,    43,     0,     0,    44,
1560
       0,     0,     0,    45,    46,    47,    48,    49,    50,     0,
1561
      52,    53,     0,     0,     0,     0,    55,    56,    57,    58,
1562
       0,     0,     0,     0,     0,     0,    59,     0,    60,    61,
1563
      62,   545,    64,    65,    66,    67,     0,     0,     0,    69,
1564
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1565
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1566
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1567
       0,     0,     0,     0,    85,    86,     0,    87,     0,    88,
1568
      89,    90,    91,     0,     0,     0,     0,     0,     0,     0,
1569
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1570
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1571
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1572
       0,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1573
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1574
      37,     0,    38,    39,    40,     0,    41,     0,    42,     0,
1575
      43,     0,     0,    44,     0,     0,     0,    45,    46,    47,
1576
      48,    49,    50,     0,    52,    53,     0,     0,     0,     0,
1577
      55,    56,    57,    58,     0,     0,     0,     0,     0,     0,
1578
      59,     0,    60,    61,    62,   545,    64,    65,    66,    67,
1579
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1580
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1581
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1582
       0,    11,     0,     0,     0,     0,     0,     0,    85,    86,
1583
       0,    87,  1044,    88,    89,    90,    91,     0,     0,     0,
1584
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1585
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1586
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1587
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1588
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1589
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1590
      41,  1112,    42,     0,    43,     0,     0,    44,     0,     0,
1591
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1592
       0,     0,     0,     0,    55,    56,    57,    58,     0,     0,
1593
       0,     0,     0,     0,    59,     0,    60,    61,    62,   545,
1594
      64,    65,    66,    67,     0,     0,     0,    69,    70,     0,
1595
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1596
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1597
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1598
       0,     0,    85,    86,     0,    87,     0,    88,    89,    90,
1599
      91,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1600
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1601
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1602
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1603
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1604
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1605
      38,    39,    40,     0,    41,     0,    42,     0,    43,     0,
1606
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1607
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1608
      57,    58,     0,     0,     0,     0,     0,     0,    59,     0,
1609
      60,    61,    62,   545,    64,    65,    66,    67,     0,     0,
1610
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1611
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1612
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1613
       0,     0,     0,     0,     0,     0,    85,    86,     0,    87,
1614
    1157,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1615
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1616
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1617
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1618
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1619
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1620
      35,    36,    37,     0,    38,    39,    40,     0,    41,     0,
1621
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1622
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1623
       0,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1624
       0,     0,    59,     0,    60,    61,    62,   545,    64,    65,
1625
      66,    67,     0,     0,     0,    69,    70,     0,    71,    72,
1626
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1627
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1628
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1629
      85,    86,     0,    87,  1158,    88,    89,    90,    91,     0,
1630
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1631
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1632
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1633
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1634
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1635
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1636
      40,     0,    41,     0,    42,     0,    43,     0,     0,    44,
1637
       0,     0,     0,    45,    46,    47,    48,    49,    50,     0,
1638
      52,    53,     0,     0,     0,     0,    55,    56,    57,    58,
1639
       0,     0,     0,     0,     0,     0,    59,     0,    60,    61,
1640
      62,   545,    64,    65,    66,    67,     0,     0,     0,    69,
1641
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1642
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1643
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1644
       0,     0,     0,     0,    85,    86,     0,    87,  1159,    88,
1645
      89,    90,    91,     0,     0,     0,     0,     0,     0,     0,
1646
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1647
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1648
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1649
       0,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1650
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1651
      37,     0,    38,    39,    40,     0,    41,     0,    42,     0,
1652
      43,     0,     0,    44,     0,     0,     0,    45,    46,    47,
1653
      48,    49,    50,     0,    52,    53,     0,     0,     0,     0,
1654
      55,    56,    57,    58,     0,     0,     0,     0,     0,     0,
1655
      59,     0,    60,    61,    62,   545,    64,    65,    66,    67,
1656
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1657
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1658
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1659
       0,    11,     0,     0,     0,     0,     0,     0,    85,    86,
1660
       0,    87,  1193,    88,    89,    90,    91,     0,     0,     0,
1661
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1662
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1663
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1664
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1665
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1666
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1667
      41,     0,    42,     0,    43,     0,     0,    44,     0,     0,
1668
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1669
       0,     0,     0,     0,    55,    56,    57,    58,     0,     0,
1670
       0,     0,     0,     0,    59,     0,    60,    61,    62,   545,
1671
      64,    65,    66,    67,     0,     0,     0,    69,    70,     0,
1672
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1673
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1674
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1675
       0,     0,    85,    86,     0,    87,  1203,    88,    89,    90,
1676
      91,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1677
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1678
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1679
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1680
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1681
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1682
      38,    39,    40,     0,    41,     0,    42,     0,    43,     0,
1683
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1684
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1685
      57,    58,     0,     0,     0,     0,     0,     0,    59,     0,
1686
      60,    61,    62,   545,    64,    65,    66,    67,     0,     0,
1687
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1688
      77,    78,    79,    80,    81,    82,    83,     0,     0,     0,
1689
       0,     0,     0,     0,   225,    84,   226,   227,   228,   229,
1690
     230,   231,   232,   233,   234,     0,    85,    86,     0,    87,
1691
       0,    88,    89,    90,    91,   366,     0,   367,   368,   369,
1692
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
1693
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
1694
     390,   391,     0,   392,     0,     0,     0,     0,     0,   235,
1695
       0,     0,     0,   393,     0,     0,     0,     0,     0,     0,
1696
     236,     0,   237,   238,     0,     0,   239,     0,     0,     0,
1697
      31,     0,     0,     0,     0,     0,   241,   242,   243,   244,
1698
     245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1699
     255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
1700
     265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
1701
     275,   276,   277,   278,   279,   280,     0,     0,     0,   281,
1702
     282,   283,   284,   285,     0,   286,   287,   288,   289,   290,
1703
     291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
1704
     301,   302,   303,   304,   225,     0,   226,   227,   228,   229,
1705
     230,   231,   232,   233,   234,     0,     0,     0,     0,     0,
1706
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1707
     604,     0,     0,     0,     0,    91,   371,   372,   373,   374,
1708
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
1709
     385,   386,   387,   388,   389,   390,   391,     0,   392,   235,
1710
       0,     0,     0,     0,     0,     0,     0,     0,   393,     0,
1711
     236,     0,   237,   238,     0,     0,   239,     0,     0,     0,
1712
      31,     0,     0,     0,     0,     0,   241,   242,   243,   244,
1713
     245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1714
     255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
1715
     265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
1716
     275,   276,   277,   278,   279,   280,     0,     0,     0,   281,
1717
     282,   283,   284,   285,     0,   286,   287,   288,   289,   290,
1718
     291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
1719
     301,   302,   303,   304,     4,     0,     5,     6,     7,     8,
1720
       0,     0,     0,     9,    10,     0,    11,     0,     0,     0,
1721
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1722
     608,     0,   745,     0,     0,    91,     0,     0,     0,     0,
1723
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1724
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1725
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1726
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1727
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1728
       0,    38,    39,    40,     0,    41,     0,    42,     0,    43,
1729
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1730
      49,    50,     0,    52,    53,     0,     0,     0,     0,    55,
1731
      56,     0,     0,     0,     0,     0,     0,     0,     0,   134,
1732
       0,    60,    61,    62,     0,     0,     0,     0,     0,     0,
1733
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1734
      76,    77,    78,    79,    80,    81,    82,    83,     4,     0,
1735
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1736
      11,     0,     0,     0,     0,     0,     0,    85,    86,     0,
1737
      87,     0,    88,    89,    90,    91,   748,     0,     0,     0,
1738
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1739
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1740
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1741
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1742
      27,    28,    29,    30,    31,    32,     0,    33,     0,     0,
1743
      34,    35,    36,    37,     0,    38,    39,    40,     0,    41,
1744
       0,    42,     0,    43,     0,     0,    44,     0,     0,     0,
1745
      45,    46,    47,    48,    49,    50,     0,    52,    53,     0,
1746
       0,     0,     0,    55,    56,     0,     0,     0,     0,     0,
1747
       0,     0,     0,   134,     0,    60,    61,    62,     0,     0,
1748
       0,     0,     0,     0,     0,     0,    69,    70,     0,    71,
1749
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1750
      82,    83,     4,     0,     5,     6,     7,     8,     0,     0,
1751
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1752
       0,    85,    86,     0,    87,     0,    88,    89,    90,    91,
1753
     849,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1754
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1755
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1756
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1757
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1758
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1759
      39,    40,     0,    41,     0,    42,     0,    43,     0,     0,
1760
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1761
       0,    52,    53,     0,     0,     0,     0,    55,    56,     0,
1762
       0,     0,     0,     0,     0,     0,     0,   134,     0,    60,
1763
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1764
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1765
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1766
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1767
       0,     0,     0,     0,     0,    85,    86,     0,    87,     0,
1768
      88,    89,    90,    91,   917,     0,     0,     0,     0,     0,
1769
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1770
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1771
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1772
      23,     0,    24,     0,     0,     0,    25,    26,    27,    28,
1773
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1774
      36,    37,     0,    38,    39,    40,     0,    41,     0,    42,
1775
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1776
      47,    48,    49,    50,     0,    52,    53,     0,     0,     0,
1777
       0,    55,    56,     0,     0,     0,     0,     0,     0,     0,
1778
       0,   134,     0,    60,    61,    62,     0,     0,     0,     0,
1779
       0,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1780
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1781
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1782
      10,     0,    11,     0,     0,     0,     0,     0,     0,    85,
1783
      86,     0,    87,     0,    88,    89,    90,    91,  1028,     0,
1784
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1785
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1786
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1787
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1788
      25,    26,    27,    28,    29,    30,    31,    32,     0,    33,
1789
       0,     0,    34,    35,    36,    37,     0,    38,    39,    40,
1790
       0,    41,     0,    42,     0,    43,     0,     0,    44,     0,
1791
       0,     0,    45,    46,    47,    48,    49,    50,     0,    52,
1792
      53,     0,     0,     0,     0,    55,    56,     0,     0,     0,
1793
       0,     0,     0,     0,     0,   134,     0,    60,    61,    62,
1794
       0,     0,     0,     0,     0,     0,     0,     0,    69,    70,
1795
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1796
      80,    81,    82,    83,     4,     0,     5,     6,     7,     8,
1797
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1798
       0,     0,     0,    85,    86,     0,    87,     0,    88,    89,
1799
      90,    91,     0,     0,     0,     0,     0,     0,     0,     0,
1800
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1801
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1802
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1803
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1804
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1805
       0,    38,    39,    40,     0,    41,     0,    42,     0,    43,
1806
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1807
      49,    50,     0,    52,    53,     0,     0,     0,     0,    55,
1808
      56,     0,     0,     0,     0,     0,     0,     0,     0,   134,
1809
       0,    60,    61,    62,     0,     0,     0,     0,     0,     0,
1810
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1811
      76,    77,    78,    79,    80,    81,    82,    83,     4,     0,
1812
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1813
      11,     0,     0,     0,     0,     0,     0,    85,    86,     0,
1814
      87,     0,    88,    89,    90,    91,     0,     0,     0,     0,
1815
       0,     0,   334,   335,     0,     0,     0,     0,     0,     0,
1816
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1817
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1818
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1819
     132,    28,    29,    30,    31,     0,     0,    33,     0,     0,
1820
      34,    35,    36,     0,     0,     0,     0,     0,     0,     0,
1821
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1822
      45,     0,     0,     0,    49,    50,     0,     0,     0,     0,
1823
       0,     0,     0,     0,   133,     0,     0,     0,     0,     0,
1824
       0,     0,     0,   134,     0,     0,    61,    62,     0,     0,
1825
       0,     0,     0,     0,     0,     0,   336,    70,     0,    71,
1826
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1827
      82,     0,     4,     0,     5,     6,     7,     8,     0,     0,
1828
      84,     9,    10,     0,    11,     0,   337,     0,     0,     0,
1829
       0,     0,    86,     0,     0,     0,    88,    89,    90,    91,
1830
       0,     0,     0,     0,     0,     0,   334,   335,     0,     0,
1831
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1832
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1833
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1834
       0,     0,    25,    26,   132,    28,    29,    30,    31,     0,
1835
       0,    33,     0,     0,    34,    35,    36,     0,     0,     0,
1836
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1837
       0,     0,     0,     0,    45,     0,     0,     0,    49,    50,
1838
       0,     0,     0,     0,     0,     0,     0,     0,   133,     0,
1839
       0,     0,     0,     0,     0,     0,     0,   134,     0,     0,
1840
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1841
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1842
      78,    79,    80,    81,    82,     0,     4,     0,     5,     6,
1843
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1844
       0,     0,     0,     0,     0,     0,    86,     0,     0,     0,
1845
      88,    89,    90,    91,     0,     0,     0,     0,     0,     0,
1846
     334,   335,     0,     0,     0,     0,     0,     0,     0,     0,
1847
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1848
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1849
      23,     0,    24,     0,     0,     0,    25,    26,   132,    28,
1850
      29,    30,    31,     0,     0,    33,     0,     0,    34,    35,
1851
      36,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1852
       0,     0,     0,     0,     0,     0,     0,     0,    45,     0,
1853
       0,     0,    49,    50,     0,     0,     0,     0,     0,     0,
1854
       0,     0,   133,     0,     0,     0,     0,     0,     0,     0,
1855
       0,   134,     0,     0,    61,    62,     0,     0,     0,     0,
1856
       0,     0,     0,     0,   711,    70,     0,    71,    72,    73,
1857
      74,    75,    76,    77,    78,    79,    80,    81,    82,     0,
1858
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1859
      10,     0,    11,     0,     0,     0,     0,     0,     0,     0,
1860
      86,     0,     0,     0,    88,    89,    90,    91,     0,     0,
1861
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1862
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1863
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1864
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1865
      25,    26,   132,    28,    29,    30,    31,     0,     0,    33,
1866
       0,     0,    34,    35,    36,     0,     0,     0,     0,     0,
1867
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1868
       0,     0,    45,     0,     0,     0,    49,    50,     0,     0,
1869
       0,     0,     0,     0,     0,     0,   133,     0,     0,     0,
1870
       0,     0,     0,     0,     0,   134,     0,     0,    61,    62,
1871
       0,     0,     0,     0,     0,     0,     0,     0,    69,    70,
1872
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1873
      80,    81,    82,   480,     4,     0,     5,     6,     7,     8,
1874
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1875
       0,     0,     0,     0,    86,     0,     0,     0,    88,    89,
1876
      90,    91,     0,     0,     0,     0,     0,     0,     0,     0,
1877
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1878
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1879
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1880
      24,     0,     0,     0,    25,    26,   132,    28,    29,    30,
1881
      31,     0,     0,    33,   538,     0,    34,    35,    36,     0,
1882
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1883
       0,     0,     0,     0,     0,     0,    45,     0,     0,     0,
1884
      49,    50,     0,     0,     0,     0,     0,     0,     0,     0,
1885
     133,     0,     0,     0,     0,     0,     0,     0,     0,   134,
1886
       0,     0,    61,    62,     0,     0,     0,     0,     0,     0,
1887
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1888
      76,    77,    78,    79,    80,    81,    82,     0,     4,     0,
1889
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1890
      11,     0,     0,     0,     0,     0,     0,     0,    86,     0,
1891
       0,     0,    88,    89,    90,    91,   570,     0,     0,     0,
1892
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1893
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1894
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1895
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1896
     132,    28,    29,    30,    31,     0,     0,    33,     0,     0,
1897
      34,    35,    36,     0,     0,     0,     0,     0,     0,     0,
1898
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1899
      45,     0,     0,     0,    49,    50,     0,     0,     0,     0,
1900
       0,     0,     0,     0,   133,     0,     0,     0,     0,     0,
1901
       0,     0,     0,   134,     0,     0,    61,    62,     0,     0,
1902
       0,     0,     0,     0,     0,     0,    69,    70,     0,    71,
1903
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1904
      82,     0,     4,     0,     5,     6,     7,     8,     0,     0,
1905
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1906
       0,     0,    86,     0,     0,     0,    88,    89,    90,    91,
1907
     -47,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1908
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1909
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1910
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1911
       0,     0,    25,    26,   132,    28,    29,    30,    31,     0,
1912
       0,    33,     0,     0,    34,    35,    36,     0,     0,     0,
1913
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1914
       0,     0,     0,     0,    45,     0,     0,     0,    49,    50,
1915
       0,     0,     0,     0,     0,     0,     0,     0,   133,     0,
1916
       0,     0,     0,     0,     0,     0,     0,   134,     0,     0,
1917
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1918
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1919
      78,    79,    80,    81,    82,     0,     4,     0,     5,     6,
1920
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1921
       0,     0,     0,     0,     0,     0,    86,     0,     0,     0,
1922
      88,    89,    90,    91,     0,     0,     0,     0,     0,     0,
1923
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1924
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1925
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1926
      23,     0,    24,     0,     0,     0,    25,    26,   132,    28,
1927
      29,    30,    31,     0,     0,    33,     0,     0,    34,    35,
1928
      36,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1929
       0,     0,     0,     0,     0,     0,     0,     0,    45,     0,
1930
       0,     0,    49,    50,     0,     0,     0,     0,     0,     0,
1931
       0,     0,   133,     0,     0,     0,     0,     0,     0,     0,
1932
       0,   134,     0,     0,    61,    62,     0,     0,     0,     0,
1933
       0,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1934
      74,    75,    76,    77,    78,    79,    80,    81,    82,     0,
1935
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1936
      10,     0,    11,     0,     0,     0,     0,     0,     0,     0,
1937
      86,   635,     0,     0,    88,    89,    90,    91,     0,     0,
1938
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1939
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1940
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1941
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1942
      25,    26,   132,    28,    29,    30,    31,     0,     0,    33,
1943
       0,     0,    34,    35,    36,     0,     0,     0,     0,     0,
1944
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1945
       0,     0,    45,     0,     0,     0,    49,    50,     0,     0,
1946
       0,     0,     0,     0,     0,     0,   133,     0,     0,     0,
1947
       0,     0,     0,     0,     0,   134,     0,     0,    61,    62,
1948
       0,     0,     0,     0,     0,     0,     0,     0,    69,    70,
1949
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1950
      80,    81,    82,     0,     4,     0,     5,     6,     7,     8,
1951
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1952
       0,     0,     0,     0,    86,   649,     0,     0,    88,    89,
1953
      90,    91,     0,     0,     0,     0,     0,     0,     0,     0,
1954
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1955
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1956
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1957
      24,     0,     0,     0,    25,    26,   132,    28,    29,    30,
1958
      31,     0,     0,    33,     0,     0,    34,    35,    36,     0,
1959
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1960
       0,     0,     0,     0,     0,     0,    45,     0,     0,     0,
1961
      49,    50,     0,     0,     0,     0,     0,     0,     0,     0,
1962
     133,     0,     0,     0,     0,     0,     0,     0,     0,   134,
1963
       0,     0,    61,    62,     0,     0,     0,     0,     0,     0,
1964
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1965
      76,    77,    78,    79,    80,    81,    82,   754,     4,     0,
1966
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1967
      11,     0,     0,     0,     0,     0,     0,     0,    86,     0,
1968
       0,     0,    88,    89,    90,    91,     0,     0,     0,     0,
1969
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1970
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1971
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1972
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1973
     132,    28,    29,    30,    31,     0,     0,    33,     0,     0,
1974
      34,    35,    36,     0,     0,     0,     0,     0,     0,     0,
1975
       0,     0,     0,     0,     0,     0,     0,     0,     0,   856,
1976
      45,     0,     0,     0,    49,    50,     0,     0,     0,     0,
1977
       0,     0,     0,     0,   133,     0,     0,     0,     0,     0,
1978
       0,     0,     0,   134,     0,     0,    61,    62,     0,     0,
1979
       0,     0,     0,     0,     0,     0,    69,    70,     0,    71,
1980
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1981
      82,     0,     4,     0,     5,     6,     7,     8,     0,     0,
1982
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1983
       0,     0,    86,     0,     0,     0,    88,    89,    90,    91,
1984
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1985
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1986
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1987
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1988
       0,     0,    25,    26,   132,    28,    29,    30,    31,     0,
1989
       0,    33,     0,     0,    34,    35,    36,     0,     0,     0,
1990
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1991
       0,     0,     0,     0,    45,     0,     0,     0,    49,    50,
1992
       0,     0,     0,     0,     0,     0,     0,     0,   133,     0,
1993
       0,     0,     0,     0,     0,     0,     0,   134,     0,     0,
1994
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1995
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1996
      78,    79,    80,    81,    82,     0,     4,     0,     5,     6,
1997
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1998
       0,     0,     0,     0,     0,     0,    86,     0,     0,     0,
1999
      88,    89,    90,    91,     0,     0,     0,     0,     0,     0,
2000
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2001
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
2002
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
2003
      23,     0,    24,     0,     0,     0,    25,    26,   132,    28,
2004
      29,    30,    31,     0,     0,    33,     0,     0,    34,    35,
2005
      36,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2006
       0,     0,     0,     0,     0,     0,     0,     0,    45,     0,
2007
       0,     0,    49,    50,     0,     0,     0,     0,     0,     0,
2008
       0,     0,   133,     0,     0,     0,     0,     0,     0,     0,
2009
       0,   134,     0,     0,    61,    62,     0,     0,     0,     0,
2010
       0,     0,     0,     0,    69,    70,     0,    71,    72,    73,
2011
      74,    75,    76,    77,    78,    79,    80,    81,    82,     0,
2012
       0,     0,     0,     0,     0,     0,     0,   225,    84,   226,
2013
     227,   228,   229,   230,   231,   232,   233,   234,     0,     0,
2014
     157,     0,     0,     0,    88,    89,    90,    91,   367,   368,
2015
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
2016
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
2017
     389,   390,   391,     0,   392,     0,     0,     0,     0,     0,
2018
       0,     0,   235,     0,   393,     0,     0,     0,     0,     0,
2019
       0,     0,     0,   236,     0,   237,   238,     0,     0,   430,
2020
      28,    29,    30,     0,     0,     0,     0,     0,     0,   241,
2021
     242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
2022
     252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
2023
     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
2024
     272,   273,   274,  1082,   276,   277,   278,   279,   280,     0,
2025
       0,     0,   281,   282,   283,   284,   285,     0,   286,   287,
2026
     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
2027
     298,   299,   300,   301,   302,   303,   304,   225,     0,   226,
2028
     227,   228,   229,   230,   231,   232,   233,   234,     0,     0,
2029
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2030
       0,     0,     0,     0,  1083,   369,   370,   371,   372,   373,
2031
     374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
2032
     384,   385,   386,   387,   388,   389,   390,   391,     0,   392,
2033
       0,     0,   235,     0,     0,     0,     0,     0,     0,   393,
2034
       0,     0,     0,   236,     0,   237,   238,     0,     0,   430,
2035
      28,    29,    30,     0,     0,     0,     0,     0,     0,   241,
2036
     242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
2037
     252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
2038
     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
2039
     272,   273,   274,  1082,   276,   277,   278,   279,   280,     0,
2040
       0,     0,   281,   282,   283,   284,   285,     0,   286,   287,
2041
     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
2042
     298,   299,   300,   301,   302,   303,   304,     0,   225,     0,
2043
     226,   227,   228,   229,   230,   231,   232,   233,   234,     0,
2044
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2045
       0,     0,     0,     0,  1116,   785,   370,   371,   372,   373,
2046
     374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
2047
     384,   385,   386,   387,   388,   389,   390,   391,     0,   392,
2048
       0,     0,     0,   235,     0,     0,     0,     0,     0,   393,
2049
       0,     0,     0,     0,   236,     0,   237,   238,     0,     0,
2050
    1055,    28,    29,    30,     0,     0,     0,     0,     0,     0,
2051
     241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
2052
     251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
2053
     261,   262,   263,   264,   265,   266,   267,   268,   269,   270,
2054
     271,   272,   273,   274,  1056,   276,   277,   278,   279,   280,
2055
       0,     0,     0,   281,   282,   283,   284,   285,     0,   286,
2056
     287,   288,   289,   290,   291,   292,   293,  1057,  1058,   296,
2057
     297,   298,   299,   300,   301,   302,   303,   304,     0,     0,
2058
     363,   364,   365,     0,     0,     0,     0,     0,     0,     0,
2059
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2060
       0,   366,   789,   367,   368,   369,   370,   371,   372,   373,
2061
     374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
2062
     384,   385,   386,   387,   388,   389,   390,   391,     0,   392,
2063
     363,   364,   365,     0,     0,     0,     0,     0,     0,   393,
2064
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2065
       0,   366,     0,   367,   368,   369,   370,   371,   372,   373,
2066
     374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
2067
     384,   385,   386,   387,   388,   389,   390,   391,     0,   392,
2068
     363,   364,   365,     0,     0,     0,     0,     0,     0,   393,
2069
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2070
       0,   366,     0,   367,   368,   369,   370,   371,   372,   373,
2071
     374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
2072
     384,   385,   386,   387,   388,   389,   390,   391,     0,   392,
2073
       0,   363,   364,   365,     0,     0,     0,     0,     0,   393,
2074
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2075
       0,   706,   366,     0,   367,   368,   369,   370,   371,   372,
2076
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2077
     383,   384,   385,   386,   387,   388,   389,   390,   391,     0,
2078
     392,   363,   364,   365,     0,     0,     0,     0,     0,     0,
2079
     393,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2080
       0,   716,   366,     0,   367,   368,   369,   370,   371,   372,
2081
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2082
     383,   384,   385,   386,   387,   388,   389,   390,   391,     0,
2083
     392,   363,   364,   365,     0,     0,     0,     0,     0,     0,
2084
     393,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2085
       0,   834,   366,     0,   367,   368,   369,   370,   371,   372,
2086
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2087
     383,   384,   385,   386,   387,   388,   389,   390,   391,     0,
2088
     392,     0,   363,   364,   365,     0,     0,     0,     0,     0,
2089
     393,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2090
       0,     0,   835,   366,     0,   367,   368,   369,   370,   371,
2091
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2092
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2093
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2094
       0,   393,     0,     0,     0,     0,     0,     0,     0,     0,
2095
       0,     0,   836,   366,     0,   367,   368,   369,   370,   371,
2096
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2097
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2098
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2099
       0,   393,     0,     0,     0,     0,     0,     0,     0,     0,
2100
       0,  1134,     0,   366,     0,   367,   368,   369,   370,   371,
2101
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2102
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2103
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2104
       0,   393,     0,     0,     0,     0,     0,   640,     0,     0,
2105
       0,   544,     0,   366,     0,   367,   368,   369,   370,   371,
2106
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2107
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2108
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2109
       0,   393,     0,     0,     0,     0,     0,     0,     0,     0,
2110
       0,   544,     0,   366,     0,   367,   368,   369,   370,   371,
2111
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2112
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2113
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2114
       0,   393,     0,     0,     0,     0,     0,     0,     0,     0,
2115
       0,   641,     0,   366,     0,   367,   368,   369,   370,   371,
2116
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2117
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2118
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2119
       0,   393,     0,     0,     0,     0,     0,     0,     0,     0,
2120
       0,   642,     0,   366,     0,   367,   368,   369,   370,   371,
2121
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2122
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2123
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2124
       0,   393,     0,     0,     0,     0,     0,     0,     0,     0,
2125
       0,   652,     0,   366,     0,   367,   368,   369,   370,   371,
2126
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2127
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2128
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2129
       0,   393,     0,     0,     0,     0,     0,     0,     0,     0,
2130
       0,   655,     0,   366,     0,   367,   368,   369,   370,   371,
2131
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2132
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2133
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2134
       0,   393,     0,     0,     0,     0,     0,     0,     0,     0,
2135
       0,   661,     0,   366,     0,   367,   368,   369,   370,   371,
2136
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2137
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2138
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2139
       0,   393,     0,     0,     0,     0,     0,     0,     0,     0,
2140
       0,   662,     0,   366,     0,   367,   368,   369,   370,   371,
2141
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2142
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2143
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2144
       0,   393,     0,     0,     0,     0,     0,     0,     0,     0,
2145
       0,   680,     0,   366,     0,   367,   368,   369,   370,   371,
2146
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2147
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2148
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2149
       0,   393,     0,     0,     0,     0,     0,     0,     0,     0,
2150
       0,   695,     0,   366,     0,   367,   368,   369,   370,   371,
2151
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2152
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2153
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2154
       0,   393,     0,     0,     0,     0,     0,     0,     0,     0,
2155
       0,   810,     0,   366,  1035,   367,   368,   369,   370,   371,
2156
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2157
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2158
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2159
       0,   393,     0,     0,     0,     0,     0,     0,     0,     0,
2160
       0,   811,     0,   366,     0,   367,   368,   369,   370,   371,
2161
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2162
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2163
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2164
       0,   393,     0,     0,     0,     0,     0,     0,     0,     0,
2165
       0,   839,     0,   366,     0,   367,   368,   369,   370,   371,
2166
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2167
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2168
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2169
       0,   393,     0,     0,     0,     0,     0,     0,     0,  1036,
2170
       0,     0,     0,   366,     0,   367,   368,   369,   370,   371,
2171
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2172
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2173
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2174
       0,   393,     0,     0,     0,     0,     0,     0,     0,   394,
2175
       0,     0,     0,   366,     0,   367,   368,   369,   370,   371,
2176
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2177
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2178
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2179
       0,   393,     0,     0,     0,     0,     0,     0,     0,   532,
2180
       0,     0,     0,   366,     0,   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,   390,   391,
2183
       0,   392,   363,   364,   365,     0,     0,     0,     0,     0,
2184
       0,   393,     0,     0,     0,     0,     0,   334,   335,  1202,
2185
       0,     0,     0,   366,     0,   367,   368,   369,   370,   371,
2186
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2187
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2188
       0,   392,     0,     0,     0,   132,    28,    29,    30,    31,
2189
       0,   393,    33,     0,     0,     0,   315,     0,   887,     0,
2190
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2191
       0,     0,     0,     0,     0,     0,   225,     0,   226,   227,
2192
     228,   229,   230,   231,   232,   233,   234,     0,     0,   162,
2193
       0,     0,     0,     0,     0,     0,     0,     0,   134,     0,
2194
       0,     0,     0,     0,     0,     0,     0,  -408,     0,     0,
2195
       0,   756,    70,     0,    71,    72,    73,    74,    75,    76,
2196
      77,    78,    79,     0,     0,     0,     0,     0,     0,     0,
2197
       0,   235,     0,     0,     0,     0,     0,     0,     0,     0,
2198
       0,     0,   236,     0,   237,   238,     0,   316,  1142,     0,
2199
       0,   757,     0,    90,    91,     0,     0,  -405,   241,   242,
2200
     243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
2201
     253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
2202
     263,   264,   265,   266,   267,   268,   269,   270,   271,   272,
2203
     273,   274,   814,   815,   816,   817,   818,   819,   820,   821,
2204
     822,   823,   282,   283,   284,   285,     0,   286,   287,   288,
2205
     289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
2206
     299,   300,   301,   302,   303,   304,   225,   365,   226,   227,
2207
     228,   229,   230,   231,   232,   233,   234,     0,     0,     0,
2208
       0,     0,     0,     0,     0,     0,   366,     0,   367,   368,
2209
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
2210
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
2211
     389,   390,   391,     0,   392,     0,     0,     0,     0,     0,
2212
       0,   235,     0,     0,   393,     0,     0,     0,     0,     0,
2213
       0,     0,   236,     0,   237,   238,     0,     0,   239,     0,
2214
       0,   240,     0,     0,     0,     0,     0,     0,   241,   242,
2215
     243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
2216
     253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
2217
     263,   264,   265,   266,   267,   268,   269,   270,   271,   272,
2218
     273,   274,   275,   276,   277,   278,   279,   280,     0,     0,
2219
       0,   281,   282,   283,   284,   285,     0,   286,   287,   288,
2220
     289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
2221
     299,   300,   301,   302,   303,   304,   225,     0,   226,   227,
2222
     228,   229,   230,   231,   232,   233,   234,   372,   373,   374,
2223
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2224
     385,   386,   387,   388,   389,   390,   391,     0,   392,     0,
2225
       0,     0,     0,     0,     0,     0,     0,     0,   393,     0,
2226
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2227
       0,   235,     0,     0,     0,     0,     0,     0,     0,     0,
2228
       0,     0,   236,     0,   237,   238,     0,     0,   239,     0,
2229
       0,     0,     0,     0,     0,     0,     0,     0,   241,   242,
2230
     243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
2231
     253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
2232
     263,   264,   265,   266,   267,   268,   269,   270,   271,   272,
2233
     273,   274,   275,   276,   277,   278,   279,   280,     0,     0,
2234
       0,   281,   282,   283,   284,   285,     0,   286,   287,   288,
2235
     289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
2236
     299,   300,   301,   302,   303,   304,   225,     0,   226,   227,
2237
     228,   229,   230,   231,   232,   233,   234,   374,   375,   376,
2238
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2239
     387,   388,   389,   390,   391,     0,   392,     0,     0,     0,
2240
       0,     0,     0,     0,     0,     0,   393,     0,     0,     0,
2241
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2242
       0,   235,     0,     0,     0,     0,     0,     0,     0,     0,
2243
       0,     0,   236,     0,   237,   238,     0,     0,  1099,     0,
2244
       0,     0,     0,     0,     0,     0,     0,     0,   241,   242,
2245
     243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
2246
     253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
2247
     263,   264,   265,   266,   267,   268,   269,   270,   271,   272,
2248
     273,   274,   275,   276,   277,   278,   279,   280,     0,     0,
2249
       0,   281,   282,   283,   284,   285,     0,   286,   287,   288,
2250
     289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
2251
     299,   300,   301,   302,   303,   304,   132,    28,    29,    30,
2252
      31,     0,     0,    33,     0,     0,     0,   315,  -607,  -607,
2253
    -607,  -607,  -607,   379,   380,   381,   382,   383,   384,   385,
2254
     386,   387,   388,   389,   390,   391,     0,   392,     0,     0,
2255
       0,     0,     0,     0,     0,     0,     0,   393,     0,     0,
2256
     162,     0,     0,     0,     0,     0,     0,     0,     0,   134,
2257
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2258
       0,     0,     0,    70,     0,    71,    72,    73,    74,    75,
2259
      76,    77,    78,    79,     0,     0,     0,     0,     0,     0,
2260
       0,     0,     0,     0,     0,   363,   364,   365,     0,     0,
2261
       0,     0,     0,     0,     0,     0,     0,     0,   316,     0,
2262
       0,     0,   317,     0,    90,    91,   366,     0,   367,   368,
2263
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
2264
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
2265
     389,   390,   391,     0,   392,     0,     0,     0,     0,     0,
2266
       0,     0,     0,     0,   393,     0,     0,     0,     0,     0,
2267
       0,     0,     0,     0,   363,   364,   365,     0,     0,   554,
2268
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2269
       0,     0,     0,     0,     0,   366,   659,   367,   368,   369,
2270
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2271
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2272
     390,   391,     0,   392,   363,   364,   365,     0,     0,     0,
2273
       0,     0,     0,   393,     0,     0,     0,     0,     0,     0,
2274
       0,     0,     0,     0,     0,   366,   722,   367,   368,   369,
2275
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2276
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2277
     390,   391,     0,   392,   363,   364,   365,     0,     0,     0,
2278
       0,     0,     0,   393,     0,     0,     0,     0,     0,     0,
2279
       0,     0,     0,     0,     0,   366,     0,   367,   368,   369,
2280
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2281
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2282
     390,   391,     0,   392,   364,   365,     0,     0,     0,     0,
2283
       0,     0,     0,   393,     0,     0,     0,     0,     0,     0,
2284
       0,     0,     0,     0,   366,     0,   367,   368,   369,   370,
2285
     371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
2286
     381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
2287
     391,   421,   392,     0,     0,     0,     0,     0,     0,     0,
2288
       0,     0,   393,     0,     0,     0,     0,   366,     0,   367,
2289
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2290
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2291
     388,   389,   390,   391,     0,   392,     0,     0,     0,     0,
2292
       0,     0,     0,     0,     0,   393
2293
};
2294
2295
static const yytype_int16 yycheck[] =
2296
{
2297
       2,    94,   116,     2,   779,   205,     2,    54,    47,    68,
2298
     979,   523,   981,    52,    31,    81,    82,     0,   115,   116,
2299
     197,    35,    16,   137,    31,     2,    35,    81,    82,    14,
2300
     725,   830,    14,    35,   769,    14,   455,    79,   773,    14,
2301
     137,    55,   135,    81,    82,    14,    37,    79,   310,   311,
2302
      31,   315,   471,   688,   100,   317,   100,    35,  1024,    59,
2303
    1026,    56,    39,    35,   763,    75,    31,   874,    78,  1134,
2304
      37,    80,    75,   166,    75,    31,   876,    91,    79,   103,
2305
     104,   638,  1010,   640,   103,   104,   177,    79,    81,    82,
2306
     509,   177,    92,   650,   513,    94,  1161,   177,    94,    94,
2307
     967,    79,     4,     5,     6,     7,     8,     9,    10,    11,
2308
      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
2309
      22,    23,    24,    58,   170,   128,   170,   177,   392,   101,
2310
     828,    75,  1060,    68,   134,   100,    38,   832,   133,   946,
2311
     135,   941,   184,  1010,    46,    47,    75,   179,   955,    78,
2312
      52,   217,   184,   852,   953,   854,   180,    79,   205,    81,
2313
     177,   180,   962,   217,   401,    79,  1132,    81,   943,   176,
2314
     109,   110,   172,  1101,   809,   167,   168,   689,   179,   217,
2315
     109,    83,   111,   184,    86,   179,    88,   178,    81,    82,
2316
     177,  1157,  1158,   178,   166,   167,   178,  1004,   179,   178,
2317
     898,   899,   837,   178,   939,  1012,   177,   176,  1177,    53,
2318
     179,   178,   169,  1013,  1180,   717,    79,    79,    81,   174,
2319
    1186,    75,  1188,   178,   217,   120,   121,  1027,   465,   466,
2320
     169,    75,  1198,   128,    79,    79,    81,    37,    38,   741,
2321
      84,    75,    76,    77,    78,   167,   168,   109,   110,    30,
2322
      37,    38,   950,   167,   168,   157,   169,  1064,   153,   161,
2323
     177,   183,   164,   329,   177,    79,  1073,    75,    76,    77,
2324
      78,    79,   338,   175,   177,   329,   178,   975,   976,   977,
2325
     978,   183,   184,   185,   338,   187,   188,    30,   174,   551,
2326
     176,   329,    79,   179,    75,    76,    77,    78,    71,    72,
2327
     338,   315,   502,   166,   167,   168,   315,   404,   142,   143,
2328
      35,   119,   177,   315,   314,   785,   218,   219,   174,   789,
2329
     176,  1120,   167,   168,   217,   177,    75,    76,    77,    78,
2330
     179,   333,    75,    76,    77,    78,   329,   333,   119,   398,
2331
     399,  1148,   174,   315,   176,   338,  1121,   157,   158,  1156,
2332
     177,   770,   166,   167,   168,    80,  1163,   352,   109,   110,
2333
     177,   142,   143,   402,   176,  1164,  1173,   179,   119,   177,
2334
     119,   181,    75,    76,    77,    78,   184,   174,   392,   176,
2335
     157,   158,   359,   392,   398,   399,   400,   401,   565,   109,
2336
     110,   174,   169,   142,   143,   178,   177,   157,   158,   142,
2337
     143,   177,   153,   403,   181,   180,   181,   826,   310,   311,
2338
     880,   881,   882,   883,   316,   317,   119,   169,   432,   157,
2339
     158,   181,   177,   432,   157,   158,   328,   177,   177,   468,
2340
     432,   169,   120,   121,   177,   337,   329,   856,   438,   858,
2341
     128,   860,   437,   181,    79,   338,    81,   349,   181,   463,
2342
     869,   465,   466,   467,   547,   502,  1151,   554,   114,   115,
2343
     432,   363,   364,   365,   366,   367,   368,   369,   370,   371,
2344
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2345
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2346
     504,   393,  1187,   495,   174,   757,   176,   174,   175,   495,
2347
     402,   178,   404,   405,   406,   407,   408,   409,   410,   411,
2348
     412,   413,   414,   415,   416,   417,   174,   526,   176,   421,
2349
     422,   423,   424,   425,   426,   427,   428,   429,   174,   529,
2350
     176,   166,   167,   168,   881,   882,    79,   396,    81,    75,
2351
      76,    77,    78,    79,   806,   169,    71,    72,   547,   177,
2352
     452,   547,   547,   619,    68,    75,    76,    77,    78,    79,
2353
      75,    76,   659,    78,    89,   619,   468,   469,   745,   174,
2354
     175,   748,   134,   178,   476,   102,   103,   104,   480,   157,
2355
     158,   619,   844,   119,   120,   121,   102,   103,   104,   491,
2356
     315,   169,   128,   659,   109,    35,   111,    37,   134,   119,
2357
     120,   121,   169,   181,   506,   659,    92,   607,   128,    16,
2358
     676,   611,   976,   977,   326,   615,   616,   153,   330,    89,
2359
      90,   659,   676,   176,   167,   168,   619,   176,    75,    76,
2360
      77,    78,   344,   153,   346,   347,   348,   176,   676,   120,
2361
     121,   177,    75,    76,    77,    78,   712,   128,   184,   551,
2362
     176,  1070,   554,   134,   556,   176,    16,   177,   712,   518,
2363
     562,    35,   564,    37,   184,   178,   659,   392,   570,   157,
2364
     158,    75,   849,   682,   712,   652,   685,    75,   655,    75,
2365
      76,   169,    78,   676,    75,   174,   119,   176,   690,   177,
2366
      75,   690,   758,   181,   690,   142,   143,   174,   174,   176,
2367
     176,   176,   604,   174,   758,   179,   608,   432,   177,   142,
2368
     143,   613,   177,   690,   177,   892,   175,   174,   720,   712,
2369
     758,   723,   182,   725,   720,   177,   619,   157,   158,   177,
2370
     177,   824,    31,   157,   158,   637,   638,   176,   640,   169,
2371
     917,    31,    31,   602,    31,   169,    31,   177,   650,    31,
2372
     847,   181,   654,   177,    31,   657,   658,   181,   935,    31,
2373
      31,   109,   110,   111,    31,   758,   659,    31,    31,    31,
2374
     779,   119,   120,   121,   174,   174,   678,    75,   179,   176,
2375
     128,   847,   177,   676,   761,   174,   134,   135,   136,   137,
2376
     176,    79,   174,   847,   174,   176,   798,   138,   138,   798,
2377
      31,   526,   798,   705,   663,   153,   179,   178,   178,   847,
2378
     175,   175,   714,   180,    75,   992,   993,    75,   177,   712,
2379
     722,   798,    16,    75,   177,   177,   177,   686,   177,   175,
2380
     832,   178,   175,   810,   736,   179,   838,   179,   840,   178,
2381
     100,   178,   838,   178,   840,   139,   179,    16,   177,    84,
2382
     175,  1028,   754,   946,   847,   757,   178,   178,  1035,  1036,
2383
     103,   177,   177,   765,   176,   758,   875,   174,   111,   177,
2384
     176,   848,   874,   116,   176,   100,   119,   120,   121,   122,
2385
     123,   124,   125,   126,   127,   128,   129,    52,    53,    54,
2386
      55,    56,   176,    58,   896,  1009,   174,    35,   800,   174,
2387
     179,    35,    37,    68,   806,    54,    55,    56,   176,    58,
2388
     153,    31,  1009,   178,   180,    75,    37,   176,   920,    68,
2389
     174,   780,   178,   176,   920,   934,   177,   175,  1025,  1106,
2390
     174,   177,   174,  1110,   943,   174,  1113,   180,   797,   841,
2391
     842,   179,   844,   180,   174,   179,  1005,   179,    31,    38,
2392
     178,   180,    37,   955,   847,   951,    35,   682,    35,   178,
2393
     685,   116,   687,   176,   966,    14,   178,   178,   178,   176,
2394
     966,    14,   119,   120,   121,   122,   123,   124,   125,   126,
2395
     127,   128,   180,   109,   111,   987,   179,    14,   171,  1048,
2396
      37,   987,   177,   179,   176,  1054,   176,    79,    79,  1001,
2397
     176,   178,  1004,    16,    16,  1001,   153,   984,  1185,   986,
2398
    1012,  1108,    16,    16,    16,    16,    16,   179,    79,   176,
2399
    1197,   923,   174,   179,   169,   179,  1085,   100,   930,   117,
2400
     932,   890,  1041,   180,   176,  1037,  1038,   176,   169,  1048,
2401
      79,  1037,  1038,   179,   176,   178,    16,   177,  1120,   178,
2402
     909,  1165,    75,   178,   779,   179,    94,    54,   177,   526,
2403
     785,   205,  1064,  1122,   789,   867,   502,   676,  1165,   186,
2404
    1163,  1073,  1074,   847,  1076,  1077,  1085,   986,  1074,   930,
2405
    1076,  1077,   824,   942,   950,  1144,   899,   896,   109,   110,
2406
     789,   157,   504,   995,   507,  1085,   998,  1094,   119,   120,
2407
     121,  1163,  1155,   828,   946,   492,  1060,   128,   476,   841,
2408
     657,   166,  1121,   134,   135,   136,   137,  1101,    16,    17,
2409
      18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
2410
      28,    29,   153,   643,  1136,  1108,   556,  1139,   678,  1141,
2411
    1136,    -1,   399,  1139,    -1,  1141,  1148,    -1,    -1,  1151,
2412
     875,    -1,    -1,    -1,  1156,   880,   881,   882,   883,    -1,
2413
     119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2414
      -1,  1173,    -1,   898,   899,    -1,    -1,    -1,  1080,    -1,
2415
      -1,    -1,    -1,    -1,    -1,  1187,    -1,  1189,    -1,    -1,
2416
    1092,  1050,    -1,  1189,   153,  1097,  1098,    -1,  1200,    -1,
2417
      -1,    -1,  1104,    -1,  1200,    -1,    -1,  1066,    -1,   934,
2418
      49,    50,    51,    52,    53,    54,    55,    56,   943,    58,
2419
      -1,   180,    -1,    -1,    -1,   950,    -1,    -1,    -1,    68,
2420
      -1,  1133,    -1,    -1,    -1,    -1,    -1,  1096,    -1,    -1,
2421
      -1,    -1,   967,    -1,    -1,    -1,    -1,  1149,    -1,    -1,
2422
     975,   976,   977,   978,    -1,    -1,   154,   155,    -1,   157,
2423
     158,    -1,    -1,    -1,  1123,    -1,  1125,    -1,    -1,  1128,
2424
    1129,   169,    -1,    -1,    -1,    -1,    -1,    -1,   103,    -1,
2425
      -1,    -1,    -1,   181,    -1,  1010,   111,    -1,    -1,    -1,
2426
      -1,   116,    -1,  1195,   119,   120,   121,   122,   123,   124,
2427
     125,   126,   127,   128,   129,    -1,    -1,    -1,  1167,    50,
2428
      51,    52,    53,    54,    55,    56,  1041,    58,    -1,    -1,
2429
    1179,    -1,    -1,  1048,    -1,    -1,    -1,    68,   153,     3,
2430
      -1,     5,     6,     7,     8,     9,    10,    11,    12,    13,
2431
      -1,    15,   119,   120,   121,   122,   123,   124,   125,   126,
2432
     127,   128,   109,    -1,   111,   180,    -1,    -1,    -1,    -1,
2433
    1085,    -1,   119,   120,   121,   122,   123,   124,   125,   126,
2434
     127,   128,    -1,    -1,    -1,    -1,   153,    -1,    52,    53,
2435
      -1,    -1,    -1,    57,    58,    59,    60,    61,    62,    63,
2436
      64,    65,    66,    67,    -1,    69,  1121,    71,    72,    73,
2437
      74,    75,    76,    77,    78,    79,    -1,    -1,    82,    -1,
2438
      -1,    85,    86,    87,    88,    89,    90,    91,    92,    93,
2439
      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
2440
     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
2441
     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
2442
     124,    -1,    -1,    -1,   128,   129,   130,   131,   132,    -1,
2443
     134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
2444
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2445
     154,   155,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2446
      -1,   165,    -1,    -1,    -1,    -1,    -1,   171,    -1,    -1,
2447
      -1,    -1,    -1,   177,   178,    -1,    -1,   181,   182,   183,
2448
     184,     3,    -1,     5,     6,     7,     8,     9,    10,    11,
2449
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,   119,   120,
2450
     121,   122,   123,   124,   125,   126,   127,   128,    -1,    44,
2451
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
2452
      55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,
2453
      52,    53,   153,    68,    -1,    57,    58,    59,    60,    61,
2454
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    71,
2455
      72,    73,    74,    75,    76,    77,    78,    79,    -1,   180,
2456
      82,    -1,    -1,    85,    86,    87,    88,    89,    90,    91,
2457
      92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
2458
     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
2459
     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
2460
     122,   123,   124,    -1,    -1,    -1,   128,   129,   130,   131,
2461
     132,    -1,   134,   135,   136,   137,   138,   139,   140,   141,
2462
     142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
2463
     152,   153,   154,   155,    -1,    -1,    -1,    -1,    -1,    -1,
2464
      -1,    -1,    -1,   165,    -1,    -1,    -1,    -1,    -1,   171,
2465
      -1,    -1,    -1,    -1,    -1,   177,   178,    -1,    -1,   181,
2466
     182,   183,   184,     3,    -1,     5,     6,     7,     8,     9,
2467
      10,    11,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2468
      -1,   119,   120,   121,   122,   123,   124,   125,   126,   127,
2469
     128,   119,   120,   121,   122,   123,   124,   125,   126,   127,
2470
     128,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2471
      -1,    -1,    52,    53,    -1,   153,    -1,    57,    58,    59,
2472
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2473
      -1,    71,    72,    73,    74,    75,    76,    77,    78,    79,
2474
     178,    -1,    82,    -1,    -1,    85,    86,    87,    88,    89,
2475
      90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
2476
     100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
2477
     110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
2478
     120,   121,   122,   123,   124,    -1,    -1,    -1,   128,   129,
2479
     130,   131,   132,    -1,   134,   135,   136,   137,   138,   139,
2480
     140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
2481
     150,   151,   152,   153,   154,   155,    -1,    -1,    -1,    -1,
2482
      -1,    -1,    -1,    -1,    -1,   165,    -1,    -1,    -1,    -1,
2483
      -1,   171,    -1,    -1,    -1,    -1,    -1,   177,   178,    -1,
2484
      -1,   181,   182,   183,   184,     3,    -1,     5,     6,     7,
2485
       8,     9,    10,    11,    12,    13,    -1,    15,    -1,    -1,
2486
      -1,    -1,    -1,   119,   120,   121,   122,   123,   124,   125,
2487
     126,   127,   128,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2488
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2489
      -1,    -1,    -1,    -1,    52,    53,    -1,   153,    -1,    57,
2490
      58,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2491
      -1,    69,    -1,    71,    72,    73,    74,    75,    76,    77,
2492
      78,    79,   178,    -1,    82,    -1,    -1,    85,    86,    87,
2493
      88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
2494
      98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
2495
     108,   109,   110,   111,   112,   113,   114,   115,   116,   117,
2496
     118,   119,   120,   121,   122,   123,   124,    -1,    -1,    -1,
2497
     128,   129,   130,   131,   132,    -1,   134,   135,   136,   137,
2498
     138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
2499
     148,   149,   150,   151,   152,   153,   154,   155,    -1,     3,
2500
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2501
      -1,    15,    -1,   171,   103,    -1,    -1,    -1,    -1,   177,
2502
      -1,    -1,   111,   181,   182,   183,   184,   116,    -1,    -1,
2503
     119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2504
     129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2505
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2506
      64,    65,    66,    67,   153,    69,    -1,    -1,    -1,    73,
2507
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2508
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2509
      94,   180,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
2510
      -1,   105,   106,   107,   108,   109,   110,   111,   112,   113,
2511
      -1,    -1,   116,    -1,   118,   119,   120,   121,    -1,    -1,
2512
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
2513
     134,   135,   136,   137,    -1,    -1,   140,   141,   142,    -1,
2514
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2515
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2516
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2517
      -1,    -1,   176,   177,    -1,   179,   180,   181,   182,   183,
2518
     184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2519
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2520
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2521
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2522
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2523
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2524
      90,    91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,
2525
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2526
     110,   111,   112,   113,    -1,    -1,   116,    -1,   118,   119,
2527
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2528
     130,   131,   132,   133,   134,   135,   136,   137,    -1,    -1,
2529
     140,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2530
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2531
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2532
      -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,
2533
     180,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2534
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2535
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2536
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2537
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2538
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2539
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    -1,
2540
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2541
     106,   107,   108,   109,   110,   111,   112,   113,    -1,    -1,
2542
     116,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2543
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2544
     136,   137,    -1,    -1,   140,   141,   142,    -1,   144,   145,
2545
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2546
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2547
      12,    13,    -1,    15,    -1,    -1,   103,    -1,    -1,    -1,
2548
     176,   177,    -1,   179,   111,   181,   182,   183,   184,   116,
2549
      -1,    -1,   119,   120,   121,   122,   123,   124,   125,   126,
2550
     127,   128,   129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2551
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2552
      62,    63,    64,    65,    66,    67,   153,    69,    -1,    -1,
2553
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2554
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2555
      92,    -1,    94,   180,    96,    -1,    98,    -1,    -1,   101,
2556
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,    -1,
2557
     112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,
2558
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2559
     132,   133,   134,   135,   136,   137,    -1,    -1,    -1,   141,
2560
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2561
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2562
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2563
      -1,    -1,    -1,    -1,   176,   177,    -1,   179,   180,   181,
2564
     182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2565
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2566
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2567
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2568
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2569
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2570
      88,    -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,
2571
      98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2572
     108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,
2573
     118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,
2574
     128,    -1,   130,   131,   132,   133,   134,   135,   136,   137,
2575
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2576
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2577
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2578
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,
2579
      -1,   179,   180,   181,   182,   183,   184,    -1,    -1,    -1,
2580
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2581
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2582
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2583
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2584
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2585
      -1,    85,    86,    87,    88,    89,    90,    91,    92,    -1,
2586
      94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
2587
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2588
      -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,
2589
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
2590
     134,   135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,
2591
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2592
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2593
      -1,   165,    12,    13,    -1,    15,    -1,    -1,   103,    -1,
2594
      -1,    -1,   176,   177,    -1,   179,   111,   181,   182,   183,
2595
     184,   116,    -1,    -1,   119,   120,   121,   122,   123,   124,
2596
     125,   126,   127,   128,   129,    -1,    -1,    -1,    -1,    -1,
2597
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2598
      60,    61,    62,    63,    64,    65,    66,    67,   153,    69,
2599
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2600
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2601
      90,    91,    92,    93,    94,   180,    96,    -1,    98,    -1,
2602
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2603
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2604
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2605
     130,   131,   132,   133,   134,   135,   136,   137,    -1,    -1,
2606
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2607
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2608
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2609
      -1,    -1,   103,    -1,    -1,    -1,   176,   177,    -1,   179,
2610
     111,   181,   182,   183,   184,   116,    -1,    -1,   119,   120,
2611
     121,   122,   123,   124,   125,   126,   127,   128,   129,    -1,
2612
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2613
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2614
      66,    67,   153,    69,    -1,    -1,    -1,    73,    74,    75,
2615
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2616
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,   180,
2617
      96,    -1,    98,    99,    -1,   101,    -1,    -1,    -1,   105,
2618
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2619
      -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2620
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2621
     136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2622
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2623
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2624
      12,    13,    -1,    15,    -1,    -1,   103,    -1,    -1,    -1,
2625
     176,   177,    -1,   179,   111,   181,   182,   183,   184,    -1,
2626
      -1,    -1,   119,   120,   121,   122,   123,   124,   125,   126,
2627
     127,   128,   129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2628
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2629
      62,    63,    64,    65,    66,    67,   153,    69,    -1,    -1,
2630
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2631
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2632
      92,    -1,    94,    -1,    96,    97,    98,    -1,    -1,   101,
2633
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,    -1,
2634
     112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,
2635
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2636
     132,   133,   134,   135,   136,   137,    -1,    -1,    -1,   141,
2637
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2638
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2639
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2640
      -1,    -1,    -1,    -1,   176,   177,    -1,   179,    -1,   181,
2641
     182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2642
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2643
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2644
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2645
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2646
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2647
      88,    -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,
2648
      98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2649
     108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,
2650
     118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,
2651
     128,    -1,   130,   131,   132,   133,   134,   135,   136,   137,
2652
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2653
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2654
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2655
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,
2656
      -1,   179,   180,   181,   182,   183,   184,    -1,    -1,    -1,
2657
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2658
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2659
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2660
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2661
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2662
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2663
      94,    95,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
2664
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2665
      -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,
2666
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
2667
     134,   135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,
2668
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2669
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2670
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2671
      -1,    -1,   176,   177,    -1,   179,    -1,   181,   182,   183,
2672
     184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2673
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2674
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2675
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2676
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2677
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2678
      90,    91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,
2679
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2680
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2681
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2682
     130,   131,   132,   133,   134,   135,   136,   137,    -1,    -1,
2683
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2684
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2685
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2686
      -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,
2687
     180,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2688
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2689
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2690
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2691
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2692
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2693
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    -1,
2694
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2695
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2696
      -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2697
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2698
     136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2699
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2700
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2701
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2702
     176,   177,    -1,   179,   180,   181,   182,   183,   184,    -1,
2703
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2704
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2705
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2706
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2707
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2708
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2709
      92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,
2710
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,    -1,
2711
     112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,
2712
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2713
     132,   133,   134,   135,   136,   137,    -1,    -1,    -1,   141,
2714
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2715
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2716
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2717
      -1,    -1,    -1,    -1,   176,   177,    -1,   179,   180,   181,
2718
     182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2719
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2720
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2721
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2722
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2723
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2724
      88,    -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,
2725
      98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2726
     108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,
2727
     118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,
2728
     128,    -1,   130,   131,   132,   133,   134,   135,   136,   137,
2729
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2730
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2731
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2732
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,
2733
      -1,   179,   180,   181,   182,   183,   184,    -1,    -1,    -1,
2734
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2735
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2736
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2737
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2738
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2739
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2740
      94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
2741
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2742
      -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,
2743
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
2744
     134,   135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,
2745
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2746
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2747
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2748
      -1,    -1,   176,   177,    -1,   179,   180,   181,   182,   183,
2749
     184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2750
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2751
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2752
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2753
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2754
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2755
      90,    91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,
2756
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2757
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2758
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2759
     130,   131,   132,   133,   134,   135,   136,   137,    -1,    -1,
2760
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2761
     150,   151,   152,   153,   154,   155,   156,    -1,    -1,    -1,
2762
      -1,    -1,    -1,    -1,     3,   165,     5,     6,     7,     8,
2763
       9,    10,    11,    12,    13,    -1,   176,   177,    -1,   179,
2764
      -1,   181,   182,   183,   184,    30,    -1,    32,    33,    34,
2765
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
2766
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
2767
      55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,    58,
2768
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
2769
      69,    -1,    71,    72,    -1,    -1,    75,    -1,    -1,    -1,
2770
      79,    -1,    -1,    -1,    -1,    -1,    85,    86,    87,    88,
2771
      89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
2772
      99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
2773
     109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
2774
     119,   120,   121,   122,   123,   124,    -1,    -1,    -1,   128,
2775
     129,   130,   131,   132,    -1,   134,   135,   136,   137,   138,
2776
     139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
2777
     149,   150,   151,   152,     3,    -1,     5,     6,     7,     8,
2778
       9,    10,    11,    12,    13,    -1,    -1,    -1,    -1,    -1,
2779
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2780
     179,    -1,    -1,    -1,    -1,   184,    36,    37,    38,    39,
2781
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
2782
      50,    51,    52,    53,    54,    55,    56,    -1,    58,    58,
2783
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,
2784
      69,    -1,    71,    72,    -1,    -1,    75,    -1,    -1,    -1,
2785
      79,    -1,    -1,    -1,    -1,    -1,    85,    86,    87,    88,
2786
      89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
2787
      99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
2788
     109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
2789
     119,   120,   121,   122,   123,   124,    -1,    -1,    -1,   128,
2790
     129,   130,   131,   132,    -1,   134,   135,   136,   137,   138,
2791
     139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
2792
     149,   150,   151,   152,     3,    -1,     5,     6,     7,     8,
2793
      -1,    -1,    -1,    12,    13,    -1,    15,    -1,    -1,    -1,
2794
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2795
     179,    -1,    31,    -1,    -1,   184,    -1,    -1,    -1,    -1,
2796
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2797
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2798
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
2799
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2800
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2801
      -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,    98,
2802
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2803
     109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,
2804
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2805
      -1,   130,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,
2806
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2807
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2808
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2809
      15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,
2810
     179,    -1,   181,   182,   183,   184,    31,    -1,    -1,    -1,
2811
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2812
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2813
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2814
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2815
      75,    76,    77,    78,    79,    80,    -1,    82,    -1,    -1,
2816
      85,    86,    87,    88,    -1,    90,    91,    92,    -1,    94,
2817
      -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,
2818
     105,   106,   107,   108,   109,   110,    -1,   112,   113,    -1,
2819
      -1,    -1,    -1,   118,   119,    -1,    -1,    -1,    -1,    -1,
2820
      -1,    -1,    -1,   128,    -1,   130,   131,   132,    -1,    -1,
2821
      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,
2822
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2823
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2824
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2825
      -1,   176,   177,    -1,   179,    -1,   181,   182,   183,   184,
2826
      31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2827
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2828
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2829
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2830
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2831
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2832
      91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,
2833
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2834
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,    -1,
2835
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2836
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2837
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2838
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2839
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2840
      -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,    -1,
2841
     181,   182,   183,   184,    31,    -1,    -1,    -1,    -1,    -1,
2842
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2843
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2844
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2845
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2846
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2847
      87,    88,    -1,    90,    91,    92,    -1,    94,    -1,    96,
2848
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2849
     107,   108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,
2850
      -1,   118,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2851
      -1,   128,    -1,   130,   131,   132,    -1,    -1,    -1,    -1,
2852
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2853
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2854
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2855
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,
2856
     177,    -1,   179,    -1,   181,   182,   183,   184,    31,    -1,
2857
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2858
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2859
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2860
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2861
      73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
2862
      -1,    -1,    85,    86,    87,    88,    -1,    90,    91,    92,
2863
      -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,
2864
      -1,    -1,   105,   106,   107,   108,   109,   110,    -1,   112,
2865
     113,    -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,
2866
      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
2867
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
2868
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2869
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2870
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2871
      -1,    -1,    -1,   176,   177,    -1,   179,    -1,   181,   182,
2872
     183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2873
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2874
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2875
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
2876
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2877
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2878
      -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,    98,
2879
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2880
     109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,
2881
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2882
      -1,   130,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,
2883
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2884
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2885
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2886
      15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,
2887
     179,    -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
2888
      -1,    -1,    37,    38,    -1,    -1,    -1,    -1,    -1,    -1,
2889
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2890
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2891
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2892
      75,    76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,
2893
      85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2894
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2895
     105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,
2896
      -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,
2897
      -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,
2898
      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,
2899
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2900
     155,    -1,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2901
     165,    12,    13,    -1,    15,    -1,   171,    -1,    -1,    -1,
2902
      -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,   184,
2903
      -1,    -1,    -1,    -1,    -1,    -1,    37,    38,    -1,    -1,
2904
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2905
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2906
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2907
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    -1,
2908
      -1,    82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,
2909
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2910
      -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,
2911
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,
2912
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,
2913
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2914
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2915
     151,   152,   153,   154,   155,    -1,     3,    -1,     5,     6,
2916
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2917
      -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,
2918
     181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
2919
      37,    38,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2920
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2921
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2922
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2923
      77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,
2924
      87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2925
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,
2926
      -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
2927
      -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2928
      -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,
2929
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2930
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
2931
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2932
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2933
     177,    -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
2934
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2935
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2936
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2937
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2938
      73,    74,    75,    76,    77,    78,    79,    -1,    -1,    82,
2939
      -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,
2940
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2941
      -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,
2942
      -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,
2943
      -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,
2944
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
2945
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2946
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2947
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2948
      -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,
2949
     183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2950
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2951
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2952
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
2953
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2954
      79,    -1,    -1,    82,    83,    -1,    85,    86,    87,    -1,
2955
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2956
      -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,
2957
     109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2958
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2959
      -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,
2960
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2961
     149,   150,   151,   152,   153,   154,   155,    -1,     3,    -1,
2962
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2963
      15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,
2964
      -1,    -1,   181,   182,   183,   184,    31,    -1,    -1,    -1,
2965
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2966
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2967
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2968
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2969
      75,    76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,
2970
      85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2971
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2972
     105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,
2973
      -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,
2974
      -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,
2975
      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,
2976
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2977
     155,    -1,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2978
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2979
      -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,   184,
2980
      31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2981
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2982
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2983
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2984
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    -1,
2985
      -1,    82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,
2986
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2987
      -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,
2988
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,
2989
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,
2990
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2991
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2992
     151,   152,   153,   154,   155,    -1,     3,    -1,     5,     6,
2993
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2994
      -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,
2995
     181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
2996
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2997
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2998
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2999
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
3000
      77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,
3001
      87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3002
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,
3003
      -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
3004
      -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3005
      -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,
3006
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
3007
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
3008
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
3009
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3010
     177,   178,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
3011
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3012
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
3013
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
3014
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
3015
      73,    74,    75,    76,    77,    78,    79,    -1,    -1,    82,
3016
      -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,
3017
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3018
      -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,
3019
      -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,
3020
      -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,
3021
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
3022
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
3023
     153,   154,   155,    -1,     3,    -1,     5,     6,     7,     8,
3024
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
3025
      -1,    -1,    -1,    -1,   177,   178,    -1,    -1,   181,   182,
3026
     183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3027
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3028
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
3029
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
3030
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
3031
      79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,    -1,
3032
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3033
      -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,
3034
     109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3035
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
3036
      -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,
3037
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
3038
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
3039
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
3040
      15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,
3041
      -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
3042
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3043
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
3044
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
3045
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
3046
      75,    76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,
3047
      85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3048
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,
3049
     105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,
3050
      -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,
3051
      -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,
3052
      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,
3053
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
3054
     155,    -1,     3,    -1,     5,     6,     7,     8,    -1,    -1,
3055
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
3056
      -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,   184,
3057
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3058
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3059
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
3060
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
3061
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    -1,
3062
      -1,    82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,
3063
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3064
      -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,
3065
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,
3066
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,
3067
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3068
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
3069
     151,   152,   153,   154,   155,    -1,     3,    -1,     5,     6,
3070
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
3071
      -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,
3072
     181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
3073
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3074
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
3075
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
3076
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
3077
      77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,
3078
      87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3079
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,
3080
      -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
3081
      -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3082
      -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,
3083
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
3084
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
3085
      -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,   165,     5,
3086
       6,     7,     8,     9,    10,    11,    12,    13,    -1,    -1,
3087
     177,    -1,    -1,    -1,   181,   182,   183,   184,    32,    33,
3088
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3089
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3090
      54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,
3091
      -1,    -1,    58,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3092
      -1,    -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,
3093
      76,    77,    78,    -1,    -1,    -1,    -1,    -1,    -1,    85,
3094
      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
3095
      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
3096
     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
3097
     116,   117,   118,   119,   120,   121,   122,   123,   124,    -1,
3098
      -1,    -1,   128,   129,   130,   131,   132,    -1,   134,   135,
3099
     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
3100
     146,   147,   148,   149,   150,   151,   152,     3,    -1,     5,
3101
       6,     7,     8,     9,    10,    11,    12,    13,    -1,    -1,
3102
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3103
      -1,    -1,    -1,    -1,   180,    34,    35,    36,    37,    38,
3104
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3105
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3106
      -1,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    68,
3107
      -1,    -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,
3108
      76,    77,    78,    -1,    -1,    -1,    -1,    -1,    -1,    85,
3109
      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
3110
      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
3111
     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
3112
     116,   117,   118,   119,   120,   121,   122,   123,   124,    -1,
3113
      -1,    -1,   128,   129,   130,   131,   132,    -1,   134,   135,
3114
     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
3115
     146,   147,   148,   149,   150,   151,   152,    -1,     3,    -1,
3116
       5,     6,     7,     8,     9,    10,    11,    12,    13,    -1,
3117
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3118
      -1,    -1,    -1,    -1,   180,    30,    35,    36,    37,    38,
3119
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3120
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3121
      -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,    -1,    68,
3122
      -1,    -1,    -1,    -1,    69,    -1,    71,    72,    -1,    -1,
3123
      75,    76,    77,    78,    -1,    -1,    -1,    -1,    -1,    -1,
3124
      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
3125
      95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
3126
     105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
3127
     115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
3128
      -1,    -1,    -1,   128,   129,   130,   131,   132,    -1,   134,
3129
     135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
3130
     145,   146,   147,   148,   149,   150,   151,   152,    -1,    -1,
3131
       9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3132
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3133
      -1,    30,   177,    32,    33,    34,    35,    36,    37,    38,
3134
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3135
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3136
       9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    68,
3137
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3138
      -1,    30,    -1,    32,    33,    34,    35,    36,    37,    38,
3139
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3140
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3141
       9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    68,
3142
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3143
      -1,    30,    -1,    32,    33,    34,    35,    36,    37,    38,
3144
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3145
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3146
      -1,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,    68,
3147
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3148
      -1,   180,    30,    -1,    32,    33,    34,    35,    36,    37,
3149
      38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
3150
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
3151
      58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,
3152
      68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3153
      -1,   180,    30,    -1,    32,    33,    34,    35,    36,    37,
3154
      38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
3155
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
3156
      58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,
3157
      68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3158
      -1,   180,    30,    -1,    32,    33,    34,    35,    36,    37,
3159
      38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
3160
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
3161
      58,    -1,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3162
      68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3163
      -1,    -1,   180,    30,    -1,    32,    33,    34,    35,    36,
3164
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3165
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3166
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3167
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3168
      -1,    -1,   180,    30,    -1,    32,    33,    34,    35,    36,
3169
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3170
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3171
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3172
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3173
      -1,   179,    -1,    30,    -1,    32,    33,    34,    35,    36,
3174
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3175
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3176
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3177
      -1,    68,    -1,    -1,    -1,    -1,    -1,   174,    -1,    -1,
3178
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3179
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3180
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3181
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3182
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3183
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3184
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3185
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3186
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3187
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3188
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3189
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3190
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3191
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3192
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3193
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3194
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3195
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3196
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3197
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3198
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3199
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3200
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3201
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3202
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3203
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3204
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3205
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3206
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3207
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3208
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3209
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3210
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3211
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3212
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3213
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3214
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3215
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3216
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3217
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3218
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3219
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3220
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3221
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3222
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3223
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3224
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3225
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3226
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3227
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3228
      -1,   178,    -1,    30,    31,    32,    33,    34,    35,    36,
3229
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3230
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3231
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3232
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3233
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3234
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3235
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3236
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3237
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3238
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3239
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3240
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3241
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3242
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   176,
3243
      -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,    36,
3244
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3245
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3246
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3247
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   176,
3248
      -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,    36,
3249
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3250
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3251
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3252
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   176,
3253
      -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,    36,
3254
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3255
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3256
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3257
      -1,    68,    -1,    -1,    -1,    -1,    -1,    37,    38,   176,
3258
      -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,    36,
3259
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3260
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3261
      -1,    58,    -1,    -1,    -1,    75,    76,    77,    78,    79,
3262
      -1,    68,    82,    -1,    -1,    -1,    86,    -1,   175,    -1,
3263
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3264
      -1,    -1,    -1,    -1,    -1,    -1,     3,    -1,     5,     6,
3265
       7,     8,     9,    10,    11,    12,    13,    -1,    -1,   119,
3266
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
3267
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   174,    -1,    -1,
3268
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
3269
     150,   151,   152,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3270
      -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3271
      -1,    -1,    69,    -1,    71,    72,    -1,   177,    75,    -1,
3272
      -1,   181,    -1,   183,   184,    -1,    -1,   174,    85,    86,
3273
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
3274
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
3275
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
3276
     117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
3277
     127,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
3278
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
3279
     147,   148,   149,   150,   151,   152,     3,    11,     5,     6,
3280
       7,     8,     9,    10,    11,    12,    13,    -1,    -1,    -1,
3281
      -1,    -1,    -1,    -1,    -1,    -1,    30,    -1,    32,    33,
3282
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3283
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3284
      54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,
3285
      -1,    58,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3286
      -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,    -1,
3287
      -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,    85,    86,
3288
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
3289
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
3290
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
3291
     117,   118,   119,   120,   121,   122,   123,   124,    -1,    -1,
3292
      -1,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
3293
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
3294
     147,   148,   149,   150,   151,   152,     3,    -1,     5,     6,
3295
       7,     8,     9,    10,    11,    12,    13,    37,    38,    39,
3296
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
3297
      50,    51,    52,    53,    54,    55,    56,    -1,    58,    -1,
3298
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,
3299
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3300
      -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3301
      -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,    -1,
3302
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    85,    86,
3303
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
3304
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
3305
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
3306
     117,   118,   119,   120,   121,   122,   123,   124,    -1,    -1,
3307
      -1,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
3308
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
3309
     147,   148,   149,   150,   151,   152,     3,    -1,     5,     6,
3310
       7,     8,     9,    10,    11,    12,    13,    39,    40,    41,
3311
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3312
      52,    53,    54,    55,    56,    -1,    58,    -1,    -1,    -1,
3313
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3314
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3315
      -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3316
      -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,    -1,
3317
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    85,    86,
3318
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
3319
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
3320
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
3321
     117,   118,   119,   120,   121,   122,   123,   124,    -1,    -1,
3322
      -1,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
3323
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
3324
     147,   148,   149,   150,   151,   152,    75,    76,    77,    78,
3325
      79,    -1,    -1,    82,    -1,    -1,    -1,    86,    39,    40,
3326
      41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
3327
      51,    52,    53,    54,    55,    56,    -1,    58,    -1,    -1,
3328
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,
3329
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
3330
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3331
      -1,    -1,    -1,   142,    -1,   144,   145,   146,   147,   148,
3332
     149,   150,   151,   152,    -1,    -1,    -1,    -1,    -1,    -1,
3333
      -1,    -1,    -1,    -1,    -1,     9,    10,    11,    -1,    -1,
3334
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,
3335
      -1,    -1,   181,    -1,   183,   184,    30,    -1,    32,    33,
3336
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3337
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3338
      54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,
3339
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3340
      -1,    -1,    -1,    -1,     9,    10,    11,    -1,    -1,    14,
3341
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3342
      -1,    -1,    -1,    -1,    -1,    30,   100,    32,    33,    34,
3343
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3344
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3345
      55,    56,    -1,    58,     9,    10,    11,    -1,    -1,    -1,
3346
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3347
      -1,    -1,    -1,    -1,    -1,    30,    31,    32,    33,    34,
3348
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3349
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3350
      55,    56,    -1,    58,     9,    10,    11,    -1,    -1,    -1,
3351
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3352
      -1,    -1,    -1,    -1,    -1,    30,    -1,    32,    33,    34,
3353
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3354
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3355
      55,    56,    -1,    58,    10,    11,    -1,    -1,    -1,    -1,
3356
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3357
      -1,    -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,
3358
      36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
3359
      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
3360
      56,    14,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3361
      -1,    -1,    68,    -1,    -1,    -1,    -1,    30,    -1,    32,
3362
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3363
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3364
      53,    54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,
3365
      -1,    -1,    -1,    -1,    -1,    68
3366
};
3367
3368
  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
3369
     symbol of state STATE-NUM.  */
3370
static const yytype_int16 yystos[] =
3371
{
3372
       0,   186,   191,     0,     3,     5,     6,     7,     8,    12,
3373
      13,    15,    52,    53,    57,    59,    60,    61,    62,    63,
3374
      64,    65,    66,    67,    69,    73,    74,    75,    76,    77,
3375
      78,    79,    80,    82,    85,    86,    87,    88,    90,    91,
3376
      92,    94,    96,    98,   101,   105,   106,   107,   108,   109,
3377
     110,   111,   112,   113,   116,   118,   119,   120,   121,   128,
3378
     130,   131,   132,   133,   134,   135,   136,   137,   140,   141,
3379
     142,   144,   145,   146,   147,   148,   149,   150,   151,   152,
3380
     153,   154,   155,   156,   165,   176,   177,   179,   181,   182,
3381
     183,   184,   195,   198,   199,   200,   201,   202,   218,   227,
3382
     230,   233,   236,   237,   239,   241,   255,   261,   262,   263,
3383
     264,   329,   330,   331,   332,   333,   334,   342,   344,   348,
3384
     349,   350,   351,   353,   354,   355,   356,   357,   358,   359,
3385
     360,   371,    75,   119,   128,   199,   331,   334,   331,   331,
3386
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3387
     331,   331,   331,   331,   331,   331,   331,   177,   284,   331,
3388
      31,   177,   119,   128,   177,   195,   199,   234,   235,   236,
3389
     327,   344,   345,   359,   361,   177,   282,   347,   177,   322,
3390
     323,   331,   218,   177,   177,   177,   177,   177,   177,   331,
3391
     352,   352,    75,    75,   215,   321,   352,   179,    75,    76,
3392
      78,   109,   111,   193,   194,   205,   207,   211,   214,   288,
3393
     289,   359,    79,   290,   291,   332,   282,   177,   177,   177,
3394
     177,   232,   238,   240,   242,     3,     5,     6,     7,     8,
3395
       9,    10,    11,    12,    13,    58,    69,    71,    72,    75,
3396
      78,    85,    86,    87,    88,    89,    90,    91,    92,    93,
3397
      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
3398
     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
3399
     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
3400
     124,   128,   129,   130,   131,   132,   134,   135,   136,   137,
3401
     138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
3402
     148,   149,   150,   151,   152,   187,   188,   190,   192,   204,
3403
     177,   177,   196,   197,   344,    86,   177,   181,   329,   348,
3404
     350,   351,   358,   358,   331,    79,    81,   166,   167,   168,
3405
     368,   369,   331,   216,    37,    38,   141,   171,   189,   331,
3406
     364,   365,   366,   367,    81,   346,   368,    81,   368,   179,
3407
     359,   282,   119,   198,   201,   332,   134,   236,    71,    72,
3408
      71,    72,    89,     9,    10,    11,    30,    32,    33,    34,
3409
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3410
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3411
      55,    56,    58,    68,   176,   189,   338,   338,   169,   169,
3412
     157,   158,   181,   343,    16,    17,    18,    19,    20,    21,
3413
      22,    23,    24,    25,    26,    27,    28,    29,   154,   155,
3414
     338,    14,     3,     5,     6,     7,     8,    12,    13,    69,
3415
      75,    85,    86,    87,   105,   109,   110,   119,   128,   131,
3416
     132,   141,   142,   144,   145,   146,   147,   148,   149,   150,
3417
     151,   152,   171,   178,   190,   285,   286,   331,   331,   331,
3418
     327,   236,   134,   169,   282,   157,   158,   169,   181,   171,
3419
     178,   283,   286,   287,   331,   331,   174,   176,    92,   331,
3420
     156,   325,   326,   331,   331,   215,   331,   331,   176,   176,
3421
     176,    16,   174,   176,   176,   216,   100,   170,   194,   206,
3422
     211,   176,   174,   176,   174,   176,    16,   174,   176,   224,
3423
     225,   358,   331,   372,   373,   331,   178,    75,    75,    75,
3424
      75,   176,   203,   179,   364,   364,   174,   208,   282,   345,
3425
     331,   364,   176,   157,   158,   181,   166,   369,    83,   331,
3426
     358,    81,   166,   369,   178,   133,   180,   199,   200,   217,
3427
     218,   177,   331,   358,    14,   175,   174,   182,   183,   331,
3428
     332,   231,   177,   218,   177,    31,   176,   331,   331,   331,
3429
      31,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3430
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3431
     331,   331,   331,   331,   331,   331,   331,   345,   331,   335,
3432
      75,   128,   226,   335,   179,   190,   359,   362,   179,   190,
3433
     359,   362,    75,   179,   359,   363,   363,   352,   282,   189,
3434
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3435
     331,   331,   331,   331,   331,   178,   331,    31,   174,   208,
3436
     174,   178,   178,   328,   359,   363,   363,   359,   352,   178,
3437
     174,   208,   178,   323,   177,   178,   331,   176,   174,   100,
3438
     178,   178,   178,   331,   321,   180,    75,   179,   170,   176,
3439
     176,   194,   214,   289,   331,   291,   174,   208,   174,   208,
3440
     178,   176,   138,   246,   335,   138,   247,    31,   243,   179,
3441
     191,   178,   178,   196,   175,   178,   175,    75,    75,    53,
3442
      75,    79,    84,   370,   180,   181,   180,   180,   177,   200,
3443
     364,   141,   189,   331,    16,   365,   180,    75,   331,   331,
3444
     216,   331,    31,   177,   335,   177,   331,   282,   331,   282,
3445
     331,   282,   282,   175,   358,   331,   171,   287,   178,   178,
3446
     287,   347,   175,   287,   178,    31,   218,   331,    31,   218,
3447
     260,   324,   326,   331,   156,   331,   141,   181,   189,   249,
3448
     358,   219,    31,   179,   253,   179,   335,   220,   193,   205,
3449
     209,   212,   213,   179,   225,   178,   373,   178,   344,   139,
3450
     248,   179,   295,   344,   335,    30,   119,   142,   143,   177,
3451
     195,   271,   272,   273,   274,   275,   277,   248,   191,   180,
3452
      16,    84,   175,   331,   178,   178,   177,   358,   331,   246,
3453
     178,   178,    89,   331,   119,   120,   121,   122,   123,   124,
3454
     125,   126,   127,   128,   199,   265,   266,   267,   268,   269,
3455
     307,   308,   177,   265,   180,   180,   180,   246,   216,   178,
3456
     216,   176,   174,   331,   177,   364,   358,    14,   178,    31,
3457
     218,   252,   176,   254,   176,   254,   104,   256,   257,   258,
3458
     259,   331,   114,   115,   223,   100,   213,   174,   208,   210,
3459
     213,   176,   295,   335,   292,   174,   179,   272,   272,   275,
3460
      37,    35,    35,    37,   335,   180,   331,   175,   176,   364,
3461
     248,   218,    31,   176,   269,   178,   174,   208,    30,   177,
3462
     270,   276,   277,   278,   279,   280,   308,   265,   178,   248,
3463
     176,    93,   325,   331,   364,   175,   249,    31,   218,   251,
3464
     216,   254,   102,   103,   104,   254,   180,   174,   208,   180,
3465
     174,   208,   174,   208,   177,   179,    75,   212,   180,   174,
3466
     208,   179,   103,   116,   129,   180,   199,   244,   293,   294,
3467
     304,   305,   306,   307,   344,   292,   178,   272,   272,   273,
3468
     273,   272,   179,   180,   178,   335,   216,    31,   281,   267,
3469
     277,   277,   280,    38,   228,    37,    35,    35,    37,   178,
3470
     116,   339,   335,   176,   178,   178,   178,   216,    99,   102,
3471
     176,   331,    31,   176,   180,    14,   258,   331,    14,   221,
3472
     344,   216,   213,   180,   292,   335,   295,   293,   270,   334,
3473
     111,   180,   292,   179,   271,    14,   178,   171,   229,   277,
3474
     277,   278,   278,   277,   281,   177,   281,   179,    31,   218,
3475
     250,   251,    97,   176,   176,    31,   176,   216,   216,   331,
3476
     331,    35,    79,   222,   180,   180,   190,   176,   179,   296,
3477
      79,   309,   310,   311,   338,    75,   119,   142,   143,   188,
3478
     271,   319,   320,   180,   292,   336,    79,   336,    79,   189,
3479
     340,   341,   336,   292,   216,   176,   216,   216,   344,   178,
3480
      16,   245,   119,   180,   190,   297,   298,   299,   300,   301,
3481
     302,   344,    16,   335,   174,   176,   190,    16,    16,    75,
3482
     319,   174,   176,   180,   337,   335,   179,    79,   174,   208,
3483
     179,   180,    95,   179,   331,   176,   180,   298,   176,   176,
3484
     100,   117,   169,   331,   179,    79,   310,   335,   331,   331,
3485
     176,   320,   331,    16,   179,   313,   216,   341,   178,   216,
3486
     176,   216,    75,   187,   308,   295,   190,   335,   312,    16,
3487
     335,   177,   335,   335,   336,   331,   312,   180,   180,   180,
3488
     190,   179,   180,   199,   307,   314,   315,   331,   265,   313,
3489
     180,   336,   336,   312,   315,   338,   335,   178,   180,    75,
3490
     281,   335,   336,   316,   176,   179,   303,   177,   318,   216,
3491
     336,   265,   336,   180,   178,    14,   176,   179,   317,   331,
3492
     216,   336,   176,   180
3493
};
3494
3495
  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
3496
static const yytype_int16 yyr1[] =
3497
{
3498
       0,   185,   186,   187,   187,   187,   187,   187,   187,   187,
3499
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3500
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3501
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3502
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3503
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3504
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3505
     187,   187,   187,   187,   188,   188,   188,   188,   188,   188,
3506
     188,   188,   189,   189,   190,   190,   191,   191,   192,   192,
3507
     193,   193,   194,   194,   195,   195,   195,   195,   196,   196,
3508
     197,   197,   198,   199,   199,   200,   200,   200,   200,   200,
3509
     201,   201,   202,   202,   202,   202,   202,   203,   202,   204,
3510
     202,   202,   202,   202,   202,   205,   205,   206,   207,   208,
3511
     208,   209,   209,   210,   210,   211,   211,   212,   212,   213,
3512
     213,   214,   214,   215,   215,   216,   216,   217,   217,   217,
3513
     217,   218,   218,   218,   218,   218,   218,   218,   218,   218,
3514
     218,   218,   218,   218,   218,   218,   218,   218,   218,   219,
3515
     218,   218,   218,   218,   218,   218,   220,   220,   221,   221,
3516
     222,   222,   223,   223,   224,   224,   225,   226,   226,   227,
3517
     228,   228,   229,   229,   231,   230,   232,   230,   233,   233,
3518
     234,   234,   235,   235,   236,   236,   236,   238,   237,   240,
3519
     239,   242,   241,   243,   243,   244,   245,   245,   246,   246,
3520
     247,   247,   248,   248,   249,   249,   249,   249,   250,   250,
3521
     251,   251,   252,   252,   253,   253,   253,   253,   254,   254,
3522
     254,   254,   254,   255,   256,   256,   257,   257,   258,   258,
3523
     259,   259,   260,   260,   261,   261,   262,   262,   263,   263,
3524
     264,   264,   265,   265,   266,   266,   267,   267,   268,   268,
3525
     269,   269,   270,   270,   271,   271,   271,   271,   272,   272,
3526
     273,   273,   274,   274,   275,   275,   276,   276,   276,   276,
3527
     277,   277,   277,   278,   278,   279,   279,   280,   280,   281,
3528
     281,   282,   282,   282,   283,   283,   284,   284,   284,   284,
3529
     285,   285,   285,   286,   286,   287,   287,   288,   288,   289,
3530
     290,   290,   291,   291,   292,   292,   293,   293,   293,   293,
3531
     293,   293,   294,   294,   294,   295,   295,   296,   296,   296,
3532
     297,   297,   298,   298,   299,   300,   300,   300,   300,   301,
3533
     301,   302,   303,   303,   304,   304,   305,   305,   306,   306,
3534
     307,   307,   308,   308,   308,   308,   308,   308,   308,   308,
3535
     308,   308,   309,   309,   310,   310,   311,   311,   312,   312,
3536
     312,   313,   313,   314,   314,   316,   315,   317,   317,   317,
3537
     318,   318,   319,   319,   320,   320,   321,   322,   322,   323,
3538
     324,   324,   324,   325,   325,   326,   326,   326,   326,   328,
3539
     327,   329,   329,   329,   330,   331,   331,   331,   331,   331,
3540
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3541
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3542
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3543
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3544
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3545
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3546
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3547
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3548
     331,   332,   332,   333,   334,   335,   336,   337,   338,   338,
3549
     339,   339,   340,   340,   341,   341,   342,   342,   342,   342,
3550
     343,   342,   344,   344,   345,   345,   345,   346,   346,   346,
3551
     347,   347,   348,   348,   348,   348,   349,   349,   349,   349,
3552
     349,   349,   349,   349,   350,   350,   350,   350,   350,   350,
3553
     350,   350,   350,   350,   351,   351,   351,   351,   352,   352,
3554
     353,   354,   354,   354,   354,   354,   355,   355,   356,   356,
3555
     356,   356,   357,   357,   357,   357,   357,   358,   358,   358,
3556
     358,   359,   359,   359,   360,   360,   361,   361,   361,   361,
3557
     361,   361,   362,   362,   362,   363,   363,   363,   364,   365,
3558
     365,   366,   366,   367,   367,   367,   367,   367,   367,   367,
3559
     368,   368,   368,   368,   369,   369,   369,   369,   369,   369,
3560
     369,   369,   370,   370,   370,   370,   371,   371,   371,   371,
3561
     371,   371,   371,   372,   372,   373
3562
};
3563
3564
  /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
3565
static const yytype_int8 yyr2[] =
3566
{
3567
       0,     2,     1,     1,     1,     1,     1,     1,     1,     1,
3568
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3569
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3570
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3571
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3572
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3573
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3574
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3575
       1,     1,     1,     1,     1,     1,     2,     0,     1,     1,
3576
       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
3577
       1,     3,     4,     1,     2,     1,     1,     1,     1,     1,
3578
       1,     3,     1,     1,     2,     4,     3,     0,     6,     0,
3579
       5,     3,     4,     3,     4,     1,     1,     6,     6,     0,
3580
       1,     3,     1,     3,     1,     3,     1,     1,     2,     1,
3581
       3,     1,     3,     3,     1,     2,     0,     1,     1,     2,
3582
       4,     3,     1,     1,     5,     7,     9,     5,     3,     3,
3583
       3,     3,     3,     3,     1,     2,     6,     7,     9,     0,
3584
       6,     1,     6,     3,     2,     3,     0,     9,     1,     3,
3585
       0,     1,     0,     4,     1,     3,     1,     1,     1,    13,
3586
       0,     1,     0,     1,     0,    10,     0,     9,     1,     2,
3587
       1,     2,     0,     1,     1,     1,     1,     0,     7,     0,
3588
       8,     0,     9,     0,     2,     5,     0,     2,     0,     2,
3589
       0,     2,     0,     2,     1,     2,     4,     3,     1,     4,
3590
       1,     4,     1,     4,     3,     4,     4,     5,     0,     5,
3591
       5,     4,     4,     7,     0,     2,     1,     3,     4,     4,
3592
       1,     3,     1,     4,     5,     6,     1,     3,     6,     7,
3593
       3,     6,     2,     0,     1,     3,     2,     1,     0,     1,
3594
       7,     9,     0,     1,     1,     2,     1,     1,     1,     1,
3595
       1,     3,     3,     3,     3,     3,     1,     2,     1,     1,
3596
       1,     1,     1,     1,     3,     3,     3,     3,     3,     0,
3597
       2,     2,     4,     3,     1,     3,     2,     4,     4,     3,
3598
       3,     1,     3,     3,     2,     1,     1,     3,     1,     1,
3599
       3,     1,     1,     3,     2,     0,     4,     3,     4,     5,
3600
      12,     1,     1,     2,     3,     1,     3,     1,     2,     3,
3601
       1,     2,     2,     2,     3,     3,     3,     4,     3,     1,
3602
       1,     3,     1,     3,     1,     1,     0,     1,     0,     1,
3603
       1,     2,     1,     1,     1,     1,     1,     1,     1,     1,
3604
       1,     1,     3,     1,     2,     4,     5,     7,     0,     2,
3605
       3,     0,     3,     0,     1,     0,     9,     1,     3,     3,
3606
       0,     3,     3,     1,     4,     4,     4,     3,     1,     1,
3607
       0,     3,     1,     0,     1,     3,     4,     2,     1,     0,
3608
      10,     3,     2,     3,     2,     1,     6,     5,     3,     4,
3609
       2,     2,     3,     3,     3,     3,     3,     3,     3,     3,
3610
       3,     3,     3,     3,     3,     2,     2,     2,     2,     3,
3611
       3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
3612
       3,     3,     3,     3,     3,     3,     3,     2,     2,     2,
3613
       2,     3,     3,     3,     3,     3,     3,     3,     3,     3,
3614
       3,     3,     3,     1,     1,     5,     4,     3,     1,     2,
3615
       2,     2,     2,     2,     2,     2,     2,     2,     1,     3,
3616
       2,     1,     2,     4,     2,     2,     1,     2,     2,     3,
3617
       1,    13,    12,     1,     1,     0,     0,     0,     0,     1,
3618
       0,     5,     3,     1,     1,     2,     2,     2,     4,     4,
3619
       0,     3,     1,     1,     1,     1,     3,     0,     1,     1,
3620
       0,     1,     4,     3,     1,     3,     1,     1,     3,     2,
3621
       3,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3622
       1,     1,     1,     1,     3,     3,     5,     5,     0,     1,
3623
       1,     1,     3,     1,     1,     1,     1,     1,     1,     3,
3624
       1,     1,     1,     4,     4,     4,     1,     1,     1,     3,
3625
       3,     1,     4,     2,     3,     3,     1,     4,     3,     3,
3626
       3,     3,     1,     3,     1,     1,     3,     1,     1,     0,
3627
       1,     3,     1,     3,     1,     4,     2,     2,     6,     4,
3628
       2,     2,     1,     2,     1,     4,     3,     3,     3,     3,
3629
       6,     3,     1,     1,     2,     1,     5,     4,     2,     2,
3630
       4,     2,     2,     1,     3,     1
3631
};
3632
3633
3634
#define yyerrok         (yyerrstatus = 0)
3635
#define yyclearin       (yychar = YYEMPTY)
3636
32.1M
#define YYEMPTY         (-2)
3637
20.7M
#define YYEOF           0
3638
3639
100k
#define YYACCEPT        goto yyacceptlab
3640
45.2k
#define YYABORT         goto yyabortlab
3641
260
#define YYERROR         goto yyerrorlab
3642
3643
3644
#define YYRECOVERING()  (!!yyerrstatus)
3645
3646
#define YYBACKUP(Token, Value)                                    \
3647
  do                                                              \
3648
    if (yychar == YYEMPTY)                                        \
3649
      {                                                           \
3650
        yychar = (Token);                                         \
3651
        yylval = (Value);                                         \
3652
        YYPOPSTACK (yylen);                                       \
3653
        yystate = *yyssp;                                         \
3654
        goto yybackup;                                            \
3655
      }                                                           \
3656
    else                                                          \
3657
      {                                                           \
3658
        yyerror (YY_("syntax error: cannot back up")); \
3659
        YYERROR;                                                  \
3660
      }                                                           \
3661
  while (0)
3662
3663
/* Error token number */
3664
4.34M
#define YYTERROR        1
3665
#define YYERRCODE       256
3666
3667
3668
3669
/* Enable debugging if requested.  */
3670
#if ZENDDEBUG
3671
3672
# ifndef YYFPRINTF
3673
#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
3674
#  define YYFPRINTF fprintf
3675
# endif
3676
3677
# define YYDPRINTF(Args)                        \
3678
do {                                            \
3679
  if (yydebug)                                  \
3680
    YYFPRINTF Args;                             \
3681
} while (0)
3682
3683
/* This macro is provided for backward compatibility. */
3684
#ifndef YY_LOCATION_PRINT
3685
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
3686
#endif
3687
3688
3689
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
3690
do {                                                                      \
3691
  if (yydebug)                                                            \
3692
    {                                                                     \
3693
      YYFPRINTF (stderr, "%s ", Title);                                   \
3694
      yy_symbol_print (stderr,                                            \
3695
                  Type, Value); \
3696
      YYFPRINTF (stderr, "\n");                                           \
3697
    }                                                                     \
3698
} while (0)
3699
3700
3701
/*-----------------------------------.
3702
| Print this symbol's value on YYO.  |
3703
`-----------------------------------*/
3704
3705
static void
3706
yy_symbol_value_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep)
3707
{
3708
  FILE *yyoutput = yyo;
3709
  YYUSE (yyoutput);
3710
  if (!yyvaluep)
3711
    return;
3712
# ifdef YYPRINT
3713
  if (yytype < YYNTOKENS)
3714
    YYPRINT (yyo, yytoknum[yytype], *yyvaluep);
3715
# endif
3716
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
3717
  YYUSE (yytype);
3718
  YY_IGNORE_MAYBE_UNINITIALIZED_END
3719
}
3720
3721
3722
/*---------------------------.
3723
| Print this symbol on YYO.  |
3724
`---------------------------*/
3725
3726
static void
3727
yy_symbol_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep)
3728
{
3729
  YYFPRINTF (yyo, "%s %s (",
3730
             yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
3731
3732
  yy_symbol_value_print (yyo, yytype, yyvaluep);
3733
  YYFPRINTF (yyo, ")");
3734
}
3735
3736
/*------------------------------------------------------------------.
3737
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
3738
| TOP (included).                                                   |
3739
`------------------------------------------------------------------*/
3740
3741
static void
3742
yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop)
3743
{
3744
  YYFPRINTF (stderr, "Stack now");
3745
  for (; yybottom <= yytop; yybottom++)
3746
    {
3747
      int yybot = *yybottom;
3748
      YYFPRINTF (stderr, " %d", yybot);
3749
    }
3750
  YYFPRINTF (stderr, "\n");
3751
}
3752
3753
# define YY_STACK_PRINT(Bottom, Top)                            \
3754
do {                                                            \
3755
  if (yydebug)                                                  \
3756
    yy_stack_print ((Bottom), (Top));                           \
3757
} while (0)
3758
3759
3760
/*------------------------------------------------.
3761
| Report that the YYRULE is going to be reduced.  |
3762
`------------------------------------------------*/
3763
3764
static void
3765
yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp, int yyrule)
3766
{
3767
  int yylno = yyrline[yyrule];
3768
  int yynrhs = yyr2[yyrule];
3769
  int yyi;
3770
  YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n",
3771
             yyrule - 1, yylno);
3772
  /* The symbols being reduced.  */
3773
  for (yyi = 0; yyi < yynrhs; yyi++)
3774
    {
3775
      YYFPRINTF (stderr, "   $%d = ", yyi + 1);
3776
      yy_symbol_print (stderr,
3777
                       yystos[+yyssp[yyi + 1 - yynrhs]],
3778
                       &yyvsp[(yyi + 1) - (yynrhs)]
3779
                                              );
3780
      YYFPRINTF (stderr, "\n");
3781
    }
3782
}
3783
3784
# define YY_REDUCE_PRINT(Rule)          \
3785
do {                                    \
3786
  if (yydebug)                          \
3787
    yy_reduce_print (yyssp, yyvsp, Rule); \
3788
} while (0)
3789
3790
/* Nonzero means print parse trace.  It is left uninitialized so that
3791
   multiple parsers can coexist.  */
3792
int yydebug;
3793
#else /* !ZENDDEBUG */
3794
# define YYDPRINTF(Args)
3795
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
3796
# define YY_STACK_PRINT(Bottom, Top)
3797
# define YY_REDUCE_PRINT(Rule)
3798
#endif /* !ZENDDEBUG */
3799
3800
3801
/* YYINITDEPTH -- initial size of the parser's stacks.  */
3802
#ifndef YYINITDEPTH
3803
145k
# define YYINITDEPTH 200
3804
#endif
3805
3806
/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
3807
   if the built-in stack extension method is used).
3808
3809
   Do not make this value too large; the results are undefined if
3810
   YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
3811
   evaluated with infinite-precision integer arithmetic.  */
3812
3813
#ifndef YYMAXDEPTH
3814
4.90k
# define YYMAXDEPTH 10000
3815
#endif
3816
3817
3818
#if YYERROR_VERBOSE
3819
3820
# ifndef yystrlen
3821
#  if defined __GLIBC__ && defined _STRING_H
3822
44.9k
#   define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S)))
3823
#  else
3824
/* Return the length of YYSTR.  */
3825
static YYPTRDIFF_T
3826
yystrlen (const char *yystr)
3827
{
3828
  YYPTRDIFF_T yylen;
3829
  for (yylen = 0; yystr[yylen]; yylen++)
3830
    continue;
3831
  return yylen;
3832
}
3833
#  endif
3834
# endif
3835
3836
# ifndef yystpcpy
3837
#  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
3838
45.0k
#   define yystpcpy stpcpy
3839
#  else
3840
/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
3841
   YYDEST.  */
3842
static char *
3843
yystpcpy (char *yydest, const char *yysrc)
3844
{
3845
  char *yyd = yydest;
3846
  const char *yys = yysrc;
3847
3848
  while ((*yyd++ = *yys++) != '\0')
3849
    continue;
3850
3851
  return yyd - 1;
3852
}
3853
#  endif
3854
# endif
3855
3856
# ifndef yytnamerr
3857
/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
3858
   quotes and backslashes, so that it's suitable for yyerror.  The
3859
   heuristic is that double-quoting is unnecessary unless the string
3860
   contains an apostrophe, a comma, or backslash (other than
3861
   backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
3862
   null, do not copy; instead, return the length of what the result
3863
   would have been.  */
3864
static YYPTRDIFF_T
3865
yytnamerr (char *yyres, const char *yystr)
3866
{
3867
  if (*yystr == '"')
3868
    {
3869
      YYPTRDIFF_T yyn = 0;
3870
      char const *yyp = yystr;
3871
3872
      for (;;)
3873
        switch (*++yyp)
3874
          {
3875
          case '\'':
3876
          case ',':
3877
            goto do_not_strip_quotes;
3878
3879
          case '\\':
3880
            if (*++yyp != '\\')
3881
              goto do_not_strip_quotes;
3882
            else
3883
              goto append;
3884
3885
          append:
3886
          default:
3887
            if (yyres)
3888
              yyres[yyn] = *yyp;
3889
            yyn++;
3890
            break;
3891
3892
          case '"':
3893
            if (yyres)
3894
              yyres[yyn] = '\0';
3895
            return yyn;
3896
          }
3897
    do_not_strip_quotes: ;
3898
    }
3899
3900
  if (yyres)
3901
    return yystpcpy (yyres, yystr) - yyres;
3902
  else
3903
    return yystrlen (yystr);
3904
}
3905
# endif
3906
3907
/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
3908
   about the unexpected token YYTOKEN for the state stack whose top is
3909
   YYSSP.
3910
3911
   Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
3912
   not large enough to hold the message.  In that case, also set
3913
   *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
3914
   required number of bytes is too large to store.  */
3915
static int
3916
yysyntax_error (YYPTRDIFF_T *yymsg_alloc, char **yymsg,
3917
                yy_state_t *yyssp, int yytoken)
3918
44.9k
{
3919
44.9k
  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
3920
  /* Internationalized format string. */
3921
44.9k
  const char *yyformat = YY_NULLPTR;
3922
  /* Arguments of yyformat: reported tokens (one for the "unexpected",
3923
     one per "expected"). */
3924
44.9k
  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
3925
  /* Actual size of YYARG. */
3926
44.9k
  int yycount = 0;
3927
  /* Cumulated lengths of YYARG.  */
3928
44.9k
  YYPTRDIFF_T yysize = 0;
3929
3930
  /* There are many possibilities here to consider:
3931
     - If this state is a consistent state with a default action, then
3932
       the only way this function was invoked is if the default action
3933
       is an error action.  In that case, don't check for expected
3934
       tokens because there are none.
3935
     - The only way there can be no lookahead present (in yychar) is if
3936
       this state is a consistent state with a default action.  Thus,
3937
       detecting the absence of a lookahead is sufficient to determine
3938
       that there is no unexpected or expected token to report.  In that
3939
       case, just report a simple "syntax error".
3940
     - Don't assume there isn't a lookahead just because this state is a
3941
       consistent state with a default action.  There might have been a
3942
       previous inconsistent state, consistent state with a non-default
3943
       action, or user semantic action that manipulated yychar.
3944
     - Of course, the expected token list depends on states to have
3945
       correct lookahead information, and it depends on the parser not
3946
       to perform extra reductions after fetching a lookahead from the
3947
       scanner and before detecting a syntax error.  Thus, state merging
3948
       (from LALR or IELR) and default reductions corrupt the expected
3949
       token list.  However, the list is correct for canonical LR with
3950
       one exception: it will still contain any token that will not be
3951
       accepted due to an error action in a later state.
3952
  */
3953
44.9k
  if (yytoken != YYEMPTY)
3954
44.9k
    {
3955
44.9k
      int yyn = yypact[+*yyssp];
3956
44.9k
      YYPTRDIFF_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
3957
44.9k
      yysize = yysize0;
3958
44.9k
      yyarg[yycount++] = yytname[yytoken];
3959
44.9k
      if (!yypact_value_is_default (yyn))
3960
44.9k
        {
3961
          /* Start YYX at -YYN if negative to avoid negative indexes in
3962
             YYCHECK.  In other words, skip the first -YYN actions for
3963
             this state because they are default actions.  */
3964
44.9k
          int yyxbegin = yyn < 0 ? -yyn : 0;
3965
          /* Stay within bounds of both yycheck and yytname.  */
3966
44.9k
          int yychecklim = YYLAST - yyn + 1;
3967
44.9k
          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
3968
44.9k
          int yyx;
3969
3970
2.85M
          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
3971
2.84M
            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
3972
190k
                && !yytable_value_is_error (yytable[yyx + yyn]))
3973
190k
              {
3974
190k
                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
3975
34.2k
                  {
3976
34.2k
                    yycount = 1;
3977
34.2k
                    yysize = yysize0;
3978
34.2k
                    break;
3979
34.2k
                  }
3980
155k
                yyarg[yycount++] = yytname[yyx];
3981
155k
                {
3982
155k
                  YYPTRDIFF_T yysize1
3983
155k
                    = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
3984
155k
                  if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
3985
155k
                    yysize = yysize1;
3986
0
                  else
3987
0
                    return 2;
3988
155k
                }
3989
155k
              }
3990
44.9k
        }
3991
44.9k
    }
3992
3993
44.9k
  switch (yycount)
3994
44.9k
    {
3995
0
# define YYCASE_(N, S)                      \
3996
44.9k
      case N:                               \
3997
44.9k
        yyformat = S;                       \
3998
44.9k
      break
3999
0
    default: /* Avoid compiler warnings. */
4000
0
      YYCASE_(0, YY_("syntax error"));
4001
34.2k
      YYCASE_(1, YY_("syntax error, unexpected %s"));
4002
7.30k
      YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
4003
369
      YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
4004
1.44k
      YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
4005
44.9k
      YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
4006
44.9k
# undef YYCASE_
4007
44.9k
    }
4008
4009
44.9k
  {
4010
    /* Don't count the "%s"s in the final size, but reserve room for
4011
       the terminator.  */
4012
44.9k
    YYPTRDIFF_T yysize1 = yysize + (yystrlen (yyformat) - 2 * yycount) + 1;
4013
44.9k
    if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
4014
44.9k
      yysize = yysize1;
4015
0
    else
4016
0
      return 2;
4017
44.9k
  }
4018
4019
44.9k
  if (*yymsg_alloc < yysize)
4020
6
    {
4021
6
      *yymsg_alloc = 2 * yysize;
4022
6
      if (! (yysize <= *yymsg_alloc
4023
6
             && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
4024
0
        *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
4025
6
      return 1;
4026
6
    }
4027
4028
  /* Avoid sprintf, as that infringes on the user's name space.
4029
     Don't have undefined behavior even if the translation
4030
     produced a string with the wrong number of "%s"s.  */
4031
44.9k
  {
4032
44.9k
    char *yyp = *yymsg;
4033
44.9k
    int yyi = 0;
4034
1.39M
    while ((*yyp = *yyformat) != '\0')
4035
1.35M
      if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
4036
63.9k
        {
4037
63.9k
          yyp += yytnamerr (yyp, yyarg[yyi++]);
4038
63.9k
          yyformat += 2;
4039
63.9k
        }
4040
1.28M
      else
4041
1.28M
        {
4042
1.28M
          ++yyp;
4043
1.28M
          ++yyformat;
4044
1.28M
        }
4045
44.9k
  }
4046
44.9k
  return 0;
4047
44.9k
}
4048
#endif /* YYERROR_VERBOSE */
4049
4050
/*-----------------------------------------------.
4051
| Release the memory associated to this symbol.  |
4052
`-----------------------------------------------*/
4053
4054
static void
4055
yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
4056
961k
{
4057
961k
  YYUSE (yyvaluep);
4058
961k
  if (!yymsg)
4059
0
    yymsg = "Deleting";
4060
961k
  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
4061
4062
961k
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
4063
961k
  switch (yytype)
4064
961k
    {
4065
165
    case 73: /* "integer"  */
4066
165
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4067
165
            { zend_ast_destroy(((*yyvaluep).ast)); }
4068
165
#line 4069 "/src/php-src/Zend/zend_language_parser.c"
4069
165
        break;
4070
4071
204
    case 74: /* "floating-point number"  */
4072
204
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4073
204
            { zend_ast_destroy(((*yyvaluep).ast)); }
4074
204
#line 4075 "/src/php-src/Zend/zend_language_parser.c"
4075
204
        break;
4076
4077
5.10k
    case 75: /* "identifier"  */
4078
5.10k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4079
5.10k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4080
5.10k
#line 4081 "/src/php-src/Zend/zend_language_parser.c"
4081
5.10k
        break;
4082
4083
67
    case 76: /* "fully qualified name"  */
4084
67
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4085
67
            { zend_ast_destroy(((*yyvaluep).ast)); }
4086
67
#line 4087 "/src/php-src/Zend/zend_language_parser.c"
4087
67
        break;
4088
4089
36
    case 77: /* "namespace-relative name"  */
4090
36
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4091
36
            { zend_ast_destroy(((*yyvaluep).ast)); }
4092
36
#line 4093 "/src/php-src/Zend/zend_language_parser.c"
4093
36
        break;
4094
4095
61
    case 78: /* "namespaced name"  */
4096
61
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4097
61
            { zend_ast_destroy(((*yyvaluep).ast)); }
4098
61
#line 4099 "/src/php-src/Zend/zend_language_parser.c"
4099
61
        break;
4100
4101
1.99k
    case 79: /* "variable"  */
4102
1.99k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4103
1.99k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4104
1.99k
#line 4105 "/src/php-src/Zend/zend_language_parser.c"
4105
1.99k
        break;
4106
4107
5
    case 80: /* T_INLINE_HTML  */
4108
5
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4109
5
            { zend_ast_destroy(((*yyvaluep).ast)); }
4110
5
#line 4111 "/src/php-src/Zend/zend_language_parser.c"
4111
5
        break;
4112
4113
39.1k
    case 81: /* "string content"  */
4114
39.1k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4115
39.1k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4116
39.1k
#line 4117 "/src/php-src/Zend/zend_language_parser.c"
4117
39.1k
        break;
4118
4119
237
    case 82: /* "quoted string"  */
4120
237
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4121
237
            { zend_ast_destroy(((*yyvaluep).ast)); }
4122
237
#line 4123 "/src/php-src/Zend/zend_language_parser.c"
4123
237
        break;
4124
4125
165
    case 83: /* "variable name"  */
4126
165
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4127
165
            { zend_ast_destroy(((*yyvaluep).ast)); }
4128
165
#line 4129 "/src/php-src/Zend/zend_language_parser.c"
4129
165
        break;
4130
4131
2
    case 84: /* "number"  */
4132
2
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4133
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4134
2
#line 4135 "/src/php-src/Zend/zend_language_parser.c"
4135
2
        break;
4136
4137
649
    case 190: /* identifier  */
4138
649
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4139
649
            { zend_ast_destroy(((*yyvaluep).ast)); }
4140
649
#line 4141 "/src/php-src/Zend/zend_language_parser.c"
4141
649
        break;
4142
4143
44.6k
    case 191: /* top_statement_list  */
4144
44.6k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4145
44.6k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4146
44.6k
#line 4147 "/src/php-src/Zend/zend_language_parser.c"
4147
44.6k
        break;
4148
4149
194
    case 192: /* namespace_declaration_name  */
4150
194
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4151
194
            { zend_ast_destroy(((*yyvaluep).ast)); }
4152
194
#line 4153 "/src/php-src/Zend/zend_language_parser.c"
4153
194
        break;
4154
4155
1
    case 193: /* namespace_name  */
4156
1
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4157
1
            { zend_ast_destroy(((*yyvaluep).ast)); }
4158
1
#line 4159 "/src/php-src/Zend/zend_language_parser.c"
4159
1
        break;
4160
4161
92
    case 194: /* legacy_namespace_name  */
4162
92
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4163
92
            { zend_ast_destroy(((*yyvaluep).ast)); }
4164
92
#line 4165 "/src/php-src/Zend/zend_language_parser.c"
4165
92
        break;
4166
4167
8.52k
    case 195: /* name  */
4168
8.52k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4169
8.52k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4170
8.52k
#line 4171 "/src/php-src/Zend/zend_language_parser.c"
4171
8.52k
        break;
4172
4173
0
    case 196: /* attribute_decl  */
4174
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4175
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4176
0
#line 4177 "/src/php-src/Zend/zend_language_parser.c"
4177
0
        break;
4178
4179
108
    case 197: /* attribute_group  */
4180
108
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4181
108
            { zend_ast_destroy(((*yyvaluep).ast)); }
4182
108
#line 4183 "/src/php-src/Zend/zend_language_parser.c"
4183
108
        break;
4184
4185
0
    case 198: /* attribute  */
4186
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4187
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4188
0
#line 4189 "/src/php-src/Zend/zend_language_parser.c"
4189
0
        break;
4190
4191
230
    case 199: /* attributes  */
4192
230
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4193
230
            { zend_ast_destroy(((*yyvaluep).ast)); }
4194
230
#line 4195 "/src/php-src/Zend/zend_language_parser.c"
4195
230
        break;
4196
4197
0
    case 200: /* attributed_statement  */
4198
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4199
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4200
0
#line 4201 "/src/php-src/Zend/zend_language_parser.c"
4201
0
        break;
4202
4203
0
    case 201: /* attributed_top_statement  */
4204
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4205
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4206
0
#line 4207 "/src/php-src/Zend/zend_language_parser.c"
4207
0
        break;
4208
4209
0
    case 202: /* top_statement  */
4210
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4211
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4212
0
#line 4213 "/src/php-src/Zend/zend_language_parser.c"
4213
0
        break;
4214
4215
4
    case 206: /* group_use_declaration  */
4216
4
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4217
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4218
4
#line 4219 "/src/php-src/Zend/zend_language_parser.c"
4219
4
        break;
4220
4221
5
    case 207: /* mixed_group_use_declaration  */
4222
5
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4223
5
            { zend_ast_destroy(((*yyvaluep).ast)); }
4224
5
#line 4225 "/src/php-src/Zend/zend_language_parser.c"
4225
5
        break;
4226
4227
37
    case 209: /* inline_use_declarations  */
4228
37
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4229
37
            { zend_ast_destroy(((*yyvaluep).ast)); }
4230
37
#line 4231 "/src/php-src/Zend/zend_language_parser.c"
4231
37
        break;
4232
4233
19
    case 210: /* unprefixed_use_declarations  */
4234
19
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4235
19
            { zend_ast_destroy(((*yyvaluep).ast)); }
4236
19
#line 4237 "/src/php-src/Zend/zend_language_parser.c"
4237
19
        break;
4238
4239
36
    case 211: /* use_declarations  */
4240
36
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4241
36
            { zend_ast_destroy(((*yyvaluep).ast)); }
4242
36
#line 4243 "/src/php-src/Zend/zend_language_parser.c"
4243
36
        break;
4244
4245
0
    case 212: /* inline_use_declaration  */
4246
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4247
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4248
0
#line 4249 "/src/php-src/Zend/zend_language_parser.c"
4249
0
        break;
4250
4251
0
    case 213: /* unprefixed_use_declaration  */
4252
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4253
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4254
0
#line 4255 "/src/php-src/Zend/zend_language_parser.c"
4255
0
        break;
4256
4257
0
    case 214: /* use_declaration  */
4258
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4259
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4260
0
#line 4261 "/src/php-src/Zend/zend_language_parser.c"
4261
0
        break;
4262
4263
119
    case 215: /* const_list  */
4264
119
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4265
119
            { zend_ast_destroy(((*yyvaluep).ast)); }
4266
119
#line 4267 "/src/php-src/Zend/zend_language_parser.c"
4267
119
        break;
4268
4269
32.8k
    case 216: /* inner_statement_list  */
4270
32.8k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4271
32.8k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4272
32.8k
#line 4273 "/src/php-src/Zend/zend_language_parser.c"
4273
32.8k
        break;
4274
4275
0
    case 217: /* inner_statement  */
4276
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4277
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4278
0
#line 4279 "/src/php-src/Zend/zend_language_parser.c"
4279
0
        break;
4280
4281
78
    case 218: /* statement  */
4282
78
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4283
78
            { zend_ast_destroy(((*yyvaluep).ast)); }
4284
78
#line 4285 "/src/php-src/Zend/zend_language_parser.c"
4285
78
        break;
4286
4287
380
    case 220: /* catch_list  */
4288
380
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4289
380
            { zend_ast_destroy(((*yyvaluep).ast)); }
4290
380
#line 4291 "/src/php-src/Zend/zend_language_parser.c"
4291
380
        break;
4292
4293
156
    case 221: /* catch_name_list  */
4294
156
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4295
156
            { zend_ast_destroy(((*yyvaluep).ast)); }
4296
156
#line 4297 "/src/php-src/Zend/zend_language_parser.c"
4297
156
        break;
4298
4299
156
    case 222: /* optional_variable  */
4300
156
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4301
156
            { zend_ast_destroy(((*yyvaluep).ast)); }
4302
156
#line 4303 "/src/php-src/Zend/zend_language_parser.c"
4303
156
        break;
4304
4305
0
    case 223: /* finally_statement  */
4306
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4307
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4308
0
#line 4309 "/src/php-src/Zend/zend_language_parser.c"
4309
0
        break;
4310
4311
20
    case 224: /* unset_variables  */
4312
20
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4313
20
            { zend_ast_destroy(((*yyvaluep).ast)); }
4314
20
#line 4315 "/src/php-src/Zend/zend_language_parser.c"
4315
20
        break;
4316
4317
0
    case 225: /* unset_variable  */
4318
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4319
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4320
0
#line 4321 "/src/php-src/Zend/zend_language_parser.c"
4321
0
        break;
4322
4323
1.08k
    case 226: /* function_name  */
4324
1.08k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4325
1.08k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4326
1.08k
#line 4327 "/src/php-src/Zend/zend_language_parser.c"
4327
1.08k
        break;
4328
4329
0
    case 227: /* function_declaration_statement  */
4330
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4331
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4332
0
#line 4333 "/src/php-src/Zend/zend_language_parser.c"
4333
0
        break;
4334
4335
0
    case 230: /* class_declaration_statement  */
4336
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4337
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4338
0
#line 4339 "/src/php-src/Zend/zend_language_parser.c"
4339
0
        break;
4340
4341
0
    case 237: /* trait_declaration_statement  */
4342
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4343
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4344
0
#line 4345 "/src/php-src/Zend/zend_language_parser.c"
4345
0
        break;
4346
4347
0
    case 239: /* interface_declaration_statement  */
4348
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4349
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4350
0
#line 4351 "/src/php-src/Zend/zend_language_parser.c"
4351
0
        break;
4352
4353
0
    case 241: /* enum_declaration_statement  */
4354
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4355
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4356
0
#line 4357 "/src/php-src/Zend/zend_language_parser.c"
4357
0
        break;
4358
4359
332
    case 243: /* enum_backing_type  */
4360
332
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4361
332
            { zend_ast_destroy(((*yyvaluep).ast)); }
4362
332
#line 4363 "/src/php-src/Zend/zend_language_parser.c"
4363
332
        break;
4364
4365
0
    case 244: /* enum_case  */
4366
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4367
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4368
0
#line 4369 "/src/php-src/Zend/zend_language_parser.c"
4369
0
        break;
4370
4371
12
    case 245: /* enum_case_expr  */
4372
12
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4373
12
            { zend_ast_destroy(((*yyvaluep).ast)); }
4374
12
#line 4375 "/src/php-src/Zend/zend_language_parser.c"
4375
12
        break;
4376
4377
1.30k
    case 246: /* extends_from  */
4378
1.30k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4379
1.30k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4380
1.30k
#line 4381 "/src/php-src/Zend/zend_language_parser.c"
4381
1.30k
        break;
4382
4383
78
    case 247: /* interface_extends_list  */
4384
78
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4385
78
            { zend_ast_destroy(((*yyvaluep).ast)); }
4386
78
#line 4387 "/src/php-src/Zend/zend_language_parser.c"
4387
78
        break;
4388
4389
1.63k
    case 248: /* implements_list  */
4390
1.63k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4391
1.63k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4392
1.63k
#line 4393 "/src/php-src/Zend/zend_language_parser.c"
4393
1.63k
        break;
4394
4395
385
    case 249: /* foreach_variable  */
4396
385
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4397
385
            { zend_ast_destroy(((*yyvaluep).ast)); }
4398
385
#line 4399 "/src/php-src/Zend/zend_language_parser.c"
4399
385
        break;
4400
4401
0
    case 250: /* for_statement  */
4402
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4403
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4404
0
#line 4405 "/src/php-src/Zend/zend_language_parser.c"
4405
0
        break;
4406
4407
0
    case 251: /* foreach_statement  */
4408
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4409
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4410
0
#line 4411 "/src/php-src/Zend/zend_language_parser.c"
4411
0
        break;
4412
4413
0
    case 252: /* declare_statement  */
4414
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4415
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4416
0
#line 4417 "/src/php-src/Zend/zend_language_parser.c"
4417
0
        break;
4418
4419
0
    case 253: /* switch_case_list  */
4420
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4421
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4422
0
#line 4423 "/src/php-src/Zend/zend_language_parser.c"
4423
0
        break;
4424
4425
102
    case 254: /* case_list  */
4426
102
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4427
102
            { zend_ast_destroy(((*yyvaluep).ast)); }
4428
102
#line 4429 "/src/php-src/Zend/zend_language_parser.c"
4429
102
        break;
4430
4431
0
    case 255: /* match  */
4432
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4433
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4434
0
#line 4435 "/src/php-src/Zend/zend_language_parser.c"
4435
0
        break;
4436
4437
17
    case 256: /* match_arm_list  */
4438
17
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4439
17
            { zend_ast_destroy(((*yyvaluep).ast)); }
4440
17
#line 4441 "/src/php-src/Zend/zend_language_parser.c"
4441
17
        break;
4442
4443
81
    case 257: /* non_empty_match_arm_list  */
4444
81
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4445
81
            { zend_ast_destroy(((*yyvaluep).ast)); }
4446
81
#line 4447 "/src/php-src/Zend/zend_language_parser.c"
4447
81
        break;
4448
4449
0
    case 258: /* match_arm  */
4450
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4451
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4452
0
#line 4453 "/src/php-src/Zend/zend_language_parser.c"
4453
0
        break;
4454
4455
235
    case 259: /* match_arm_cond_list  */
4456
235
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4457
235
            { zend_ast_destroy(((*yyvaluep).ast)); }
4458
235
#line 4459 "/src/php-src/Zend/zend_language_parser.c"
4459
235
        break;
4460
4461
0
    case 260: /* while_statement  */
4462
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4463
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4464
0
#line 4465 "/src/php-src/Zend/zend_language_parser.c"
4465
0
        break;
4466
4467
98
    case 261: /* if_stmt_without_else  */
4468
98
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4469
98
            { zend_ast_destroy(((*yyvaluep).ast)); }
4470
98
#line 4471 "/src/php-src/Zend/zend_language_parser.c"
4471
98
        break;
4472
4473
0
    case 262: /* if_stmt  */
4474
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4475
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4476
0
#line 4477 "/src/php-src/Zend/zend_language_parser.c"
4477
0
        break;
4478
4479
88
    case 263: /* alt_if_stmt_without_else  */
4480
88
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4481
88
            { zend_ast_destroy(((*yyvaluep).ast)); }
4482
88
#line 4483 "/src/php-src/Zend/zend_language_parser.c"
4483
88
        break;
4484
4485
0
    case 264: /* alt_if_stmt  */
4486
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4487
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4488
0
#line 4489 "/src/php-src/Zend/zend_language_parser.c"
4489
0
        break;
4490
4491
2.94k
    case 265: /* parameter_list  */
4492
2.94k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4493
2.94k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4494
2.94k
#line 4495 "/src/php-src/Zend/zend_language_parser.c"
4495
2.94k
        break;
4496
4497
52
    case 266: /* non_empty_parameter_list  */
4498
52
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4499
52
            { zend_ast_destroy(((*yyvaluep).ast)); }
4500
52
#line 4501 "/src/php-src/Zend/zend_language_parser.c"
4501
52
        break;
4502
4503
0
    case 267: /* attributed_parameter  */
4504
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4505
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4506
0
#line 4507 "/src/php-src/Zend/zend_language_parser.c"
4507
0
        break;
4508
4509
0
    case 269: /* parameter  */
4510
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4511
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4512
0
#line 4513 "/src/php-src/Zend/zend_language_parser.c"
4513
0
        break;
4514
4515
983
    case 270: /* optional_type_without_static  */
4516
983
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4517
983
            { zend_ast_destroy(((*yyvaluep).ast)); }
4518
983
#line 4519 "/src/php-src/Zend/zend_language_parser.c"
4519
983
        break;
4520
4521
46
    case 271: /* type_expr  */
4522
46
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4523
46
            { zend_ast_destroy(((*yyvaluep).ast)); }
4524
46
#line 4525 "/src/php-src/Zend/zend_language_parser.c"
4525
46
        break;
4526
4527
11
    case 272: /* type  */
4528
11
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4529
11
            { zend_ast_destroy(((*yyvaluep).ast)); }
4530
11
#line 4531 "/src/php-src/Zend/zend_language_parser.c"
4531
11
        break;
4532
4533
13
    case 273: /* union_type_element  */
4534
13
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4535
13
            { zend_ast_destroy(((*yyvaluep).ast)); }
4536
13
#line 4537 "/src/php-src/Zend/zend_language_parser.c"
4537
13
        break;
4538
4539
8
    case 274: /* union_type  */
4540
8
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4541
8
            { zend_ast_destroy(((*yyvaluep).ast)); }
4542
8
#line 4543 "/src/php-src/Zend/zend_language_parser.c"
4543
8
        break;
4544
4545
11
    case 275: /* intersection_type  */
4546
11
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4547
11
            { zend_ast_destroy(((*yyvaluep).ast)); }
4548
11
#line 4549 "/src/php-src/Zend/zend_language_parser.c"
4549
11
        break;
4550
4551
0
    case 276: /* type_expr_without_static  */
4552
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4553
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4554
0
#line 4555 "/src/php-src/Zend/zend_language_parser.c"
4555
0
        break;
4556
4557
33
    case 277: /* type_without_static  */
4558
33
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4559
33
            { zend_ast_destroy(((*yyvaluep).ast)); }
4560
33
#line 4561 "/src/php-src/Zend/zend_language_parser.c"
4561
33
        break;
4562
4563
9
    case 278: /* union_type_without_static_element  */
4564
9
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4565
9
            { zend_ast_destroy(((*yyvaluep).ast)); }
4566
9
#line 4567 "/src/php-src/Zend/zend_language_parser.c"
4567
9
        break;
4568
4569
6
    case 279: /* union_type_without_static  */
4570
6
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4571
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4572
6
#line 4573 "/src/php-src/Zend/zend_language_parser.c"
4573
6
        break;
4574
4575
9
    case 280: /* intersection_type_without_static  */
4576
9
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4577
9
            { zend_ast_destroy(((*yyvaluep).ast)); }
4578
9
#line 4579 "/src/php-src/Zend/zend_language_parser.c"
4579
9
        break;
4580
4581
2.81k
    case 281: /* return_type  */
4582
2.81k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4583
2.81k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4584
2.81k
#line 4585 "/src/php-src/Zend/zend_language_parser.c"
4585
2.81k
        break;
4586
4587
0
    case 282: /* argument_list  */
4588
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4589
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4590
0
#line 4591 "/src/php-src/Zend/zend_language_parser.c"
4591
0
        break;
4592
4593
1.89k
    case 283: /* non_empty_argument_list  */
4594
1.89k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4595
1.89k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4596
1.89k
#line 4597 "/src/php-src/Zend/zend_language_parser.c"
4597
1.89k
        break;
4598
4599
0
    case 284: /* clone_argument_list  */
4600
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4601
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4602
0
#line 4603 "/src/php-src/Zend/zend_language_parser.c"
4603
0
        break;
4604
4605
48
    case 285: /* non_empty_clone_argument_list  */
4606
48
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4607
48
            { zend_ast_destroy(((*yyvaluep).ast)); }
4608
48
#line 4609 "/src/php-src/Zend/zend_language_parser.c"
4609
48
        break;
4610
4611
0
    case 286: /* argument_no_expr  */
4612
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4613
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4614
0
#line 4615 "/src/php-src/Zend/zend_language_parser.c"
4615
0
        break;
4616
4617
0
    case 287: /* argument  */
4618
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4619
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4620
0
#line 4621 "/src/php-src/Zend/zend_language_parser.c"
4621
0
        break;
4622
4623
18
    case 288: /* global_var_list  */
4624
18
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4625
18
            { zend_ast_destroy(((*yyvaluep).ast)); }
4626
18
#line 4627 "/src/php-src/Zend/zend_language_parser.c"
4627
18
        break;
4628
4629
0
    case 289: /* global_var  */
4630
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4631
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4632
0
#line 4633 "/src/php-src/Zend/zend_language_parser.c"
4633
0
        break;
4634
4635
21
    case 290: /* static_var_list  */
4636
21
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4637
21
            { zend_ast_destroy(((*yyvaluep).ast)); }
4638
21
#line 4639 "/src/php-src/Zend/zend_language_parser.c"
4639
21
        break;
4640
4641
0
    case 291: /* static_var  */
4642
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4643
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4644
0
#line 4645 "/src/php-src/Zend/zend_language_parser.c"
4645
0
        break;
4646
4647
1.46k
    case 292: /* class_statement_list  */
4648
1.46k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4649
1.46k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4650
1.46k
#line 4651 "/src/php-src/Zend/zend_language_parser.c"
4651
1.46k
        break;
4652
4653
0
    case 293: /* attributed_class_statement  */
4654
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4655
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4656
0
#line 4657 "/src/php-src/Zend/zend_language_parser.c"
4657
0
        break;
4658
4659
0
    case 294: /* class_statement  */
4660
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4661
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4662
0
#line 4663 "/src/php-src/Zend/zend_language_parser.c"
4663
0
        break;
4664
4665
110
    case 295: /* class_name_list  */
4666
110
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4667
110
            { zend_ast_destroy(((*yyvaluep).ast)); }
4668
110
#line 4669 "/src/php-src/Zend/zend_language_parser.c"
4669
110
        break;
4670
4671
0
    case 296: /* trait_adaptations  */
4672
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4673
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4674
0
#line 4675 "/src/php-src/Zend/zend_language_parser.c"
4675
0
        break;
4676
4677
49
    case 297: /* trait_adaptation_list  */
4678
49
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4679
49
            { zend_ast_destroy(((*yyvaluep).ast)); }
4680
49
#line 4681 "/src/php-src/Zend/zend_language_parser.c"
4681
49
        break;
4682
4683
0
    case 298: /* trait_adaptation  */
4684
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4685
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4686
0
#line 4687 "/src/php-src/Zend/zend_language_parser.c"
4687
0
        break;
4688
4689
6
    case 299: /* trait_precedence  */
4690
6
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4691
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4692
6
#line 4693 "/src/php-src/Zend/zend_language_parser.c"
4693
6
        break;
4694
4695
17
    case 300: /* trait_alias  */
4696
17
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4697
17
            { zend_ast_destroy(((*yyvaluep).ast)); }
4698
17
#line 4699 "/src/php-src/Zend/zend_language_parser.c"
4699
17
        break;
4700
4701
19
    case 301: /* trait_method_reference  */
4702
19
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4703
19
            { zend_ast_destroy(((*yyvaluep).ast)); }
4704
19
#line 4705 "/src/php-src/Zend/zend_language_parser.c"
4705
19
        break;
4706
4707
3
    case 302: /* absolute_trait_method_reference  */
4708
3
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4709
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4710
3
#line 4711 "/src/php-src/Zend/zend_language_parser.c"
4711
3
        break;
4712
4713
0
    case 303: /* method_body  */
4714
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4715
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4716
0
#line 4717 "/src/php-src/Zend/zend_language_parser.c"
4717
0
        break;
4718
4719
0
    case 307: /* non_empty_member_modifiers  */
4720
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4721
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4722
0
#line 4723 "/src/php-src/Zend/zend_language_parser.c"
4723
0
        break;
4724
4725
63
    case 309: /* property_list  */
4726
63
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4727
63
            { zend_ast_destroy(((*yyvaluep).ast)); }
4728
63
#line 4729 "/src/php-src/Zend/zend_language_parser.c"
4729
63
        break;
4730
4731
0
    case 310: /* property  */
4732
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4733
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4734
0
#line 4735 "/src/php-src/Zend/zend_language_parser.c"
4735
0
        break;
4736
4737
0
    case 311: /* hooked_property  */
4738
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4739
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4740
0
#line 4741 "/src/php-src/Zend/zend_language_parser.c"
4741
0
        break;
4742
4743
537
    case 312: /* property_hook_list  */
4744
537
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4745
537
            { zend_ast_destroy(((*yyvaluep).ast)); }
4746
537
#line 4747 "/src/php-src/Zend/zend_language_parser.c"
4747
537
        break;
4748
4749
0
    case 313: /* optional_property_hook_list  */
4750
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4751
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4752
0
#line 4753 "/src/php-src/Zend/zend_language_parser.c"
4753
0
        break;
4754
4755
0
    case 315: /* property_hook  */
4756
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4757
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4758
0
#line 4759 "/src/php-src/Zend/zend_language_parser.c"
4759
0
        break;
4760
4761
0
    case 317: /* property_hook_body  */
4762
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4763
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4764
0
#line 4765 "/src/php-src/Zend/zend_language_parser.c"
4765
0
        break;
4766
4767
147
    case 318: /* optional_parameter_list  */
4768
147
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4769
147
            { zend_ast_destroy(((*yyvaluep).ast)); }
4770
147
#line 4771 "/src/php-src/Zend/zend_language_parser.c"
4771
147
        break;
4772
4773
27
    case 319: /* class_const_list  */
4774
27
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4775
27
            { zend_ast_destroy(((*yyvaluep).ast)); }
4776
27
#line 4777 "/src/php-src/Zend/zend_language_parser.c"
4777
27
        break;
4778
4779
0
    case 320: /* class_const_decl  */
4780
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4781
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4782
0
#line 4783 "/src/php-src/Zend/zend_language_parser.c"
4783
0
        break;
4784
4785
0
    case 321: /* const_decl  */
4786
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4787
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4788
0
#line 4789 "/src/php-src/Zend/zend_language_parser.c"
4789
0
        break;
4790
4791
202
    case 322: /* echo_expr_list  */
4792
202
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4793
202
            { zend_ast_destroy(((*yyvaluep).ast)); }
4794
202
#line 4795 "/src/php-src/Zend/zend_language_parser.c"
4795
202
        break;
4796
4797
0
    case 323: /* echo_expr  */
4798
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4799
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4800
0
#line 4801 "/src/php-src/Zend/zend_language_parser.c"
4801
0
        break;
4802
4803
1.01k
    case 324: /* for_cond_exprs  */
4804
1.01k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4805
1.01k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4806
1.01k
#line 4807 "/src/php-src/Zend/zend_language_parser.c"
4807
1.01k
        break;
4808
4809
2.00k
    case 325: /* for_exprs  */
4810
2.00k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4811
2.00k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4812
2.00k
#line 4813 "/src/php-src/Zend/zend_language_parser.c"
4813
2.00k
        break;
4814
4815
35
    case 326: /* non_empty_for_exprs  */
4816
35
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4817
35
            { zend_ast_destroy(((*yyvaluep).ast)); }
4818
35
#line 4819 "/src/php-src/Zend/zend_language_parser.c"
4819
35
        break;
4820
4821
0
    case 327: /* anonymous_class  */
4822
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4823
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4824
0
#line 4825 "/src/php-src/Zend/zend_language_parser.c"
4825
0
        break;
4826
4827
0
    case 329: /* new_dereferenceable  */
4828
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4829
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4830
0
#line 4831 "/src/php-src/Zend/zend_language_parser.c"
4831
0
        break;
4832
4833
0
    case 330: /* new_non_dereferenceable  */
4834
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4835
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4836
0
#line 4837 "/src/php-src/Zend/zend_language_parser.c"
4837
0
        break;
4838
4839
27.6k
    case 331: /* expr  */
4840
27.6k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4841
27.6k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4842
27.6k
#line 4843 "/src/php-src/Zend/zend_language_parser.c"
4843
27.6k
        break;
4844
4845
0
    case 332: /* inline_function  */
4846
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4847
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4848
0
#line 4849 "/src/php-src/Zend/zend_language_parser.c"
4849
0
        break;
4850
4851
6.18k
    case 335: /* backup_doc_comment  */
4852
6.18k
#line 52 "/src/php-src/Zend/zend_language_parser.y"
4853
6.18k
            { if (((*yyvaluep).str)) zend_string_release_ex(((*yyvaluep).str), 0); }
4854
6.18k
#line 4855 "/src/php-src/Zend/zend_language_parser.c"
4855
6.18k
        break;
4856
4857
736
    case 339: /* lexical_vars  */
4858
736
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4859
736
            { zend_ast_destroy(((*yyvaluep).ast)); }
4860
736
#line 4861 "/src/php-src/Zend/zend_language_parser.c"
4861
736
        break;
4862
4863
18
    case 340: /* lexical_var_list  */
4864
18
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4865
18
            { zend_ast_destroy(((*yyvaluep).ast)); }
4866
18
#line 4867 "/src/php-src/Zend/zend_language_parser.c"
4867
18
        break;
4868
4869
0
    case 341: /* lexical_var  */
4870
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4871
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4872
0
#line 4873 "/src/php-src/Zend/zend_language_parser.c"
4873
0
        break;
4874
4875
0
    case 342: /* function_call  */
4876
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4877
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4878
0
#line 4879 "/src/php-src/Zend/zend_language_parser.c"
4879
0
        break;
4880
4881
719
    case 344: /* class_name  */
4882
719
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4883
719
            { zend_ast_destroy(((*yyvaluep).ast)); }
4884
719
#line 4885 "/src/php-src/Zend/zend_language_parser.c"
4885
719
        break;
4886
4887
529
    case 345: /* class_name_reference  */
4888
529
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4889
529
            { zend_ast_destroy(((*yyvaluep).ast)); }
4890
529
#line 4891 "/src/php-src/Zend/zend_language_parser.c"
4891
529
        break;
4892
4893
546
    case 346: /* backticks_expr  */
4894
546
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4895
546
            { zend_ast_destroy(((*yyvaluep).ast)); }
4896
546
#line 4897 "/src/php-src/Zend/zend_language_parser.c"
4897
546
        break;
4898
4899
135
    case 347: /* ctor_arguments  */
4900
135
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4901
135
            { zend_ast_destroy(((*yyvaluep).ast)); }
4902
135
#line 4903 "/src/php-src/Zend/zend_language_parser.c"
4903
135
        break;
4904
4905
0
    case 348: /* dereferenceable_scalar  */
4906
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4907
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4908
0
#line 4909 "/src/php-src/Zend/zend_language_parser.c"
4909
0
        break;
4910
4911
0
    case 349: /* scalar  */
4912
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4913
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4914
0
#line 4915 "/src/php-src/Zend/zend_language_parser.c"
4915
0
        break;
4916
4917
0
    case 350: /* constant  */
4918
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4919
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4920
0
#line 4921 "/src/php-src/Zend/zend_language_parser.c"
4921
0
        break;
4922
4923
0
    case 351: /* class_constant  */
4924
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4925
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4926
0
#line 4927 "/src/php-src/Zend/zend_language_parser.c"
4927
0
        break;
4928
4929
377
    case 352: /* optional_expr  */
4930
377
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4931
377
            { zend_ast_destroy(((*yyvaluep).ast)); }
4932
377
#line 4933 "/src/php-src/Zend/zend_language_parser.c"
4933
377
        break;
4934
4935
428
    case 353: /* variable_class_name  */
4936
428
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4937
428
            { zend_ast_destroy(((*yyvaluep).ast)); }
4938
428
#line 4939 "/src/php-src/Zend/zend_language_parser.c"
4939
428
        break;
4940
4941
0
    case 354: /* fully_dereferenceable  */
4942
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4943
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4944
0
#line 4945 "/src/php-src/Zend/zend_language_parser.c"
4945
0
        break;
4946
4947
3.86k
    case 355: /* array_object_dereferenceable  */
4948
3.86k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4949
3.86k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4950
3.86k
#line 4951 "/src/php-src/Zend/zend_language_parser.c"
4951
3.86k
        break;
4952
4953
3.03k
    case 356: /* callable_expr  */
4954
3.03k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4955
3.03k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4956
3.03k
#line 4957 "/src/php-src/Zend/zend_language_parser.c"
4957
3.03k
        break;
4958
4959
0
    case 357: /* callable_variable  */
4960
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4961
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4962
0
#line 4963 "/src/php-src/Zend/zend_language_parser.c"
4963
0
        break;
4964
4965
2.68k
    case 358: /* variable  */
4966
2.68k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4967
2.68k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4968
2.68k
#line 4969 "/src/php-src/Zend/zend_language_parser.c"
4969
2.68k
        break;
4970
4971
0
    case 359: /* simple_variable  */
4972
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4973
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4974
0
#line 4975 "/src/php-src/Zend/zend_language_parser.c"
4975
0
        break;
4976
4977
0
    case 360: /* static_member  */
4978
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4979
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4980
0
#line 4981 "/src/php-src/Zend/zend_language_parser.c"
4981
0
        break;
4982
4983
468
    case 361: /* new_variable  */
4984
468
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4985
468
            { zend_ast_destroy(((*yyvaluep).ast)); }
4986
468
#line 4987 "/src/php-src/Zend/zend_language_parser.c"
4987
468
        break;
4988
4989
372
    case 362: /* member_name  */
4990
372
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4991
372
            { zend_ast_destroy(((*yyvaluep).ast)); }
4992
372
#line 4993 "/src/php-src/Zend/zend_language_parser.c"
4993
372
        break;
4994
4995
587
    case 363: /* property_name  */
4996
587
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4997
587
            { zend_ast_destroy(((*yyvaluep).ast)); }
4998
587
#line 4999 "/src/php-src/Zend/zend_language_parser.c"
4999
587
        break;
5000
5001
763
    case 364: /* array_pair_list  */
5002
763
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5003
763
            { zend_ast_destroy(((*yyvaluep).ast)); }
5004
763
#line 5005 "/src/php-src/Zend/zend_language_parser.c"
5005
763
        break;
5006
5007
0
    case 365: /* possible_array_pair  */
5008
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5009
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
5010
0
#line 5011 "/src/php-src/Zend/zend_language_parser.c"
5011
0
        break;
5012
5013
592
    case 366: /* non_empty_array_pair_list  */
5014
592
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5015
592
            { zend_ast_destroy(((*yyvaluep).ast)); }
5016
592
#line 5017 "/src/php-src/Zend/zend_language_parser.c"
5017
592
        break;
5018
5019
0
    case 367: /* array_pair  */
5020
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5021
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
5022
0
#line 5023 "/src/php-src/Zend/zend_language_parser.c"
5023
0
        break;
5024
5025
15.0k
    case 368: /* encaps_list  */
5026
15.0k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5027
15.0k
            { zend_ast_destroy(((*yyvaluep).ast)); }
5028
15.0k
#line 5029 "/src/php-src/Zend/zend_language_parser.c"
5029
15.0k
        break;
5030
5031
0
    case 369: /* encaps_var  */
5032
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5033
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
5034
0
#line 5035 "/src/php-src/Zend/zend_language_parser.c"
5035
0
        break;
5036
5037
697
    case 370: /* encaps_var_offset  */
5038
697
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5039
697
            { zend_ast_destroy(((*yyvaluep).ast)); }
5040
697
#line 5041 "/src/php-src/Zend/zend_language_parser.c"
5041
697
        break;
5042
5043
0
    case 371: /* internal_functions_in_yacc  */
5044
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5045
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
5046
0
#line 5047 "/src/php-src/Zend/zend_language_parser.c"
5047
0
        break;
5048
5049
93
    case 372: /* isset_variables  */
5050
93
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5051
93
            { zend_ast_destroy(((*yyvaluep).ast)); }
5052
93
#line 5053 "/src/php-src/Zend/zend_language_parser.c"
5053
93
        break;
5054
5055
0
    case 373: /* isset_variable  */
5056
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5057
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
5058
0
#line 5059 "/src/php-src/Zend/zend_language_parser.c"
5059
0
        break;
5060
5061
739k
      default:
5062
739k
        break;
5063
961k
    }
5064
961k
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5065
961k
}
5066
5067
5068
5069
5070
/*----------.
5071
| yyparse.  |
5072
`----------*/
5073
5074
int
5075
yyparse (void)
5076
145k
{
5077
/* The lookahead symbol.  */
5078
145k
int yychar;
5079
5080
5081
/* The semantic value of the lookahead symbol.  */
5082
/* Default value used for initialization, for pacifying older GCCs
5083
   or non-GCC compilers.  */
5084
145k
YY_INITIAL_VALUE (static YYSTYPE yyval_default;)
5085
145k
YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
5086
5087
    /* Number of syntax errors so far.  */
5088
145k
    int yynerrs;
5089
5090
145k
    yy_state_fast_t yystate;
5091
    /* Number of tokens to shift before error messages enabled.  */
5092
145k
    int yyerrstatus;
5093
5094
    /* The stacks and their tools:
5095
       'yyss': related to states.
5096
       'yyvs': related to semantic values.
5097
5098
       Refer to the stacks through separate pointers, to allow yyoverflow
5099
       to reallocate them elsewhere.  */
5100
5101
    /* The state stack.  */
5102
145k
    yy_state_t yyssa[YYINITDEPTH];
5103
145k
    yy_state_t *yyss;
5104
145k
    yy_state_t *yyssp;
5105
5106
    /* The semantic value stack.  */
5107
145k
    YYSTYPE yyvsa[YYINITDEPTH];
5108
145k
    YYSTYPE *yyvs;
5109
145k
    YYSTYPE *yyvsp;
5110
5111
145k
    YYPTRDIFF_T yystacksize;
5112
5113
145k
  int yyn;
5114
145k
  int yyresult;
5115
  /* Lookahead token as an internal (translated) token number.  */
5116
145k
  int yytoken = 0;
5117
  /* The variables used to return semantic value and location from the
5118
     action routines.  */
5119
145k
  YYSTYPE yyval;
5120
5121
145k
#if YYERROR_VERBOSE
5122
  /* Buffer for error messages, and its allocated size.  */
5123
145k
  char yymsgbuf[128];
5124
145k
  char *yymsg = yymsgbuf;
5125
145k
  YYPTRDIFF_T yymsg_alloc = sizeof yymsgbuf;
5126
145k
#endif
5127
5128
24.4M
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
5129
5130
  /* The number of symbols on the RHS of the reduced rule.
5131
     Keep to zero when no symbol should be popped.  */
5132
145k
  int yylen = 0;
5133
5134
145k
  yyssp = yyss = yyssa;
5135
145k
  yyvsp = yyvs = yyvsa;
5136
145k
  yystacksize = YYINITDEPTH;
5137
5138
145k
  YYDPRINTF ((stderr, "Starting parse\n"));
5139
5140
145k
  yystate = 0;
5141
145k
  yyerrstatus = 0;
5142
145k
  yynerrs = 0;
5143
145k
  yychar = YYEMPTY; /* Cause a token to be read.  */
5144
145k
  goto yysetstate;
5145
5146
5147
/*------------------------------------------------------------.
5148
| yynewstate -- push a new state, which is found in yystate.  |
5149
`------------------------------------------------------------*/
5150
34.6M
yynewstate:
5151
  /* In all cases, when you get here, the value and location stacks
5152
     have just been pushed.  So pushing a state here evens the stacks.  */
5153
34.6M
  yyssp++;
5154
5155
5156
/*--------------------------------------------------------------------.
5157
| yysetstate -- set current state (the top of the stack) to yystate.  |
5158
`--------------------------------------------------------------------*/
5159
34.7M
yysetstate:
5160
34.7M
  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
5161
34.7M
  YY_ASSERT (0 <= yystate && yystate < YYNSTATES);
5162
34.7M
  YY_IGNORE_USELESS_CAST_BEGIN
5163
34.7M
  *yyssp = YY_CAST (yy_state_t, yystate);
5164
34.7M
  YY_IGNORE_USELESS_CAST_END
5165
5166
34.7M
  if (yyss + yystacksize - 1 <= yyssp)
5167
#if !defined yyoverflow && !defined YYSTACK_RELOCATE
5168
    goto yyexhaustedlab;
5169
#else
5170
2.45k
    {
5171
      /* Get the current used size of the three stacks, in elements.  */
5172
2.45k
      YYPTRDIFF_T yysize = yyssp - yyss + 1;
5173
5174
# if defined yyoverflow
5175
      {
5176
        /* Give user a chance to reallocate the stack.  Use copies of
5177
           these so that the &'s don't force the real ones into
5178
           memory.  */
5179
        yy_state_t *yyss1 = yyss;
5180
        YYSTYPE *yyvs1 = yyvs;
5181
5182
        /* Each stack pointer address is followed by the size of the
5183
           data in use in that stack, in bytes.  This used to be a
5184
           conditional around just the two extra args, but that might
5185
           be undefined if yyoverflow is a macro.  */
5186
        yyoverflow (YY_("memory exhausted"),
5187
                    &yyss1, yysize * YYSIZEOF (*yyssp),
5188
                    &yyvs1, yysize * YYSIZEOF (*yyvsp),
5189
                    &yystacksize);
5190
        yyss = yyss1;
5191
        yyvs = yyvs1;
5192
      }
5193
# else /* defined YYSTACK_RELOCATE */
5194
      /* Extend the stack our own way.  */
5195
2.45k
      if (YYMAXDEPTH <= yystacksize)
5196
1
        goto yyexhaustedlab;
5197
2.45k
      yystacksize *= 2;
5198
2.45k
      if (YYMAXDEPTH < yystacksize)
5199
2
        yystacksize = YYMAXDEPTH;
5200
5201
2.45k
      {
5202
2.45k
        yy_state_t *yyss1 = yyss;
5203
2.45k
        union yyalloc *yyptr =
5204
2.45k
          YY_CAST (union yyalloc *,
5205
2.45k
                   YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
5206
2.45k
        if (! yyptr)
5207
0
          goto yyexhaustedlab;
5208
2.45k
        YYSTACK_RELOCATE (yyss_alloc, yyss);
5209
2.45k
        YYSTACK_RELOCATE (yyvs_alloc, yyvs);
5210
2.45k
# undef YYSTACK_RELOCATE
5211
2.45k
        if (yyss1 != yyssa)
5212
1.10k
          YYSTACK_FREE (yyss1);
5213
2.45k
      }
5214
0
# endif
5215
5216
0
      yyssp = yyss + yysize - 1;
5217
2.45k
      yyvsp = yyvs + yysize - 1;
5218
5219
2.45k
      YY_IGNORE_USELESS_CAST_BEGIN
5220
2.45k
      YYDPRINTF ((stderr, "Stack size increased to %ld\n",
5221
2.45k
                  YY_CAST (long, yystacksize)));
5222
2.45k
      YY_IGNORE_USELESS_CAST_END
5223
5224
2.45k
      if (yyss + yystacksize - 1 <= yyssp)
5225
0
        YYABORT;
5226
2.45k
    }
5227
34.7M
#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
5228
5229
34.7M
  if (yystate == YYFINAL)
5230
100k
    YYACCEPT;
5231
5232
34.6M
  goto yybackup;
5233
5234
5235
/*-----------.
5236
| yybackup.  |
5237
`-----------*/
5238
34.6M
yybackup:
5239
  /* Do appropriate processing given the current state.  Read a
5240
     lookahead token if we need one and don't already have one.  */
5241
5242
  /* First try to decide what to do without reference to lookahead token.  */
5243
34.6M
  yyn = yypact[yystate];
5244
34.6M
  if (yypact_value_is_default (yyn))
5245
14.2M
    goto yydefault;
5246
5247
  /* Not known => get a lookahead token if don't already have one.  */
5248
5249
  /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
5250
20.4M
  if (yychar == YYEMPTY)
5251
11.3M
    {
5252
11.3M
      YYDPRINTF ((stderr, "Reading a token: "));
5253
11.3M
      yychar = yylex (&yylval);
5254
11.3M
    }
5255
5256
20.4M
  if (yychar <= YYEOF)
5257
224k
    {
5258
224k
      yychar = yytoken = YYEOF;
5259
224k
      YYDPRINTF ((stderr, "Now at end of input.\n"));
5260
224k
    }
5261
20.2M
  else
5262
20.2M
    {
5263
20.2M
      yytoken = YYTRANSLATE (yychar);
5264
20.2M
      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
5265
20.2M
    }
5266
5267
  /* If the proper action on seeing token YYTOKEN is to reduce or to
5268
     detect an error, take that action.  */
5269
20.4M
  yyn += yytoken;
5270
20.4M
  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
5271
8.73M
    goto yydefault;
5272
11.7M
  yyn = yytable[yyn];
5273
11.7M
  if (yyn <= 0)
5274
472k
    {
5275
472k
      if (yytable_value_is_error (yyn))
5276
156
        goto yyerrlab;
5277
472k
      yyn = -yyn;
5278
472k
      goto yyreduce;
5279
472k
    }
5280
5281
  /* Count tokens shifted since error; after three, turn off error
5282
     status.  */
5283
11.2M
  if (yyerrstatus)
5284
0
    yyerrstatus--;
5285
5286
  /* Shift the lookahead token.  */
5287
11.2M
  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
5288
11.2M
  yystate = yyn;
5289
11.2M
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
5290
11.2M
  *++yyvsp = yylval;
5291
11.2M
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5292
5293
  /* Discard the shifted token.  */
5294
11.2M
  yychar = YYEMPTY;
5295
11.2M
  goto yynewstate;
5296
5297
5298
/*-----------------------------------------------------------.
5299
| yydefault -- do the default action for the current state.  |
5300
`-----------------------------------------------------------*/
5301
22.9M
yydefault:
5302
22.9M
  yyn = yydefact[yystate];
5303
22.9M
  if (yyn == 0)
5304
44.8k
    goto yyerrlab;
5305
22.9M
  goto yyreduce;
5306
5307
5308
/*-----------------------------.
5309
| yyreduce -- do a reduction.  |
5310
`-----------------------------*/
5311
23.3M
yyreduce:
5312
  /* yyn is the number of a rule to reduce with.  */
5313
23.3M
  yylen = yyr2[yyn];
5314
5315
  /* If YYLEN is nonzero, implement the default value of the action:
5316
     '$$ = $1'.
5317
5318
     Otherwise, the following line sets YYVAL to garbage.
5319
     This behavior is undocumented and Bison
5320
     users should not rely upon it.  Assigning to YYVAL
5321
     unconditionally makes the parser a bit smaller, and it avoids a
5322
     GCC warning that YYVAL may be used uninitialized.  */
5323
23.3M
  yyval = yyvsp[1-yylen];
5324
5325
5326
23.3M
  YY_REDUCE_PRINT (yyn);
5327
23.3M
  switch (yyn)
5328
23.3M
    {
5329
101k
  case 2:
5330
101k
#line 304 "/src/php-src/Zend/zend_language_parser.y"
5331
101k
                                { CG(ast) = (yyvsp[0].ast); (void) zendnerrs; }
5332
101k
#line 5333 "/src/php-src/Zend/zend_language_parser.c"
5333
101k
    break;
5334
5335
97.1k
  case 84:
5336
97.1k
#line 329 "/src/php-src/Zend/zend_language_parser.y"
5337
97.1k
                         { (yyval.ast) = (yyvsp[0].ast); }
5338
97.1k
#line 5339 "/src/php-src/Zend/zend_language_parser.c"
5339
97.1k
    break;
5340
5341
12.4k
  case 85:
5342
12.4k
#line 330 "/src/php-src/Zend/zend_language_parser.y"
5343
12.4k
                               {
5344
12.4k
      zval zv;
5345
12.4k
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5346
12.4k
      (yyval.ast) = zend_ast_create_zval(&zv);
5347
12.4k
    }
5348
0
#line 5349 "/src/php-src/Zend/zend_language_parser.c"
5349
0
    break;
5350
5351
678k
  case 86:
5352
678k
#line 338 "/src/php-src/Zend/zend_language_parser.y"
5353
678k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5354
678k
#line 5355 "/src/php-src/Zend/zend_language_parser.c"
5355
678k
    break;
5356
5357
148k
  case 87:
5358
148k
#line 339 "/src/php-src/Zend/zend_language_parser.y"
5359
148k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5360
148k
#line 5361 "/src/php-src/Zend/zend_language_parser.c"
5361
148k
    break;
5362
5363
4.96k
  case 88:
5364
4.96k
#line 344 "/src/php-src/Zend/zend_language_parser.y"
5365
4.96k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5366
4.96k
#line 5367 "/src/php-src/Zend/zend_language_parser.c"
5367
4.96k
    break;
5368
5369
460
  case 89:
5370
460
#line 345 "/src/php-src/Zend/zend_language_parser.y"
5371
460
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5372
460
#line 5373 "/src/php-src/Zend/zend_language_parser.c"
5373
460
    break;
5374
5375
4.62k
  case 90:
5376
4.62k
#line 350 "/src/php-src/Zend/zend_language_parser.y"
5377
4.62k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5378
4.62k
#line 5379 "/src/php-src/Zend/zend_language_parser.c"
5379
4.62k
    break;
5380
5381
1.07k
  case 91:
5382
1.07k
#line 351 "/src/php-src/Zend/zend_language_parser.y"
5383
1.07k
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5384
1.07k
#line 5385 "/src/php-src/Zend/zend_language_parser.c"
5385
1.07k
    break;
5386
5387
2.80k
  case 92:
5388
2.80k
#line 356 "/src/php-src/Zend/zend_language_parser.y"
5389
2.80k
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5390
2.80k
#line 5391 "/src/php-src/Zend/zend_language_parser.c"
5391
2.80k
    break;
5392
5393
190
  case 93:
5394
190
#line 357 "/src/php-src/Zend/zend_language_parser.y"
5395
190
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5396
190
#line 5397 "/src/php-src/Zend/zend_language_parser.c"
5397
190
    break;
5398
5399
938k
  case 94:
5400
938k
#line 361 "/src/php-src/Zend/zend_language_parser.y"
5401
938k
                                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5402
938k
#line 5403 "/src/php-src/Zend/zend_language_parser.c"
5403
938k
    break;
5404
5405
3.69k
  case 95:
5406
3.69k
#line 362 "/src/php-src/Zend/zend_language_parser.y"
5407
3.69k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5408
3.69k
#line 5409 "/src/php-src/Zend/zend_language_parser.c"
5409
3.69k
    break;
5410
5411
14.6k
  case 96:
5412
14.6k
#line 363 "/src/php-src/Zend/zend_language_parser.y"
5413
14.6k
                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_FQ; }
5414
14.6k
#line 5415 "/src/php-src/Zend/zend_language_parser.c"
5415
14.6k
    break;
5416
5417
1.15k
  case 97:
5418
1.15k
#line 364 "/src/php-src/Zend/zend_language_parser.y"
5419
1.15k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_RELATIVE; }
5420
1.15k
#line 5421 "/src/php-src/Zend/zend_language_parser.c"
5421
1.15k
    break;
5422
5423
47.3k
  case 98:
5424
47.3k
#line 369 "/src/php-src/Zend/zend_language_parser.y"
5425
47.3k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[0].ast), NULL); }
5426
47.3k
#line 5427 "/src/php-src/Zend/zend_language_parser.c"
5427
47.3k
    break;
5428
5429
4.53k
  case 99:
5430
4.53k
#line 371 "/src/php-src/Zend/zend_language_parser.y"
5431
4.53k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[-1].ast), (yyvsp[0].ast)); }
5432
4.53k
#line 5433 "/src/php-src/Zend/zend_language_parser.c"
5433
4.53k
    break;
5434
5435
19.2k
  case 100:
5436
19.2k
#line 376 "/src/php-src/Zend/zend_language_parser.y"
5437
19.2k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_GROUP, (yyvsp[0].ast)); }
5438
19.2k
#line 5439 "/src/php-src/Zend/zend_language_parser.c"
5439
19.2k
    break;
5440
5441
32.5k
  case 101:
5442
32.5k
#line 378 "/src/php-src/Zend/zend_language_parser.y"
5443
32.5k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5444
32.5k
#line 5445 "/src/php-src/Zend/zend_language_parser.c"
5445
32.5k
    break;
5446
5447
19.1k
  case 102:
5448
19.1k
#line 382 "/src/php-src/Zend/zend_language_parser.y"
5449
19.1k
                                                                { (yyval.ast) = (yyvsp[-2].ast); }
5450
19.1k
#line 5451 "/src/php-src/Zend/zend_language_parser.c"
5451
19.1k
    break;
5452
5453
16.3k
  case 103:
5454
16.3k
#line 386 "/src/php-src/Zend/zend_language_parser.y"
5455
16.3k
                                                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_LIST, (yyvsp[0].ast)); }
5456
16.3k
#line 5457 "/src/php-src/Zend/zend_language_parser.c"
5457
16.3k
    break;
5458
5459
2.86k
  case 104:
5460
2.86k
#line 387 "/src/php-src/Zend/zend_language_parser.y"
5461
2.86k
                                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5462
2.86k
#line 5463 "/src/php-src/Zend/zend_language_parser.c"
5463
2.86k
    break;
5464
5465
18.2k
  case 105:
5466
18.2k
#line 391 "/src/php-src/Zend/zend_language_parser.y"
5467
18.2k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5468
18.2k
#line 5469 "/src/php-src/Zend/zend_language_parser.c"
5469
18.2k
    break;
5470
5471
41.0k
  case 106:
5472
41.0k
#line 392 "/src/php-src/Zend/zend_language_parser.y"
5473
41.0k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5474
41.0k
#line 5475 "/src/php-src/Zend/zend_language_parser.c"
5475
41.0k
    break;
5476
5477
2.76k
  case 107:
5478
2.76k
#line 393 "/src/php-src/Zend/zend_language_parser.y"
5479
2.76k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5480
2.76k
#line 5481 "/src/php-src/Zend/zend_language_parser.c"
5481
2.76k
    break;
5482
5483
3.65k
  case 108:
5484
3.65k
#line 394 "/src/php-src/Zend/zend_language_parser.y"
5485
3.65k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5486
3.65k
#line 5487 "/src/php-src/Zend/zend_language_parser.c"
5487
3.65k
    break;
5488
5489
5.80k
  case 109:
5490
5.80k
#line 395 "/src/php-src/Zend/zend_language_parser.y"
5491
5.80k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5492
5.80k
#line 5493 "/src/php-src/Zend/zend_language_parser.c"
5493
5.80k
    break;
5494
5495
65.3k
  case 110:
5496
65.3k
#line 399 "/src/php-src/Zend/zend_language_parser.y"
5497
65.3k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5498
65.3k
#line 5499 "/src/php-src/Zend/zend_language_parser.c"
5499
65.3k
    break;
5500
5501
5.11k
  case 111:
5502
5.11k
#line 400 "/src/php-src/Zend/zend_language_parser.y"
5503
5.11k
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5504
5.11k
#line 5505 "/src/php-src/Zend/zend_language_parser.c"
5505
5.11k
    break;
5506
5507
599k
  case 112:
5508
599k
#line 404 "/src/php-src/Zend/zend_language_parser.y"
5509
599k
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5510
599k
#line 5511 "/src/php-src/Zend/zend_language_parser.c"
5511
599k
    break;
5512
5513
67.1k
  case 113:
5514
67.1k
#line 405 "/src/php-src/Zend/zend_language_parser.y"
5515
67.1k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5516
67.1k
#line 5517 "/src/php-src/Zend/zend_language_parser.c"
5517
67.1k
    break;
5518
5519
3.38k
  case 114:
5520
3.38k
#line 406 "/src/php-src/Zend/zend_language_parser.y"
5521
3.38k
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5522
3.38k
#line 5523 "/src/php-src/Zend/zend_language_parser.c"
5523
3.38k
    break;
5524
5525
67
  case 115:
5526
67
#line 408 "/src/php-src/Zend/zend_language_parser.y"
5527
67
                        { (yyval.ast) = zend_ast_create(ZEND_AST_HALT_COMPILER,
5528
67
            zend_ast_create_zval_from_long(zend_get_scanned_file_offset()));
5529
67
        zend_stop_lexing(); }
5530
67
#line 5531 "/src/php-src/Zend/zend_language_parser.c"
5531
67
    break;
5532
5533
3.90k
  case 116:
5534
3.90k
#line 412 "/src/php-src/Zend/zend_language_parser.y"
5535
3.90k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-1].ast), NULL);
5536
3.90k
        RESET_DOC_COMMENT(); }
5537
3.90k
#line 5538 "/src/php-src/Zend/zend_language_parser.c"
5538
3.90k
    break;
5539
5540
1.51k
  case 117:
5541
1.51k
#line 414 "/src/php-src/Zend/zend_language_parser.y"
5542
1.51k
                                                       { RESET_DOC_COMMENT(); }
5543
1.51k
#line 5544 "/src/php-src/Zend/zend_language_parser.c"
5544
1.51k
    break;
5545
5546
1.31k
  case 118:
5547
1.31k
#line 416 "/src/php-src/Zend/zend_language_parser.y"
5548
1.31k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
5549
1.31k
#line 5550 "/src/php-src/Zend/zend_language_parser.c"
5550
1.31k
    break;
5551
5552
1.18k
  case 119:
5553
1.18k
#line 417 "/src/php-src/Zend/zend_language_parser.y"
5554
1.18k
                            { RESET_DOC_COMMENT(); }
5555
1.18k
#line 5556 "/src/php-src/Zend/zend_language_parser.c"
5556
1.18k
    break;
5557
5558
824
  case 120:
5559
824
#line 419 "/src/php-src/Zend/zend_language_parser.y"
5560
824
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, NULL, (yyvsp[-1].ast)); }
5561
824
#line 5562 "/src/php-src/Zend/zend_language_parser.c"
5562
824
    break;
5563
5564
516
  case 121:
5565
516
#line 420 "/src/php-src/Zend/zend_language_parser.y"
5566
516
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5567
516
#line 5568 "/src/php-src/Zend/zend_language_parser.c"
5568
516
    break;
5569
5570
85
  case 122:
5571
85
#line 421 "/src/php-src/Zend/zend_language_parser.y"
5572
85
                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5573
85
#line 5574 "/src/php-src/Zend/zend_language_parser.c"
5574
85
    break;
5575
5576
1.13k
  case 123:
5577
1.13k
#line 422 "/src/php-src/Zend/zend_language_parser.y"
5578
1.13k
                                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5579
1.13k
#line 5580 "/src/php-src/Zend/zend_language_parser.c"
5580
1.13k
    break;
5581
5582
634
  case 124:
5583
634
#line 423 "/src/php-src/Zend/zend_language_parser.y"
5584
634
                                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5585
634
#line 5586 "/src/php-src/Zend/zend_language_parser.c"
5586
634
    break;
5587
5588
815
  case 125:
5589
815
#line 427 "/src/php-src/Zend/zend_language_parser.y"
5590
815
                                        { (yyval.num) = ZEND_SYMBOL_FUNCTION; }
5591
815
#line 5592 "/src/php-src/Zend/zend_language_parser.c"
5592
815
    break;
5593
5594
926
  case 126:
5595
926
#line 428 "/src/php-src/Zend/zend_language_parser.y"
5596
926
                                        { (yyval.num) = ZEND_SYMBOL_CONST; }
5597
926
#line 5598 "/src/php-src/Zend/zend_language_parser.c"
5598
926
    break;
5599
5600
89
  case 127:
5601
89
#line 433 "/src/php-src/Zend/zend_language_parser.y"
5602
89
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5603
89
#line 5604 "/src/php-src/Zend/zend_language_parser.c"
5604
89
    break;
5605
5606
521
  case 128:
5607
521
#line 438 "/src/php-src/Zend/zend_language_parser.y"
5608
521
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast));}
5609
521
#line 5610 "/src/php-src/Zend/zend_language_parser.c"
5610
521
    break;
5611
5612
1.77k
  case 131:
5613
1.77k
#line 448 "/src/php-src/Zend/zend_language_parser.y"
5614
1.77k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5615
1.77k
#line 5616 "/src/php-src/Zend/zend_language_parser.c"
5616
1.77k
    break;
5617
5618
558
  case 132:
5619
558
#line 450 "/src/php-src/Zend/zend_language_parser.y"
5620
558
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5621
558
#line 5622 "/src/php-src/Zend/zend_language_parser.c"
5622
558
    break;
5623
5624
452
  case 133:
5625
452
#line 455 "/src/php-src/Zend/zend_language_parser.y"
5626
452
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5627
452
#line 5628 "/src/php-src/Zend/zend_language_parser.c"
5628
452
    break;
5629
5630
108
  case 134:
5631
108
#line 457 "/src/php-src/Zend/zend_language_parser.y"
5632
108
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5633
108
#line 5634 "/src/php-src/Zend/zend_language_parser.c"
5634
108
    break;
5635
5636
488
  case 135:
5637
488
#line 462 "/src/php-src/Zend/zend_language_parser.y"
5638
488
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5639
488
#line 5640 "/src/php-src/Zend/zend_language_parser.c"
5640
488
    break;
5641
5642
1.80k
  case 136:
5643
1.80k
#line 464 "/src/php-src/Zend/zend_language_parser.y"
5644
1.80k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5645
1.80k
#line 5646 "/src/php-src/Zend/zend_language_parser.c"
5646
1.80k
    break;
5647
5648
1.34k
  case 137:
5649
1.34k
#line 468 "/src/php-src/Zend/zend_language_parser.y"
5650
1.34k
                                           { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5651
1.34k
#line 5652 "/src/php-src/Zend/zend_language_parser.c"
5652
1.34k
    break;
5653
5654
986
  case 138:
5655
986
#line 469 "/src/php-src/Zend/zend_language_parser.y"
5656
986
                                                    { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = (yyvsp[-1].num); }
5657
986
#line 5658 "/src/php-src/Zend/zend_language_parser.c"
5658
986
    break;
5659
5660
2.18k
  case 139:
5661
2.18k
#line 474 "/src/php-src/Zend/zend_language_parser.y"
5662
2.18k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5663
2.18k
#line 5664 "/src/php-src/Zend/zend_language_parser.c"
5664
2.18k
    break;
5665
5666
705
  case 140:
5667
705
#line 476 "/src/php-src/Zend/zend_language_parser.y"
5668
705
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5669
705
#line 5670 "/src/php-src/Zend/zend_language_parser.c"
5670
705
    break;
5671
5672
1.77k
  case 141:
5673
1.77k
#line 481 "/src/php-src/Zend/zend_language_parser.y"
5674
1.77k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5675
1.77k
#line 5676 "/src/php-src/Zend/zend_language_parser.c"
5676
1.77k
    break;
5677
5678
513
  case 142:
5679
513
#line 483 "/src/php-src/Zend/zend_language_parser.y"
5680
513
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5681
513
#line 5682 "/src/php-src/Zend/zend_language_parser.c"
5682
513
    break;
5683
5684
2.57k
  case 143:
5685
2.57k
#line 487 "/src/php-src/Zend/zend_language_parser.y"
5686
2.57k
                                          { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5687
2.57k
#line 5688 "/src/php-src/Zend/zend_language_parser.c"
5688
2.57k
    break;
5689
5690
8.13k
  case 144:
5691
8.13k
#line 488 "/src/php-src/Zend/zend_language_parser.y"
5692
8.13k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CONST_DECL, (yyvsp[0].ast)); }
5693
8.13k
#line 5694 "/src/php-src/Zend/zend_language_parser.c"
5694
8.13k
    break;
5695
5696
318k
  case 145:
5697
318k
#line 493 "/src/php-src/Zend/zend_language_parser.y"
5698
318k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5699
318k
#line 5700 "/src/php-src/Zend/zend_language_parser.c"
5700
318k
    break;
5701
5702
237k
  case 146:
5703
237k
#line 495 "/src/php-src/Zend/zend_language_parser.y"
5704
237k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5705
237k
#line 5706 "/src/php-src/Zend/zend_language_parser.c"
5706
237k
    break;
5707
5708
312k
  case 147:
5709
312k
#line 500 "/src/php-src/Zend/zend_language_parser.y"
5710
312k
                          { (yyval.ast) = (yyvsp[0].ast); }
5711
312k
#line 5712 "/src/php-src/Zend/zend_language_parser.c"
5712
312k
    break;
5713
5714
5.77k
  case 148:
5715
5.77k
#line 501 "/src/php-src/Zend/zend_language_parser.y"
5716
5.77k
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5717
5.77k
#line 5718 "/src/php-src/Zend/zend_language_parser.c"
5718
5.77k
    break;
5719
5720
359
  case 149:
5721
359
#line 502 "/src/php-src/Zend/zend_language_parser.y"
5722
359
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5723
359
#line 5724 "/src/php-src/Zend/zend_language_parser.c"
5724
359
    break;
5725
5726
14
  case 150:
5727
14
#line 504 "/src/php-src/Zend/zend_language_parser.y"
5728
14
                        { (yyval.ast) = NULL; zend_throw_exception(zend_ce_compile_error,
5729
14
            "__HALT_COMPILER() can only be used from the outermost scope", 0); YYERROR; }
5730
0
#line 5731 "/src/php-src/Zend/zend_language_parser.c"
5731
0
    break;
5732
5733
44.4k
  case 151:
5734
44.4k
#line 510 "/src/php-src/Zend/zend_language_parser.y"
5735
44.4k
                                             { (yyval.ast) = (yyvsp[-1].ast); }
5736
44.4k
#line 5737 "/src/php-src/Zend/zend_language_parser.c"
5737
44.4k
    break;
5738
5739
19.3k
  case 152:
5740
19.3k
#line 511 "/src/php-src/Zend/zend_language_parser.y"
5741
19.3k
                        { (yyval.ast) = (yyvsp[0].ast); }
5742
19.3k
#line 5743 "/src/php-src/Zend/zend_language_parser.c"
5743
19.3k
    break;
5744
5745
163
  case 153:
5746
163
#line 512 "/src/php-src/Zend/zend_language_parser.y"
5747
163
                            { (yyval.ast) = (yyvsp[0].ast); }
5748
163
#line 5749 "/src/php-src/Zend/zend_language_parser.c"
5749
163
    break;
5750
5751
1.30k
  case 154:
5752
1.30k
#line 514 "/src/php-src/Zend/zend_language_parser.y"
5753
1.30k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_WHILE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5754
1.30k
#line 5755 "/src/php-src/Zend/zend_language_parser.c"
5755
1.30k
    break;
5756
5757
669
  case 155:
5758
669
#line 516 "/src/php-src/Zend/zend_language_parser.y"
5759
669
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DO_WHILE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5760
669
#line 5761 "/src/php-src/Zend/zend_language_parser.c"
5761
669
    break;
5762
5763
13.0k
  case 156:
5764
13.0k
#line 518 "/src/php-src/Zend/zend_language_parser.y"
5765
13.0k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOR, (yyvsp[-6].ast), (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
5766
13.0k
#line 5767 "/src/php-src/Zend/zend_language_parser.c"
5767
13.0k
    break;
5768
5769
2.12k
  case 157:
5770
2.12k
#line 520 "/src/php-src/Zend/zend_language_parser.y"
5771
2.12k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_SWITCH, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5772
2.12k
#line 5773 "/src/php-src/Zend/zend_language_parser.c"
5773
2.12k
    break;
5774
5775
1.40k
  case 158:
5776
1.40k
#line 521 "/src/php-src/Zend/zend_language_parser.y"
5777
1.40k
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_BREAK, (yyvsp[-1].ast)); }
5778
1.40k
#line 5779 "/src/php-src/Zend/zend_language_parser.c"
5779
1.40k
    break;
5780
5781
850
  case 159:
5782
850
#line 522 "/src/php-src/Zend/zend_language_parser.y"
5783
850
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONTINUE, (yyvsp[-1].ast)); }
5784
850
#line 5785 "/src/php-src/Zend/zend_language_parser.c"
5785
850
    break;
5786
5787
17.1k
  case 160:
5788
17.1k
#line 523 "/src/php-src/Zend/zend_language_parser.y"
5789
17.1k
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_RETURN, (yyvsp[-1].ast)); }
5790
17.1k
#line 5791 "/src/php-src/Zend/zend_language_parser.c"
5791
17.1k
    break;
5792
5793
1.40k
  case 161:
5794
1.40k
#line 524 "/src/php-src/Zend/zend_language_parser.y"
5795
1.40k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5796
1.40k
#line 5797 "/src/php-src/Zend/zend_language_parser.c"
5797
1.40k
    break;
5798
5799
1.60k
  case 162:
5800
1.60k
#line 525 "/src/php-src/Zend/zend_language_parser.y"
5801
1.60k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5802
1.60k
#line 5803 "/src/php-src/Zend/zend_language_parser.c"
5803
1.60k
    break;
5804
5805
51.8k
  case 163:
5806
51.8k
#line 526 "/src/php-src/Zend/zend_language_parser.y"
5807
51.8k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
5808
51.8k
#line 5809 "/src/php-src/Zend/zend_language_parser.c"
5809
51.8k
    break;
5810
5811
119k
  case 164:
5812
119k
#line 527 "/src/php-src/Zend/zend_language_parser.y"
5813
119k
                              { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
5814
119k
#line 5815 "/src/php-src/Zend/zend_language_parser.c"
5815
119k
    break;
5816
5817
486k
  case 165:
5818
486k
#line 528 "/src/php-src/Zend/zend_language_parser.y"
5819
486k
                         { (yyval.ast) = (yyvsp[-1].ast); }
5820
486k
#line 5821 "/src/php-src/Zend/zend_language_parser.c"
5821
486k
    break;
5822
5823
5.94k
  case 166:
5824
5.94k
#line 529 "/src/php-src/Zend/zend_language_parser.y"
5825
5.94k
                                                                   { (yyval.ast) = (yyvsp[-3].ast); }
5826
5.94k
#line 5827 "/src/php-src/Zend/zend_language_parser.c"
5827
5.94k
    break;
5828
5829
15.1k
  case 167:
5830
15.1k
#line 531 "/src/php-src/Zend/zend_language_parser.y"
5831
15.1k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-4].ast), (yyvsp[-2].ast), NULL, (yyvsp[0].ast)); }
5832
15.1k
#line 5833 "/src/php-src/Zend/zend_language_parser.c"
5833
15.1k
    break;
5834
5835
1.69k
  case 168:
5836
1.69k
#line 534 "/src/php-src/Zend/zend_language_parser.y"
5837
1.69k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-4].ast), (yyvsp[0].ast)); }
5838
1.69k
#line 5839 "/src/php-src/Zend/zend_language_parser.c"
5839
1.69k
    break;
5840
5841
2.99k
  case 169:
5842
2.99k
#line 536 "/src/php-src/Zend/zend_language_parser.y"
5843
2.99k
                        { if (!zend_handle_encoding_declaration((yyvsp[-1].ast))) { YYERROR; } }
5844
2.97k
#line 5845 "/src/php-src/Zend/zend_language_parser.c"
5845
2.97k
    break;
5846
5847
2.97k
  case 170:
5848
2.90k
#line 538 "/src/php-src/Zend/zend_language_parser.y"
5849
2.90k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DECLARE, (yyvsp[-3].ast), (yyvsp[0].ast)); }
5850
2.90k
#line 5851 "/src/php-src/Zend/zend_language_parser.c"
5851
2.90k
    break;
5852
5853
141k
  case 171:
5854
141k
#line 539 "/src/php-src/Zend/zend_language_parser.y"
5855
141k
                                              { (yyval.ast) = NULL; }
5856
141k
#line 5857 "/src/php-src/Zend/zend_language_parser.c"
5857
141k
    break;
5858
5859
38.0k
  case 172:
5860
38.0k
#line 541 "/src/php-src/Zend/zend_language_parser.y"
5861
38.0k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRY, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
5862
38.0k
#line 5863 "/src/php-src/Zend/zend_language_parser.c"
5863
38.0k
    break;
5864
5865
1.40k
  case 173:
5866
1.40k
#line 542 "/src/php-src/Zend/zend_language_parser.y"
5867
1.40k
                                    { (yyval.ast) = zend_ast_create(ZEND_AST_GOTO, (yyvsp[-1].ast)); }
5868
1.40k
#line 5869 "/src/php-src/Zend/zend_language_parser.c"
5869
1.40k
    break;
5870
5871
2.47k
  case 174:
5872
2.47k
#line 543 "/src/php-src/Zend/zend_language_parser.y"
5873
2.47k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_LABEL, (yyvsp[-1].ast)); }
5874
2.47k
#line 5875 "/src/php-src/Zend/zend_language_parser.c"
5875
2.47k
    break;
5876
5877
248
  case 175:
5878
248
#line 544 "/src/php-src/Zend/zend_language_parser.y"
5879
248
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[-1].ast)); }
5880
248
#line 5881 "/src/php-src/Zend/zend_language_parser.c"
5881
248
    break;
5882
5883
38.4k
  case 176:
5884
38.4k
#line 549 "/src/php-src/Zend/zend_language_parser.y"
5885
38.4k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_CATCH_LIST); }
5886
38.4k
#line 5887 "/src/php-src/Zend/zend_language_parser.c"
5887
38.4k
    break;
5888
5889
41.5k
  case 177:
5890
41.5k
#line 551 "/src/php-src/Zend/zend_language_parser.y"
5891
41.5k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-8].ast), zend_ast_create(ZEND_AST_CATCH, (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast))); }
5892
41.5k
#line 5893 "/src/php-src/Zend/zend_language_parser.c"
5893
41.5k
    break;
5894
5895
41.7k
  case 178:
5896
41.7k
#line 555 "/src/php-src/Zend/zend_language_parser.y"
5897
41.7k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
5898
41.7k
#line 5899 "/src/php-src/Zend/zend_language_parser.c"
5899
41.7k
    break;
5900
5901
4.18k
  case 179:
5902
4.18k
#line 556 "/src/php-src/Zend/zend_language_parser.y"
5903
4.18k
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5904
4.18k
#line 5905 "/src/php-src/Zend/zend_language_parser.c"
5905
4.18k
    break;
5906
5907
8.32k
  case 180:
5908
8.32k
#line 560 "/src/php-src/Zend/zend_language_parser.y"
5909
8.32k
                       { (yyval.ast) = NULL; }
5910
8.32k
#line 5911 "/src/php-src/Zend/zend_language_parser.c"
5911
8.32k
    break;
5912
5913
33.4k
  case 181:
5914
33.4k
#line 561 "/src/php-src/Zend/zend_language_parser.y"
5915
33.4k
                           { (yyval.ast) = (yyvsp[0].ast); }
5916
33.4k
#line 5917 "/src/php-src/Zend/zend_language_parser.c"
5917
33.4k
    break;
5918
5919
35.9k
  case 182:
5920
35.9k
#line 565 "/src/php-src/Zend/zend_language_parser.y"
5921
35.9k
                       { (yyval.ast) = NULL; }
5922
35.9k
#line 5923 "/src/php-src/Zend/zend_language_parser.c"
5923
35.9k
    break;
5924
5925
2.15k
  case 183:
5926
2.15k
#line 566 "/src/php-src/Zend/zend_language_parser.y"
5927
2.15k
                                                       { (yyval.ast) = (yyvsp[-1].ast); }
5928
2.15k
#line 5929 "/src/php-src/Zend/zend_language_parser.c"
5929
2.15k
    break;
5930
5931
5.96k
  case 184:
5932
5.96k
#line 570 "/src/php-src/Zend/zend_language_parser.y"
5933
5.96k
                               { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
5934
5.96k
#line 5935 "/src/php-src/Zend/zend_language_parser.c"
5935
5.96k
    break;
5936
5937
1.07k
  case 185:
5938
1.07k
#line 571 "/src/php-src/Zend/zend_language_parser.y"
5939
1.07k
                                                   { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5940
1.07k
#line 5941 "/src/php-src/Zend/zend_language_parser.c"
5941
1.07k
    break;
5942
5943
7.04k
  case 186:
5944
7.04k
#line 575 "/src/php-src/Zend/zend_language_parser.y"
5945
7.04k
                         { (yyval.ast) = zend_ast_create(ZEND_AST_UNSET, (yyvsp[0].ast)); }
5946
7.04k
#line 5947 "/src/php-src/Zend/zend_language_parser.c"
5947
7.04k
    break;
5948
5949
19.2k
  case 187:
5950
19.2k
#line 579 "/src/php-src/Zend/zend_language_parser.y"
5951
19.2k
                         { (yyval.ast) = (yyvsp[0].ast); }
5952
19.2k
#line 5953 "/src/php-src/Zend/zend_language_parser.c"
5953
19.2k
    break;
5954
5955
20
  case 188:
5956
20
#line 580 "/src/php-src/Zend/zend_language_parser.y"
5957
20
                           {
5958
20
      zval zv;
5959
20
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5960
20
      (yyval.ast) = zend_ast_create_zval(&zv);
5961
20
    }
5962
0
#line 5963 "/src/php-src/Zend/zend_language_parser.c"
5963
0
    break;
5964
5965
18.2k
  case 189:
5966
18.2k
#line 590 "/src/php-src/Zend/zend_language_parser.y"
5967
18.2k
                { (yyval.ast) = zend_ast_create_decl(ZEND_AST_FUNC_DECL, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-9].str),
5968
18.2k
          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); }
5969
18.2k
#line 5970 "/src/php-src/Zend/zend_language_parser.c"
5970
18.2k
    break;
5971
5972
52.6k
  case 190:
5973
52.6k
#line 595 "/src/php-src/Zend/zend_language_parser.y"
5974
52.6k
                        { (yyval.num) = 0; }
5975
52.6k
#line 5976 "/src/php-src/Zend/zend_language_parser.c"
5976
52.6k
    break;
5977
5978
3.60k
  case 191:
5979
3.60k
#line 596 "/src/php-src/Zend/zend_language_parser.y"
5980
3.60k
                                                        { (yyval.num) = ZEND_PARAM_REF; }
5981
3.60k
#line 5982 "/src/php-src/Zend/zend_language_parser.c"
5982
3.60k
    break;
5983
5984
55.2k
  case 192:
5985
55.2k
#line 600 "/src/php-src/Zend/zend_language_parser.y"
5986
55.2k
                       { (yyval.num) = 0; }
5987
55.2k
#line 5988 "/src/php-src/Zend/zend_language_parser.c"
5988
55.2k
    break;
5989
5990
1.04k
  case 193:
5991
1.04k
#line 601 "/src/php-src/Zend/zend_language_parser.y"
5992
1.04k
                            { (yyval.num) = ZEND_PARAM_VARIADIC; }
5993
1.04k
#line 5994 "/src/php-src/Zend/zend_language_parser.c"
5994
1.04k
    break;
5995
5996
3.18k
  case 194:
5997
3.18k
#line 605 "/src/php-src/Zend/zend_language_parser.y"
5998
3.18k
                                        { (yyval.num) = CG(zend_lineno); }
5999
3.18k
#line 6000 "/src/php-src/Zend/zend_language_parser.c"
6000
3.18k
    break;
6001
6002
3.12k
  case 195:
6003
3.12k
#line 607 "/src/php-src/Zend/zend_language_parser.y"
6004
3.12k
                        { (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); }
6005
3.12k
#line 6006 "/src/php-src/Zend/zend_language_parser.c"
6006
3.12k
    break;
6007
6008
39.1k
  case 196:
6009
39.1k
#line 608 "/src/php-src/Zend/zend_language_parser.y"
6010
39.1k
                        { (yyval.num) = CG(zend_lineno); }
6011
39.1k
#line 6012 "/src/php-src/Zend/zend_language_parser.c"
6012
39.1k
    break;
6013
6014
37.9k
  case 197:
6015
37.9k
#line 610 "/src/php-src/Zend/zend_language_parser.y"
6016
37.9k
                        { (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); }
6017
37.9k
#line 6018 "/src/php-src/Zend/zend_language_parser.c"
6018
37.9k
    break;
6019
6020
3.25k
  case 198:
6021
3.25k
#line 614 "/src/php-src/Zend/zend_language_parser.y"
6022
3.25k
                                                                { (yyval.num) = (yyvsp[0].num); }
6023
3.25k
#line 6024 "/src/php-src/Zend/zend_language_parser.c"
6024
3.25k
    break;
6025
6026
185
  case 199:
6027
185
#line 616 "/src/php-src/Zend/zend_language_parser.y"
6028
185
                        { (yyval.num) = zend_add_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
6029
158
#line 6030 "/src/php-src/Zend/zend_language_parser.c"
6030
158
    break;
6031
6032
158
  case 200:
6033
86
#line 621 "/src/php-src/Zend/zend_language_parser.y"
6034
86
                        { (yyval.num) = zend_add_anonymous_class_modifier(0, (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
6035
72
#line 6036 "/src/php-src/Zend/zend_language_parser.c"
6036
72
    break;
6037
6038
72
  case 201:
6039
7
#line 623 "/src/php-src/Zend/zend_language_parser.y"
6040
7
                        { (yyval.num) = zend_add_anonymous_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
6041
0
#line 6042 "/src/php-src/Zend/zend_language_parser.c"
6042
0
    break;
6043
6044
2.60k
  case 202:
6045
2.60k
#line 627 "/src/php-src/Zend/zend_language_parser.y"
6046
2.60k
                                                { (yyval.num) = 0; }
6047
2.60k
#line 6048 "/src/php-src/Zend/zend_language_parser.c"
6048
2.60k
    break;
6049
6050
65
  case 203:
6051
65
#line 628 "/src/php-src/Zend/zend_language_parser.y"
6052
65
                                                { (yyval.num) = (yyvsp[0].num); }
6053
65
#line 6054 "/src/php-src/Zend/zend_language_parser.c"
6054
65
    break;
6055
6056
1.29k
  case 204:
6057
1.29k
#line 632 "/src/php-src/Zend/zend_language_parser.y"
6058
1.29k
                                        { (yyval.num) = ZEND_ACC_EXPLICIT_ABSTRACT_CLASS; }
6059
1.29k
#line 6060 "/src/php-src/Zend/zend_language_parser.c"
6060
1.29k
    break;
6061
6062
1.77k
  case 205:
6063
1.77k
#line 633 "/src/php-src/Zend/zend_language_parser.y"
6064
1.77k
                                        { (yyval.num) = ZEND_ACC_FINAL; }
6065
1.77k
#line 6066 "/src/php-src/Zend/zend_language_parser.c"
6066
1.77k
    break;
6067
6068
466
  case 206:
6069
466
#line 634 "/src/php-src/Zend/zend_language_parser.y"
6070
466
                                        { (yyval.num) = ZEND_ACC_READONLY_CLASS|ZEND_ACC_NO_DYNAMIC_PROPERTIES; }
6071
466
#line 6072 "/src/php-src/Zend/zend_language_parser.c"
6072
466
    break;
6073
6074
2.89k
  case 207:
6075
2.89k
#line 638 "/src/php-src/Zend/zend_language_parser.y"
6076
2.89k
                        { (yyval.num) = CG(zend_lineno); }
6077
2.89k
#line 6078 "/src/php-src/Zend/zend_language_parser.c"
6078
2.89k
    break;
6079
6080
2.76k
  case 208:
6081
2.76k
#line 640 "/src/php-src/Zend/zend_language_parser.y"
6082
2.76k
                        { (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); }
6083
2.76k
#line 6084 "/src/php-src/Zend/zend_language_parser.c"
6084
2.76k
    break;
6085
6086
3.75k
  case 209:
6087
3.75k
#line 644 "/src/php-src/Zend/zend_language_parser.y"
6088
3.75k
                            { (yyval.num) = CG(zend_lineno); }
6089
3.75k
#line 6090 "/src/php-src/Zend/zend_language_parser.c"
6090
3.75k
    break;
6091
6092
3.65k
  case 210:
6093
3.65k
#line 646 "/src/php-src/Zend/zend_language_parser.y"
6094
3.65k
                        { (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); }
6095
3.65k
#line 6096 "/src/php-src/Zend/zend_language_parser.c"
6096
3.65k
    break;
6097
6098
6.33k
  case 211:
6099
6.33k
#line 650 "/src/php-src/Zend/zend_language_parser.y"
6100
6.33k
                       { (yyval.num) = CG(zend_lineno); }
6101
6.33k
#line 6102 "/src/php-src/Zend/zend_language_parser.c"
6102
6.33k
    break;
6103
6104
5.80k
  case 212:
6105
5.80k
#line 652 "/src/php-src/Zend/zend_language_parser.y"
6106
5.80k
                        { (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)); }
6107
5.80k
#line 6108 "/src/php-src/Zend/zend_language_parser.c"
6108
5.80k
    break;
6109
6110
5.19k
  case 213:
6111
5.19k
#line 656 "/src/php-src/Zend/zend_language_parser.y"
6112
5.19k
                        { (yyval.ast) = NULL; }
6113
5.19k
#line 6114 "/src/php-src/Zend/zend_language_parser.c"
6114
5.19k
    break;
6115
6116
935
  case 214:
6117
935
#line 657 "/src/php-src/Zend/zend_language_parser.y"
6118
935
                              { (yyval.ast) = (yyvsp[0].ast); }
6119
935
#line 6120 "/src/php-src/Zend/zend_language_parser.c"
6120
935
    break;
6121
6122
2.81k
  case 215:
6123
2.81k
#line 662 "/src/php-src/Zend/zend_language_parser.y"
6124
2.81k
                        { (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); }
6125
2.81k
#line 6126 "/src/php-src/Zend/zend_language_parser.c"
6126
2.81k
    break;
6127
6128
1.86k
  case 216:
6129
1.86k
#line 666 "/src/php-src/Zend/zend_language_parser.y"
6130
1.86k
                        { (yyval.ast) = NULL; }
6131
1.86k
#line 6132 "/src/php-src/Zend/zend_language_parser.c"
6132
1.86k
    break;
6133
6134
963
  case 217:
6135
963
#line 667 "/src/php-src/Zend/zend_language_parser.y"
6136
963
                         { (yyval.ast) = (yyvsp[0].ast); }
6137
963
#line 6138 "/src/php-src/Zend/zend_language_parser.c"
6138
963
    break;
6139
6140
31.9k
  case 218:
6141
31.9k
#line 671 "/src/php-src/Zend/zend_language_parser.y"
6142
31.9k
                                                { (yyval.ast) = NULL; }
6143
31.9k
#line 6144 "/src/php-src/Zend/zend_language_parser.c"
6144
31.9k
    break;
6145
6146
12.8k
  case 219:
6147
12.8k
#line 672 "/src/php-src/Zend/zend_language_parser.y"
6148
12.8k
                                        { (yyval.ast) = (yyvsp[0].ast); }
6149
12.8k
#line 6150 "/src/php-src/Zend/zend_language_parser.c"
6150
12.8k
    break;
6151
6152
3.31k
  case 220:
6153
3.31k
#line 676 "/src/php-src/Zend/zend_language_parser.y"
6154
3.31k
                                                { (yyval.ast) = NULL; }
6155
3.31k
#line 6156 "/src/php-src/Zend/zend_language_parser.c"
6156
3.31k
    break;
6157
6158
419
  case 221:
6159
419
#line 677 "/src/php-src/Zend/zend_language_parser.y"
6160
419
                                                { (yyval.ast) = (yyvsp[0].ast); }
6161
419
#line 6162 "/src/php-src/Zend/zend_language_parser.c"
6162
419
    break;
6163
6164
48.2k
  case 222:
6165
48.2k
#line 681 "/src/php-src/Zend/zend_language_parser.y"
6166
48.2k
                                                        { (yyval.ast) = NULL; }
6167
48.2k
#line 6168 "/src/php-src/Zend/zend_language_parser.c"
6168
48.2k
    break;
6169
6170
2.70k
  case 223:
6171
2.70k
#line 682 "/src/php-src/Zend/zend_language_parser.y"
6172
2.70k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6173
2.70k
#line 6174 "/src/php-src/Zend/zend_language_parser.c"
6174
2.70k
    break;
6175
6176
16.7k
  case 224:
6177
16.7k
#line 686 "/src/php-src/Zend/zend_language_parser.y"
6178
16.7k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6179
16.7k
#line 6180 "/src/php-src/Zend/zend_language_parser.c"
6180
16.7k
    break;
6181
6182
1.47k
  case 225:
6183
1.47k
#line 687 "/src/php-src/Zend/zend_language_parser.y"
6184
1.47k
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_REF, (yyvsp[0].ast)); }
6185
1.47k
#line 6186 "/src/php-src/Zend/zend_language_parser.c"
6186
1.47k
    break;
6187
6188
472
  case 226:
6189
472
#line 688 "/src/php-src/Zend/zend_language_parser.y"
6190
472
                                               { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LIST; }
6191
472
#line 6192 "/src/php-src/Zend/zend_language_parser.c"
6192
472
    break;
6193
6194
257
  case 227:
6195
257
#line 689 "/src/php-src/Zend/zend_language_parser.y"
6196
257
                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
6197
257
#line 6198 "/src/php-src/Zend/zend_language_parser.c"
6198
257
    break;
6199
6200
13.0k
  case 228:
6201
13.0k
#line 693 "/src/php-src/Zend/zend_language_parser.y"
6202
13.0k
                          { (yyval.ast) = (yyvsp[0].ast); }
6203
13.0k
#line 6204 "/src/php-src/Zend/zend_language_parser.c"
6204
13.0k
    break;
6205
6206
17
  case 229:
6207
17
#line 694 "/src/php-src/Zend/zend_language_parser.y"
6208
17
                                                      { (yyval.ast) = (yyvsp[-2].ast); }
6209
17
#line 6210 "/src/php-src/Zend/zend_language_parser.c"
6210
17
    break;
6211
6212
16.8k
  case 230:
6213
16.8k
#line 698 "/src/php-src/Zend/zend_language_parser.y"
6214
16.8k
                          { (yyval.ast) = (yyvsp[0].ast); }
6215
16.8k
#line 6216 "/src/php-src/Zend/zend_language_parser.c"
6216
16.8k
    break;
6217
6218
0
  case 231:
6219
0
#line 699 "/src/php-src/Zend/zend_language_parser.y"
6220
0
                                                          { (yyval.ast) = (yyvsp[-2].ast); }
6221
0
#line 6222 "/src/php-src/Zend/zend_language_parser.c"
6222
0
    break;
6223
6224
2.88k
  case 232:
6225
2.88k
#line 703 "/src/php-src/Zend/zend_language_parser.y"
6226
2.88k
                          { (yyval.ast) = (yyvsp[0].ast); }
6227
2.88k
#line 6228 "/src/php-src/Zend/zend_language_parser.c"
6228
2.88k
    break;
6229
6230
20
  case 233:
6231
20
#line 704 "/src/php-src/Zend/zend_language_parser.y"
6232
20
                                                          { (yyval.ast) = (yyvsp[-2].ast); }
6233
20
#line 6234 "/src/php-src/Zend/zend_language_parser.c"
6234
20
    break;
6235
6236
1.91k
  case 234:
6237
1.91k
#line 708 "/src/php-src/Zend/zend_language_parser.y"
6238
1.91k
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6239
1.91k
#line 6240 "/src/php-src/Zend/zend_language_parser.c"
6240
1.91k
    break;
6241
6242
216
  case 235:
6243
216
#line 709 "/src/php-src/Zend/zend_language_parser.y"
6244
216
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
6245
216
#line 6246 "/src/php-src/Zend/zend_language_parser.c"
6246
216
    break;
6247
6248
0
  case 236:
6249
0
#line 710 "/src/php-src/Zend/zend_language_parser.y"
6250
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6251
0
#line 6252 "/src/php-src/Zend/zend_language_parser.c"
6252
0
    break;
6253
6254
0
  case 237:
6255
0
#line 711 "/src/php-src/Zend/zend_language_parser.y"
6256
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6257
0
#line 6258 "/src/php-src/Zend/zend_language_parser.c"
6258
0
    break;
6259
6260
2.22k
  case 238:
6261
2.22k
#line 715 "/src/php-src/Zend/zend_language_parser.y"
6262
2.22k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_SWITCH_LIST); }
6263
2.22k
#line 6264 "/src/php-src/Zend/zend_language_parser.c"
6264
2.22k
    break;
6265
6266
5.60k
  case 239:
6267
5.60k
#line 717 "/src/php-src/Zend/zend_language_parser.y"
6268
5.60k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-4].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6269
5.60k
#line 6270 "/src/php-src/Zend/zend_language_parser.c"
6270
5.60k
    break;
6271
6272
231
  case 240:
6273
231
#line 719 "/src/php-src/Zend/zend_language_parser.y"
6274
231
                        { (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))); }
6275
231
#line 6276 "/src/php-src/Zend/zend_language_parser.c"
6276
231
    break;
6277
6278
338
  case 241:
6279
338
#line 721 "/src/php-src/Zend/zend_language_parser.y"
6280
338
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, NULL, (yyvsp[0].ast))); }
6281
338
#line 6282 "/src/php-src/Zend/zend_language_parser.c"
6282
338
    break;
6283
6284
31
  case 242:
6285
31
#line 723 "/src/php-src/Zend/zend_language_parser.y"
6286
31
                        { (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))); }
6287
31
#line 6288 "/src/php-src/Zend/zend_language_parser.c"
6288
31
    break;
6289
6290
2.41k
  case 243:
6291
2.41k
#line 729 "/src/php-src/Zend/zend_language_parser.y"
6292
2.41k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
6293
2.41k
#line 6294 "/src/php-src/Zend/zend_language_parser.c"
6294
2.41k
    break;
6295
6296
256
  case 244:
6297
256
#line 733 "/src/php-src/Zend/zend_language_parser.y"
6298
256
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_MATCH_ARM_LIST); }
6299
256
#line 6300 "/src/php-src/Zend/zend_language_parser.c"
6300
256
    break;
6301
6302
2.17k
  case 245:
6303
2.17k
#line 734 "/src/php-src/Zend/zend_language_parser.y"
6304
2.17k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6305
2.17k
#line 6306 "/src/php-src/Zend/zend_language_parser.c"
6306
2.17k
    break;
6307
6308
2.25k
  case 246:
6309
2.25k
#line 738 "/src/php-src/Zend/zend_language_parser.y"
6310
2.25k
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MATCH_ARM_LIST, (yyvsp[0].ast)); }
6311
2.25k
#line 6312 "/src/php-src/Zend/zend_language_parser.c"
6312
2.25k
    break;
6313
6314
1.95k
  case 247:
6315
1.95k
#line 739 "/src/php-src/Zend/zend_language_parser.y"
6316
1.95k
                                                       { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6317
1.95k
#line 6318 "/src/php-src/Zend/zend_language_parser.c"
6318
1.95k
    break;
6319
6320
3.74k
  case 248:
6321
3.74k
#line 744 "/src/php-src/Zend/zend_language_parser.y"
6322
3.74k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, (yyvsp[-3].ast), (yyvsp[0].ast)); }
6323
3.74k
#line 6324 "/src/php-src/Zend/zend_language_parser.c"
6324
3.74k
    break;
6325
6326
476
  case 249:
6327
476
#line 746 "/src/php-src/Zend/zend_language_parser.y"
6328
476
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, NULL, (yyvsp[0].ast)); }
6329
476
#line 6330 "/src/php-src/Zend/zend_language_parser.c"
6330
476
    break;
6331
6332
3.97k
  case 250:
6333
3.97k
#line 750 "/src/php-src/Zend/zend_language_parser.y"
6334
3.97k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
6335
3.97k
#line 6336 "/src/php-src/Zend/zend_language_parser.c"
6336
3.97k
    break;
6337
6338
2.74k
  case 251:
6339
2.74k
#line 751 "/src/php-src/Zend/zend_language_parser.y"
6340
2.74k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6341
2.74k
#line 6342 "/src/php-src/Zend/zend_language_parser.c"
6342
2.74k
    break;
6343
6344
1.30k
  case 252:
6345
1.30k
#line 756 "/src/php-src/Zend/zend_language_parser.y"
6346
1.30k
                          { (yyval.ast) = (yyvsp[0].ast); }
6347
1.30k
#line 6348 "/src/php-src/Zend/zend_language_parser.c"
6348
1.30k
    break;
6349
6350
0
  case 253:
6351
0
#line 757 "/src/php-src/Zend/zend_language_parser.y"
6352
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6353
0
#line 6354 "/src/php-src/Zend/zend_language_parser.c"
6354
0
    break;
6355
6356
19.4k
  case 254:
6357
19.4k
#line 763 "/src/php-src/Zend/zend_language_parser.y"
6358
19.4k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6359
19.4k
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6360
19.4k
#line 6361 "/src/php-src/Zend/zend_language_parser.c"
6361
19.4k
    break;
6362
6363
1.57k
  case 255:
6364
1.57k
#line 766 "/src/php-src/Zend/zend_language_parser.y"
6365
1.57k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6366
1.57k
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6367
1.57k
#line 6368 "/src/php-src/Zend/zend_language_parser.c"
6368
1.57k
    break;
6369
6370
16.6k
  case 256:
6371
16.6k
#line 771 "/src/php-src/Zend/zend_language_parser.y"
6372
16.6k
                                                    { (yyval.ast) = (yyvsp[0].ast); }
6373
16.6k
#line 6374 "/src/php-src/Zend/zend_language_parser.c"
6374
16.6k
    break;
6375
6376
2.64k
  case 257:
6377
2.64k
#line 773 "/src/php-src/Zend/zend_language_parser.y"
6378
2.64k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[0].ast))); }
6379
2.64k
#line 6380 "/src/php-src/Zend/zend_language_parser.c"
6380
2.64k
    break;
6381
6382
251
  case 258:
6383
251
#line 778 "/src/php-src/Zend/zend_language_parser.y"
6384
251
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6385
251
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6386
251
#line 6387 "/src/php-src/Zend/zend_language_parser.c"
6387
251
    break;
6388
6389
15
  case 259:
6390
15
#line 781 "/src/php-src/Zend/zend_language_parser.y"
6391
15
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-6].ast),
6392
15
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6393
15
#line 6394 "/src/php-src/Zend/zend_language_parser.c"
6394
15
    break;
6395
6396
147
  case 260:
6397
147
#line 786 "/src/php-src/Zend/zend_language_parser.y"
6398
147
                                                     { (yyval.ast) = (yyvsp[-2].ast); }
6399
147
#line 6400 "/src/php-src/Zend/zend_language_parser.c"
6400
147
    break;
6401
6402
16
  case 261:
6403
16
#line 788 "/src/php-src/Zend/zend_language_parser.y"
6404
16
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6405
16
            zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[-2].ast))); }
6406
16
#line 6407 "/src/php-src/Zend/zend_language_parser.c"
6407
16
    break;
6408
6409
39.2k
  case 262:
6410
39.2k
#line 793 "/src/php-src/Zend/zend_language_parser.y"
6411
39.2k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6412
39.2k
#line 6413 "/src/php-src/Zend/zend_language_parser.c"
6413
39.2k
    break;
6414
6415
48.2k
  case 263:
6416
48.2k
#line 794 "/src/php-src/Zend/zend_language_parser.y"
6417
48.2k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_PARAM_LIST); }
6418
48.2k
#line 6419 "/src/php-src/Zend/zend_language_parser.c"
6419
48.2k
    break;
6420
6421
39.3k
  case 264:
6422
39.3k
#line 800 "/src/php-src/Zend/zend_language_parser.y"
6423
39.3k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PARAM_LIST, (yyvsp[0].ast)); }
6424
39.3k
#line 6425 "/src/php-src/Zend/zend_language_parser.c"
6425
39.3k
    break;
6426
6427
16.4k
  case 265:
6428
16.4k
#line 802 "/src/php-src/Zend/zend_language_parser.y"
6429
16.4k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6430
16.4k
#line 6431 "/src/php-src/Zend/zend_language_parser.c"
6431
16.4k
    break;
6432
6433
2.88k
  case 266:
6434
2.88k
#line 806 "/src/php-src/Zend/zend_language_parser.y"
6435
2.88k
                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6436
2.88k
#line 6437 "/src/php-src/Zend/zend_language_parser.c"
6437
2.88k
    break;
6438
6439
52.8k
  case 267:
6440
52.8k
#line 807 "/src/php-src/Zend/zend_language_parser.y"
6441
52.8k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6442
52.8k
#line 6443 "/src/php-src/Zend/zend_language_parser.c"
6443
52.8k
    break;
6444
6445
54.9k
  case 268:
6446
54.9k
#line 812 "/src/php-src/Zend/zend_language_parser.y"
6447
54.9k
                        { (yyval.num) = 0; }
6448
54.9k
#line 6449 "/src/php-src/Zend/zend_language_parser.c"
6449
54.9k
    break;
6450
6451
1.34k
  case 269:
6452
1.34k
#line 814 "/src/php-src/Zend/zend_language_parser.y"
6453
1.34k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CPP, (yyvsp[0].ast));
6454
1.34k
        if (!(yyval.num)) { YYERROR; } }
6455
1.32k
#line 6456 "/src/php-src/Zend/zend_language_parser.c"
6456
1.32k
    break;
6457
6458
48.5k
  case 270:
6459
48.5k
#line 821 "/src/php-src/Zend/zend_language_parser.y"
6460
48.5k
                        { (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,
6461
48.5k
          NULL, (yyvsp[-1].str) ? zend_ast_create_zval_from_str((yyvsp[-1].str)) : NULL, (yyvsp[0].ast)); }
6462
48.5k
#line 6463 "/src/php-src/Zend/zend_language_parser.c"
6463
48.5k
    break;
6464
6465
7.21k
  case 271:
6466
7.21k
#line 825 "/src/php-src/Zend/zend_language_parser.y"
6467
7.21k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_PARAM, (yyvsp[-8].num) | (yyvsp[-6].num) | (yyvsp[-5].num), (yyvsp[-7].ast), (yyvsp[-4].ast), (yyvsp[-1].ast),
6468
7.21k
          NULL, (yyvsp[-3].str) ? zend_ast_create_zval_from_str((yyvsp[-3].str)) : NULL, (yyvsp[0].ast)); }
6469
7.21k
#line 6470 "/src/php-src/Zend/zend_language_parser.c"
6470
7.21k
    break;
6471
6472
49.4k
  case 272:
6473
49.4k
#line 830 "/src/php-src/Zend/zend_language_parser.y"
6474
49.4k
                        { (yyval.ast) = NULL; }
6475
49.4k
#line 6476 "/src/php-src/Zend/zend_language_parser.c"
6476
49.4k
    break;
6477
6478
32.8k
  case 273:
6479
32.8k
#line 831 "/src/php-src/Zend/zend_language_parser.y"
6480
32.8k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6481
32.8k
#line 6482 "/src/php-src/Zend/zend_language_parser.c"
6482
32.8k
    break;
6483
6484
10.7k
  case 274:
6485
10.7k
#line 835 "/src/php-src/Zend/zend_language_parser.y"
6486
10.7k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6487
10.7k
#line 6488 "/src/php-src/Zend/zend_language_parser.c"
6488
10.7k
    break;
6489
6490
1.13k
  case 275:
6491
1.13k
#line 836 "/src/php-src/Zend/zend_language_parser.y"
6492
1.13k
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6493
1.13k
#line 6494 "/src/php-src/Zend/zend_language_parser.c"
6494
1.13k
    break;
6495
6496
2.50k
  case 276:
6497
2.50k
#line 837 "/src/php-src/Zend/zend_language_parser.y"
6498
2.50k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6499
2.50k
#line 6500 "/src/php-src/Zend/zend_language_parser.c"
6500
2.50k
    break;
6501
6502
716
  case 277:
6503
716
#line 838 "/src/php-src/Zend/zend_language_parser.y"
6504
716
                                        { (yyval.ast) = (yyvsp[0].ast); }
6505
716
#line 6506 "/src/php-src/Zend/zend_language_parser.c"
6506
716
    break;
6507
6508
20.4k
  case 278:
6509
20.4k
#line 842 "/src/php-src/Zend/zend_language_parser.y"
6510
20.4k
                                        { (yyval.ast) = (yyvsp[0].ast); }
6511
20.4k
#line 6512 "/src/php-src/Zend/zend_language_parser.c"
6512
20.4k
    break;
6513
6514
840
  case 279:
6515
840
#line 843 "/src/php-src/Zend/zend_language_parser.y"
6516
840
                                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_STATIC); }
6517
840
#line 6518 "/src/php-src/Zend/zend_language_parser.c"
6518
840
    break;
6519
6520
6.13k
  case 280:
6521
6.13k
#line 847 "/src/php-src/Zend/zend_language_parser.y"
6522
6.13k
                     { (yyval.ast) = (yyvsp[0].ast); }
6523
6.13k
#line 6524 "/src/php-src/Zend/zend_language_parser.c"
6524
6.13k
    break;
6525
6526
717
  case 281:
6527
717
#line 848 "/src/php-src/Zend/zend_language_parser.y"
6528
717
                                           { (yyval.ast) = (yyvsp[-1].ast); }
6529
717
#line 6530 "/src/php-src/Zend/zend_language_parser.c"
6530
717
    break;
6531
6532
2.50k
  case 282:
6533
2.50k
#line 853 "/src/php-src/Zend/zend_language_parser.y"
6534
2.50k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6535
2.50k
#line 6536 "/src/php-src/Zend/zend_language_parser.c"
6536
2.50k
    break;
6537
6538
1.82k
  case 283:
6539
1.82k
#line 855 "/src/php-src/Zend/zend_language_parser.y"
6540
1.82k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6541
1.82k
#line 6542 "/src/php-src/Zend/zend_language_parser.c"
6542
1.82k
    break;
6543
6544
1.44k
  case 284:
6545
1.44k
#line 859 "/src/php-src/Zend/zend_language_parser.y"
6546
1.44k
                                                                          { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6547
1.44k
#line 6548 "/src/php-src/Zend/zend_language_parser.c"
6548
1.44k
    break;
6549
6550
294
  case 285:
6551
294
#line 860 "/src/php-src/Zend/zend_language_parser.y"
6552
294
                                                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6553
294
#line 6554 "/src/php-src/Zend/zend_language_parser.c"
6554
294
    break;
6555
6556
24.7k
  case 286:
6557
24.7k
#line 867 "/src/php-src/Zend/zend_language_parser.y"
6558
24.7k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6559
24.7k
#line 6560 "/src/php-src/Zend/zend_language_parser.c"
6560
24.7k
    break;
6561
6562
1.74k
  case 287:
6563
1.74k
#line 868 "/src/php-src/Zend/zend_language_parser.y"
6564
1.74k
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6565
1.74k
#line 6566 "/src/php-src/Zend/zend_language_parser.c"
6566
1.74k
    break;
6567
6568
5.17k
  case 288:
6569
5.17k
#line 869 "/src/php-src/Zend/zend_language_parser.y"
6570
5.17k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6571
5.17k
#line 6572 "/src/php-src/Zend/zend_language_parser.c"
6572
5.17k
    break;
6573
6574
1.17k
  case 289:
6575
1.17k
#line 870 "/src/php-src/Zend/zend_language_parser.y"
6576
1.17k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6577
1.17k
#line 6578 "/src/php-src/Zend/zend_language_parser.c"
6578
1.17k
    break;
6579
6580
3.72k
  case 290:
6581
3.72k
#line 874 "/src/php-src/Zend/zend_language_parser.y"
6582
3.72k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_ARRAY); }
6583
3.72k
#line 6584 "/src/php-src/Zend/zend_language_parser.c"
6584
3.72k
    break;
6585
6586
357
  case 291:
6587
357
#line 875 "/src/php-src/Zend/zend_language_parser.y"
6588
357
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_CALLABLE); }
6589
357
#line 6590 "/src/php-src/Zend/zend_language_parser.c"
6590
357
    break;
6591
6592
68.0k
  case 292:
6593
68.0k
#line 876 "/src/php-src/Zend/zend_language_parser.y"
6594
68.0k
                                { (yyval.ast) = (yyvsp[0].ast); }
6595
68.0k
#line 6596 "/src/php-src/Zend/zend_language_parser.c"
6596
68.0k
    break;
6597
6598
9.57k
  case 293:
6599
9.57k
#line 880 "/src/php-src/Zend/zend_language_parser.y"
6600
9.57k
                                    { (yyval.ast) = (yyvsp[0].ast); }
6601
9.57k
#line 6602 "/src/php-src/Zend/zend_language_parser.c"
6602
9.57k
    break;
6603
6604
4.49k
  case 294:
6605
4.49k
#line 881 "/src/php-src/Zend/zend_language_parser.y"
6606
4.49k
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
6607
4.49k
#line 6608 "/src/php-src/Zend/zend_language_parser.c"
6608
4.49k
    break;
6609
6610
5.17k
  case 295:
6611
5.17k
#line 886 "/src/php-src/Zend/zend_language_parser.y"
6612
5.17k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6613
5.17k
#line 6614 "/src/php-src/Zend/zend_language_parser.c"
6614
5.17k
    break;
6615
6616
3.70k
  case 296:
6617
3.70k
#line 888 "/src/php-src/Zend/zend_language_parser.y"
6618
3.70k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6619
3.70k
#line 6620 "/src/php-src/Zend/zend_language_parser.c"
6620
3.70k
    break;
6621
6622
5.67k
  case 297:
6623
5.67k
#line 893 "/src/php-src/Zend/zend_language_parser.y"
6624
5.67k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6625
5.67k
#line 6626 "/src/php-src/Zend/zend_language_parser.c"
6626
5.67k
    break;
6627
6628
4.24k
  case 298:
6629
4.24k
#line 895 "/src/php-src/Zend/zend_language_parser.y"
6630
4.24k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6631
4.24k
#line 6632 "/src/php-src/Zend/zend_language_parser.c"
6632
4.24k
    break;
6633
6634
74.3k
  case 299:
6635
74.3k
#line 899 "/src/php-src/Zend/zend_language_parser.y"
6636
74.3k
                        { (yyval.ast) = NULL; }
6637
74.3k
#line 6638 "/src/php-src/Zend/zend_language_parser.c"
6638
74.3k
    break;
6639
6640
12.6k
  case 300:
6641
12.6k
#line 900 "/src/php-src/Zend/zend_language_parser.y"
6642
12.6k
                                { (yyval.ast) = (yyvsp[0].ast); }
6643
12.6k
#line 6644 "/src/php-src/Zend/zend_language_parser.c"
6644
12.6k
    break;
6645
6646
93.3k
  case 301:
6647
93.3k
#line 904 "/src/php-src/Zend/zend_language_parser.y"
6648
93.3k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_ARG_LIST); }
6649
93.3k
#line 6650 "/src/php-src/Zend/zend_language_parser.c"
6650
93.3k
    break;
6651
6652
281k
  case 302:
6653
281k
#line 905 "/src/php-src/Zend/zend_language_parser.y"
6654
281k
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
6655
281k
#line 6656 "/src/php-src/Zend/zend_language_parser.c"
6656
281k
    break;
6657
6658
3.39k
  case 303:
6659
3.39k
#line 906 "/src/php-src/Zend/zend_language_parser.y"
6660
3.39k
                                   { (yyval.ast) = zend_ast_create_fcc(); }
6661
3.39k
#line 6662 "/src/php-src/Zend/zend_language_parser.c"
6662
3.39k
    break;
6663
6664
283k
  case 304:
6665
283k
#line 911 "/src/php-src/Zend/zend_language_parser.y"
6666
283k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6667
283k
#line 6668 "/src/php-src/Zend/zend_language_parser.c"
6668
283k
    break;
6669
6670
146k
  case 305:
6671
146k
#line 913 "/src/php-src/Zend/zend_language_parser.y"
6672
146k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6673
146k
#line 6674 "/src/php-src/Zend/zend_language_parser.c"
6674
146k
    break;
6675
6676
323
  case 306:
6677
323
#line 926 "/src/php-src/Zend/zend_language_parser.y"
6678
323
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_ARG_LIST); }
6679
323
#line 6680 "/src/php-src/Zend/zend_language_parser.c"
6680
323
    break;
6681
6682
376
  case 307:
6683
376
#line 927 "/src/php-src/Zend/zend_language_parser.y"
6684
376
                                                                     { (yyval.ast) = (yyvsp[-2].ast); }
6685
376
#line 6686 "/src/php-src/Zend/zend_language_parser.c"
6686
376
    break;
6687
6688
76
  case 308:
6689
76
#line 928 "/src/php-src/Zend/zend_language_parser.y"
6690
76
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARG_LIST, (yyvsp[-2].ast)); }
6691
76
#line 6692 "/src/php-src/Zend/zend_language_parser.c"
6692
76
    break;
6693
6694
42
  case 309:
6695
42
#line 929 "/src/php-src/Zend/zend_language_parser.y"
6696
42
                                   { (yyval.ast) = zend_ast_create_fcc(); }
6697
42
#line 6698 "/src/php-src/Zend/zend_language_parser.c"
6698
42
    break;
6699
6700
396
  case 310:
6701
396
#line 934 "/src/php-src/Zend/zend_language_parser.y"
6702
396
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_ARG_LIST, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6703
396
#line 6704 "/src/php-src/Zend/zend_language_parser.c"
6704
396
    break;
6705
6706
28
  case 311:
6707
28
#line 936 "/src/php-src/Zend/zend_language_parser.y"
6708
28
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6709
28
#line 6710 "/src/php-src/Zend/zend_language_parser.c"
6710
28
    break;
6711
6712
236
  case 312:
6713
236
#line 938 "/src/php-src/Zend/zend_language_parser.y"
6714
236
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6715
236
#line 6716 "/src/php-src/Zend/zend_language_parser.c"
6716
236
    break;
6717
6718
13.6k
  case 313:
6719
13.6k
#line 943 "/src/php-src/Zend/zend_language_parser.y"
6720
13.6k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMED_ARG, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6721
13.6k
#line 6722 "/src/php-src/Zend/zend_language_parser.c"
6722
13.6k
    break;
6723
6724
2.13k
  case 314:
6725
2.13k
#line 944 "/src/php-src/Zend/zend_language_parser.y"
6726
2.13k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
6727
2.13k
#line 6728 "/src/php-src/Zend/zend_language_parser.c"
6728
2.13k
    break;
6729
6730
415k
  case 315:
6731
415k
#line 948 "/src/php-src/Zend/zend_language_parser.y"
6732
415k
                     { (yyval.ast) = (yyvsp[0].ast); }
6733
415k
#line 6734 "/src/php-src/Zend/zend_language_parser.c"
6734
415k
    break;
6735
6736
15.8k
  case 316:
6737
15.8k
#line 949 "/src/php-src/Zend/zend_language_parser.y"
6738
15.8k
                                 { (yyval.ast) = (yyvsp[0].ast); }
6739
15.8k
#line 6740 "/src/php-src/Zend/zend_language_parser.c"
6740
15.8k
    break;
6741
6742
877
  case 317:
6743
877
#line 953 "/src/php-src/Zend/zend_language_parser.y"
6744
877
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6745
877
#line 6746 "/src/php-src/Zend/zend_language_parser.c"
6746
877
    break;
6747
6748
1.42k
  case 318:
6749
1.42k
#line 954 "/src/php-src/Zend/zend_language_parser.y"
6750
1.42k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6751
1.42k
#line 6752 "/src/php-src/Zend/zend_language_parser.c"
6752
1.42k
    break;
6753
6754
2.30k
  case 319:
6755
2.30k
#line 959 "/src/php-src/Zend/zend_language_parser.y"
6756
2.30k
                { (yyval.ast) = zend_ast_create(ZEND_AST_GLOBAL, zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast))); }
6757
2.30k
#line 6758 "/src/php-src/Zend/zend_language_parser.c"
6758
2.30k
    break;
6759
6760
260
  case 320:
6761
260
#line 964 "/src/php-src/Zend/zend_language_parser.y"
6762
260
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6763
260
#line 6764 "/src/php-src/Zend/zend_language_parser.c"
6764
260
    break;
6765
6766
1.62k
  case 321:
6767
1.62k
#line 965 "/src/php-src/Zend/zend_language_parser.y"
6768
1.62k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6769
1.62k
#line 6770 "/src/php-src/Zend/zend_language_parser.c"
6770
1.62k
    break;
6771
6772
829
  case 322:
6773
829
#line 969 "/src/php-src/Zend/zend_language_parser.y"
6774
829
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[0].ast), NULL); }
6775
829
#line 6776 "/src/php-src/Zend/zend_language_parser.c"
6776
829
    break;
6777
6778
1.05k
  case 323:
6779
1.05k
#line 970 "/src/php-src/Zend/zend_language_parser.y"
6780
1.05k
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6781
1.05k
#line 6782 "/src/php-src/Zend/zend_language_parser.c"
6782
1.05k
    break;
6783
6784
70.3k
  case 324:
6785
70.3k
#line 975 "/src/php-src/Zend/zend_language_parser.y"
6786
70.3k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6787
70.3k
#line 6788 "/src/php-src/Zend/zend_language_parser.c"
6788
70.3k
    break;
6789
6790
57.2k
  case 325:
6791
57.2k
#line 977 "/src/php-src/Zend/zend_language_parser.y"
6792
57.2k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
6793
57.2k
#line 6794 "/src/php-src/Zend/zend_language_parser.c"
6794
57.2k
    break;
6795
6796
20.4k
  case 326:
6797
20.4k
#line 983 "/src/php-src/Zend/zend_language_parser.y"
6798
20.4k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_GROUP, (yyvsp[-2].ast), (yyvsp[-1].ast), NULL);
6799
20.4k
        (yyval.ast)->attr = (yyvsp[-3].num); }
6800
20.4k
#line 6801 "/src/php-src/Zend/zend_language_parser.c"
6801
20.4k
    break;
6802
6803
5.11k
  case 327:
6804
5.11k
#line 986 "/src/php-src/Zend/zend_language_parser.y"
6805
5.11k
                        { (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);
6806
5.11k
        (yyval.ast)->attr = (yyvsp[-2].num); }
6807
5.11k
#line 6808 "/src/php-src/Zend/zend_language_parser.c"
6808
5.11k
    break;
6809
6810
5.99k
  case 328:
6811
5.99k
#line 989 "/src/php-src/Zend/zend_language_parser.y"
6812
5.99k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, NULL);
6813
5.99k
        (yyval.ast)->attr = (yyvsp[-3].num); }
6814
5.99k
#line 6815 "/src/php-src/Zend/zend_language_parser.c"
6815
5.99k
    break;
6816
6817
1.52k
  case 329:
6818
1.52k
#line 992 "/src/php-src/Zend/zend_language_parser.y"
6819
1.52k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, (yyvsp[-2].ast));
6820
1.52k
        (yyval.ast)->attr = (yyvsp[-4].num); }
6821
1.52k
#line 6822 "/src/php-src/Zend/zend_language_parser.c"
6822
1.52k
    break;
6823
6824
30.9k
  case 330:
6825
30.9k
#line 996 "/src/php-src/Zend/zend_language_parser.y"
6826
30.9k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_METHOD, (yyvsp[-9].num) | (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-10].num), (yyvsp[-7].str),
6827
30.9k
          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); }
6828
30.9k
#line 6829 "/src/php-src/Zend/zend_language_parser.c"
6829
30.9k
    break;
6830
6831
2.81k
  case 331:
6832
2.81k
#line 998 "/src/php-src/Zend/zend_language_parser.y"
6833
2.81k
                          { (yyval.ast) = (yyvsp[0].ast); }
6834
2.81k
#line 6835 "/src/php-src/Zend/zend_language_parser.c"
6835
2.81k
    break;
6836
6837
65.4k
  case 332:
6838
65.4k
#line 1002 "/src/php-src/Zend/zend_language_parser.y"
6839
65.4k
                                           { (yyval.ast) = (yyvsp[0].ast); }
6840
65.4k
#line 6841 "/src/php-src/Zend/zend_language_parser.c"
6841
65.4k
    break;
6842
6843
1.40k
  case 333:
6844
1.40k
#line 1003 "/src/php-src/Zend/zend_language_parser.y"
6845
1.40k
                                                      { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6846
1.40k
#line 6847 "/src/php-src/Zend/zend_language_parser.c"
6847
1.40k
    break;
6848
6849
3.46k
  case 334:
6850
3.46k
#line 1005 "/src/php-src/Zend/zend_language_parser.y"
6851
3.46k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_TRAIT, (yyvsp[-1].ast), (yyvsp[0].ast)); }
6852
3.46k
#line 6853 "/src/php-src/Zend/zend_language_parser.c"
6853
3.46k
    break;
6854
6855
7.29k
  case 335:
6856
7.29k
#line 1009 "/src/php-src/Zend/zend_language_parser.y"
6857
7.29k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
6858
7.29k
#line 6859 "/src/php-src/Zend/zend_language_parser.c"
6859
7.29k
    break;
6860
6861
3.25k
  case 336:
6862
3.25k
#line 1010 "/src/php-src/Zend/zend_language_parser.y"
6863
3.25k
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6864
3.25k
#line 6865 "/src/php-src/Zend/zend_language_parser.c"
6865
3.25k
    break;
6866
6867
1.72k
  case 337:
6868
1.72k
#line 1014 "/src/php-src/Zend/zend_language_parser.y"
6869
1.72k
                                                                                { (yyval.ast) = NULL; }
6870
1.72k
#line 6871 "/src/php-src/Zend/zend_language_parser.c"
6871
1.72k
    break;
6872
6873
213
  case 338:
6874
213
#line 1015 "/src/php-src/Zend/zend_language_parser.y"
6875
213
                                                                        { (yyval.ast) = NULL; }
6876
213
#line 6877 "/src/php-src/Zend/zend_language_parser.c"
6877
213
    break;
6878
6879
1.53k
  case 339:
6880
1.53k
#line 1016 "/src/php-src/Zend/zend_language_parser.y"
6881
1.53k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6882
1.53k
#line 6883 "/src/php-src/Zend/zend_language_parser.c"
6883
1.53k
    break;
6884
6885
1.58k
  case 340:
6886
1.58k
#line 1021 "/src/php-src/Zend/zend_language_parser.y"
6887
1.58k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_TRAIT_ADAPTATIONS, (yyvsp[0].ast)); }
6888
1.58k
#line 6889 "/src/php-src/Zend/zend_language_parser.c"
6889
1.58k
    break;
6890
6891
4.12k
  case 341:
6892
4.12k
#line 1023 "/src/php-src/Zend/zend_language_parser.y"
6893
4.12k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6894
4.12k
#line 6895 "/src/php-src/Zend/zend_language_parser.c"
6895
4.12k
    break;
6896
6897
585
  case 342:
6898
585
#line 1027 "/src/php-src/Zend/zend_language_parser.y"
6899
585
                                        { (yyval.ast) = (yyvsp[-1].ast); }
6900
585
#line 6901 "/src/php-src/Zend/zend_language_parser.c"
6901
585
    break;
6902
6903
5.12k
  case 343:
6904
5.12k
#line 1028 "/src/php-src/Zend/zend_language_parser.y"
6905
5.12k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6906
5.12k
#line 6907 "/src/php-src/Zend/zend_language_parser.c"
6907
5.12k
    break;
6908
6909
591
  case 344:
6910
591
#line 1033 "/src/php-src/Zend/zend_language_parser.y"
6911
591
                { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_PRECEDENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6912
591
#line 6913 "/src/php-src/Zend/zend_language_parser.c"
6913
591
    break;
6914
6915
2.75k
  case 345:
6916
2.75k
#line 1038 "/src/php-src/Zend/zend_language_parser.y"
6917
2.75k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6918
2.75k
#line 6919 "/src/php-src/Zend/zend_language_parser.c"
6919
2.75k
    break;
6920
6921
1.21k
  case 346:
6922
1.21k
#line 1040 "/src/php-src/Zend/zend_language_parser.y"
6923
1.21k
                        { zval zv;
6924
1.21k
        if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
6925
1.21k
        (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), zend_ast_create_zval(&zv)); }
6926
0
#line 6927 "/src/php-src/Zend/zend_language_parser.c"
6927
0
    break;
6928
6929
126
  case 347:
6930
126
#line 1044 "/src/php-src/Zend/zend_language_parser.y"
6931
126
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[-1].num));
6932
126
        (yyval.ast) = zend_ast_create_ex(ZEND_AST_TRAIT_ALIAS, modifiers, (yyvsp[-3].ast), (yyvsp[0].ast));
6933
        /* identifier nonterminal can cause allocations, so we need to free the node */
6934
126
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6935
125
#line 6936 "/src/php-src/Zend/zend_language_parser.c"
6936
125
    break;
6937
6938
1.05k
  case 348:
6939
1.05k
#line 1049 "/src/php-src/Zend/zend_language_parser.y"
6940
1.05k
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].num));
6941
1.05k
        (yyval.ast) = zend_ast_create_ex(ZEND_AST_TRAIT_ALIAS, modifiers, (yyvsp[-2].ast), NULL);
6942
        /* identifier nonterminal can cause allocations, so we need to free the node */
6943
1.05k
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6944
1.04k
#line 6945 "/src/php-src/Zend/zend_language_parser.c"
6945
1.04k
    break;
6946
6947
3.75k
  case 349:
6948
3.75k
#line 1057 "/src/php-src/Zend/zend_language_parser.y"
6949
3.75k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_REFERENCE, NULL, (yyvsp[0].ast)); }
6950
3.75k
#line 6951 "/src/php-src/Zend/zend_language_parser.c"
6951
3.75k
    break;
6952
6953
1.40k
  case 350:
6954
1.40k
#line 1058 "/src/php-src/Zend/zend_language_parser.y"
6955
1.40k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6956
1.40k
#line 6957 "/src/php-src/Zend/zend_language_parser.c"
6957
1.40k
    break;
6958
6959
2.00k
  case 351:
6960
2.00k
#line 1063 "/src/php-src/Zend/zend_language_parser.y"
6961
2.00k
                { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_REFERENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6962
2.00k
#line 6963 "/src/php-src/Zend/zend_language_parser.c"
6963
2.00k
    break;
6964
6965
1.57k
  case 352:
6966
1.57k
#line 1067 "/src/php-src/Zend/zend_language_parser.y"
6967
1.57k
                                                        { (yyval.ast) = NULL; }
6968
1.57k
#line 6969 "/src/php-src/Zend/zend_language_parser.c"
6969
1.57k
    break;
6970
6971
29.3k
  case 353:
6972
29.3k
#line 1068 "/src/php-src/Zend/zend_language_parser.y"
6973
29.3k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6974
29.3k
#line 6975 "/src/php-src/Zend/zend_language_parser.c"
6975
29.3k
    break;
6976
6977
25.3k
  case 354:
6978
25.3k
#line 1073 "/src/php-src/Zend/zend_language_parser.y"
6979
25.3k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY, (yyvsp[0].ast));
6980
25.3k
        if (!(yyval.num)) { YYERROR; } }
6981
25.3k
#line 6982 "/src/php-src/Zend/zend_language_parser.c"
6982
25.3k
    break;
6983
6984
25.3k
  case 355:
6985
769
#line 1076 "/src/php-src/Zend/zend_language_parser.y"
6986
769
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6987
769
#line 6988 "/src/php-src/Zend/zend_language_parser.c"
6988
769
    break;
6989
6990
8.80k
  case 356:
6991
8.80k
#line 1081 "/src/php-src/Zend/zend_language_parser.y"
6992
8.80k
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6993
8.80k
#line 6994 "/src/php-src/Zend/zend_language_parser.c"
6994
8.80k
    break;
6995
6996
22.7k
  case 357:
6997
22.7k
#line 1083 "/src/php-src/Zend/zend_language_parser.y"
6998
22.7k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].ast));
6999
22.7k
        if (!(yyval.num)) { YYERROR; }
7000
22.7k
        if (!((yyval.num) & ZEND_ACC_PPP_MASK)) { (yyval.num) |= ZEND_ACC_PUBLIC; } }
7001
0
#line 7002 "/src/php-src/Zend/zend_language_parser.c"
7002
0
    break;
7003
7004
5.38k
  case 358:
7005
5.38k
#line 1090 "/src/php-src/Zend/zend_language_parser.y"
7006
5.38k
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
7007
5.38k
#line 7008 "/src/php-src/Zend/zend_language_parser.c"
7008
5.38k
    break;
7009
7010
2.25k
  case 359:
7011
2.25k
#line 1092 "/src/php-src/Zend/zend_language_parser.y"
7012
2.25k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CONSTANT, (yyvsp[0].ast));
7013
2.25k
        if (!(yyval.num)) { YYERROR; }
7014
2.25k
        if (!((yyval.num) & ZEND_ACC_PPP_MASK)) { (yyval.num) |= ZEND_ACC_PUBLIC; } }
7015
0
#line 7016 "/src/php-src/Zend/zend_language_parser.c"
7016
0
    break;
7017
7018
52.0k
  case 360:
7019
52.0k
#line 1099 "/src/php-src/Zend/zend_language_parser.y"
7020
52.0k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MODIFIER_LIST, zend_ast_create_zval_from_long((yyvsp[0].num))); }
7021
52.0k
#line 7022 "/src/php-src/Zend/zend_language_parser.c"
7022
52.0k
    break;
7023
7024
8.70k
  case 361:
7025
8.70k
#line 1101 "/src/php-src/Zend/zend_language_parser.y"
7026
8.70k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), zend_ast_create_zval_from_long((yyvsp[0].num))); }
7027
8.70k
#line 7028 "/src/php-src/Zend/zend_language_parser.c"
7028
8.70k
    break;
7029
7030
39.2k
  case 362:
7031
39.2k
#line 1105 "/src/php-src/Zend/zend_language_parser.y"
7032
39.2k
                                                        { (yyval.num) = T_PUBLIC; }
7033
39.2k
#line 7034 "/src/php-src/Zend/zend_language_parser.c"
7034
39.2k
    break;
7035
7036
2.54k
  case 363:
7037
2.54k
#line 1106 "/src/php-src/Zend/zend_language_parser.y"
7038
2.54k
                                                        { (yyval.num) = T_PROTECTED; }
7039
2.54k
#line 7040 "/src/php-src/Zend/zend_language_parser.c"
7040
2.54k
    break;
7041
7042
4.83k
  case 364:
7043
4.83k
#line 1107 "/src/php-src/Zend/zend_language_parser.y"
7044
4.83k
                                                        { (yyval.num) = T_PRIVATE; }
7045
4.83k
#line 7046 "/src/php-src/Zend/zend_language_parser.c"
7046
4.83k
    break;
7047
7048
478
  case 365:
7049
478
#line 1108 "/src/php-src/Zend/zend_language_parser.y"
7050
478
                                                { (yyval.num) = T_PUBLIC_SET; }
7051
478
#line 7052 "/src/php-src/Zend/zend_language_parser.c"
7052
478
    break;
7053
7054
198
  case 366:
7055
198
#line 1109 "/src/php-src/Zend/zend_language_parser.y"
7056
198
                                                { (yyval.num) = T_PROTECTED_SET; }
7057
198
#line 7058 "/src/php-src/Zend/zend_language_parser.c"
7058
198
    break;
7059
7060
728
  case 367:
7061
728
#line 1110 "/src/php-src/Zend/zend_language_parser.y"
7062
728
                                                { (yyval.num) = T_PRIVATE_SET; }
7063
728
#line 7064 "/src/php-src/Zend/zend_language_parser.c"
7064
728
    break;
7065
7066
9.93k
  case 368:
7067
9.93k
#line 1111 "/src/php-src/Zend/zend_language_parser.y"
7068
9.93k
                                                        { (yyval.num) = T_STATIC; }
7069
9.93k
#line 7070 "/src/php-src/Zend/zend_language_parser.c"
7070
9.93k
    break;
7071
7072
1.13k
  case 369:
7073
1.13k
#line 1112 "/src/php-src/Zend/zend_language_parser.y"
7074
1.13k
                                                        { (yyval.num) = T_ABSTRACT; }
7075
1.13k
#line 7076 "/src/php-src/Zend/zend_language_parser.c"
7076
1.13k
    break;
7077
7078
1.70k
  case 370:
7079
1.70k
#line 1113 "/src/php-src/Zend/zend_language_parser.y"
7080
1.70k
                                                        { (yyval.num) = T_FINAL; }
7081
1.70k
#line 7082 "/src/php-src/Zend/zend_language_parser.c"
7082
1.70k
    break;
7083
7084
1.13k
  case 371:
7085
1.13k
#line 1114 "/src/php-src/Zend/zend_language_parser.y"
7086
1.13k
                                                        { (yyval.num) = T_READONLY; }
7087
1.13k
#line 7088 "/src/php-src/Zend/zend_language_parser.c"
7088
1.13k
    break;
7089
7090
296
  case 372:
7091
296
#line 1118 "/src/php-src/Zend/zend_language_parser.y"
7092
296
                                           { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7093
296
#line 7094 "/src/php-src/Zend/zend_language_parser.c"
7094
296
    break;
7095
7096
20.5k
  case 373:
7097
20.5k
#line 1119 "/src/php-src/Zend/zend_language_parser.y"
7098
20.5k
                         { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PROP_DECL, (yyvsp[0].ast)); }
7099
20.5k
#line 7100 "/src/php-src/Zend/zend_language_parser.c"
7100
20.5k
    break;
7101
7102
11.6k
  case 374:
7103
11.6k
#line 1124 "/src/php-src/Zend/zend_language_parser.y"
7104
11.6k
                        { (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); }
7105
11.6k
#line 7106 "/src/php-src/Zend/zend_language_parser.c"
7106
11.6k
    break;
7107
7108
9.19k
  case 375:
7109
9.19k
#line 1126 "/src/php-src/Zend/zend_language_parser.y"
7110
9.19k
                        { (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); }
7111
9.19k
#line 7112 "/src/php-src/Zend/zend_language_parser.c"
7112
9.19k
    break;
7113
7114
4.60k
  case 376:
7115
4.60k
#line 1131 "/src/php-src/Zend/zend_language_parser.y"
7116
4.60k
                        { (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)); }
7117
4.60k
#line 7118 "/src/php-src/Zend/zend_language_parser.c"
7118
4.60k
    break;
7119
7120
505
  case 377:
7121
505
#line 1133 "/src/php-src/Zend/zend_language_parser.y"
7122
505
                        { (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)); }
7123
505
#line 7124 "/src/php-src/Zend/zend_language_parser.c"
7124
505
    break;
7125
7126
6.10k
  case 378:
7127
6.10k
#line 1137 "/src/php-src/Zend/zend_language_parser.y"
7128
6.10k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
7129
6.10k
#line 7130 "/src/php-src/Zend/zend_language_parser.c"
7130
6.10k
    break;
7131
7132
13.1k
  case 379:
7133
13.1k
#line 1138 "/src/php-src/Zend/zend_language_parser.y"
7134
13.1k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
7135
13.1k
#line 7136 "/src/php-src/Zend/zend_language_parser.c"
7136
13.1k
    break;
7137
7138
179
  case 380:
7139
179
#line 1139 "/src/php-src/Zend/zend_language_parser.y"
7140
179
                                                            {
7141
179
      (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)));
7142
179
    }
7143
179
#line 7144 "/src/php-src/Zend/zend_language_parser.c"
7144
179
    break;
7145
7146
55.2k
  case 381:
7147
55.2k
#line 1145 "/src/php-src/Zend/zend_language_parser.y"
7148
55.2k
                        { (yyval.ast) = NULL; }
7149
55.2k
#line 7150 "/src/php-src/Zend/zend_language_parser.c"
7150
55.2k
    break;
7151
7152
458
  case 382:
7153
458
#line 1146 "/src/php-src/Zend/zend_language_parser.y"
7154
458
                                                { (yyval.ast) = (yyvsp[-1].ast); }
7155
458
#line 7156 "/src/php-src/Zend/zend_language_parser.c"
7156
458
    break;
7157
7158
13.5k
  case 383:
7159
13.5k
#line 1150 "/src/php-src/Zend/zend_language_parser.y"
7160
13.5k
                       { (yyval.num) = 0; }
7161
13.5k
#line 7162 "/src/php-src/Zend/zend_language_parser.c"
7162
13.5k
    break;
7163
7164
307
  case 384:
7165
307
#line 1151 "/src/php-src/Zend/zend_language_parser.y"
7166
307
                                           {
7167
307
      (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY_HOOK, (yyvsp[0].ast));
7168
307
      if (!(yyval.num)) { YYERROR; }
7169
307
    }
7170
279
#line 7171 "/src/php-src/Zend/zend_language_parser.c"
7171
279
    break;
7172
7173
13.7k
  case 385:
7174
13.7k
#line 1159 "/src/php-src/Zend/zend_language_parser.y"
7175
13.7k
                                   { (yyval.num) = CG(zend_lineno); }
7176
13.7k
#line 7177 "/src/php-src/Zend/zend_language_parser.c"
7177
13.7k
    break;
7178
7179
13.2k
  case 386:
7180
13.2k
#line 1160 "/src/php-src/Zend/zend_language_parser.y"
7181
13.2k
                                                                                           {
7182
13.2k
      (yyval.ast) = zend_ast_create_decl(
7183
13.2k
        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)),
7184
13.2k
        (yyvsp[-3].ast), NULL, (yyvsp[-1].ast), NULL, NULL);
7185
13.2k
      CG(extra_fn_flags) = (yyvsp[-2].num);
7186
13.2k
    }
7187
13.2k
#line 7188 "/src/php-src/Zend/zend_language_parser.c"
7188
13.2k
    break;
7189
7190
6.05k
  case 387:
7191
6.05k
#line 1169 "/src/php-src/Zend/zend_language_parser.y"
7192
6.05k
                    { (yyval.ast) = NULL; }
7193
6.05k
#line 7194 "/src/php-src/Zend/zend_language_parser.c"
7194
6.05k
    break;
7195
7196
3.66k
  case 388:
7197
3.66k
#line 1170 "/src/php-src/Zend/zend_language_parser.y"
7198
3.66k
                                             { (yyval.ast) = (yyvsp[-1].ast); }
7199
3.66k
#line 7200 "/src/php-src/Zend/zend_language_parser.c"
7200
3.66k
    break;
7201
7202
3.57k
  case 389:
7203
3.57k
#line 1172 "/src/php-src/Zend/zend_language_parser.y"
7204
3.57k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROPERTY_HOOK_SHORT_BODY, (yyvsp[-1].ast)); }
7205
3.57k
#line 7206 "/src/php-src/Zend/zend_language_parser.c"
7206
3.57k
    break;
7207
7208
12.9k
  case 390:
7209
12.9k
#line 1176 "/src/php-src/Zend/zend_language_parser.y"
7210
12.9k
                       { (yyval.ast) = NULL; }
7211
12.9k
#line 7212 "/src/php-src/Zend/zend_language_parser.c"
7212
12.9k
    break;
7213
7214
476
  case 391:
7215
476
#line 1177 "/src/php-src/Zend/zend_language_parser.y"
7216
476
                                       { (yyval.ast) = (yyvsp[-1].ast); }
7217
476
#line 7218 "/src/php-src/Zend/zend_language_parser.c"
7218
476
    break;
7219
7220
194
  case 392:
7221
194
#line 1181 "/src/php-src/Zend/zend_language_parser.y"
7222
194
                                                      { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7223
194
#line 7224 "/src/php-src/Zend/zend_language_parser.c"
7224
194
    break;
7225
7226
7.54k
  case 393:
7227
7.54k
#line 1182 "/src/php-src/Zend/zend_language_parser.y"
7228
7.54k
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLASS_CONST_DECL, (yyvsp[0].ast)); }
7229
7.54k
#line 7230 "/src/php-src/Zend/zend_language_parser.c"
7230
7.54k
    break;
7231
7232
4.94k
  case 394:
7233
4.94k
#line 1186 "/src/php-src/Zend/zend_language_parser.y"
7234
4.94k
                                                     { (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)); }
7235
4.94k
#line 7236 "/src/php-src/Zend/zend_language_parser.c"
7236
4.94k
    break;
7237
7238
2.78k
  case 395:
7239
2.78k
#line 1187 "/src/php-src/Zend/zend_language_parser.y"
7240
2.78k
                                                          {
7241
2.78k
      zval zv;
7242
2.78k
      if (zend_lex_tstring(&zv, (yyvsp[-3].ident)) == FAILURE) { YYABORT; }
7243
2.78k
      (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));
7244
2.78k
    }
7245
0
#line 7246 "/src/php-src/Zend/zend_language_parser.c"
7246
0
    break;
7247
7248
10.7k
  case 396:
7249
10.7k
#line 1195 "/src/php-src/Zend/zend_language_parser.y"
7250
10.7k
                                             { (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)); }
7251
10.7k
#line 7252 "/src/php-src/Zend/zend_language_parser.c"
7252
10.7k
    break;
7253
7254
17.9k
  case 397:
7255
17.9k
#line 1199 "/src/php-src/Zend/zend_language_parser.y"
7256
17.9k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7257
17.9k
#line 7258 "/src/php-src/Zend/zend_language_parser.c"
7258
17.9k
    break;
7259
7260
52.0k
  case 398:
7261
52.0k
#line 1200 "/src/php-src/Zend/zend_language_parser.y"
7262
52.0k
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
7263
52.0k
#line 7264 "/src/php-src/Zend/zend_language_parser.c"
7264
52.0k
    break;
7265
7266
70.0k
  case 399:
7267
70.0k
#line 1203 "/src/php-src/Zend/zend_language_parser.y"
7268
70.0k
             { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
7269
70.0k
#line 7270 "/src/php-src/Zend/zend_language_parser.c"
7270
70.0k
    break;
7271
7272
2.27k
  case 400:
7273
2.27k
#line 1207 "/src/php-src/Zend/zend_language_parser.y"
7274
2.27k
                                        { (yyval.ast) = NULL; }
7275
2.27k
#line 7276 "/src/php-src/Zend/zend_language_parser.c"
7276
2.27k
    break;
7277
7278
1.03k
  case 401:
7279
1.03k
#line 1208 "/src/php-src/Zend/zend_language_parser.y"
7280
1.03k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7281
1.03k
#line 7282 "/src/php-src/Zend/zend_language_parser.c"
7282
1.03k
    break;
7283
7284
10.7k
  case 402:
7285
10.7k
#line 1209 "/src/php-src/Zend/zend_language_parser.y"
7286
10.7k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7287
10.7k
#line 7288 "/src/php-src/Zend/zend_language_parser.c"
7288
10.7k
    break;
7289
7290
9.98k
  case 403:
7291
9.98k
#line 1213 "/src/php-src/Zend/zend_language_parser.y"
7292
9.98k
                                        { (yyval.ast) = NULL; }
7293
9.98k
#line 7294 "/src/php-src/Zend/zend_language_parser.c"
7294
9.98k
    break;
7295
7296
18.0k
  case 404:
7297
18.0k
#line 1214 "/src/php-src/Zend/zend_language_parser.y"
7298
18.0k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7299
18.0k
#line 7300 "/src/php-src/Zend/zend_language_parser.c"
7300
18.0k
    break;
7301
7302
1.81k
  case 405:
7303
1.81k
#line 1218 "/src/php-src/Zend/zend_language_parser.y"
7304
1.81k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7305
1.81k
#line 7306 "/src/php-src/Zend/zend_language_parser.c"
7306
1.81k
    break;
7307
7308
93
  case 406:
7309
93
#line 1219 "/src/php-src/Zend/zend_language_parser.y"
7310
93
                                                         { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7311
93
#line 7312 "/src/php-src/Zend/zend_language_parser.c"
7312
93
    break;
7313
7314
66
  case 407:
7315
66
#line 1220 "/src/php-src/Zend/zend_language_parser.y"
7316
66
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7317
66
#line 7318 "/src/php-src/Zend/zend_language_parser.c"
7318
66
    break;
7319
7320
19.0k
  case 408:
7321
19.0k
#line 1221 "/src/php-src/Zend/zend_language_parser.y"
7322
19.0k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7323
19.0k
#line 7324 "/src/php-src/Zend/zend_language_parser.c"
7324
19.0k
    break;
7325
7326
2.62k
  case 409:
7327
2.62k
#line 1225 "/src/php-src/Zend/zend_language_parser.y"
7328
2.62k
                                                           { (yyval.num) = CG(zend_lineno); }
7329
2.62k
#line 7330 "/src/php-src/Zend/zend_language_parser.c"
7330
2.62k
    break;
7331
7332
2.48k
  case 410:
7333
2.48k
#line 1226 "/src/php-src/Zend/zend_language_parser.y"
7334
2.48k
                                                                                             {
7335
2.48k
      zend_ast *decl = zend_ast_create_decl(
7336
2.48k
        ZEND_AST_CLASS, ZEND_ACC_ANON_CLASS | (yyvsp[-9].num), (yyvsp[-7].num), (yyvsp[-3].str), NULL,
7337
2.48k
        (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL);
7338
2.48k
      (yyval.ast) = zend_ast_create(ZEND_AST_NEW, decl, (yyvsp[-6].ast));
7339
2.48k
    }
7340
2.48k
#line 7341 "/src/php-src/Zend/zend_language_parser.c"
7341
2.48k
    break;
7342
7343
54.2k
  case 411:
7344
54.2k
#line 1236 "/src/php-src/Zend/zend_language_parser.y"
7345
54.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7346
54.2k
#line 7347 "/src/php-src/Zend/zend_language_parser.c"
7347
54.2k
    break;
7348
7349
2.18k
  case 412:
7350
2.18k
#line 1238 "/src/php-src/Zend/zend_language_parser.y"
7351
2.18k
                        { (yyval.ast) = (yyvsp[0].ast); }
7352
2.18k
#line 7353 "/src/php-src/Zend/zend_language_parser.c"
7353
2.18k
    break;
7354
7355
302
  case 413:
7356
302
#line 1240 "/src/php-src/Zend/zend_language_parser.y"
7357
302
                        { zend_ast_with_attributes((yyvsp[0].ast)->child[0], (yyvsp[-1].ast)); (yyval.ast) = (yyvsp[0].ast); }
7358
302
#line 7359 "/src/php-src/Zend/zend_language_parser.c"
7359
302
    break;
7360
7361
16.8k
  case 414:
7362
16.8k
#line 1245 "/src/php-src/Zend/zend_language_parser.y"
7363
16.8k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[0].ast), zend_ast_create_list(0, ZEND_AST_ARG_LIST)); }
7364
16.8k
#line 7365 "/src/php-src/Zend/zend_language_parser.c"
7365
16.8k
    break;
7366
7367
581k
  case 415:
7368
581k
#line 1250 "/src/php-src/Zend/zend_language_parser.y"
7369
581k
                        { (yyval.ast) = (yyvsp[0].ast); }
7370
581k
#line 7371 "/src/php-src/Zend/zend_language_parser.c"
7371
581k
    break;
7372
7373
1.75k
  case 416:
7374
1.75k
#line 1252 "/src/php-src/Zend/zend_language_parser.y"
7375
1.75k
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_LIST; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7376
1.75k
#line 7377 "/src/php-src/Zend/zend_language_parser.c"
7377
1.75k
    break;
7378
7379
1.85k
  case 417:
7380
1.85k
#line 1254 "/src/php-src/Zend/zend_language_parser.y"
7381
1.85k
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7382
1.85k
#line 7383 "/src/php-src/Zend/zend_language_parser.c"
7383
1.85k
    break;
7384
7385
233k
  case 418:
7386
233k
#line 1256 "/src/php-src/Zend/zend_language_parser.y"
7387
233k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7388
233k
#line 7389 "/src/php-src/Zend/zend_language_parser.c"
7389
233k
    break;
7390
7391
5.13k
  case 419:
7392
5.13k
#line 1258 "/src/php-src/Zend/zend_language_parser.y"
7393
5.13k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_REF, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7394
5.13k
#line 7395 "/src/php-src/Zend/zend_language_parser.c"
7395
5.13k
    break;
7396
7397
817
  case 420:
7398
817
#line 1259 "/src/php-src/Zend/zend_language_parser.y"
7399
817
                                            {
7400
817
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_CLONE));
7401
817
      name->attr = ZEND_NAME_FQ;
7402
817
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7403
817
    }
7404
817
#line 7405 "/src/php-src/Zend/zend_language_parser.c"
7405
817
    break;
7406
7407
866
  case 421:
7408
866
#line 1264 "/src/php-src/Zend/zend_language_parser.y"
7409
866
                             {
7410
866
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_CLONE));
7411
866
      name->attr = ZEND_NAME_FQ;
7412
866
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, zend_ast_create_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)));
7413
866
    }
7414
866
#line 7415 "/src/php-src/Zend/zend_language_parser.c"
7415
866
    break;
7416
7417
2.65k
  case 422:
7418
2.65k
#line 1270 "/src/php-src/Zend/zend_language_parser.y"
7419
2.65k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7420
2.65k
#line 7421 "/src/php-src/Zend/zend_language_parser.c"
7421
2.65k
    break;
7422
7423
618
  case 423:
7424
618
#line 1272 "/src/php-src/Zend/zend_language_parser.y"
7425
618
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7426
618
#line 7427 "/src/php-src/Zend/zend_language_parser.c"
7427
618
    break;
7428
7429
3.26k
  case 424:
7430
3.26k
#line 1274 "/src/php-src/Zend/zend_language_parser.y"
7431
3.26k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7432
3.26k
#line 7433 "/src/php-src/Zend/zend_language_parser.c"
7433
3.26k
    break;
7434
7435
186
  case 425:
7436
186
#line 1276 "/src/php-src/Zend/zend_language_parser.y"
7437
186
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7438
186
#line 7439 "/src/php-src/Zend/zend_language_parser.c"
7439
186
    break;
7440
7441
1.36k
  case 426:
7442
1.36k
#line 1278 "/src/php-src/Zend/zend_language_parser.y"
7443
1.36k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7444
1.36k
#line 7445 "/src/php-src/Zend/zend_language_parser.c"
7445
1.36k
    break;
7446
7447
139k
  case 427:
7448
139k
#line 1280 "/src/php-src/Zend/zend_language_parser.y"
7449
139k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_CONCAT, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7450
139k
#line 7451 "/src/php-src/Zend/zend_language_parser.c"
7451
139k
    break;
7452
7453
864
  case 428:
7454
864
#line 1282 "/src/php-src/Zend/zend_language_parser.y"
7455
864
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7456
864
#line 7457 "/src/php-src/Zend/zend_language_parser.c"
7457
864
    break;
7458
7459
19.3k
  case 429:
7460
19.3k
#line 1284 "/src/php-src/Zend/zend_language_parser.y"
7461
19.3k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7462
19.3k
#line 7463 "/src/php-src/Zend/zend_language_parser.c"
7463
19.3k
    break;
7464
7465
379
  case 430:
7466
379
#line 1286 "/src/php-src/Zend/zend_language_parser.y"
7467
379
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7468
379
#line 7469 "/src/php-src/Zend/zend_language_parser.c"
7469
379
    break;
7470
7471
366
  case 431:
7472
366
#line 1288 "/src/php-src/Zend/zend_language_parser.y"
7473
366
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7474
366
#line 7475 "/src/php-src/Zend/zend_language_parser.c"
7475
366
    break;
7476
7477
163
  case 432:
7478
163
#line 1290 "/src/php-src/Zend/zend_language_parser.y"
7479
163
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7480
163
#line 7481 "/src/php-src/Zend/zend_language_parser.c"
7481
163
    break;
7482
7483
227
  case 433:
7484
227
#line 1292 "/src/php-src/Zend/zend_language_parser.y"
7485
227
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7486
227
#line 7487 "/src/php-src/Zend/zend_language_parser.c"
7487
227
    break;
7488
7489
8.14k
  case 434:
7490
8.14k
#line 1294 "/src/php-src/Zend/zend_language_parser.y"
7491
8.14k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7492
8.14k
#line 7493 "/src/php-src/Zend/zend_language_parser.c"
7493
8.14k
    break;
7494
7495
7.08k
  case 435:
7496
7.08k
#line 1295 "/src/php-src/Zend/zend_language_parser.y"
7497
7.08k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_INC, (yyvsp[-1].ast)); }
7498
7.08k
#line 7499 "/src/php-src/Zend/zend_language_parser.c"
7499
7.08k
    break;
7500
7501
2.22k
  case 436:
7502
2.22k
#line 1296 "/src/php-src/Zend/zend_language_parser.y"
7503
2.22k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_INC, (yyvsp[0].ast)); }
7504
2.22k
#line 7505 "/src/php-src/Zend/zend_language_parser.c"
7505
2.22k
    break;
7506
7507
3.42k
  case 437:
7508
3.42k
#line 1297 "/src/php-src/Zend/zend_language_parser.y"
7509
3.42k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_DEC, (yyvsp[-1].ast)); }
7510
3.42k
#line 7511 "/src/php-src/Zend/zend_language_parser.c"
7511
3.42k
    break;
7512
7513
1.62k
  case 438:
7514
1.62k
#line 1298 "/src/php-src/Zend/zend_language_parser.y"
7515
1.62k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_DEC, (yyvsp[0].ast)); }
7516
1.62k
#line 7517 "/src/php-src/Zend/zend_language_parser.c"
7517
1.62k
    break;
7518
7519
4.69k
  case 439:
7520
4.69k
#line 1300 "/src/php-src/Zend/zend_language_parser.y"
7521
4.69k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7522
4.69k
#line 7523 "/src/php-src/Zend/zend_language_parser.c"
7523
4.69k
    break;
7524
7525
4.76k
  case 440:
7526
4.76k
#line 1302 "/src/php-src/Zend/zend_language_parser.y"
7527
4.76k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7528
4.76k
#line 7529 "/src/php-src/Zend/zend_language_parser.c"
7529
4.76k
    break;
7530
7531
3.12k
  case 441:
7532
3.12k
#line 1304 "/src/php-src/Zend/zend_language_parser.y"
7533
3.12k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7534
3.12k
#line 7535 "/src/php-src/Zend/zend_language_parser.c"
7535
3.12k
    break;
7536
7537
4.77k
  case 442:
7538
4.77k
#line 1306 "/src/php-src/Zend/zend_language_parser.y"
7539
4.77k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7540
4.77k
#line 7541 "/src/php-src/Zend/zend_language_parser.c"
7541
4.77k
    break;
7542
7543
4.14k
  case 443:
7544
4.14k
#line 1308 "/src/php-src/Zend/zend_language_parser.y"
7545
4.14k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BOOL_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7546
4.14k
#line 7547 "/src/php-src/Zend/zend_language_parser.c"
7547
4.14k
    break;
7548
7549
30.4k
  case 444:
7550
30.4k
#line 1309 "/src/php-src/Zend/zend_language_parser.y"
7551
30.4k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7552
30.4k
#line 7553 "/src/php-src/Zend/zend_language_parser.c"
7553
30.4k
    break;
7554
7555
26.2k
  case 445:
7556
26.2k
#line 1310 "/src/php-src/Zend/zend_language_parser.y"
7557
26.2k
                                                                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7558
26.2k
#line 7559 "/src/php-src/Zend/zend_language_parser.c"
7559
26.2k
    break;
7560
7561
3.49k
  case 446:
7562
3.49k
#line 1311 "/src/php-src/Zend/zend_language_parser.y"
7563
3.49k
                                                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7564
3.49k
#line 7565 "/src/php-src/Zend/zend_language_parser.c"
7565
3.49k
    break;
7566
7567
15.5k
  case 447:
7568
15.5k
#line 1312 "/src/php-src/Zend/zend_language_parser.y"
7569
15.5k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7570
15.5k
#line 7571 "/src/php-src/Zend/zend_language_parser.c"
7571
15.5k
    break;
7572
7573
110k
  case 448:
7574
110k
#line 1313 "/src/php-src/Zend/zend_language_parser.y"
7575
110k
                                { (yyval.ast) = zend_ast_create_concat_op((yyvsp[-2].ast), (yyvsp[0].ast)); }
7576
110k
#line 7577 "/src/php-src/Zend/zend_language_parser.c"
7577
110k
    break;
7578
7579
37.3k
  case 449:
7580
37.3k
#line 1314 "/src/php-src/Zend/zend_language_parser.y"
7581
37.3k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7582
37.3k
#line 7583 "/src/php-src/Zend/zend_language_parser.c"
7583
37.3k
    break;
7584
7585
36.2k
  case 450:
7586
36.2k
#line 1315 "/src/php-src/Zend/zend_language_parser.y"
7587
36.2k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7588
36.2k
#line 7589 "/src/php-src/Zend/zend_language_parser.c"
7589
36.2k
    break;
7590
7591
23.2k
  case 451:
7592
23.2k
#line 1316 "/src/php-src/Zend/zend_language_parser.y"
7593
23.2k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7594
23.2k
#line 7595 "/src/php-src/Zend/zend_language_parser.c"
7595
23.2k
    break;
7596
7597
9.97k
  case 452:
7598
9.97k
#line 1317 "/src/php-src/Zend/zend_language_parser.y"
7599
9.97k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7600
9.97k
#line 7601 "/src/php-src/Zend/zend_language_parser.c"
7601
9.97k
    break;
7602
7603
26.6k
  case 453:
7604
26.6k
#line 1318 "/src/php-src/Zend/zend_language_parser.y"
7605
26.6k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7606
26.6k
#line 7607 "/src/php-src/Zend/zend_language_parser.c"
7607
26.6k
    break;
7608
7609
16.1k
  case 454:
7610
16.1k
#line 1319 "/src/php-src/Zend/zend_language_parser.y"
7611
16.1k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7612
16.1k
#line 7613 "/src/php-src/Zend/zend_language_parser.c"
7613
16.1k
    break;
7614
7615
8.23k
  case 455:
7616
8.23k
#line 1320 "/src/php-src/Zend/zend_language_parser.y"
7617
8.23k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7618
8.23k
#line 7619 "/src/php-src/Zend/zend_language_parser.c"
7619
8.23k
    break;
7620
7621
4.16k
  case 456:
7622
4.16k
#line 1321 "/src/php-src/Zend/zend_language_parser.y"
7623
4.16k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7624
4.16k
#line 7625 "/src/php-src/Zend/zend_language_parser.c"
7625
4.16k
    break;
7626
7627
16.1k
  case 457:
7628
16.1k
#line 1322 "/src/php-src/Zend/zend_language_parser.y"
7629
16.1k
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_PLUS, (yyvsp[0].ast)); }
7630
16.1k
#line 7631 "/src/php-src/Zend/zend_language_parser.c"
7631
16.1k
    break;
7632
7633
36.3k
  case 458:
7634
36.3k
#line 1323 "/src/php-src/Zend/zend_language_parser.y"
7635
36.3k
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_MINUS, (yyvsp[0].ast)); }
7636
36.3k
#line 7637 "/src/php-src/Zend/zend_language_parser.c"
7637
36.3k
    break;
7638
7639
48.7k
  case 459:
7640
48.7k
#line 1324 "/src/php-src/Zend/zend_language_parser.y"
7641
48.7k
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BOOL_NOT, (yyvsp[0].ast)); }
7642
48.7k
#line 7643 "/src/php-src/Zend/zend_language_parser.c"
7643
48.7k
    break;
7644
7645
33.0k
  case 460:
7646
33.0k
#line 1325 "/src/php-src/Zend/zend_language_parser.y"
7647
33.0k
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BW_NOT, (yyvsp[0].ast)); }
7648
33.0k
#line 7649 "/src/php-src/Zend/zend_language_parser.c"
7649
33.0k
    break;
7650
7651
6.67k
  case 461:
7652
6.67k
#line 1327 "/src/php-src/Zend/zend_language_parser.y"
7653
6.67k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7654
6.67k
#line 7655 "/src/php-src/Zend/zend_language_parser.c"
7655
6.67k
    break;
7656
7657
2.33k
  case 462:
7658
2.33k
#line 1329 "/src/php-src/Zend/zend_language_parser.y"
7659
2.33k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7660
2.33k
#line 7661 "/src/php-src/Zend/zend_language_parser.c"
7661
2.33k
    break;
7662
7663
22.3k
  case 463:
7664
22.3k
#line 1331 "/src/php-src/Zend/zend_language_parser.y"
7665
22.3k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7666
22.3k
#line 7667 "/src/php-src/Zend/zend_language_parser.c"
7667
22.3k
    break;
7668
7669
6.87k
  case 464:
7670
6.87k
#line 1333 "/src/php-src/Zend/zend_language_parser.y"
7671
6.87k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7672
6.87k
#line 7673 "/src/php-src/Zend/zend_language_parser.c"
7673
6.87k
    break;
7674
7675
7.67k
  case 465:
7676
7.67k
#line 1335 "/src/php-src/Zend/zend_language_parser.y"
7677
7.67k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PIPE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7678
7.67k
#line 7679 "/src/php-src/Zend/zend_language_parser.c"
7679
7.67k
    break;
7680
7681
21.7k
  case 466:
7682
21.7k
#line 1337 "/src/php-src/Zend/zend_language_parser.y"
7683
21.7k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7684
21.7k
#line 7685 "/src/php-src/Zend/zend_language_parser.c"
7685
21.7k
    break;
7686
7687
4.41k
  case 467:
7688
4.41k
#line 1339 "/src/php-src/Zend/zend_language_parser.y"
7689
4.41k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER_OR_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7690
4.41k
#line 7691 "/src/php-src/Zend/zend_language_parser.c"
7691
4.41k
    break;
7692
7693
17.7k
  case 468:
7694
17.7k
#line 1341 "/src/php-src/Zend/zend_language_parser.y"
7695
17.7k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7696
17.7k
#line 7697 "/src/php-src/Zend/zend_language_parser.c"
7697
17.7k
    break;
7698
7699
4.27k
  case 469:
7700
4.27k
#line 1343 "/src/php-src/Zend/zend_language_parser.y"
7701
4.27k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7702
4.27k
#line 7703 "/src/php-src/Zend/zend_language_parser.c"
7703
4.27k
    break;
7704
7705
532
  case 470:
7706
532
#line 1345 "/src/php-src/Zend/zend_language_parser.y"
7707
532
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_SPACESHIP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7708
532
#line 7709 "/src/php-src/Zend/zend_language_parser.c"
7709
532
    break;
7710
7711
1.08k
  case 471:
7712
1.08k
#line 1347 "/src/php-src/Zend/zend_language_parser.y"
7713
1.08k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_INSTANCEOF, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7714
1.08k
#line 7715 "/src/php-src/Zend/zend_language_parser.c"
7715
1.08k
    break;
7716
7717
22.7k
  case 472:
7718
22.7k
#line 1348 "/src/php-src/Zend/zend_language_parser.y"
7719
22.7k
                             {
7720
22.7k
      (yyval.ast) = (yyvsp[-1].ast);
7721
22.7k
      if ((yyval.ast)->kind == ZEND_AST_CONDITIONAL) (yyval.ast)->attr = ZEND_PARENTHESIZED_CONDITIONAL;
7722
22.7k
      if ((yyval.ast)->kind == ZEND_AST_ARROW_FUNC) (yyval.ast)->attr = ZEND_PARENTHESIZED_ARROW_FUNC;
7723
22.7k
    }
7724
22.7k
#line 7725 "/src/php-src/Zend/zend_language_parser.c"
7725
22.7k
    break;
7726
7727
55.8k
  case 473:
7728
55.8k
#line 1353 "/src/php-src/Zend/zend_language_parser.y"
7729
55.8k
                                    { (yyval.ast) = (yyvsp[0].ast); }
7730
55.8k
#line 7731 "/src/php-src/Zend/zend_language_parser.c"
7731
55.8k
    break;
7732
7733
16.8k
  case 474:
7734
16.8k
#line 1354 "/src/php-src/Zend/zend_language_parser.y"
7735
16.8k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7736
16.8k
#line 7737 "/src/php-src/Zend/zend_language_parser.c"
7737
16.8k
    break;
7738
7739
5.87k
  case 475:
7740
5.87k
#line 1356 "/src/php-src/Zend/zend_language_parser.y"
7741
5.87k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
7742
5.87k
#line 7743 "/src/php-src/Zend/zend_language_parser.c"
7743
5.87k
    break;
7744
7745
4.26k
  case 476:
7746
4.26k
#line 1358 "/src/php-src/Zend/zend_language_parser.y"
7747
4.26k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-3].ast), NULL, (yyvsp[0].ast)); }
7748
4.26k
#line 7749 "/src/php-src/Zend/zend_language_parser.c"
7749
4.26k
    break;
7750
7751
18.7k
  case 477:
7752
18.7k
#line 1360 "/src/php-src/Zend/zend_language_parser.y"
7753
18.7k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7754
18.7k
#line 7755 "/src/php-src/Zend/zend_language_parser.c"
7755
18.7k
    break;
7756
7757
15.4k
  case 478:
7758
15.4k
#line 1361 "/src/php-src/Zend/zend_language_parser.y"
7759
15.4k
                                           { (yyval.ast) = (yyvsp[0].ast); }
7760
15.4k
#line 7761 "/src/php-src/Zend/zend_language_parser.c"
7761
15.4k
    break;
7762
7763
1.61k
  case 479:
7764
1.61k
#line 1362 "/src/php-src/Zend/zend_language_parser.y"
7765
1.61k
                                        { (yyval.ast) = zend_ast_create_cast(IS_LONG, (yyvsp[0].ast)); }
7766
1.61k
#line 7767 "/src/php-src/Zend/zend_language_parser.c"
7767
1.61k
    break;
7768
7769
1.65k
  case 480:
7770
1.65k
#line 1363 "/src/php-src/Zend/zend_language_parser.y"
7771
1.65k
                                        { (yyval.ast) = zend_ast_create_cast(IS_DOUBLE, (yyvsp[0].ast)); }
7772
1.65k
#line 7773 "/src/php-src/Zend/zend_language_parser.c"
7773
1.65k
    break;
7774
7775
1.05k
  case 481:
7776
1.05k
#line 1364 "/src/php-src/Zend/zend_language_parser.y"
7777
1.05k
                                        { (yyval.ast) = zend_ast_create_cast(IS_STRING, (yyvsp[0].ast)); }
7778
1.05k
#line 7779 "/src/php-src/Zend/zend_language_parser.c"
7779
1.05k
    break;
7780
7781
1.24k
  case 482:
7782
1.24k
#line 1365 "/src/php-src/Zend/zend_language_parser.y"
7783
1.24k
                                        { (yyval.ast) = zend_ast_create_cast(IS_ARRAY, (yyvsp[0].ast)); }
7784
1.24k
#line 7785 "/src/php-src/Zend/zend_language_parser.c"
7785
1.24k
    break;
7786
7787
581
  case 483:
7788
581
#line 1366 "/src/php-src/Zend/zend_language_parser.y"
7789
581
                                        { (yyval.ast) = zend_ast_create_cast(IS_OBJECT, (yyvsp[0].ast)); }
7790
581
#line 7791 "/src/php-src/Zend/zend_language_parser.c"
7791
581
    break;
7792
7793
470
  case 484:
7794
470
#line 1367 "/src/php-src/Zend/zend_language_parser.y"
7795
470
                                        { (yyval.ast) = zend_ast_create_cast(_IS_BOOL, (yyvsp[0].ast)); }
7796
470
#line 7797 "/src/php-src/Zend/zend_language_parser.c"
7797
470
    break;
7798
7799
386
  case 485:
7800
386
#line 1368 "/src/php-src/Zend/zend_language_parser.y"
7801
386
                                        { (yyval.ast) = zend_ast_create_cast(IS_NULL, (yyvsp[0].ast)); }
7802
386
#line 7803 "/src/php-src/Zend/zend_language_parser.c"
7803
386
    break;
7804
7805
4.02k
  case 486:
7806
4.02k
#line 1369 "/src/php-src/Zend/zend_language_parser.y"
7807
4.02k
                                      {
7808
4.02k
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_EXIT));
7809
4.02k
      name->attr = ZEND_NAME_FQ;
7810
4.02k
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7811
4.02k
    }
7812
4.02k
#line 7813 "/src/php-src/Zend/zend_language_parser.c"
7813
4.02k
    break;
7814
7815
656k
  case 487:
7816
656k
#line 1374 "/src/php-src/Zend/zend_language_parser.y"
7817
656k
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_SILENCE, (yyvsp[0].ast)); }
7818
656k
#line 7819 "/src/php-src/Zend/zend_language_parser.c"
7819
656k
    break;
7820
7821
1.55M
  case 488:
7822
1.55M
#line 1375 "/src/php-src/Zend/zend_language_parser.y"
7823
1.55M
                       { (yyval.ast) = (yyvsp[0].ast); }
7824
1.55M
#line 7825 "/src/php-src/Zend/zend_language_parser.c"
7825
1.55M
    break;
7826
7827
6.27k
  case 489:
7828
6.27k
#line 1376 "/src/php-src/Zend/zend_language_parser.y"
7829
6.27k
                                       { (yyval.ast) = zend_ast_create(ZEND_AST_SHELL_EXEC, (yyvsp[-1].ast)); }
7830
6.27k
#line 7831 "/src/php-src/Zend/zend_language_parser.c"
7831
6.27k
    break;
7832
7833
4.14k
  case 490:
7834
4.14k
#line 1377 "/src/php-src/Zend/zend_language_parser.y"
7835
4.14k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_PRINT, (yyvsp[0].ast)); }
7836
4.14k
#line 7837 "/src/php-src/Zend/zend_language_parser.c"
7837
4.14k
    break;
7838
7839
2.36k
  case 491:
7840
2.36k
#line 1378 "/src/php-src/Zend/zend_language_parser.y"
7841
2.36k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, NULL, NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7842
2.36k
#line 7843 "/src/php-src/Zend/zend_language_parser.c"
7843
2.36k
    break;
7844
7845
4.32k
  case 492:
7846
4.32k
#line 1379 "/src/php-src/Zend/zend_language_parser.y"
7847
4.32k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7848
4.32k
#line 7849 "/src/php-src/Zend/zend_language_parser.c"
7849
4.32k
    break;
7850
7851
753
  case 493:
7852
753
#line 1380 "/src/php-src/Zend/zend_language_parser.y"
7853
753
                                                 { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), (yyvsp[-2].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7854
753
#line 7855 "/src/php-src/Zend/zend_language_parser.c"
7855
753
    break;
7856
7857
900
  case 494:
7858
900
#line 1381 "/src/php-src/Zend/zend_language_parser.y"
7859
900
                                  { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD_FROM, (yyvsp[0].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7860
900
#line 7861 "/src/php-src/Zend/zend_language_parser.c"
7861
900
    break;
7862
7863
3.54k
  case 495:
7864
3.54k
#line 1382 "/src/php-src/Zend/zend_language_parser.y"
7865
3.54k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_THROW, (yyvsp[0].ast)); }
7866
3.54k
#line 7867 "/src/php-src/Zend/zend_language_parser.c"
7867
3.54k
    break;
7868
7869
27.1k
  case 496:
7870
27.1k
#line 1383 "/src/php-src/Zend/zend_language_parser.y"
7871
27.1k
                                { (yyval.ast) = (yyvsp[0].ast); }
7872
27.1k
#line 7873 "/src/php-src/Zend/zend_language_parser.c"
7873
27.1k
    break;
7874
7875
7.51k
  case 497:
7876
7.51k
#line 1384 "/src/php-src/Zend/zend_language_parser.y"
7877
7.51k
                                           { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
7878
7.51k
#line 7879 "/src/php-src/Zend/zend_language_parser.c"
7879
7.51k
    break;
7880
7881
284
  case 498:
7882
284
#line 1385 "/src/php-src/Zend/zend_language_parser.y"
7883
284
                                         { (yyval.ast) = (yyvsp[0].ast); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7884
284
#line 7885 "/src/php-src/Zend/zend_language_parser.c"
7885
284
    break;
7886
7887
50
  case 499:
7888
50
#line 1387 "/src/php-src/Zend/zend_language_parser.y"
7889
50
                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-2].ast)); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7890
50
#line 7891 "/src/php-src/Zend/zend_language_parser.c"
7891
50
    break;
7892
7893
2.41k
  case 500:
7894
2.41k
#line 1388 "/src/php-src/Zend/zend_language_parser.y"
7895
2.41k
                      { (yyval.ast) = (yyvsp[0].ast); }
7896
2.41k
#line 7897 "/src/php-src/Zend/zend_language_parser.c"
7897
2.41k
    break;
7898
7899
20.6k
  case 501:
7900
20.6k
#line 1395 "/src/php-src/Zend/zend_language_parser.y"
7901
20.6k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLOSURE, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-10].str),
7902
20.6k
          NULL,
7903
20.6k
          (yyvsp[-8].ast), (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-5].ast), NULL); CG(extra_fn_flags) = (yyvsp[-4].num); }
7904
20.6k
#line 7905 "/src/php-src/Zend/zend_language_parser.c"
7905
20.6k
    break;
7906
7907
14.3k
  case 502:
7908
14.3k
#line 1400 "/src/php-src/Zend/zend_language_parser.y"
7909
14.3k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_ARROW_FUNC, (yyvsp[-10].num) | (yyvsp[0].num), (yyvsp[-11].num), (yyvsp[-9].str),
7910
14.3k
          NULL, (yyvsp[-7].ast), NULL, (yyvsp[-1].ast), (yyvsp[-5].ast), NULL);
7911
14.3k
          CG(extra_fn_flags) = (yyvsp[-3].num); }
7912
14.3k
#line 7913 "/src/php-src/Zend/zend_language_parser.c"
7913
14.3k
    break;
7914
7915
15.4k
  case 503:
7916
15.4k
#line 1406 "/src/php-src/Zend/zend_language_parser.y"
7917
15.4k
             { (yyval.num) = CG(zend_lineno); }
7918
15.4k
#line 7919 "/src/php-src/Zend/zend_language_parser.c"
7919
15.4k
    break;
7920
7921
72.0k
  case 504:
7922
72.0k
#line 1410 "/src/php-src/Zend/zend_language_parser.y"
7923
72.0k
                   { (yyval.num) = CG(zend_lineno); }
7924
72.0k
#line 7925 "/src/php-src/Zend/zend_language_parser.c"
7925
72.0k
    break;
7926
7927
262k
  case 505:
7928
262k
#line 1414 "/src/php-src/Zend/zend_language_parser.y"
7929
262k
               { (yyval.str) = CG(doc_comment); CG(doc_comment) = NULL; }
7930
262k
#line 7931 "/src/php-src/Zend/zend_language_parser.c"
7931
262k
    break;
7932
7933
197k
  case 506:
7934
197k
#line 1418 "/src/php-src/Zend/zend_language_parser.y"
7935
197k
                                         { (yyval.num) = CG(extra_fn_flags); CG(extra_fn_flags) = 0; }
7936
197k
#line 7937 "/src/php-src/Zend/zend_language_parser.c"
7937
197k
    break;
7938
7939
15.2k
  case 507:
7940
15.2k
#line 1422 "/src/php-src/Zend/zend_language_parser.y"
7941
15.2k
               { (yyval.ptr) = LANG_SCNG(yy_text); }
7942
15.2k
#line 7943 "/src/php-src/Zend/zend_language_parser.c"
7943
15.2k
    break;
7944
7945
97.0k
  case 508:
7946
97.0k
#line 1426 "/src/php-src/Zend/zend_language_parser.y"
7947
97.0k
                        { (yyval.num) = 0; }
7948
97.0k
#line 7949 "/src/php-src/Zend/zend_language_parser.c"
7949
97.0k
    break;
7950
7951
4.20k
  case 509:
7952
4.20k
#line 1427 "/src/php-src/Zend/zend_language_parser.y"
7953
4.20k
                                { (yyval.num) = ZEND_ACC_RETURN_REFERENCE; }
7954
4.20k
#line 7955 "/src/php-src/Zend/zend_language_parser.c"
7955
4.20k
    break;
7956
7957
19.5k
  case 510:
7958
19.5k
#line 1431 "/src/php-src/Zend/zend_language_parser.y"
7959
19.5k
                       { (yyval.ast) = NULL; }
7960
19.5k
#line 7961 "/src/php-src/Zend/zend_language_parser.c"
7961
19.5k
    break;
7962
7963
1.77k
  case 511:
7964
1.77k
#line 1432 "/src/php-src/Zend/zend_language_parser.y"
7965
1.77k
                                                              { (yyval.ast) = (yyvsp[-2].ast); }
7966
1.77k
#line 7967 "/src/php-src/Zend/zend_language_parser.c"
7967
1.77k
    break;
7968
7969
2.92k
  case 512:
7970
2.92k
#line 1436 "/src/php-src/Zend/zend_language_parser.y"
7971
2.92k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7972
2.92k
#line 7973 "/src/php-src/Zend/zend_language_parser.c"
7973
2.92k
    break;
7974
7975
1.79k
  case 513:
7976
1.79k
#line 1437 "/src/php-src/Zend/zend_language_parser.y"
7977
1.79k
                            { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLOSURE_USES, (yyvsp[0].ast)); }
7978
1.79k
#line 7979 "/src/php-src/Zend/zend_language_parser.c"
7979
1.79k
    break;
7980
7981
3.29k
  case 514:
7982
3.29k
#line 1441 "/src/php-src/Zend/zend_language_parser.y"
7983
3.29k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7984
3.29k
#line 7985 "/src/php-src/Zend/zend_language_parser.c"
7985
3.29k
    break;
7986
7987
1.43k
  case 515:
7988
1.43k
#line 1442 "/src/php-src/Zend/zend_language_parser.y"
7989
1.43k
                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_BIND_REF; }
7990
1.43k
#line 7991 "/src/php-src/Zend/zend_language_parser.c"
7991
1.43k
    break;
7992
7993
233k
  case 516:
7994
233k
#line 1447 "/src/php-src/Zend/zend_language_parser.y"
7995
233k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7996
233k
#line 7997 "/src/php-src/Zend/zend_language_parser.c"
7997
233k
    break;
7998
7999
70
  case 517:
8000
70
#line 1448 "/src/php-src/Zend/zend_language_parser.y"
8001
70
                                         {
8002
70
      zval zv;
8003
70
      if (zend_lex_tstring(&zv, (yyvsp[-1].ident)) == FAILURE) { YYABORT; }
8004
70
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, zend_ast_create_zval(&zv), (yyvsp[0].ast));
8005
70
    }
8006
0
#line 8007 "/src/php-src/Zend/zend_language_parser.c"
8007
0
    break;
8008
8009
10.6k
  case 518:
8010
10.6k
#line 1454 "/src/php-src/Zend/zend_language_parser.y"
8011
10.6k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8012
10.6k
#line 8013 "/src/php-src/Zend/zend_language_parser.c"
8013
10.6k
    break;
8014
8015
4.79k
  case 519:
8016
4.79k
#line 1456 "/src/php-src/Zend/zend_language_parser.y"
8017
4.79k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8018
4.79k
#line 8019 "/src/php-src/Zend/zend_language_parser.c"
8019
4.79k
    break;
8020
8021
18.2k
  case 520:
8022
18.2k
#line 1457 "/src/php-src/Zend/zend_language_parser.y"
8023
18.2k
                              { (yyval.num) = CG(zend_lineno); }
8024
18.2k
#line 8025 "/src/php-src/Zend/zend_language_parser.c"
8025
18.2k
    break;
8026
8027
15.2k
  case 521:
8028
15.2k
#line 1457 "/src/php-src/Zend/zend_language_parser.y"
8029
15.2k
                                                                           {
8030
15.2k
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-2].ast), (yyvsp[0].ast));
8031
15.2k
      (yyval.ast)->lineno = (yyvsp[-1].num);
8032
15.2k
    }
8033
15.2k
#line 8034 "/src/php-src/Zend/zend_language_parser.c"
8034
15.2k
    break;
8035
8036
919
  case 522:
8037
919
#line 1465 "/src/php-src/Zend/zend_language_parser.y"
8038
919
                        { zval zv; ZVAL_INTERNED_STR(&zv, ZSTR_KNOWN(ZEND_STR_STATIC));
8039
919
        (yyval.ast) = zend_ast_create_zval_ex(&zv, ZEND_NAME_NOT_FQ); }
8040
919
#line 8041 "/src/php-src/Zend/zend_language_parser.c"
8041
919
    break;
8042
8043
237k
  case 523:
8044
237k
#line 1467 "/src/php-src/Zend/zend_language_parser.y"
8045
237k
                     { (yyval.ast) = (yyvsp[0].ast); }
8046
237k
#line 8047 "/src/php-src/Zend/zend_language_parser.c"
8047
237k
    break;
8048
8049
69.5k
  case 524:
8050
69.5k
#line 1471 "/src/php-src/Zend/zend_language_parser.y"
8051
69.5k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8052
69.5k
#line 8053 "/src/php-src/Zend/zend_language_parser.c"
8053
69.5k
    break;
8054
8055
2.84k
  case 525:
8056
2.84k
#line 1472 "/src/php-src/Zend/zend_language_parser.y"
8057
2.84k
                                { (yyval.ast) = (yyvsp[0].ast); }
8058
2.84k
#line 8059 "/src/php-src/Zend/zend_language_parser.c"
8059
2.84k
    break;
8060
8061
287
  case 526:
8062
287
#line 1473 "/src/php-src/Zend/zend_language_parser.y"
8063
287
                                { (yyval.ast) = (yyvsp[-1].ast); }
8064
287
#line 8065 "/src/php-src/Zend/zend_language_parser.c"
8065
287
    break;
8066
8067
2.98k
  case 527:
8068
2.98k
#line 1478 "/src/php-src/Zend/zend_language_parser.y"
8069
2.98k
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
8070
2.98k
#line 8071 "/src/php-src/Zend/zend_language_parser.c"
8071
2.98k
    break;
8072
8073
2.07k
  case 528:
8074
2.07k
#line 1479 "/src/php-src/Zend/zend_language_parser.y"
8075
2.07k
                                          { (yyval.ast) = (yyvsp[0].ast); }
8076
2.07k
#line 8077 "/src/php-src/Zend/zend_language_parser.c"
8077
2.07k
    break;
8078
8079
1.76k
  case 529:
8080
1.76k
#line 1480 "/src/php-src/Zend/zend_language_parser.y"
8081
1.76k
                            { (yyval.ast) = (yyvsp[0].ast); }
8082
1.76k
#line 8083 "/src/php-src/Zend/zend_language_parser.c"
8083
1.76k
    break;
8084
8085
5.63k
  case 530:
8086
5.63k
#line 1485 "/src/php-src/Zend/zend_language_parser.y"
8087
5.63k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_ARG_LIST); }
8088
5.63k
#line 8089 "/src/php-src/Zend/zend_language_parser.c"
8089
5.63k
    break;
8090
8091
1.01k
  case 531:
8092
1.01k
#line 1486 "/src/php-src/Zend/zend_language_parser.y"
8093
1.01k
                              { (yyval.ast) = (yyvsp[0].ast); }
8094
1.01k
#line 8095 "/src/php-src/Zend/zend_language_parser.c"
8095
1.01k
    break;
8096
8097
6.77k
  case 532:
8098
6.77k
#line 1491 "/src/php-src/Zend/zend_language_parser.y"
8099
6.77k
                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LONG; }
8100
6.77k
#line 8101 "/src/php-src/Zend/zend_language_parser.c"
8101
6.77k
    break;
8102
8103
111k
  case 533:
8104
111k
#line 1492 "/src/php-src/Zend/zend_language_parser.y"
8105
111k
                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
8106
111k
#line 8107 "/src/php-src/Zend/zend_language_parser.c"
8107
111k
    break;
8108
8109
363k
  case 534:
8110
363k
#line 1493 "/src/php-src/Zend/zend_language_parser.y"
8111
363k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8112
363k
#line 8113 "/src/php-src/Zend/zend_language_parser.c"
8113
363k
    break;
8114
8115
32.1k
  case 535:
8116
32.1k
#line 1494 "/src/php-src/Zend/zend_language_parser.y"
8117
32.1k
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
8118
32.1k
#line 8119 "/src/php-src/Zend/zend_language_parser.c"
8119
32.1k
    break;
8120
8121
553k
  case 536:
8122
553k
#line 1498 "/src/php-src/Zend/zend_language_parser.y"
8123
553k
                                { (yyval.ast) = (yyvsp[0].ast); }
8124
553k
#line 8125 "/src/php-src/Zend/zend_language_parser.c"
8125
553k
    break;
8126
8127
58.7k
  case 537:
8128
58.7k
#line 1499 "/src/php-src/Zend/zend_language_parser.y"
8129
58.7k
                                { (yyval.ast) = (yyvsp[0].ast); }
8130
58.7k
#line 8131 "/src/php-src/Zend/zend_language_parser.c"
8131
58.7k
    break;
8132
8133
3.27k
  case 538:
8134
3.27k
#line 1500 "/src/php-src/Zend/zend_language_parser.y"
8135
3.27k
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
8136
3.27k
#line 8137 "/src/php-src/Zend/zend_language_parser.c"
8137
3.27k
    break;
8138
8139
747
  case 539:
8140
747
#line 1502 "/src/php-src/Zend/zend_language_parser.y"
8141
747
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
8142
747
#line 8143 "/src/php-src/Zend/zend_language_parser.c"
8143
747
    break;
8144
8145
3.63k
  case 540:
8146
3.63k
#line 1503 "/src/php-src/Zend/zend_language_parser.y"
8147
3.63k
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
8148
3.63k
#line 8149 "/src/php-src/Zend/zend_language_parser.c"
8149
3.63k
    break;
8150
8151
502k
  case 541:
8152
502k
#line 1504 "/src/php-src/Zend/zend_language_parser.y"
8153
502k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8154
502k
#line 8155 "/src/php-src/Zend/zend_language_parser.c"
8155
502k
    break;
8156
8157
413k
  case 542:
8158
413k
#line 1505 "/src/php-src/Zend/zend_language_parser.y"
8159
413k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8160
413k
#line 8161 "/src/php-src/Zend/zend_language_parser.c"
8161
413k
    break;
8162
8163
24.3k
  case 543:
8164
24.3k
#line 1506 "/src/php-src/Zend/zend_language_parser.y"
8165
24.3k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8166
24.3k
#line 8167 "/src/php-src/Zend/zend_language_parser.c"
8167
24.3k
    break;
8168
8169
410k
  case 544:
8170
410k
#line 1510 "/src/php-src/Zend/zend_language_parser.y"
8171
410k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONST, (yyvsp[0].ast)); }
8172
410k
#line 8173 "/src/php-src/Zend/zend_language_parser.c"
8173
410k
    break;
8174
8175
384
  case 545:
8176
384
#line 1511 "/src/php-src/Zend/zend_language_parser.y"
8177
384
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_LINE); }
8178
384
#line 8179 "/src/php-src/Zend/zend_language_parser.c"
8179
384
    break;
8180
8181
4.85k
  case 546:
8182
4.85k
#line 1512 "/src/php-src/Zend/zend_language_parser.y"
8183
4.85k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FILE); }
8184
4.85k
#line 8185 "/src/php-src/Zend/zend_language_parser.c"
8185
4.85k
    break;
8186
8187
1.38k
  case 547:
8188
1.38k
#line 1513 "/src/php-src/Zend/zend_language_parser.y"
8189
1.38k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_DIR); }
8190
1.38k
#line 8191 "/src/php-src/Zend/zend_language_parser.c"
8191
1.38k
    break;
8192
8193
1.41k
  case 548:
8194
1.41k
#line 1514 "/src/php-src/Zend/zend_language_parser.y"
8195
1.41k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_TRAIT_C); }
8196
1.41k
#line 8197 "/src/php-src/Zend/zend_language_parser.c"
8197
1.41k
    break;
8198
8199
4.75k
  case 549:
8200
4.75k
#line 1515 "/src/php-src/Zend/zend_language_parser.y"
8201
4.75k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_METHOD_C); }
8202
4.75k
#line 8203 "/src/php-src/Zend/zend_language_parser.c"
8203
4.75k
    break;
8204
8205
1.41k
  case 550:
8206
1.41k
#line 1516 "/src/php-src/Zend/zend_language_parser.y"
8207
1.41k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FUNC_C); }
8208
1.41k
#line 8209 "/src/php-src/Zend/zend_language_parser.c"
8209
1.41k
    break;
8210
8211
737
  case 551:
8212
737
#line 1517 "/src/php-src/Zend/zend_language_parser.y"
8213
737
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_PROPERTY_C); }
8214
737
#line 8215 "/src/php-src/Zend/zend_language_parser.c"
8215
737
    break;
8216
8217
775
  case 552:
8218
775
#line 1518 "/src/php-src/Zend/zend_language_parser.y"
8219
775
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_NS_C); }
8220
775
#line 8221 "/src/php-src/Zend/zend_language_parser.c"
8221
775
    break;
8222
8223
1.86k
  case 553:
8224
1.86k
#line 1519 "/src/php-src/Zend/zend_language_parser.y"
8225
1.86k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_CLASS_C); }
8226
1.86k
#line 8227 "/src/php-src/Zend/zend_language_parser.c"
8227
1.86k
    break;
8228
8229
20.6k
  case 554:
8230
20.6k
#line 1524 "/src/php-src/Zend/zend_language_parser.y"
8231
20.6k
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
8232
20.6k
#line 8233 "/src/php-src/Zend/zend_language_parser.c"
8233
20.6k
    break;
8234
8235
15.5k
  case 555:
8236
15.5k
#line 1526 "/src/php-src/Zend/zend_language_parser.y"
8237
15.5k
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
8238
15.5k
#line 8239 "/src/php-src/Zend/zend_language_parser.c"
8239
15.5k
    break;
8240
8241
674
  case 556:
8242
674
#line 1528 "/src/php-src/Zend/zend_language_parser.y"
8243
674
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
8244
674
#line 8245 "/src/php-src/Zend/zend_language_parser.c"
8245
674
    break;
8246
8247
726
  case 557:
8248
726
#line 1530 "/src/php-src/Zend/zend_language_parser.y"
8249
726
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
8250
726
#line 8251 "/src/php-src/Zend/zend_language_parser.c"
8251
726
    break;
8252
8253
13.5k
  case 558:
8254
13.5k
#line 1534 "/src/php-src/Zend/zend_language_parser.y"
8255
13.5k
                        { (yyval.ast) = NULL; }
8256
13.5k
#line 8257 "/src/php-src/Zend/zend_language_parser.c"
8257
13.5k
    break;
8258
8259
107k
  case 559:
8260
107k
#line 1535 "/src/php-src/Zend/zend_language_parser.y"
8261
107k
                                { (yyval.ast) = (yyvsp[0].ast); }
8262
107k
#line 8263 "/src/php-src/Zend/zend_language_parser.c"
8263
107k
    break;
8264
8265
23.8k
  case 560:
8266
23.8k
#line 1539 "/src/php-src/Zend/zend_language_parser.y"
8267
23.8k
                                      { (yyval.ast) = (yyvsp[0].ast); }
8268
23.8k
#line 8269 "/src/php-src/Zend/zend_language_parser.c"
8269
23.8k
    break;
8270
8271
195k
  case 561:
8272
195k
#line 1543 "/src/php-src/Zend/zend_language_parser.y"
8273
195k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8274
195k
#line 8275 "/src/php-src/Zend/zend_language_parser.c"
8275
195k
    break;
8276
8277
3.64k
  case 562:
8278
3.64k
#line 1544 "/src/php-src/Zend/zend_language_parser.y"
8279
3.64k
                             {
8280
3.64k
      (yyval.ast) = (yyvsp[-1].ast);
8281
3.64k
      if ((yyval.ast)->kind == ZEND_AST_STATIC_PROP) (yyval.ast)->attr = ZEND_PARENTHESIZED_STATIC_PROP;
8282
3.64k
    }
8283
3.64k
#line 8284 "/src/php-src/Zend/zend_language_parser.c"
8284
3.64k
    break;
8285
8286
10.0k
  case 563:
8287
10.0k
#line 1548 "/src/php-src/Zend/zend_language_parser.y"
8288
10.0k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8289
10.0k
#line 8290 "/src/php-src/Zend/zend_language_parser.c"
8290
10.0k
    break;
8291
8292
13.2k
  case 564:
8293
13.2k
#line 1549 "/src/php-src/Zend/zend_language_parser.y"
8294
13.2k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8295
13.2k
#line 8296 "/src/php-src/Zend/zend_language_parser.c"
8296
13.2k
    break;
8297
8298
567
  case 565:
8299
567
#line 1550 "/src/php-src/Zend/zend_language_parser.y"
8300
567
                                                { (yyval.ast) = (yyvsp[0].ast); }
8301
567
#line 8302 "/src/php-src/Zend/zend_language_parser.c"
8302
567
    break;
8303
8304
199k
  case 566:
8305
199k
#line 1554 "/src/php-src/Zend/zend_language_parser.y"
8306
199k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8307
199k
#line 8308 "/src/php-src/Zend/zend_language_parser.c"
8308
199k
    break;
8309
8310
14.2k
  case 567:
8311
14.2k
#line 1555 "/src/php-src/Zend/zend_language_parser.y"
8312
14.2k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8313
14.2k
#line 8314 "/src/php-src/Zend/zend_language_parser.c"
8314
14.2k
    break;
8315
8316
14.5k
  case 568:
8317
14.5k
#line 1559 "/src/php-src/Zend/zend_language_parser.y"
8318
14.5k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8319
14.5k
#line 8320 "/src/php-src/Zend/zend_language_parser.c"
8320
14.5k
    break;
8321
8322
2.28k
  case 569:
8323
2.28k
#line 1560 "/src/php-src/Zend/zend_language_parser.y"
8324
2.28k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
8325
2.28k
#line 8326 "/src/php-src/Zend/zend_language_parser.c"
8326
2.28k
    break;
8327
8328
1.09k
  case 570:
8329
1.09k
#line 1561 "/src/php-src/Zend/zend_language_parser.y"
8330
1.09k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8331
1.09k
#line 8332 "/src/php-src/Zend/zend_language_parser.c"
8332
1.09k
    break;
8333
8334
351
  case 571:
8335
351
#line 1562 "/src/php-src/Zend/zend_language_parser.y"
8336
351
                                                { (yyval.ast) = (yyvsp[0].ast); }
8337
351
#line 8338 "/src/php-src/Zend/zend_language_parser.c"
8338
351
    break;
8339
8340
771k
  case 572:
8341
771k
#line 1567 "/src/php-src/Zend/zend_language_parser.y"
8342
771k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8343
771k
#line 8344 "/src/php-src/Zend/zend_language_parser.c"
8344
771k
    break;
8345
8346
101k
  case 573:
8347
101k
#line 1569 "/src/php-src/Zend/zend_language_parser.y"
8348
101k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8349
101k
#line 8350 "/src/php-src/Zend/zend_language_parser.c"
8350
101k
    break;
8351
8352
52.2k
  case 574:
8353
52.2k
#line 1571 "/src/php-src/Zend/zend_language_parser.y"
8354
52.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8355
52.2k
#line 8356 "/src/php-src/Zend/zend_language_parser.c"
8356
52.2k
    break;
8357
8358
2.39k
  case 575:
8359
2.39k
#line 1573 "/src/php-src/Zend/zend_language_parser.y"
8360
2.39k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8361
2.39k
#line 8362 "/src/php-src/Zend/zend_language_parser.c"
8362
2.39k
    break;
8363
8364
264k
  case 576:
8365
264k
#line 1574 "/src/php-src/Zend/zend_language_parser.y"
8366
264k
                              { (yyval.ast) = (yyvsp[0].ast); }
8367
264k
#line 8368 "/src/php-src/Zend/zend_language_parser.c"
8368
264k
    break;
8369
8370
1.17M
  case 577:
8371
1.17M
#line 1579 "/src/php-src/Zend/zend_language_parser.y"
8372
1.17M
                        { (yyval.ast) = (yyvsp[0].ast); }
8373
1.17M
#line 8374 "/src/php-src/Zend/zend_language_parser.c"
8374
1.17M
    break;
8375
8376
14.5k
  case 578:
8377
14.5k
#line 1581 "/src/php-src/Zend/zend_language_parser.y"
8378
14.5k
                        { (yyval.ast) = (yyvsp[0].ast); }
8379
14.5k
#line 8380 "/src/php-src/Zend/zend_language_parser.c"
8380
14.5k
    break;
8381
8382
48.0k
  case 579:
8383
48.0k
#line 1583 "/src/php-src/Zend/zend_language_parser.y"
8384
48.0k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8385
48.0k
#line 8386 "/src/php-src/Zend/zend_language_parser.c"
8386
48.0k
    break;
8387
8388
5.88k
  case 580:
8389
5.88k
#line 1585 "/src/php-src/Zend/zend_language_parser.y"
8390
5.88k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8391
5.88k
#line 8392 "/src/php-src/Zend/zend_language_parser.c"
8392
5.88k
    break;
8393
8394
789k
  case 581:
8395
789k
#line 1589 "/src/php-src/Zend/zend_language_parser.y"
8396
789k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8397
789k
#line 8398 "/src/php-src/Zend/zend_language_parser.c"
8398
789k
    break;
8399
8400
5.64k
  case 582:
8401
5.64k
#line 1590 "/src/php-src/Zend/zend_language_parser.y"
8402
5.64k
                                        { (yyval.ast) = (yyvsp[-1].ast); }
8403
5.64k
#line 8404 "/src/php-src/Zend/zend_language_parser.c"
8404
5.64k
    break;
8405
8406
79.6k
  case 583:
8407
79.6k
#line 1591 "/src/php-src/Zend/zend_language_parser.y"
8408
79.6k
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8409
79.6k
#line 8410 "/src/php-src/Zend/zend_language_parser.c"
8410
79.6k
    break;
8411
8412
12.2k
  case 584:
8413
12.2k
#line 1596 "/src/php-src/Zend/zend_language_parser.y"
8414
12.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8415
12.2k
#line 8416 "/src/php-src/Zend/zend_language_parser.c"
8416
12.2k
    break;
8417
8418
2.28k
  case 585:
8419
2.28k
#line 1598 "/src/php-src/Zend/zend_language_parser.y"
8420
2.28k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8421
2.28k
#line 8422 "/src/php-src/Zend/zend_language_parser.c"
8422
2.28k
    break;
8423
8424
2.98k
  case 586:
8425
2.98k
#line 1603 "/src/php-src/Zend/zend_language_parser.y"
8426
2.98k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8427
2.98k
#line 8428 "/src/php-src/Zend/zend_language_parser.c"
8428
2.98k
    break;
8429
8430
124
  case 587:
8431
124
#line 1605 "/src/php-src/Zend/zend_language_parser.y"
8432
124
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8433
124
#line 8434 "/src/php-src/Zend/zend_language_parser.c"
8434
124
    break;
8435
8436
394
  case 588:
8437
394
#line 1607 "/src/php-src/Zend/zend_language_parser.y"
8438
394
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8439
394
#line 8440 "/src/php-src/Zend/zend_language_parser.c"
8440
394
    break;
8441
8442
35
  case 589:
8443
35
#line 1609 "/src/php-src/Zend/zend_language_parser.y"
8444
35
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8445
35
#line 8446 "/src/php-src/Zend/zend_language_parser.c"
8446
35
    break;
8447
8448
333
  case 590:
8449
333
#line 1611 "/src/php-src/Zend/zend_language_parser.y"
8450
333
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8451
333
#line 8452 "/src/php-src/Zend/zend_language_parser.c"
8452
333
    break;
8453
8454
269
  case 591:
8455
269
#line 1613 "/src/php-src/Zend/zend_language_parser.y"
8456
269
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8457
269
#line 8458 "/src/php-src/Zend/zend_language_parser.c"
8458
269
    break;
8459
8460
14.4k
  case 592:
8461
14.4k
#line 1617 "/src/php-src/Zend/zend_language_parser.y"
8462
14.4k
                           { (yyval.ast) = (yyvsp[0].ast); }
8463
14.4k
#line 8464 "/src/php-src/Zend/zend_language_parser.c"
8464
14.4k
    break;
8465
8466
298
  case 593:
8467
298
#line 1618 "/src/php-src/Zend/zend_language_parser.y"
8468
298
                                { (yyval.ast) = (yyvsp[-1].ast); }
8469
298
#line 8470 "/src/php-src/Zend/zend_language_parser.c"
8470
298
    break;
8471
8472
1.11k
  case 594:
8473
1.11k
#line 1619 "/src/php-src/Zend/zend_language_parser.y"
8474
1.11k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8475
1.11k
#line 8476 "/src/php-src/Zend/zend_language_parser.c"
8476
1.11k
    break;
8477
8478
104k
  case 595:
8479
104k
#line 1623 "/src/php-src/Zend/zend_language_parser.y"
8480
104k
                         { (yyval.ast) = (yyvsp[0].ast); }
8481
104k
#line 8482 "/src/php-src/Zend/zend_language_parser.c"
8482
104k
    break;
8483
8484
1.61k
  case 596:
8485
1.61k
#line 1624 "/src/php-src/Zend/zend_language_parser.y"
8486
1.61k
                                { (yyval.ast) = (yyvsp[-1].ast); }
8487
1.61k
#line 8488 "/src/php-src/Zend/zend_language_parser.c"
8488
1.61k
    break;
8489
8490
3.06k
  case 597:
8491
3.06k
#line 1625 "/src/php-src/Zend/zend_language_parser.y"
8492
3.06k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8493
3.06k
#line 8494 "/src/php-src/Zend/zend_language_parser.c"
8494
3.06k
    break;
8495
8496
123k
  case 598:
8497
123k
#line 1630 "/src/php-src/Zend/zend_language_parser.y"
8498
123k
                        { /* allow single trailing comma */ (yyval.ast) = zend_ast_list_rtrim((yyvsp[0].ast)); }
8499
123k
#line 8500 "/src/php-src/Zend/zend_language_parser.c"
8500
123k
    break;
8501
8502
53.5k
  case 599:
8503
53.5k
#line 1634 "/src/php-src/Zend/zend_language_parser.y"
8504
53.5k
                       { (yyval.ast) = NULL; }
8505
53.5k
#line 8506 "/src/php-src/Zend/zend_language_parser.c"
8506
53.5k
    break;
8507
8508
470k
  case 600:
8509
470k
#line 1635 "/src/php-src/Zend/zend_language_parser.y"
8510
470k
                            { (yyval.ast) = (yyvsp[0].ast); }
8511
470k
#line 8512 "/src/php-src/Zend/zend_language_parser.c"
8512
470k
    break;
8513
8514
400k
  case 601:
8515
400k
#line 1640 "/src/php-src/Zend/zend_language_parser.y"
8516
400k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
8517
400k
#line 8518 "/src/php-src/Zend/zend_language_parser.c"
8518
400k
    break;
8519
8520
124k
  case 602:
8521
124k
#line 1642 "/src/php-src/Zend/zend_language_parser.y"
8522
124k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARRAY, (yyvsp[0].ast)); }
8523
124k
#line 8524 "/src/php-src/Zend/zend_language_parser.c"
8524
124k
    break;
8525
8526
21.1k
  case 603:
8527
21.1k
#line 1647 "/src/php-src/Zend/zend_language_parser.y"
8528
21.1k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), (yyvsp[-2].ast)); }
8529
21.1k
#line 8530 "/src/php-src/Zend/zend_language_parser.c"
8530
21.1k
    break;
8531
8532
444k
  case 604:
8533
444k
#line 1649 "/src/php-src/Zend/zend_language_parser.y"
8534
444k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), NULL); }
8535
444k
#line 8536 "/src/php-src/Zend/zend_language_parser.c"
8536
444k
    break;
8537
8538
225
  case 605:
8539
225
#line 1651 "/src/php-src/Zend/zend_language_parser.y"
8540
225
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), (yyvsp[-3].ast)); }
8541
225
#line 8542 "/src/php-src/Zend/zend_language_parser.c"
8542
225
    break;
8543
8544
1.88k
  case 606:
8545
1.88k
#line 1653 "/src/php-src/Zend/zend_language_parser.y"
8546
1.88k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), NULL); }
8547
1.88k
#line 8548 "/src/php-src/Zend/zend_language_parser.c"
8548
1.88k
    break;
8549
8550
2.41k
  case 607:
8551
2.41k
#line 1655 "/src/php-src/Zend/zend_language_parser.y"
8552
2.41k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
8553
2.41k
#line 8554 "/src/php-src/Zend/zend_language_parser.c"
8554
2.41k
    break;
8555
8556
81
  case 608:
8557
81
#line 1657 "/src/php-src/Zend/zend_language_parser.y"
8558
81
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8559
81
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), (yyvsp[-5].ast)); }
8560
81
#line 8561 "/src/php-src/Zend/zend_language_parser.c"
8561
81
    break;
8562
8563
539
  case 609:
8564
539
#line 1660 "/src/php-src/Zend/zend_language_parser.y"
8565
539
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8566
539
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), NULL); }
8567
539
#line 8568 "/src/php-src/Zend/zend_language_parser.c"
8568
539
    break;
8569
8570
215k
  case 610:
8571
215k
#line 1666 "/src/php-src/Zend/zend_language_parser.y"
8572
215k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8573
215k
#line 8574 "/src/php-src/Zend/zend_language_parser.c"
8574
215k
    break;
8575
8576
252k
  case 611:
8577
252k
#line 1668 "/src/php-src/Zend/zend_language_parser.y"
8578
252k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8579
252k
#line 8580 "/src/php-src/Zend/zend_language_parser.c"
8580
252k
    break;
8581
8582
15.3k
  case 612:
8583
15.3k
#line 1670 "/src/php-src/Zend/zend_language_parser.y"
8584
15.3k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ENCAPS_LIST, (yyvsp[0].ast)); }
8585
15.3k
#line 8586 "/src/php-src/Zend/zend_language_parser.c"
8586
15.3k
    break;
8587
8588
37.3k
  case 613:
8589
37.3k
#line 1672 "/src/php-src/Zend/zend_language_parser.y"
8590
37.3k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_ENCAPS_LIST, (yyvsp[-1].ast), (yyvsp[0].ast)); }
8591
37.3k
#line 8592 "/src/php-src/Zend/zend_language_parser.c"
8592
37.3k
    break;
8593
8594
194k
  case 614:
8595
194k
#line 1677 "/src/php-src/Zend/zend_language_parser.y"
8596
194k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8597
194k
#line 8598 "/src/php-src/Zend/zend_language_parser.c"
8598
194k
    break;
8599
8600
4.66k
  case 615:
8601
4.66k
#line 1679 "/src/php-src/Zend/zend_language_parser.y"
8602
4.66k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM,
8603
4.66k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-3].ast)), (yyvsp[-1].ast)); }
8604
4.66k
#line 8605 "/src/php-src/Zend/zend_language_parser.c"
8605
4.66k
    break;
8606
8607
18.2k
  case 616:
8608
18.2k
#line 1682 "/src/php-src/Zend/zend_language_parser.y"
8609
18.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP,
8610
18.2k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8611
18.2k
#line 8612 "/src/php-src/Zend/zend_language_parser.c"
8612
18.2k
    break;
8613
8614
44.0k
  case 617:
8615
44.0k
#line 1685 "/src/php-src/Zend/zend_language_parser.y"
8616
44.0k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP,
8617
44.0k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8618
44.0k
#line 8619 "/src/php-src/Zend/zend_language_parser.c"
8619
44.0k
    break;
8620
8621
3.37k
  case 618:
8622
3.37k
#line 1688 "/src/php-src/Zend/zend_language_parser.y"
8623
3.37k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY_VAR_VAR, (yyvsp[-1].ast)); }
8624
3.37k
#line 8625 "/src/php-src/Zend/zend_language_parser.c"
8625
3.37k
    break;
8626
8627
541
  case 619:
8628
541
#line 1690 "/src/php-src/Zend/zend_language_parser.y"
8629
541
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY, (yyvsp[-1].ast)); }
8630
541
#line 8631 "/src/php-src/Zend/zend_language_parser.c"
8631
541
    break;
8632
8633
290
  case 620:
8634
290
#line 1692 "/src/php-src/Zend/zend_language_parser.y"
8635
290
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_DIM, ZEND_ENCAPS_VAR_DOLLAR_CURLY,
8636
290
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-4].ast)), (yyvsp[-2].ast)); }
8637
290
#line 8638 "/src/php-src/Zend/zend_language_parser.c"
8638
290
    break;
8639
8640
1.70k
  case 621:
8641
1.70k
#line 1694 "/src/php-src/Zend/zend_language_parser.y"
8642
1.70k
                                          { (yyval.ast) = (yyvsp[-1].ast); }
8643
1.70k
#line 8644 "/src/php-src/Zend/zend_language_parser.c"
8644
1.70k
    break;
8645
8646
646
  case 622:
8647
646
#line 1698 "/src/php-src/Zend/zend_language_parser.y"
8648
646
                                                { (yyval.ast) = (yyvsp[0].ast); }
8649
646
#line 8650 "/src/php-src/Zend/zend_language_parser.c"
8650
646
    break;
8651
8652
2.02k
  case 623:
8653
2.02k
#line 1699 "/src/php-src/Zend/zend_language_parser.y"
8654
2.02k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8655
2.02k
#line 8656 "/src/php-src/Zend/zend_language_parser.c"
8656
2.02k
    break;
8657
8658
1.76k
  case 624:
8659
1.76k
#line 1700 "/src/php-src/Zend/zend_language_parser.y"
8660
1.76k
                                        { (yyval.ast) = zend_negate_num_string((yyvsp[0].ast)); }
8661
1.76k
#line 8662 "/src/php-src/Zend/zend_language_parser.c"
8662
1.76k
    break;
8663
8664
929
  case 625:
8665
929
#line 1701 "/src/php-src/Zend/zend_language_parser.y"
8666
929
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8667
929
#line 8668 "/src/php-src/Zend/zend_language_parser.c"
8668
929
    break;
8669
8670
4.21k
  case 626:
8671
4.21k
#line 1706 "/src/php-src/Zend/zend_language_parser.y"
8672
4.21k
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
8673
4.21k
#line 8674 "/src/php-src/Zend/zend_language_parser.c"
8674
4.21k
    break;
8675
8676
1.69k
  case 627:
8677
1.69k
#line 1707 "/src/php-src/Zend/zend_language_parser.y"
8678
1.69k
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_EMPTY, (yyvsp[-1].ast)); }
8679
1.69k
#line 8680 "/src/php-src/Zend/zend_language_parser.c"
8680
1.69k
    break;
8681
8682
1.56k
  case 628:
8683
1.56k
#line 1709 "/src/php-src/Zend/zend_language_parser.y"
8684
1.56k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE, (yyvsp[0].ast)); }
8685
1.56k
#line 8686 "/src/php-src/Zend/zend_language_parser.c"
8686
1.56k
    break;
8687
8688
204
  case 629:
8689
204
#line 1711 "/src/php-src/Zend/zend_language_parser.y"
8690
204
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE_ONCE, (yyvsp[0].ast)); }
8691
204
#line 8692 "/src/php-src/Zend/zend_language_parser.c"
8692
204
    break;
8693
8694
2.36k
  case 630:
8695
2.36k
#line 1713 "/src/php-src/Zend/zend_language_parser.y"
8696
2.36k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_EVAL, (yyvsp[-1].ast)); }
8697
2.36k
#line 8698 "/src/php-src/Zend/zend_language_parser.c"
8698
2.36k
    break;
8699
8700
5.00k
  case 631:
8701
5.00k
#line 1715 "/src/php-src/Zend/zend_language_parser.y"
8702
5.00k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE, (yyvsp[0].ast)); }
8703
5.00k
#line 8704 "/src/php-src/Zend/zend_language_parser.c"
8704
5.00k
    break;
8705
8706
406
  case 632:
8707
406
#line 1717 "/src/php-src/Zend/zend_language_parser.y"
8708
406
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE_ONCE, (yyvsp[0].ast)); }
8709
406
#line 8710 "/src/php-src/Zend/zend_language_parser.c"
8710
406
    break;
8711
8712
4.30k
  case 633:
8713
4.30k
#line 1721 "/src/php-src/Zend/zend_language_parser.y"
8714
4.30k
                               { (yyval.ast) = (yyvsp[0].ast); }
8715
4.30k
#line 8716 "/src/php-src/Zend/zend_language_parser.c"
8716
4.30k
    break;
8717
8718
3.06k
  case 634:
8719
3.06k
#line 1723 "/src/php-src/Zend/zend_language_parser.y"
8720
3.06k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8721
3.06k
#line 8722 "/src/php-src/Zend/zend_language_parser.c"
8722
3.06k
    break;
8723
8724
7.36k
  case 635:
8725
7.36k
#line 1727 "/src/php-src/Zend/zend_language_parser.y"
8726
7.36k
                     { (yyval.ast) = zend_ast_create(ZEND_AST_ISSET, (yyvsp[0].ast)); }
8727
7.36k
#line 8728 "/src/php-src/Zend/zend_language_parser.c"
8728
7.36k
    break;
8729
8730
8731
0
#line 8732 "/src/php-src/Zend/zend_language_parser.c"
8732
8733
406k
      default: break;
8734
23.3M
    }
8735
  /* User semantic actions sometimes alter yychar, and that requires
8736
     that yytoken be updated with the new translation.  We take the
8737
     approach of translating immediately before every use of yytoken.
8738
     One alternative is translating here after every semantic action,
8739
     but that translation would be missed if the semantic action invokes
8740
     YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
8741
     if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
8742
     incorrect destructor might then be invoked immediately.  In the
8743
     case of YYERROR or YYBACKUP, subsequent parser actions might lead
8744
     to an incorrect destructor call or verbose syntax error message
8745
     before the lookahead is translated.  */
8746
23.3M
  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
8747
8748
23.3M
  YYPOPSTACK (yylen);
8749
23.3M
  yylen = 0;
8750
23.3M
  YY_STACK_PRINT (yyss, yyssp);
8751
8752
23.3M
  *++yyvsp = yyval;
8753
8754
  /* Now 'shift' the result of the reduction.  Determine what state
8755
     that goes to, based on the state we popped back to and the rule
8756
     number reduced by.  */
8757
23.3M
  {
8758
23.3M
    const int yylhs = yyr1[yyn] - YYNTOKENS;
8759
23.3M
    const int yyi = yypgoto[yylhs] + *yyssp;
8760
23.3M
    yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp
8761
23.3M
               ? yytable[yyi]
8762
23.3M
               : yydefgoto[yylhs]);
8763
23.3M
  }
8764
8765
23.3M
  goto yynewstate;
8766
8767
8768
/*--------------------------------------.
8769
| yyerrlab -- here on detecting error.  |
8770
`--------------------------------------*/
8771
44.9k
yyerrlab:
8772
  /* Make sure we have latest lookahead translation.  See comments at
8773
     user semantic actions for why this is necessary.  */
8774
44.9k
  yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
8775
8776
  /* If not already recovering from an error, report this error.  */
8777
44.9k
  if (!yyerrstatus)
8778
44.9k
    {
8779
44.9k
      ++yynerrs;
8780
#if ! YYERROR_VERBOSE
8781
      yyerror (YY_("syntax error"));
8782
#else
8783
44.9k
# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
8784
44.9k
                                        yyssp, yytoken)
8785
44.9k
      {
8786
44.9k
        char const *yymsgp = YY_("syntax error");
8787
44.9k
        int yysyntax_error_status;
8788
44.9k
        yysyntax_error_status = YYSYNTAX_ERROR;
8789
44.9k
        if (yysyntax_error_status == 0)
8790
44.9k
          yymsgp = yymsg;
8791
6
        else if (yysyntax_error_status == 1)
8792
6
          {
8793
6
            if (yymsg != yymsgbuf)
8794
0
              YYSTACK_FREE (yymsg);
8795
6
            yymsg = YY_CAST (char *, YYSTACK_ALLOC (YY_CAST (YYSIZE_T, yymsg_alloc)));
8796
6
            if (!yymsg)
8797
0
              {
8798
0
                yymsg = yymsgbuf;
8799
0
                yymsg_alloc = sizeof yymsgbuf;
8800
0
                yysyntax_error_status = 2;
8801
0
              }
8802
6
            else
8803
6
              {
8804
6
                yysyntax_error_status = YYSYNTAX_ERROR;
8805
6
                yymsgp = yymsg;
8806
6
              }
8807
6
          }
8808
44.9k
        yyerror (yymsgp);
8809
44.9k
        if (yysyntax_error_status == 2)
8810
0
          goto yyexhaustedlab;
8811
44.9k
      }
8812
44.9k
# undef YYSYNTAX_ERROR
8813
44.9k
#endif
8814
44.9k
    }
8815
8816
8817
8818
44.9k
  if (yyerrstatus == 3)
8819
0
    {
8820
      /* If just tried and failed to reuse lookahead token after an
8821
         error, discard it.  */
8822
8823
0
      if (yychar <= YYEOF)
8824
0
        {
8825
          /* Return failure if at end of input.  */
8826
0
          if (yychar == YYEOF)
8827
0
            YYABORT;
8828
0
        }
8829
0
      else
8830
0
        {
8831
0
          yydestruct ("Error: discarding",
8832
0
                      yytoken, &yylval);
8833
0
          yychar = YYEMPTY;
8834
0
        }
8835
0
    }
8836
8837
  /* Else will try to reuse lookahead token after shifting the error
8838
     token.  */
8839
44.9k
  goto yyerrlab1;
8840
8841
8842
/*---------------------------------------------------.
8843
| yyerrorlab -- error raised explicitly by YYERROR.  |
8844
`---------------------------------------------------*/
8845
44.9k
yyerrorlab:
8846
  /* Pacify compilers when the user code never invokes YYERROR and the
8847
     label yyerrorlab therefore never appears in user code.  */
8848
260
  if (0)
8849
0
    YYERROR;
8850
8851
  /* Do not reclaim the symbols of the rule whose action triggered
8852
     this YYERROR.  */
8853
260
  YYPOPSTACK (yylen);
8854
260
  yylen = 0;
8855
260
  YY_STACK_PRINT (yyss, yyssp);
8856
260
  yystate = *yyssp;
8857
260
  goto yyerrlab1;
8858
8859
8860
/*-------------------------------------------------------------.
8861
| yyerrlab1 -- common code for both syntax error and YYERROR.  |
8862
`-------------------------------------------------------------*/
8863
45.2k
yyerrlab1:
8864
45.2k
  yyerrstatus = 3;      /* Each real token shifted decrements this.  */
8865
8866
45.2k
  for (;;)
8867
750k
    {
8868
750k
      yyn = yypact[yystate];
8869
750k
      if (!yypact_value_is_default (yyn))
8870
659k
        {
8871
659k
          yyn += YYTERROR;
8872
659k
          if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
8873
0
            {
8874
0
              yyn = yytable[yyn];
8875
0
              if (0 < yyn)
8876
0
                break;
8877
0
            }
8878
659k
        }
8879
8880
      /* Pop the current state because it cannot handle the error token.  */
8881
750k
      if (yyssp == yyss)
8882
45.2k
        YYABORT;
8883
8884
8885
705k
      yydestruct ("Error: popping",
8886
705k
                  yystos[yystate], yyvsp);
8887
705k
      YYPOPSTACK (1);
8888
705k
      yystate = *yyssp;
8889
705k
      YY_STACK_PRINT (yyss, yyssp);
8890
705k
    }
8891
8892
0
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
8893
0
  *++yyvsp = yylval;
8894
0
  YY_IGNORE_MAYBE_UNINITIALIZED_END
8895
8896
8897
  /* Shift the error token.  */
8898
0
  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
8899
8900
0
  yystate = yyn;
8901
0
  goto yynewstate;
8902
8903
8904
/*-------------------------------------.
8905
| yyacceptlab -- YYACCEPT comes here.  |
8906
`-------------------------------------*/
8907
100k
yyacceptlab:
8908
100k
  yyresult = 0;
8909
100k
  goto yyreturn;
8910
8911
8912
/*-----------------------------------.
8913
| yyabortlab -- YYABORT comes here.  |
8914
`-----------------------------------*/
8915
45.2k
yyabortlab:
8916
45.2k
  yyresult = 1;
8917
45.2k
  goto yyreturn;
8918
8919
8920
0
#if !defined yyoverflow || YYERROR_VERBOSE
8921
/*-------------------------------------------------.
8922
| yyexhaustedlab -- memory exhaustion comes here.  |
8923
`-------------------------------------------------*/
8924
1
yyexhaustedlab:
8925
1
  yyerror (YY_("memory exhausted"));
8926
1
  yyresult = 2;
8927
  /* Fall through.  */
8928
1
#endif
8929
8930
8931
/*-----------------------------------------------------.
8932
| yyreturn -- parsing is finished, return the result.  |
8933
`-----------------------------------------------------*/
8934
145k
yyreturn:
8935
145k
  if (yychar != YYEMPTY)
8936
45.1k
    {
8937
      /* Make sure we have latest lookahead translation.  See comments at
8938
         user semantic actions for why this is necessary.  */
8939
45.1k
      yytoken = YYTRANSLATE (yychar);
8940
45.1k
      yydestruct ("Cleanup: discarding lookahead",
8941
45.1k
                  yytoken, &yylval);
8942
45.1k
    }
8943
  /* Do not reclaim the symbols of the rule whose action triggered
8944
     this YYABORT or YYACCEPT.  */
8945
145k
  YYPOPSTACK (yylen);
8946
145k
  YY_STACK_PRINT (yyss, yyssp);
8947
355k
  while (yyssp != yyss)
8948
210k
    {
8949
210k
      yydestruct ("Cleanup: popping",
8950
210k
                  yystos[+*yyssp], yyvsp);
8951
210k
      YYPOPSTACK (1);
8952
210k
    }
8953
145k
#ifndef yyoverflow
8954
145k
  if (yyss != yyssa)
8955
1.34k
    YYSTACK_FREE (yyss);
8956
145k
#endif
8957
145k
#if YYERROR_VERBOSE
8958
145k
  if (yymsg != yymsgbuf)
8959
6
    YYSTACK_FREE (yymsg);
8960
145k
#endif
8961
145k
  return yyresult;
8962
1
}
8963
#line 1730 "/src/php-src/Zend/zend_language_parser.y"
8964
8965
8966
/* Over-ride Bison formatting routine to give better token descriptions.
8967
   Copy to YYRES the contents of YYSTR for use in yyerror.
8968
   YYSTR is taken from yytname, from the %token declaration.
8969
   If YYRES is null, do not copy; instead, return the length of what
8970
   the result would have been.  */
8971
static YYSIZE_T zend_yytnamerr(char *yyres, const char *yystr)
8972
264k
{
8973
264k
  const char *toktype = yystr;
8974
264k
  size_t toktype_len = strlen(toktype);
8975
8976
  /* CG(parse_error) states:
8977
   * 0 => yyres = NULL, yystr is the unexpected token
8978
   * 1 => yyres = NULL, yystr is one of the expected tokens
8979
   * 2 => yyres != NULL, yystr is the unexpected token
8980
   * 3 => yyres != NULL, yystr is one of the expected tokens
8981
   */
8982
264k
  if (yyres && CG(parse_error) < 2) {
8983
44.9k
    CG(parse_error) = 2;
8984
44.9k
  }
8985
8986
264k
  if (CG(parse_error) % 2 == 0) {
8987
    /* The unexpected token */
8988
89.9k
    char buffer[120];
8989
89.9k
    const unsigned char *tokcontent, *tokcontent_end;
8990
89.9k
    size_t tokcontent_len;
8991
8992
89.9k
    CG(parse_error)++;
8993
8994
89.9k
    if (LANG_SCNG(yy_text)[0] == 0 &&
8995
27.5k
      LANG_SCNG(yy_leng) == 1 &&
8996
27.5k
      strcmp(toktype, "\"end of file\"") == 0) {
8997
12.6k
      if (yyres) {
8998
6.34k
        yystpcpy(yyres, "end of file");
8999
6.34k
      }
9000
12.6k
      return sizeof("end of file")-1;
9001
12.6k
    }
9002
9003
    /* Prevent the backslash getting doubled in the output (eugh) */
9004
77.2k
    if (strcmp(toktype, "\"'\\\\'\"") == 0) {
9005
848
      if (yyres) {
9006
424
        yystpcpy(yyres, "token \"\\\"");
9007
424
      }
9008
848
      return sizeof("token \"\\\"")-1;
9009
848
    }
9010
9011
    /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
9012
76.4k
    if (strcmp(toktype, "\"amp\"") == 0) {
9013
2.05k
      if (yyres) {
9014
1.02k
        yystpcpy(yyres, "token \"&\"");
9015
1.02k
      }
9016
2.05k
      return sizeof("token \"&\"")-1;
9017
2.05k
    }
9018
9019
    /* Avoid unreadable """ */
9020
    /* "'" would theoretically be just as bad, but is never currently parsed as a separate token */
9021
74.3k
    if (strcmp(toktype, "'\"'") == 0) {
9022
526
      if (yyres) {
9023
263
        yystpcpy(yyres, "double-quote mark");
9024
263
      }
9025
526
      return sizeof("double-quote mark")-1;
9026
526
    }
9027
9028
    /* Strip off the outer quote marks */
9029
73.8k
    if (toktype_len >= 2 && *toktype == '"') {
9030
38.3k
      toktype++;
9031
38.3k
      toktype_len -= 2;
9032
38.3k
    }
9033
9034
    /* If the token always has one form, the %token line should have a single-quoted name */
9035
    /* The parser rules also include single-character un-named tokens which will be single-quoted here */
9036
    /* We re-format this with double quotes here to ensure everything's consistent */
9037
73.8k
    if (toktype_len > 0 && *toktype == '\'') {
9038
39.5k
      if (yyres) {
9039
19.7k
        snprintf(buffer, sizeof(buffer), "token \"%.*s\"", (int)toktype_len-2, toktype+1);
9040
19.7k
        yystpcpy(yyres, buffer);
9041
19.7k
      }
9042
39.5k
      return toktype_len + sizeof("token ")-1;
9043
39.5k
    }
9044
9045
    /* Fetch the content of the last seen token from global lexer state */
9046
34.2k
    tokcontent = LANG_SCNG(yy_text);
9047
34.2k
    tokcontent_len = LANG_SCNG(yy_leng);
9048
9049
    /* For T_BAD_CHARACTER, the content probably won't be a printable char */
9050
    /* Also, "unexpected invalid character" sounds a bit redundant */
9051
34.2k
    if (tokcontent_len == 1 && strcmp(yystr, "\"invalid character\"") == 0) {
9052
6.90k
      if (yyres) {
9053
3.45k
        snprintf(buffer, sizeof(buffer), "character 0x%02hhX", *tokcontent);
9054
3.45k
        yystpcpy(yyres, buffer);
9055
3.45k
      }
9056
6.90k
      return sizeof("character 0x00")-1;
9057
6.90k
    }
9058
9059
    /* Truncate at line end to avoid messing up log formats */
9060
27.3k
    tokcontent_end = memchr(tokcontent, '\n', tokcontent_len);
9061
27.3k
    if (tokcontent_end != NULL) {
9062
2.04k
      tokcontent_len = (tokcontent_end - tokcontent);
9063
2.04k
    }
9064
9065
    /* Try to be helpful about what kind of string was found, before stripping the quotes */
9066
27.3k
    if (tokcontent_len > 0 && strcmp(yystr, "\"quoted string\"") == 0) {
9067
474
      if (*tokcontent == '"') {
9068
220
        toktype = "double-quoted string";
9069
220
        toktype_len = sizeof("double-quoted string")-1;
9070
220
      }
9071
254
      else if (*tokcontent == '\'') {
9072
228
        toktype = "single-quoted string";
9073
228
        toktype_len = sizeof("single-quoted string")-1;
9074
228
      }
9075
474
    }
9076
9077
    /* For quoted strings, strip off another layer of quotes to avoid putting quotes inside quotes */
9078
27.3k
    if (tokcontent_len > 0 && (*tokcontent == '\'' || *tokcontent=='"'))  {
9079
988
      tokcontent++;
9080
988
      tokcontent_len--;
9081
988
    }
9082
27.3k
    if (tokcontent_len > 0 && (tokcontent[tokcontent_len-1] == '\'' || tokcontent[tokcontent_len-1] == '"'))  {
9083
418
      tokcontent_len--;
9084
418
    }
9085
9086
    /* Truncate to 30 characters and add a ... */
9087
27.3k
    if (tokcontent_len > 30 + sizeof("...")-1) {
9088
866
      if (yyres) {
9089
433
        snprintf(buffer, sizeof(buffer), "%.*s \"%.*s...\"", (int)toktype_len, toktype, 30, tokcontent);
9090
433
        yystpcpy(yyres, buffer);
9091
433
      }
9092
866
      return toktype_len + 30 + sizeof(" \"...\"")-1;
9093
866
    }
9094
9095
26.5k
    if (yyres) {
9096
13.2k
      snprintf(buffer, sizeof(buffer), "%.*s \"%.*s\"", (int)toktype_len, toktype, (int)tokcontent_len, tokcontent);
9097
13.2k
      yystpcpy(yyres, buffer);
9098
13.2k
    }
9099
26.5k
    return toktype_len + tokcontent_len + sizeof(" \"\"")-1;
9100
27.3k
  }
9101
9102
  /* One of the expected tokens */
9103
9104
  /* Prevent the backslash getting doubled in the output (eugh) */
9105
174k
  if (strcmp(toktype, "\"'\\\\'\"") == 0) {
9106
0
    if (yyres) {
9107
0
      yystpcpy(yyres, "\"\\\"");
9108
0
    }
9109
0
    return sizeof("\"\\\"")-1;
9110
0
  }
9111
9112
  /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
9113
174k
  if (strcmp(toktype, "\"amp\"") == 0) {
9114
86
    if (yyres) {
9115
41
      yystpcpy(yyres, "token \"&\"");
9116
41
    }
9117
86
    return sizeof("token \"&\"")-1;
9118
86
  }
9119
9120
  /* Strip off the outer quote marks */
9121
174k
  if (toktype_len >= 2 && *toktype == '"') {
9122
143k
    toktype++;
9123
143k
    toktype_len -= 2;
9124
143k
  }
9125
9126
174k
  if (yyres) {
9127
18.9k
    YYSIZE_T yyn = 0;
9128
9129
122k
    for (; yyn < toktype_len; ++yyn) {
9130
      /* Replace single quotes with double for consistency */
9131
103k
      if (toktype[yyn] == '\'') {
9132
25.2k
        yyres[yyn] = '"';
9133
25.2k
      }
9134
78.7k
      else {
9135
78.7k
        yyres[yyn] = toktype[yyn];
9136
78.7k
      }
9137
103k
    }
9138
18.9k
    yyres[toktype_len] = '\0';
9139
18.9k
  }
9140
9141
174k
  return toktype_len;
9142
174k
}