Coverage Report

Created: 2025-07-23 06:33

/src/php-src/Zend/zend_language_parser.c
Line
Count
Source (jump to first uncovered line)
1
/* A Bison parser, made by GNU Bison 3.5.1.  */
2
3
/* Bison implementation for Yacc-like parsers in C
4
5
   Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2020 Free Software Foundation,
6
   Inc.
7
8
   This program is free software: you can redistribute it and/or modify
9
   it under the terms of the GNU General Public License as published by
10
   the Free Software Foundation, either version 3 of the License, or
11
   (at your option) any later version.
12
13
   This program is distributed in the hope that it will be useful,
14
   but WITHOUT ANY WARRANTY; without even the implied warranty of
15
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
   GNU General Public License for more details.
17
18
   You should have received a copy of the GNU General Public License
19
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
20
21
/* As a special exception, you may create a larger work that contains
22
   part or all of the Bison parser skeleton and distribute that work
23
   under terms of your choice, so long as that work isn't itself a
24
   parser generator using the skeleton or a modified version thereof
25
   as a parser skeleton.  Alternatively, if you modify or redistribute
26
   the parser skeleton itself, you may (at your option) remove this
27
   special exception, which will cause the skeleton and the resulting
28
   Bison output files to be licensed under the GNU General Public
29
   License without this special exception.
30
31
   This special exception was added by the Free Software Foundation in
32
   version 2.2 of Bison.  */
33
34
/* C LALR(1) parser skeleton written by Richard Stallman, by
35
   simplifying the original so-called "semantic" parser.  */
36
37
/* All symbols defined below should begin with yy or YY, to avoid
38
   infringing on user name space.  This should be done even for local
39
   variables, as they might otherwise be expanded by user macros.
40
   There are some unavoidable exceptions within include files to
41
   define necessary library symbols; they are noted "INFRINGES ON
42
   USER NAME SPACE" below.  */
43
44
/* Undocumented macros, especially those whose name start with YY_,
45
   are private implementation details.  Do not rely on them.  */
46
47
/* Identify Bison output.  */
48
#define YYBISON 1
49
50
/* Bison version.  */
51
#define YYBISON_VERSION "3.5.1"
52
53
/* Skeleton name.  */
54
#define YYSKELETON_NAME "yacc.c"
55
56
/* Pure parsers.  */
57
#define YYPURE 2
58
59
/* Push parsers.  */
60
#define YYPUSH 0
61
62
/* Pull parsers.  */
63
#define YYPULL 1
64
65
/* "%code top" blocks.  */
66
#line 22 "/src/php-src/Zend/zend_language_parser.y"
67
68
#include "zend.h"
69
#include "zend_list.h"
70
#include "zend_globals.h"
71
#include "zend_API.h"
72
#include "zend_constants.h"
73
#include "zend_language_scanner.h"
74
#include "zend_exceptions.h"
75
76
18.9k
#define YYSIZE_T size_t
77
266k
#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
737k
#define YYSTYPE         ZENDSTYPE
88
/* Substitute the variable and function names.  */
89
#define yyparse         zendparse
90
12.2M
#define yylex           zendlex
91
44.9k
#define yyerror         zenderror
92
#define yydebug         zenddebug
93
192k
#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
37.7M
#   define YY_CAST(Type, Val) ((Type) (Val))
102
#   define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val))
103
#  endif
104
# endif
105
# ifndef YY_NULLPTR
106
#  if defined __cplusplus
107
#   if 201103L <= __cplusplus
108
#    define YY_NULLPTR nullptr
109
#   else
110
#    define YY_NULLPTR 0
111
#   endif
112
#  else
113
247k
#   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
594k
#  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
202k
  YY_CAST (YYPTRDIFF_T,                                 \
420
           (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1)  \
421
            ? YYPTRDIFF_MAXIMUM                         \
422
            : YY_CAST (YYSIZE_T, -1)))
423
424
14.2k
#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
1.05M
# 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
294k
# 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
37.5M
#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.38k
#  define YYSTACK_FREE YYFREE
542
#  ifndef YYSTACK_ALLOC_MAXIMUM
543
202k
#   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.38k
#   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.75k
# 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.75k
    do                                                                  \
598
4.75k
      {                                                                 \
599
4.75k
        YYPTRDIFF_T yynewbytes;                                         \
600
4.75k
        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
601
4.75k
        Stack = &yyptr->Stack_alloc;                                    \
602
4.75k
        yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
603
4.75k
        yyptr += yynewbytes / YYSIZEOF (*yyptr);                        \
604
4.75k
      }                                                                 \
605
4.75k
    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.75k
      __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
37.5M
#define YYFINAL  3
631
/* YYLAST -- Last index in YYTABLE.  */
632
64.3M
#define YYLAST   10629
633
634
/* YYNTOKENS -- Number of terminals.  */
635
25.2M
#define YYNTOKENS  185
636
/* YYNNTS -- Number of nonterminals.  */
637
#define YYNNTS  190
638
/* YYNRULES -- Number of rules.  */
639
#define YYNRULES  635
640
/* YYNSTATES -- Number of states.  */
641
#define YYNSTATES  1202
642
643
0
#define YYUNDEFTOK  2
644
21.8M
#define YYMAXUTOK   412
645
646
647
/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
648
   as returned by yylex, with out-of-bounds checking.  */
649
#define YYTRANSLATE(YYX)                                                \
650
21.9M
  (0 <= (YYX) && (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
651
652
/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
653
   as returned by yylex.  */
654
static const yytype_uint8 yytranslate[] =
655
{
656
       0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
657
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
658
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
659
       2,     2,     2,    57,   183,     2,   184,    56,     2,     2,
660
     177,   178,    54,    52,   174,    53,    49,    55,     2,     2,
661
       2,     2,     2,     2,     2,     2,     2,     2,    31,   176,
662
      44,    16,    46,    30,    67,     2,     2,     2,     2,     2,
663
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
664
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
665
       2,   181,     2,   175,    36,     2,   182,     2,     2,     2,
666
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
667
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
668
       2,     2,     2,   179,    35,   180,    59,     2,     2,     2,
669
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
670
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
671
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
672
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
673
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
674
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
675
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
676
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
677
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
678
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
679
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
680
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
681
       2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
682
       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
683
      15,    17,    18,    19,    20,    21,    22,    23,    24,    25,
684
      26,    27,    28,    29,    32,    33,    34,    37,    38,    39,
685
      40,    41,    42,    43,    45,    47,    48,    50,    51,    58,
686
      60,    61,    62,    63,    64,    65,    66,    68,    69,    70,
687
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
688
      81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
689
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
690
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
691
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
692
     121,   122,   123,   124,   125,   126,   127,   128,   129,   130,
693
     131,   132,   133,   134,   135,   136,   137,   138,   139,   140,
694
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
695
     151,   152,   153,   154,   155,   156,   157,   158,   159,   160,
696
     161,   162,   163,   164,   165,   166,   167,   168,   169,   170,
697
     171,   172,   173
698
};
699
700
#if ZENDDEBUG
701
  /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
702
static const yytype_int16 yyrline[] =
703
{
704
       0,   304,   304,   308,   308,   308,   308,   308,   308,   308,
705
     308,   309,   309,   309,   309,   309,   309,   309,   309,   309,
706
     309,   309,   309,   310,   310,   310,   310,   310,   310,   310,
707
     310,   310,   310,   311,   311,   311,   311,   311,   311,   311,
708
     311,   311,   311,   312,   312,   312,   312,   312,   312,   312,
709
     312,   312,   312,   312,   313,   313,   313,   313,   313,   313,
710
     313,   313,   314,   314,   314,   314,   314,   314,   314,   314,
711
     314,   314,   314,   315,   319,   320,   320,   320,   320,   320,
712
     320,   320,   324,   325,   329,   330,   338,   339,   344,   345,
713
     350,   351,   356,   357,   361,   362,   363,   364,   368,   370,
714
     375,   377,   382,   386,   387,   391,   392,   393,   394,   395,
715
     399,   400,   404,   405,   406,   407,   411,   414,   414,   417,
716
     417,   420,   421,   422,   423,   427,   428,   432,   437,   442,
717
     443,   447,   449,   454,   456,   461,   463,   468,   469,   473,
718
     475,   480,   482,   487,   488,   492,   494,   500,   501,   502,
719
     503,   510,   511,   512,   513,   515,   517,   519,   521,   522,
720
     523,   524,   525,   526,   527,   528,   529,   530,   532,   536,
721
     535,   539,   540,   542,   543,   544,   548,   550,   555,   556,
722
     560,   561,   565,   566,   570,   571,   575,   579,   580,   588,
723
     595,   596,   600,   601,   605,   605,   608,   608,   614,   615,
724
     620,   622,   627,   628,   632,   633,   634,   638,   638,   644,
725
     644,   650,   650,   656,   657,   661,   666,   667,   671,   672,
726
     676,   677,   681,   682,   686,   687,   688,   689,   693,   694,
727
     698,   699,   703,   704,   708,   709,   710,   711,   715,   716,
728
     718,   723,   724,   729,   734,   735,   739,   740,   744,   746,
729
     751,   752,   757,   758,   763,   766,   772,   773,   778,   781,
730
     787,   788,   794,   795,   800,   802,   807,   808,   812,   814,
731
     820,   824,   831,   832,   836,   837,   838,   839,   843,   844,
732
     848,   849,   853,   855,   860,   861,   868,   869,   870,   871,
733
     875,   876,   877,   881,   882,   886,   888,   893,   895,   900,
734
     901,   905,   906,   907,   911,   913,   927,   928,   929,   930,
735
     934,   936,   938,   943,   945,   949,   950,   954,   955,   959,
736
     965,   966,   970,   971,   975,   977,   983,   986,   989,   992,
737
     995,   999,  1003,  1004,  1005,  1010,  1011,  1015,  1016,  1017,
738
    1021,  1023,  1028,  1029,  1033,  1038,  1040,  1044,  1049,  1057,
739
    1059,  1063,  1068,  1069,  1073,  1076,  1081,  1083,  1090,  1092,
740
    1099,  1101,  1106,  1107,  1108,  1109,  1110,  1111,  1112,  1113,
741
    1114,  1115,  1119,  1120,  1124,  1126,  1131,  1133,  1138,  1139,
742
    1140,  1146,  1147,  1151,  1152,  1160,  1159,  1170,  1171,  1172,
743
    1177,  1178,  1182,  1183,  1187,  1188,  1196,  1200,  1201,  1204,
744
    1208,  1209,  1210,  1214,  1215,  1219,  1220,  1221,  1222,  1226,
745
    1226,  1236,  1238,  1240,  1245,  1250,  1252,  1254,  1256,  1258,
746
    1260,  1265,  1270,  1272,  1274,  1276,  1278,  1280,  1282,  1284,
747
    1286,  1288,  1290,  1292,  1294,  1296,  1297,  1298,  1299,  1300,
748
    1302,  1304,  1306,  1308,  1310,  1311,  1312,  1313,  1314,  1315,
749
    1316,  1317,  1318,  1319,  1320,  1321,  1322,  1323,  1324,  1325,
750
    1326,  1327,  1329,  1331,  1333,  1335,  1337,  1339,  1341,  1343,
751
    1345,  1347,  1349,  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)'\"", "\"'(double)'\"", "\"'(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", "case_separator", "match", "match_arm_list",
840
  "non_empty_match_arm_list", "match_arm", "match_arm_cond_list",
841
  "while_statement", "if_stmt_without_else", "if_stmt",
842
  "alt_if_stmt_without_else", "alt_if_stmt", "parameter_list",
843
  "non_empty_parameter_list", "attributed_parameter",
844
  "optional_cpp_modifiers", "parameter", "optional_type_without_static",
845
  "type_expr", "type", "union_type_element", "union_type",
846
  "intersection_type", "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
38.2M
#define YYPACT_NINF (-1062)
907
908
#define yypact_value_is_default(Yyn) \
909
38.2M
  ((Yyn) == YYPACT_NINF)
910
911
685k
#define YYTABLE_NINF (-607)
912
913
#define yytable_value_is_error(Yyn) \
914
685k
  ((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
   -1062,    74,  2248, -1062,  7483,  7483,  7483,  7483,  7483,  7483,
921
    7483,  7483,  7483,  7483,  7483,  7483,  7483,  7483,  7483,  7483,
922
    7483,  7483,  7483,  7483,  7637, -1062, -1062,    55, -1062, -1062,
923
   -1062, -1062, -1062, -1062,   -85,  1035,    12,    19,  7483,  5635,
924
      33,    44,    69,   148,   153,   171,  7483,  7483,    86, -1062,
925
   -1062,   235,  7483,   154,   301,   -54,   -40, -1062, -1062,    12,
926
     181,   198,   203,   207, -1062, -1062, -1062, -1062,  9737,   245,
927
     259, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062,
928
     193, 10115, 10115,  7483,    52, -1062,  7483, -1062,  5789,    -3,
929
     155,   -47,  -113, -1062,  4480, -1062, -1062, -1062, -1062, -1062,
930
   -1062,   470, -1062, -1062, -1062, -1062, -1062,   232, -1062,   297,
931
   -1062,   436, -1062,  9247, -1062,   282,   282, -1062,   186,   449,
932
   -1062,   -91,   242,   275,   290,   192, -1062,   323,  1427, -1062,
933
   -1062, -1062, -1062,   443,    12,   244, 10439,   282, 10439, 10439,
934
   10439, 10439,  7792, 10531,  7792,   474,   474,   149,   474,   474,
935
     474,   474,   474,   474,   474,   474,   474,  1240, -1062, -1062,
936
   -1062,  7483, -1062, -1062,  7483, -1062,   458,   281,   441, -1062,
937
   -1062,   415,    12, -1062,   386,  1422, -1062, -1062,  7483,   266,
938
   -1062, 10439,   495,  7483,  6251,  7483,   235,  7483,  7483, 10439,
939
     440,   446,   457,   596,   357, -1062,   460, -1062, -1062, -1062,
940
   -1062, -1062, -1062, -1062,   -17,   454,   496,   364, -1062,   409,
941
   -1062, -1062,   641,   434, -1062, -1062, -1062, 10115,  7483,  7483,
942
     517,   605,   617,   622,   624, -1062, -1062, -1062, -1062, -1062,
943
   -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062,
944
   -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062,
945
   -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062,
946
   -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062,
947
   -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062,
948
   -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062,
949
   -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062,
950
   -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062,   526,   530,
951
    5789,  5789, -1062,   542,    12,  1035,  7483,  5789,   545,   549,
952
   -1062, -1062,   466,   466,  9297,   334,    60, -1062,  6405, 10115,
953
      81, -1062,  8597,  2402, -1062, -1062,   552,  7483, 10115, 10339,
954
     558, -1062,   562, -1062,    88,   557,   160,    88,    47,  7483,
955
   -1062, -1062,   443, -1062, -1062, -1062, -1062, -1062,   573,  5635,
956
     575,   722,   580,  7483,  7483,  7483,  6559,  7483,  7483,  7483,
957
    7483,  7483,  7483,  7483,  7483,  7483,  7483,  7483,  7483,  7483,
958
    7483,  7483,  7483,  7483,  7483,  7483,  7483,  7483,  7483,  7483,
959
    7483,  7483,   187,  7483, -1062, -1062, -1062,   -34,  4565,  4715,
960
     -16,   -16,  7483,    12,  5943,  7483,  7483,  7483,  7483,  7483,
961
    7483,  7483,  7483,  7483,  7483,  7483,  7483,  7483, -1062, -1062,
962
   -1062,  7483,  7483,  7483,  7483,  7483,  7483,  7483,  6713,  7637,
963
      34,   -85,   481,    27,   171,   726,   729,   123,    12,   198,
964
     203,   245,   259,   731,   732,   735,   736,   739,   740,   741,
965
     742,   743,  6867, -1062,   753,   584, -1062,  8547,  8647,  8697,
966
   -1062, -1062, -1062,   -54, -1062,   -16,   -16,   -54,  7483,  7021,
967
   -1062,   613, -1062, -1062, 10439,  8747,  7483, -1062,   611,  8797,
968
    7483,   615,   618, 10439, 10270,   112,  8847,  8897, -1062, -1062,
969
   -1062,  7483,   235, -1062, -1062,  2556,   714,   614,    38,   628,
970
     451, -1062,   454, -1062,   -54, -1062,  7483,   715, -1062,   626,
971
   -1062,   196, 10439,   631, -1062,  8947,   632,   660, -1062,   669,
972
     779, -1062,   634, -1062,   636,   638,   193,   647, -1062,    12,
973
    8997,   648, -1062,   750,   751,   345, -1062, -1062,   464,  8245,
974
     651, -1062, -1062, -1062,   462,   655, -1062,   970, -1062, -1062,
975
   -1062,  5789, 10439,   263,  6097,   812,  5789, -1062, -1062,  8295,
976
   -1062,   759,  7483, -1062,  7483, -1062, -1062, 10488,  9730,  7792,
977
    7483, 10389,  7947,  8096,  9866,  4714, 10014, 10163, 10163, 10561,
978
   10561, 10561, 10561, 10561,  1592,  1592,  1592,  1592,  1348,   727,
979
     659,   659,   514,   514,   149,   149,   149, -1062,   474,   663,
980
   -1062, -1062, -1062,   664,  7483,   665,   666,    12,  7483,   665,
981
     666,    12, -1062,  7483, -1062,    12,    12,   671, -1062, 10115,
982
    7792,  7792,  7792,  7792,  7792,  7792,  7792,  7792,  7792,  7792,
983
    7792,  7792,  7792,  7792,  7792, -1062, 10439,  7483,  1786,   670,
984
    1604, -1062, -1062,    12, -1062, -1062, -1062, -1062,   672, -1062,
985
    1786,   674,  4865, -1062,  7483,  5019, 10439,  6251,  7175,  9484,
986
   -1062,    -7,   676, 10439, -1062, -1062, -1062,   486,   679, -1062,
987
   -1062,   744, -1062, -1062, 10439, -1062, 10115,   675,  7483,   681,
988
   -1062, -1062,   193,   710,   682,   193, -1062,   175,   710, -1062,
989
    1940,   834, -1062, -1062, -1062,   683, -1062, -1062, -1062,   780,
990
   -1062, -1062, -1062,   688, -1062,  7483, -1062, -1062,   689, -1062,
991
     690,   692, 10115, 10439,  7483, -1062, -1062,   660,  9047,  9097,
992
    2710,  7947,  7483,  1506,   693,  1506,  8345, -1062,  8396, -1062,
993
    8446, -1062, -1062, -1062,   466, 10439,  7483, -1062, -1062, -1062,
994
   -1062,   660, -1062, -1062, -1062, -1062, -1062,  9147, -1062, -1062,
995
   -1062,   695,   699,  9447,  7483, 10439,   697,  5789, 10115,     3,
996
      13,  5173,   700,   701, -1062,  7329, -1062,   569,   778,    80,
997
     705, -1062, -1062,    80, -1062,   706, -1062, -1062, -1062,   193,
998
   -1062, -1062,   707, -1062,   687,   420, -1062, -1062, -1062,   420,
999
   -1062, -1062,   619,   848,   849,   851, -1062, -1062,  2094, -1062,
1000
    7483, -1062, -1062,  9397,   709,   834,  5789,   280,  7792,   710,
1001
    5635,   858,   717,  7947, -1062, -1062, -1062, -1062, -1062, -1062,
1002
   -1062, -1062, -1062, -1062,  1339,   712,   721, -1062,   201, -1062,
1003
    2006, -1062,  1506,   713,   723,   723, -1062,   710,  4404,   728,
1004
    2864,  6251,  7175, 10439,  5789,   724,    17,  9484,  5327, -1062,
1005
   -1062, -1062, -1062,   538, -1062,   134,   746,   718,   748, -1062,
1006
     749, 10439,   725,   737, -1062,   830, -1062,   486,   745,   752,
1007
   -1062, -1062,   707,   754,  1855,   193, -1062, -1062,   887,    16,
1008
     420,   262,   262,   420,   756, -1062,  7792,   757, -1062,   758,
1009
   -1062, -1062, -1062, -1062, -1062,   898,  1688, -1062,   284,   284,
1010
     892, -1062,   629,   897,   908,   907, -1062,   768,   831, -1062,
1011
   -1062,   772,   771,  9497,   773,    24,   774, -1062, -1062, -1062,
1012
    3018,   567,   781,  7483,     6,   156, -1062, -1062,   942, -1062,
1013
    7329, -1062,  7483,   944,   193, -1062, -1062, -1062, -1062,    80,
1014
     783, -1062, -1062,   193, -1062, -1062,  1155, -1062, -1062, -1062,
1015
     201,   852,   855,  1708, -1062,  2317, -1062, -1062, -1062, -1062,
1016
   -1062, -1062, -1062, -1062,   834,   789,  4404,   175,   946, -1062,
1017
   -1062,   932,    25, -1062,   800,   284,   374,   374,   284,   898,
1018
     795,   898,   794, -1062,  5481, -1062,  5327,  3172,   799,   801,
1019
   -1062,  9197, -1062, -1062, -1062, -1062,  7483, -1062, 10439,  7483,
1020
     178, -1062,  3326, -1062, -1062,  2779,  9887,   476, -1062,   899,
1021
     282,  8099, -1062,  2933, -1062, -1062, -1062, -1062, -1062,   900,
1022
   -1062, -1062, -1062, -1062, -1062, -1062,   304, -1062, -1062, -1062,
1023
   -1062, -1062, -1062,   804, -1062, -1062, -1062,  4404, 10439, 10439,
1024
     193, -1062,   798, -1062, -1062,   965, -1062,  7798, -1062,   966,
1025
     499, -1062, -1062,  9887,   968,   971,   972,   974,   975, 10037,
1026
     502, -1062, -1062,  3087, -1062, -1062,   814, -1062,   916,   822,
1027
   -1062,   819,  3241,  3480, -1062,  4404, -1062,   820,  7483,   826,
1028
     835, -1062, -1062,  7948, -1062,   829,   832,   906,   890,   840,
1029
    7483,   833,   931, -1062, -1062,  7483,  7483,   968,   505, 10037,
1030
   -1062, -1062,  7483,     5, -1062, -1062,   304,   836, -1062, -1062,
1031
     837, -1062, 10439, -1062, -1062, -1062, -1062, -1062,  9587,   193,
1032
    9887, 10439, -1062,   999, -1062,   839, 10439, 10439, -1062, -1062,
1033
   10439,  7483, -1062, -1062,  3634, -1062, -1062,  3788, -1062,  3942,
1034
   -1062, -1062,  9887,   707, -1062,   842,   268,  7483, -1062,  1506,
1035
   -1062, -1062, -1062,  8496,   787, -1062, -1062, -1062, -1062, -1062,
1036
   -1062,  1339,  2006,   282, -1062, 10439,   850, -1062, -1062, -1062,
1037
   -1062,  1082, -1062,   943, -1062,   898, -1062, -1062, -1062, -1062,
1038
     117,   853, -1062, -1062, -1062,  1506, -1062,  4096, -1062,   854,
1039
      21, -1062, -1062,  7483, -1062, -1062, -1062,  9347,  4250, -1062,
1040
   -1062, -1062
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,   241,   242,   146,   235,     0,   247,   251,     0,
1148
     180,   178,     0,   133,   127,   356,     0,     0,   333,     0,
1149
     508,     0,   210,   356,   325,   300,   506,   294,   193,     0,
1150
     297,   293,   295,   296,   298,   506,     0,   506,   325,   146,
1151
     228,   156,   168,     0,   233,   237,   146,   240,   249,   248,
1152
       0,   181,     0,   183,   197,   216,   337,     0,   334,   505,
1153
       0,   373,   327,     0,    94,   279,   290,   291,     0,     0,
1154
       0,   393,   212,   356,   507,   505,     0,   514,     0,   129,
1155
     513,     0,   356,     0,   231,   239,   179,     0,     0,     0,
1156
      75,   338,   349,     0,   340,     0,     0,     0,   350,     0,
1157
       0,   374,     0,   326,   505,     0,     0,     0,     0,     0,
1158
     328,   195,     0,   381,   146,   515,   130,     0,   146,   410,
1159
       0,   146,   217,   215,   339,   341,   342,   343,     0,     0,
1160
       0,   505,   378,   505,   372,     0,   505,   505,   329,   392,
1161
     506,     0,   378,   270,     0,   512,   511,     0,   229,     0,
1162
     345,   346,   348,   344,   351,   375,   383,     0,   374,   268,
1163
     394,   395,   502,   381,   383,   506,   506,   177,   347,   378,
1164
     376,   383,   384,   508,   379,   505,     0,   271,   382,   189,
1165
     501,   383,   380,     0,   375,   299,   377,   505,   506,   385,
1166
       0,   390,   352,   146,   506,   268,   506,     0,   330,     0,
1167
       0,   353,   391,     0,   387,   146,   506,     0,     0,   386,
1168
     389,   388
1169
};
1170
1171
  /* YYPGOTO[NTERM-NUM].  */
1172
static const yytype_int16 yypgoto[] =
1173
{
1174
   -1062, -1062,   -92,  -975,  -109,   -64,  -503, -1062,   -46,  -193,
1175
     142,   507, -1062,   -12,    -2,     1,   937, -1062, -1062, -1062,
1176
     983, -1062, -1062,  -441, -1062, -1062,   838,   172,  -751,   536,
1177
     856,  -149, -1062,     8, -1062, -1062, -1062, -1062, -1062, -1062,
1178
     368, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062,
1179
   -1062,   -26, -1062, -1062, -1062, -1062, -1062, -1062, -1062, -1062,
1180
   -1062,  -668, -1062,  -631,   200, -1062,    59, -1062, -1062,  -702,
1181
      57, -1062, -1062, -1062,   120, -1062, -1062, -1062, -1062, -1062,
1182
   -1062,  -696, -1062,   157, -1062,   228,   105,  -738,  -638,  -157,
1183
   -1062,   270, -1062,  -802,  -235, -1062,   158,  -966,   133, -1062,
1184
   -1062, -1062,   903,  -561, -1062,   560, -1062,   555,  -816,   119,
1185
   -1062,  -774, -1062, -1062,   -15, -1062, -1062, -1062, -1062, -1062,
1186
   -1062, -1062, -1062,  -789,  -811, -1062,   -25, -1062, -1061,   -87,
1187
   -1062,   -86, -1062, -1062, -1062,    10,   -22,   590, -1062,   607,
1188
   -1062,   243,   429,   921, -1062,   -38, -1062,    97,    -6, -1062,
1189
      -1,  -362,  -985, -1062,  -114, -1062, -1062,   -18, -1062, -1062,
1190
      11,  -270, -1062,   452,   -30, -1062,   -27,    18,   -36, -1062,
1191
   -1062, -1062, -1062, -1062,   216,   766, -1062, -1062,   698,  -178,
1192
    -230,   543, -1062, -1062,   656,   360, -1062, -1062, -1062,   422
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,  1000,  1042,   864,   509,
1202
     510,   602,    99,   974,  1019,   100,   561,   221,   101,   167,
1203
     168,   102,   103,   222,   104,   223,   105,   224,   688,   947,
1204
    1079,   683,   686,   780,   759,  1031,   919,   851,   764,   853,
1205
     994,   106,   857,   858,   859,   860,   750,   107,   108,   109,
1206
     110,   825,   826,   827,   828,   829,   900,   791,   792,   793,
1207
     794,   795,   901,   796,   903,   904,   905,   968,   176,   471,
1208
     158,   455,   472,   473,   209,   210,   213,   214,   874,   948,
1209
     949,   782,  1048,  1083,  1084,  1085,  1086,  1087,  1088,  1184,
1210
     950,   951,   952,   830,   831,  1050,  1051,  1052,  1146,  1133,
1211
    1163,  1164,  1181,  1196,  1186,  1060,  1061,   195,   179,   180,
1212
     751,   481,   482,   170,   643,   111,   112,   113,   114,   115,
1213
     137,   603,  1064,  1102,   396,   981,  1069,  1070,   117,   403,
1214
     118,   172,   345,   177,   119,   120,   121,   122,   190,   123,
1215
     124,   125,   126,   127,   128,   129,   130,   174,   607,   615,
1216
     340,   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,   116,   397,    95,   307,   872,   395,   395,   203,   169,
1225
      98,   191,   498,  1025,   639,  1027,   196,   847,   866,   906,
1226
     690,  1131,   870,   420,   762,    31,   902,  -224,   395,   833,
1227
     651,  -225,    31,   166,   599,  1193,  1058,   992,  -227,   212,
1228
    1066,   600,  1071,   318,   318,   529,   171,   182,   495,   809,
1229
     215,   319,   319,   883,   320,   320,  -523,   797,   -14,   612,
1230
     955,   855,   978,    31,   175,   -84,  -567,  -567,   677,    49,
1231
      50,  1154,   679,   837,     3,   357,   325,   737,   344,   740,
1232
     524,   525,   353,   496,  1058,   953,   160,   531,   355,   743,
1233
    -567,   314,   161,   116,   601,    95,   970,   971,  1171,   321,
1234
     321,   136,   138,   139,   140,   141,   142,   143,   144,   145,
1235
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
1236
     156,   159,   597,   353,  1058,  1005,   325,   215,   541,   355,
1237
      91,   325,   349,   326,   -84,   181,   907,    91,   496,   325,
1238
     169,   461,   906,   189,   189,  1152,  1013,   877,   902,   189,
1239
     921,   878,   925,   497,   353,   198,   684,   953,   200,   203,
1240
     325,   192,   541,   613,   328,   329,   953,   325,    91,  1007,
1241
    1169,  1170,   763,  1020,  1021,  1021,  1024,   165,   890,   318,
1242
     324,   848,   993,   332,  1132,   339,   798,   319,  1003,   175,
1243
     320,  -224,   216,  1180,   956,  -225,   178,  1194,  1063,  1188,
1244
    1195,  1190,  -227,  1017,   175,   785,   909,   392,   668,  1178,
1245
     183,  1199,  1072,  1040,   328,   329,   953,   393,   327,   328,
1246
     329,   184,   165,   616,   953,   351,   536,   328,   329,  1015,
1247
     558,   898,    49,    50,   325,   321,   347,   923,   924,   325,
1248
     724,   541,   957,   958,   958,   961,   185,   542,   328,   329,
1249
     132,    28,    29,    30,   457,   328,   329,  1041,   458,   923,
1250
     924,   459,   132,    28,    29,    30,    31,   216,   132,    28,
1251
      29,    30,   474,  1059,   953,   475,   132,    28,    29,    30,
1252
     479,   483,   484,   953,   486,   487,   492,   645,   646,   169,
1253
     660,   318,  -522,  1182,   786,   619,  1183,   322,   323,   319,
1254
     318,   766,   320,   358,   359,   464,   162,  1142,   319,   671,
1255
     193,   320,   162,   166,   926,   512,   515,   787,   788,   334,
1256
     335,   710,   328,   329,   784,   186,   171,   328,   329,   868,
1257
     187,   547,   116,   197,   605,   609,   995,   132,    28,    29,
1258
      30,   334,   335,   787,   788,  1143,   560,   321,   188,   400,
1259
     401,   906,   789,    49,    50,   398,   321,  1162,   217,   132,
1260
      28,    29,    30,   352,   164,  1162,   617,   563,   360,   361,
1261
    -186,    91,  1162,   402,  -186,   218,   198,   199,   899,   200,
1262
     219,   786,  1162,  1067,   220,   897,   362,   814,   815,   816,
1263
     817,   818,   819,   820,   821,   822,   823,    80,   699,  -564,
1264
    -564,    57,    58,   171,   787,   788,   169,   339,   339,   163,
1265
     201,  -564,   202,   530,   339,   928,   720,   931,   873,   933,
1266
     700,    80,   310,  -564,   701,   539,   787,   788,   940,   702,
1267
     166,   215,   648,   511,   552,   884,   311,  -606,  -606,   789,
1268
     476,  -606,   477,   171,   399,   712,   559,   528,  1160,   132,
1269
      28,    29,    30,  1166,  -605,  -605,   203,   165,  -605,  -560,
1270
     567,   568,   569,   571,   572,   573,   574,   575,   576,   577,
1271
     578,   579,   580,   581,   582,   583,   584,   585,   586,   587,
1272
     588,   589,   590,   591,   592,   593,   594,   595,   596,  1189,
1273
     598,   533,   534,   547,   116,   132,    28,    29,    30,   189,
1274
    -568,   620,   621,   622,   623,   624,   625,   626,   627,   628,
1275
     629,   630,   631,   632,   633,   535,   787,   788,   634,   136,
1276
     138,   139,   140,   141,   142,   143,   159,   845,   965,   198,
1277
     199,   492,   200,   493,   165,   353,   618,   314,   502,   786,
1278
     503,   355,   393,   465,   466,   540,   116,   982,   709,   636,
1279
     758,   899,    49,    50,   553,   467,   132,    28,    29,    30,
1280
      31,   198,   787,   788,   200,   189,   636,   468,   389,   390,
1281
     391,   216,   392,   181,   165,   462,   889,   656,    57,    58,
1282
    1006,   318,   393,   504,   463,   505,   163,   478,   663,   319,
1283
      57,    58,   320,  -565,  -565,   201,   838,   202,   163,   840,
1284
     162,    57,    58,   674,   356,  -565,  -563,  -563,   507,   163,
1285
     508,    80,   491,  -571,   914,  -202,   488,  -565,  -563,  -562,
1286
    -562,   318,   489,  -561,  -561,   502,  -570,   670,  1107,   319,
1287
    -563,  -562,   320,   490,    80,  -561,   494,   321,   318,  -569,
1288
     922,   923,   924,  -562,   704,   705,   319,  -561,   339,   320,
1289
     875,   713,  1046,   339,  -280,  1047,   880,   506,   164,   718,
1290
     746,   719,   464,   749,  -293,    91,   975,   721,   165,   989,
1291
     923,   924,   501,  1092,   318,  1093,  1099,   321,  1100,  1099,
1292
     517,  1128,   319,   862,   863,   320,   537,  1091,    94,   116,
1293
     543,    95,   518,   778,   321,   516,   783,   519,    98,   520,
1294
     920,   726,   521,  1103,   537,   728,   543,   537,   543,   523,
1295
     730,   387,   388,   389,   390,   391,   526,   392,   547,   116,
1296
     318,   824,  -571,   824,   959,   960,  -570,   393,   319,   551,
1297
     321,   320,  1125,   555,   735,   474,   556,   474,   758,   557,
1298
     727,  1022,  1023,   966,   729,   346,   348,   474,   731,   732,
1299
     562,   747,   564,   565,   753,   755,   566,   -43,   638,  1145,
1300
     -70,  1148,   -66,   -67,  1150,  1151,   -68,   -62,   987,   850,
1301
     -63,   -65,   -64,   -73,   -69,   512,   321,   385,   386,   387,
1302
     388,   389,   390,   391,   637,   392,  1002,   650,   654,   666,
1303
     783,   657,   658,   667,   212,   393,    94,   116,   682,    95,
1304
     676,   173,   803,  1174,   669,   678,    98,   685,   681,   318,
1305
     687,   808,   353,   689,   691,  1179,   692,   319,   891,   813,
1306
     320,   211,   694,   696,   165,   697,   698,   165,   714,   790,
1307
     824,   707,   708,   636,   717,   734,   547,   116,   547,   116,
1308
     723,   725,  -592,  -594,   496,  1037,   733,   742,   738,   779,
1309
     800,   843,   744,   775,   339,   765,   918,   350,   773,   777,
1310
    -569,   781,   861,   802,   801,   321,   876,   804,   805,   806,
1311
     832,   841,   946,   842,   844,   760,   852,   854,   865,   867,
1312
    1073,   875,   871,   881,   882,   888,   954,  1075,   883,   892,
1313
     895,   908,   511,   893,   824,   896,  1053,   886,   929,   915,
1314
    -593,   395,   934,   339,   910,   936,   814,   815,   816,   817,
1315
     818,   819,   820,   821,   822,   823,   935,  1068,   547,   116,
1316
     927,   165,   930,   932,   880,   938,   939,   790,   807,   967,
1317
     973,   790,   976,   941,   353,   962,   964,   963,   483,   913,
1318
      80,   339,  1045,   977,   978,  1001,   979,   980,   983,   984,
1319
    1010,   985,   986,   946,   783,  1134,   996,   990,   999,  1137,
1320
    1016,    49,  1139,  1004,   547,   116,  1011,  1168,  1014,   975,
1321
     790,  1018,  1026,  1028,   846,  1034,  1077,  1035,  1049,  1065,
1322
    1074,  1078,  1090,  1082,  1095,   547,   116,   -75,   -54,  1094,
1323
     -55,  1096,  1030,  1104,   918,  1105,  1106,  1068,  1108,  1111,
1324
     547,   116,  1113,   946,  -522,  1116,  1118,  1119,  1117,  1120,
1325
    1123,   946,  1122,  1138,  1136,  1147,  1149,   165,  1177,  1082,
1326
     991,  1159,   790,   790,   790,   790,  1141,   861,  1175,   998,
1327
    1185,   354,  1192,   693,  1187,   547,   116,   205,   672,   937,
1328
     790,   790,   485,   500,   774,  1032,  1198,   916,  1036,  1173,
1329
     997,  1076,   894,   969,   395,  1009,  1144,   972,  1089,   879,
1330
     456,   946,   675,   760,   673,  1008,  1167,  1124,  1115,  1098,
1331
     946,   547,   116,   547,   116,  1172,   165,  1129,  1158,    49,
1332
      50,   173,   664,   653,   912,   165,   752,   460,  1135,   352,
1333
      57,    58,   790,  1038,  1089,   741,  1039,   611,   163,   715,
1334
     776,     0,     0,     0,    64,    65,    66,    67,     0,   790,
1335
     132,    28,    29,    30,    31,     0,     0,   790,   790,   790,
1336
     790,     0,     0,    80,     0,     0,     0,     0,     0,     0,
1337
     783,     0,   547,   116,     0,   547,   116,   547,   116,     0,
1338
       0,     0,     0,     0,  1161,     0,     0,   824,     0,   353,
1339
       0,     0,  1161,   790,   162,    57,    58,     0,   173,     0,
1340
       0,     0,     0,   163,   606,   610,   614,   614,     0,  1161,
1341
       0,     0,     0,     0,     0,  1112,     0,     0,     0,     0,
1342
       0,     0,   165,   824,     0,   547,   116,  1121,    80,   165,
1343
       0,     0,  1126,  1127,     0,     0,   547,   116,   173,  1130,
1344
       0,   814,   815,   816,   817,   818,   819,   820,   821,   822,
1345
     823,     0,   164,     0,     0,     0,     0,     0,     0,    91,
1346
       0,     0,     0,     0,     0,   165,     0,     0,  1153,   644,
1347
       0,   614,   614,   647,     0,    80,     0,     0,     0,     0,
1348
       0,     0,     0,   422,  1165,   423,   424,   425,   426,   230,
1349
     231,   232,   427,   428,     0,    11,     0,     0,   942,     0,
1350
       0,   165,  1176,     0,     0,     0,  -358,     0,     0,     0,
1351
     211,     0,     0,     0,   814,   815,   816,   817,   818,   819,
1352
     820,   821,   822,   823,   944,     0,     0,     0,     0,     0,
1353
    1197,     0,    12,    13,     0,     0,     0,    14,   235,    15,
1354
      16,    17,    18,    19,    20,    21,    22,    23,    80,   429,
1355
       0,   237,   238,    25,    26,   430,    28,    29,    30,    31,
1356
       0,     0,    33,     0,     0,   431,   432,   433,   244,   245,
1357
     246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
1358
     256,   257,   258,   259,   260,   434,   262,   263,   264,   435,
1359
     436,   267,   268,   269,   270,   271,   272,   273,   274,   437,
1360
     276,   277,   278,   279,   280,     0,     0,     0,   438,   282,
1361
     283,   439,   440,     0,   286,   287,   288,   289,   290,   291,
1362
     292,   441,   442,   295,   443,   444,   445,   446,   447,   448,
1363
     449,   450,   451,    80,    81,    82,     0,   384,   385,   386,
1364
     387,   388,   389,   390,   391,    84,   392,     0,     0,     0,
1365
       0,   452,     0,     0,     0,     0,   393,    86,   453,     0,
1366
       0,    88,    89,    90,    91,   422,     0,   423,   424,   425,
1367
     426,   230,   231,   232,   427,   428,     0,    11,     0,     0,
1368
       0,     0,     0,   404,   405,   406,   407,   408,   409,   410,
1369
     411,   412,   413,   414,   415,   416,   417,     0,   814,   815,
1370
     816,   817,   818,   819,   820,   821,   822,   823,     0,     0,
1371
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1372
     235,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1373
       0,   429,    80,   237,   238,    25,    26,   430,    28,    29,
1374
      30,    31,     0,     0,    33,     0,     0,   431,   432,   433,
1375
     244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
1376
     254,   255,   256,   257,   258,   259,   260,   434,   262,   263,
1377
     264,   435,   436,   267,   268,   269,   270,   271,   272,   273,
1378
     274,   437,   276,   277,   278,   279,   280,     0,     0,     0,
1379
     438,   282,   283,   439,   440,     0,   286,   287,   288,   289,
1380
     290,   291,   292,   441,   442,   295,   443,   444,   445,   446,
1381
     447,   448,   449,   450,   451,    80,    81,    82,     0,     0,
1382
       0,   418,   419,     0,  -561,  -561,     0,    84,     0,     0,
1383
       0,     0,     0,   469,     0,     0,  -561,     0,     0,    86,
1384
     470,     0,     0,    88,    89,    90,    91,   422,  -561,   423,
1385
     424,   425,   426,   230,   231,   232,   427,   428,     0,    11,
1386
       0,     0,     0,     0,     0,   814,   815,   816,   817,   818,
1387
     819,   820,   821,   822,   823,     0,  -607,  -607,  -607,  -607,
1388
     383,   384,   385,   386,   387,   388,   389,   390,   391,     0,
1389
     392,     0,     0,     0,     0,     0,    12,    13,     0,    80,
1390
     393,    14,   235,    15,    16,    17,    18,    19,    20,    21,
1391
      22,    23,     0,   429,     0,   237,   238,    25,    26,   430,
1392
      28,    29,    30,    31,  -263,     0,    33,     0,     0,   431,
1393
     432,   433,   244,   245,   246,   247,   248,   249,   250,   251,
1394
     252,   253,   254,   255,   256,   257,   258,   259,   260,   434,
1395
     262,   263,   264,   435,   436,   267,   268,   269,   270,   271,
1396
     272,   273,   274,   437,   276,   277,   278,   279,   280,     0,
1397
       0,     0,   438,   282,   283,   439,   440,     0,   286,   287,
1398
     288,   289,   290,   291,   292,   441,   442,   295,   443,   444,
1399
     445,   446,   447,   448,   449,   450,   451,    80,    81,    82,
1400
       0,     0,     0,     0,     0,     0,     0,     0,     0,    84,
1401
       0,     0,     0,     0,     0,   736,     0,     0,     0,     0,
1402
       0,    86,   739,     0,     0,    88,    89,    90,    91,   422,
1403
       0,   423,   424,   425,   426,   230,   231,   232,   427,   428,
1404
       0,    11,     0,     0,     0,     0,     0,   814,   815,   816,
1405
     817,   818,   819,   820,   821,   822,   823,  -357,     0,  -359,
1406
       0,     0,     0,     0,     0,     0,     0,   814,   815,   816,
1407
     817,   818,   819,   820,   821,   822,   823,     0,    12,    13,
1408
       0,    80,     0,    14,   235,    15,    16,    17,    18,    19,
1409
      20,    21,    22,    23,     0,   429,     0,   237,   238,    25,
1410
      26,   430,    28,    29,    30,    31,  -130,     0,    33,     0,
1411
       0,   431,   432,   433,   244,   245,   246,   247,   248,   249,
1412
     250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
1413
     260,   434,   262,   263,   264,   435,   436,   267,   268,   269,
1414
     270,   271,   272,   273,   274,   437,   276,   277,   278,   279,
1415
     280,     0,     0,     0,   438,   282,   283,   439,   440,     0,
1416
     286,   287,   288,   289,   290,   291,   292,   441,   442,   295,
1417
     443,   444,   445,   446,   447,   448,   449,   450,   451,    80,
1418
      81,    82,     0,     4,     0,     5,     6,     7,     8,     0,
1419
       0,    84,     9,    10,     0,    11,     0,   736,   942,     0,
1420
       0,     0,     0,    86,     0,     0,  -358,    88,    89,    90,
1421
      91,   943,     0,     0,   814,   815,   816,   817,   818,   819,
1422
     820,   821,   822,   823,   944,     0,     0,     0,     0,     0,
1423
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1424
      16,    17,    18,    19,    20,    21,    22,    23,    80,    24,
1425
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1426
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1427
      38,    39,    40,     0,    41,   945,    42,     0,    43,     0,
1428
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1429
      50,    51,    52,    53,     0,     0,    54,     0,    55,    56,
1430
      57,    58,     0,     0,     0,     0,     0,     0,    59,     0,
1431
      60,    61,    62,    63,    64,    65,    66,    67,     0,     0,
1432
      68,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1433
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1434
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1435
       0,     0,     0,     0,     0,     0,    85,    86,     0,    87,
1436
     799,    88,    89,    90,    91,   814,   815,   816,   817,   818,
1437
     819,   820,   821,   822,   823,     0,     0,     0,     0,     0,
1438
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1439
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1440
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1441
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1442
      35,    36,    37,     0,    38,    39,    40,     0,    41,     0,
1443
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1444
      46,    47,    48,    49,    50,    51,    52,    53,     0,     0,
1445
      54,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1446
       0,     0,    59,     0,    60,    61,    62,    63,    64,    65,
1447
      66,    67,     0,     0,    68,    69,    70,     0,    71,    72,
1448
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1449
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1450
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1451
      85,    86,     0,    87,   885,    88,    89,    90,    91,     0,
1452
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1453
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1454
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1455
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1456
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1457
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1458
      40,     0,    41,     0,    42,     0,    43,     0,     0,    44,
1459
       0,     0,     0,    45,    46,    47,    48,    49,    50,    51,
1460
      52,    53,     0,     0,    54,     0,    55,    56,    57,    58,
1461
       0,     0,     0,     0,     0,     0,    59,     0,    60,    61,
1462
      62,    63,    64,    65,    66,    67,     0,     0,    68,    69,
1463
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1464
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1465
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1466
     942,     0,     0,     0,    85,    86,     0,    87,  -358,    88,
1467
      89,    90,    91,   943,     0,     0,   814,   815,   816,   817,
1468
     818,   819,   820,   821,   822,   823,   944,     0,     0,     0,
1469
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1470
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1471
      80,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1472
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1473
      37,     0,    38,    39,    40,     0,    41,  1012,    42,     0,
1474
      43,     0,     0,    44,     0,     0,     0,    45,    46,    47,
1475
      48,    49,    50,     0,    52,    53,     0,     0,     0,     0,
1476
      55,    56,    57,    58,     0,     0,     0,     0,     0,     0,
1477
      59,     0,    60,    61,    62,   545,    64,    65,    66,    67,
1478
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1479
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1480
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1481
       0,    11,     0,     0,     0,     0,     0,     0,    85,    86,
1482
       0,    87,   546,    88,    89,    90,    91,     0,     0,     0,
1483
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1484
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1485
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1486
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1487
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1488
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1489
      41,     0,    42,     0,    43,     0,     0,    44,     0,     0,
1490
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1491
       0,     0,     0,     0,    55,    56,    57,    58,     0,     0,
1492
       0,     0,     0,     0,    59,     0,    60,    61,    62,   545,
1493
      64,    65,    66,    67,     0,     0,     0,    69,    70,     0,
1494
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1495
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1496
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1497
       0,     0,    85,    86,     0,    87,   665,    88,    89,    90,
1498
      91,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1499
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1500
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1501
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1502
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1503
      32,     0,    33,     0,     0,    34,    35,    36,    37,   812,
1504
      38,    39,    40,     0,    41,     0,    42,     0,    43,     0,
1505
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1506
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1507
      57,    58,     0,     0,     0,     0,     0,     0,    59,     0,
1508
      60,    61,    62,   545,    64,    65,    66,    67,     0,     0,
1509
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1510
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1511
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1512
       0,     0,   942,     0,     0,     0,    85,    86,     0,    87,
1513
    -358,    88,    89,    90,    91,   943,     0,     0,   814,   815,
1514
     816,   817,   818,   819,   820,   821,   822,   823,   944,     0,
1515
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1516
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1517
      22,    23,    80,    24,     0,     0,     0,    25,    26,    27,
1518
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1519
      35,    36,    37,     0,    38,    39,    40,   911,    41,  1044,
1520
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1521
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1522
       0,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1523
       0,     0,    59,     0,    60,    61,    62,   545,    64,    65,
1524
      66,    67,     0,     0,     0,    69,    70,     0,    71,    72,
1525
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1526
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1527
       9,    10,     0,    11,     0,     0,   942,     0,     0,     0,
1528
      85,    86,     0,    87,  -358,    88,    89,    90,    91,   943,
1529
       0,     0,   814,   815,   816,   817,   818,   819,   820,   821,
1530
     822,   823,   944,     0,     0,     0,     0,     0,     0,     0,
1531
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1532
      18,    19,    20,    21,    22,    23,    80,    24,     0,     0,
1533
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1534
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1535
      40,     0,    41,  1062,    42,     0,    43,   988,     0,    44,
1536
       0,     0,     0,    45,    46,    47,    48,    49,    50,     0,
1537
      52,    53,     0,     0,     0,     0,    55,    56,    57,    58,
1538
       0,     0,     0,     0,     0,     0,    59,     0,    60,    61,
1539
      62,   545,    64,    65,    66,    67,     0,     0,     0,    69,
1540
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1541
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1542
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1543
     942,     0,     0,     0,    85,    86,     0,    87,  -358,    88,
1544
      89,    90,    91,   943,     0,     0,   814,   815,   816,   817,
1545
     818,   819,   820,   821,   822,   823,   944,     0,     0,     0,
1546
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1547
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1548
      80,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1549
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1550
      37,     0,    38,    39,    40,     0,    41,  1101,    42,  1033,
1551
      43,     0,     0,    44,     0,     0,     0,    45,    46,    47,
1552
      48,    49,    50,     0,    52,    53,     0,     0,     0,     0,
1553
      55,    56,    57,    58,     0,     0,     0,     0,     0,     0,
1554
      59,     0,    60,    61,    62,   545,    64,    65,    66,    67,
1555
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1556
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1557
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1558
       0,    11,     0,     0,   942,     0,     0,     0,    85,    86,
1559
       0,    87,  -358,    88,    89,    90,    91,   943,     0,     0,
1560
     814,   815,   816,   817,   818,   819,   820,   821,   822,   823,
1561
     944,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1562
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1563
      20,    21,    22,    23,    80,    24,     0,     0,     0,    25,
1564
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1565
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1566
      41,  1109,    42,     0,    43,     0,     0,    44,     0,     0,
1567
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1568
       0,     0,     0,     0,    55,    56,    57,    58,     0,     0,
1569
       0,     0,     0,     0,    59,     0,    60,    61,    62,   545,
1570
      64,    65,    66,    67,     0,     0,     0,    69,    70,     0,
1571
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1572
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1573
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1574
       0,     0,    85,    86,     0,    87,  1043,    88,    89,    90,
1575
      91,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1576
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1577
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1578
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1579
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1580
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1581
      38,    39,    40,     0,    41,  1110,    42,     0,    43,     0,
1582
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1583
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1584
      57,    58,     0,     0,     0,     0,     0,     0,    59,     0,
1585
      60,    61,    62,   545,    64,    65,    66,    67,     0,     0,
1586
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1587
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1588
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1589
       0,     0,     0,     0,     0,     0,    85,    86,     0,    87,
1590
       0,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1591
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1592
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1593
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1594
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1595
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1596
      35,    36,    37,     0,    38,    39,    40,     0,    41,     0,
1597
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1598
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1599
       0,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1600
       0,     0,    59,     0,    60,    61,    62,   545,    64,    65,
1601
      66,    67,     0,     0,     0,    69,    70,     0,    71,    72,
1602
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1603
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1604
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1605
      85,    86,     0,    87,  1155,    88,    89,    90,    91,     0,
1606
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1607
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1608
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1609
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1610
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1611
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1612
      40,     0,    41,     0,    42,     0,    43,     0,     0,    44,
1613
       0,     0,     0,    45,    46,    47,    48,    49,    50,     0,
1614
      52,    53,     0,     0,     0,     0,    55,    56,    57,    58,
1615
       0,     0,     0,     0,     0,     0,    59,     0,    60,    61,
1616
      62,   545,    64,    65,    66,    67,     0,     0,     0,    69,
1617
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1618
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1619
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1620
       0,     0,     0,     0,    85,    86,     0,    87,  1156,    88,
1621
      89,    90,    91,     0,     0,     0,     0,     0,     0,     0,
1622
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1623
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1624
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1625
       0,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1626
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1627
      37,     0,    38,    39,    40,     0,    41,     0,    42,     0,
1628
      43,     0,     0,    44,     0,     0,     0,    45,    46,    47,
1629
      48,    49,    50,     0,    52,    53,     0,     0,     0,     0,
1630
      55,    56,    57,    58,     0,     0,     0,     0,     0,     0,
1631
      59,     0,    60,    61,    62,   545,    64,    65,    66,    67,
1632
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1633
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1634
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1635
       0,    11,     0,     0,     0,     0,     0,     0,    85,    86,
1636
       0,    87,  1157,    88,    89,    90,    91,     0,     0,     0,
1637
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1638
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1639
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1640
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1641
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1642
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1643
      41,     0,    42,     0,    43,     0,     0,    44,     0,     0,
1644
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1645
       0,     0,     0,     0,    55,    56,    57,    58,     0,     0,
1646
       0,     0,     0,     0,    59,     0,    60,    61,    62,   545,
1647
      64,    65,    66,    67,     0,     0,     0,    69,    70,     0,
1648
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1649
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1650
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1651
       0,     0,    85,    86,     0,    87,  1191,    88,    89,    90,
1652
      91,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1653
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1654
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1655
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1656
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1657
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1658
      38,    39,    40,     0,    41,     0,    42,     0,    43,     0,
1659
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1660
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1661
      57,    58,     0,     0,     0,     0,     0,     0,    59,     0,
1662
      60,    61,    62,   545,    64,    65,    66,    67,     0,     0,
1663
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1664
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1665
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1666
       0,     0,     0,     0,     0,     0,    85,    86,     0,    87,
1667
    1201,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1668
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1669
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1670
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1671
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1672
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1673
      35,    36,    37,     0,    38,    39,    40,     0,    41,     0,
1674
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1675
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1676
       0,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1677
       0,     0,    59,     0,    60,    61,    62,   545,    64,    65,
1678
      66,    67,     0,     0,     0,    69,    70,     0,    71,    72,
1679
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1680
      83,     0,     0,     0,     0,     0,     0,     0,   225,    84,
1681
     226,   227,   228,   229,   230,   231,   232,   233,   234,     0,
1682
      85,    86,     0,    87,     0,    88,    89,    90,    91,    49,
1683
      50,    51,     0,     0,     0,     0,     0,     0,     0,   352,
1684
      57,    58,     0,     0,     0,     0,     0,     0,   163,     0,
1685
       0,     0,     0,     0,    64,    65,    66,    67,     0,     0,
1686
       0,     0,     0,   235,     0,     0,     0,     0,     0,     0,
1687
       0,     0,     0,    80,   236,     0,   237,   238,     0,     0,
1688
     239,     0,     0,     0,    31,     0,     0,     0,     0,     0,
1689
     241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1690
     251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1691
     261,   262,   263,   264,   265,   266,   267,   268,   269,   270,
1692
     271,   272,   273,   274,   275,   276,   277,   278,   279,   280,
1693
       0,     0,     0,   281,   282,   283,   284,   285,     0,   286,
1694
     287,   288,   289,   290,   291,   292,   293,   294,   295,   296,
1695
     297,   298,   299,   300,   301,   302,   303,   304,   225,     0,
1696
     226,   227,   228,   229,   230,   231,   232,   233,   234,     0,
1697
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1698
       0,     0,     0,     0,   604,     0,     0,     0,     0,    91,
1699
     371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
1700
     381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
1701
     391,     0,   392,   235,     0,     0,     0,     0,     0,     0,
1702
       0,     0,   393,     0,   236,     0,   237,   238,     0,     0,
1703
     239,     0,     0,     0,    31,     0,     0,     0,     0,     0,
1704
     241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1705
     251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1706
     261,   262,   263,   264,   265,   266,   267,   268,   269,   270,
1707
     271,   272,   273,   274,   275,   276,   277,   278,   279,   280,
1708
       0,     0,     0,   281,   282,   283,   284,   285,     0,   286,
1709
     287,   288,   289,   290,   291,   292,   293,   294,   295,   296,
1710
     297,   298,   299,   300,   301,   302,   303,   304,     4,     0,
1711
       5,     6,     7,     8,     0,     0,     0,     9,    10,     0,
1712
      11,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1713
       0,     0,     0,     0,   608,     0,   745,     0,     0,    91,
1714
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1715
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1716
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1717
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1718
      27,    28,    29,    30,    31,    32,     0,    33,     0,     0,
1719
      34,    35,    36,    37,     0,    38,    39,    40,     0,    41,
1720
       0,    42,     0,    43,     0,     0,    44,     0,     0,     0,
1721
      45,    46,    47,    48,    49,    50,     0,    52,    53,     0,
1722
       0,     0,     0,    55,    56,     0,     0,     0,     0,     0,
1723
       0,     0,     0,   134,     0,    60,    61,    62,     0,     0,
1724
       0,     0,     0,     0,     0,     0,    69,    70,     0,    71,
1725
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1726
      82,    83,     4,     0,     5,     6,     7,     8,     0,     0,
1727
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1728
       0,    85,    86,     0,    87,     0,    88,    89,    90,    91,
1729
     748,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1730
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1731
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1732
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1733
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1734
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1735
      39,    40,     0,    41,     0,    42,     0,    43,     0,     0,
1736
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1737
       0,    52,    53,     0,     0,     0,     0,    55,    56,     0,
1738
       0,     0,     0,     0,     0,     0,     0,   134,     0,    60,
1739
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1740
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1741
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1742
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1743
       0,     0,     0,     0,     0,    85,    86,     0,    87,     0,
1744
      88,    89,    90,    91,   849,     0,     0,     0,     0,     0,
1745
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1746
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1747
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1748
      23,     0,    24,     0,     0,     0,    25,    26,    27,    28,
1749
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1750
      36,    37,     0,    38,    39,    40,     0,    41,     0,    42,
1751
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1752
      47,    48,    49,    50,     0,    52,    53,     0,     0,     0,
1753
       0,    55,    56,     0,     0,     0,     0,     0,     0,     0,
1754
       0,   134,     0,    60,    61,    62,     0,     0,     0,     0,
1755
       0,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1756
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1757
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1758
      10,     0,    11,     0,     0,     0,     0,     0,     0,    85,
1759
      86,     0,    87,     0,    88,    89,    90,    91,   917,     0,
1760
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1761
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1762
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1763
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1764
      25,    26,    27,    28,    29,    30,    31,    32,     0,    33,
1765
       0,     0,    34,    35,    36,    37,     0,    38,    39,    40,
1766
       0,    41,     0,    42,     0,    43,     0,     0,    44,     0,
1767
       0,     0,    45,    46,    47,    48,    49,    50,     0,    52,
1768
      53,     0,     0,     0,     0,    55,    56,     0,     0,     0,
1769
       0,     0,     0,     0,     0,   134,     0,    60,    61,    62,
1770
       0,     0,     0,     0,     0,     0,     0,     0,    69,    70,
1771
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1772
      80,    81,    82,    83,     4,     0,     5,     6,     7,     8,
1773
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1774
       0,     0,     0,    85,    86,     0,    87,     0,    88,    89,
1775
      90,    91,  1029,     0,     0,     0,     0,     0,     0,     0,
1776
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1777
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1778
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1779
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1780
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1781
       0,    38,    39,    40,     0,    41,     0,    42,     0,    43,
1782
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1783
      49,    50,     0,    52,    53,     0,     0,     0,     0,    55,
1784
      56,     0,     0,     0,     0,     0,     0,     0,     0,   134,
1785
       0,    60,    61,    62,     0,     0,     0,     0,     0,     0,
1786
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1787
      76,    77,    78,    79,    80,    81,    82,    83,     4,     0,
1788
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1789
      11,     0,     0,     0,     0,     0,     0,    85,    86,     0,
1790
      87,     0,    88,    89,    90,    91,     0,     0,     0,     0,
1791
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1792
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1793
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1794
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1795
      27,    28,    29,    30,    31,    32,     0,    33,     0,     0,
1796
      34,    35,    36,    37,     0,    38,    39,    40,     0,    41,
1797
       0,    42,     0,    43,     0,     0,    44,     0,     0,     0,
1798
      45,    46,    47,    48,    49,    50,     0,    52,    53,     0,
1799
       0,     0,     0,    55,    56,     0,     0,     0,     0,     0,
1800
       0,     0,     0,   134,     0,    60,    61,    62,     0,     0,
1801
       0,     0,     0,     0,     0,     0,    69,    70,     0,    71,
1802
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1803
      82,    83,     4,     0,     5,     6,     7,     8,     0,     0,
1804
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1805
       0,    85,    86,     0,    87,     0,    88,    89,    90,    91,
1806
       0,     0,     0,     0,     0,     0,   334,   335,     0,     0,
1807
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1808
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1809
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1810
       0,     0,    25,    26,   132,    28,    29,    30,    31,     0,
1811
       0,    33,     0,     0,    34,    35,    36,     0,     0,     0,
1812
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1813
       0,     0,     0,     0,    45,     0,     0,     0,    49,    50,
1814
       0,     0,     0,     0,     0,     0,     0,     0,   133,     0,
1815
       0,     0,     0,     0,     0,     0,     0,   134,     0,     0,
1816
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1817
     336,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1818
      78,    79,    80,    81,    82,     0,     4,     0,     5,     6,
1819
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1820
     337,     0,     0,     0,     0,     0,    86,     0,     0,     0,
1821
      88,    89,    90,    91,     0,     0,     0,     0,     0,     0,
1822
     334,   335,     0,     0,     0,     0,     0,     0,     0,     0,
1823
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1824
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1825
      23,     0,    24,     0,     0,     0,    25,    26,   132,    28,
1826
      29,    30,    31,     0,     0,    33,     0,     0,    34,    35,
1827
      36,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1828
       0,     0,     0,     0,     0,     0,     0,     0,    45,     0,
1829
       0,     0,    49,    50,     0,     0,     0,     0,     0,     0,
1830
       0,     0,   133,     0,     0,     0,     0,     0,     0,     0,
1831
       0,   134,     0,     0,    61,    62,     0,     0,     0,     0,
1832
       0,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1833
      74,    75,    76,    77,    78,    79,    80,    81,    82,     0,
1834
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1835
      10,     0,    11,     0,     0,     0,     0,     0,     0,     0,
1836
      86,     0,     0,     0,    88,    89,    90,    91,     0,     0,
1837
       0,     0,     0,     0,   334,   335,     0,     0,     0,     0,
1838
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1839
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1840
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1841
      25,    26,   132,    28,    29,    30,    31,     0,     0,    33,
1842
       0,     0,    34,    35,    36,     0,     0,     0,     0,     0,
1843
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1844
       0,     0,    45,     0,     0,     0,    49,    50,     0,     0,
1845
       0,     0,     0,     0,     0,     0,   133,     0,     0,     0,
1846
       0,     0,     0,     0,     0,   134,     0,     0,    61,    62,
1847
       0,     0,     0,     0,     0,     0,     0,     0,   711,    70,
1848
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1849
      80,    81,    82,     0,     4,     0,     5,     6,     7,     8,
1850
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1851
       0,     0,     0,     0,    86,     0,     0,     0,    88,    89,
1852
      90,    91,     0,     0,     0,     0,     0,     0,     0,     0,
1853
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1854
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1855
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1856
      24,     0,     0,     0,    25,    26,   132,    28,    29,    30,
1857
      31,     0,     0,    33,     0,     0,    34,    35,    36,     0,
1858
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1859
       0,     0,     0,     0,     0,     0,    45,     0,     0,     0,
1860
      49,    50,     0,     0,     0,     0,     0,     0,     0,     0,
1861
     133,     0,     0,     0,     0,     0,     0,     0,     0,   134,
1862
       0,     0,    61,    62,     0,     0,     0,     0,     0,     0,
1863
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1864
      76,    77,    78,    79,    80,    81,    82,   480,     4,     0,
1865
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1866
      11,     0,     0,     0,     0,     0,     0,     0,    86,     0,
1867
       0,     0,    88,    89,    90,    91,     0,     0,     0,     0,
1868
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1869
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1870
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1871
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1872
     132,    28,    29,    30,    31,     0,     0,    33,   538,     0,
1873
      34,    35,    36,     0,     0,     0,     0,     0,     0,     0,
1874
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1875
      45,     0,     0,     0,    49,    50,     0,     0,     0,     0,
1876
       0,     0,     0,     0,   133,     0,     0,     0,     0,     0,
1877
       0,     0,     0,   134,     0,     0,    61,    62,     0,     0,
1878
       0,     0,     0,     0,     0,     0,    69,    70,     0,    71,
1879
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1880
      82,     0,     4,     0,     5,     6,     7,     8,     0,     0,
1881
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1882
       0,     0,    86,     0,     0,     0,    88,    89,    90,    91,
1883
     570,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1884
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1885
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1886
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1887
       0,     0,    25,    26,   132,    28,    29,    30,    31,     0,
1888
       0,    33,     0,     0,    34,    35,    36,     0,     0,     0,
1889
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1890
       0,     0,     0,     0,    45,     0,     0,     0,    49,    50,
1891
       0,     0,     0,     0,     0,     0,     0,     0,   133,     0,
1892
       0,     0,     0,     0,     0,     0,     0,   134,     0,     0,
1893
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1894
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1895
      78,    79,    80,    81,    82,     0,     4,     0,     5,     6,
1896
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1897
       0,     0,     0,     0,     0,     0,    86,     0,     0,     0,
1898
      88,    89,    90,    91,   -47,     0,     0,     0,     0,     0,
1899
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1900
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1901
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1902
      23,     0,    24,     0,     0,     0,    25,    26,   132,    28,
1903
      29,    30,    31,     0,     0,    33,     0,     0,    34,    35,
1904
      36,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1905
       0,     0,     0,     0,     0,     0,     0,     0,    45,     0,
1906
       0,     0,    49,    50,     0,     0,     0,     0,     0,     0,
1907
       0,     0,   133,     0,     0,     0,     0,     0,     0,     0,
1908
       0,   134,     0,     0,    61,    62,     0,     0,     0,     0,
1909
       0,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1910
      74,    75,    76,    77,    78,    79,    80,    81,    82,     0,
1911
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1912
      10,     0,    11,     0,     0,     0,     0,     0,     0,     0,
1913
      86,     0,     0,     0,    88,    89,    90,    91,     0,     0,
1914
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1915
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1916
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1917
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1918
      25,    26,   132,    28,    29,    30,    31,     0,     0,    33,
1919
       0,     0,    34,    35,    36,     0,     0,     0,     0,     0,
1920
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1921
       0,     0,    45,     0,     0,     0,    49,    50,     0,     0,
1922
       0,     0,     0,     0,     0,     0,   133,     0,     0,     0,
1923
       0,     0,     0,     0,     0,   134,     0,     0,    61,    62,
1924
       0,     0,     0,     0,     0,     0,     0,     0,    69,    70,
1925
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1926
      80,    81,    82,     0,     4,     0,     5,     6,     7,     8,
1927
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1928
       0,     0,     0,     0,    86,   635,     0,     0,    88,    89,
1929
      90,    91,     0,     0,     0,     0,     0,     0,     0,     0,
1930
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1931
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1932
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1933
      24,     0,     0,     0,    25,    26,   132,    28,    29,    30,
1934
      31,     0,     0,    33,     0,     0,    34,    35,    36,     0,
1935
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1936
       0,     0,     0,     0,     0,     0,    45,     0,     0,     0,
1937
      49,    50,     0,     0,     0,     0,     0,     0,     0,     0,
1938
     133,     0,     0,     0,     0,     0,     0,     0,     0,   134,
1939
       0,     0,    61,    62,     0,     0,     0,     0,     0,     0,
1940
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1941
      76,    77,    78,    79,    80,    81,    82,     0,     4,     0,
1942
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1943
      11,     0,     0,     0,     0,     0,     0,     0,    86,   649,
1944
       0,     0,    88,    89,    90,    91,     0,     0,     0,     0,
1945
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1946
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1947
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1948
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1949
     132,    28,    29,    30,    31,     0,     0,    33,     0,     0,
1950
      34,    35,    36,     0,     0,     0,     0,     0,     0,     0,
1951
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1952
      45,     0,     0,     0,    49,    50,     0,     0,     0,     0,
1953
       0,     0,     0,     0,   133,     0,     0,     0,     0,     0,
1954
       0,     0,     0,   134,     0,     0,    61,    62,     0,     0,
1955
       0,     0,     0,     0,     0,     0,    69,    70,     0,    71,
1956
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1957
      82,   754,     4,     0,     5,     6,     7,     8,     0,     0,
1958
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1959
       0,     0,    86,     0,     0,     0,    88,    89,    90,    91,
1960
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1961
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1962
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1963
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1964
       0,     0,    25,    26,   132,    28,    29,    30,    31,     0,
1965
       0,    33,     0,     0,    34,    35,    36,     0,     0,     0,
1966
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1967
       0,     0,     0,   856,    45,     0,     0,     0,    49,    50,
1968
       0,     0,     0,     0,     0,     0,     0,     0,   133,     0,
1969
       0,     0,     0,     0,     0,     0,     0,   134,     0,     0,
1970
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1971
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1972
      78,    79,    80,    81,    82,     0,     4,     0,     5,     6,
1973
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1974
       0,     0,     0,     0,     0,     0,    86,     0,     0,     0,
1975
      88,    89,    90,    91,     0,     0,     0,     0,     0,     0,
1976
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1977
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1978
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1979
      23,     0,    24,     0,     0,     0,    25,    26,   132,    28,
1980
      29,    30,    31,     0,     0,    33,     0,     0,    34,    35,
1981
      36,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1982
       0,     0,     0,     0,     0,     0,     0,     0,    45,     0,
1983
       0,     0,    49,    50,     0,     0,     0,     0,     0,     0,
1984
       0,     0,   133,     0,     0,     0,     0,     0,     0,     0,
1985
       0,   134,     0,     0,    61,    62,     0,     0,     0,     0,
1986
       0,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1987
      74,    75,    76,    77,    78,    79,    80,    81,    82,     0,
1988
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1989
      10,     0,    11,     0,     0,     0,     0,     0,     0,     0,
1990
      86,     0,     0,     0,    88,    89,    90,    91,     0,     0,
1991
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1992
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1993
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1994
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1995
      25,    26,   132,    28,    29,    30,    31,     0,     0,    33,
1996
       0,     0,    34,    35,    36,     0,     0,     0,     0,     0,
1997
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1998
       0,     0,    45,     0,     0,     0,    49,    50,     0,     0,
1999
       0,     0,     0,     0,     0,     0,   133,     0,     0,     0,
2000
       0,     0,     0,     0,     0,   134,     0,     0,    61,    62,
2001
       0,     0,     0,     0,     0,     0,     0,     0,    69,    70,
2002
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
2003
      80,    81,    82,     0,     0,     0,     0,     0,     0,     0,
2004
       0,   225,    84,   226,   227,   228,   229,   230,   231,   232,
2005
     233,   234,     0,     0,   157,     0,     0,     0,    88,    89,
2006
      90,    91,   366,     0,   367,   368,   369,   370,   371,   372,
2007
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2008
     383,   384,   385,   386,   387,   388,   389,   390,   391,     0,
2009
     392,     0,     0,     0,     0,     0,   235,     0,     0,     0,
2010
     393,     0,     0,     0,     0,     0,     0,   236,     0,   237,
2011
     238,     0,     0,   430,    28,    29,    30,     0,     0,     0,
2012
       0,     0,     0,   241,   242,   243,   244,   245,   246,   247,
2013
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
2014
     258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
2015
     268,   269,   270,   271,   272,   273,   274,  1080,   276,   277,
2016
     278,   279,   280,     0,     0,     0,   281,   282,   283,   284,
2017
     285,     0,   286,   287,   288,   289,   290,   291,   292,   293,
2018
     294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
2019
     304,   225,     0,   226,   227,   228,   229,   230,   231,   232,
2020
     233,   234,     0,     0,     0,     0,     0,     0,     0,     0,
2021
       0,     0,     0,     0,     0,     0,     0,     0,  1081,   367,
2022
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2023
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2024
     388,   389,   390,   391,     0,   392,   235,     0,     0,     0,
2025
       0,     0,     0,     0,     0,   393,     0,   236,     0,   237,
2026
     238,     0,     0,   430,    28,    29,    30,     0,     0,     0,
2027
       0,     0,     0,   241,   242,   243,   244,   245,   246,   247,
2028
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
2029
     258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
2030
     268,   269,   270,   271,   272,   273,   274,  1080,   276,   277,
2031
     278,   279,   280,     0,     0,     0,   281,   282,   283,   284,
2032
     285,     0,   286,   287,   288,   289,   290,   291,   292,   293,
2033
     294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
2034
     304,     0,   225,     0,   226,   227,   228,   229,   230,   231,
2035
     232,   233,   234,     0,     0,     0,     0,     0,     0,     0,
2036
       0,     0,     0,     0,     0,     0,     0,     0,  1114,   785,
2037
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
2038
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
2039
     389,   390,   391,     0,   392,     0,     0,   235,     0,     0,
2040
       0,     0,     0,     0,   393,     0,     0,     0,   236,     0,
2041
     237,   238,     0,     0,  1054,    28,    29,    30,     0,     0,
2042
       0,     0,     0,     0,   241,   242,   243,   244,   245,   246,
2043
     247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
2044
     257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
2045
     267,   268,   269,   270,   271,   272,   273,   274,  1055,   276,
2046
     277,   278,   279,   280,     0,     0,     0,   281,   282,   283,
2047
     284,   285,     0,   286,   287,   288,   289,   290,   291,   292,
2048
     293,  1056,  1057,   296,   297,   298,   299,   300,   301,   302,
2049
     303,   304,     0,     0,   363,   364,   365,     0,     0,     0,
2050
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2051
       0,     0,     0,     0,     0,   366,   789,   367,   368,   369,
2052
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2053
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2054
     390,   391,     0,   392,   363,   364,   365,     0,     0,     0,
2055
       0,     0,     0,   393,     0,     0,     0,     0,     0,     0,
2056
       0,     0,     0,     0,     0,   366,     0,   367,   368,   369,
2057
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2058
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2059
     390,   391,     0,   392,   363,   364,   365,     0,     0,     0,
2060
       0,     0,     0,   393,     0,     0,     0,     0,     0,     0,
2061
       0,     0,     0,     0,     0,   366,     0,   367,   368,   369,
2062
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2063
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2064
     390,   391,     0,   392,     0,   363,   364,   365,     0,     0,
2065
       0,     0,     0,   393,     0,     0,     0,     0,     0,     0,
2066
       0,     0,     0,     0,     0,   706,   366,     0,   367,   368,
2067
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
2068
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
2069
     389,   390,   391,     0,   392,   363,   364,   365,     0,     0,
2070
       0,     0,     0,     0,   393,     0,     0,     0,     0,     0,
2071
       0,     0,     0,     0,     0,   716,   366,     0,   367,   368,
2072
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
2073
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
2074
     389,   390,   391,     0,   392,   363,   364,   365,     0,     0,
2075
       0,     0,     0,     0,   393,     0,     0,     0,     0,     0,
2076
       0,     0,     0,     0,     0,   834,   366,     0,   367,   368,
2077
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
2078
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
2079
     389,   390,   391,     0,   392,     0,   363,   364,   365,     0,
2080
       0,     0,     0,     0,   393,     0,     0,     0,     0,     0,
2081
       0,     0,     0,     0,     0,     0,   835,   366,     0,   367,
2082
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2083
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2084
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2085
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2086
       0,     0,     0,     0,     0,     0,   836,   366,     0,   367,
2087
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2088
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2089
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2090
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2091
       0,     0,     0,     0,     0,  1132,     0,   366,     0,   367,
2092
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2093
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2094
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2095
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2096
       0,   640,     0,     0,     0,   544,     0,   366,     0,   367,
2097
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2098
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2099
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2100
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2101
       0,     0,     0,     0,     0,   544,     0,   366,     0,   367,
2102
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2103
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2104
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2105
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2106
       0,     0,     0,     0,     0,   641,     0,   366,     0,   367,
2107
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2108
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2109
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2110
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2111
       0,     0,     0,     0,     0,   642,     0,   366,     0,   367,
2112
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2113
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2114
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2115
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2116
       0,     0,     0,     0,     0,   652,     0,   366,     0,   367,
2117
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2118
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2119
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2120
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2121
       0,     0,     0,     0,     0,   655,     0,   366,     0,   367,
2122
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2123
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2124
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2125
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2126
       0,     0,     0,     0,     0,   661,     0,   366,     0,   367,
2127
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2128
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2129
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2130
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2131
       0,     0,     0,     0,     0,   662,     0,   366,     0,   367,
2132
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2133
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2134
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2135
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2136
       0,     0,     0,     0,     0,   680,     0,   366,     0,   367,
2137
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2138
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2139
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2140
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2141
       0,     0,     0,     0,     0,   695,     0,   366,     0,   367,
2142
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2143
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2144
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2145
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2146
       0,     0,     0,     0,     0,   810,     0,   366,   992,   367,
2147
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2148
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2149
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2150
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2151
       0,     0,     0,     0,     0,   811,     0,   366,     0,   367,
2152
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2153
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2154
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2155
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2156
       0,     0,     0,     0,     0,   839,     0,   366,     0,   367,
2157
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2158
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2159
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2160
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2161
       0,     0,     0,   993,     0,     0,     0,   366,     0,   367,
2162
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2163
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2164
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2165
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2166
       0,     0,     0,   394,     0,     0,     0,   366,     0,   367,
2167
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2168
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2169
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2170
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2171
       0,     0,     0,   532,     0,     0,     0,   366,     0,   367,
2172
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2173
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2174
     388,   389,   390,   391,     0,   392,   363,   364,   365,     0,
2175
       0,     0,     0,     0,     0,   393,     0,     0,     0,     0,
2176
       0,   334,   335,  1200,     0,     0,     0,   366,     0,   367,
2177
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2178
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2179
     388,   389,   390,   391,     0,   392,     0,     0,     0,   132,
2180
      28,    29,    30,    31,     0,   393,    33,     0,     0,     0,
2181
     315,     0,   887,     0,     0,     0,     0,     0,     0,     0,
2182
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2183
     225,     0,   226,   227,   228,   229,   230,   231,   232,   233,
2184
     234,     0,     0,   162,     0,     0,     0,     0,     0,     0,
2185
       0,     0,   134,     0,     0,     0,     0,     0,     0,     0,
2186
       0,  -408,     0,     0,     0,   756,    70,     0,    71,    72,
2187
      73,    74,    75,    76,    77,    78,    79,     0,     0,     0,
2188
       0,     0,     0,     0,     0,   235,     0,     0,     0,     0,
2189
       0,     0,     0,     0,     0,     0,   236,     0,   237,   238,
2190
       0,   316,  1140,     0,     0,   757,     0,    90,    91,     0,
2191
       0,  -405,   241,   242,   243,   244,   245,   246,   247,   248,
2192
     249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
2193
     259,   260,   261,   262,   263,   264,   265,   266,   267,   268,
2194
     269,   270,   271,   272,   273,   274,   814,   815,   816,   817,
2195
     818,   819,   820,   821,   822,   823,   282,   283,   284,   285,
2196
       0,   286,   287,   288,   289,   290,   291,   292,   293,   294,
2197
     295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
2198
     225,   365,   226,   227,   228,   229,   230,   231,   232,   233,
2199
     234,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2200
     366,     0,   367,   368,   369,   370,   371,   372,   373,   374,
2201
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2202
     385,   386,   387,   388,   389,   390,   391,     0,   392,     0,
2203
       0,     0,     0,     0,     0,   235,     0,     0,   393,     0,
2204
       0,     0,     0,     0,     0,     0,   236,     0,   237,   238,
2205
       0,     0,   239,     0,     0,   240,     0,     0,     0,     0,
2206
       0,     0,   241,   242,   243,   244,   245,   246,   247,   248,
2207
     249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
2208
     259,   260,   261,   262,   263,   264,   265,   266,   267,   268,
2209
     269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
2210
     279,   280,     0,     0,     0,   281,   282,   283,   284,   285,
2211
       0,   286,   287,   288,   289,   290,   291,   292,   293,   294,
2212
     295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
2213
     225,     0,   226,   227,   228,   229,   230,   231,   232,   233,
2214
     234,   370,   371,   372,   373,   374,   375,   376,   377,   378,
2215
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
2216
     389,   390,   391,     0,   392,     0,     0,     0,     0,     0,
2217
       0,     0,     0,     0,   393,     0,     0,     0,     0,     0,
2218
       0,     0,     0,     0,     0,   235,     0,     0,     0,     0,
2219
       0,     0,     0,     0,     0,     0,   236,     0,   237,   238,
2220
       0,     0,   239,     0,     0,     0,     0,     0,     0,     0,
2221
       0,     0,   241,   242,   243,   244,   245,   246,   247,   248,
2222
     249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
2223
     259,   260,   261,   262,   263,   264,   265,   266,   267,   268,
2224
     269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
2225
     279,   280,     0,     0,     0,   281,   282,   283,   284,   285,
2226
       0,   286,   287,   288,   289,   290,   291,   292,   293,   294,
2227
     295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
2228
     225,     0,   226,   227,   228,   229,   230,   231,   232,   233,
2229
     234,   372,   373,   374,   375,   376,   377,   378,   379,   380,
2230
     381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
2231
     391,     0,   392,     0,     0,     0,     0,     0,     0,     0,
2232
       0,     0,   393,     0,     0,     0,     0,     0,     0,     0,
2233
       0,     0,     0,     0,     0,   235,     0,     0,     0,     0,
2234
       0,     0,     0,     0,     0,     0,   236,     0,   237,   238,
2235
       0,     0,  1097,     0,     0,     0,     0,     0,     0,     0,
2236
       0,     0,   241,   242,   243,   244,   245,   246,   247,   248,
2237
     249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
2238
     259,   260,   261,   262,   263,   264,   265,   266,   267,   268,
2239
     269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
2240
     279,   280,     0,     0,     0,   281,   282,   283,   284,   285,
2241
       0,   286,   287,   288,   289,   290,   291,   292,   293,   294,
2242
     295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
2243
     132,    28,    29,    30,    31,     0,     0,    33,     0,     0,
2244
       0,   315,   374,   375,   376,   377,   378,   379,   380,   381,
2245
     382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
2246
       0,   392,     0,     0,     0,     0,     0,     0,     0,     0,
2247
       0,   393,     0,     0,   162,     0,     0,     0,     0,     0,
2248
       0,     0,     0,   134,     0,     0,     0,     0,     0,     0,
2249
       0,     0,     0,     0,     0,     0,     0,    70,     0,    71,
2250
      72,    73,    74,    75,    76,    77,    78,    79,     0,     0,
2251
       0,     0,     0,     0,     0,     0,     0,     0,     0,   363,
2252
     364,   365,     0,     0,     0,     0,     0,     0,     0,     0,
2253
       0,     0,   316,     0,     0,     0,   317,     0,    90,    91,
2254
     366,     0,   367,   368,   369,   370,   371,   372,   373,   374,
2255
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2256
     385,   386,   387,   388,   389,   390,   391,     0,   392,     0,
2257
       0,     0,     0,     0,     0,     0,     0,     0,   393,     0,
2258
       0,     0,     0,     0,     0,     0,     0,     0,   363,   364,
2259
     365,     0,     0,   554,     0,     0,     0,     0,     0,     0,
2260
       0,     0,     0,     0,     0,     0,     0,     0,     0,   366,
2261
     659,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2262
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2263
     386,   387,   388,   389,   390,   391,     0,   392,   363,   364,
2264
     365,     0,     0,     0,     0,     0,     0,   393,     0,     0,
2265
       0,     0,     0,     0,     0,     0,     0,     0,     0,   366,
2266
     722,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2267
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2268
     386,   387,   388,   389,   390,   391,     0,   392,   363,   364,
2269
     365,     0,     0,     0,     0,     0,     0,   393,     0,     0,
2270
       0,     0,     0,     0,     0,     0,     0,     0,     0,   366,
2271
       0,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2272
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2273
     386,   387,   388,   389,   390,   391,     0,   392,   364,   365,
2274
       0,     0,     0,     0,     0,     0,     0,   393,     0,     0,
2275
       0,     0,     0,     0,     0,     0,     0,     0,   366,     0,
2276
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2277
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2278
     387,   388,   389,   390,   391,   421,   392,     0,     0,     0,
2279
       0,     0,     0,     0,     0,     0,   393,     0,     0,     0,
2280
       0,   366,     0,   367,   368,   369,   370,   371,   372,   373,
2281
     374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
2282
     384,   385,   386,   387,   388,   389,   390,   391,     0,   392,
2283
       0,     0,     0,     0,     0,     0,     0,     0,     0,   393,
2284
    -607,  -607,  -607,  -607,  -607,   379,   380,   381,   382,   383,
2285
     384,   385,   386,   387,   388,   389,   390,   391,     0,   392,
2286
       0,     0,     0,     0,     0,     0,     0,     0,     0,   393
2287
};
2288
2289
static const yytype_int16 yycheck[] =
2290
{
2291
       2,     2,   116,     2,    68,   779,   115,   116,    54,    35,
2292
       2,    47,   205,   979,   455,   981,    52,    14,   769,   830,
2293
     523,    16,   773,   137,    31,    79,   828,    14,   137,   725,
2294
     471,    14,    79,    35,   396,    14,  1011,    31,    14,    79,
2295
    1025,    75,  1027,    81,    82,   315,    35,    39,   197,   717,
2296
      56,    81,    82,    37,    81,    82,   169,   688,    31,    75,
2297
     876,   763,    37,    79,   177,    31,   157,   158,   509,   109,
2298
     110,  1132,   513,   741,     0,   101,    79,   638,    81,   640,
2299
     310,   311,    94,   100,  1059,   874,    31,   317,    94,   650,
2300
     181,    80,   177,    94,   128,    94,   898,   899,  1159,    81,
2301
      82,     4,     5,     6,     7,     8,     9,    10,    11,    12,
2302
      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
2303
      23,    24,   392,   135,  1099,   941,    79,   133,    81,   135,
2304
     184,    79,   179,    81,   100,    38,   832,   184,   100,    79,
2305
     166,   167,   953,    46,    47,  1130,   962,   785,   950,    52,
2306
     852,   789,   854,   170,   166,    75,   518,   946,    78,   205,
2307
      79,    75,    81,   179,   167,   168,   955,    79,   184,   943,
2308
    1155,  1156,   179,   975,   976,   977,   978,    35,   809,   217,
2309
      83,   178,   176,    86,   179,    88,   689,   217,   939,   177,
2310
     217,   178,    59,  1178,   178,   178,   177,   176,  1014,  1184,
2311
     179,  1186,   178,   178,   177,    30,   837,    58,   170,  1175,
2312
     177,  1196,  1028,    35,   167,   168,  1005,    68,   166,   167,
2313
     168,   177,    80,   401,  1013,    92,   166,   167,   168,   967,
2314
     183,    30,   109,   110,    79,   217,    81,   103,   104,    79,
2315
     602,    81,   880,   881,   882,   883,   177,   166,   167,   168,
2316
      75,    76,    77,    78,   157,   167,   168,    79,   161,   103,
2317
     104,   164,    75,    76,    77,    78,    79,   134,    75,    76,
2318
      77,    78,   175,  1011,  1063,   178,    75,    76,    77,    78,
2319
     183,   184,   185,  1072,   187,   188,   174,   465,   466,   315,
2320
     178,   329,   169,   176,   119,   404,   179,    81,    82,   329,
2321
     338,   663,   329,    71,    72,   172,   119,  1118,   338,   502,
2322
      75,   338,   119,   315,   180,   218,   219,   142,   143,    37,
2323
      38,   551,   167,   168,   686,   177,   315,   167,   168,   770,
2324
     177,   333,   333,   179,   398,   399,   180,    75,    76,    77,
2325
      78,    37,    38,   142,   143,  1119,   352,   329,   177,   157,
2326
     158,  1162,   177,   109,   110,   169,   338,  1146,   177,    75,
2327
      76,    77,    78,   119,   177,  1154,   402,   359,    71,    72,
2328
     174,   184,  1161,   181,   178,   177,    75,    76,   177,    78,
2329
     177,   119,  1171,    79,   177,   826,    89,   119,   120,   121,
2330
     122,   123,   124,   125,   126,   127,   128,   153,    53,   157,
2331
     158,   120,   121,   392,   142,   143,   432,   310,   311,   128,
2332
     109,   169,   111,   316,   317,   856,   565,   858,   780,   860,
2333
      75,   153,   177,   181,    79,   328,   142,   143,   869,    84,
2334
     432,   437,   468,   217,   337,   797,   177,   174,   175,   177,
2335
     174,   178,   176,   432,   169,   554,   349,   314,   180,    75,
2336
      76,    77,    78,  1149,   174,   175,   502,   315,   178,   169,
2337
     363,   364,   365,   366,   367,   368,   369,   370,   371,   372,
2338
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2339
     383,   384,   385,   386,   387,   388,   389,   390,   391,  1185,
2340
     393,   157,   158,   495,   495,    75,    76,    77,    78,   402,
2341
     177,   404,   405,   406,   407,   408,   409,   410,   411,   412,
2342
     413,   414,   415,   416,   417,   181,   142,   143,   421,   422,
2343
     423,   424,   425,   426,   427,   428,   429,   757,   890,    75,
2344
      76,   174,    78,   176,   392,   547,   403,   526,   174,   119,
2345
     176,   547,    68,   157,   158,   329,   547,   909,   547,   452,
2346
     659,   177,   109,   110,   338,   169,    75,    76,    77,    78,
2347
      79,    75,   142,   143,    78,   468,   469,   181,    54,    55,
2348
      56,   438,    58,   476,   432,   134,   806,   480,   120,   121,
2349
     942,   619,    68,   174,   169,   176,   128,    92,   491,   619,
2350
     120,   121,   619,   157,   158,   109,   745,   111,   128,   748,
2351
     119,   120,   121,   506,   134,   169,   157,   158,   174,   128,
2352
     176,   153,    16,   177,   844,   134,   176,   181,   169,   157,
2353
     158,   659,   176,   157,   158,   174,   177,   176,  1069,   659,
2354
     181,   169,   659,   176,   153,   169,   176,   619,   676,   177,
2355
     102,   103,   104,   181,   180,   181,   676,   181,   551,   676,
2356
     174,   554,   176,   556,    35,   179,    37,    16,   177,   562,
2357
     652,   564,   529,   655,    35,   184,    37,   570,   526,   102,
2358
     103,   104,   176,   174,   712,   176,   174,   659,   176,   174,
2359
      75,   176,   712,   114,   115,   712,   326,  1049,   690,   690,
2360
     330,   690,    75,   682,   676,   178,   685,    75,   690,    75,
2361
     849,   604,   176,  1065,   344,   608,   346,   347,   348,   179,
2362
     613,    52,    53,    54,    55,    56,   174,    58,   720,   720,
2363
     758,   723,   177,   725,   881,   882,   177,    68,   758,   177,
2364
     712,   758,  1094,   175,   637,   638,   174,   640,   847,   182,
2365
     607,   976,   977,   892,   611,    89,    90,   650,   615,   616,
2366
     177,   654,   177,    31,   657,   658,   176,    31,   174,  1121,
2367
      31,  1123,    31,    31,  1126,  1127,    31,    31,   917,   761,
2368
      31,    31,    31,    31,    31,   678,   758,    50,    51,    52,
2369
      53,    54,    55,    56,    31,    58,   935,   174,   177,    75,
2370
     779,   176,   174,   179,    79,    68,   798,   798,   138,   798,
2371
     174,    35,   705,  1165,   176,   174,   798,   138,   176,   847,
2372
      31,   714,   824,   179,   178,  1177,   178,   847,   810,   722,
2373
     847,    55,   175,   175,   682,    75,    75,   685,    16,   687,
2374
     832,   180,   177,   736,    75,   619,   838,   838,   840,   840,
2375
     177,   177,   177,   177,   100,   994,   175,   175,   178,   139,
2376
      16,   754,   178,   178,   757,   179,   848,    91,   179,   178,
2377
     177,   179,   765,   175,    84,   847,   179,   178,   178,   177,
2378
     177,   176,   874,   174,   177,   659,   176,   176,   100,   174,
2379
    1029,   174,   176,    35,    35,   176,   875,  1036,    37,    31,
2380
     178,   178,   676,   176,   896,   174,  1010,   800,   180,   175,
2381
     177,  1010,   177,   806,   176,    75,   119,   120,   121,   122,
2382
     123,   124,   125,   126,   127,   128,   179,  1026,   920,   920,
2383
     174,   779,   174,   174,    37,   180,   174,   785,   712,    31,
2384
      38,   789,    35,   179,   946,   179,   178,   180,   841,   842,
2385
     153,   844,  1006,    35,    37,   934,   178,   116,   176,   178,
2386
     951,   178,   178,   955,   943,  1104,    14,   176,    14,  1108,
2387
      14,   109,  1111,   180,   966,   966,   111,   180,   179,    37,
2388
     828,   171,   177,   179,   758,   176,   178,   176,    79,    79,
2389
     176,    16,    16,  1047,    16,   987,   987,    16,    16,  1053,
2390
      16,    16,   984,   179,   986,    79,   174,  1106,   179,   179,
2391
    1002,  1002,   176,  1005,   169,   176,   100,   117,   176,   169,
2392
      79,  1013,   179,   176,   178,    16,   177,   875,    75,  1083,
2393
     923,   179,   880,   881,   882,   883,  1118,   930,   178,   932,
2394
     177,    94,   178,   526,  1183,  1037,  1037,    54,   502,   867,
2395
     898,   899,   186,   205,   676,   986,  1195,   847,   991,  1163,
2396
     930,  1040,   824,   896,  1163,   950,  1120,   899,  1047,   789,
2397
     157,  1063,   507,   847,   504,   946,  1153,  1092,  1083,  1059,
2398
    1072,  1073,  1073,  1075,  1075,  1161,   934,  1099,  1142,   109,
2399
     110,   315,   492,   476,   841,   943,   657,   166,  1106,   119,
2400
     120,   121,   950,   996,  1083,   643,   999,   399,   128,   556,
2401
     678,    -1,    -1,    -1,   134,   135,   136,   137,    -1,   967,
2402
      75,    76,    77,    78,    79,    -1,    -1,   975,   976,   977,
2403
     978,    -1,    -1,   153,    -1,    -1,    -1,    -1,    -1,    -1,
2404
    1119,    -1,  1134,  1134,    -1,  1137,  1137,  1139,  1139,    -1,
2405
      -1,    -1,    -1,    -1,  1146,    -1,    -1,  1149,    -1,  1161,
2406
      -1,    -1,  1154,  1011,   119,   120,   121,    -1,   392,    -1,
2407
      -1,    -1,    -1,   128,   398,   399,   400,   401,    -1,  1171,
2408
      -1,    -1,    -1,    -1,    -1,  1078,    -1,    -1,    -1,    -1,
2409
      -1,    -1,  1040,  1185,    -1,  1187,  1187,  1090,   153,  1047,
2410
      -1,    -1,  1095,  1096,    -1,    -1,  1198,  1198,   432,  1102,
2411
      -1,   119,   120,   121,   122,   123,   124,   125,   126,   127,
2412
     128,    -1,   177,    -1,    -1,    -1,    -1,    -1,    -1,   184,
2413
      -1,    -1,    -1,    -1,    -1,  1083,    -1,    -1,  1131,   463,
2414
      -1,   465,   466,   467,    -1,   153,    -1,    -1,    -1,    -1,
2415
      -1,    -1,    -1,     3,  1147,     5,     6,     7,     8,     9,
2416
      10,    11,    12,    13,    -1,    15,    -1,    -1,   103,    -1,
2417
      -1,  1119,   180,    -1,    -1,    -1,   111,    -1,    -1,    -1,
2418
     504,    -1,    -1,    -1,   119,   120,   121,   122,   123,   124,
2419
     125,   126,   127,   128,   129,    -1,    -1,    -1,    -1,    -1,
2420
    1193,    -1,    52,    53,    -1,    -1,    -1,    57,    58,    59,
2421
      60,    61,    62,    63,    64,    65,    66,    67,   153,    69,
2422
      -1,    71,    72,    73,    74,    75,    76,    77,    78,    79,
2423
      -1,    -1,    82,    -1,    -1,    85,    86,    87,    88,    89,
2424
      90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
2425
     100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
2426
     110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
2427
     120,   121,   122,   123,   124,    -1,    -1,    -1,   128,   129,
2428
     130,   131,   132,    -1,   134,   135,   136,   137,   138,   139,
2429
     140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
2430
     150,   151,   152,   153,   154,   155,    -1,    49,    50,    51,
2431
      52,    53,    54,    55,    56,   165,    58,    -1,    -1,    -1,
2432
      -1,   171,    -1,    -1,    -1,    -1,    68,   177,   178,    -1,
2433
      -1,   181,   182,   183,   184,     3,    -1,     5,     6,     7,
2434
       8,     9,    10,    11,    12,    13,    -1,    15,    -1,    -1,
2435
      -1,    -1,    -1,    16,    17,    18,    19,    20,    21,    22,
2436
      23,    24,    25,    26,    27,    28,    29,    -1,   119,   120,
2437
     121,   122,   123,   124,   125,   126,   127,   128,    -1,    -1,
2438
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2439
      58,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2440
      -1,    69,   153,    71,    72,    73,    74,    75,    76,    77,
2441
      78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,
2442
      88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
2443
      98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
2444
     108,   109,   110,   111,   112,   113,   114,   115,   116,   117,
2445
     118,   119,   120,   121,   122,   123,   124,    -1,    -1,    -1,
2446
     128,   129,   130,   131,   132,    -1,   134,   135,   136,   137,
2447
     138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
2448
     148,   149,   150,   151,   152,   153,   154,   155,    -1,    -1,
2449
      -1,   154,   155,    -1,   157,   158,    -1,   165,    -1,    -1,
2450
      -1,    -1,    -1,   171,    -1,    -1,   169,    -1,    -1,   177,
2451
     178,    -1,    -1,   181,   182,   183,   184,     3,   181,     5,
2452
       6,     7,     8,     9,    10,    11,    12,    13,    -1,    15,
2453
      -1,    -1,    -1,    -1,    -1,   119,   120,   121,   122,   123,
2454
     124,   125,   126,   127,   128,    -1,    44,    45,    46,    47,
2455
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
2456
      58,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,   153,
2457
      68,    57,    58,    59,    60,    61,    62,    63,    64,    65,
2458
      66,    67,    -1,    69,    -1,    71,    72,    73,    74,    75,
2459
      76,    77,    78,    79,   178,    -1,    82,    -1,    -1,    85,
2460
      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
2461
      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
2462
     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
2463
     116,   117,   118,   119,   120,   121,   122,   123,   124,    -1,
2464
      -1,    -1,   128,   129,   130,   131,   132,    -1,   134,   135,
2465
     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
2466
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2467
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   165,
2468
      -1,    -1,    -1,    -1,    -1,   171,    -1,    -1,    -1,    -1,
2469
      -1,   177,   178,    -1,    -1,   181,   182,   183,   184,     3,
2470
      -1,     5,     6,     7,     8,     9,    10,    11,    12,    13,
2471
      -1,    15,    -1,    -1,    -1,    -1,    -1,   119,   120,   121,
2472
     122,   123,   124,   125,   126,   127,   128,   109,    -1,   111,
2473
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,   120,   121,
2474
     122,   123,   124,   125,   126,   127,   128,    -1,    52,    53,
2475
      -1,   153,    -1,    57,    58,    59,    60,    61,    62,    63,
2476
      64,    65,    66,    67,    -1,    69,    -1,    71,    72,    73,
2477
      74,    75,    76,    77,    78,    79,   178,    -1,    82,    -1,
2478
      -1,    85,    86,    87,    88,    89,    90,    91,    92,    93,
2479
      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
2480
     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
2481
     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
2482
     124,    -1,    -1,    -1,   128,   129,   130,   131,   132,    -1,
2483
     134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
2484
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2485
     154,   155,    -1,     3,    -1,     5,     6,     7,     8,    -1,
2486
      -1,   165,    12,    13,    -1,    15,    -1,   171,   103,    -1,
2487
      -1,    -1,    -1,   177,    -1,    -1,   111,   181,   182,   183,
2488
     184,   116,    -1,    -1,   119,   120,   121,   122,   123,   124,
2489
     125,   126,   127,   128,   129,    -1,    -1,    -1,    -1,    -1,
2490
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2491
      60,    61,    62,    63,    64,    65,    66,    67,   153,    69,
2492
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2493
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2494
      90,    91,    92,    -1,    94,   180,    96,    -1,    98,    -1,
2495
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2496
     110,   111,   112,   113,    -1,    -1,   116,    -1,   118,   119,
2497
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2498
     130,   131,   132,   133,   134,   135,   136,   137,    -1,    -1,
2499
     140,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2500
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2501
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2502
      -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,
2503
     180,   181,   182,   183,   184,   119,   120,   121,   122,   123,
2504
     124,   125,   126,   127,   128,    -1,    -1,    -1,    -1,    -1,
2505
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2506
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2507
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2508
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2509
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    -1,
2510
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2511
     106,   107,   108,   109,   110,   111,   112,   113,    -1,    -1,
2512
     116,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2513
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2514
     136,   137,    -1,    -1,   140,   141,   142,    -1,   144,   145,
2515
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2516
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2517
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2518
     176,   177,    -1,   179,   180,   181,   182,   183,   184,    -1,
2519
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2520
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2521
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2522
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2523
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2524
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2525
      92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,
2526
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,   111,
2527
     112,   113,    -1,    -1,   116,    -1,   118,   119,   120,   121,
2528
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2529
     132,   133,   134,   135,   136,   137,    -1,    -1,   140,   141,
2530
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2531
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2532
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2533
     103,    -1,    -1,    -1,   176,   177,    -1,   179,   111,   181,
2534
     182,   183,   184,   116,    -1,    -1,   119,   120,   121,   122,
2535
     123,   124,   125,   126,   127,   128,   129,    -1,    -1,    -1,
2536
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2537
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2538
     153,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2539
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2540
      88,    -1,    90,    91,    92,    -1,    94,   180,    96,    -1,
2541
      98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2542
     108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,
2543
     118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,
2544
     128,    -1,   130,   131,   132,   133,   134,   135,   136,   137,
2545
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2546
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2547
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2548
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,
2549
      -1,   179,   180,   181,   182,   183,   184,    -1,    -1,    -1,
2550
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2551
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2552
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2553
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2554
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2555
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2556
      94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
2557
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2558
      -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,
2559
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
2560
     134,   135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,
2561
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2562
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2563
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2564
      -1,    -1,   176,   177,    -1,   179,   180,   181,   182,   183,
2565
     184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2566
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2567
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2568
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2569
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2570
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    89,
2571
      90,    91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,
2572
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2573
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2574
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2575
     130,   131,   132,   133,   134,   135,   136,   137,    -1,    -1,
2576
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2577
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2578
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2579
      -1,    -1,   103,    -1,    -1,    -1,   176,   177,    -1,   179,
2580
     111,   181,   182,   183,   184,   116,    -1,    -1,   119,   120,
2581
     121,   122,   123,   124,   125,   126,   127,   128,   129,    -1,
2582
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2583
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2584
      66,    67,   153,    69,    -1,    -1,    -1,    73,    74,    75,
2585
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2586
      86,    87,    88,    -1,    90,    91,    92,    93,    94,   180,
2587
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2588
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2589
      -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2590
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2591
     136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2592
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2593
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2594
      12,    13,    -1,    15,    -1,    -1,   103,    -1,    -1,    -1,
2595
     176,   177,    -1,   179,   111,   181,   182,   183,   184,   116,
2596
      -1,    -1,   119,   120,   121,   122,   123,   124,   125,   126,
2597
     127,   128,   129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2598
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2599
      62,    63,    64,    65,    66,    67,   153,    69,    -1,    -1,
2600
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2601
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2602
      92,    -1,    94,   180,    96,    -1,    98,    99,    -1,   101,
2603
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,    -1,
2604
     112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,
2605
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2606
     132,   133,   134,   135,   136,   137,    -1,    -1,    -1,   141,
2607
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2608
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2609
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2610
     103,    -1,    -1,    -1,   176,   177,    -1,   179,   111,   181,
2611
     182,   183,   184,   116,    -1,    -1,   119,   120,   121,   122,
2612
     123,   124,   125,   126,   127,   128,   129,    -1,    -1,    -1,
2613
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2614
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2615
     153,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2616
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2617
      88,    -1,    90,    91,    92,    -1,    94,   180,    96,    97,
2618
      98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2619
     108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,
2620
     118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,
2621
     128,    -1,   130,   131,   132,   133,   134,   135,   136,   137,
2622
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2623
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2624
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2625
      -1,    15,    -1,    -1,   103,    -1,    -1,    -1,   176,   177,
2626
      -1,   179,   111,   181,   182,   183,   184,   116,    -1,    -1,
2627
     119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2628
     129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2629
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2630
      64,    65,    66,    67,   153,    69,    -1,    -1,    -1,    73,
2631
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2632
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2633
      94,   180,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
2634
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2635
      -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,
2636
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
2637
     134,   135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,
2638
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2639
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2640
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2641
      -1,    -1,   176,   177,    -1,   179,   180,   181,   182,   183,
2642
     184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2643
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2644
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2645
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2646
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2647
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2648
      90,    91,    92,    -1,    94,    95,    96,    -1,    98,    -1,
2649
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2650
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2651
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2652
     130,   131,   132,   133,   134,   135,   136,   137,    -1,    -1,
2653
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2654
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2655
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2656
      -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,
2657
      -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2658
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2659
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2660
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2661
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2662
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2663
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    -1,
2664
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2665
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2666
      -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2667
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2668
     136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2669
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2670
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2671
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2672
     176,   177,    -1,   179,   180,   181,   182,   183,   184,    -1,
2673
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2674
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2675
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2676
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2677
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2678
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2679
      92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,
2680
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,    -1,
2681
     112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,
2682
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2683
     132,   133,   134,   135,   136,   137,    -1,    -1,    -1,   141,
2684
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2685
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2686
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2687
      -1,    -1,    -1,    -1,   176,   177,    -1,   179,   180,   181,
2688
     182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2689
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2690
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2691
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2692
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2693
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2694
      88,    -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,
2695
      98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2696
     108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,
2697
     118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,
2698
     128,    -1,   130,   131,   132,   133,   134,   135,   136,   137,
2699
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2700
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2701
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2702
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,
2703
      -1,   179,   180,   181,   182,   183,   184,    -1,    -1,    -1,
2704
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2705
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2706
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2707
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2708
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2709
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2710
      94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
2711
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2712
      -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,
2713
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
2714
     134,   135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,
2715
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2716
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2717
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2718
      -1,    -1,   176,   177,    -1,   179,   180,   181,   182,   183,
2719
     184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2720
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2721
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2722
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2723
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2724
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2725
      90,    91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,
2726
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2727
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2728
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2729
     130,   131,   132,   133,   134,   135,   136,   137,    -1,    -1,
2730
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2731
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2732
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2733
      -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,
2734
     180,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2735
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2736
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2737
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2738
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2739
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2740
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    -1,
2741
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2742
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2743
      -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2744
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2745
     136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2746
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2747
     156,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,   165,
2748
       5,     6,     7,     8,     9,    10,    11,    12,    13,    -1,
2749
     176,   177,    -1,   179,    -1,   181,   182,   183,   184,   109,
2750
     110,   111,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,
2751
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2752
      -1,    -1,    -1,    -1,   134,   135,   136,   137,    -1,    -1,
2753
      -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,
2754
      -1,    -1,    -1,   153,    69,    -1,    71,    72,    -1,    -1,
2755
      75,    -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,
2756
      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
2757
      95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
2758
     105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
2759
     115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
2760
      -1,    -1,    -1,   128,   129,   130,   131,   132,    -1,   134,
2761
     135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
2762
     145,   146,   147,   148,   149,   150,   151,   152,     3,    -1,
2763
       5,     6,     7,     8,     9,    10,    11,    12,    13,    -1,
2764
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2765
      -1,    -1,    -1,    -1,   179,    -1,    -1,    -1,    -1,   184,
2766
      36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
2767
      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
2768
      56,    -1,    58,    58,    -1,    -1,    -1,    -1,    -1,    -1,
2769
      -1,    -1,    68,    -1,    69,    -1,    71,    72,    -1,    -1,
2770
      75,    -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,
2771
      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
2772
      95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
2773
     105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
2774
     115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
2775
      -1,    -1,    -1,   128,   129,   130,   131,   132,    -1,   134,
2776
     135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
2777
     145,   146,   147,   148,   149,   150,   151,   152,     3,    -1,
2778
       5,     6,     7,     8,    -1,    -1,    -1,    12,    13,    -1,
2779
      15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2780
      -1,    -1,    -1,    -1,   179,    -1,    31,    -1,    -1,   184,
2781
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2782
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2783
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2784
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2785
      75,    76,    77,    78,    79,    80,    -1,    82,    -1,    -1,
2786
      85,    86,    87,    88,    -1,    90,    91,    92,    -1,    94,
2787
      -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,
2788
     105,   106,   107,   108,   109,   110,    -1,   112,   113,    -1,
2789
      -1,    -1,    -1,   118,   119,    -1,    -1,    -1,    -1,    -1,
2790
      -1,    -1,    -1,   128,    -1,   130,   131,   132,    -1,    -1,
2791
      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,
2792
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2793
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2794
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2795
      -1,   176,   177,    -1,   179,    -1,   181,   182,   183,   184,
2796
      31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2797
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2798
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2799
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2800
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2801
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2802
      91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,
2803
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2804
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,    -1,
2805
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2806
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2807
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2808
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2809
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2810
      -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,    -1,
2811
     181,   182,   183,   184,    31,    -1,    -1,    -1,    -1,    -1,
2812
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2813
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2814
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2815
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2816
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2817
      87,    88,    -1,    90,    91,    92,    -1,    94,    -1,    96,
2818
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2819
     107,   108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,
2820
      -1,   118,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2821
      -1,   128,    -1,   130,   131,   132,    -1,    -1,    -1,    -1,
2822
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2823
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2824
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2825
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,
2826
     177,    -1,   179,    -1,   181,   182,   183,   184,    31,    -1,
2827
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2828
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2829
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2830
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2831
      73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
2832
      -1,    -1,    85,    86,    87,    88,    -1,    90,    91,    92,
2833
      -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,
2834
      -1,    -1,   105,   106,   107,   108,   109,   110,    -1,   112,
2835
     113,    -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,
2836
      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
2837
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
2838
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2839
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2840
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2841
      -1,    -1,    -1,   176,   177,    -1,   179,    -1,   181,   182,
2842
     183,   184,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2843
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2844
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2845
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
2846
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2847
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2848
      -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,    98,
2849
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2850
     109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,
2851
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2852
      -1,   130,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,
2853
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2854
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2855
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2856
      15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,
2857
     179,    -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
2858
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2859
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2860
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2861
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2862
      75,    76,    77,    78,    79,    80,    -1,    82,    -1,    -1,
2863
      85,    86,    87,    88,    -1,    90,    91,    92,    -1,    94,
2864
      -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,
2865
     105,   106,   107,   108,   109,   110,    -1,   112,   113,    -1,
2866
      -1,    -1,    -1,   118,   119,    -1,    -1,    -1,    -1,    -1,
2867
      -1,    -1,    -1,   128,    -1,   130,   131,   132,    -1,    -1,
2868
      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,
2869
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2870
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2871
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2872
      -1,   176,   177,    -1,   179,    -1,   181,   182,   183,   184,
2873
      -1,    -1,    -1,    -1,    -1,    -1,    37,    38,    -1,    -1,
2874
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2875
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2876
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2877
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    -1,
2878
      -1,    82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,
2879
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2880
      -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,
2881
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,
2882
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,
2883
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2884
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2885
     151,   152,   153,   154,   155,    -1,     3,    -1,     5,     6,
2886
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2887
     171,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,
2888
     181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
2889
      37,    38,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2890
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2891
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2892
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2893
      77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,
2894
      87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2895
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,
2896
      -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
2897
      -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2898
      -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,
2899
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2900
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
2901
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2902
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2903
     177,    -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
2904
      -1,    -1,    -1,    -1,    37,    38,    -1,    -1,    -1,    -1,
2905
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2906
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2907
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2908
      73,    74,    75,    76,    77,    78,    79,    -1,    -1,    82,
2909
      -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,
2910
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2911
      -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,
2912
      -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,
2913
      -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,
2914
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
2915
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2916
     153,   154,   155,    -1,     3,    -1,     5,     6,     7,     8,
2917
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2918
      -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,
2919
     183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2920
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2921
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2922
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
2923
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2924
      79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,    -1,
2925
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2926
      -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,
2927
     109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2928
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2929
      -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,
2930
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2931
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2932
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2933
      15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,
2934
      -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
2935
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2936
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2937
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2938
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2939
      75,    76,    77,    78,    79,    -1,    -1,    82,    83,    -1,
2940
      85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2941
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2942
     105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,
2943
      -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,
2944
      -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,
2945
      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,
2946
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2947
     155,    -1,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2948
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2949
      -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,   184,
2950
      31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2951
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2952
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2953
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2954
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    -1,
2955
      -1,    82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,
2956
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2957
      -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,
2958
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,
2959
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,
2960
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2961
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2962
     151,   152,   153,   154,   155,    -1,     3,    -1,     5,     6,
2963
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2964
      -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,
2965
     181,   182,   183,   184,    31,    -1,    -1,    -1,    -1,    -1,
2966
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2967
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2968
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2969
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2970
      77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,
2971
      87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2972
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,
2973
      -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
2974
      -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2975
      -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,
2976
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2977
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
2978
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2979
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2980
     177,    -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
2981
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2982
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2983
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2984
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2985
      73,    74,    75,    76,    77,    78,    79,    -1,    -1,    82,
2986
      -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,
2987
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2988
      -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,
2989
      -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,
2990
      -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,
2991
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
2992
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2993
     153,   154,   155,    -1,     3,    -1,     5,     6,     7,     8,
2994
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2995
      -1,    -1,    -1,    -1,   177,   178,    -1,    -1,   181,   182,
2996
     183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2997
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2998
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2999
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
3000
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
3001
      79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,    -1,
3002
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3003
      -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,
3004
     109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3005
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
3006
      -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,
3007
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
3008
     149,   150,   151,   152,   153,   154,   155,    -1,     3,    -1,
3009
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
3010
      15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,   178,
3011
      -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
3012
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3013
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
3014
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
3015
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
3016
      75,    76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,
3017
      85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3018
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3019
     105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,
3020
      -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,
3021
      -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,
3022
      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,
3023
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
3024
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
3025
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
3026
      -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,   184,
3027
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3028
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3029
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
3030
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
3031
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    -1,
3032
      -1,    82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,
3033
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3034
      -1,    -1,    -1,   104,   105,    -1,    -1,    -1,   109,   110,
3035
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,
3036
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,
3037
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3038
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
3039
     151,   152,   153,   154,   155,    -1,     3,    -1,     5,     6,
3040
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
3041
      -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,
3042
     181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
3043
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3044
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
3045
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
3046
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
3047
      77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,
3048
      87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3049
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,
3050
      -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
3051
      -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3052
      -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,
3053
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
3054
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
3055
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
3056
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3057
     177,    -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
3058
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3059
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
3060
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
3061
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
3062
      73,    74,    75,    76,    77,    78,    79,    -1,    -1,    82,
3063
      -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,
3064
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3065
      -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,
3066
      -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,
3067
      -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,
3068
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
3069
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
3070
     153,   154,   155,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3071
      -1,     3,   165,     5,     6,     7,     8,     9,    10,    11,
3072
      12,    13,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,
3073
     183,   184,    30,    -1,    32,    33,    34,    35,    36,    37,
3074
      38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
3075
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
3076
      58,    -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,
3077
      68,    -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,    71,
3078
      72,    -1,    -1,    75,    76,    77,    78,    -1,    -1,    -1,
3079
      -1,    -1,    -1,    85,    86,    87,    88,    89,    90,    91,
3080
      92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
3081
     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
3082
     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
3083
     122,   123,   124,    -1,    -1,    -1,   128,   129,   130,   131,
3084
     132,    -1,   134,   135,   136,   137,   138,   139,   140,   141,
3085
     142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
3086
     152,     3,    -1,     5,     6,     7,     8,     9,    10,    11,
3087
      12,    13,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3088
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,    32,
3089
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3090
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3091
      53,    54,    55,    56,    -1,    58,    58,    -1,    -1,    -1,
3092
      -1,    -1,    -1,    -1,    -1,    68,    -1,    69,    -1,    71,
3093
      72,    -1,    -1,    75,    76,    77,    78,    -1,    -1,    -1,
3094
      -1,    -1,    -1,    85,    86,    87,    88,    89,    90,    91,
3095
      92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
3096
     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
3097
     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
3098
     122,   123,   124,    -1,    -1,    -1,   128,   129,   130,   131,
3099
     132,    -1,   134,   135,   136,   137,   138,   139,   140,   141,
3100
     142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
3101
     152,    -1,     3,    -1,     5,     6,     7,     8,     9,    10,
3102
      11,    12,    13,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3103
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,    30,
3104
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3105
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3106
      54,    55,    56,    -1,    58,    -1,    -1,    58,    -1,    -1,
3107
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    69,    -1,
3108
      71,    72,    -1,    -1,    75,    76,    77,    78,    -1,    -1,
3109
      -1,    -1,    -1,    -1,    85,    86,    87,    88,    89,    90,
3110
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
3111
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
3112
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
3113
     121,   122,   123,   124,    -1,    -1,    -1,   128,   129,   130,
3114
     131,   132,    -1,   134,   135,   136,   137,   138,   139,   140,
3115
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
3116
     151,   152,    -1,    -1,     9,    10,    11,    -1,    -1,    -1,
3117
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3118
      -1,    -1,    -1,    -1,    -1,    30,   177,    32,    33,    34,
3119
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3120
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3121
      55,    56,    -1,    58,     9,    10,    11,    -1,    -1,    -1,
3122
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3123
      -1,    -1,    -1,    -1,    -1,    30,    -1,    32,    33,    34,
3124
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3125
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3126
      55,    56,    -1,    58,     9,    10,    11,    -1,    -1,    -1,
3127
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3128
      -1,    -1,    -1,    -1,    -1,    30,    -1,    32,    33,    34,
3129
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3130
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3131
      55,    56,    -1,    58,    -1,     9,    10,    11,    -1,    -1,
3132
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3133
      -1,    -1,    -1,    -1,    -1,   180,    30,    -1,    32,    33,
3134
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3135
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3136
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3137
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3138
      -1,    -1,    -1,    -1,    -1,   180,    30,    -1,    32,    33,
3139
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3140
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3141
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3142
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3143
      -1,    -1,    -1,    -1,    -1,   180,    30,    -1,    32,    33,
3144
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3145
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3146
      54,    55,    56,    -1,    58,    -1,     9,    10,    11,    -1,
3147
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3148
      -1,    -1,    -1,    -1,    -1,    -1,   180,    30,    -1,    32,
3149
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3150
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3151
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3152
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3153
      -1,    -1,    -1,    -1,    -1,    -1,   180,    30,    -1,    32,
3154
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3155
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3156
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3157
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3158
      -1,    -1,    -1,    -1,    -1,   179,    -1,    30,    -1,    32,
3159
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3160
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3161
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3162
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3163
      -1,   174,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,
3164
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3165
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3166
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3167
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3168
      -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,
3169
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3170
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3171
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3172
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3173
      -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,
3174
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3175
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3176
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3177
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3178
      -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,
3179
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3180
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3181
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3182
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3183
      -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,
3184
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3185
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3186
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3187
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3188
      -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,
3189
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3190
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3191
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3192
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3193
      -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,
3194
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3195
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3196
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3197
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3198
      -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,
3199
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3200
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3201
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3202
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3203
      -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,
3204
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3205
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3206
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3207
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3208
      -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,
3209
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3210
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3211
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3212
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3213
      -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    31,    32,
3214
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3215
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3216
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3217
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3218
      -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,
3219
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3220
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3221
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3222
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3223
      -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,    32,
3224
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3225
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3226
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3227
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3228
      -1,    -1,    -1,   176,    -1,    -1,    -1,    30,    -1,    32,
3229
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3230
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3231
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3232
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3233
      -1,    -1,    -1,   176,    -1,    -1,    -1,    30,    -1,    32,
3234
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3235
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3236
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3237
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3238
      -1,    -1,    -1,   176,    -1,    -1,    -1,    30,    -1,    32,
3239
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3240
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3241
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3242
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3243
      -1,    37,    38,   176,    -1,    -1,    -1,    30,    -1,    32,
3244
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3245
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3246
      53,    54,    55,    56,    -1,    58,    -1,    -1,    -1,    75,
3247
      76,    77,    78,    79,    -1,    68,    82,    -1,    -1,    -1,
3248
      86,    -1,   175,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3249
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3250
       3,    -1,     5,     6,     7,     8,     9,    10,    11,    12,
3251
      13,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,
3252
      -1,    -1,   128,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3253
      -1,   174,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
3254
     146,   147,   148,   149,   150,   151,   152,    -1,    -1,    -1,
3255
      -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,
3256
      -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,    71,    72,
3257
      -1,   177,    75,    -1,    -1,   181,    -1,   183,   184,    -1,
3258
      -1,   174,    85,    86,    87,    88,    89,    90,    91,    92,
3259
      93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
3260
     103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
3261
     113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
3262
     123,   124,   125,   126,   127,   128,   129,   130,   131,   132,
3263
      -1,   134,   135,   136,   137,   138,   139,   140,   141,   142,
3264
     143,   144,   145,   146,   147,   148,   149,   150,   151,   152,
3265
       3,    11,     5,     6,     7,     8,     9,    10,    11,    12,
3266
      13,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3267
      30,    -1,    32,    33,    34,    35,    36,    37,    38,    39,
3268
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
3269
      50,    51,    52,    53,    54,    55,    56,    -1,    58,    -1,
3270
      -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    68,    -1,
3271
      -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,    71,    72,
3272
      -1,    -1,    75,    -1,    -1,    78,    -1,    -1,    -1,    -1,
3273
      -1,    -1,    85,    86,    87,    88,    89,    90,    91,    92,
3274
      93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
3275
     103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
3276
     113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
3277
     123,   124,    -1,    -1,    -1,   128,   129,   130,   131,   132,
3278
      -1,   134,   135,   136,   137,   138,   139,   140,   141,   142,
3279
     143,   144,   145,   146,   147,   148,   149,   150,   151,   152,
3280
       3,    -1,     5,     6,     7,     8,     9,    10,    11,    12,
3281
      13,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3282
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3283
      54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,
3284
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3285
      -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,
3286
      -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,    71,    72,
3287
      -1,    -1,    75,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3288
      -1,    -1,    85,    86,    87,    88,    89,    90,    91,    92,
3289
      93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
3290
     103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
3291
     113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
3292
     123,   124,    -1,    -1,    -1,   128,   129,   130,   131,   132,
3293
      -1,   134,   135,   136,   137,   138,   139,   140,   141,   142,
3294
     143,   144,   145,   146,   147,   148,   149,   150,   151,   152,
3295
       3,    -1,     5,     6,     7,     8,     9,    10,    11,    12,
3296
      13,    37,    38,    39,    40,    41,    42,    43,    44,    45,
3297
      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
3298
      56,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3299
      -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3300
      -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,
3301
      -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,    71,    72,
3302
      -1,    -1,    75,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3303
      -1,    -1,    85,    86,    87,    88,    89,    90,    91,    92,
3304
      93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
3305
     103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
3306
     113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
3307
     123,   124,    -1,    -1,    -1,   128,   129,   130,   131,   132,
3308
      -1,   134,   135,   136,   137,   138,   139,   140,   141,   142,
3309
     143,   144,   145,   146,   147,   148,   149,   150,   151,   152,
3310
      75,    76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,
3311
      -1,    86,    39,    40,    41,    42,    43,    44,    45,    46,
3312
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3313
      -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3314
      -1,    68,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,
3315
      -1,    -1,    -1,   128,    -1,    -1,    -1,    -1,    -1,    -1,
3316
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   142,    -1,   144,
3317
     145,   146,   147,   148,   149,   150,   151,   152,    -1,    -1,
3318
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     9,
3319
      10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3320
      -1,    -1,   177,    -1,    -1,    -1,   181,    -1,   183,   184,
3321
      30,    -1,    32,    33,    34,    35,    36,    37,    38,    39,
3322
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
3323
      50,    51,    52,    53,    54,    55,    56,    -1,    58,    -1,
3324
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,
3325
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     9,    10,
3326
      11,    -1,    -1,    14,    -1,    -1,    -1,    -1,    -1,    -1,
3327
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    30,
3328
     100,    32,    33,    34,    35,    36,    37,    38,    39,    40,
3329
      41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
3330
      51,    52,    53,    54,    55,    56,    -1,    58,     9,    10,
3331
      11,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,
3332
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    30,
3333
      31,    32,    33,    34,    35,    36,    37,    38,    39,    40,
3334
      41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
3335
      51,    52,    53,    54,    55,    56,    -1,    58,     9,    10,
3336
      11,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,
3337
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    30,
3338
      -1,    32,    33,    34,    35,    36,    37,    38,    39,    40,
3339
      41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
3340
      51,    52,    53,    54,    55,    56,    -1,    58,    10,    11,
3341
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,
3342
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    30,    -1,
3343
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3344
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3345
      52,    53,    54,    55,    56,    14,    58,    -1,    -1,    -1,
3346
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3347
      -1,    30,    -1,    32,    33,    34,    35,    36,    37,    38,
3348
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3349
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3350
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,
3351
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3352
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3353
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68
3354
};
3355
3356
  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
3357
     symbol of state STATE-NUM.  */
3358
static const yytype_int16 yystos[] =
3359
{
3360
       0,   186,   191,     0,     3,     5,     6,     7,     8,    12,
3361
      13,    15,    52,    53,    57,    59,    60,    61,    62,    63,
3362
      64,    65,    66,    67,    69,    73,    74,    75,    76,    77,
3363
      78,    79,    80,    82,    85,    86,    87,    88,    90,    91,
3364
      92,    94,    96,    98,   101,   105,   106,   107,   108,   109,
3365
     110,   111,   112,   113,   116,   118,   119,   120,   121,   128,
3366
     130,   131,   132,   133,   134,   135,   136,   137,   140,   141,
3367
     142,   144,   145,   146,   147,   148,   149,   150,   151,   152,
3368
     153,   154,   155,   156,   165,   176,   177,   179,   181,   182,
3369
     183,   184,   195,   198,   199,   200,   201,   202,   218,   227,
3370
     230,   233,   236,   237,   239,   241,   256,   262,   263,   264,
3371
     265,   330,   331,   332,   333,   334,   335,   343,   345,   349,
3372
     350,   351,   352,   354,   355,   356,   357,   358,   359,   360,
3373
     361,   372,    75,   119,   128,   199,   332,   335,   332,   332,
3374
     332,   332,   332,   332,   332,   332,   332,   332,   332,   332,
3375
     332,   332,   332,   332,   332,   332,   332,   177,   285,   332,
3376
      31,   177,   119,   128,   177,   195,   199,   234,   235,   236,
3377
     328,   345,   346,   360,   362,   177,   283,   348,   177,   323,
3378
     324,   332,   218,   177,   177,   177,   177,   177,   177,   332,
3379
     353,   353,    75,    75,   215,   322,   353,   179,    75,    76,
3380
      78,   109,   111,   193,   194,   205,   207,   211,   214,   289,
3381
     290,   360,    79,   291,   292,   333,   283,   177,   177,   177,
3382
     177,   232,   238,   240,   242,     3,     5,     6,     7,     8,
3383
       9,    10,    11,    12,    13,    58,    69,    71,    72,    75,
3384
      78,    85,    86,    87,    88,    89,    90,    91,    92,    93,
3385
      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
3386
     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
3387
     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
3388
     124,   128,   129,   130,   131,   132,   134,   135,   136,   137,
3389
     138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
3390
     148,   149,   150,   151,   152,   187,   188,   190,   192,   204,
3391
     177,   177,   196,   197,   345,    86,   177,   181,   330,   349,
3392
     351,   352,   359,   359,   332,    79,    81,   166,   167,   168,
3393
     369,   370,   332,   216,    37,    38,   141,   171,   189,   332,
3394
     365,   366,   367,   368,    81,   347,   369,    81,   369,   179,
3395
     360,   283,   119,   198,   201,   333,   134,   236,    71,    72,
3396
      71,    72,    89,     9,    10,    11,    30,    32,    33,    34,
3397
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3398
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3399
      55,    56,    58,    68,   176,   189,   339,   339,   169,   169,
3400
     157,   158,   181,   344,    16,    17,    18,    19,    20,    21,
3401
      22,    23,    24,    25,    26,    27,    28,    29,   154,   155,
3402
     339,    14,     3,     5,     6,     7,     8,    12,    13,    69,
3403
      75,    85,    86,    87,   105,   109,   110,   119,   128,   131,
3404
     132,   141,   142,   144,   145,   146,   147,   148,   149,   150,
3405
     151,   152,   171,   178,   190,   286,   287,   332,   332,   332,
3406
     328,   236,   134,   169,   283,   157,   158,   169,   181,   171,
3407
     178,   284,   287,   288,   332,   332,   174,   176,    92,   332,
3408
     156,   326,   327,   332,   332,   215,   332,   332,   176,   176,
3409
     176,    16,   174,   176,   176,   216,   100,   170,   194,   206,
3410
     211,   176,   174,   176,   174,   176,    16,   174,   176,   224,
3411
     225,   359,   332,   373,   374,   332,   178,    75,    75,    75,
3412
      75,   176,   203,   179,   365,   365,   174,   208,   283,   346,
3413
     332,   365,   176,   157,   158,   181,   166,   370,    83,   332,
3414
     359,    81,   166,   370,   178,   133,   180,   199,   200,   217,
3415
     218,   177,   332,   359,    14,   175,   174,   182,   183,   332,
3416
     333,   231,   177,   218,   177,    31,   176,   332,   332,   332,
3417
      31,   332,   332,   332,   332,   332,   332,   332,   332,   332,
3418
     332,   332,   332,   332,   332,   332,   332,   332,   332,   332,
3419
     332,   332,   332,   332,   332,   332,   332,   346,   332,   336,
3420
      75,   128,   226,   336,   179,   190,   360,   363,   179,   190,
3421
     360,   363,    75,   179,   360,   364,   364,   353,   283,   189,
3422
     332,   332,   332,   332,   332,   332,   332,   332,   332,   332,
3423
     332,   332,   332,   332,   332,   178,   332,    31,   174,   208,
3424
     174,   178,   178,   329,   360,   364,   364,   360,   353,   178,
3425
     174,   208,   178,   324,   177,   178,   332,   176,   174,   100,
3426
     178,   178,   178,   332,   322,   180,    75,   179,   170,   176,
3427
     176,   194,   214,   290,   332,   292,   174,   208,   174,   208,
3428
     178,   176,   138,   246,   336,   138,   247,    31,   243,   179,
3429
     191,   178,   178,   196,   175,   178,   175,    75,    75,    53,
3430
      75,    79,    84,   371,   180,   181,   180,   180,   177,   200,
3431
     365,   141,   189,   332,    16,   366,   180,    75,   332,   332,
3432
     216,   332,    31,   177,   336,   177,   332,   283,   332,   283,
3433
     332,   283,   283,   175,   359,   332,   171,   288,   178,   178,
3434
     288,   348,   175,   288,   178,    31,   218,   332,    31,   218,
3435
     261,   325,   327,   332,   156,   332,   141,   181,   189,   249,
3436
     359,   219,    31,   179,   253,   179,   336,   220,   193,   205,
3437
     209,   212,   213,   179,   225,   178,   374,   178,   345,   139,
3438
     248,   179,   296,   345,   336,    30,   119,   142,   143,   177,
3439
     195,   272,   273,   274,   275,   276,   278,   248,   191,   180,
3440
      16,    84,   175,   332,   178,   178,   177,   359,   332,   246,
3441
     178,   178,    89,   332,   119,   120,   121,   122,   123,   124,
3442
     125,   126,   127,   128,   199,   266,   267,   268,   269,   270,
3443
     308,   309,   177,   266,   180,   180,   180,   246,   216,   178,
3444
     216,   176,   174,   332,   177,   365,   359,    14,   178,    31,
3445
     218,   252,   176,   254,   176,   254,   104,   257,   258,   259,
3446
     260,   332,   114,   115,   223,   100,   213,   174,   208,   210,
3447
     213,   176,   296,   336,   293,   174,   179,   273,   273,   276,
3448
      37,    35,    35,    37,   336,   180,   332,   175,   176,   365,
3449
     248,   218,    31,   176,   270,   178,   174,   208,    30,   177,
3450
     271,   277,   278,   279,   280,   281,   309,   266,   178,   248,
3451
     176,    93,   326,   332,   365,   175,   249,    31,   218,   251,
3452
     216,   254,   102,   103,   104,   254,   180,   174,   208,   180,
3453
     174,   208,   174,   208,   177,   179,    75,   212,   180,   174,
3454
     208,   179,   103,   116,   129,   180,   199,   244,   294,   295,
3455
     305,   306,   307,   308,   345,   293,   178,   273,   273,   274,
3456
     274,   273,   179,   180,   178,   336,   216,    31,   282,   268,
3457
     278,   278,   281,    38,   228,    37,    35,    35,    37,   178,
3458
     116,   340,   336,   176,   178,   178,   178,   216,    99,   102,
3459
     176,   332,    31,   176,   255,   180,    14,   259,   332,    14,
3460
     221,   345,   216,   213,   180,   293,   336,   296,   294,   271,
3461
     335,   111,   180,   293,   179,   272,    14,   178,   171,   229,
3462
     278,   278,   279,   279,   278,   282,   177,   282,   179,    31,
3463
     218,   250,   251,    97,   176,   176,   255,   216,   332,   332,
3464
      35,    79,   222,   180,   180,   190,   176,   179,   297,    79,
3465
     310,   311,   312,   339,    75,   119,   142,   143,   188,   272,
3466
     320,   321,   180,   293,   337,    79,   337,    79,   189,   341,
3467
     342,   337,   293,   216,   176,   216,   345,   178,    16,   245,
3468
     119,   180,   190,   298,   299,   300,   301,   302,   303,   345,
3469
      16,   336,   174,   176,   190,    16,    16,    75,   320,   174,
3470
     176,   180,   338,   336,   179,    79,   174,   208,   179,   180,
3471
      95,   179,   332,   176,   180,   299,   176,   176,   100,   117,
3472
     169,   332,   179,    79,   311,   336,   332,   332,   176,   321,
3473
     332,    16,   179,   314,   216,   342,   178,   216,   176,   216,
3474
      75,   187,   309,   296,   190,   336,   313,    16,   336,   177,
3475
     336,   336,   337,   332,   313,   180,   180,   180,   190,   179,
3476
     180,   199,   308,   315,   316,   332,   266,   314,   180,   337,
3477
     337,   313,   316,   339,   336,   178,   180,    75,   282,   336,
3478
     337,   317,   176,   179,   304,   177,   319,   216,   337,   266,
3479
     337,   180,   178,    14,   176,   179,   318,   332,   216,   337,
3480
     176,   180
3481
};
3482
3483
  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
3484
static const yytype_int16 yyr1[] =
3485
{
3486
       0,   185,   186,   187,   187,   187,   187,   187,   187,   187,
3487
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3488
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3489
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3490
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3491
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3492
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3493
     187,   187,   187,   187,   188,   188,   188,   188,   188,   188,
3494
     188,   188,   189,   189,   190,   190,   191,   191,   192,   192,
3495
     193,   193,   194,   194,   195,   195,   195,   195,   196,   196,
3496
     197,   197,   198,   199,   199,   200,   200,   200,   200,   200,
3497
     201,   201,   202,   202,   202,   202,   202,   203,   202,   204,
3498
     202,   202,   202,   202,   202,   205,   205,   206,   207,   208,
3499
     208,   209,   209,   210,   210,   211,   211,   212,   212,   213,
3500
     213,   214,   214,   215,   215,   216,   216,   217,   217,   217,
3501
     217,   218,   218,   218,   218,   218,   218,   218,   218,   218,
3502
     218,   218,   218,   218,   218,   218,   218,   218,   218,   219,
3503
     218,   218,   218,   218,   218,   218,   220,   220,   221,   221,
3504
     222,   222,   223,   223,   224,   224,   225,   226,   226,   227,
3505
     228,   228,   229,   229,   231,   230,   232,   230,   233,   233,
3506
     234,   234,   235,   235,   236,   236,   236,   238,   237,   240,
3507
     239,   242,   241,   243,   243,   244,   245,   245,   246,   246,
3508
     247,   247,   248,   248,   249,   249,   249,   249,   250,   250,
3509
     251,   251,   252,   252,   253,   253,   253,   253,   254,   254,
3510
     254,   255,   255,   256,   257,   257,   258,   258,   259,   259,
3511
     260,   260,   261,   261,   262,   262,   263,   263,   264,   264,
3512
     265,   265,   266,   266,   267,   267,   268,   268,   269,   269,
3513
     270,   270,   271,   271,   272,   272,   272,   272,   273,   273,
3514
     274,   274,   275,   275,   276,   276,   277,   277,   277,   277,
3515
     278,   278,   278,   279,   279,   280,   280,   281,   281,   282,
3516
     282,   283,   283,   283,   284,   284,   285,   285,   285,   285,
3517
     286,   286,   286,   287,   287,   288,   288,   289,   289,   290,
3518
     291,   291,   292,   292,   293,   293,   294,   294,   294,   294,
3519
     294,   294,   295,   295,   295,   296,   296,   297,   297,   297,
3520
     298,   298,   299,   299,   300,   301,   301,   301,   301,   302,
3521
     302,   303,   304,   304,   305,   305,   306,   306,   307,   307,
3522
     308,   308,   309,   309,   309,   309,   309,   309,   309,   309,
3523
     309,   309,   310,   310,   311,   311,   312,   312,   313,   313,
3524
     313,   314,   314,   315,   315,   317,   316,   318,   318,   318,
3525
     319,   319,   320,   320,   321,   321,   322,   323,   323,   324,
3526
     325,   325,   325,   326,   326,   327,   327,   327,   327,   329,
3527
     328,   330,   330,   330,   331,   332,   332,   332,   332,   332,
3528
     332,   332,   332,   332,   332,   332,   332,   332,   332,   332,
3529
     332,   332,   332,   332,   332,   332,   332,   332,   332,   332,
3530
     332,   332,   332,   332,   332,   332,   332,   332,   332,   332,
3531
     332,   332,   332,   332,   332,   332,   332,   332,   332,   332,
3532
     332,   332,   332,   332,   332,   332,   332,   332,   332,   332,
3533
     332,   332,   332,   332,   332,   332,   332,   332,   332,   332,
3534
     332,   332,   332,   332,   332,   332,   332,   332,   332,   332,
3535
     332,   332,   332,   332,   332,   332,   332,   332,   332,   332,
3536
     332,   333,   333,   334,   335,   336,   337,   338,   339,   339,
3537
     340,   340,   341,   341,   342,   342,   343,   343,   343,   343,
3538
     344,   343,   345,   345,   346,   346,   346,   347,   347,   347,
3539
     348,   348,   349,   349,   349,   349,   350,   350,   350,   350,
3540
     350,   350,   350,   350,   351,   351,   351,   351,   351,   351,
3541
     351,   351,   351,   351,   352,   352,   352,   352,   353,   353,
3542
     354,   355,   355,   355,   355,   355,   356,   356,   357,   357,
3543
     357,   357,   358,   358,   358,   358,   358,   359,   359,   359,
3544
     359,   360,   360,   360,   361,   361,   362,   362,   362,   362,
3545
     362,   362,   363,   363,   363,   364,   364,   364,   365,   366,
3546
     366,   367,   367,   368,   368,   368,   368,   368,   368,   368,
3547
     369,   369,   369,   369,   370,   370,   370,   370,   370,   370,
3548
     370,   370,   371,   371,   371,   371,   372,   372,   372,   372,
3549
     372,   372,   372,   373,   373,   374
3550
};
3551
3552
  /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
3553
static const yytype_int8 yyr2[] =
3554
{
3555
       0,     2,     1,     1,     1,     1,     1,     1,     1,     1,
3556
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3557
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3558
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3559
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3560
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3561
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3562
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3563
       1,     1,     1,     1,     1,     1,     2,     0,     1,     1,
3564
       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
3565
       1,     3,     4,     1,     2,     1,     1,     1,     1,     1,
3566
       1,     3,     1,     1,     2,     4,     3,     0,     6,     0,
3567
       5,     3,     4,     3,     4,     1,     1,     6,     6,     0,
3568
       1,     3,     1,     3,     1,     3,     1,     1,     2,     1,
3569
       3,     1,     3,     3,     1,     2,     0,     1,     1,     2,
3570
       4,     3,     1,     1,     5,     7,     9,     5,     3,     3,
3571
       3,     3,     3,     3,     1,     2,     6,     7,     9,     0,
3572
       6,     1,     6,     3,     2,     3,     0,     9,     1,     3,
3573
       0,     1,     0,     4,     1,     3,     1,     1,     1,    13,
3574
       0,     1,     0,     1,     0,    10,     0,     9,     1,     2,
3575
       1,     2,     0,     1,     1,     1,     1,     0,     7,     0,
3576
       8,     0,     9,     0,     2,     5,     0,     2,     0,     2,
3577
       0,     2,     0,     2,     1,     2,     4,     3,     1,     4,
3578
       1,     4,     1,     4,     3,     4,     4,     5,     0,     5,
3579
       4,     1,     1,     7,     0,     2,     1,     3,     4,     4,
3580
       1,     3,     1,     4,     5,     6,     1,     3,     6,     7,
3581
       3,     6,     2,     0,     1,     3,     2,     1,     0,     1,
3582
       7,     9,     0,     1,     1,     2,     1,     1,     1,     1,
3583
       1,     3,     3,     3,     3,     3,     1,     2,     1,     1,
3584
       1,     1,     1,     1,     3,     3,     3,     3,     3,     0,
3585
       2,     2,     4,     3,     1,     3,     2,     4,     4,     3,
3586
       3,     1,     3,     3,     2,     1,     1,     3,     1,     1,
3587
       3,     1,     1,     3,     2,     0,     4,     3,     4,     5,
3588
      12,     1,     1,     2,     3,     1,     3,     1,     2,     3,
3589
       1,     2,     2,     2,     3,     3,     3,     4,     3,     1,
3590
       1,     3,     1,     3,     1,     1,     0,     1,     0,     1,
3591
       1,     2,     1,     1,     1,     1,     1,     1,     1,     1,
3592
       1,     1,     3,     1,     2,     4,     5,     7,     0,     2,
3593
       3,     0,     3,     0,     1,     0,     9,     1,     3,     3,
3594
       0,     3,     3,     1,     4,     4,     4,     3,     1,     1,
3595
       0,     3,     1,     0,     1,     3,     4,     2,     1,     0,
3596
      10,     3,     2,     3,     2,     1,     6,     5,     3,     4,
3597
       2,     2,     3,     3,     3,     3,     3,     3,     3,     3,
3598
       3,     3,     3,     3,     3,     2,     2,     2,     2,     3,
3599
       3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
3600
       3,     3,     3,     3,     3,     3,     3,     2,     2,     2,
3601
       2,     3,     3,     3,     3,     3,     3,     3,     3,     3,
3602
       3,     3,     3,     1,     1,     5,     4,     3,     1,     2,
3603
       2,     2,     2,     2,     2,     2,     2,     2,     1,     3,
3604
       2,     1,     2,     4,     2,     2,     1,     2,     2,     3,
3605
       1,    13,    12,     1,     1,     0,     0,     0,     0,     1,
3606
       0,     5,     3,     1,     1,     2,     2,     2,     4,     4,
3607
       0,     3,     1,     1,     1,     1,     3,     0,     1,     1,
3608
       0,     1,     4,     3,     1,     3,     1,     1,     3,     2,
3609
       3,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3610
       1,     1,     1,     1,     3,     3,     5,     5,     0,     1,
3611
       1,     1,     3,     1,     1,     1,     1,     1,     1,     3,
3612
       1,     1,     1,     4,     4,     4,     1,     1,     1,     3,
3613
       3,     1,     4,     2,     3,     3,     1,     4,     3,     3,
3614
       3,     3,     1,     3,     1,     1,     3,     1,     1,     0,
3615
       1,     3,     1,     3,     1,     4,     2,     2,     6,     4,
3616
       2,     2,     1,     2,     1,     4,     3,     3,     3,     3,
3617
       6,     3,     1,     1,     2,     1,     5,     4,     2,     2,
3618
       4,     2,     2,     1,     3,     1
3619
};
3620
3621
3622
#define yyerrok         (yyerrstatus = 0)
3623
#define yyclearin       (yychar = YYEMPTY)
3624
34.6M
#define YYEMPTY         (-2)
3625
22.2M
#define YYEOF           0
3626
3627
102k
#define YYACCEPT        goto yyacceptlab
3628
45.2k
#define YYABORT         goto yyabortlab
3629
245
#define YYERROR         goto yyerrorlab
3630
3631
3632
#define YYRECOVERING()  (!!yyerrstatus)
3633
3634
#define YYBACKUP(Token, Value)                                    \
3635
  do                                                              \
3636
    if (yychar == YYEMPTY)                                        \
3637
      {                                                           \
3638
        yychar = (Token);                                         \
3639
        yylval = (Value);                                         \
3640
        YYPOPSTACK (yylen);                                       \
3641
        yystate = *yyssp;                                         \
3642
        goto yybackup;                                            \
3643
      }                                                           \
3644
    else                                                          \
3645
      {                                                           \
3646
        yyerror (YY_("syntax error: cannot back up")); \
3647
        YYERROR;                                                  \
3648
      }                                                           \
3649
  while (0)
3650
3651
/* Error token number */
3652
4.40M
#define YYTERROR        1
3653
#define YYERRCODE       256
3654
3655
3656
3657
/* Enable debugging if requested.  */
3658
#if ZENDDEBUG
3659
3660
# ifndef YYFPRINTF
3661
#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
3662
#  define YYFPRINTF fprintf
3663
# endif
3664
3665
# define YYDPRINTF(Args)                        \
3666
do {                                            \
3667
  if (yydebug)                                  \
3668
    YYFPRINTF Args;                             \
3669
} while (0)
3670
3671
/* This macro is provided for backward compatibility. */
3672
#ifndef YY_LOCATION_PRINT
3673
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
3674
#endif
3675
3676
3677
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
3678
do {                                                                      \
3679
  if (yydebug)                                                            \
3680
    {                                                                     \
3681
      YYFPRINTF (stderr, "%s ", Title);                                   \
3682
      yy_symbol_print (stderr,                                            \
3683
                  Type, Value); \
3684
      YYFPRINTF (stderr, "\n");                                           \
3685
    }                                                                     \
3686
} while (0)
3687
3688
3689
/*-----------------------------------.
3690
| Print this symbol's value on YYO.  |
3691
`-----------------------------------*/
3692
3693
static void
3694
yy_symbol_value_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep)
3695
{
3696
  FILE *yyoutput = yyo;
3697
  YYUSE (yyoutput);
3698
  if (!yyvaluep)
3699
    return;
3700
# ifdef YYPRINT
3701
  if (yytype < YYNTOKENS)
3702
    YYPRINT (yyo, yytoknum[yytype], *yyvaluep);
3703
# endif
3704
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
3705
  YYUSE (yytype);
3706
  YY_IGNORE_MAYBE_UNINITIALIZED_END
3707
}
3708
3709
3710
/*---------------------------.
3711
| Print this symbol on YYO.  |
3712
`---------------------------*/
3713
3714
static void
3715
yy_symbol_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep)
3716
{
3717
  YYFPRINTF (yyo, "%s %s (",
3718
             yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
3719
3720
  yy_symbol_value_print (yyo, yytype, yyvaluep);
3721
  YYFPRINTF (yyo, ")");
3722
}
3723
3724
/*------------------------------------------------------------------.
3725
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
3726
| TOP (included).                                                   |
3727
`------------------------------------------------------------------*/
3728
3729
static void
3730
yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop)
3731
{
3732
  YYFPRINTF (stderr, "Stack now");
3733
  for (; yybottom <= yytop; yybottom++)
3734
    {
3735
      int yybot = *yybottom;
3736
      YYFPRINTF (stderr, " %d", yybot);
3737
    }
3738
  YYFPRINTF (stderr, "\n");
3739
}
3740
3741
# define YY_STACK_PRINT(Bottom, Top)                            \
3742
do {                                                            \
3743
  if (yydebug)                                                  \
3744
    yy_stack_print ((Bottom), (Top));                           \
3745
} while (0)
3746
3747
3748
/*------------------------------------------------.
3749
| Report that the YYRULE is going to be reduced.  |
3750
`------------------------------------------------*/
3751
3752
static void
3753
yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp, int yyrule)
3754
{
3755
  int yylno = yyrline[yyrule];
3756
  int yynrhs = yyr2[yyrule];
3757
  int yyi;
3758
  YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n",
3759
             yyrule - 1, yylno);
3760
  /* The symbols being reduced.  */
3761
  for (yyi = 0; yyi < yynrhs; yyi++)
3762
    {
3763
      YYFPRINTF (stderr, "   $%d = ", yyi + 1);
3764
      yy_symbol_print (stderr,
3765
                       yystos[+yyssp[yyi + 1 - yynrhs]],
3766
                       &yyvsp[(yyi + 1) - (yynrhs)]
3767
                                              );
3768
      YYFPRINTF (stderr, "\n");
3769
    }
3770
}
3771
3772
# define YY_REDUCE_PRINT(Rule)          \
3773
do {                                    \
3774
  if (yydebug)                          \
3775
    yy_reduce_print (yyssp, yyvsp, Rule); \
3776
} while (0)
3777
3778
/* Nonzero means print parse trace.  It is left uninitialized so that
3779
   multiple parsers can coexist.  */
3780
int yydebug;
3781
#else /* !ZENDDEBUG */
3782
# define YYDPRINTF(Args)
3783
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
3784
# define YY_STACK_PRINT(Bottom, Top)
3785
# define YY_REDUCE_PRINT(Rule)
3786
#endif /* !ZENDDEBUG */
3787
3788
3789
/* YYINITDEPTH -- initial size of the parser's stacks.  */
3790
#ifndef YYINITDEPTH
3791
147k
# define YYINITDEPTH 200
3792
#endif
3793
3794
/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
3795
   if the built-in stack extension method is used).
3796
3797
   Do not make this value too large; the results are undefined if
3798
   YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
3799
   evaluated with infinite-precision integer arithmetic.  */
3800
3801
#ifndef YYMAXDEPTH
3802
4.76k
# define YYMAXDEPTH 10000
3803
#endif
3804
3805
3806
#if YYERROR_VERBOSE
3807
3808
# ifndef yystrlen
3809
#  if defined __GLIBC__ && defined _STRING_H
3810
44.9k
#   define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S)))
3811
#  else
3812
/* Return the length of YYSTR.  */
3813
static YYPTRDIFF_T
3814
yystrlen (const char *yystr)
3815
{
3816
  YYPTRDIFF_T yylen;
3817
  for (yylen = 0; yystr[yylen]; yylen++)
3818
    continue;
3819
  return yylen;
3820
}
3821
#  endif
3822
# endif
3823
3824
# ifndef yystpcpy
3825
#  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
3826
45.0k
#   define yystpcpy stpcpy
3827
#  else
3828
/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
3829
   YYDEST.  */
3830
static char *
3831
yystpcpy (char *yydest, const char *yysrc)
3832
{
3833
  char *yyd = yydest;
3834
  const char *yys = yysrc;
3835
3836
  while ((*yyd++ = *yys++) != '\0')
3837
    continue;
3838
3839
  return yyd - 1;
3840
}
3841
#  endif
3842
# endif
3843
3844
# ifndef yytnamerr
3845
/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
3846
   quotes and backslashes, so that it's suitable for yyerror.  The
3847
   heuristic is that double-quoting is unnecessary unless the string
3848
   contains an apostrophe, a comma, or backslash (other than
3849
   backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
3850
   null, do not copy; instead, return the length of what the result
3851
   would have been.  */
3852
static YYPTRDIFF_T
3853
yytnamerr (char *yyres, const char *yystr)
3854
{
3855
  if (*yystr == '"')
3856
    {
3857
      YYPTRDIFF_T yyn = 0;
3858
      char const *yyp = yystr;
3859
3860
      for (;;)
3861
        switch (*++yyp)
3862
          {
3863
          case '\'':
3864
          case ',':
3865
            goto do_not_strip_quotes;
3866
3867
          case '\\':
3868
            if (*++yyp != '\\')
3869
              goto do_not_strip_quotes;
3870
            else
3871
              goto append;
3872
3873
          append:
3874
          default:
3875
            if (yyres)
3876
              yyres[yyn] = *yyp;
3877
            yyn++;
3878
            break;
3879
3880
          case '"':
3881
            if (yyres)
3882
              yyres[yyn] = '\0';
3883
            return yyn;
3884
          }
3885
    do_not_strip_quotes: ;
3886
    }
3887
3888
  if (yyres)
3889
    return yystpcpy (yyres, yystr) - yyres;
3890
  else
3891
    return yystrlen (yystr);
3892
}
3893
# endif
3894
3895
/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
3896
   about the unexpected token YYTOKEN for the state stack whose top is
3897
   YYSSP.
3898
3899
   Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
3900
   not large enough to hold the message.  In that case, also set
3901
   *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
3902
   required number of bytes is too large to store.  */
3903
static int
3904
yysyntax_error (YYPTRDIFF_T *yymsg_alloc, char **yymsg,
3905
                yy_state_t *yyssp, int yytoken)
3906
44.9k
{
3907
44.9k
  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
3908
  /* Internationalized format string. */
3909
44.9k
  const char *yyformat = YY_NULLPTR;
3910
  /* Arguments of yyformat: reported tokens (one for the "unexpected",
3911
     one per "expected"). */
3912
44.9k
  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
3913
  /* Actual size of YYARG. */
3914
44.9k
  int yycount = 0;
3915
  /* Cumulated lengths of YYARG.  */
3916
44.9k
  YYPTRDIFF_T yysize = 0;
3917
3918
  /* There are many possibilities here to consider:
3919
     - If this state is a consistent state with a default action, then
3920
       the only way this function was invoked is if the default action
3921
       is an error action.  In that case, don't check for expected
3922
       tokens because there are none.
3923
     - The only way there can be no lookahead present (in yychar) is if
3924
       this state is a consistent state with a default action.  Thus,
3925
       detecting the absence of a lookahead is sufficient to determine
3926
       that there is no unexpected or expected token to report.  In that
3927
       case, just report a simple "syntax error".
3928
     - Don't assume there isn't a lookahead just because this state is a
3929
       consistent state with a default action.  There might have been a
3930
       previous inconsistent state, consistent state with a non-default
3931
       action, or user semantic action that manipulated yychar.
3932
     - Of course, the expected token list depends on states to have
3933
       correct lookahead information, and it depends on the parser not
3934
       to perform extra reductions after fetching a lookahead from the
3935
       scanner and before detecting a syntax error.  Thus, state merging
3936
       (from LALR or IELR) and default reductions corrupt the expected
3937
       token list.  However, the list is correct for canonical LR with
3938
       one exception: it will still contain any token that will not be
3939
       accepted due to an error action in a later state.
3940
  */
3941
44.9k
  if (yytoken != YYEMPTY)
3942
44.9k
    {
3943
44.9k
      int yyn = yypact[+*yyssp];
3944
44.9k
      YYPTRDIFF_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
3945
44.9k
      yysize = yysize0;
3946
44.9k
      yyarg[yycount++] = yytname[yytoken];
3947
44.9k
      if (!yypact_value_is_default (yyn))
3948
44.9k
        {
3949
          /* Start YYX at -YYN if negative to avoid negative indexes in
3950
             YYCHECK.  In other words, skip the first -YYN actions for
3951
             this state because they are default actions.  */
3952
44.9k
          int yyxbegin = yyn < 0 ? -yyn : 0;
3953
          /* Stay within bounds of both yycheck and yytname.  */
3954
44.9k
          int yychecklim = YYLAST - yyn + 1;
3955
44.9k
          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
3956
44.9k
          int yyx;
3957
3958
2.74M
          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
3959
2.73M
            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
3960
2.73M
                && !yytable_value_is_error (yytable[yyx + yyn]))
3961
192k
              {
3962
192k
                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
3963
34.7k
                  {
3964
34.7k
                    yycount = 1;
3965
34.7k
                    yysize = yysize0;
3966
34.7k
                    break;
3967
34.7k
                  }
3968
157k
                yyarg[yycount++] = yytname[yyx];
3969
157k
                {
3970
157k
                  YYPTRDIFF_T yysize1
3971
157k
                    = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
3972
157k
                  if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
3973
157k
                    yysize = yysize1;
3974
0
                  else
3975
0
                    return 2;
3976
157k
                }
3977
157k
              }
3978
44.9k
        }
3979
44.9k
    }
3980
3981
44.9k
  switch (yycount)
3982
44.9k
    {
3983
0
# define YYCASE_(N, S)                      \
3984
44.9k
      case N:                               \
3985
44.9k
        yyformat = S;                       \
3986
44.9k
      break
3987
0
    default: /* Avoid compiler warnings. */
3988
0
      YYCASE_(0, YY_("syntax error"));
3989
34.7k
      YYCASE_(1, YY_("syntax error, unexpected %s"));
3990
6.61k
      YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
3991
367
      YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
3992
1.56k
      YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
3993
44.9k
      YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
3994
44.9k
# undef YYCASE_
3995
44.9k
    }
3996
3997
44.9k
  {
3998
    /* Don't count the "%s"s in the final size, but reserve room for
3999
       the terminator.  */
4000
44.9k
    YYPTRDIFF_T yysize1 = yysize + (yystrlen (yyformat) - 2 * yycount) + 1;
4001
44.9k
    if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
4002
44.9k
      yysize = yysize1;
4003
0
    else
4004
0
      return 2;
4005
44.9k
  }
4006
4007
44.9k
  if (*yymsg_alloc < yysize)
4008
8
    {
4009
8
      *yymsg_alloc = 2 * yysize;
4010
8
      if (! (yysize <= *yymsg_alloc
4011
8
             && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
4012
0
        *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
4013
8
      return 1;
4014
8
    }
4015
4016
  /* Avoid sprintf, as that infringes on the user's name space.
4017
     Don't have undefined behavior even if the translation
4018
     produced a string with the wrong number of "%s"s.  */
4019
44.9k
  {
4020
44.9k
    char *yyp = *yymsg;
4021
44.9k
    int yyi = 0;
4022
1.39M
    while ((*yyp = *yyformat) != '\0')
4023
1.34M
      if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
4024
63.9k
        {
4025
63.9k
          yyp += yytnamerr (yyp, yyarg[yyi++]);
4026
63.9k
          yyformat += 2;
4027
63.9k
        }
4028
1.28M
      else
4029
1.28M
        {
4030
1.28M
          ++yyp;
4031
1.28M
          ++yyformat;
4032
1.28M
        }
4033
44.9k
  }
4034
44.9k
  return 0;
4035
44.9k
}
4036
#endif /* YYERROR_VERBOSE */
4037
4038
/*-----------------------------------------------.
4039
| Release the memory associated to this symbol.  |
4040
`-----------------------------------------------*/
4041
4042
static void
4043
yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
4044
1.05M
{
4045
1.05M
  YYUSE (yyvaluep);
4046
1.05M
  if (!yymsg)
4047
0
    yymsg = "Deleting";
4048
1.05M
  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
4049
4050
1.05M
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
4051
1.05M
  switch (yytype)
4052
1.05M
    {
4053
204
    case 73: /* "integer"  */
4054
204
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4055
204
            { zend_ast_destroy(((*yyvaluep).ast)); }
4056
204
#line 4057 "/src/php-src/Zend/zend_language_parser.c"
4057
204
        break;
4058
4059
234
    case 74: /* "floating-point number"  */
4060
234
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4061
234
            { zend_ast_destroy(((*yyvaluep).ast)); }
4062
234
#line 4063 "/src/php-src/Zend/zend_language_parser.c"
4063
234
        break;
4064
4065
5.18k
    case 75: /* "identifier"  */
4066
5.18k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4067
5.18k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4068
5.18k
#line 4069 "/src/php-src/Zend/zend_language_parser.c"
4069
5.18k
        break;
4070
4071
64
    case 76: /* "fully qualified name"  */
4072
64
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4073
64
            { zend_ast_destroy(((*yyvaluep).ast)); }
4074
64
#line 4075 "/src/php-src/Zend/zend_language_parser.c"
4075
64
        break;
4076
4077
26
    case 77: /* "namespace-relative name"  */
4078
26
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4079
26
            { zend_ast_destroy(((*yyvaluep).ast)); }
4080
26
#line 4081 "/src/php-src/Zend/zend_language_parser.c"
4081
26
        break;
4082
4083
51
    case 78: /* "namespaced name"  */
4084
51
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4085
51
            { zend_ast_destroy(((*yyvaluep).ast)); }
4086
51
#line 4087 "/src/php-src/Zend/zend_language_parser.c"
4087
51
        break;
4088
4089
2.02k
    case 79: /* "variable"  */
4090
2.02k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4091
2.02k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4092
2.02k
#line 4093 "/src/php-src/Zend/zend_language_parser.c"
4093
2.02k
        break;
4094
4095
2
    case 80: /* T_INLINE_HTML  */
4096
2
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4097
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4098
2
#line 4099 "/src/php-src/Zend/zend_language_parser.c"
4099
2
        break;
4100
4101
56.3k
    case 81: /* "string content"  */
4102
56.3k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4103
56.3k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4104
56.3k
#line 4105 "/src/php-src/Zend/zend_language_parser.c"
4105
56.3k
        break;
4106
4107
328
    case 82: /* "quoted string"  */
4108
328
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4109
328
            { zend_ast_destroy(((*yyvaluep).ast)); }
4110
328
#line 4111 "/src/php-src/Zend/zend_language_parser.c"
4111
328
        break;
4112
4113
157
    case 83: /* "variable name"  */
4114
157
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4115
157
            { zend_ast_destroy(((*yyvaluep).ast)); }
4116
157
#line 4117 "/src/php-src/Zend/zend_language_parser.c"
4117
157
        break;
4118
4119
1
    case 84: /* "number"  */
4120
1
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4121
1
            { zend_ast_destroy(((*yyvaluep).ast)); }
4122
1
#line 4123 "/src/php-src/Zend/zend_language_parser.c"
4123
1
        break;
4124
4125
494
    case 190: /* identifier  */
4126
494
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4127
494
            { zend_ast_destroy(((*yyvaluep).ast)); }
4128
494
#line 4129 "/src/php-src/Zend/zend_language_parser.c"
4129
494
        break;
4130
4131
44.5k
    case 191: /* top_statement_list  */
4132
44.5k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4133
44.5k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4134
44.5k
#line 4135 "/src/php-src/Zend/zend_language_parser.c"
4135
44.5k
        break;
4136
4137
181
    case 192: /* namespace_declaration_name  */
4138
181
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4139
181
            { zend_ast_destroy(((*yyvaluep).ast)); }
4140
181
#line 4141 "/src/php-src/Zend/zend_language_parser.c"
4141
181
        break;
4142
4143
2
    case 193: /* namespace_name  */
4144
2
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4145
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4146
2
#line 4147 "/src/php-src/Zend/zend_language_parser.c"
4147
2
        break;
4148
4149
86
    case 194: /* legacy_namespace_name  */
4150
86
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4151
86
            { zend_ast_destroy(((*yyvaluep).ast)); }
4152
86
#line 4153 "/src/php-src/Zend/zend_language_parser.c"
4153
86
        break;
4154
4155
10.0k
    case 195: /* name  */
4156
10.0k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4157
10.0k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4158
10.0k
#line 4159 "/src/php-src/Zend/zend_language_parser.c"
4159
10.0k
        break;
4160
4161
0
    case 196: /* attribute_decl  */
4162
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4163
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4164
0
#line 4165 "/src/php-src/Zend/zend_language_parser.c"
4165
0
        break;
4166
4167
98
    case 197: /* attribute_group  */
4168
98
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4169
98
            { zend_ast_destroy(((*yyvaluep).ast)); }
4170
98
#line 4171 "/src/php-src/Zend/zend_language_parser.c"
4171
98
        break;
4172
4173
0
    case 198: /* attribute  */
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
146
    case 199: /* attributes  */
4180
146
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4181
146
            { zend_ast_destroy(((*yyvaluep).ast)); }
4182
146
#line 4183 "/src/php-src/Zend/zend_language_parser.c"
4183
146
        break;
4184
4185
0
    case 200: /* attributed_statement  */
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
0
    case 201: /* attributed_top_statement  */
4192
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4193
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4194
0
#line 4195 "/src/php-src/Zend/zend_language_parser.c"
4195
0
        break;
4196
4197
0
    case 202: /* top_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
4
    case 206: /* group_use_declaration  */
4204
4
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4205
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4206
4
#line 4207 "/src/php-src/Zend/zend_language_parser.c"
4207
4
        break;
4208
4209
4
    case 207: /* mixed_group_use_declaration  */
4210
4
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4211
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4212
4
#line 4213 "/src/php-src/Zend/zend_language_parser.c"
4213
4
        break;
4214
4215
34
    case 209: /* inline_use_declarations  */
4216
34
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4217
34
            { zend_ast_destroy(((*yyvaluep).ast)); }
4218
34
#line 4219 "/src/php-src/Zend/zend_language_parser.c"
4219
34
        break;
4220
4221
21
    case 210: /* unprefixed_use_declarations  */
4222
21
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4223
21
            { zend_ast_destroy(((*yyvaluep).ast)); }
4224
21
#line 4225 "/src/php-src/Zend/zend_language_parser.c"
4225
21
        break;
4226
4227
37
    case 211: /* 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
0
    case 212: /* inline_use_declaration  */
4234
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4235
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4236
0
#line 4237 "/src/php-src/Zend/zend_language_parser.c"
4237
0
        break;
4238
4239
0
    case 213: /* unprefixed_use_declaration  */
4240
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4241
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4242
0
#line 4243 "/src/php-src/Zend/zend_language_parser.c"
4243
0
        break;
4244
4245
0
    case 214: /* 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
458
    case 215: /* const_list  */
4252
458
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4253
458
            { zend_ast_destroy(((*yyvaluep).ast)); }
4254
458
#line 4255 "/src/php-src/Zend/zend_language_parser.c"
4255
458
        break;
4256
4257
31.4k
    case 216: /* inner_statement_list  */
4258
31.4k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4259
31.4k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4260
31.4k
#line 4261 "/src/php-src/Zend/zend_language_parser.c"
4261
31.4k
        break;
4262
4263
0
    case 217: /* inner_statement  */
4264
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4265
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4266
0
#line 4267 "/src/php-src/Zend/zend_language_parser.c"
4267
0
        break;
4268
4269
78
    case 218: /* statement  */
4270
78
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4271
78
            { zend_ast_destroy(((*yyvaluep).ast)); }
4272
78
#line 4273 "/src/php-src/Zend/zend_language_parser.c"
4273
78
        break;
4274
4275
388
    case 220: /* catch_list  */
4276
388
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4277
388
            { zend_ast_destroy(((*yyvaluep).ast)); }
4278
388
#line 4279 "/src/php-src/Zend/zend_language_parser.c"
4279
388
        break;
4280
4281
171
    case 221: /* catch_name_list  */
4282
171
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4283
171
            { zend_ast_destroy(((*yyvaluep).ast)); }
4284
171
#line 4285 "/src/php-src/Zend/zend_language_parser.c"
4285
171
        break;
4286
4287
171
    case 222: /* optional_variable  */
4288
171
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4289
171
            { zend_ast_destroy(((*yyvaluep).ast)); }
4290
171
#line 4291 "/src/php-src/Zend/zend_language_parser.c"
4291
171
        break;
4292
4293
0
    case 223: /* finally_statement  */
4294
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4295
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4296
0
#line 4297 "/src/php-src/Zend/zend_language_parser.c"
4297
0
        break;
4298
4299
139
    case 224: /* unset_variables  */
4300
139
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4301
139
            { zend_ast_destroy(((*yyvaluep).ast)); }
4302
139
#line 4303 "/src/php-src/Zend/zend_language_parser.c"
4303
139
        break;
4304
4305
0
    case 225: /* unset_variable  */
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
1.10k
    case 226: /* function_name  */
4312
1.10k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4313
1.10k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4314
1.10k
#line 4315 "/src/php-src/Zend/zend_language_parser.c"
4315
1.10k
        break;
4316
4317
0
    case 227: /* function_declaration_statement  */
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
0
    case 230: /* class_declaration_statement  */
4324
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4325
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4326
0
#line 4327 "/src/php-src/Zend/zend_language_parser.c"
4327
0
        break;
4328
4329
0
    case 237: /* trait_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 239: /* interface_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 241: /* enum_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
284
    case 243: /* enum_backing_type  */
4348
284
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4349
284
            { zend_ast_destroy(((*yyvaluep).ast)); }
4350
284
#line 4351 "/src/php-src/Zend/zend_language_parser.c"
4351
284
        break;
4352
4353
0
    case 244: /* enum_case  */
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
12
    case 245: /* enum_case_expr  */
4360
12
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4361
12
            { zend_ast_destroy(((*yyvaluep).ast)); }
4362
12
#line 4363 "/src/php-src/Zend/zend_language_parser.c"
4363
12
        break;
4364
4365
1.22k
    case 246: /* extends_from  */
4366
1.22k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4367
1.22k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4368
1.22k
#line 4369 "/src/php-src/Zend/zend_language_parser.c"
4369
1.22k
        break;
4370
4371
124
    case 247: /* interface_extends_list  */
4372
124
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4373
124
            { zend_ast_destroy(((*yyvaluep).ast)); }
4374
124
#line 4375 "/src/php-src/Zend/zend_language_parser.c"
4375
124
        break;
4376
4377
1.50k
    case 248: /* implements_list  */
4378
1.50k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4379
1.50k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4380
1.50k
#line 4381 "/src/php-src/Zend/zend_language_parser.c"
4381
1.50k
        break;
4382
4383
400
    case 249: /* foreach_variable  */
4384
400
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4385
400
            { zend_ast_destroy(((*yyvaluep).ast)); }
4386
400
#line 4387 "/src/php-src/Zend/zend_language_parser.c"
4387
400
        break;
4388
4389
0
    case 250: /* for_statement  */
4390
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4391
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4392
0
#line 4393 "/src/php-src/Zend/zend_language_parser.c"
4393
0
        break;
4394
4395
0
    case 251: /* foreach_statement  */
4396
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4397
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4398
0
#line 4399 "/src/php-src/Zend/zend_language_parser.c"
4399
0
        break;
4400
4401
0
    case 252: /* declare_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 253: /* switch_case_list  */
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
47
    case 254: /* case_list  */
4414
47
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4415
47
            { zend_ast_destroy(((*yyvaluep).ast)); }
4416
47
#line 4417 "/src/php-src/Zend/zend_language_parser.c"
4417
47
        break;
4418
4419
0
    case 256: /* match  */
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
17
    case 257: /* match_arm_list  */
4426
17
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4427
17
            { zend_ast_destroy(((*yyvaluep).ast)); }
4428
17
#line 4429 "/src/php-src/Zend/zend_language_parser.c"
4429
17
        break;
4430
4431
38
    case 258: /* non_empty_match_arm_list  */
4432
38
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4433
38
            { zend_ast_destroy(((*yyvaluep).ast)); }
4434
38
#line 4435 "/src/php-src/Zend/zend_language_parser.c"
4435
38
        break;
4436
4437
0
    case 259: /* match_arm  */
4438
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4439
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4440
0
#line 4441 "/src/php-src/Zend/zend_language_parser.c"
4441
0
        break;
4442
4443
48
    case 260: /* match_arm_cond_list  */
4444
48
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4445
48
            { zend_ast_destroy(((*yyvaluep).ast)); }
4446
48
#line 4447 "/src/php-src/Zend/zend_language_parser.c"
4447
48
        break;
4448
4449
0
    case 261: /* while_statement  */
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
73
    case 262: /* if_stmt_without_else  */
4456
73
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4457
73
            { zend_ast_destroy(((*yyvaluep).ast)); }
4458
73
#line 4459 "/src/php-src/Zend/zend_language_parser.c"
4459
73
        break;
4460
4461
0
    case 263: /* if_stmt  */
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
167
    case 264: /* alt_if_stmt_without_else  */
4468
167
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4469
167
            { zend_ast_destroy(((*yyvaluep).ast)); }
4470
167
#line 4471 "/src/php-src/Zend/zend_language_parser.c"
4471
167
        break;
4472
4473
0
    case 265: /* alt_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
3.06k
    case 266: /* parameter_list  */
4480
3.06k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4481
3.06k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4482
3.06k
#line 4483 "/src/php-src/Zend/zend_language_parser.c"
4483
3.06k
        break;
4484
4485
112
    case 267: /* non_empty_parameter_list  */
4486
112
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4487
112
            { zend_ast_destroy(((*yyvaluep).ast)); }
4488
112
#line 4489 "/src/php-src/Zend/zend_language_parser.c"
4489
112
        break;
4490
4491
0
    case 268: /* attributed_parameter  */
4492
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4493
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4494
0
#line 4495 "/src/php-src/Zend/zend_language_parser.c"
4495
0
        break;
4496
4497
0
    case 270: /* parameter  */
4498
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4499
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4500
0
#line 4501 "/src/php-src/Zend/zend_language_parser.c"
4501
0
        break;
4502
4503
853
    case 271: /* optional_type_without_static  */
4504
853
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4505
853
            { zend_ast_destroy(((*yyvaluep).ast)); }
4506
853
#line 4507 "/src/php-src/Zend/zend_language_parser.c"
4507
853
        break;
4508
4509
63
    case 272: /* type_expr  */
4510
63
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4511
63
            { zend_ast_destroy(((*yyvaluep).ast)); }
4512
63
#line 4513 "/src/php-src/Zend/zend_language_parser.c"
4513
63
        break;
4514
4515
6
    case 273: /* type  */
4516
6
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4517
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4518
6
#line 4519 "/src/php-src/Zend/zend_language_parser.c"
4519
6
        break;
4520
4521
12
    case 274: /* union_type_element  */
4522
12
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4523
12
            { zend_ast_destroy(((*yyvaluep).ast)); }
4524
12
#line 4525 "/src/php-src/Zend/zend_language_parser.c"
4525
12
        break;
4526
4527
9
    case 275: /* union_type  */
4528
9
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4529
9
            { zend_ast_destroy(((*yyvaluep).ast)); }
4530
9
#line 4531 "/src/php-src/Zend/zend_language_parser.c"
4531
9
        break;
4532
4533
12
    case 276: /* intersection_type  */
4534
12
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4535
12
            { zend_ast_destroy(((*yyvaluep).ast)); }
4536
12
#line 4537 "/src/php-src/Zend/zend_language_parser.c"
4537
12
        break;
4538
4539
0
    case 277: /* type_expr_without_static  */
4540
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4541
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4542
0
#line 4543 "/src/php-src/Zend/zend_language_parser.c"
4543
0
        break;
4544
4545
31
    case 278: /* type_without_static  */
4546
31
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4547
31
            { zend_ast_destroy(((*yyvaluep).ast)); }
4548
31
#line 4549 "/src/php-src/Zend/zend_language_parser.c"
4549
31
        break;
4550
4551
7
    case 279: /* union_type_without_static_element  */
4552
7
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4553
7
            { zend_ast_destroy(((*yyvaluep).ast)); }
4554
7
#line 4555 "/src/php-src/Zend/zend_language_parser.c"
4555
7
        break;
4556
4557
4
    case 280: /* union_type_without_static  */
4558
4
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4559
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4560
4
#line 4561 "/src/php-src/Zend/zend_language_parser.c"
4561
4
        break;
4562
4563
8
    case 281: /* intersection_type_without_static  */
4564
8
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4565
8
            { zend_ast_destroy(((*yyvaluep).ast)); }
4566
8
#line 4567 "/src/php-src/Zend/zend_language_parser.c"
4567
8
        break;
4568
4569
2.95k
    case 282: /* return_type  */
4570
2.95k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4571
2.95k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4572
2.95k
#line 4573 "/src/php-src/Zend/zend_language_parser.c"
4573
2.95k
        break;
4574
4575
0
    case 283: /* argument_list  */
4576
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4577
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4578
0
#line 4579 "/src/php-src/Zend/zend_language_parser.c"
4579
0
        break;
4580
4581
2.23k
    case 284: /* non_empty_argument_list  */
4582
2.23k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4583
2.23k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4584
2.23k
#line 4585 "/src/php-src/Zend/zend_language_parser.c"
4585
2.23k
        break;
4586
4587
0
    case 285: /* clone_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
72
    case 286: /* non_empty_clone_argument_list  */
4594
72
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4595
72
            { zend_ast_destroy(((*yyvaluep).ast)); }
4596
72
#line 4597 "/src/php-src/Zend/zend_language_parser.c"
4597
72
        break;
4598
4599
0
    case 287: /* argument_no_expr  */
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
0
    case 288: /* argument  */
4606
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4607
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4608
0
#line 4609 "/src/php-src/Zend/zend_language_parser.c"
4609
0
        break;
4610
4611
16
    case 289: /* global_var_list  */
4612
16
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4613
16
            { zend_ast_destroy(((*yyvaluep).ast)); }
4614
16
#line 4615 "/src/php-src/Zend/zend_language_parser.c"
4615
16
        break;
4616
4617
0
    case 290: /* global_var  */
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
36
    case 291: /* static_var_list  */
4624
36
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4625
36
            { zend_ast_destroy(((*yyvaluep).ast)); }
4626
36
#line 4627 "/src/php-src/Zend/zend_language_parser.c"
4627
36
        break;
4628
4629
0
    case 292: /* static_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
1.42k
    case 293: /* class_statement_list  */
4636
1.42k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4637
1.42k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4638
1.42k
#line 4639 "/src/php-src/Zend/zend_language_parser.c"
4639
1.42k
        break;
4640
4641
0
    case 294: /* attributed_class_statement  */
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
0
    case 295: /* class_statement  */
4648
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4649
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4650
0
#line 4651 "/src/php-src/Zend/zend_language_parser.c"
4651
0
        break;
4652
4653
104
    case 296: /* class_name_list  */
4654
104
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4655
104
            { zend_ast_destroy(((*yyvaluep).ast)); }
4656
104
#line 4657 "/src/php-src/Zend/zend_language_parser.c"
4657
104
        break;
4658
4659
0
    case 297: /* trait_adaptations  */
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
53
    case 298: /* trait_adaptation_list  */
4666
53
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4667
53
            { zend_ast_destroy(((*yyvaluep).ast)); }
4668
53
#line 4669 "/src/php-src/Zend/zend_language_parser.c"
4669
53
        break;
4670
4671
0
    case 299: /* trait_adaptation  */
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
6
    case 300: /* trait_precedence  */
4678
6
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4679
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4680
6
#line 4681 "/src/php-src/Zend/zend_language_parser.c"
4681
6
        break;
4682
4683
15
    case 301: /* trait_alias  */
4684
15
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4685
15
            { zend_ast_destroy(((*yyvaluep).ast)); }
4686
15
#line 4687 "/src/php-src/Zend/zend_language_parser.c"
4687
15
        break;
4688
4689
26
    case 302: /* trait_method_reference  */
4690
26
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4691
26
            { zend_ast_destroy(((*yyvaluep).ast)); }
4692
26
#line 4693 "/src/php-src/Zend/zend_language_parser.c"
4693
26
        break;
4694
4695
1
    case 303: /* absolute_trait_method_reference  */
4696
1
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4697
1
            { zend_ast_destroy(((*yyvaluep).ast)); }
4698
1
#line 4699 "/src/php-src/Zend/zend_language_parser.c"
4699
1
        break;
4700
4701
0
    case 304: /* method_body  */
4702
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4703
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4704
0
#line 4705 "/src/php-src/Zend/zend_language_parser.c"
4705
0
        break;
4706
4707
0
    case 308: /* non_empty_member_modifiers  */
4708
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4709
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4710
0
#line 4711 "/src/php-src/Zend/zend_language_parser.c"
4711
0
        break;
4712
4713
44
    case 310: /* property_list  */
4714
44
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4715
44
            { zend_ast_destroy(((*yyvaluep).ast)); }
4716
44
#line 4717 "/src/php-src/Zend/zend_language_parser.c"
4717
44
        break;
4718
4719
0
    case 311: /* property  */
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
0
    case 312: /* hooked_property  */
4726
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4727
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4728
0
#line 4729 "/src/php-src/Zend/zend_language_parser.c"
4729
0
        break;
4730
4731
381
    case 313: /* property_hook_list  */
4732
381
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4733
381
            { zend_ast_destroy(((*yyvaluep).ast)); }
4734
381
#line 4735 "/src/php-src/Zend/zend_language_parser.c"
4735
381
        break;
4736
4737
0
    case 314: /* optional_property_hook_list  */
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
0
    case 316: /* property_hook  */
4744
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4745
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4746
0
#line 4747 "/src/php-src/Zend/zend_language_parser.c"
4747
0
        break;
4748
4749
0
    case 318: /* property_hook_body  */
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
144
    case 319: /* optional_parameter_list  */
4756
144
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4757
144
            { zend_ast_destroy(((*yyvaluep).ast)); }
4758
144
#line 4759 "/src/php-src/Zend/zend_language_parser.c"
4759
144
        break;
4760
4761
65
    case 320: /* class_const_list  */
4762
65
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4763
65
            { zend_ast_destroy(((*yyvaluep).ast)); }
4764
65
#line 4765 "/src/php-src/Zend/zend_language_parser.c"
4765
65
        break;
4766
4767
0
    case 321: /* class_const_decl  */
4768
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4769
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4770
0
#line 4771 "/src/php-src/Zend/zend_language_parser.c"
4771
0
        break;
4772
4773
0
    case 322: /* const_decl  */
4774
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4775
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4776
0
#line 4777 "/src/php-src/Zend/zend_language_parser.c"
4777
0
        break;
4778
4779
256
    case 323: /* echo_expr_list  */
4780
256
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4781
256
            { zend_ast_destroy(((*yyvaluep).ast)); }
4782
256
#line 4783 "/src/php-src/Zend/zend_language_parser.c"
4783
256
        break;
4784
4785
0
    case 324: /* echo_expr  */
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
904
    case 325: /* for_cond_exprs  */
4792
904
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4793
904
            { zend_ast_destroy(((*yyvaluep).ast)); }
4794
904
#line 4795 "/src/php-src/Zend/zend_language_parser.c"
4795
904
        break;
4796
4797
1.62k
    case 326: /* for_exprs  */
4798
1.62k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4799
1.62k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4800
1.62k
#line 4801 "/src/php-src/Zend/zend_language_parser.c"
4801
1.62k
        break;
4802
4803
36
    case 327: /* non_empty_for_exprs  */
4804
36
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4805
36
            { zend_ast_destroy(((*yyvaluep).ast)); }
4806
36
#line 4807 "/src/php-src/Zend/zend_language_parser.c"
4807
36
        break;
4808
4809
0
    case 328: /* anonymous_class  */
4810
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4811
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4812
0
#line 4813 "/src/php-src/Zend/zend_language_parser.c"
4813
0
        break;
4814
4815
0
    case 330: /* new_dereferenceable  */
4816
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4817
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4818
0
#line 4819 "/src/php-src/Zend/zend_language_parser.c"
4819
0
        break;
4820
4821
0
    case 331: /* new_non_dereferenceable  */
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
28.5k
    case 332: /* expr  */
4828
28.5k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4829
28.5k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4830
28.5k
#line 4831 "/src/php-src/Zend/zend_language_parser.c"
4831
28.5k
        break;
4832
4833
0
    case 333: /* inline_function  */
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
6.05k
    case 336: /* backup_doc_comment  */
4840
6.05k
#line 52 "/src/php-src/Zend/zend_language_parser.y"
4841
6.05k
            { if (((*yyvaluep).str)) zend_string_release_ex(((*yyvaluep).str), 0); }
4842
6.05k
#line 4843 "/src/php-src/Zend/zend_language_parser.c"
4843
6.05k
        break;
4844
4845
1.05k
    case 340: /* lexical_vars  */
4846
1.05k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4847
1.05k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4848
1.05k
#line 4849 "/src/php-src/Zend/zend_language_parser.c"
4849
1.05k
        break;
4850
4851
9
    case 341: /* lexical_var_list  */
4852
9
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4853
9
            { zend_ast_destroy(((*yyvaluep).ast)); }
4854
9
#line 4855 "/src/php-src/Zend/zend_language_parser.c"
4855
9
        break;
4856
4857
0
    case 342: /* lexical_var  */
4858
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4859
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4860
0
#line 4861 "/src/php-src/Zend/zend_language_parser.c"
4861
0
        break;
4862
4863
0
    case 343: /* function_call  */
4864
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4865
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4866
0
#line 4867 "/src/php-src/Zend/zend_language_parser.c"
4867
0
        break;
4868
4869
620
    case 345: /* class_name  */
4870
620
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4871
620
            { zend_ast_destroy(((*yyvaluep).ast)); }
4872
620
#line 4873 "/src/php-src/Zend/zend_language_parser.c"
4873
620
        break;
4874
4875
1.19k
    case 346: /* class_name_reference  */
4876
1.19k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4877
1.19k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4878
1.19k
#line 4879 "/src/php-src/Zend/zend_language_parser.c"
4879
1.19k
        break;
4880
4881
493
    case 347: /* backticks_expr  */
4882
493
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4883
493
            { zend_ast_destroy(((*yyvaluep).ast)); }
4884
493
#line 4885 "/src/php-src/Zend/zend_language_parser.c"
4885
493
        break;
4886
4887
125
    case 348: /* ctor_arguments  */
4888
125
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4889
125
            { zend_ast_destroy(((*yyvaluep).ast)); }
4890
125
#line 4891 "/src/php-src/Zend/zend_language_parser.c"
4891
125
        break;
4892
4893
0
    case 349: /* dereferenceable_scalar  */
4894
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4895
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4896
0
#line 4897 "/src/php-src/Zend/zend_language_parser.c"
4897
0
        break;
4898
4899
0
    case 350: /* scalar  */
4900
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4901
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4902
0
#line 4903 "/src/php-src/Zend/zend_language_parser.c"
4903
0
        break;
4904
4905
0
    case 351: /* constant  */
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 352: /* class_constant  */
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
299
    case 353: /* optional_expr  */
4918
299
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4919
299
            { zend_ast_destroy(((*yyvaluep).ast)); }
4920
299
#line 4921 "/src/php-src/Zend/zend_language_parser.c"
4921
299
        break;
4922
4923
363
    case 354: /* variable_class_name  */
4924
363
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4925
363
            { zend_ast_destroy(((*yyvaluep).ast)); }
4926
363
#line 4927 "/src/php-src/Zend/zend_language_parser.c"
4927
363
        break;
4928
4929
0
    case 355: /* fully_dereferenceable  */
4930
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4931
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4932
0
#line 4933 "/src/php-src/Zend/zend_language_parser.c"
4933
0
        break;
4934
4935
2.93k
    case 356: /* array_object_dereferenceable  */
4936
2.93k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4937
2.93k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4938
2.93k
#line 4939 "/src/php-src/Zend/zend_language_parser.c"
4939
2.93k
        break;
4940
4941
4.87k
    case 357: /* callable_expr  */
4942
4.87k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4943
4.87k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4944
4.87k
#line 4945 "/src/php-src/Zend/zend_language_parser.c"
4945
4.87k
        break;
4946
4947
0
    case 358: /* callable_variable  */
4948
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4949
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4950
0
#line 4951 "/src/php-src/Zend/zend_language_parser.c"
4951
0
        break;
4952
4953
5.11k
    case 359: /* variable  */
4954
5.11k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4955
5.11k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4956
5.11k
#line 4957 "/src/php-src/Zend/zend_language_parser.c"
4957
5.11k
        break;
4958
4959
0
    case 360: /* simple_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
0
    case 361: /* static_member  */
4966
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4967
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4968
0
#line 4969 "/src/php-src/Zend/zend_language_parser.c"
4969
0
        break;
4970
4971
25
    case 362: /* new_variable  */
4972
25
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4973
25
            { zend_ast_destroy(((*yyvaluep).ast)); }
4974
25
#line 4975 "/src/php-src/Zend/zend_language_parser.c"
4975
25
        break;
4976
4977
336
    case 363: /* member_name  */
4978
336
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4979
336
            { zend_ast_destroy(((*yyvaluep).ast)); }
4980
336
#line 4981 "/src/php-src/Zend/zend_language_parser.c"
4981
336
        break;
4982
4983
635
    case 364: /* property_name  */
4984
635
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4985
635
            { zend_ast_destroy(((*yyvaluep).ast)); }
4986
635
#line 4987 "/src/php-src/Zend/zend_language_parser.c"
4987
635
        break;
4988
4989
819
    case 365: /* array_pair_list  */
4990
819
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4991
819
            { zend_ast_destroy(((*yyvaluep).ast)); }
4992
819
#line 4993 "/src/php-src/Zend/zend_language_parser.c"
4993
819
        break;
4994
4995
0
    case 366: /* possible_array_pair  */
4996
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4997
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4998
0
#line 4999 "/src/php-src/Zend/zend_language_parser.c"
4999
0
        break;
5000
5001
557
    case 367: /* non_empty_array_pair_list  */
5002
557
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5003
557
            { zend_ast_destroy(((*yyvaluep).ast)); }
5004
557
#line 5005 "/src/php-src/Zend/zend_language_parser.c"
5005
557
        break;
5006
5007
0
    case 368: /* 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
19.6k
    case 369: /* encaps_list  */
5014
19.6k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5015
19.6k
            { zend_ast_destroy(((*yyvaluep).ast)); }
5016
19.6k
#line 5017 "/src/php-src/Zend/zend_language_parser.c"
5017
19.6k
        break;
5018
5019
0
    case 370: /* encaps_var  */
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
716
    case 371: /* encaps_var_offset  */
5026
716
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5027
716
            { zend_ast_destroy(((*yyvaluep).ast)); }
5028
716
#line 5029 "/src/php-src/Zend/zend_language_parser.c"
5029
716
        break;
5030
5031
0
    case 372: /* internal_functions_in_yacc  */
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
225
    case 373: /* isset_variables  */
5038
225
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5039
225
            { zend_ast_destroy(((*yyvaluep).ast)); }
5040
225
#line 5041 "/src/php-src/Zend/zend_language_parser.c"
5041
225
        break;
5042
5043
0
    case 374: /* isset_variable  */
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
807k
      default:
5050
807k
        break;
5051
1.05M
    }
5052
1.05M
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5053
1.05M
}
5054
5055
5056
5057
5058
/*----------.
5059
| yyparse.  |
5060
`----------*/
5061
5062
int
5063
yyparse (void)
5064
147k
{
5065
/* The lookahead symbol.  */
5066
147k
int yychar;
5067
5068
5069
/* The semantic value of the lookahead symbol.  */
5070
/* Default value used for initialization, for pacifying older GCCs
5071
   or non-GCC compilers.  */
5072
147k
YY_INITIAL_VALUE (static YYSTYPE yyval_default;)
5073
147k
YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
5074
5075
    /* Number of syntax errors so far.  */
5076
147k
    int yynerrs;
5077
5078
147k
    yy_state_fast_t yystate;
5079
    /* Number of tokens to shift before error messages enabled.  */
5080
147k
    int yyerrstatus;
5081
5082
    /* The stacks and their tools:
5083
       'yyss': related to states.
5084
       'yyvs': related to semantic values.
5085
5086
       Refer to the stacks through separate pointers, to allow yyoverflow
5087
       to reallocate them elsewhere.  */
5088
5089
    /* The state stack.  */
5090
147k
    yy_state_t yyssa[YYINITDEPTH];
5091
147k
    yy_state_t *yyss;
5092
147k
    yy_state_t *yyssp;
5093
5094
    /* The semantic value stack.  */
5095
147k
    YYSTYPE yyvsa[YYINITDEPTH];
5096
147k
    YYSTYPE *yyvs;
5097
147k
    YYSTYPE *yyvsp;
5098
5099
147k
    YYPTRDIFF_T yystacksize;
5100
5101
147k
  int yyn;
5102
147k
  int yyresult;
5103
  /* Lookahead token as an internal (translated) token number.  */
5104
147k
  int yytoken = 0;
5105
  /* The variables used to return semantic value and location from the
5106
     action routines.  */
5107
147k
  YYSTYPE yyval;
5108
5109
147k
#if YYERROR_VERBOSE
5110
  /* Buffer for error messages, and its allocated size.  */
5111
147k
  char yymsgbuf[128];
5112
147k
  char *yymsg = yymsgbuf;
5113
147k
  YYPTRDIFF_T yymsg_alloc = sizeof yymsgbuf;
5114
147k
#endif
5115
5116
26.2M
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
5117
5118
  /* The number of symbols on the RHS of the reduced rule.
5119
     Keep to zero when no symbol should be popped.  */
5120
147k
  int yylen = 0;
5121
5122
147k
  yyssp = yyss = yyssa;
5123
147k
  yyvsp = yyvs = yyvsa;
5124
147k
  yystacksize = YYINITDEPTH;
5125
5126
147k
  YYDPRINTF ((stderr, "Starting parse\n"));
5127
5128
147k
  yystate = 0;
5129
147k
  yyerrstatus = 0;
5130
147k
  yynerrs = 0;
5131
147k
  yychar = YYEMPTY; /* Cause a token to be read.  */
5132
147k
  goto yysetstate;
5133
5134
5135
/*------------------------------------------------------------.
5136
| yynewstate -- push a new state, which is found in yystate.  |
5137
`------------------------------------------------------------*/
5138
37.3M
yynewstate:
5139
  /* In all cases, when you get here, the value and location stacks
5140
     have just been pushed.  So pushing a state here evens the stacks.  */
5141
37.3M
  yyssp++;
5142
5143
5144
/*--------------------------------------------------------------------.
5145
| yysetstate -- set current state (the top of the stack) to yystate.  |
5146
`--------------------------------------------------------------------*/
5147
37.5M
yysetstate:
5148
37.5M
  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
5149
37.5M
  YY_ASSERT (0 <= yystate && yystate < YYNSTATES);
5150
37.5M
  YY_IGNORE_USELESS_CAST_BEGIN
5151
37.5M
  *yyssp = YY_CAST (yy_state_t, yystate);
5152
37.5M
  YY_IGNORE_USELESS_CAST_END
5153
5154
37.5M
  if (yyss + yystacksize - 1 <= yyssp)
5155
#if !defined yyoverflow && !defined YYSTACK_RELOCATE
5156
    goto yyexhaustedlab;
5157
#else
5158
2.37k
    {
5159
      /* Get the current used size of the three stacks, in elements.  */
5160
2.37k
      YYPTRDIFF_T yysize = yyssp - yyss + 1;
5161
5162
# if defined yyoverflow
5163
      {
5164
        /* Give user a chance to reallocate the stack.  Use copies of
5165
           these so that the &'s don't force the real ones into
5166
           memory.  */
5167
        yy_state_t *yyss1 = yyss;
5168
        YYSTYPE *yyvs1 = yyvs;
5169
5170
        /* Each stack pointer address is followed by the size of the
5171
           data in use in that stack, in bytes.  This used to be a
5172
           conditional around just the two extra args, but that might
5173
           be undefined if yyoverflow is a macro.  */
5174
        yyoverflow (YY_("memory exhausted"),
5175
                    &yyss1, yysize * YYSIZEOF (*yyssp),
5176
                    &yyvs1, yysize * YYSIZEOF (*yyvsp),
5177
                    &yystacksize);
5178
        yyss = yyss1;
5179
        yyvs = yyvs1;
5180
      }
5181
# else /* defined YYSTACK_RELOCATE */
5182
      /* Extend the stack our own way.  */
5183
2.37k
      if (YYMAXDEPTH <= yystacksize)
5184
1
        goto yyexhaustedlab;
5185
2.37k
      yystacksize *= 2;
5186
2.37k
      if (YYMAXDEPTH < yystacksize)
5187
6
        yystacksize = YYMAXDEPTH;
5188
5189
2.37k
      {
5190
2.37k
        yy_state_t *yyss1 = yyss;
5191
2.37k
        union yyalloc *yyptr =
5192
2.37k
          YY_CAST (union yyalloc *,
5193
2.37k
                   YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
5194
2.37k
        if (! yyptr)
5195
0
          goto yyexhaustedlab;
5196
2.37k
        YYSTACK_RELOCATE (yyss_alloc, yyss);
5197
2.37k
        YYSTACK_RELOCATE (yyvs_alloc, yyvs);
5198
2.37k
# undef YYSTACK_RELOCATE
5199
2.37k
        if (yyss1 != yyssa)
5200
1.23k
          YYSTACK_FREE (yyss1);
5201
2.37k
      }
5202
0
# endif
5203
5204
0
      yyssp = yyss + yysize - 1;
5205
2.37k
      yyvsp = yyvs + yysize - 1;
5206
5207
2.37k
      YY_IGNORE_USELESS_CAST_BEGIN
5208
2.37k
      YYDPRINTF ((stderr, "Stack size increased to %ld\n",
5209
2.37k
                  YY_CAST (long, yystacksize)));
5210
2.37k
      YY_IGNORE_USELESS_CAST_END
5211
5212
2.37k
      if (yyss + yystacksize - 1 <= yyssp)
5213
0
        YYABORT;
5214
2.37k
    }
5215
37.5M
#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
5216
5217
37.5M
  if (yystate == YYFINAL)
5218
102k
    YYACCEPT;
5219
5220
37.4M
  goto yybackup;
5221
5222
5223
/*-----------.
5224
| yybackup.  |
5225
`-----------*/
5226
37.4M
yybackup:
5227
  /* Do appropriate processing given the current state.  Read a
5228
     lookahead token if we need one and don't already have one.  */
5229
5230
  /* First try to decide what to do without reference to lookahead token.  */
5231
37.4M
  yyn = yypact[yystate];
5232
37.4M
  if (yypact_value_is_default (yyn))
5233
15.3M
    goto yydefault;
5234
5235
  /* Not known => get a lookahead token if don't already have one.  */
5236
5237
  /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
5238
22.0M
  if (yychar == YYEMPTY)
5239
12.2M
    {
5240
12.2M
      YYDPRINTF ((stderr, "Reading a token: "));
5241
12.2M
      yychar = yylex (&yylval);
5242
12.2M
    }
5243
5244
22.0M
  if (yychar <= YYEOF)
5245
227k
    {
5246
227k
      yychar = yytoken = YYEOF;
5247
227k
      YYDPRINTF ((stderr, "Now at end of input.\n"));
5248
227k
    }
5249
21.8M
  else
5250
21.8M
    {
5251
21.8M
      yytoken = YYTRANSLATE (yychar);
5252
21.8M
      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
5253
21.8M
    }
5254
5255
  /* If the proper action on seeing token YYTOKEN is to reduce or to
5256
     detect an error, take that action.  */
5257
22.0M
  yyn += yytoken;
5258
22.0M
  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
5259
9.32M
    goto yydefault;
5260
12.7M
  yyn = yytable[yyn];
5261
12.7M
  if (yyn <= 0)
5262
492k
    {
5263
492k
      if (yytable_value_is_error (yyn))
5264
171
        goto yyerrlab;
5265
492k
      yyn = -yyn;
5266
492k
      goto yyreduce;
5267
492k
    }
5268
5269
  /* Count tokens shifted since error; after three, turn off error
5270
     status.  */
5271
12.2M
  if (yyerrstatus)
5272
0
    yyerrstatus--;
5273
5274
  /* Shift the lookahead token.  */
5275
12.2M
  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
5276
12.2M
  yystate = yyn;
5277
12.2M
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
5278
12.2M
  *++yyvsp = yylval;
5279
12.2M
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5280
5281
  /* Discard the shifted token.  */
5282
12.2M
  yychar = YYEMPTY;
5283
12.2M
  goto yynewstate;
5284
5285
5286
/*-----------------------------------------------------------.
5287
| yydefault -- do the default action for the current state.  |
5288
`-----------------------------------------------------------*/
5289
24.6M
yydefault:
5290
24.6M
  yyn = yydefact[yystate];
5291
24.6M
  if (yyn == 0)
5292
44.8k
    goto yyerrlab;
5293
24.6M
  goto yyreduce;
5294
5295
5296
/*-----------------------------.
5297
| yyreduce -- do a reduction.  |
5298
`-----------------------------*/
5299
25.1M
yyreduce:
5300
  /* yyn is the number of a rule to reduce with.  */
5301
25.1M
  yylen = yyr2[yyn];
5302
5303
  /* If YYLEN is nonzero, implement the default value of the action:
5304
     '$$ = $1'.
5305
5306
     Otherwise, the following line sets YYVAL to garbage.
5307
     This behavior is undocumented and Bison
5308
     users should not rely upon it.  Assigning to YYVAL
5309
     unconditionally makes the parser a bit smaller, and it avoids a
5310
     GCC warning that YYVAL may be used uninitialized.  */
5311
25.1M
  yyval = yyvsp[1-yylen];
5312
5313
5314
25.1M
  YY_REDUCE_PRINT (yyn);
5315
25.1M
  switch (yyn)
5316
25.1M
    {
5317
103k
  case 2:
5318
103k
#line 304 "/src/php-src/Zend/zend_language_parser.y"
5319
103k
                                { CG(ast) = (yyvsp[0].ast); (void) zendnerrs; }
5320
103k
#line 5321 "/src/php-src/Zend/zend_language_parser.c"
5321
103k
    break;
5322
5323
99.1k
  case 84:
5324
99.1k
#line 329 "/src/php-src/Zend/zend_language_parser.y"
5325
99.1k
                         { (yyval.ast) = (yyvsp[0].ast); }
5326
99.1k
#line 5327 "/src/php-src/Zend/zend_language_parser.c"
5327
99.1k
    break;
5328
5329
13.2k
  case 85:
5330
13.2k
#line 330 "/src/php-src/Zend/zend_language_parser.y"
5331
13.2k
                               {
5332
13.2k
      zval zv;
5333
13.2k
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5334
13.2k
      (yyval.ast) = zend_ast_create_zval(&zv);
5335
13.2k
    }
5336
0
#line 5337 "/src/php-src/Zend/zend_language_parser.c"
5337
0
    break;
5338
5339
783k
  case 86:
5340
783k
#line 338 "/src/php-src/Zend/zend_language_parser.y"
5341
783k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5342
783k
#line 5343 "/src/php-src/Zend/zend_language_parser.c"
5343
783k
    break;
5344
5345
149k
  case 87:
5346
149k
#line 339 "/src/php-src/Zend/zend_language_parser.y"
5347
149k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5348
149k
#line 5349 "/src/php-src/Zend/zend_language_parser.c"
5349
149k
    break;
5350
5351
4.70k
  case 88:
5352
4.70k
#line 344 "/src/php-src/Zend/zend_language_parser.y"
5353
4.70k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5354
4.70k
#line 5355 "/src/php-src/Zend/zend_language_parser.c"
5355
4.70k
    break;
5356
5357
457
  case 89:
5358
457
#line 345 "/src/php-src/Zend/zend_language_parser.y"
5359
457
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5360
457
#line 5361 "/src/php-src/Zend/zend_language_parser.c"
5361
457
    break;
5362
5363
3.93k
  case 90:
5364
3.93k
#line 350 "/src/php-src/Zend/zend_language_parser.y"
5365
3.93k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5366
3.93k
#line 5367 "/src/php-src/Zend/zend_language_parser.c"
5367
3.93k
    break;
5368
5369
1.06k
  case 91:
5370
1.06k
#line 351 "/src/php-src/Zend/zend_language_parser.y"
5371
1.06k
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5372
1.06k
#line 5373 "/src/php-src/Zend/zend_language_parser.c"
5373
1.06k
    break;
5374
5375
3.12k
  case 92:
5376
3.12k
#line 356 "/src/php-src/Zend/zend_language_parser.y"
5377
3.12k
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5378
3.12k
#line 5379 "/src/php-src/Zend/zend_language_parser.c"
5379
3.12k
    break;
5380
5381
518
  case 93:
5382
518
#line 357 "/src/php-src/Zend/zend_language_parser.y"
5383
518
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5384
518
#line 5385 "/src/php-src/Zend/zend_language_parser.c"
5385
518
    break;
5386
5387
959k
  case 94:
5388
959k
#line 361 "/src/php-src/Zend/zend_language_parser.y"
5389
959k
                                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5390
959k
#line 5391 "/src/php-src/Zend/zend_language_parser.c"
5391
959k
    break;
5392
5393
4.23k
  case 95:
5394
4.23k
#line 362 "/src/php-src/Zend/zend_language_parser.y"
5395
4.23k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5396
4.23k
#line 5397 "/src/php-src/Zend/zend_language_parser.c"
5397
4.23k
    break;
5398
5399
14.6k
  case 96:
5400
14.6k
#line 363 "/src/php-src/Zend/zend_language_parser.y"
5401
14.6k
                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_FQ; }
5402
14.6k
#line 5403 "/src/php-src/Zend/zend_language_parser.c"
5403
14.6k
    break;
5404
5405
1.16k
  case 97:
5406
1.16k
#line 364 "/src/php-src/Zend/zend_language_parser.y"
5407
1.16k
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_RELATIVE; }
5408
1.16k
#line 5409 "/src/php-src/Zend/zend_language_parser.c"
5409
1.16k
    break;
5410
5411
25.2k
  case 98:
5412
25.2k
#line 369 "/src/php-src/Zend/zend_language_parser.y"
5413
25.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[0].ast), NULL); }
5414
25.2k
#line 5415 "/src/php-src/Zend/zend_language_parser.c"
5415
25.2k
    break;
5416
5417
4.13k
  case 99:
5418
4.13k
#line 371 "/src/php-src/Zend/zend_language_parser.y"
5419
4.13k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[-1].ast), (yyvsp[0].ast)); }
5420
4.13k
#line 5421 "/src/php-src/Zend/zend_language_parser.c"
5421
4.13k
    break;
5422
5423
12.9k
  case 100:
5424
12.9k
#line 376 "/src/php-src/Zend/zend_language_parser.y"
5425
12.9k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_GROUP, (yyvsp[0].ast)); }
5426
12.9k
#line 5427 "/src/php-src/Zend/zend_language_parser.c"
5427
12.9k
    break;
5428
5429
16.5k
  case 101:
5430
16.5k
#line 378 "/src/php-src/Zend/zend_language_parser.y"
5431
16.5k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5432
16.5k
#line 5433 "/src/php-src/Zend/zend_language_parser.c"
5433
16.5k
    break;
5434
5435
12.8k
  case 102:
5436
12.8k
#line 382 "/src/php-src/Zend/zend_language_parser.y"
5437
12.8k
                                                                { (yyval.ast) = (yyvsp[-2].ast); }
5438
12.8k
#line 5439 "/src/php-src/Zend/zend_language_parser.c"
5439
12.8k
    break;
5440
5441
10.4k
  case 103:
5442
10.4k
#line 386 "/src/php-src/Zend/zend_language_parser.y"
5443
10.4k
                                                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_LIST, (yyvsp[0].ast)); }
5444
10.4k
#line 5445 "/src/php-src/Zend/zend_language_parser.c"
5445
10.4k
    break;
5446
5447
2.31k
  case 104:
5448
2.31k
#line 387 "/src/php-src/Zend/zend_language_parser.y"
5449
2.31k
                                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5450
2.31k
#line 5451 "/src/php-src/Zend/zend_language_parser.c"
5451
2.31k
    break;
5452
5453
17.9k
  case 105:
5454
17.9k
#line 391 "/src/php-src/Zend/zend_language_parser.y"
5455
17.9k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5456
17.9k
#line 5457 "/src/php-src/Zend/zend_language_parser.c"
5457
17.9k
    break;
5458
5459
41.2k
  case 106:
5460
41.2k
#line 392 "/src/php-src/Zend/zend_language_parser.y"
5461
41.2k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5462
41.2k
#line 5463 "/src/php-src/Zend/zend_language_parser.c"
5463
41.2k
    break;
5464
5465
2.87k
  case 107:
5466
2.87k
#line 393 "/src/php-src/Zend/zend_language_parser.y"
5467
2.87k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5468
2.87k
#line 5469 "/src/php-src/Zend/zend_language_parser.c"
5469
2.87k
    break;
5470
5471
3.29k
  case 108:
5472
3.29k
#line 394 "/src/php-src/Zend/zend_language_parser.y"
5473
3.29k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5474
3.29k
#line 5475 "/src/php-src/Zend/zend_language_parser.c"
5475
3.29k
    break;
5476
5477
5.36k
  case 109:
5478
5.36k
#line 395 "/src/php-src/Zend/zend_language_parser.y"
5479
5.36k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5480
5.36k
#line 5481 "/src/php-src/Zend/zend_language_parser.c"
5481
5.36k
    break;
5482
5483
64.9k
  case 110:
5484
64.9k
#line 399 "/src/php-src/Zend/zend_language_parser.y"
5485
64.9k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5486
64.9k
#line 5487 "/src/php-src/Zend/zend_language_parser.c"
5487
64.9k
    break;
5488
5489
5.33k
  case 111:
5490
5.33k
#line 400 "/src/php-src/Zend/zend_language_parser.y"
5491
5.33k
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5492
5.33k
#line 5493 "/src/php-src/Zend/zend_language_parser.c"
5493
5.33k
    break;
5494
5495
704k
  case 112:
5496
704k
#line 404 "/src/php-src/Zend/zend_language_parser.y"
5497
704k
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5498
704k
#line 5499 "/src/php-src/Zend/zend_language_parser.c"
5499
704k
    break;
5500
5501
67.2k
  case 113:
5502
67.2k
#line 405 "/src/php-src/Zend/zend_language_parser.y"
5503
67.2k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5504
67.2k
#line 5505 "/src/php-src/Zend/zend_language_parser.c"
5505
67.2k
    break;
5506
5507
2.99k
  case 114:
5508
2.99k
#line 406 "/src/php-src/Zend/zend_language_parser.y"
5509
2.99k
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5510
2.99k
#line 5511 "/src/php-src/Zend/zend_language_parser.c"
5511
2.99k
    break;
5512
5513
69
  case 115:
5514
69
#line 408 "/src/php-src/Zend/zend_language_parser.y"
5515
69
                        { (yyval.ast) = zend_ast_create(ZEND_AST_HALT_COMPILER,
5516
69
            zend_ast_create_zval_from_long(zend_get_scanned_file_offset()));
5517
69
        zend_stop_lexing(); }
5518
69
#line 5519 "/src/php-src/Zend/zend_language_parser.c"
5519
69
    break;
5520
5521
3.49k
  case 116:
5522
3.49k
#line 412 "/src/php-src/Zend/zend_language_parser.y"
5523
3.49k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-1].ast), NULL);
5524
3.49k
        RESET_DOC_COMMENT(); }
5525
3.49k
#line 5526 "/src/php-src/Zend/zend_language_parser.c"
5526
3.49k
    break;
5527
5528
1.66k
  case 117:
5529
1.66k
#line 414 "/src/php-src/Zend/zend_language_parser.y"
5530
1.66k
                                                       { RESET_DOC_COMMENT(); }
5531
1.66k
#line 5532 "/src/php-src/Zend/zend_language_parser.c"
5532
1.66k
    break;
5533
5534
1.48k
  case 118:
5535
1.48k
#line 416 "/src/php-src/Zend/zend_language_parser.y"
5536
1.48k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
5537
1.48k
#line 5538 "/src/php-src/Zend/zend_language_parser.c"
5538
1.48k
    break;
5539
5540
891
  case 119:
5541
891
#line 417 "/src/php-src/Zend/zend_language_parser.y"
5542
891
                            { RESET_DOC_COMMENT(); }
5543
891
#line 5544 "/src/php-src/Zend/zend_language_parser.c"
5544
891
    break;
5545
5546
741
  case 120:
5547
741
#line 419 "/src/php-src/Zend/zend_language_parser.y"
5548
741
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, NULL, (yyvsp[-1].ast)); }
5549
741
#line 5550 "/src/php-src/Zend/zend_language_parser.c"
5550
741
    break;
5551
5552
359
  case 121:
5553
359
#line 420 "/src/php-src/Zend/zend_language_parser.y"
5554
359
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5555
359
#line 5556 "/src/php-src/Zend/zend_language_parser.c"
5556
359
    break;
5557
5558
80
  case 122:
5559
80
#line 421 "/src/php-src/Zend/zend_language_parser.y"
5560
80
                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5561
80
#line 5562 "/src/php-src/Zend/zend_language_parser.c"
5562
80
    break;
5563
5564
1.20k
  case 123:
5565
1.20k
#line 422 "/src/php-src/Zend/zend_language_parser.y"
5566
1.20k
                                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5567
1.20k
#line 5568 "/src/php-src/Zend/zend_language_parser.c"
5568
1.20k
    break;
5569
5570
665
  case 124:
5571
665
#line 423 "/src/php-src/Zend/zend_language_parser.y"
5572
665
                                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5573
665
#line 5574 "/src/php-src/Zend/zend_language_parser.c"
5574
665
    break;
5575
5576
758
  case 125:
5577
758
#line 427 "/src/php-src/Zend/zend_language_parser.y"
5578
758
                                        { (yyval.num) = ZEND_SYMBOL_FUNCTION; }
5579
758
#line 5580 "/src/php-src/Zend/zend_language_parser.c"
5580
758
    break;
5581
5582
455
  case 126:
5583
455
#line 428 "/src/php-src/Zend/zend_language_parser.y"
5584
455
                                        { (yyval.num) = ZEND_SYMBOL_CONST; }
5585
455
#line 5586 "/src/php-src/Zend/zend_language_parser.c"
5586
455
    break;
5587
5588
84
  case 127:
5589
84
#line 433 "/src/php-src/Zend/zend_language_parser.y"
5590
84
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5591
84
#line 5592 "/src/php-src/Zend/zend_language_parser.c"
5592
84
    break;
5593
5594
363
  case 128:
5595
363
#line 438 "/src/php-src/Zend/zend_language_parser.y"
5596
363
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast));}
5597
363
#line 5598 "/src/php-src/Zend/zend_language_parser.c"
5598
363
    break;
5599
5600
1.03k
  case 131:
5601
1.03k
#line 448 "/src/php-src/Zend/zend_language_parser.y"
5602
1.03k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5603
1.03k
#line 5604 "/src/php-src/Zend/zend_language_parser.c"
5604
1.03k
    break;
5605
5606
397
  case 132:
5607
397
#line 450 "/src/php-src/Zend/zend_language_parser.y"
5608
397
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5609
397
#line 5610 "/src/php-src/Zend/zend_language_parser.c"
5610
397
    break;
5611
5612
338
  case 133:
5613
338
#line 455 "/src/php-src/Zend/zend_language_parser.y"
5614
338
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5615
338
#line 5616 "/src/php-src/Zend/zend_language_parser.c"
5616
338
    break;
5617
5618
105
  case 134:
5619
105
#line 457 "/src/php-src/Zend/zend_language_parser.y"
5620
105
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5621
105
#line 5622 "/src/php-src/Zend/zend_language_parser.c"
5622
105
    break;
5623
5624
1.20k
  case 135:
5625
1.20k
#line 462 "/src/php-src/Zend/zend_language_parser.y"
5626
1.20k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5627
1.20k
#line 5628 "/src/php-src/Zend/zend_language_parser.c"
5628
1.20k
    break;
5629
5630
1.90k
  case 136:
5631
1.90k
#line 464 "/src/php-src/Zend/zend_language_parser.y"
5632
1.90k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5633
1.90k
#line 5634 "/src/php-src/Zend/zend_language_parser.c"
5634
1.90k
    break;
5635
5636
1.00k
  case 137:
5637
1.00k
#line 468 "/src/php-src/Zend/zend_language_parser.y"
5638
1.00k
                                           { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5639
1.00k
#line 5640 "/src/php-src/Zend/zend_language_parser.c"
5640
1.00k
    break;
5641
5642
427
  case 138:
5643
427
#line 469 "/src/php-src/Zend/zend_language_parser.y"
5644
427
                                                    { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = (yyvsp[-1].num); }
5645
427
#line 5646 "/src/php-src/Zend/zend_language_parser.c"
5646
427
    break;
5647
5648
1.56k
  case 139:
5649
1.56k
#line 474 "/src/php-src/Zend/zend_language_parser.y"
5650
1.56k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5651
1.56k
#line 5652 "/src/php-src/Zend/zend_language_parser.c"
5652
1.56k
    break;
5653
5654
309
  case 140:
5655
309
#line 476 "/src/php-src/Zend/zend_language_parser.y"
5656
309
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5657
309
#line 5658 "/src/php-src/Zend/zend_language_parser.c"
5658
309
    break;
5659
5660
2.66k
  case 141:
5661
2.66k
#line 481 "/src/php-src/Zend/zend_language_parser.y"
5662
2.66k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5663
2.66k
#line 5664 "/src/php-src/Zend/zend_language_parser.c"
5664
2.66k
    break;
5665
5666
441
  case 142:
5667
441
#line 483 "/src/php-src/Zend/zend_language_parser.y"
5668
441
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5669
441
#line 5670 "/src/php-src/Zend/zend_language_parser.c"
5670
441
    break;
5671
5672
1.47k
  case 143:
5673
1.47k
#line 487 "/src/php-src/Zend/zend_language_parser.y"
5674
1.47k
                                          { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5675
1.47k
#line 5676 "/src/php-src/Zend/zend_language_parser.c"
5676
1.47k
    break;
5677
5678
7.57k
  case 144:
5679
7.57k
#line 488 "/src/php-src/Zend/zend_language_parser.y"
5680
7.57k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CONST_DECL, (yyvsp[0].ast)); }
5681
7.57k
#line 5682 "/src/php-src/Zend/zend_language_parser.c"
5682
7.57k
    break;
5683
5684
330k
  case 145:
5685
330k
#line 493 "/src/php-src/Zend/zend_language_parser.y"
5686
330k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5687
330k
#line 5688 "/src/php-src/Zend/zend_language_parser.c"
5688
330k
    break;
5689
5690
252k
  case 146:
5691
252k
#line 495 "/src/php-src/Zend/zend_language_parser.y"
5692
252k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5693
252k
#line 5694 "/src/php-src/Zend/zend_language_parser.c"
5694
252k
    break;
5695
5696
324k
  case 147:
5697
324k
#line 500 "/src/php-src/Zend/zend_language_parser.y"
5698
324k
                          { (yyval.ast) = (yyvsp[0].ast); }
5699
324k
#line 5700 "/src/php-src/Zend/zend_language_parser.c"
5700
324k
    break;
5701
5702
5.50k
  case 148:
5703
5.50k
#line 501 "/src/php-src/Zend/zend_language_parser.y"
5704
5.50k
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5705
5.50k
#line 5706 "/src/php-src/Zend/zend_language_parser.c"
5706
5.50k
    break;
5707
5708
304
  case 149:
5709
304
#line 502 "/src/php-src/Zend/zend_language_parser.y"
5710
304
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5711
304
#line 5712 "/src/php-src/Zend/zend_language_parser.c"
5712
304
    break;
5713
5714
13
  case 150:
5715
13
#line 504 "/src/php-src/Zend/zend_language_parser.y"
5716
13
                        { (yyval.ast) = NULL; zend_throw_exception(zend_ce_compile_error,
5717
13
            "__HALT_COMPILER() can only be used from the outermost scope", 0); YYERROR; }
5718
0
#line 5719 "/src/php-src/Zend/zend_language_parser.c"
5719
0
    break;
5720
5721
48.8k
  case 151:
5722
48.8k
#line 510 "/src/php-src/Zend/zend_language_parser.y"
5723
48.8k
                                             { (yyval.ast) = (yyvsp[-1].ast); }
5724
48.8k
#line 5725 "/src/php-src/Zend/zend_language_parser.c"
5725
48.8k
    break;
5726
5727
20.6k
  case 152:
5728
20.6k
#line 511 "/src/php-src/Zend/zend_language_parser.y"
5729
20.6k
                        { (yyval.ast) = (yyvsp[0].ast); }
5730
20.6k
#line 5731 "/src/php-src/Zend/zend_language_parser.c"
5731
20.6k
    break;
5732
5733
91
  case 153:
5734
91
#line 512 "/src/php-src/Zend/zend_language_parser.y"
5735
91
                            { (yyval.ast) = (yyvsp[0].ast); }
5736
91
#line 5737 "/src/php-src/Zend/zend_language_parser.c"
5737
91
    break;
5738
5739
1.21k
  case 154:
5740
1.21k
#line 514 "/src/php-src/Zend/zend_language_parser.y"
5741
1.21k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_WHILE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5742
1.21k
#line 5743 "/src/php-src/Zend/zend_language_parser.c"
5743
1.21k
    break;
5744
5745
558
  case 155:
5746
558
#line 516 "/src/php-src/Zend/zend_language_parser.y"
5747
558
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DO_WHILE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5748
558
#line 5749 "/src/php-src/Zend/zend_language_parser.c"
5749
558
    break;
5750
5751
19.3k
  case 156:
5752
19.3k
#line 518 "/src/php-src/Zend/zend_language_parser.y"
5753
19.3k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOR, (yyvsp[-6].ast), (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
5754
19.3k
#line 5755 "/src/php-src/Zend/zend_language_parser.c"
5755
19.3k
    break;
5756
5757
1.85k
  case 157:
5758
1.85k
#line 520 "/src/php-src/Zend/zend_language_parser.y"
5759
1.85k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_SWITCH, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5760
1.85k
#line 5761 "/src/php-src/Zend/zend_language_parser.c"
5761
1.85k
    break;
5762
5763
1.34k
  case 158:
5764
1.34k
#line 521 "/src/php-src/Zend/zend_language_parser.y"
5765
1.34k
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_BREAK, (yyvsp[-1].ast)); }
5766
1.34k
#line 5767 "/src/php-src/Zend/zend_language_parser.c"
5767
1.34k
    break;
5768
5769
990
  case 159:
5770
990
#line 522 "/src/php-src/Zend/zend_language_parser.y"
5771
990
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONTINUE, (yyvsp[-1].ast)); }
5772
990
#line 5773 "/src/php-src/Zend/zend_language_parser.c"
5773
990
    break;
5774
5775
16.3k
  case 160:
5776
16.3k
#line 523 "/src/php-src/Zend/zend_language_parser.y"
5777
16.3k
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_RETURN, (yyvsp[-1].ast)); }
5778
16.3k
#line 5779 "/src/php-src/Zend/zend_language_parser.c"
5779
16.3k
    break;
5780
5781
1.35k
  case 161:
5782
1.35k
#line 524 "/src/php-src/Zend/zend_language_parser.y"
5783
1.35k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5784
1.35k
#line 5785 "/src/php-src/Zend/zend_language_parser.c"
5785
1.35k
    break;
5786
5787
1.25k
  case 162:
5788
1.25k
#line 525 "/src/php-src/Zend/zend_language_parser.y"
5789
1.25k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5790
1.25k
#line 5791 "/src/php-src/Zend/zend_language_parser.c"
5791
1.25k
    break;
5792
5793
55.9k
  case 163:
5794
55.9k
#line 526 "/src/php-src/Zend/zend_language_parser.y"
5795
55.9k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
5796
55.9k
#line 5797 "/src/php-src/Zend/zend_language_parser.c"
5797
55.9k
    break;
5798
5799
122k
  case 164:
5800
122k
#line 527 "/src/php-src/Zend/zend_language_parser.y"
5801
122k
                              { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
5802
122k
#line 5803 "/src/php-src/Zend/zend_language_parser.c"
5803
122k
    break;
5804
5805
508k
  case 165:
5806
508k
#line 528 "/src/php-src/Zend/zend_language_parser.y"
5807
508k
                         { (yyval.ast) = (yyvsp[-1].ast); }
5808
508k
#line 5809 "/src/php-src/Zend/zend_language_parser.c"
5809
508k
    break;
5810
5811
5.36k
  case 166:
5812
5.36k
#line 529 "/src/php-src/Zend/zend_language_parser.y"
5813
5.36k
                                                                   { (yyval.ast) = (yyvsp[-3].ast); }
5814
5.36k
#line 5815 "/src/php-src/Zend/zend_language_parser.c"
5815
5.36k
    break;
5816
5817
17.1k
  case 167:
5818
17.1k
#line 531 "/src/php-src/Zend/zend_language_parser.y"
5819
17.1k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-4].ast), (yyvsp[-2].ast), NULL, (yyvsp[0].ast)); }
5820
17.1k
#line 5821 "/src/php-src/Zend/zend_language_parser.c"
5821
17.1k
    break;
5822
5823
1.58k
  case 168:
5824
1.58k
#line 534 "/src/php-src/Zend/zend_language_parser.y"
5825
1.58k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-4].ast), (yyvsp[0].ast)); }
5826
1.58k
#line 5827 "/src/php-src/Zend/zend_language_parser.c"
5827
1.58k
    break;
5828
5829
2.22k
  case 169:
5830
2.22k
#line 536 "/src/php-src/Zend/zend_language_parser.y"
5831
2.22k
                        { if (!zend_handle_encoding_declaration((yyvsp[-1].ast))) { YYERROR; } }
5832
2.20k
#line 5833 "/src/php-src/Zend/zend_language_parser.c"
5833
2.20k
    break;
5834
5835
2.20k
  case 170:
5836
1.78k
#line 538 "/src/php-src/Zend/zend_language_parser.y"
5837
1.78k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DECLARE, (yyvsp[-3].ast), (yyvsp[0].ast)); }
5838
1.78k
#line 5839 "/src/php-src/Zend/zend_language_parser.c"
5839
1.78k
    break;
5840
5841
220k
  case 171:
5842
220k
#line 539 "/src/php-src/Zend/zend_language_parser.y"
5843
220k
                                              { (yyval.ast) = NULL; }
5844
220k
#line 5845 "/src/php-src/Zend/zend_language_parser.c"
5845
220k
    break;
5846
5847
44.4k
  case 172:
5848
44.4k
#line 541 "/src/php-src/Zend/zend_language_parser.y"
5849
44.4k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRY, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
5850
44.4k
#line 5851 "/src/php-src/Zend/zend_language_parser.c"
5851
44.4k
    break;
5852
5853
2.04k
  case 173:
5854
2.04k
#line 542 "/src/php-src/Zend/zend_language_parser.y"
5855
2.04k
                                    { (yyval.ast) = zend_ast_create(ZEND_AST_GOTO, (yyvsp[-1].ast)); }
5856
2.04k
#line 5857 "/src/php-src/Zend/zend_language_parser.c"
5857
2.04k
    break;
5858
5859
2.10k
  case 174:
5860
2.10k
#line 543 "/src/php-src/Zend/zend_language_parser.y"
5861
2.10k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_LABEL, (yyvsp[-1].ast)); }
5862
2.10k
#line 5863 "/src/php-src/Zend/zend_language_parser.c"
5863
2.10k
    break;
5864
5865
458
  case 175:
5866
458
#line 544 "/src/php-src/Zend/zend_language_parser.y"
5867
458
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[-1].ast)); }
5868
458
#line 5869 "/src/php-src/Zend/zend_language_parser.c"
5869
458
    break;
5870
5871
44.8k
  case 176:
5872
44.8k
#line 549 "/src/php-src/Zend/zend_language_parser.y"
5873
44.8k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_CATCH_LIST); }
5874
44.8k
#line 5875 "/src/php-src/Zend/zend_language_parser.c"
5875
44.8k
    break;
5876
5877
48.1k
  case 177:
5878
48.1k
#line 551 "/src/php-src/Zend/zend_language_parser.y"
5879
48.1k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-8].ast), zend_ast_create(ZEND_AST_CATCH, (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast))); }
5880
48.1k
#line 5881 "/src/php-src/Zend/zend_language_parser.c"
5881
48.1k
    break;
5882
5883
48.3k
  case 178:
5884
48.3k
#line 555 "/src/php-src/Zend/zend_language_parser.y"
5885
48.3k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
5886
48.3k
#line 5887 "/src/php-src/Zend/zend_language_parser.c"
5887
48.3k
    break;
5888
5889
4.63k
  case 179:
5890
4.63k
#line 556 "/src/php-src/Zend/zend_language_parser.y"
5891
4.63k
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5892
4.63k
#line 5893 "/src/php-src/Zend/zend_language_parser.c"
5893
4.63k
    break;
5894
5895
10.3k
  case 180:
5896
10.3k
#line 560 "/src/php-src/Zend/zend_language_parser.y"
5897
10.3k
                       { (yyval.ast) = NULL; }
5898
10.3k
#line 5899 "/src/php-src/Zend/zend_language_parser.c"
5899
10.3k
    break;
5900
5901
37.9k
  case 181:
5902
37.9k
#line 561 "/src/php-src/Zend/zend_language_parser.y"
5903
37.9k
                           { (yyval.ast) = (yyvsp[0].ast); }
5904
37.9k
#line 5905 "/src/php-src/Zend/zend_language_parser.c"
5905
37.9k
    break;
5906
5907
42.5k
  case 182:
5908
42.5k
#line 565 "/src/php-src/Zend/zend_language_parser.y"
5909
42.5k
                       { (yyval.ast) = NULL; }
5910
42.5k
#line 5911 "/src/php-src/Zend/zend_language_parser.c"
5911
42.5k
    break;
5912
5913
1.91k
  case 183:
5914
1.91k
#line 566 "/src/php-src/Zend/zend_language_parser.y"
5915
1.91k
                                                       { (yyval.ast) = (yyvsp[-1].ast); }
5916
1.91k
#line 5917 "/src/php-src/Zend/zend_language_parser.c"
5917
1.91k
    break;
5918
5919
5.50k
  case 184:
5920
5.50k
#line 570 "/src/php-src/Zend/zend_language_parser.y"
5921
5.50k
                               { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
5922
5.50k
#line 5923 "/src/php-src/Zend/zend_language_parser.c"
5923
5.50k
    break;
5924
5925
990
  case 185:
5926
990
#line 571 "/src/php-src/Zend/zend_language_parser.y"
5927
990
                                                   { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5928
990
#line 5929 "/src/php-src/Zend/zend_language_parser.c"
5929
990
    break;
5930
5931
6.49k
  case 186:
5932
6.49k
#line 575 "/src/php-src/Zend/zend_language_parser.y"
5933
6.49k
                         { (yyval.ast) = zend_ast_create(ZEND_AST_UNSET, (yyvsp[0].ast)); }
5934
6.49k
#line 5935 "/src/php-src/Zend/zend_language_parser.c"
5935
6.49k
    break;
5936
5937
19.0k
  case 187:
5938
19.0k
#line 579 "/src/php-src/Zend/zend_language_parser.y"
5939
19.0k
                         { (yyval.ast) = (yyvsp[0].ast); }
5940
19.0k
#line 5941 "/src/php-src/Zend/zend_language_parser.c"
5941
19.0k
    break;
5942
5943
19
  case 188:
5944
19
#line 580 "/src/php-src/Zend/zend_language_parser.y"
5945
19
                           {
5946
19
      zval zv;
5947
19
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5948
19
      (yyval.ast) = zend_ast_create_zval(&zv);
5949
19
    }
5950
0
#line 5951 "/src/php-src/Zend/zend_language_parser.c"
5951
0
    break;
5952
5953
17.9k
  case 189:
5954
17.9k
#line 590 "/src/php-src/Zend/zend_language_parser.y"
5955
17.9k
                { (yyval.ast) = zend_ast_create_decl(ZEND_AST_FUNC_DECL, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-9].str),
5956
17.9k
          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); }
5957
17.9k
#line 5958 "/src/php-src/Zend/zend_language_parser.c"
5958
17.9k
    break;
5959
5960
50.1k
  case 190:
5961
50.1k
#line 595 "/src/php-src/Zend/zend_language_parser.y"
5962
50.1k
                        { (yyval.num) = 0; }
5963
50.1k
#line 5964 "/src/php-src/Zend/zend_language_parser.c"
5964
50.1k
    break;
5965
5966
3.57k
  case 191:
5967
3.57k
#line 596 "/src/php-src/Zend/zend_language_parser.y"
5968
3.57k
                                                        { (yyval.num) = ZEND_PARAM_REF; }
5969
3.57k
#line 5970 "/src/php-src/Zend/zend_language_parser.c"
5970
3.57k
    break;
5971
5972
52.9k
  case 192:
5973
52.9k
#line 600 "/src/php-src/Zend/zend_language_parser.y"
5974
52.9k
                       { (yyval.num) = 0; }
5975
52.9k
#line 5976 "/src/php-src/Zend/zend_language_parser.c"
5976
52.9k
    break;
5977
5978
830
  case 193:
5979
830
#line 601 "/src/php-src/Zend/zend_language_parser.y"
5980
830
                            { (yyval.num) = ZEND_PARAM_VARIADIC; }
5981
830
#line 5982 "/src/php-src/Zend/zend_language_parser.c"
5982
830
    break;
5983
5984
2.81k
  case 194:
5985
2.81k
#line 605 "/src/php-src/Zend/zend_language_parser.y"
5986
2.81k
                                        { (yyval.num) = CG(zend_lineno); }
5987
2.81k
#line 5988 "/src/php-src/Zend/zend_language_parser.c"
5988
2.81k
    break;
5989
5990
2.76k
  case 195:
5991
2.76k
#line 607 "/src/php-src/Zend/zend_language_parser.y"
5992
2.76k
                        { (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); }
5993
2.76k
#line 5994 "/src/php-src/Zend/zend_language_parser.c"
5994
2.76k
    break;
5995
5996
39.5k
  case 196:
5997
39.5k
#line 608 "/src/php-src/Zend/zend_language_parser.y"
5998
39.5k
                        { (yyval.num) = CG(zend_lineno); }
5999
39.5k
#line 6000 "/src/php-src/Zend/zend_language_parser.c"
6000
39.5k
    break;
6001
6002
38.4k
  case 197:
6003
38.4k
#line 610 "/src/php-src/Zend/zend_language_parser.y"
6004
38.4k
                        { (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); }
6005
38.4k
#line 6006 "/src/php-src/Zend/zend_language_parser.c"
6006
38.4k
    break;
6007
6008
2.89k
  case 198:
6009
2.89k
#line 614 "/src/php-src/Zend/zend_language_parser.y"
6010
2.89k
                                                                { (yyval.num) = (yyvsp[0].num); }
6011
2.89k
#line 6012 "/src/php-src/Zend/zend_language_parser.c"
6012
2.89k
    break;
6013
6014
148
  case 199:
6015
148
#line 616 "/src/php-src/Zend/zend_language_parser.y"
6016
148
                        { (yyval.num) = zend_add_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
6017
126
#line 6018 "/src/php-src/Zend/zend_language_parser.c"
6018
126
    break;
6019
6020
126
  case 200:
6021
84
#line 621 "/src/php-src/Zend/zend_language_parser.y"
6022
84
                        { (yyval.num) = zend_add_anonymous_class_modifier(0, (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
6023
72
#line 6024 "/src/php-src/Zend/zend_language_parser.c"
6024
72
    break;
6025
6026
72
  case 201:
6027
6
#line 623 "/src/php-src/Zend/zend_language_parser.y"
6028
6
                        { (yyval.num) = zend_add_anonymous_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
6029
0
#line 6030 "/src/php-src/Zend/zend_language_parser.c"
6030
0
    break;
6031
6032
2.98k
  case 202:
6033
2.98k
#line 627 "/src/php-src/Zend/zend_language_parser.y"
6034
2.98k
                                                { (yyval.num) = 0; }
6035
2.98k
#line 6036 "/src/php-src/Zend/zend_language_parser.c"
6036
2.98k
    break;
6037
6038
66
  case 203:
6039
66
#line 628 "/src/php-src/Zend/zend_language_parser.y"
6040
66
                                                { (yyval.num) = (yyvsp[0].num); }
6041
66
#line 6042 "/src/php-src/Zend/zend_language_parser.c"
6042
66
    break;
6043
6044
1.46k
  case 204:
6045
1.46k
#line 632 "/src/php-src/Zend/zend_language_parser.y"
6046
1.46k
                                        { (yyval.num) = ZEND_ACC_EXPLICIT_ABSTRACT_CLASS; }
6047
1.46k
#line 6048 "/src/php-src/Zend/zend_language_parser.c"
6048
1.46k
    break;
6049
6050
1.35k
  case 205:
6051
1.35k
#line 633 "/src/php-src/Zend/zend_language_parser.y"
6052
1.35k
                                        { (yyval.num) = ZEND_ACC_FINAL; }
6053
1.35k
#line 6054 "/src/php-src/Zend/zend_language_parser.c"
6054
1.35k
    break;
6055
6056
318
  case 206:
6057
318
#line 634 "/src/php-src/Zend/zend_language_parser.y"
6058
318
                                        { (yyval.num) = ZEND_ACC_READONLY_CLASS|ZEND_ACC_NO_DYNAMIC_PROPERTIES; }
6059
318
#line 6060 "/src/php-src/Zend/zend_language_parser.c"
6060
318
    break;
6061
6062
3.01k
  case 207:
6063
3.01k
#line 638 "/src/php-src/Zend/zend_language_parser.y"
6064
3.01k
                        { (yyval.num) = CG(zend_lineno); }
6065
3.01k
#line 6066 "/src/php-src/Zend/zend_language_parser.c"
6066
3.01k
    break;
6067
6068
2.87k
  case 208:
6069
2.87k
#line 640 "/src/php-src/Zend/zend_language_parser.y"
6070
2.87k
                        { (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); }
6071
2.87k
#line 6072 "/src/php-src/Zend/zend_language_parser.c"
6072
2.87k
    break;
6073
6074
3.42k
  case 209:
6075
3.42k
#line 644 "/src/php-src/Zend/zend_language_parser.y"
6076
3.42k
                            { (yyval.num) = CG(zend_lineno); }
6077
3.42k
#line 6078 "/src/php-src/Zend/zend_language_parser.c"
6078
3.42k
    break;
6079
6080
3.29k
  case 210:
6081
3.29k
#line 646 "/src/php-src/Zend/zend_language_parser.y"
6082
3.29k
                        { (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); }
6083
3.29k
#line 6084 "/src/php-src/Zend/zend_language_parser.c"
6084
3.29k
    break;
6085
6086
5.82k
  case 211:
6087
5.82k
#line 650 "/src/php-src/Zend/zend_language_parser.y"
6088
5.82k
                       { (yyval.num) = CG(zend_lineno); }
6089
5.82k
#line 6090 "/src/php-src/Zend/zend_language_parser.c"
6090
5.82k
    break;
6091
6092
5.36k
  case 212:
6093
5.36k
#line 652 "/src/php-src/Zend/zend_language_parser.y"
6094
5.36k
                        { (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)); }
6095
5.36k
#line 6096 "/src/php-src/Zend/zend_language_parser.c"
6096
5.36k
    break;
6097
6098
4.62k
  case 213:
6099
4.62k
#line 656 "/src/php-src/Zend/zend_language_parser.y"
6100
4.62k
                        { (yyval.ast) = NULL; }
6101
4.62k
#line 6102 "/src/php-src/Zend/zend_language_parser.c"
6102
4.62k
    break;
6103
6104
1.02k
  case 214:
6105
1.02k
#line 657 "/src/php-src/Zend/zend_language_parser.y"
6106
1.02k
                              { (yyval.ast) = (yyvsp[0].ast); }
6107
1.02k
#line 6108 "/src/php-src/Zend/zend_language_parser.c"
6108
1.02k
    break;
6109
6110
3.10k
  case 215:
6111
3.10k
#line 662 "/src/php-src/Zend/zend_language_parser.y"
6112
3.10k
                        { (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); }
6113
3.10k
#line 6114 "/src/php-src/Zend/zend_language_parser.c"
6114
3.10k
    break;
6115
6116
2.22k
  case 216:
6117
2.22k
#line 666 "/src/php-src/Zend/zend_language_parser.y"
6118
2.22k
                        { (yyval.ast) = NULL; }
6119
2.22k
#line 6120 "/src/php-src/Zend/zend_language_parser.c"
6120
2.22k
    break;
6121
6122
892
  case 217:
6123
892
#line 667 "/src/php-src/Zend/zend_language_parser.y"
6124
892
                         { (yyval.ast) = (yyvsp[0].ast); }
6125
892
#line 6126 "/src/php-src/Zend/zend_language_parser.c"
6126
892
    break;
6127
6128
33.2k
  case 218:
6129
33.2k
#line 671 "/src/php-src/Zend/zend_language_parser.y"
6130
33.2k
                                                { (yyval.ast) = NULL; }
6131
33.2k
#line 6132 "/src/php-src/Zend/zend_language_parser.c"
6132
33.2k
    break;
6133
6134
12.0k
  case 219:
6135
12.0k
#line 672 "/src/php-src/Zend/zend_language_parser.y"
6136
12.0k
                                        { (yyval.ast) = (yyvsp[0].ast); }
6137
12.0k
#line 6138 "/src/php-src/Zend/zend_language_parser.c"
6138
12.0k
    break;
6139
6140
3.03k
  case 220:
6141
3.03k
#line 676 "/src/php-src/Zend/zend_language_parser.y"
6142
3.03k
                                                { (yyval.ast) = NULL; }
6143
3.03k
#line 6144 "/src/php-src/Zend/zend_language_parser.c"
6144
3.03k
    break;
6145
6146
382
  case 221:
6147
382
#line 677 "/src/php-src/Zend/zend_language_parser.y"
6148
382
                                                { (yyval.ast) = (yyvsp[0].ast); }
6149
382
#line 6150 "/src/php-src/Zend/zend_language_parser.c"
6150
382
    break;
6151
6152
48.2k
  case 222:
6153
48.2k
#line 681 "/src/php-src/Zend/zend_language_parser.y"
6154
48.2k
                                                        { (yyval.ast) = NULL; }
6155
48.2k
#line 6156 "/src/php-src/Zend/zend_language_parser.c"
6156
48.2k
    break;
6157
6158
2.68k
  case 223:
6159
2.68k
#line 682 "/src/php-src/Zend/zend_language_parser.y"
6160
2.68k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6161
2.68k
#line 6162 "/src/php-src/Zend/zend_language_parser.c"
6162
2.68k
    break;
6163
6164
18.3k
  case 224:
6165
18.3k
#line 686 "/src/php-src/Zend/zend_language_parser.y"
6166
18.3k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6167
18.3k
#line 6168 "/src/php-src/Zend/zend_language_parser.c"
6168
18.3k
    break;
6169
6170
1.58k
  case 225:
6171
1.58k
#line 687 "/src/php-src/Zend/zend_language_parser.y"
6172
1.58k
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_REF, (yyvsp[0].ast)); }
6173
1.58k
#line 6174 "/src/php-src/Zend/zend_language_parser.c"
6174
1.58k
    break;
6175
6176
516
  case 226:
6177
516
#line 688 "/src/php-src/Zend/zend_language_parser.y"
6178
516
                                               { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LIST; }
6179
516
#line 6180 "/src/php-src/Zend/zend_language_parser.c"
6180
516
    break;
6181
6182
320
  case 227:
6183
320
#line 689 "/src/php-src/Zend/zend_language_parser.y"
6184
320
                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
6185
320
#line 6186 "/src/php-src/Zend/zend_language_parser.c"
6186
320
    break;
6187
6188
19.3k
  case 228:
6189
19.3k
#line 693 "/src/php-src/Zend/zend_language_parser.y"
6190
19.3k
                          { (yyval.ast) = (yyvsp[0].ast); }
6191
19.3k
#line 6192 "/src/php-src/Zend/zend_language_parser.c"
6192
19.3k
    break;
6193
6194
18
  case 229:
6195
18
#line 694 "/src/php-src/Zend/zend_language_parser.y"
6196
18
                                                      { (yyval.ast) = (yyvsp[-2].ast); }
6197
18
#line 6198 "/src/php-src/Zend/zend_language_parser.c"
6198
18
    break;
6199
6200
18.7k
  case 230:
6201
18.7k
#line 698 "/src/php-src/Zend/zend_language_parser.y"
6202
18.7k
                          { (yyval.ast) = (yyvsp[0].ast); }
6203
18.7k
#line 6204 "/src/php-src/Zend/zend_language_parser.c"
6204
18.7k
    break;
6205
6206
0
  case 231:
6207
0
#line 699 "/src/php-src/Zend/zend_language_parser.y"
6208
0
                                                          { (yyval.ast) = (yyvsp[-2].ast); }
6209
0
#line 6210 "/src/php-src/Zend/zend_language_parser.c"
6210
0
    break;
6211
6212
1.73k
  case 232:
6213
1.73k
#line 703 "/src/php-src/Zend/zend_language_parser.y"
6214
1.73k
                          { (yyval.ast) = (yyvsp[0].ast); }
6215
1.73k
#line 6216 "/src/php-src/Zend/zend_language_parser.c"
6216
1.73k
    break;
6217
6218
53
  case 233:
6219
53
#line 704 "/src/php-src/Zend/zend_language_parser.y"
6220
53
                                                          { (yyval.ast) = (yyvsp[-2].ast); }
6221
53
#line 6222 "/src/php-src/Zend/zend_language_parser.c"
6222
53
    break;
6223
6224
1.65k
  case 234:
6225
1.65k
#line 708 "/src/php-src/Zend/zend_language_parser.y"
6226
1.65k
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6227
1.65k
#line 6228 "/src/php-src/Zend/zend_language_parser.c"
6228
1.65k
    break;
6229
6230
202
  case 235:
6231
202
#line 709 "/src/php-src/Zend/zend_language_parser.y"
6232
202
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
6233
202
#line 6234 "/src/php-src/Zend/zend_language_parser.c"
6234
202
    break;
6235
6236
0
  case 236:
6237
0
#line 710 "/src/php-src/Zend/zend_language_parser.y"
6238
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6239
0
#line 6240 "/src/php-src/Zend/zend_language_parser.c"
6240
0
    break;
6241
6242
0
  case 237:
6243
0
#line 711 "/src/php-src/Zend/zend_language_parser.y"
6244
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6245
0
#line 6246 "/src/php-src/Zend/zend_language_parser.c"
6246
0
    break;
6247
6248
1.90k
  case 238:
6249
1.90k
#line 715 "/src/php-src/Zend/zend_language_parser.y"
6250
1.90k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_SWITCH_LIST); }
6251
1.90k
#line 6252 "/src/php-src/Zend/zend_language_parser.c"
6252
1.90k
    break;
6253
6254
6.34k
  case 239:
6255
6.34k
#line 717 "/src/php-src/Zend/zend_language_parser.y"
6256
6.34k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-4].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6257
6.34k
#line 6258 "/src/php-src/Zend/zend_language_parser.c"
6258
6.34k
    break;
6259
6260
370
  case 240:
6261
370
#line 719 "/src/php-src/Zend/zend_language_parser.y"
6262
370
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, NULL, (yyvsp[0].ast))); }
6263
370
#line 6264 "/src/php-src/Zend/zend_language_parser.c"
6264
370
    break;
6265
6266
2.14k
  case 243:
6267
2.14k
#line 730 "/src/php-src/Zend/zend_language_parser.y"
6268
2.14k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
6269
2.14k
#line 6270 "/src/php-src/Zend/zend_language_parser.c"
6270
2.14k
    break;
6271
6272
97
  case 244:
6273
97
#line 734 "/src/php-src/Zend/zend_language_parser.y"
6274
97
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_MATCH_ARM_LIST); }
6275
97
#line 6276 "/src/php-src/Zend/zend_language_parser.c"
6276
97
    break;
6277
6278
2.06k
  case 245:
6279
2.06k
#line 735 "/src/php-src/Zend/zend_language_parser.y"
6280
2.06k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6281
2.06k
#line 6282 "/src/php-src/Zend/zend_language_parser.c"
6282
2.06k
    break;
6283
6284
2.10k
  case 246:
6285
2.10k
#line 739 "/src/php-src/Zend/zend_language_parser.y"
6286
2.10k
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MATCH_ARM_LIST, (yyvsp[0].ast)); }
6287
2.10k
#line 6288 "/src/php-src/Zend/zend_language_parser.c"
6288
2.10k
    break;
6289
6290
2.32k
  case 247:
6291
2.32k
#line 740 "/src/php-src/Zend/zend_language_parser.y"
6292
2.32k
                                                       { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6293
2.32k
#line 6294 "/src/php-src/Zend/zend_language_parser.c"
6294
2.32k
    break;
6295
6296
3.65k
  case 248:
6297
3.65k
#line 745 "/src/php-src/Zend/zend_language_parser.y"
6298
3.65k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, (yyvsp[-3].ast), (yyvsp[0].ast)); }
6299
3.65k
#line 6300 "/src/php-src/Zend/zend_language_parser.c"
6300
3.65k
    break;
6301
6302
774
  case 249:
6303
774
#line 747 "/src/php-src/Zend/zend_language_parser.y"
6304
774
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, NULL, (yyvsp[0].ast)); }
6305
774
#line 6306 "/src/php-src/Zend/zend_language_parser.c"
6306
774
    break;
6307
6308
3.70k
  case 250:
6309
3.70k
#line 751 "/src/php-src/Zend/zend_language_parser.y"
6310
3.70k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
6311
3.70k
#line 6312 "/src/php-src/Zend/zend_language_parser.c"
6312
3.70k
    break;
6313
6314
2.55k
  case 251:
6315
2.55k
#line 752 "/src/php-src/Zend/zend_language_parser.y"
6316
2.55k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6317
2.55k
#line 6318 "/src/php-src/Zend/zend_language_parser.c"
6318
2.55k
    break;
6319
6320
1.21k
  case 252:
6321
1.21k
#line 757 "/src/php-src/Zend/zend_language_parser.y"
6322
1.21k
                          { (yyval.ast) = (yyvsp[0].ast); }
6323
1.21k
#line 6324 "/src/php-src/Zend/zend_language_parser.c"
6324
1.21k
    break;
6325
6326
0
  case 253:
6327
0
#line 758 "/src/php-src/Zend/zend_language_parser.y"
6328
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6329
0
#line 6330 "/src/php-src/Zend/zend_language_parser.c"
6330
0
    break;
6331
6332
20.6k
  case 254:
6333
20.6k
#line 764 "/src/php-src/Zend/zend_language_parser.y"
6334
20.6k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6335
20.6k
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6336
20.6k
#line 6337 "/src/php-src/Zend/zend_language_parser.c"
6337
20.6k
    break;
6338
6339
1.28k
  case 255:
6340
1.28k
#line 767 "/src/php-src/Zend/zend_language_parser.y"
6341
1.28k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6342
1.28k
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6343
1.28k
#line 6344 "/src/php-src/Zend/zend_language_parser.c"
6344
1.28k
    break;
6345
6346
18.0k
  case 256:
6347
18.0k
#line 772 "/src/php-src/Zend/zend_language_parser.y"
6348
18.0k
                                                    { (yyval.ast) = (yyvsp[0].ast); }
6349
18.0k
#line 6350 "/src/php-src/Zend/zend_language_parser.c"
6350
18.0k
    break;
6351
6352
2.55k
  case 257:
6353
2.55k
#line 774 "/src/php-src/Zend/zend_language_parser.y"
6354
2.55k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[0].ast))); }
6355
2.55k
#line 6356 "/src/php-src/Zend/zend_language_parser.c"
6356
2.55k
    break;
6357
6358
258
  case 258:
6359
258
#line 779 "/src/php-src/Zend/zend_language_parser.y"
6360
258
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6361
258
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6362
258
#line 6363 "/src/php-src/Zend/zend_language_parser.c"
6363
258
    break;
6364
6365
21
  case 259:
6366
21
#line 782 "/src/php-src/Zend/zend_language_parser.y"
6367
21
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-6].ast),
6368
21
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6369
21
#line 6370 "/src/php-src/Zend/zend_language_parser.c"
6370
21
    break;
6371
6372
45
  case 260:
6373
45
#line 787 "/src/php-src/Zend/zend_language_parser.y"
6374
45
                                                     { (yyval.ast) = (yyvsp[-2].ast); }
6375
45
#line 6376 "/src/php-src/Zend/zend_language_parser.c"
6376
45
    break;
6377
6378
46
  case 261:
6379
46
#line 789 "/src/php-src/Zend/zend_language_parser.y"
6380
46
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6381
46
            zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[-2].ast))); }
6382
46
#line 6383 "/src/php-src/Zend/zend_language_parser.c"
6383
46
    break;
6384
6385
36.2k
  case 262:
6386
36.2k
#line 794 "/src/php-src/Zend/zend_language_parser.y"
6387
36.2k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6388
36.2k
#line 6389 "/src/php-src/Zend/zend_language_parser.c"
6389
36.2k
    break;
6390
6391
52.1k
  case 263:
6392
52.1k
#line 795 "/src/php-src/Zend/zend_language_parser.y"
6393
52.1k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_PARAM_LIST); }
6394
52.1k
#line 6395 "/src/php-src/Zend/zend_language_parser.c"
6395
52.1k
    break;
6396
6397
36.4k
  case 264:
6398
36.4k
#line 801 "/src/php-src/Zend/zend_language_parser.y"
6399
36.4k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PARAM_LIST, (yyvsp[0].ast)); }
6400
36.4k
#line 6401 "/src/php-src/Zend/zend_language_parser.c"
6401
36.4k
    break;
6402
6403
16.9k
  case 265:
6404
16.9k
#line 803 "/src/php-src/Zend/zend_language_parser.y"
6405
16.9k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6406
16.9k
#line 6407 "/src/php-src/Zend/zend_language_parser.c"
6407
16.9k
    break;
6408
6409
1.60k
  case 266:
6410
1.60k
#line 807 "/src/php-src/Zend/zend_language_parser.y"
6411
1.60k
                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6412
1.60k
#line 6413 "/src/php-src/Zend/zend_language_parser.c"
6413
1.60k
    break;
6414
6415
51.7k
  case 267:
6416
51.7k
#line 808 "/src/php-src/Zend/zend_language_parser.y"
6417
51.7k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6418
51.7k
#line 6419 "/src/php-src/Zend/zend_language_parser.c"
6419
51.7k
    break;
6420
6421
52.5k
  case 268:
6422
52.5k
#line 813 "/src/php-src/Zend/zend_language_parser.y"
6423
52.5k
                        { (yyval.num) = 0; }
6424
52.5k
#line 6425 "/src/php-src/Zend/zend_language_parser.c"
6425
52.5k
    break;
6426
6427
1.26k
  case 269:
6428
1.26k
#line 815 "/src/php-src/Zend/zend_language_parser.y"
6429
1.26k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CPP, (yyvsp[0].ast));
6430
1.26k
        if (!(yyval.num)) { YYERROR; } }
6431
1.24k
#line 6432 "/src/php-src/Zend/zend_language_parser.c"
6432
1.24k
    break;
6433
6434
46.4k
  case 270:
6435
46.4k
#line 822 "/src/php-src/Zend/zend_language_parser.y"
6436
46.4k
                        { (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,
6437
46.4k
          NULL, (yyvsp[-1].str) ? zend_ast_create_zval_from_str((yyvsp[-1].str)) : NULL, (yyvsp[0].ast)); }
6438
46.4k
#line 6439 "/src/php-src/Zend/zend_language_parser.c"
6439
46.4k
    break;
6440
6441
6.84k
  case 271:
6442
6.84k
#line 826 "/src/php-src/Zend/zend_language_parser.y"
6443
6.84k
                        { (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),
6444
6.84k
          NULL, (yyvsp[-3].str) ? zend_ast_create_zval_from_str((yyvsp[-3].str)) : NULL, (yyvsp[0].ast)); }
6445
6.84k
#line 6446 "/src/php-src/Zend/zend_language_parser.c"
6446
6.84k
    break;
6447
6448
45.9k
  case 272:
6449
45.9k
#line 831 "/src/php-src/Zend/zend_language_parser.y"
6450
45.9k
                        { (yyval.ast) = NULL; }
6451
45.9k
#line 6452 "/src/php-src/Zend/zend_language_parser.c"
6452
45.9k
    break;
6453
6454
32.1k
  case 273:
6455
32.1k
#line 832 "/src/php-src/Zend/zend_language_parser.y"
6456
32.1k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6457
32.1k
#line 6458 "/src/php-src/Zend/zend_language_parser.c"
6458
32.1k
    break;
6459
6460
11.9k
  case 274:
6461
11.9k
#line 836 "/src/php-src/Zend/zend_language_parser.y"
6462
11.9k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6463
11.9k
#line 6464 "/src/php-src/Zend/zend_language_parser.c"
6464
11.9k
    break;
6465
6466
1.15k
  case 275:
6467
1.15k
#line 837 "/src/php-src/Zend/zend_language_parser.y"
6468
1.15k
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6469
1.15k
#line 6470 "/src/php-src/Zend/zend_language_parser.c"
6470
1.15k
    break;
6471
6472
2.41k
  case 276:
6473
2.41k
#line 838 "/src/php-src/Zend/zend_language_parser.y"
6474
2.41k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6475
2.41k
#line 6476 "/src/php-src/Zend/zend_language_parser.c"
6476
2.41k
    break;
6477
6478
565
  case 277:
6479
565
#line 839 "/src/php-src/Zend/zend_language_parser.y"
6480
565
                                        { (yyval.ast) = (yyvsp[0].ast); }
6481
565
#line 6482 "/src/php-src/Zend/zend_language_parser.c"
6482
565
    break;
6483
6484
21.0k
  case 278:
6485
21.0k
#line 843 "/src/php-src/Zend/zend_language_parser.y"
6486
21.0k
                                        { (yyval.ast) = (yyvsp[0].ast); }
6487
21.0k
#line 6488 "/src/php-src/Zend/zend_language_parser.c"
6488
21.0k
    break;
6489
6490
975
  case 279:
6491
975
#line 844 "/src/php-src/Zend/zend_language_parser.y"
6492
975
                                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_STATIC); }
6493
975
#line 6494 "/src/php-src/Zend/zend_language_parser.c"
6494
975
    break;
6495
6496
5.90k
  case 280:
6497
5.90k
#line 848 "/src/php-src/Zend/zend_language_parser.y"
6498
5.90k
                     { (yyval.ast) = (yyvsp[0].ast); }
6499
5.90k
#line 6500 "/src/php-src/Zend/zend_language_parser.c"
6500
5.90k
    break;
6501
6502
813
  case 281:
6503
813
#line 849 "/src/php-src/Zend/zend_language_parser.y"
6504
813
                                           { (yyval.ast) = (yyvsp[-1].ast); }
6505
813
#line 6506 "/src/php-src/Zend/zend_language_parser.c"
6506
813
    break;
6507
6508
2.42k
  case 282:
6509
2.42k
#line 854 "/src/php-src/Zend/zend_language_parser.y"
6510
2.42k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6511
2.42k
#line 6512 "/src/php-src/Zend/zend_language_parser.c"
6512
2.42k
    break;
6513
6514
1.86k
  case 283:
6515
1.86k
#line 856 "/src/php-src/Zend/zend_language_parser.y"
6516
1.86k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6517
1.86k
#line 6518 "/src/php-src/Zend/zend_language_parser.c"
6518
1.86k
    break;
6519
6520
1.39k
  case 284:
6521
1.39k
#line 860 "/src/php-src/Zend/zend_language_parser.y"
6522
1.39k
                                                                          { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6523
1.39k
#line 6524 "/src/php-src/Zend/zend_language_parser.c"
6524
1.39k
    break;
6525
6526
281
  case 285:
6527
281
#line 861 "/src/php-src/Zend/zend_language_parser.y"
6528
281
                                                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6529
281
#line 6530 "/src/php-src/Zend/zend_language_parser.c"
6530
281
    break;
6531
6532
24.8k
  case 286:
6533
24.8k
#line 868 "/src/php-src/Zend/zend_language_parser.y"
6534
24.8k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6535
24.8k
#line 6536 "/src/php-src/Zend/zend_language_parser.c"
6536
24.8k
    break;
6537
6538
1.74k
  case 287:
6539
1.74k
#line 869 "/src/php-src/Zend/zend_language_parser.y"
6540
1.74k
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6541
1.74k
#line 6542 "/src/php-src/Zend/zend_language_parser.c"
6542
1.74k
    break;
6543
6544
4.73k
  case 288:
6545
4.73k
#line 870 "/src/php-src/Zend/zend_language_parser.y"
6546
4.73k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6547
4.73k
#line 6548 "/src/php-src/Zend/zend_language_parser.c"
6548
4.73k
    break;
6549
6550
847
  case 289:
6551
847
#line 871 "/src/php-src/Zend/zend_language_parser.y"
6552
847
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6553
847
#line 6554 "/src/php-src/Zend/zend_language_parser.c"
6554
847
    break;
6555
6556
4.07k
  case 290:
6557
4.07k
#line 875 "/src/php-src/Zend/zend_language_parser.y"
6558
4.07k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_ARRAY); }
6559
4.07k
#line 6560 "/src/php-src/Zend/zend_language_parser.c"
6560
4.07k
    break;
6561
6562
453
  case 291:
6563
453
#line 876 "/src/php-src/Zend/zend_language_parser.y"
6564
453
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_CALLABLE); }
6565
453
#line 6566 "/src/php-src/Zend/zend_language_parser.c"
6566
453
    break;
6567
6568
64.9k
  case 292:
6569
64.9k
#line 877 "/src/php-src/Zend/zend_language_parser.y"
6570
64.9k
                                { (yyval.ast) = (yyvsp[0].ast); }
6571
64.9k
#line 6572 "/src/php-src/Zend/zend_language_parser.c"
6572
64.9k
    break;
6573
6574
8.84k
  case 293:
6575
8.84k
#line 881 "/src/php-src/Zend/zend_language_parser.y"
6576
8.84k
                                    { (yyval.ast) = (yyvsp[0].ast); }
6577
8.84k
#line 6578 "/src/php-src/Zend/zend_language_parser.c"
6578
8.84k
    break;
6579
6580
3.79k
  case 294:
6581
3.79k
#line 882 "/src/php-src/Zend/zend_language_parser.y"
6582
3.79k
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
6583
3.79k
#line 6584 "/src/php-src/Zend/zend_language_parser.c"
6584
3.79k
    break;
6585
6586
4.73k
  case 295:
6587
4.73k
#line 887 "/src/php-src/Zend/zend_language_parser.y"
6588
4.73k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6589
4.73k
#line 6590 "/src/php-src/Zend/zend_language_parser.c"
6590
4.73k
    break;
6591
6592
3.16k
  case 296:
6593
3.16k
#line 889 "/src/php-src/Zend/zend_language_parser.y"
6594
3.16k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6595
3.16k
#line 6596 "/src/php-src/Zend/zend_language_parser.c"
6596
3.16k
    break;
6597
6598
4.65k
  case 297:
6599
4.65k
#line 894 "/src/php-src/Zend/zend_language_parser.y"
6600
4.65k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6601
4.65k
#line 6602 "/src/php-src/Zend/zend_language_parser.c"
6602
4.65k
    break;
6603
6604
3.57k
  case 298:
6605
3.57k
#line 896 "/src/php-src/Zend/zend_language_parser.y"
6606
3.57k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6607
3.57k
#line 6608 "/src/php-src/Zend/zend_language_parser.c"
6608
3.57k
    break;
6609
6610
74.2k
  case 299:
6611
74.2k
#line 900 "/src/php-src/Zend/zend_language_parser.y"
6612
74.2k
                        { (yyval.ast) = NULL; }
6613
74.2k
#line 6614 "/src/php-src/Zend/zend_language_parser.c"
6614
74.2k
    break;
6615
6616
13.6k
  case 300:
6617
13.6k
#line 901 "/src/php-src/Zend/zend_language_parser.y"
6618
13.6k
                                { (yyval.ast) = (yyvsp[0].ast); }
6619
13.6k
#line 6620 "/src/php-src/Zend/zend_language_parser.c"
6620
13.6k
    break;
6621
6622
94.0k
  case 301:
6623
94.0k
#line 905 "/src/php-src/Zend/zend_language_parser.y"
6624
94.0k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_ARG_LIST); }
6625
94.0k
#line 6626 "/src/php-src/Zend/zend_language_parser.c"
6626
94.0k
    break;
6627
6628
283k
  case 302:
6629
283k
#line 906 "/src/php-src/Zend/zend_language_parser.y"
6630
283k
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
6631
283k
#line 6632 "/src/php-src/Zend/zend_language_parser.c"
6632
283k
    break;
6633
6634
3.27k
  case 303:
6635
3.27k
#line 907 "/src/php-src/Zend/zend_language_parser.y"
6636
3.27k
                                   { (yyval.ast) = zend_ast_create_fcc(); }
6637
3.27k
#line 6638 "/src/php-src/Zend/zend_language_parser.c"
6638
3.27k
    break;
6639
6640
285k
  case 304:
6641
285k
#line 912 "/src/php-src/Zend/zend_language_parser.y"
6642
285k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6643
285k
#line 6644 "/src/php-src/Zend/zend_language_parser.c"
6644
285k
    break;
6645
6646
169k
  case 305:
6647
169k
#line 914 "/src/php-src/Zend/zend_language_parser.y"
6648
169k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6649
169k
#line 6650 "/src/php-src/Zend/zend_language_parser.c"
6650
169k
    break;
6651
6652
198
  case 306:
6653
198
#line 927 "/src/php-src/Zend/zend_language_parser.y"
6654
198
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_ARG_LIST); }
6655
198
#line 6656 "/src/php-src/Zend/zend_language_parser.c"
6656
198
    break;
6657
6658
262
  case 307:
6659
262
#line 928 "/src/php-src/Zend/zend_language_parser.y"
6660
262
                                                                     { (yyval.ast) = (yyvsp[-2].ast); }
6661
262
#line 6662 "/src/php-src/Zend/zend_language_parser.c"
6662
262
    break;
6663
6664
48
  case 308:
6665
48
#line 929 "/src/php-src/Zend/zend_language_parser.y"
6666
48
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARG_LIST, (yyvsp[-2].ast)); }
6667
48
#line 6668 "/src/php-src/Zend/zend_language_parser.c"
6668
48
    break;
6669
6670
28
  case 309:
6671
28
#line 930 "/src/php-src/Zend/zend_language_parser.y"
6672
28
                                   { (yyval.ast) = zend_ast_create_fcc(); }
6673
28
#line 6674 "/src/php-src/Zend/zend_language_parser.c"
6674
28
    break;
6675
6676
284
  case 310:
6677
284
#line 935 "/src/php-src/Zend/zend_language_parser.y"
6678
284
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_ARG_LIST, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6679
284
#line 6680 "/src/php-src/Zend/zend_language_parser.c"
6680
284
    break;
6681
6682
50
  case 311:
6683
50
#line 937 "/src/php-src/Zend/zend_language_parser.y"
6684
50
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6685
50
#line 6686 "/src/php-src/Zend/zend_language_parser.c"
6686
50
    break;
6687
6688
313
  case 312:
6689
313
#line 939 "/src/php-src/Zend/zend_language_parser.y"
6690
313
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6691
313
#line 6692 "/src/php-src/Zend/zend_language_parser.c"
6692
313
    break;
6693
6694
13.3k
  case 313:
6695
13.3k
#line 944 "/src/php-src/Zend/zend_language_parser.y"
6696
13.3k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMED_ARG, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6697
13.3k
#line 6698 "/src/php-src/Zend/zend_language_parser.c"
6698
13.3k
    break;
6699
6700
1.53k
  case 314:
6701
1.53k
#line 945 "/src/php-src/Zend/zend_language_parser.y"
6702
1.53k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
6703
1.53k
#line 6704 "/src/php-src/Zend/zend_language_parser.c"
6704
1.53k
    break;
6705
6706
441k
  case 315:
6707
441k
#line 949 "/src/php-src/Zend/zend_language_parser.y"
6708
441k
                     { (yyval.ast) = (yyvsp[0].ast); }
6709
441k
#line 6710 "/src/php-src/Zend/zend_language_parser.c"
6710
441k
    break;
6711
6712
14.8k
  case 316:
6713
14.8k
#line 950 "/src/php-src/Zend/zend_language_parser.y"
6714
14.8k
                                 { (yyval.ast) = (yyvsp[0].ast); }
6715
14.8k
#line 6716 "/src/php-src/Zend/zend_language_parser.c"
6716
14.8k
    break;
6717
6718
283
  case 317:
6719
283
#line 954 "/src/php-src/Zend/zend_language_parser.y"
6720
283
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6721
283
#line 6722 "/src/php-src/Zend/zend_language_parser.c"
6722
283
    break;
6723
6724
1.37k
  case 318:
6725
1.37k
#line 955 "/src/php-src/Zend/zend_language_parser.y"
6726
1.37k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6727
1.37k
#line 6728 "/src/php-src/Zend/zend_language_parser.c"
6728
1.37k
    break;
6729
6730
1.65k
  case 319:
6731
1.65k
#line 960 "/src/php-src/Zend/zend_language_parser.y"
6732
1.65k
                { (yyval.ast) = zend_ast_create(ZEND_AST_GLOBAL, zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast))); }
6733
1.65k
#line 6734 "/src/php-src/Zend/zend_language_parser.c"
6734
1.65k
    break;
6735
6736
151
  case 320:
6737
151
#line 965 "/src/php-src/Zend/zend_language_parser.y"
6738
151
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6739
151
#line 6740 "/src/php-src/Zend/zend_language_parser.c"
6740
151
    break;
6741
6742
1.28k
  case 321:
6743
1.28k
#line 966 "/src/php-src/Zend/zend_language_parser.y"
6744
1.28k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6745
1.28k
#line 6746 "/src/php-src/Zend/zend_language_parser.c"
6746
1.28k
    break;
6747
6748
603
  case 322:
6749
603
#line 970 "/src/php-src/Zend/zend_language_parser.y"
6750
603
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[0].ast), NULL); }
6751
603
#line 6752 "/src/php-src/Zend/zend_language_parser.c"
6752
603
    break;
6753
6754
836
  case 323:
6755
836
#line 971 "/src/php-src/Zend/zend_language_parser.y"
6756
836
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6757
836
#line 6758 "/src/php-src/Zend/zend_language_parser.c"
6758
836
    break;
6759
6760
72.8k
  case 324:
6761
72.8k
#line 976 "/src/php-src/Zend/zend_language_parser.y"
6762
72.8k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6763
72.8k
#line 6764 "/src/php-src/Zend/zend_language_parser.c"
6764
72.8k
    break;
6765
6766
57.0k
  case 325:
6767
57.0k
#line 978 "/src/php-src/Zend/zend_language_parser.y"
6768
57.0k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
6769
57.0k
#line 6770 "/src/php-src/Zend/zend_language_parser.c"
6770
57.0k
    break;
6771
6772
19.3k
  case 326:
6773
19.3k
#line 984 "/src/php-src/Zend/zend_language_parser.y"
6774
19.3k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_GROUP, (yyvsp[-2].ast), (yyvsp[-1].ast), NULL);
6775
19.3k
        (yyval.ast)->attr = (yyvsp[-3].num); }
6776
19.3k
#line 6777 "/src/php-src/Zend/zend_language_parser.c"
6777
19.3k
    break;
6778
6779
4.62k
  case 327:
6780
4.62k
#line 987 "/src/php-src/Zend/zend_language_parser.y"
6781
4.62k
                        { (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);
6782
4.62k
        (yyval.ast)->attr = (yyvsp[-2].num); }
6783
4.62k
#line 6784 "/src/php-src/Zend/zend_language_parser.c"
6784
4.62k
    break;
6785
6786
6.55k
  case 328:
6787
6.55k
#line 990 "/src/php-src/Zend/zend_language_parser.y"
6788
6.55k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, NULL);
6789
6.55k
        (yyval.ast)->attr = (yyvsp[-3].num); }
6790
6.55k
#line 6791 "/src/php-src/Zend/zend_language_parser.c"
6791
6.55k
    break;
6792
6793
1.36k
  case 329:
6794
1.36k
#line 993 "/src/php-src/Zend/zend_language_parser.y"
6795
1.36k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, (yyvsp[-2].ast));
6796
1.36k
        (yyval.ast)->attr = (yyvsp[-4].num); }
6797
1.36k
#line 6798 "/src/php-src/Zend/zend_language_parser.c"
6798
1.36k
    break;
6799
6800
34.1k
  case 330:
6801
34.1k
#line 997 "/src/php-src/Zend/zend_language_parser.y"
6802
34.1k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_METHOD, (yyvsp[-9].num) | (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-10].num), (yyvsp[-7].str),
6803
34.1k
          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); }
6804
34.1k
#line 6805 "/src/php-src/Zend/zend_language_parser.c"
6805
34.1k
    break;
6806
6807
3.10k
  case 331:
6808
3.10k
#line 999 "/src/php-src/Zend/zend_language_parser.y"
6809
3.10k
                          { (yyval.ast) = (yyvsp[0].ast); }
6810
3.10k
#line 6811 "/src/php-src/Zend/zend_language_parser.c"
6811
3.10k
    break;
6812
6813
67.5k
  case 332:
6814
67.5k
#line 1003 "/src/php-src/Zend/zend_language_parser.y"
6815
67.5k
                                           { (yyval.ast) = (yyvsp[0].ast); }
6816
67.5k
#line 6817 "/src/php-src/Zend/zend_language_parser.c"
6817
67.5k
    break;
6818
6819
1.60k
  case 333:
6820
1.60k
#line 1004 "/src/php-src/Zend/zend_language_parser.y"
6821
1.60k
                                                      { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6822
1.60k
#line 6823 "/src/php-src/Zend/zend_language_parser.c"
6823
1.60k
    break;
6824
6825
3.71k
  case 334:
6826
3.71k
#line 1006 "/src/php-src/Zend/zend_language_parser.y"
6827
3.71k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_TRAIT, (yyvsp[-1].ast), (yyvsp[0].ast)); }
6828
3.71k
#line 6829 "/src/php-src/Zend/zend_language_parser.c"
6829
3.71k
    break;
6830
6831
7.50k
  case 335:
6832
7.50k
#line 1010 "/src/php-src/Zend/zend_language_parser.y"
6833
7.50k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
6834
7.50k
#line 6835 "/src/php-src/Zend/zend_language_parser.c"
6835
7.50k
    break;
6836
6837
4.05k
  case 336:
6838
4.05k
#line 1011 "/src/php-src/Zend/zend_language_parser.y"
6839
4.05k
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6840
4.05k
#line 6841 "/src/php-src/Zend/zend_language_parser.c"
6841
4.05k
    break;
6842
6843
1.86k
  case 337:
6844
1.86k
#line 1015 "/src/php-src/Zend/zend_language_parser.y"
6845
1.86k
                                                                                { (yyval.ast) = NULL; }
6846
1.86k
#line 6847 "/src/php-src/Zend/zend_language_parser.c"
6847
1.86k
    break;
6848
6849
266
  case 338:
6850
266
#line 1016 "/src/php-src/Zend/zend_language_parser.y"
6851
266
                                                                        { (yyval.ast) = NULL; }
6852
266
#line 6853 "/src/php-src/Zend/zend_language_parser.c"
6853
266
    break;
6854
6855
1.58k
  case 339:
6856
1.58k
#line 1017 "/src/php-src/Zend/zend_language_parser.y"
6857
1.58k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6858
1.58k
#line 6859 "/src/php-src/Zend/zend_language_parser.c"
6859
1.58k
    break;
6860
6861
1.63k
  case 340:
6862
1.63k
#line 1022 "/src/php-src/Zend/zend_language_parser.y"
6863
1.63k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_TRAIT_ADAPTATIONS, (yyvsp[0].ast)); }
6864
1.63k
#line 6865 "/src/php-src/Zend/zend_language_parser.c"
6865
1.63k
    break;
6866
6867
3.61k
  case 341:
6868
3.61k
#line 1024 "/src/php-src/Zend/zend_language_parser.y"
6869
3.61k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6870
3.61k
#line 6871 "/src/php-src/Zend/zend_language_parser.c"
6871
3.61k
    break;
6872
6873
615
  case 342:
6874
615
#line 1028 "/src/php-src/Zend/zend_language_parser.y"
6875
615
                                        { (yyval.ast) = (yyvsp[-1].ast); }
6876
615
#line 6877 "/src/php-src/Zend/zend_language_parser.c"
6877
615
    break;
6878
6879
4.62k
  case 343:
6880
4.62k
#line 1029 "/src/php-src/Zend/zend_language_parser.y"
6881
4.62k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6882
4.62k
#line 6883 "/src/php-src/Zend/zend_language_parser.c"
6883
4.62k
    break;
6884
6885
621
  case 344:
6886
621
#line 1034 "/src/php-src/Zend/zend_language_parser.y"
6887
621
                { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_PRECEDENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6888
621
#line 6889 "/src/php-src/Zend/zend_language_parser.c"
6889
621
    break;
6890
6891
3.07k
  case 345:
6892
3.07k
#line 1039 "/src/php-src/Zend/zend_language_parser.y"
6893
3.07k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6894
3.07k
#line 6895 "/src/php-src/Zend/zend_language_parser.c"
6895
3.07k
    break;
6896
6897
1.08k
  case 346:
6898
1.08k
#line 1041 "/src/php-src/Zend/zend_language_parser.y"
6899
1.08k
                        { zval zv;
6900
1.08k
        if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
6901
1.08k
        (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), zend_ast_create_zval(&zv)); }
6902
0
#line 6903 "/src/php-src/Zend/zend_language_parser.c"
6903
0
    break;
6904
6905
104
  case 347:
6906
104
#line 1045 "/src/php-src/Zend/zend_language_parser.y"
6907
104
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[-1].num));
6908
104
        (yyval.ast) = zend_ast_create_ex(ZEND_AST_TRAIT_ALIAS, modifiers, (yyvsp[-3].ast), (yyvsp[0].ast));
6909
        /* identifier nonterminal can cause allocations, so we need to free the node */
6910
104
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6911
103
#line 6912 "/src/php-src/Zend/zend_language_parser.c"
6912
103
    break;
6913
6914
381
  case 348:
6915
381
#line 1050 "/src/php-src/Zend/zend_language_parser.y"
6916
381
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].num));
6917
381
        (yyval.ast) = zend_ast_create_ex(ZEND_AST_TRAIT_ALIAS, modifiers, (yyvsp[-2].ast), NULL);
6918
        /* identifier nonterminal can cause allocations, so we need to free the node */
6919
381
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6920
375
#line 6921 "/src/php-src/Zend/zend_language_parser.c"
6921
375
    break;
6922
6923
3.40k
  case 349:
6924
3.40k
#line 1058 "/src/php-src/Zend/zend_language_parser.y"
6925
3.40k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_REFERENCE, NULL, (yyvsp[0].ast)); }
6926
3.40k
#line 6927 "/src/php-src/Zend/zend_language_parser.c"
6927
3.40k
    break;
6928
6929
1.27k
  case 350:
6930
1.27k
#line 1059 "/src/php-src/Zend/zend_language_parser.y"
6931
1.27k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6932
1.27k
#line 6933 "/src/php-src/Zend/zend_language_parser.c"
6933
1.27k
    break;
6934
6935
1.89k
  case 351:
6936
1.89k
#line 1064 "/src/php-src/Zend/zend_language_parser.y"
6937
1.89k
                { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_REFERENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6938
1.89k
#line 6939 "/src/php-src/Zend/zend_language_parser.c"
6939
1.89k
    break;
6940
6941
1.61k
  case 352:
6942
1.61k
#line 1068 "/src/php-src/Zend/zend_language_parser.y"
6943
1.61k
                                                        { (yyval.ast) = NULL; }
6944
1.61k
#line 6945 "/src/php-src/Zend/zend_language_parser.c"
6945
1.61k
    break;
6946
6947
32.5k
  case 353:
6948
32.5k
#line 1069 "/src/php-src/Zend/zend_language_parser.y"
6949
32.5k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6950
32.5k
#line 6951 "/src/php-src/Zend/zend_language_parser.c"
6951
32.5k
    break;
6952
6953
23.6k
  case 354:
6954
23.6k
#line 1074 "/src/php-src/Zend/zend_language_parser.y"
6955
23.6k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY, (yyvsp[0].ast));
6956
23.6k
        if (!(yyval.num)) { YYERROR; } }
6957
23.5k
#line 6958 "/src/php-src/Zend/zend_language_parser.c"
6958
23.5k
    break;
6959
6960
23.5k
  case 355:
6961
847
#line 1077 "/src/php-src/Zend/zend_language_parser.y"
6962
847
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6963
847
#line 6964 "/src/php-src/Zend/zend_language_parser.c"
6964
847
    break;
6965
6966
8.82k
  case 356:
6967
8.82k
#line 1082 "/src/php-src/Zend/zend_language_parser.y"
6968
8.82k
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6969
8.82k
#line 6970 "/src/php-src/Zend/zend_language_parser.c"
6970
8.82k
    break;
6971
6972
26.0k
  case 357:
6973
26.0k
#line 1084 "/src/php-src/Zend/zend_language_parser.y"
6974
26.0k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].ast));
6975
26.0k
        if (!(yyval.num)) { YYERROR; }
6976
25.9k
        if (!((yyval.num) & ZEND_ACC_PPP_MASK)) { (yyval.num) |= ZEND_ACC_PUBLIC; } }
6977
0
#line 6978 "/src/php-src/Zend/zend_language_parser.c"
6978
0
    break;
6979
6980
6.09k
  case 358:
6981
6.09k
#line 1091 "/src/php-src/Zend/zend_language_parser.y"
6982
6.09k
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6983
6.09k
#line 6984 "/src/php-src/Zend/zend_language_parser.c"
6984
6.09k
    break;
6985
6986
1.96k
  case 359:
6987
1.96k
#line 1093 "/src/php-src/Zend/zend_language_parser.y"
6988
1.96k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CONSTANT, (yyvsp[0].ast));
6989
1.96k
        if (!(yyval.num)) { YYERROR; }
6990
1.95k
        if (!((yyval.num) & ZEND_ACC_PPP_MASK)) { (yyval.num) |= ZEND_ACC_PUBLIC; } }
6991
0
#line 6992 "/src/php-src/Zend/zend_language_parser.c"
6992
0
    break;
6993
6994
53.0k
  case 360:
6995
53.0k
#line 1100 "/src/php-src/Zend/zend_language_parser.y"
6996
53.0k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MODIFIER_LIST, zend_ast_create_zval_from_long((yyvsp[0].num))); }
6997
53.0k
#line 6998 "/src/php-src/Zend/zend_language_parser.c"
6998
53.0k
    break;
6999
7000
8.17k
  case 361:
7001
8.17k
#line 1102 "/src/php-src/Zend/zend_language_parser.y"
7002
8.17k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), zend_ast_create_zval_from_long((yyvsp[0].num))); }
7003
8.17k
#line 7004 "/src/php-src/Zend/zend_language_parser.c"
7004
8.17k
    break;
7005
7006
39.9k
  case 362:
7007
39.9k
#line 1106 "/src/php-src/Zend/zend_language_parser.y"
7008
39.9k
                                                        { (yyval.num) = T_PUBLIC; }
7009
39.9k
#line 7010 "/src/php-src/Zend/zend_language_parser.c"
7010
39.9k
    break;
7011
7012
2.25k
  case 363:
7013
2.25k
#line 1107 "/src/php-src/Zend/zend_language_parser.y"
7014
2.25k
                                                        { (yyval.num) = T_PROTECTED; }
7015
2.25k
#line 7016 "/src/php-src/Zend/zend_language_parser.c"
7016
2.25k
    break;
7017
7018
5.00k
  case 364:
7019
5.00k
#line 1108 "/src/php-src/Zend/zend_language_parser.y"
7020
5.00k
                                                        { (yyval.num) = T_PRIVATE; }
7021
5.00k
#line 7022 "/src/php-src/Zend/zend_language_parser.c"
7022
5.00k
    break;
7023
7024
241
  case 365:
7025
241
#line 1109 "/src/php-src/Zend/zend_language_parser.y"
7026
241
                                                { (yyval.num) = T_PUBLIC_SET; }
7027
241
#line 7028 "/src/php-src/Zend/zend_language_parser.c"
7028
241
    break;
7029
7030
182
  case 366:
7031
182
#line 1110 "/src/php-src/Zend/zend_language_parser.y"
7032
182
                                                { (yyval.num) = T_PROTECTED_SET; }
7033
182
#line 7034 "/src/php-src/Zend/zend_language_parser.c"
7034
182
    break;
7035
7036
426
  case 367:
7037
426
#line 1111 "/src/php-src/Zend/zend_language_parser.y"
7038
426
                                                { (yyval.num) = T_PRIVATE_SET; }
7039
426
#line 7040 "/src/php-src/Zend/zend_language_parser.c"
7040
426
    break;
7041
7042
9.97k
  case 368:
7043
9.97k
#line 1112 "/src/php-src/Zend/zend_language_parser.y"
7044
9.97k
                                                        { (yyval.num) = T_STATIC; }
7045
9.97k
#line 7046 "/src/php-src/Zend/zend_language_parser.c"
7046
9.97k
    break;
7047
7048
1.39k
  case 369:
7049
1.39k
#line 1113 "/src/php-src/Zend/zend_language_parser.y"
7050
1.39k
                                                        { (yyval.num) = T_ABSTRACT; }
7051
1.39k
#line 7052 "/src/php-src/Zend/zend_language_parser.c"
7052
1.39k
    break;
7053
7054
1.22k
  case 370:
7055
1.22k
#line 1114 "/src/php-src/Zend/zend_language_parser.y"
7056
1.22k
                                                        { (yyval.num) = T_FINAL; }
7057
1.22k
#line 7058 "/src/php-src/Zend/zend_language_parser.c"
7058
1.22k
    break;
7059
7060
1.04k
  case 371:
7061
1.04k
#line 1115 "/src/php-src/Zend/zend_language_parser.y"
7062
1.04k
                                                        { (yyval.num) = T_READONLY; }
7063
1.04k
#line 7064 "/src/php-src/Zend/zend_language_parser.c"
7064
1.04k
    break;
7065
7066
400
  case 372:
7067
400
#line 1119 "/src/php-src/Zend/zend_language_parser.y"
7068
400
                                           { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7069
400
#line 7070 "/src/php-src/Zend/zend_language_parser.c"
7070
400
    break;
7071
7072
19.3k
  case 373:
7073
19.3k
#line 1120 "/src/php-src/Zend/zend_language_parser.y"
7074
19.3k
                         { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PROP_DECL, (yyvsp[0].ast)); }
7075
19.3k
#line 7076 "/src/php-src/Zend/zend_language_parser.c"
7076
19.3k
    break;
7077
7078
10.5k
  case 374:
7079
10.5k
#line 1125 "/src/php-src/Zend/zend_language_parser.y"
7080
10.5k
                        { (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); }
7081
10.5k
#line 7082 "/src/php-src/Zend/zend_language_parser.c"
7082
10.5k
    break;
7083
7084
9.24k
  case 375:
7085
9.24k
#line 1127 "/src/php-src/Zend/zend_language_parser.y"
7086
9.24k
                        { (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); }
7087
9.24k
#line 7088 "/src/php-src/Zend/zend_language_parser.c"
7088
9.24k
    break;
7089
7090
4.16k
  case 376:
7091
4.16k
#line 1132 "/src/php-src/Zend/zend_language_parser.y"
7092
4.16k
                        { (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)); }
7093
4.16k
#line 7094 "/src/php-src/Zend/zend_language_parser.c"
7094
4.16k
    break;
7095
7096
454
  case 377:
7097
454
#line 1134 "/src/php-src/Zend/zend_language_parser.y"
7098
454
                        { (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)); }
7099
454
#line 7100 "/src/php-src/Zend/zend_language_parser.c"
7100
454
    break;
7101
7102
5.25k
  case 378:
7103
5.25k
#line 1138 "/src/php-src/Zend/zend_language_parser.y"
7104
5.25k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
7105
5.25k
#line 7106 "/src/php-src/Zend/zend_language_parser.c"
7106
5.25k
    break;
7107
7108
8.19k
  case 379:
7109
8.19k
#line 1139 "/src/php-src/Zend/zend_language_parser.y"
7110
8.19k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
7111
8.19k
#line 7112 "/src/php-src/Zend/zend_language_parser.c"
7112
8.19k
    break;
7113
7114
116
  case 380:
7115
116
#line 1140 "/src/php-src/Zend/zend_language_parser.y"
7116
116
                                                            {
7117
116
      (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)));
7118
116
    }
7119
116
#line 7120 "/src/php-src/Zend/zend_language_parser.c"
7120
116
    break;
7121
7122
53.0k
  case 381:
7123
53.0k
#line 1146 "/src/php-src/Zend/zend_language_parser.y"
7124
53.0k
                        { (yyval.ast) = NULL; }
7125
53.0k
#line 7126 "/src/php-src/Zend/zend_language_parser.c"
7126
53.0k
    break;
7127
7128
256
  case 382:
7129
256
#line 1147 "/src/php-src/Zend/zend_language_parser.y"
7130
256
                                                { (yyval.ast) = (yyvsp[-1].ast); }
7131
256
#line 7132 "/src/php-src/Zend/zend_language_parser.c"
7132
256
    break;
7133
7134
8.48k
  case 383:
7135
8.48k
#line 1151 "/src/php-src/Zend/zend_language_parser.y"
7136
8.48k
                       { (yyval.num) = 0; }
7137
8.48k
#line 7138 "/src/php-src/Zend/zend_language_parser.c"
7138
8.48k
    break;
7139
7140
210
  case 384:
7141
210
#line 1152 "/src/php-src/Zend/zend_language_parser.y"
7142
210
                                           {
7143
210
      (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY_HOOK, (yyvsp[0].ast));
7144
210
      if (!(yyval.num)) { YYERROR; }
7145
210
    }
7146
183
#line 7147 "/src/php-src/Zend/zend_language_parser.c"
7147
183
    break;
7148
7149
8.63k
  case 385:
7150
8.63k
#line 1160 "/src/php-src/Zend/zend_language_parser.y"
7151
8.63k
                                   { (yyval.num) = CG(zend_lineno); }
7152
8.63k
#line 7153 "/src/php-src/Zend/zend_language_parser.c"
7153
8.63k
    break;
7154
7155
8.31k
  case 386:
7156
8.31k
#line 1161 "/src/php-src/Zend/zend_language_parser.y"
7157
8.31k
                                                                                           {
7158
8.31k
      (yyval.ast) = zend_ast_create_decl(
7159
8.31k
        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)),
7160
8.31k
        (yyvsp[-3].ast), NULL, (yyvsp[-1].ast), NULL, NULL);
7161
8.31k
      CG(extra_fn_flags) = (yyvsp[-2].num);
7162
8.31k
    }
7163
8.31k
#line 7164 "/src/php-src/Zend/zend_language_parser.c"
7164
8.31k
    break;
7165
7166
2.09k
  case 387:
7167
2.09k
#line 1170 "/src/php-src/Zend/zend_language_parser.y"
7168
2.09k
                    { (yyval.ast) = NULL; }
7169
2.09k
#line 7170 "/src/php-src/Zend/zend_language_parser.c"
7170
2.09k
    break;
7171
7172
3.30k
  case 388:
7173
3.30k
#line 1171 "/src/php-src/Zend/zend_language_parser.y"
7174
3.30k
                                             { (yyval.ast) = (yyvsp[-1].ast); }
7175
3.30k
#line 7176 "/src/php-src/Zend/zend_language_parser.c"
7176
3.30k
    break;
7177
7178
2.91k
  case 389:
7179
2.91k
#line 1173 "/src/php-src/Zend/zend_language_parser.y"
7180
2.91k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROPERTY_HOOK_SHORT_BODY, (yyvsp[-1].ast)); }
7181
2.91k
#line 7182 "/src/php-src/Zend/zend_language_parser.c"
7182
2.91k
    break;
7183
7184
7.96k
  case 390:
7185
7.96k
#line 1177 "/src/php-src/Zend/zend_language_parser.y"
7186
7.96k
                       { (yyval.ast) = NULL; }
7187
7.96k
#line 7188 "/src/php-src/Zend/zend_language_parser.c"
7188
7.96k
    break;
7189
7190
491
  case 391:
7191
491
#line 1178 "/src/php-src/Zend/zend_language_parser.y"
7192
491
                                       { (yyval.ast) = (yyvsp[-1].ast); }
7193
491
#line 7194 "/src/php-src/Zend/zend_language_parser.c"
7194
491
    break;
7195
7196
210
  case 392:
7197
210
#line 1182 "/src/php-src/Zend/zend_language_parser.y"
7198
210
                                                      { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7199
210
#line 7200 "/src/php-src/Zend/zend_language_parser.c"
7200
210
    break;
7201
7202
7.97k
  case 393:
7203
7.97k
#line 1183 "/src/php-src/Zend/zend_language_parser.y"
7204
7.97k
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLASS_CONST_DECL, (yyvsp[0].ast)); }
7205
7.97k
#line 7206 "/src/php-src/Zend/zend_language_parser.c"
7206
7.97k
    break;
7207
7208
5.17k
  case 394:
7209
5.17k
#line 1187 "/src/php-src/Zend/zend_language_parser.y"
7210
5.17k
                                                     { (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)); }
7211
5.17k
#line 7212 "/src/php-src/Zend/zend_language_parser.c"
7212
5.17k
    break;
7213
7214
3.01k
  case 395:
7215
3.01k
#line 1188 "/src/php-src/Zend/zend_language_parser.y"
7216
3.01k
                                                          {
7217
3.01k
      zval zv;
7218
3.01k
      if (zend_lex_tstring(&zv, (yyvsp[-3].ident)) == FAILURE) { YYABORT; }
7219
3.01k
      (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));
7220
3.01k
    }
7221
0
#line 7222 "/src/php-src/Zend/zend_language_parser.c"
7222
0
    break;
7223
7224
9.04k
  case 396:
7225
9.04k
#line 1196 "/src/php-src/Zend/zend_language_parser.y"
7226
9.04k
                                             { (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)); }
7227
9.04k
#line 7228 "/src/php-src/Zend/zend_language_parser.c"
7228
9.04k
    break;
7229
7230
19.3k
  case 397:
7231
19.3k
#line 1200 "/src/php-src/Zend/zend_language_parser.y"
7232
19.3k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7233
19.3k
#line 7234 "/src/php-src/Zend/zend_language_parser.c"
7234
19.3k
    break;
7235
7236
56.2k
  case 398:
7237
56.2k
#line 1201 "/src/php-src/Zend/zend_language_parser.y"
7238
56.2k
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
7239
56.2k
#line 7240 "/src/php-src/Zend/zend_language_parser.c"
7240
56.2k
    break;
7241
7242
75.5k
  case 399:
7243
75.5k
#line 1204 "/src/php-src/Zend/zend_language_parser.y"
7244
75.5k
             { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
7245
75.5k
#line 7246 "/src/php-src/Zend/zend_language_parser.c"
7246
75.5k
    break;
7247
7248
1.95k
  case 400:
7249
1.95k
#line 1208 "/src/php-src/Zend/zend_language_parser.y"
7250
1.95k
                                        { (yyval.ast) = NULL; }
7251
1.95k
#line 7252 "/src/php-src/Zend/zend_language_parser.c"
7252
1.95k
    break;
7253
7254
2.07k
  case 401:
7255
2.07k
#line 1209 "/src/php-src/Zend/zend_language_parser.y"
7256
2.07k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7257
2.07k
#line 7258 "/src/php-src/Zend/zend_language_parser.c"
7258
2.07k
    break;
7259
7260
16.2k
  case 402:
7261
16.2k
#line 1210 "/src/php-src/Zend/zend_language_parser.y"
7262
16.2k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7263
16.2k
#line 7264 "/src/php-src/Zend/zend_language_parser.c"
7264
16.2k
    break;
7265
7266
19.0k
  case 403:
7267
19.0k
#line 1214 "/src/php-src/Zend/zend_language_parser.y"
7268
19.0k
                                        { (yyval.ast) = NULL; }
7269
19.0k
#line 7270 "/src/php-src/Zend/zend_language_parser.c"
7270
19.0k
    break;
7271
7272
21.2k
  case 404:
7273
21.2k
#line 1215 "/src/php-src/Zend/zend_language_parser.y"
7274
21.2k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7275
21.2k
#line 7276 "/src/php-src/Zend/zend_language_parser.c"
7276
21.2k
    break;
7277
7278
1.87k
  case 405:
7279
1.87k
#line 1219 "/src/php-src/Zend/zend_language_parser.y"
7280
1.87k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7281
1.87k
#line 7282 "/src/php-src/Zend/zend_language_parser.c"
7282
1.87k
    break;
7283
7284
74
  case 406:
7285
74
#line 1220 "/src/php-src/Zend/zend_language_parser.y"
7286
74
                                                         { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7287
74
#line 7288 "/src/php-src/Zend/zend_language_parser.c"
7288
74
    break;
7289
7290
74
  case 407:
7291
74
#line 1221 "/src/php-src/Zend/zend_language_parser.y"
7292
74
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7293
74
#line 7294 "/src/php-src/Zend/zend_language_parser.c"
7294
74
    break;
7295
7296
23.3k
  case 408:
7297
23.3k
#line 1222 "/src/php-src/Zend/zend_language_parser.y"
7298
23.3k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7299
23.3k
#line 7300 "/src/php-src/Zend/zend_language_parser.c"
7300
23.3k
    break;
7301
7302
3.01k
  case 409:
7303
3.01k
#line 1226 "/src/php-src/Zend/zend_language_parser.y"
7304
3.01k
                                                           { (yyval.num) = CG(zend_lineno); }
7305
3.01k
#line 7306 "/src/php-src/Zend/zend_language_parser.c"
7306
3.01k
    break;
7307
7308
2.88k
  case 410:
7309
2.88k
#line 1227 "/src/php-src/Zend/zend_language_parser.y"
7310
2.88k
                                                                                             {
7311
2.88k
      zend_ast *decl = zend_ast_create_decl(
7312
2.88k
        ZEND_AST_CLASS, ZEND_ACC_ANON_CLASS | (yyvsp[-9].num), (yyvsp[-7].num), (yyvsp[-3].str), NULL,
7313
2.88k
        (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL);
7314
2.88k
      (yyval.ast) = zend_ast_create(ZEND_AST_NEW, decl, (yyvsp[-6].ast));
7315
2.88k
    }
7316
2.88k
#line 7317 "/src/php-src/Zend/zend_language_parser.c"
7317
2.88k
    break;
7318
7319
62.2k
  case 411:
7320
62.2k
#line 1237 "/src/php-src/Zend/zend_language_parser.y"
7321
62.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7322
62.2k
#line 7323 "/src/php-src/Zend/zend_language_parser.c"
7323
62.2k
    break;
7324
7325
2.57k
  case 412:
7326
2.57k
#line 1239 "/src/php-src/Zend/zend_language_parser.y"
7327
2.57k
                        { (yyval.ast) = (yyvsp[0].ast); }
7328
2.57k
#line 7329 "/src/php-src/Zend/zend_language_parser.c"
7329
2.57k
    break;
7330
7331
317
  case 413:
7332
317
#line 1241 "/src/php-src/Zend/zend_language_parser.y"
7333
317
                        { zend_ast_with_attributes((yyvsp[0].ast)->child[0], (yyvsp[-1].ast)); (yyval.ast) = (yyvsp[0].ast); }
7334
317
#line 7335 "/src/php-src/Zend/zend_language_parser.c"
7335
317
    break;
7336
7337
24.1k
  case 414:
7338
24.1k
#line 1246 "/src/php-src/Zend/zend_language_parser.y"
7339
24.1k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[0].ast), zend_ast_create_list(0, ZEND_AST_ARG_LIST)); }
7340
24.1k
#line 7341 "/src/php-src/Zend/zend_language_parser.c"
7341
24.1k
    break;
7342
7343
601k
  case 415:
7344
601k
#line 1251 "/src/php-src/Zend/zend_language_parser.y"
7345
601k
                        { (yyval.ast) = (yyvsp[0].ast); }
7346
601k
#line 7347 "/src/php-src/Zend/zend_language_parser.c"
7347
601k
    break;
7348
7349
1.40k
  case 416:
7350
1.40k
#line 1253 "/src/php-src/Zend/zend_language_parser.y"
7351
1.40k
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_LIST; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7352
1.40k
#line 7353 "/src/php-src/Zend/zend_language_parser.c"
7353
1.40k
    break;
7354
7355
1.70k
  case 417:
7356
1.70k
#line 1255 "/src/php-src/Zend/zend_language_parser.y"
7357
1.70k
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7358
1.70k
#line 7359 "/src/php-src/Zend/zend_language_parser.c"
7359
1.70k
    break;
7360
7361
273k
  case 418:
7362
273k
#line 1257 "/src/php-src/Zend/zend_language_parser.y"
7363
273k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7364
273k
#line 7365 "/src/php-src/Zend/zend_language_parser.c"
7365
273k
    break;
7366
7367
5.60k
  case 419:
7368
5.60k
#line 1259 "/src/php-src/Zend/zend_language_parser.y"
7369
5.60k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_REF, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7370
5.60k
#line 7371 "/src/php-src/Zend/zend_language_parser.c"
7371
5.60k
    break;
7372
7373
536
  case 420:
7374
536
#line 1260 "/src/php-src/Zend/zend_language_parser.y"
7375
536
                                            {
7376
536
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_CLONE));
7377
536
      name->attr = ZEND_NAME_FQ;
7378
536
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7379
536
    }
7380
536
#line 7381 "/src/php-src/Zend/zend_language_parser.c"
7381
536
    break;
7382
7383
720
  case 421:
7384
720
#line 1265 "/src/php-src/Zend/zend_language_parser.y"
7385
720
                             {
7386
720
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_CLONE));
7387
720
      name->attr = ZEND_NAME_FQ;
7388
720
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, zend_ast_create_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)));
7389
720
    }
7390
720
#line 7391 "/src/php-src/Zend/zend_language_parser.c"
7391
720
    break;
7392
7393
2.57k
  case 422:
7394
2.57k
#line 1271 "/src/php-src/Zend/zend_language_parser.y"
7395
2.57k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7396
2.57k
#line 7397 "/src/php-src/Zend/zend_language_parser.c"
7397
2.57k
    break;
7398
7399
996
  case 423:
7400
996
#line 1273 "/src/php-src/Zend/zend_language_parser.y"
7401
996
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7402
996
#line 7403 "/src/php-src/Zend/zend_language_parser.c"
7403
996
    break;
7404
7405
3.35k
  case 424:
7406
3.35k
#line 1275 "/src/php-src/Zend/zend_language_parser.y"
7407
3.35k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7408
3.35k
#line 7409 "/src/php-src/Zend/zend_language_parser.c"
7409
3.35k
    break;
7410
7411
226
  case 425:
7412
226
#line 1277 "/src/php-src/Zend/zend_language_parser.y"
7413
226
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7414
226
#line 7415 "/src/php-src/Zend/zend_language_parser.c"
7415
226
    break;
7416
7417
720
  case 426:
7418
720
#line 1279 "/src/php-src/Zend/zend_language_parser.y"
7419
720
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7420
720
#line 7421 "/src/php-src/Zend/zend_language_parser.c"
7421
720
    break;
7422
7423
175k
  case 427:
7424
175k
#line 1281 "/src/php-src/Zend/zend_language_parser.y"
7425
175k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_CONCAT, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7426
175k
#line 7427 "/src/php-src/Zend/zend_language_parser.c"
7427
175k
    break;
7428
7429
840
  case 428:
7430
840
#line 1283 "/src/php-src/Zend/zend_language_parser.y"
7431
840
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7432
840
#line 7433 "/src/php-src/Zend/zend_language_parser.c"
7433
840
    break;
7434
7435
24.9k
  case 429:
7436
24.9k
#line 1285 "/src/php-src/Zend/zend_language_parser.y"
7437
24.9k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7438
24.9k
#line 7439 "/src/php-src/Zend/zend_language_parser.c"
7439
24.9k
    break;
7440
7441
373
  case 430:
7442
373
#line 1287 "/src/php-src/Zend/zend_language_parser.y"
7443
373
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7444
373
#line 7445 "/src/php-src/Zend/zend_language_parser.c"
7445
373
    break;
7446
7447
348
  case 431:
7448
348
#line 1289 "/src/php-src/Zend/zend_language_parser.y"
7449
348
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7450
348
#line 7451 "/src/php-src/Zend/zend_language_parser.c"
7451
348
    break;
7452
7453
146
  case 432:
7454
146
#line 1291 "/src/php-src/Zend/zend_language_parser.y"
7455
146
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7456
146
#line 7457 "/src/php-src/Zend/zend_language_parser.c"
7457
146
    break;
7458
7459
249
  case 433:
7460
249
#line 1293 "/src/php-src/Zend/zend_language_parser.y"
7461
249
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7462
249
#line 7463 "/src/php-src/Zend/zend_language_parser.c"
7463
249
    break;
7464
7465
8.09k
  case 434:
7466
8.09k
#line 1295 "/src/php-src/Zend/zend_language_parser.y"
7467
8.09k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7468
8.09k
#line 7469 "/src/php-src/Zend/zend_language_parser.c"
7469
8.09k
    break;
7470
7471
7.06k
  case 435:
7472
7.06k
#line 1296 "/src/php-src/Zend/zend_language_parser.y"
7473
7.06k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_INC, (yyvsp[-1].ast)); }
7474
7.06k
#line 7475 "/src/php-src/Zend/zend_language_parser.c"
7475
7.06k
    break;
7476
7477
4.09k
  case 436:
7478
4.09k
#line 1297 "/src/php-src/Zend/zend_language_parser.y"
7479
4.09k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_INC, (yyvsp[0].ast)); }
7480
4.09k
#line 7481 "/src/php-src/Zend/zend_language_parser.c"
7481
4.09k
    break;
7482
7483
3.21k
  case 437:
7484
3.21k
#line 1298 "/src/php-src/Zend/zend_language_parser.y"
7485
3.21k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_DEC, (yyvsp[-1].ast)); }
7486
3.21k
#line 7487 "/src/php-src/Zend/zend_language_parser.c"
7487
3.21k
    break;
7488
7489
2.01k
  case 438:
7490
2.01k
#line 1299 "/src/php-src/Zend/zend_language_parser.y"
7491
2.01k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_DEC, (yyvsp[0].ast)); }
7492
2.01k
#line 7493 "/src/php-src/Zend/zend_language_parser.c"
7493
2.01k
    break;
7494
7495
5.63k
  case 439:
7496
5.63k
#line 1301 "/src/php-src/Zend/zend_language_parser.y"
7497
5.63k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7498
5.63k
#line 7499 "/src/php-src/Zend/zend_language_parser.c"
7499
5.63k
    break;
7500
7501
4.81k
  case 440:
7502
4.81k
#line 1303 "/src/php-src/Zend/zend_language_parser.y"
7503
4.81k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7504
4.81k
#line 7505 "/src/php-src/Zend/zend_language_parser.c"
7505
4.81k
    break;
7506
7507
2.83k
  case 441:
7508
2.83k
#line 1305 "/src/php-src/Zend/zend_language_parser.y"
7509
2.83k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7510
2.83k
#line 7511 "/src/php-src/Zend/zend_language_parser.c"
7511
2.83k
    break;
7512
7513
3.46k
  case 442:
7514
3.46k
#line 1307 "/src/php-src/Zend/zend_language_parser.y"
7515
3.46k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7516
3.46k
#line 7517 "/src/php-src/Zend/zend_language_parser.c"
7517
3.46k
    break;
7518
7519
3.16k
  case 443:
7520
3.16k
#line 1309 "/src/php-src/Zend/zend_language_parser.y"
7521
3.16k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BOOL_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7522
3.16k
#line 7523 "/src/php-src/Zend/zend_language_parser.c"
7523
3.16k
    break;
7524
7525
38.4k
  case 444:
7526
38.4k
#line 1310 "/src/php-src/Zend/zend_language_parser.y"
7527
38.4k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7528
38.4k
#line 7529 "/src/php-src/Zend/zend_language_parser.c"
7529
38.4k
    break;
7530
7531
26.0k
  case 445:
7532
26.0k
#line 1311 "/src/php-src/Zend/zend_language_parser.y"
7533
26.0k
                                                                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7534
26.0k
#line 7535 "/src/php-src/Zend/zend_language_parser.c"
7535
26.0k
    break;
7536
7537
3.47k
  case 446:
7538
3.47k
#line 1312 "/src/php-src/Zend/zend_language_parser.y"
7539
3.47k
                                                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7540
3.47k
#line 7541 "/src/php-src/Zend/zend_language_parser.c"
7541
3.47k
    break;
7542
7543
16.3k
  case 447:
7544
16.3k
#line 1313 "/src/php-src/Zend/zend_language_parser.y"
7545
16.3k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7546
16.3k
#line 7547 "/src/php-src/Zend/zend_language_parser.c"
7547
16.3k
    break;
7548
7549
114k
  case 448:
7550
114k
#line 1314 "/src/php-src/Zend/zend_language_parser.y"
7551
114k
                                { (yyval.ast) = zend_ast_create_concat_op((yyvsp[-2].ast), (yyvsp[0].ast)); }
7552
114k
#line 7553 "/src/php-src/Zend/zend_language_parser.c"
7553
114k
    break;
7554
7555
39.8k
  case 449:
7556
39.8k
#line 1315 "/src/php-src/Zend/zend_language_parser.y"
7557
39.8k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7558
39.8k
#line 7559 "/src/php-src/Zend/zend_language_parser.c"
7559
39.8k
    break;
7560
7561
40.7k
  case 450:
7562
40.7k
#line 1316 "/src/php-src/Zend/zend_language_parser.y"
7563
40.7k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7564
40.7k
#line 7565 "/src/php-src/Zend/zend_language_parser.c"
7565
40.7k
    break;
7566
7567
29.6k
  case 451:
7568
29.6k
#line 1317 "/src/php-src/Zend/zend_language_parser.y"
7569
29.6k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7570
29.6k
#line 7571 "/src/php-src/Zend/zend_language_parser.c"
7571
29.6k
    break;
7572
7573
8.80k
  case 452:
7574
8.80k
#line 1318 "/src/php-src/Zend/zend_language_parser.y"
7575
8.80k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7576
8.80k
#line 7577 "/src/php-src/Zend/zend_language_parser.c"
7577
8.80k
    break;
7578
7579
27.7k
  case 453:
7580
27.7k
#line 1319 "/src/php-src/Zend/zend_language_parser.y"
7581
27.7k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7582
27.7k
#line 7583 "/src/php-src/Zend/zend_language_parser.c"
7583
27.7k
    break;
7584
7585
14.0k
  case 454:
7586
14.0k
#line 1320 "/src/php-src/Zend/zend_language_parser.y"
7587
14.0k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7588
14.0k
#line 7589 "/src/php-src/Zend/zend_language_parser.c"
7589
14.0k
    break;
7590
7591
7.15k
  case 455:
7592
7.15k
#line 1321 "/src/php-src/Zend/zend_language_parser.y"
7593
7.15k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7594
7.15k
#line 7595 "/src/php-src/Zend/zend_language_parser.c"
7595
7.15k
    break;
7596
7597
3.98k
  case 456:
7598
3.98k
#line 1322 "/src/php-src/Zend/zend_language_parser.y"
7599
3.98k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7600
3.98k
#line 7601 "/src/php-src/Zend/zend_language_parser.c"
7601
3.98k
    break;
7602
7603
19.3k
  case 457:
7604
19.3k
#line 1323 "/src/php-src/Zend/zend_language_parser.y"
7605
19.3k
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_PLUS, (yyvsp[0].ast)); }
7606
19.3k
#line 7607 "/src/php-src/Zend/zend_language_parser.c"
7607
19.3k
    break;
7608
7609
39.2k
  case 458:
7610
39.2k
#line 1324 "/src/php-src/Zend/zend_language_parser.y"
7611
39.2k
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_MINUS, (yyvsp[0].ast)); }
7612
39.2k
#line 7613 "/src/php-src/Zend/zend_language_parser.c"
7613
39.2k
    break;
7614
7615
47.4k
  case 459:
7616
47.4k
#line 1325 "/src/php-src/Zend/zend_language_parser.y"
7617
47.4k
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BOOL_NOT, (yyvsp[0].ast)); }
7618
47.4k
#line 7619 "/src/php-src/Zend/zend_language_parser.c"
7619
47.4k
    break;
7620
7621
35.8k
  case 460:
7622
35.8k
#line 1326 "/src/php-src/Zend/zend_language_parser.y"
7623
35.8k
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BW_NOT, (yyvsp[0].ast)); }
7624
35.8k
#line 7625 "/src/php-src/Zend/zend_language_parser.c"
7625
35.8k
    break;
7626
7627
4.96k
  case 461:
7628
4.96k
#line 1328 "/src/php-src/Zend/zend_language_parser.y"
7629
4.96k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7630
4.96k
#line 7631 "/src/php-src/Zend/zend_language_parser.c"
7631
4.96k
    break;
7632
7633
2.26k
  case 462:
7634
2.26k
#line 1330 "/src/php-src/Zend/zend_language_parser.y"
7635
2.26k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7636
2.26k
#line 7637 "/src/php-src/Zend/zend_language_parser.c"
7637
2.26k
    break;
7638
7639
22.2k
  case 463:
7640
22.2k
#line 1332 "/src/php-src/Zend/zend_language_parser.y"
7641
22.2k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7642
22.2k
#line 7643 "/src/php-src/Zend/zend_language_parser.c"
7643
22.2k
    break;
7644
7645
7.45k
  case 464:
7646
7.45k
#line 1334 "/src/php-src/Zend/zend_language_parser.y"
7647
7.45k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7648
7.45k
#line 7649 "/src/php-src/Zend/zend_language_parser.c"
7649
7.45k
    break;
7650
7651
4.93k
  case 465:
7652
4.93k
#line 1336 "/src/php-src/Zend/zend_language_parser.y"
7653
4.93k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PIPE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7654
4.93k
#line 7655 "/src/php-src/Zend/zend_language_parser.c"
7655
4.93k
    break;
7656
7657
25.5k
  case 466:
7658
25.5k
#line 1338 "/src/php-src/Zend/zend_language_parser.y"
7659
25.5k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7660
25.5k
#line 7661 "/src/php-src/Zend/zend_language_parser.c"
7661
25.5k
    break;
7662
7663
4.40k
  case 467:
7664
4.40k
#line 1340 "/src/php-src/Zend/zend_language_parser.y"
7665
4.40k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER_OR_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7666
4.40k
#line 7667 "/src/php-src/Zend/zend_language_parser.c"
7667
4.40k
    break;
7668
7669
18.0k
  case 468:
7670
18.0k
#line 1342 "/src/php-src/Zend/zend_language_parser.y"
7671
18.0k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7672
18.0k
#line 7673 "/src/php-src/Zend/zend_language_parser.c"
7673
18.0k
    break;
7674
7675
3.81k
  case 469:
7676
3.81k
#line 1344 "/src/php-src/Zend/zend_language_parser.y"
7677
3.81k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7678
3.81k
#line 7679 "/src/php-src/Zend/zend_language_parser.c"
7679
3.81k
    break;
7680
7681
659
  case 470:
7682
659
#line 1346 "/src/php-src/Zend/zend_language_parser.y"
7683
659
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_SPACESHIP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7684
659
#line 7685 "/src/php-src/Zend/zend_language_parser.c"
7685
659
    break;
7686
7687
812
  case 471:
7688
812
#line 1348 "/src/php-src/Zend/zend_language_parser.y"
7689
812
                        { (yyval.ast) = zend_ast_create(ZEND_AST_INSTANCEOF, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7690
812
#line 7691 "/src/php-src/Zend/zend_language_parser.c"
7691
812
    break;
7692
7693
22.2k
  case 472:
7694
22.2k
#line 1349 "/src/php-src/Zend/zend_language_parser.y"
7695
22.2k
                             {
7696
22.2k
      (yyval.ast) = (yyvsp[-1].ast);
7697
22.2k
      if ((yyval.ast)->kind == ZEND_AST_CONDITIONAL) (yyval.ast)->attr = ZEND_PARENTHESIZED_CONDITIONAL;
7698
22.2k
    }
7699
22.2k
#line 7700 "/src/php-src/Zend/zend_language_parser.c"
7700
22.2k
    break;
7701
7702
63.7k
  case 473:
7703
63.7k
#line 1353 "/src/php-src/Zend/zend_language_parser.y"
7704
63.7k
                                    { (yyval.ast) = (yyvsp[0].ast); }
7705
63.7k
#line 7706 "/src/php-src/Zend/zend_language_parser.c"
7706
63.7k
    break;
7707
7708
24.1k
  case 474:
7709
24.1k
#line 1354 "/src/php-src/Zend/zend_language_parser.y"
7710
24.1k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7711
24.1k
#line 7712 "/src/php-src/Zend/zend_language_parser.c"
7712
24.1k
    break;
7713
7714
5.51k
  case 475:
7715
5.51k
#line 1356 "/src/php-src/Zend/zend_language_parser.y"
7716
5.51k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
7717
5.51k
#line 7718 "/src/php-src/Zend/zend_language_parser.c"
7718
5.51k
    break;
7719
7720
6.27k
  case 476:
7721
6.27k
#line 1358 "/src/php-src/Zend/zend_language_parser.y"
7722
6.27k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-3].ast), NULL, (yyvsp[0].ast)); }
7723
6.27k
#line 7724 "/src/php-src/Zend/zend_language_parser.c"
7724
6.27k
    break;
7725
7726
16.6k
  case 477:
7727
16.6k
#line 1360 "/src/php-src/Zend/zend_language_parser.y"
7728
16.6k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7729
16.6k
#line 7730 "/src/php-src/Zend/zend_language_parser.c"
7730
16.6k
    break;
7731
7732
15.8k
  case 478:
7733
15.8k
#line 1361 "/src/php-src/Zend/zend_language_parser.y"
7734
15.8k
                                           { (yyval.ast) = (yyvsp[0].ast); }
7735
15.8k
#line 7736 "/src/php-src/Zend/zend_language_parser.c"
7736
15.8k
    break;
7737
7738
1.15k
  case 479:
7739
1.15k
#line 1362 "/src/php-src/Zend/zend_language_parser.y"
7740
1.15k
                                        { (yyval.ast) = zend_ast_create_cast(IS_LONG, (yyvsp[0].ast)); }
7741
1.15k
#line 7742 "/src/php-src/Zend/zend_language_parser.c"
7742
1.15k
    break;
7743
7744
419
  case 480:
7745
419
#line 1363 "/src/php-src/Zend/zend_language_parser.y"
7746
419
                                        { (yyval.ast) = zend_ast_create_cast(IS_DOUBLE, (yyvsp[0].ast)); }
7747
419
#line 7748 "/src/php-src/Zend/zend_language_parser.c"
7748
419
    break;
7749
7750
982
  case 481:
7751
982
#line 1364 "/src/php-src/Zend/zend_language_parser.y"
7752
982
                                        { (yyval.ast) = zend_ast_create_cast(IS_STRING, (yyvsp[0].ast)); }
7753
982
#line 7754 "/src/php-src/Zend/zend_language_parser.c"
7754
982
    break;
7755
7756
1.04k
  case 482:
7757
1.04k
#line 1365 "/src/php-src/Zend/zend_language_parser.y"
7758
1.04k
                                        { (yyval.ast) = zend_ast_create_cast(IS_ARRAY, (yyvsp[0].ast)); }
7759
1.04k
#line 7760 "/src/php-src/Zend/zend_language_parser.c"
7760
1.04k
    break;
7761
7762
654
  case 483:
7763
654
#line 1366 "/src/php-src/Zend/zend_language_parser.y"
7764
654
                                        { (yyval.ast) = zend_ast_create_cast(IS_OBJECT, (yyvsp[0].ast)); }
7765
654
#line 7766 "/src/php-src/Zend/zend_language_parser.c"
7766
654
    break;
7767
7768
124
  case 484:
7769
124
#line 1367 "/src/php-src/Zend/zend_language_parser.y"
7770
124
                                        { (yyval.ast) = zend_ast_create_cast(_IS_BOOL, (yyvsp[0].ast)); }
7771
124
#line 7772 "/src/php-src/Zend/zend_language_parser.c"
7772
124
    break;
7773
7774
225
  case 485:
7775
225
#line 1368 "/src/php-src/Zend/zend_language_parser.y"
7776
225
                                        { (yyval.ast) = zend_ast_create_cast(IS_NULL, (yyvsp[0].ast)); }
7777
225
#line 7778 "/src/php-src/Zend/zend_language_parser.c"
7778
225
    break;
7779
7780
4.06k
  case 486:
7781
4.06k
#line 1369 "/src/php-src/Zend/zend_language_parser.y"
7782
4.06k
                                      {
7783
4.06k
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_EXIT));
7784
4.06k
      name->attr = ZEND_NAME_FQ;
7785
4.06k
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7786
4.06k
    }
7787
4.06k
#line 7788 "/src/php-src/Zend/zend_language_parser.c"
7788
4.06k
    break;
7789
7790
712k
  case 487:
7791
712k
#line 1374 "/src/php-src/Zend/zend_language_parser.y"
7792
712k
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_SILENCE, (yyvsp[0].ast)); }
7793
712k
#line 7794 "/src/php-src/Zend/zend_language_parser.c"
7794
712k
    break;
7795
7796
1.70M
  case 488:
7797
1.70M
#line 1375 "/src/php-src/Zend/zend_language_parser.y"
7798
1.70M
                       { (yyval.ast) = (yyvsp[0].ast); }
7799
1.70M
#line 7800 "/src/php-src/Zend/zend_language_parser.c"
7800
1.70M
    break;
7801
7802
3.82k
  case 489:
7803
3.82k
#line 1376 "/src/php-src/Zend/zend_language_parser.y"
7804
3.82k
                                       { (yyval.ast) = zend_ast_create(ZEND_AST_SHELL_EXEC, (yyvsp[-1].ast)); }
7805
3.82k
#line 7806 "/src/php-src/Zend/zend_language_parser.c"
7806
3.82k
    break;
7807
7808
4.14k
  case 490:
7809
4.14k
#line 1377 "/src/php-src/Zend/zend_language_parser.y"
7810
4.14k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_PRINT, (yyvsp[0].ast)); }
7811
4.14k
#line 7812 "/src/php-src/Zend/zend_language_parser.c"
7812
4.14k
    break;
7813
7814
2.10k
  case 491:
7815
2.10k
#line 1378 "/src/php-src/Zend/zend_language_parser.y"
7816
2.10k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, NULL, NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7817
2.10k
#line 7818 "/src/php-src/Zend/zend_language_parser.c"
7818
2.10k
    break;
7819
7820
4.05k
  case 492:
7821
4.05k
#line 1379 "/src/php-src/Zend/zend_language_parser.y"
7822
4.05k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7823
4.05k
#line 7824 "/src/php-src/Zend/zend_language_parser.c"
7824
4.05k
    break;
7825
7826
607
  case 493:
7827
607
#line 1380 "/src/php-src/Zend/zend_language_parser.y"
7828
607
                                                 { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), (yyvsp[-2].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7829
607
#line 7830 "/src/php-src/Zend/zend_language_parser.c"
7830
607
    break;
7831
7832
926
  case 494:
7833
926
#line 1381 "/src/php-src/Zend/zend_language_parser.y"
7834
926
                                  { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD_FROM, (yyvsp[0].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7835
926
#line 7836 "/src/php-src/Zend/zend_language_parser.c"
7836
926
    break;
7837
7838
3.13k
  case 495:
7839
3.13k
#line 1382 "/src/php-src/Zend/zend_language_parser.y"
7840
3.13k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_THROW, (yyvsp[0].ast)); }
7841
3.13k
#line 7842 "/src/php-src/Zend/zend_language_parser.c"
7842
3.13k
    break;
7843
7844
28.9k
  case 496:
7845
28.9k
#line 1383 "/src/php-src/Zend/zend_language_parser.y"
7846
28.9k
                                { (yyval.ast) = (yyvsp[0].ast); }
7847
28.9k
#line 7848 "/src/php-src/Zend/zend_language_parser.c"
7848
28.9k
    break;
7849
7850
3.34k
  case 497:
7851
3.34k
#line 1384 "/src/php-src/Zend/zend_language_parser.y"
7852
3.34k
                                           { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
7853
3.34k
#line 7854 "/src/php-src/Zend/zend_language_parser.c"
7854
3.34k
    break;
7855
7856
327
  case 498:
7857
327
#line 1385 "/src/php-src/Zend/zend_language_parser.y"
7858
327
                                         { (yyval.ast) = (yyvsp[0].ast); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7859
327
#line 7860 "/src/php-src/Zend/zend_language_parser.c"
7860
327
    break;
7861
7862
55
  case 499:
7863
55
#line 1387 "/src/php-src/Zend/zend_language_parser.y"
7864
55
                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-2].ast)); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7865
55
#line 7866 "/src/php-src/Zend/zend_language_parser.c"
7866
55
    break;
7867
7868
2.14k
  case 500:
7869
2.14k
#line 1388 "/src/php-src/Zend/zend_language_parser.y"
7870
2.14k
                      { (yyval.ast) = (yyvsp[0].ast); }
7871
2.14k
#line 7872 "/src/php-src/Zend/zend_language_parser.c"
7872
2.14k
    break;
7873
7874
16.3k
  case 501:
7875
16.3k
#line 1395 "/src/php-src/Zend/zend_language_parser.y"
7876
16.3k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLOSURE, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-10].str),
7877
16.3k
          NULL,
7878
16.3k
          (yyvsp[-8].ast), (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-5].ast), NULL); CG(extra_fn_flags) = (yyvsp[-4].num); }
7879
16.3k
#line 7880 "/src/php-src/Zend/zend_language_parser.c"
7880
16.3k
    break;
7881
7882
16.2k
  case 502:
7883
16.2k
#line 1400 "/src/php-src/Zend/zend_language_parser.y"
7884
16.2k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_ARROW_FUNC, (yyvsp[-10].num) | (yyvsp[0].num), (yyvsp[-11].num), (yyvsp[-9].str),
7885
16.2k
          NULL, (yyvsp[-7].ast), NULL, (yyvsp[-1].ast), (yyvsp[-5].ast), NULL);
7886
16.2k
          CG(extra_fn_flags) = (yyvsp[-3].num); }
7887
16.2k
#line 7888 "/src/php-src/Zend/zend_language_parser.c"
7888
16.2k
    break;
7889
7890
17.1k
  case 503:
7891
17.1k
#line 1406 "/src/php-src/Zend/zend_language_parser.y"
7892
17.1k
             { (yyval.num) = CG(zend_lineno); }
7893
17.1k
#line 7894 "/src/php-src/Zend/zend_language_parser.c"
7894
17.1k
    break;
7895
7896
71.1k
  case 504:
7897
71.1k
#line 1410 "/src/php-src/Zend/zend_language_parser.y"
7898
71.1k
                   { (yyval.num) = CG(zend_lineno); }
7899
71.1k
#line 7900 "/src/php-src/Zend/zend_language_parser.c"
7900
71.1k
    break;
7901
7902
252k
  case 505:
7903
252k
#line 1414 "/src/php-src/Zend/zend_language_parser.y"
7904
252k
               { (yyval.str) = CG(doc_comment); CG(doc_comment) = NULL; }
7905
252k
#line 7906 "/src/php-src/Zend/zend_language_parser.c"
7906
252k
    break;
7907
7908
189k
  case 506:
7909
189k
#line 1418 "/src/php-src/Zend/zend_language_parser.y"
7910
189k
                                         { (yyval.num) = CG(extra_fn_flags); CG(extra_fn_flags) = 0; }
7911
189k
#line 7912 "/src/php-src/Zend/zend_language_parser.c"
7912
189k
    break;
7913
7914
16.9k
  case 507:
7915
16.9k
#line 1422 "/src/php-src/Zend/zend_language_parser.y"
7916
16.9k
               { (yyval.ptr) = LANG_SCNG(yy_text); }
7917
16.9k
#line 7918 "/src/php-src/Zend/zend_language_parser.c"
7918
16.9k
    break;
7919
7920
93.2k
  case 508:
7921
93.2k
#line 1426 "/src/php-src/Zend/zend_language_parser.y"
7922
93.2k
                        { (yyval.num) = 0; }
7923
93.2k
#line 7924 "/src/php-src/Zend/zend_language_parser.c"
7924
93.2k
    break;
7925
7926
3.80k
  case 509:
7927
3.80k
#line 1427 "/src/php-src/Zend/zend_language_parser.y"
7928
3.80k
                                { (yyval.num) = ZEND_ACC_RETURN_REFERENCE; }
7929
3.80k
#line 7930 "/src/php-src/Zend/zend_language_parser.c"
7930
3.80k
    break;
7931
7932
15.5k
  case 510:
7933
15.5k
#line 1431 "/src/php-src/Zend/zend_language_parser.y"
7934
15.5k
                       { (yyval.ast) = NULL; }
7935
15.5k
#line 7936 "/src/php-src/Zend/zend_language_parser.c"
7936
15.5k
    break;
7937
7938
1.91k
  case 511:
7939
1.91k
#line 1432 "/src/php-src/Zend/zend_language_parser.y"
7940
1.91k
                                                              { (yyval.ast) = (yyvsp[-2].ast); }
7941
1.91k
#line 7942 "/src/php-src/Zend/zend_language_parser.c"
7942
1.91k
    break;
7943
7944
3.36k
  case 512:
7945
3.36k
#line 1436 "/src/php-src/Zend/zend_language_parser.y"
7946
3.36k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7947
3.36k
#line 7948 "/src/php-src/Zend/zend_language_parser.c"
7948
3.36k
    break;
7949
7950
1.92k
  case 513:
7951
1.92k
#line 1437 "/src/php-src/Zend/zend_language_parser.y"
7952
1.92k
                            { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLOSURE_USES, (yyvsp[0].ast)); }
7953
1.92k
#line 7954 "/src/php-src/Zend/zend_language_parser.c"
7954
1.92k
    break;
7955
7956
3.84k
  case 514:
7957
3.84k
#line 1441 "/src/php-src/Zend/zend_language_parser.y"
7958
3.84k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7959
3.84k
#line 7960 "/src/php-src/Zend/zend_language_parser.c"
7960
3.84k
    break;
7961
7962
1.43k
  case 515:
7963
1.43k
#line 1442 "/src/php-src/Zend/zend_language_parser.y"
7964
1.43k
                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_BIND_REF; }
7965
1.43k
#line 7966 "/src/php-src/Zend/zend_language_parser.c"
7966
1.43k
    break;
7967
7968
226k
  case 516:
7969
226k
#line 1447 "/src/php-src/Zend/zend_language_parser.y"
7970
226k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7971
226k
#line 7972 "/src/php-src/Zend/zend_language_parser.c"
7972
226k
    break;
7973
7974
73
  case 517:
7975
73
#line 1448 "/src/php-src/Zend/zend_language_parser.y"
7976
73
                                         {
7977
73
      zval zv;
7978
73
      if (zend_lex_tstring(&zv, (yyvsp[-1].ident)) == FAILURE) { YYABORT; }
7979
73
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, zend_ast_create_zval(&zv), (yyvsp[0].ast));
7980
73
    }
7981
0
#line 7982 "/src/php-src/Zend/zend_language_parser.c"
7982
0
    break;
7983
7984
10.8k
  case 518:
7985
10.8k
#line 1454 "/src/php-src/Zend/zend_language_parser.y"
7986
10.8k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
7987
10.8k
#line 7988 "/src/php-src/Zend/zend_language_parser.c"
7988
10.8k
    break;
7989
7990
5.94k
  case 519:
7991
5.94k
#line 1456 "/src/php-src/Zend/zend_language_parser.y"
7992
5.94k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
7993
5.94k
#line 7994 "/src/php-src/Zend/zend_language_parser.c"
7994
5.94k
    break;
7995
7996
18.1k
  case 520:
7997
18.1k
#line 1457 "/src/php-src/Zend/zend_language_parser.y"
7998
18.1k
                              { (yyval.num) = CG(zend_lineno); }
7999
18.1k
#line 8000 "/src/php-src/Zend/zend_language_parser.c"
8000
18.1k
    break;
8001
8002
13.2k
  case 521:
8003
13.2k
#line 1457 "/src/php-src/Zend/zend_language_parser.y"
8004
13.2k
                                                                           {
8005
13.2k
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-2].ast), (yyvsp[0].ast));
8006
13.2k
      (yyval.ast)->lineno = (yyvsp[-1].num);
8007
13.2k
    }
8008
13.2k
#line 8009 "/src/php-src/Zend/zend_language_parser.c"
8009
13.2k
    break;
8010
8011
1.49k
  case 522:
8012
1.49k
#line 1465 "/src/php-src/Zend/zend_language_parser.y"
8013
1.49k
                        { zval zv; ZVAL_INTERNED_STR(&zv, ZSTR_KNOWN(ZEND_STR_STATIC));
8014
1.49k
        (yyval.ast) = zend_ast_create_zval_ex(&zv, ZEND_NAME_NOT_FQ); }
8015
1.49k
#line 8016 "/src/php-src/Zend/zend_language_parser.c"
8016
1.49k
    break;
8017
8018
236k
  case 523:
8019
236k
#line 1467 "/src/php-src/Zend/zend_language_parser.y"
8020
236k
                     { (yyval.ast) = (yyvsp[0].ast); }
8021
236k
#line 8022 "/src/php-src/Zend/zend_language_parser.c"
8022
236k
    break;
8023
8024
85.3k
  case 524:
8025
85.3k
#line 1471 "/src/php-src/Zend/zend_language_parser.y"
8026
85.3k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8027
85.3k
#line 8028 "/src/php-src/Zend/zend_language_parser.c"
8028
85.3k
    break;
8029
8030
2.65k
  case 525:
8031
2.65k
#line 1472 "/src/php-src/Zend/zend_language_parser.y"
8032
2.65k
                                { (yyval.ast) = (yyvsp[0].ast); }
8033
2.65k
#line 8034 "/src/php-src/Zend/zend_language_parser.c"
8034
2.65k
    break;
8035
8036
410
  case 526:
8037
410
#line 1473 "/src/php-src/Zend/zend_language_parser.y"
8038
410
                                { (yyval.ast) = (yyvsp[-1].ast); }
8039
410
#line 8040 "/src/php-src/Zend/zend_language_parser.c"
8040
410
    break;
8041
8042
1.32k
  case 527:
8043
1.32k
#line 1478 "/src/php-src/Zend/zend_language_parser.y"
8044
1.32k
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
8045
1.32k
#line 8046 "/src/php-src/Zend/zend_language_parser.c"
8046
1.32k
    break;
8047
8048
1.80k
  case 528:
8049
1.80k
#line 1479 "/src/php-src/Zend/zend_language_parser.y"
8050
1.80k
                                          { (yyval.ast) = (yyvsp[0].ast); }
8051
1.80k
#line 8052 "/src/php-src/Zend/zend_language_parser.c"
8052
1.80k
    break;
8053
8054
1.17k
  case 529:
8055
1.17k
#line 1480 "/src/php-src/Zend/zend_language_parser.y"
8056
1.17k
                            { (yyval.ast) = (yyvsp[0].ast); }
8057
1.17k
#line 8058 "/src/php-src/Zend/zend_language_parser.c"
8058
1.17k
    break;
8059
8060
5.98k
  case 530:
8061
5.98k
#line 1485 "/src/php-src/Zend/zend_language_parser.y"
8062
5.98k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_ARG_LIST); }
8063
5.98k
#line 8064 "/src/php-src/Zend/zend_language_parser.c"
8064
5.98k
    break;
8065
8066
1.08k
  case 531:
8067
1.08k
#line 1486 "/src/php-src/Zend/zend_language_parser.y"
8068
1.08k
                              { (yyval.ast) = (yyvsp[0].ast); }
8069
1.08k
#line 8070 "/src/php-src/Zend/zend_language_parser.c"
8070
1.08k
    break;
8071
8072
7.07k
  case 532:
8073
7.07k
#line 1491 "/src/php-src/Zend/zend_language_parser.y"
8074
7.07k
                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LONG; }
8075
7.07k
#line 8076 "/src/php-src/Zend/zend_language_parser.c"
8076
7.07k
    break;
8077
8078
115k
  case 533:
8079
115k
#line 1492 "/src/php-src/Zend/zend_language_parser.y"
8080
115k
                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
8081
115k
#line 8082 "/src/php-src/Zend/zend_language_parser.c"
8082
115k
    break;
8083
8084
402k
  case 534:
8085
402k
#line 1493 "/src/php-src/Zend/zend_language_parser.y"
8086
402k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8087
402k
#line 8088 "/src/php-src/Zend/zend_language_parser.c"
8088
402k
    break;
8089
8090
39.4k
  case 535:
8091
39.4k
#line 1494 "/src/php-src/Zend/zend_language_parser.y"
8092
39.4k
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
8093
39.4k
#line 8094 "/src/php-src/Zend/zend_language_parser.c"
8094
39.4k
    break;
8095
8096
608k
  case 536:
8097
608k
#line 1498 "/src/php-src/Zend/zend_language_parser.y"
8098
608k
                                { (yyval.ast) = (yyvsp[0].ast); }
8099
608k
#line 8100 "/src/php-src/Zend/zend_language_parser.c"
8100
608k
    break;
8101
8102
63.2k
  case 537:
8103
63.2k
#line 1499 "/src/php-src/Zend/zend_language_parser.y"
8104
63.2k
                                { (yyval.ast) = (yyvsp[0].ast); }
8105
63.2k
#line 8106 "/src/php-src/Zend/zend_language_parser.c"
8106
63.2k
    break;
8107
8108
3.33k
  case 538:
8109
3.33k
#line 1500 "/src/php-src/Zend/zend_language_parser.y"
8110
3.33k
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
8111
3.33k
#line 8112 "/src/php-src/Zend/zend_language_parser.c"
8112
3.33k
    break;
8113
8114
422
  case 539:
8115
422
#line 1502 "/src/php-src/Zend/zend_language_parser.y"
8116
422
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
8117
422
#line 8118 "/src/php-src/Zend/zend_language_parser.c"
8118
422
    break;
8119
8120
4.53k
  case 540:
8121
4.53k
#line 1503 "/src/php-src/Zend/zend_language_parser.y"
8122
4.53k
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
8123
4.53k
#line 8124 "/src/php-src/Zend/zend_language_parser.c"
8124
4.53k
    break;
8125
8126
551k
  case 541:
8127
551k
#line 1504 "/src/php-src/Zend/zend_language_parser.y"
8128
551k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8129
551k
#line 8130 "/src/php-src/Zend/zend_language_parser.c"
8130
551k
    break;
8131
8132
448k
  case 542:
8133
448k
#line 1505 "/src/php-src/Zend/zend_language_parser.y"
8134
448k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8135
448k
#line 8136 "/src/php-src/Zend/zend_language_parser.c"
8136
448k
    break;
8137
8138
24.6k
  case 543:
8139
24.6k
#line 1506 "/src/php-src/Zend/zend_language_parser.y"
8140
24.6k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8141
24.6k
#line 8142 "/src/php-src/Zend/zend_language_parser.c"
8142
24.6k
    break;
8143
8144
440k
  case 544:
8145
440k
#line 1510 "/src/php-src/Zend/zend_language_parser.y"
8146
440k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONST, (yyvsp[0].ast)); }
8147
440k
#line 8148 "/src/php-src/Zend/zend_language_parser.c"
8148
440k
    break;
8149
8150
325
  case 545:
8151
325
#line 1511 "/src/php-src/Zend/zend_language_parser.y"
8152
325
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_LINE); }
8153
325
#line 8154 "/src/php-src/Zend/zend_language_parser.c"
8154
325
    break;
8155
8156
5.13k
  case 546:
8157
5.13k
#line 1512 "/src/php-src/Zend/zend_language_parser.y"
8158
5.13k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FILE); }
8159
5.13k
#line 8160 "/src/php-src/Zend/zend_language_parser.c"
8160
5.13k
    break;
8161
8162
1.92k
  case 547:
8163
1.92k
#line 1513 "/src/php-src/Zend/zend_language_parser.y"
8164
1.92k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_DIR); }
8165
1.92k
#line 8166 "/src/php-src/Zend/zend_language_parser.c"
8166
1.92k
    break;
8167
8168
2.25k
  case 548:
8169
2.25k
#line 1514 "/src/php-src/Zend/zend_language_parser.y"
8170
2.25k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_TRAIT_C); }
8171
2.25k
#line 8172 "/src/php-src/Zend/zend_language_parser.c"
8172
2.25k
    break;
8173
8174
5.42k
  case 549:
8175
5.42k
#line 1515 "/src/php-src/Zend/zend_language_parser.y"
8176
5.42k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_METHOD_C); }
8177
5.42k
#line 8178 "/src/php-src/Zend/zend_language_parser.c"
8178
5.42k
    break;
8179
8180
1.49k
  case 550:
8181
1.49k
#line 1516 "/src/php-src/Zend/zend_language_parser.y"
8182
1.49k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FUNC_C); }
8183
1.49k
#line 8184 "/src/php-src/Zend/zend_language_parser.c"
8184
1.49k
    break;
8185
8186
425
  case 551:
8187
425
#line 1517 "/src/php-src/Zend/zend_language_parser.y"
8188
425
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_PROPERTY_C); }
8189
425
#line 8190 "/src/php-src/Zend/zend_language_parser.c"
8190
425
    break;
8191
8192
785
  case 552:
8193
785
#line 1518 "/src/php-src/Zend/zend_language_parser.y"
8194
785
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_NS_C); }
8195
785
#line 8196 "/src/php-src/Zend/zend_language_parser.c"
8196
785
    break;
8197
8198
2.13k
  case 553:
8199
2.13k
#line 1519 "/src/php-src/Zend/zend_language_parser.y"
8200
2.13k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_CLASS_C); }
8201
2.13k
#line 8202 "/src/php-src/Zend/zend_language_parser.c"
8202
2.13k
    break;
8203
8204
20.7k
  case 554:
8205
20.7k
#line 1524 "/src/php-src/Zend/zend_language_parser.y"
8206
20.7k
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
8207
20.7k
#line 8208 "/src/php-src/Zend/zend_language_parser.c"
8208
20.7k
    break;
8209
8210
14.4k
  case 555:
8211
14.4k
#line 1526 "/src/php-src/Zend/zend_language_parser.y"
8212
14.4k
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
8213
14.4k
#line 8214 "/src/php-src/Zend/zend_language_parser.c"
8214
14.4k
    break;
8215
8216
903
  case 556:
8217
903
#line 1528 "/src/php-src/Zend/zend_language_parser.y"
8218
903
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
8219
903
#line 8220 "/src/php-src/Zend/zend_language_parser.c"
8220
903
    break;
8221
8222
819
  case 557:
8223
819
#line 1530 "/src/php-src/Zend/zend_language_parser.y"
8224
819
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
8225
819
#line 8226 "/src/php-src/Zend/zend_language_parser.c"
8226
819
    break;
8227
8228
10.9k
  case 558:
8229
10.9k
#line 1534 "/src/php-src/Zend/zend_language_parser.y"
8230
10.9k
                        { (yyval.ast) = NULL; }
8231
10.9k
#line 8232 "/src/php-src/Zend/zend_language_parser.c"
8232
10.9k
    break;
8233
8234
121k
  case 559:
8235
121k
#line 1535 "/src/php-src/Zend/zend_language_parser.y"
8236
121k
                                { (yyval.ast) = (yyvsp[0].ast); }
8237
121k
#line 8238 "/src/php-src/Zend/zend_language_parser.c"
8238
121k
    break;
8239
8240
24.7k
  case 560:
8241
24.7k
#line 1539 "/src/php-src/Zend/zend_language_parser.y"
8242
24.7k
                                      { (yyval.ast) = (yyvsp[0].ast); }
8243
24.7k
#line 8244 "/src/php-src/Zend/zend_language_parser.c"
8244
24.7k
    break;
8245
8246
209k
  case 561:
8247
209k
#line 1543 "/src/php-src/Zend/zend_language_parser.y"
8248
209k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8249
209k
#line 8250 "/src/php-src/Zend/zend_language_parser.c"
8250
209k
    break;
8251
8252
3.51k
  case 562:
8253
3.51k
#line 1544 "/src/php-src/Zend/zend_language_parser.y"
8254
3.51k
                             {
8255
3.51k
      (yyval.ast) = (yyvsp[-1].ast);
8256
3.51k
      if ((yyval.ast)->kind == ZEND_AST_STATIC_PROP) (yyval.ast)->attr = ZEND_PARENTHESIZED_STATIC_PROP;
8257
3.51k
    }
8258
3.51k
#line 8259 "/src/php-src/Zend/zend_language_parser.c"
8259
3.51k
    break;
8260
8261
11.5k
  case 563:
8262
11.5k
#line 1548 "/src/php-src/Zend/zend_language_parser.y"
8263
11.5k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8264
11.5k
#line 8265 "/src/php-src/Zend/zend_language_parser.c"
8265
11.5k
    break;
8266
8267
12.2k
  case 564:
8268
12.2k
#line 1549 "/src/php-src/Zend/zend_language_parser.y"
8269
12.2k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8270
12.2k
#line 8271 "/src/php-src/Zend/zend_language_parser.c"
8271
12.2k
    break;
8272
8273
1.02k
  case 565:
8274
1.02k
#line 1550 "/src/php-src/Zend/zend_language_parser.y"
8275
1.02k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8276
1.02k
#line 8277 "/src/php-src/Zend/zend_language_parser.c"
8277
1.02k
    break;
8278
8279
213k
  case 566:
8280
213k
#line 1554 "/src/php-src/Zend/zend_language_parser.y"
8281
213k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8282
213k
#line 8283 "/src/php-src/Zend/zend_language_parser.c"
8283
213k
    break;
8284
8285
12.3k
  case 567:
8286
12.3k
#line 1555 "/src/php-src/Zend/zend_language_parser.y"
8287
12.3k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8288
12.3k
#line 8289 "/src/php-src/Zend/zend_language_parser.c"
8289
12.3k
    break;
8290
8291
14.9k
  case 568:
8292
14.9k
#line 1559 "/src/php-src/Zend/zend_language_parser.y"
8293
14.9k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8294
14.9k
#line 8295 "/src/php-src/Zend/zend_language_parser.c"
8295
14.9k
    break;
8296
8297
1.88k
  case 569:
8298
1.88k
#line 1560 "/src/php-src/Zend/zend_language_parser.y"
8299
1.88k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
8300
1.88k
#line 8301 "/src/php-src/Zend/zend_language_parser.c"
8301
1.88k
    break;
8302
8303
1.00k
  case 570:
8304
1.00k
#line 1561 "/src/php-src/Zend/zend_language_parser.y"
8305
1.00k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8306
1.00k
#line 8307 "/src/php-src/Zend/zend_language_parser.c"
8307
1.00k
    break;
8308
8309
332
  case 571:
8310
332
#line 1562 "/src/php-src/Zend/zend_language_parser.y"
8311
332
                                                { (yyval.ast) = (yyvsp[0].ast); }
8312
332
#line 8313 "/src/php-src/Zend/zend_language_parser.c"
8313
332
    break;
8314
8315
886k
  case 572:
8316
886k
#line 1567 "/src/php-src/Zend/zend_language_parser.y"
8317
886k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8318
886k
#line 8319 "/src/php-src/Zend/zend_language_parser.c"
8319
886k
    break;
8320
8321
113k
  case 573:
8322
113k
#line 1569 "/src/php-src/Zend/zend_language_parser.y"
8323
113k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8324
113k
#line 8325 "/src/php-src/Zend/zend_language_parser.c"
8325
113k
    break;
8326
8327
54.2k
  case 574:
8328
54.2k
#line 1571 "/src/php-src/Zend/zend_language_parser.y"
8329
54.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8330
54.2k
#line 8331 "/src/php-src/Zend/zend_language_parser.c"
8331
54.2k
    break;
8332
8333
2.17k
  case 575:
8334
2.17k
#line 1573 "/src/php-src/Zend/zend_language_parser.y"
8335
2.17k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8336
2.17k
#line 8337 "/src/php-src/Zend/zend_language_parser.c"
8337
2.17k
    break;
8338
8339
257k
  case 576:
8340
257k
#line 1574 "/src/php-src/Zend/zend_language_parser.y"
8341
257k
                              { (yyval.ast) = (yyvsp[0].ast); }
8342
257k
#line 8343 "/src/php-src/Zend/zend_language_parser.c"
8343
257k
    break;
8344
8345
1.29M
  case 577:
8346
1.29M
#line 1579 "/src/php-src/Zend/zend_language_parser.y"
8347
1.29M
                        { (yyval.ast) = (yyvsp[0].ast); }
8348
1.29M
#line 8349 "/src/php-src/Zend/zend_language_parser.c"
8349
1.29M
    break;
8350
8351
14.5k
  case 578:
8352
14.5k
#line 1581 "/src/php-src/Zend/zend_language_parser.y"
8353
14.5k
                        { (yyval.ast) = (yyvsp[0].ast); }
8354
14.5k
#line 8355 "/src/php-src/Zend/zend_language_parser.c"
8355
14.5k
    break;
8356
8357
45.3k
  case 579:
8358
45.3k
#line 1583 "/src/php-src/Zend/zend_language_parser.y"
8359
45.3k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8360
45.3k
#line 8361 "/src/php-src/Zend/zend_language_parser.c"
8361
45.3k
    break;
8362
8363
7.41k
  case 580:
8364
7.41k
#line 1585 "/src/php-src/Zend/zend_language_parser.y"
8365
7.41k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8366
7.41k
#line 8367 "/src/php-src/Zend/zend_language_parser.c"
8367
7.41k
    break;
8368
8369
903k
  case 581:
8370
903k
#line 1589 "/src/php-src/Zend/zend_language_parser.y"
8371
903k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8372
903k
#line 8373 "/src/php-src/Zend/zend_language_parser.c"
8373
903k
    break;
8374
8375
5.76k
  case 582:
8376
5.76k
#line 1590 "/src/php-src/Zend/zend_language_parser.y"
8377
5.76k
                                        { (yyval.ast) = (yyvsp[-1].ast); }
8378
5.76k
#line 8379 "/src/php-src/Zend/zend_language_parser.c"
8379
5.76k
    break;
8380
8381
122k
  case 583:
8382
122k
#line 1591 "/src/php-src/Zend/zend_language_parser.y"
8383
122k
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8384
122k
#line 8385 "/src/php-src/Zend/zend_language_parser.c"
8385
122k
    break;
8386
8387
11.4k
  case 584:
8388
11.4k
#line 1596 "/src/php-src/Zend/zend_language_parser.y"
8389
11.4k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8390
11.4k
#line 8391 "/src/php-src/Zend/zend_language_parser.c"
8391
11.4k
    break;
8392
8393
3.16k
  case 585:
8394
3.16k
#line 1598 "/src/php-src/Zend/zend_language_parser.y"
8395
3.16k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8396
3.16k
#line 8397 "/src/php-src/Zend/zend_language_parser.c"
8397
3.16k
    break;
8398
8399
2.37k
  case 586:
8400
2.37k
#line 1603 "/src/php-src/Zend/zend_language_parser.y"
8401
2.37k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8402
2.37k
#line 8403 "/src/php-src/Zend/zend_language_parser.c"
8403
2.37k
    break;
8404
8405
125
  case 587:
8406
125
#line 1605 "/src/php-src/Zend/zend_language_parser.y"
8407
125
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8408
125
#line 8409 "/src/php-src/Zend/zend_language_parser.c"
8409
125
    break;
8410
8411
165
  case 588:
8412
165
#line 1607 "/src/php-src/Zend/zend_language_parser.y"
8413
165
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8414
165
#line 8415 "/src/php-src/Zend/zend_language_parser.c"
8415
165
    break;
8416
8417
78
  case 589:
8418
78
#line 1609 "/src/php-src/Zend/zend_language_parser.y"
8419
78
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8420
78
#line 8421 "/src/php-src/Zend/zend_language_parser.c"
8421
78
    break;
8422
8423
302
  case 590:
8424
302
#line 1611 "/src/php-src/Zend/zend_language_parser.y"
8425
302
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8426
302
#line 8427 "/src/php-src/Zend/zend_language_parser.c"
8427
302
    break;
8428
8429
120
  case 591:
8430
120
#line 1613 "/src/php-src/Zend/zend_language_parser.y"
8431
120
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8432
120
#line 8433 "/src/php-src/Zend/zend_language_parser.c"
8433
120
    break;
8434
8435
15.9k
  case 592:
8436
15.9k
#line 1617 "/src/php-src/Zend/zend_language_parser.y"
8437
15.9k
                           { (yyval.ast) = (yyvsp[0].ast); }
8438
15.9k
#line 8439 "/src/php-src/Zend/zend_language_parser.c"
8439
15.9k
    break;
8440
8441
81
  case 593:
8442
81
#line 1618 "/src/php-src/Zend/zend_language_parser.y"
8443
81
                                { (yyval.ast) = (yyvsp[-1].ast); }
8444
81
#line 8445 "/src/php-src/Zend/zend_language_parser.c"
8445
81
    break;
8446
8447
1.12k
  case 594:
8448
1.12k
#line 1619 "/src/php-src/Zend/zend_language_parser.y"
8449
1.12k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8450
1.12k
#line 8451 "/src/php-src/Zend/zend_language_parser.c"
8451
1.12k
    break;
8452
8453
105k
  case 595:
8454
105k
#line 1623 "/src/php-src/Zend/zend_language_parser.y"
8455
105k
                         { (yyval.ast) = (yyvsp[0].ast); }
8456
105k
#line 8457 "/src/php-src/Zend/zend_language_parser.c"
8457
105k
    break;
8458
8459
1.09k
  case 596:
8460
1.09k
#line 1624 "/src/php-src/Zend/zend_language_parser.y"
8461
1.09k
                                { (yyval.ast) = (yyvsp[-1].ast); }
8462
1.09k
#line 8463 "/src/php-src/Zend/zend_language_parser.c"
8463
1.09k
    break;
8464
8465
3.04k
  case 597:
8466
3.04k
#line 1625 "/src/php-src/Zend/zend_language_parser.y"
8467
3.04k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8468
3.04k
#line 8469 "/src/php-src/Zend/zend_language_parser.c"
8469
3.04k
    break;
8470
8471
127k
  case 598:
8472
127k
#line 1630 "/src/php-src/Zend/zend_language_parser.y"
8473
127k
                        { /* allow single trailing comma */ (yyval.ast) = zend_ast_list_rtrim((yyvsp[0].ast)); }
8474
127k
#line 8475 "/src/php-src/Zend/zend_language_parser.c"
8475
127k
    break;
8476
8477
46.2k
  case 599:
8478
46.2k
#line 1634 "/src/php-src/Zend/zend_language_parser.y"
8479
46.2k
                       { (yyval.ast) = NULL; }
8480
46.2k
#line 8481 "/src/php-src/Zend/zend_language_parser.c"
8481
46.2k
    break;
8482
8483
539k
  case 600:
8484
539k
#line 1635 "/src/php-src/Zend/zend_language_parser.y"
8485
539k
                            { (yyval.ast) = (yyvsp[0].ast); }
8486
539k
#line 8487 "/src/php-src/Zend/zend_language_parser.c"
8487
539k
    break;
8488
8489
457k
  case 601:
8490
457k
#line 1640 "/src/php-src/Zend/zend_language_parser.y"
8491
457k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
8492
457k
#line 8493 "/src/php-src/Zend/zend_language_parser.c"
8493
457k
    break;
8494
8495
128k
  case 602:
8496
128k
#line 1642 "/src/php-src/Zend/zend_language_parser.y"
8497
128k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARRAY, (yyvsp[0].ast)); }
8498
128k
#line 8499 "/src/php-src/Zend/zend_language_parser.c"
8499
128k
    break;
8500
8501
20.6k
  case 603:
8502
20.6k
#line 1647 "/src/php-src/Zend/zend_language_parser.y"
8503
20.6k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), (yyvsp[-2].ast)); }
8504
20.6k
#line 8505 "/src/php-src/Zend/zend_language_parser.c"
8505
20.6k
    break;
8506
8507
514k
  case 604:
8508
514k
#line 1649 "/src/php-src/Zend/zend_language_parser.y"
8509
514k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), NULL); }
8510
514k
#line 8511 "/src/php-src/Zend/zend_language_parser.c"
8511
514k
    break;
8512
8513
541
  case 605:
8514
541
#line 1651 "/src/php-src/Zend/zend_language_parser.y"
8515
541
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), (yyvsp[-3].ast)); }
8516
541
#line 8517 "/src/php-src/Zend/zend_language_parser.c"
8517
541
    break;
8518
8519
1.88k
  case 606:
8520
1.88k
#line 1653 "/src/php-src/Zend/zend_language_parser.y"
8521
1.88k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), NULL); }
8522
1.88k
#line 8523 "/src/php-src/Zend/zend_language_parser.c"
8523
1.88k
    break;
8524
8525
1.56k
  case 607:
8526
1.56k
#line 1655 "/src/php-src/Zend/zend_language_parser.y"
8527
1.56k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
8528
1.56k
#line 8529 "/src/php-src/Zend/zend_language_parser.c"
8529
1.56k
    break;
8530
8531
107
  case 608:
8532
107
#line 1657 "/src/php-src/Zend/zend_language_parser.y"
8533
107
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8534
107
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), (yyvsp[-5].ast)); }
8535
107
#line 8536 "/src/php-src/Zend/zend_language_parser.c"
8536
107
    break;
8537
8538
387
  case 609:
8539
387
#line 1660 "/src/php-src/Zend/zend_language_parser.y"
8540
387
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8541
387
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), NULL); }
8542
387
#line 8543 "/src/php-src/Zend/zend_language_parser.c"
8543
387
    break;
8544
8545
248k
  case 610:
8546
248k
#line 1666 "/src/php-src/Zend/zend_language_parser.y"
8547
248k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8548
248k
#line 8549 "/src/php-src/Zend/zend_language_parser.c"
8549
248k
    break;
8550
8551
295k
  case 611:
8552
295k
#line 1668 "/src/php-src/Zend/zend_language_parser.y"
8553
295k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8554
295k
#line 8555 "/src/php-src/Zend/zend_language_parser.c"
8555
295k
    break;
8556
8557
16.9k
  case 612:
8558
16.9k
#line 1670 "/src/php-src/Zend/zend_language_parser.y"
8559
16.9k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ENCAPS_LIST, (yyvsp[0].ast)); }
8560
16.9k
#line 8561 "/src/php-src/Zend/zend_language_parser.c"
8561
16.9k
    break;
8562
8563
47.8k
  case 613:
8564
47.8k
#line 1672 "/src/php-src/Zend/zend_language_parser.y"
8565
47.8k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_ENCAPS_LIST, (yyvsp[-1].ast), (yyvsp[0].ast)); }
8566
47.8k
#line 8567 "/src/php-src/Zend/zend_language_parser.c"
8567
47.8k
    break;
8568
8569
236k
  case 614:
8570
236k
#line 1677 "/src/php-src/Zend/zend_language_parser.y"
8571
236k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8572
236k
#line 8573 "/src/php-src/Zend/zend_language_parser.c"
8573
236k
    break;
8574
8575
5.92k
  case 615:
8576
5.92k
#line 1679 "/src/php-src/Zend/zend_language_parser.y"
8577
5.92k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM,
8578
5.92k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-3].ast)), (yyvsp[-1].ast)); }
8579
5.92k
#line 8580 "/src/php-src/Zend/zend_language_parser.c"
8580
5.92k
    break;
8581
8582
17.9k
  case 616:
8583
17.9k
#line 1682 "/src/php-src/Zend/zend_language_parser.y"
8584
17.9k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP,
8585
17.9k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8586
17.9k
#line 8587 "/src/php-src/Zend/zend_language_parser.c"
8587
17.9k
    break;
8588
8589
44.3k
  case 617:
8590
44.3k
#line 1685 "/src/php-src/Zend/zend_language_parser.y"
8591
44.3k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP,
8592
44.3k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8593
44.3k
#line 8594 "/src/php-src/Zend/zend_language_parser.c"
8594
44.3k
    break;
8595
8596
5.89k
  case 618:
8597
5.89k
#line 1688 "/src/php-src/Zend/zend_language_parser.y"
8598
5.89k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY_VAR_VAR, (yyvsp[-1].ast)); }
8599
5.89k
#line 8600 "/src/php-src/Zend/zend_language_parser.c"
8600
5.89k
    break;
8601
8602
391
  case 619:
8603
391
#line 1690 "/src/php-src/Zend/zend_language_parser.y"
8604
391
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY, (yyvsp[-1].ast)); }
8605
391
#line 8606 "/src/php-src/Zend/zend_language_parser.c"
8606
391
    break;
8607
8608
313
  case 620:
8609
313
#line 1692 "/src/php-src/Zend/zend_language_parser.y"
8610
313
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_DIM, ZEND_ENCAPS_VAR_DOLLAR_CURLY,
8611
313
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-4].ast)), (yyvsp[-2].ast)); }
8612
313
#line 8613 "/src/php-src/Zend/zend_language_parser.c"
8613
313
    break;
8614
8615
2.30k
  case 621:
8616
2.30k
#line 1694 "/src/php-src/Zend/zend_language_parser.y"
8617
2.30k
                                          { (yyval.ast) = (yyvsp[-1].ast); }
8618
2.30k
#line 8619 "/src/php-src/Zend/zend_language_parser.c"
8619
2.30k
    break;
8620
8621
975
  case 622:
8622
975
#line 1698 "/src/php-src/Zend/zend_language_parser.y"
8623
975
                                                { (yyval.ast) = (yyvsp[0].ast); }
8624
975
#line 8625 "/src/php-src/Zend/zend_language_parser.c"
8625
975
    break;
8626
8627
2.74k
  case 623:
8628
2.74k
#line 1699 "/src/php-src/Zend/zend_language_parser.y"
8629
2.74k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8630
2.74k
#line 8631 "/src/php-src/Zend/zend_language_parser.c"
8631
2.74k
    break;
8632
8633
1.73k
  case 624:
8634
1.73k
#line 1700 "/src/php-src/Zend/zend_language_parser.y"
8635
1.73k
                                        { (yyval.ast) = zend_negate_num_string((yyvsp[0].ast)); }
8636
1.73k
#line 8637 "/src/php-src/Zend/zend_language_parser.c"
8637
1.73k
    break;
8638
8639
1.18k
  case 625:
8640
1.18k
#line 1701 "/src/php-src/Zend/zend_language_parser.y"
8641
1.18k
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8642
1.18k
#line 8643 "/src/php-src/Zend/zend_language_parser.c"
8643
1.18k
    break;
8644
8645
4.03k
  case 626:
8646
4.03k
#line 1706 "/src/php-src/Zend/zend_language_parser.y"
8647
4.03k
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
8648
4.03k
#line 8649 "/src/php-src/Zend/zend_language_parser.c"
8649
4.03k
    break;
8650
8651
1.56k
  case 627:
8652
1.56k
#line 1707 "/src/php-src/Zend/zend_language_parser.y"
8653
1.56k
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_EMPTY, (yyvsp[-1].ast)); }
8654
1.56k
#line 8655 "/src/php-src/Zend/zend_language_parser.c"
8655
1.56k
    break;
8656
8657
2.19k
  case 628:
8658
2.19k
#line 1709 "/src/php-src/Zend/zend_language_parser.y"
8659
2.19k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE, (yyvsp[0].ast)); }
8660
2.19k
#line 8661 "/src/php-src/Zend/zend_language_parser.c"
8661
2.19k
    break;
8662
8663
373
  case 629:
8664
373
#line 1711 "/src/php-src/Zend/zend_language_parser.y"
8665
373
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE_ONCE, (yyvsp[0].ast)); }
8666
373
#line 8667 "/src/php-src/Zend/zend_language_parser.c"
8667
373
    break;
8668
8669
2.37k
  case 630:
8670
2.37k
#line 1713 "/src/php-src/Zend/zend_language_parser.y"
8671
2.37k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_EVAL, (yyvsp[-1].ast)); }
8672
2.37k
#line 8673 "/src/php-src/Zend/zend_language_parser.c"
8673
2.37k
    break;
8674
8675
4.95k
  case 631:
8676
4.95k
#line 1715 "/src/php-src/Zend/zend_language_parser.y"
8677
4.95k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE, (yyvsp[0].ast)); }
8678
4.95k
#line 8679 "/src/php-src/Zend/zend_language_parser.c"
8679
4.95k
    break;
8680
8681
348
  case 632:
8682
348
#line 1717 "/src/php-src/Zend/zend_language_parser.y"
8683
348
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE_ONCE, (yyvsp[0].ast)); }
8684
348
#line 8685 "/src/php-src/Zend/zend_language_parser.c"
8685
348
    break;
8686
8687
4.25k
  case 633:
8688
4.25k
#line 1721 "/src/php-src/Zend/zend_language_parser.y"
8689
4.25k
                               { (yyval.ast) = (yyvsp[0].ast); }
8690
4.25k
#line 8691 "/src/php-src/Zend/zend_language_parser.c"
8691
4.25k
    break;
8692
8693
8.81k
  case 634:
8694
8.81k
#line 1723 "/src/php-src/Zend/zend_language_parser.y"
8695
8.81k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8696
8.81k
#line 8697 "/src/php-src/Zend/zend_language_parser.c"
8697
8.81k
    break;
8698
8699
13.0k
  case 635:
8700
13.0k
#line 1727 "/src/php-src/Zend/zend_language_parser.y"
8701
13.0k
                     { (yyval.ast) = zend_ast_create(ZEND_AST_ISSET, (yyvsp[0].ast)); }
8702
13.0k
#line 8703 "/src/php-src/Zend/zend_language_parser.c"
8703
13.0k
    break;
8704
8705
8706
0
#line 8707 "/src/php-src/Zend/zend_language_parser.c"
8707
8708
407k
      default: break;
8709
25.1M
    }
8710
  /* User semantic actions sometimes alter yychar, and that requires
8711
     that yytoken be updated with the new translation.  We take the
8712
     approach of translating immediately before every use of yytoken.
8713
     One alternative is translating here after every semantic action,
8714
     but that translation would be missed if the semantic action invokes
8715
     YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
8716
     if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
8717
     incorrect destructor might then be invoked immediately.  In the
8718
     case of YYERROR or YYBACKUP, subsequent parser actions might lead
8719
     to an incorrect destructor call or verbose syntax error message
8720
     before the lookahead is translated.  */
8721
25.1M
  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
8722
8723
25.1M
  YYPOPSTACK (yylen);
8724
25.1M
  yylen = 0;
8725
25.1M
  YY_STACK_PRINT (yyss, yyssp);
8726
8727
25.1M
  *++yyvsp = yyval;
8728
8729
  /* Now 'shift' the result of the reduction.  Determine what state
8730
     that goes to, based on the state we popped back to and the rule
8731
     number reduced by.  */
8732
25.1M
  {
8733
25.1M
    const int yylhs = yyr1[yyn] - YYNTOKENS;
8734
25.1M
    const int yyi = yypgoto[yylhs] + *yyssp;
8735
25.1M
    yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp
8736
25.1M
               ? yytable[yyi]
8737
25.1M
               : yydefgoto[yylhs]);
8738
25.1M
  }
8739
8740
25.1M
  goto yynewstate;
8741
8742
8743
/*--------------------------------------.
8744
| yyerrlab -- here on detecting error.  |
8745
`--------------------------------------*/
8746
44.9k
yyerrlab:
8747
  /* Make sure we have latest lookahead translation.  See comments at
8748
     user semantic actions for why this is necessary.  */
8749
44.9k
  yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
8750
8751
  /* If not already recovering from an error, report this error.  */
8752
44.9k
  if (!yyerrstatus)
8753
44.9k
    {
8754
44.9k
      ++yynerrs;
8755
#if ! YYERROR_VERBOSE
8756
      yyerror (YY_("syntax error"));
8757
#else
8758
44.9k
# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
8759
44.9k
                                        yyssp, yytoken)
8760
44.9k
      {
8761
44.9k
        char const *yymsgp = YY_("syntax error");
8762
44.9k
        int yysyntax_error_status;
8763
44.9k
        yysyntax_error_status = YYSYNTAX_ERROR;
8764
44.9k
        if (yysyntax_error_status == 0)
8765
44.9k
          yymsgp = yymsg;
8766
8
        else if (yysyntax_error_status == 1)
8767
8
          {
8768
8
            if (yymsg != yymsgbuf)
8769
0
              YYSTACK_FREE (yymsg);
8770
8
            yymsg = YY_CAST (char *, YYSTACK_ALLOC (YY_CAST (YYSIZE_T, yymsg_alloc)));
8771
8
            if (!yymsg)
8772
0
              {
8773
0
                yymsg = yymsgbuf;
8774
0
                yymsg_alloc = sizeof yymsgbuf;
8775
0
                yysyntax_error_status = 2;
8776
0
              }
8777
8
            else
8778
8
              {
8779
8
                yysyntax_error_status = YYSYNTAX_ERROR;
8780
8
                yymsgp = yymsg;
8781
8
              }
8782
8
          }
8783
44.9k
        yyerror (yymsgp);
8784
44.9k
        if (yysyntax_error_status == 2)
8785
0
          goto yyexhaustedlab;
8786
44.9k
      }
8787
44.9k
# undef YYSYNTAX_ERROR
8788
44.9k
#endif
8789
44.9k
    }
8790
8791
8792
8793
44.9k
  if (yyerrstatus == 3)
8794
0
    {
8795
      /* If just tried and failed to reuse lookahead token after an
8796
         error, discard it.  */
8797
8798
0
      if (yychar <= YYEOF)
8799
0
        {
8800
          /* Return failure if at end of input.  */
8801
0
          if (yychar == YYEOF)
8802
0
            YYABORT;
8803
0
        }
8804
0
      else
8805
0
        {
8806
0
          yydestruct ("Error: discarding",
8807
0
                      yytoken, &yylval);
8808
0
          yychar = YYEMPTY;
8809
0
        }
8810
0
    }
8811
8812
  /* Else will try to reuse lookahead token after shifting the error
8813
     token.  */
8814
44.9k
  goto yyerrlab1;
8815
8816
8817
/*---------------------------------------------------.
8818
| yyerrorlab -- error raised explicitly by YYERROR.  |
8819
`---------------------------------------------------*/
8820
44.9k
yyerrorlab:
8821
  /* Pacify compilers when the user code never invokes YYERROR and the
8822
     label yyerrorlab therefore never appears in user code.  */
8823
245
  if (0)
8824
0
    YYERROR;
8825
8826
  /* Do not reclaim the symbols of the rule whose action triggered
8827
     this YYERROR.  */
8828
245
  YYPOPSTACK (yylen);
8829
245
  yylen = 0;
8830
245
  YY_STACK_PRINT (yyss, yyssp);
8831
245
  yystate = *yyssp;
8832
245
  goto yyerrlab1;
8833
8834
8835
/*-------------------------------------------------------------.
8836
| yyerrlab1 -- common code for both syntax error and YYERROR.  |
8837
`-------------------------------------------------------------*/
8838
45.2k
yyerrlab1:
8839
45.2k
  yyerrstatus = 3;      /* Each real token shifted decrements this.  */
8840
8841
45.2k
  for (;;)
8842
840k
    {
8843
840k
      yyn = yypact[yystate];
8844
840k
      if (!yypact_value_is_default (yyn))
8845
748k
        {
8846
748k
          yyn += YYTERROR;
8847
748k
          if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
8848
0
            {
8849
0
              yyn = yytable[yyn];
8850
0
              if (0 < yyn)
8851
0
                break;
8852
0
            }
8853
748k
        }
8854
8855
      /* Pop the current state because it cannot handle the error token.  */
8856
840k
      if (yyssp == yyss)
8857
45.2k
        YYABORT;
8858
8859
8860
795k
      yydestruct ("Error: popping",
8861
795k
                  yystos[yystate], yyvsp);
8862
795k
      YYPOPSTACK (1);
8863
795k
      yystate = *yyssp;
8864
795k
      YY_STACK_PRINT (yyss, yyssp);
8865
795k
    }
8866
8867
0
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
8868
0
  *++yyvsp = yylval;
8869
0
  YY_IGNORE_MAYBE_UNINITIALIZED_END
8870
8871
8872
  /* Shift the error token.  */
8873
0
  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
8874
8875
0
  yystate = yyn;
8876
0
  goto yynewstate;
8877
8878
8879
/*-------------------------------------.
8880
| yyacceptlab -- YYACCEPT comes here.  |
8881
`-------------------------------------*/
8882
102k
yyacceptlab:
8883
102k
  yyresult = 0;
8884
102k
  goto yyreturn;
8885
8886
8887
/*-----------------------------------.
8888
| yyabortlab -- YYABORT comes here.  |
8889
`-----------------------------------*/
8890
45.2k
yyabortlab:
8891
45.2k
  yyresult = 1;
8892
45.2k
  goto yyreturn;
8893
8894
8895
0
#if !defined yyoverflow || YYERROR_VERBOSE
8896
/*-------------------------------------------------.
8897
| yyexhaustedlab -- memory exhaustion comes here.  |
8898
`-------------------------------------------------*/
8899
1
yyexhaustedlab:
8900
1
  yyerror (YY_("memory exhausted"));
8901
1
  yyresult = 2;
8902
  /* Fall through.  */
8903
1
#endif
8904
8905
8906
/*-----------------------------------------------------.
8907
| yyreturn -- parsing is finished, return the result.  |
8908
`-----------------------------------------------------*/
8909
147k
yyreturn:
8910
147k
  if (yychar != YYEMPTY)
8911
45.1k
    {
8912
      /* Make sure we have latest lookahead translation.  See comments at
8913
         user semantic actions for why this is necessary.  */
8914
45.1k
      yytoken = YYTRANSLATE (yychar);
8915
45.1k
      yydestruct ("Cleanup: discarding lookahead",
8916
45.1k
                  yytoken, &yylval);
8917
45.1k
    }
8918
  /* Do not reclaim the symbols of the rule whose action triggered
8919
     this YYABORT or YYACCEPT.  */
8920
147k
  YYPOPSTACK (yylen);
8921
147k
  YY_STACK_PRINT (yyss, yyssp);
8922
362k
  while (yyssp != yyss)
8923
214k
    {
8924
214k
      yydestruct ("Cleanup: popping",
8925
214k
                  yystos[+*yyssp], yyvsp);
8926
214k
      YYPOPSTACK (1);
8927
214k
    }
8928
147k
#ifndef yyoverflow
8929
147k
  if (yyss != yyssa)
8930
1.13k
    YYSTACK_FREE (yyss);
8931
147k
#endif
8932
147k
#if YYERROR_VERBOSE
8933
147k
  if (yymsg != yymsgbuf)
8934
8
    YYSTACK_FREE (yymsg);
8935
147k
#endif
8936
147k
  return yyresult;
8937
1
}
8938
#line 1730 "/src/php-src/Zend/zend_language_parser.y"
8939
8940
8941
/* Over-ride Bison formatting routine to give better token descriptions.
8942
   Copy to YYRES the contents of YYSTR for use in yyerror.
8943
   YYSTR is taken from yytname, from the %token declaration.
8944
   If YYRES is null, do not copy; instead, return the length of what
8945
   the result would have been.  */
8946
static YYSIZE_T zend_yytnamerr(char *yyres, const char *yystr)
8947
266k
{
8948
266k
  const char *toktype = yystr;
8949
266k
  size_t toktype_len = strlen(toktype);
8950
8951
  /* CG(parse_error) states:
8952
   * 0 => yyres = NULL, yystr is the unexpected token
8953
   * 1 => yyres = NULL, yystr is one of the expected tokens
8954
   * 2 => yyres != NULL, yystr is the unexpected token
8955
   * 3 => yyres != NULL, yystr is one of the expected tokens
8956
   */
8957
266k
  if (yyres && CG(parse_error) < 2) {
8958
44.9k
    CG(parse_error) = 2;
8959
44.9k
  }
8960
8961
266k
  if (CG(parse_error) % 2 == 0) {
8962
    /* The unexpected token */
8963
89.9k
    char buffer[120];
8964
89.9k
    const unsigned char *tokcontent, *tokcontent_end;
8965
89.9k
    size_t tokcontent_len;
8966
8967
89.9k
    CG(parse_error)++;
8968
8969
89.9k
    if (LANG_SCNG(yy_text)[0] == 0 &&
8970
89.9k
      LANG_SCNG(yy_leng) == 1 &&
8971
89.9k
      strcmp(toktype, "\"end of file\"") == 0) {
8972
10.7k
      if (yyres) {
8973
5.39k
        yystpcpy(yyres, "end of file");
8974
5.39k
      }
8975
10.7k
      return sizeof("end of file")-1;
8976
10.7k
    }
8977
8978
    /* Prevent the backslash getting doubled in the output (eugh) */
8979
79.1k
    if (strcmp(toktype, "\"'\\\\'\"") == 0) {
8980
952
      if (yyres) {
8981
476
        yystpcpy(yyres, "token \"\\\"");
8982
476
      }
8983
952
      return sizeof("token \"\\\"")-1;
8984
952
    }
8985
8986
    /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
8987
78.2k
    if (strcmp(toktype, "\"amp\"") == 0) {
8988
1.62k
      if (yyres) {
8989
811
        yystpcpy(yyres, "token \"&\"");
8990
811
      }
8991
1.62k
      return sizeof("token \"&\"")-1;
8992
1.62k
    }
8993
8994
    /* Avoid unreadable """ */
8995
    /* "'" would theoretically be just as bad, but is never currently parsed as a separate token */
8996
76.6k
    if (strcmp(toktype, "'\"'") == 0) {
8997
532
      if (yyres) {
8998
266
        yystpcpy(yyres, "double-quote mark");
8999
266
      }
9000
532
      return sizeof("double-quote mark")-1;
9001
532
    }
9002
9003
    /* Strip off the outer quote marks */
9004
76.0k
    if (toktype_len >= 2 && *toktype == '"') {
9005
41.4k
      toktype++;
9006
41.4k
      toktype_len -= 2;
9007
41.4k
    }
9008
9009
    /* If the token always has one form, the %token line should have a single-quoted name */
9010
    /* The parser rules also include single-character un-named tokens which will be single-quoted here */
9011
    /* We re-format this with double quotes here to ensure everything's consistent */
9012
76.0k
    if (toktype_len > 0 && *toktype == '\'') {
9013
42.0k
      if (yyres) {
9014
21.0k
        snprintf(buffer, sizeof(buffer), "token \"%.*s\"", (int)toktype_len-2, toktype+1);
9015
21.0k
        yystpcpy(yyres, buffer);
9016
21.0k
      }
9017
42.0k
      return toktype_len + sizeof("token ")-1;
9018
42.0k
    }
9019
9020
    /* Fetch the content of the last seen token from global lexer state */
9021
34.0k
    tokcontent = LANG_SCNG(yy_text);
9022
34.0k
    tokcontent_len = LANG_SCNG(yy_leng);
9023
9024
    /* For T_BAD_CHARACTER, the content probably won't be a printable char */
9025
    /* Also, "unexpected invalid character" sounds a bit redundant */
9026
34.0k
    if (tokcontent_len == 1 && strcmp(yystr, "\"invalid character\"") == 0) {
9027
7.85k
      if (yyres) {
9028
3.92k
        snprintf(buffer, sizeof(buffer), "character 0x%02hhX", *tokcontent);
9029
3.92k
        yystpcpy(yyres, buffer);
9030
3.92k
      }
9031
7.85k
      return sizeof("character 0x00")-1;
9032
7.85k
    }
9033
9034
    /* Truncate at line end to avoid messing up log formats */
9035
26.1k
    tokcontent_end = memchr(tokcontent, '\n', tokcontent_len);
9036
26.1k
    if (tokcontent_end != NULL) {
9037
2.32k
      tokcontent_len = (tokcontent_end - tokcontent);
9038
2.32k
    }
9039
9040
    /* Try to be helpful about what kind of string was found, before stripping the quotes */
9041
26.1k
    if (tokcontent_len > 0 && strcmp(yystr, "\"quoted string\"") == 0) {
9042
656
      if (*tokcontent == '"') {
9043
250
        toktype = "double-quoted string";
9044
250
        toktype_len = sizeof("double-quoted string")-1;
9045
250
      }
9046
406
      else if (*tokcontent == '\'') {
9047
386
        toktype = "single-quoted string";
9048
386
        toktype_len = sizeof("single-quoted string")-1;
9049
386
      }
9050
656
    }
9051
9052
    /* For quoted strings, strip off another layer of quotes to avoid putting quotes inside quotes */
9053
26.1k
    if (tokcontent_len > 0 && (*tokcontent == '\'' || *tokcontent=='"'))  {
9054
1.12k
      tokcontent++;
9055
1.12k
      tokcontent_len--;
9056
1.12k
    }
9057
26.1k
    if (tokcontent_len > 0 && (tokcontent[tokcontent_len-1] == '\'' || tokcontent[tokcontent_len-1] == '"'))  {
9058
570
      tokcontent_len--;
9059
570
    }
9060
9061
    /* Truncate to 30 characters and add a ... */
9062
26.1k
    if (tokcontent_len > 30 + sizeof("...")-1) {
9063
484
      if (yyres) {
9064
242
        snprintf(buffer, sizeof(buffer), "%.*s \"%.*s...\"", (int)toktype_len, toktype, 30, tokcontent);
9065
242
        yystpcpy(yyres, buffer);
9066
242
      }
9067
484
      return toktype_len + 30 + sizeof(" \"...\"")-1;
9068
484
    }
9069
9070
25.7k
    if (yyres) {
9071
12.8k
      snprintf(buffer, sizeof(buffer), "%.*s \"%.*s\"", (int)toktype_len, toktype, (int)tokcontent_len, tokcontent);
9072
12.8k
      yystpcpy(yyres, buffer);
9073
12.8k
    }
9074
25.7k
    return toktype_len + tokcontent_len + sizeof(" \"\"")-1;
9075
26.1k
  }
9076
9077
  /* One of the expected tokens */
9078
9079
  /* Prevent the backslash getting doubled in the output (eugh) */
9080
176k
  if (strcmp(toktype, "\"'\\\\'\"") == 0) {
9081
0
    if (yyres) {
9082
0
      yystpcpy(yyres, "\"\\\"");
9083
0
    }
9084
0
    return sizeof("\"\\\"")-1;
9085
0
  }
9086
9087
  /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
9088
176k
  if (strcmp(toktype, "\"amp\"") == 0) {
9089
76
    if (yyres) {
9090
34
      yystpcpy(yyres, "token \"&\"");
9091
34
    }
9092
76
    return sizeof("token \"&\"")-1;
9093
76
  }
9094
9095
  /* Strip off the outer quote marks */
9096
176k
  if (toktype_len >= 2 && *toktype == '"') {
9097
146k
    toktype++;
9098
146k
    toktype_len -= 2;
9099
146k
  }
9100
9101
176k
  if (yyres) {
9102
18.9k
    YYSIZE_T yyn = 0;
9103
9104
123k
    for (; yyn < toktype_len; ++yyn) {
9105
      /* Replace single quotes with double for consistency */
9106
104k
      if (toktype[yyn] == '\'') {
9107
25.0k
        yyres[yyn] = '"';
9108
25.0k
      }
9109
79.8k
      else {
9110
79.8k
        yyres[yyn] = toktype[yyn];
9111
79.8k
      }
9112
104k
    }
9113
18.9k
    yyres[toktype_len] = '\0';
9114
18.9k
  }
9115
9116
176k
  return toktype_len;
9117
176k
}