Php7.php
Namespace
PhpParser\ParserFile
-
vendor/
nikic/ php-parser/ lib/ PhpParser/ Parser/ Php7.php
View source
<?php
declare (strict_types=1);
namespace PhpParser\Parser;
use PhpParser\Error;
use PhpParser\Modifiers;
use PhpParser\Node;
use PhpParser\Node\Expr;
use PhpParser\Node\Name;
use PhpParser\Node\Scalar;
use PhpParser\Node\Stmt;
/* This is an automatically GENERATED file, which should not be manually edited.
* Instead edit one of the following:
* * the grammar file grammar/php.y
* * the skeleton file grammar/parser.template
* * the preprocessing script grammar/rebuildParsers.php
*/
class Php7 extends \PhpParser\ParserAbstract {
public const YYERRTOK = 256;
public const T_THROW = 257;
public const T_INCLUDE = 258;
public const T_INCLUDE_ONCE = 259;
public const T_EVAL = 260;
public const T_REQUIRE = 261;
public const T_REQUIRE_ONCE = 262;
public const T_LOGICAL_OR = 263;
public const T_LOGICAL_XOR = 264;
public const T_LOGICAL_AND = 265;
public const T_PRINT = 266;
public const T_YIELD = 267;
public const T_DOUBLE_ARROW = 268;
public const T_YIELD_FROM = 269;
public const T_PLUS_EQUAL = 270;
public const T_MINUS_EQUAL = 271;
public const T_MUL_EQUAL = 272;
public const T_DIV_EQUAL = 273;
public const T_CONCAT_EQUAL = 274;
public const T_MOD_EQUAL = 275;
public const T_AND_EQUAL = 276;
public const T_OR_EQUAL = 277;
public const T_XOR_EQUAL = 278;
public const T_SL_EQUAL = 279;
public const T_SR_EQUAL = 280;
public const T_POW_EQUAL = 281;
public const T_COALESCE_EQUAL = 282;
public const T_COALESCE = 283;
public const T_BOOLEAN_OR = 284;
public const T_BOOLEAN_AND = 285;
public const T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG = 286;
public const T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG = 287;
public const T_IS_EQUAL = 288;
public const T_IS_NOT_EQUAL = 289;
public const T_IS_IDENTICAL = 290;
public const T_IS_NOT_IDENTICAL = 291;
public const T_SPACESHIP = 292;
public const T_IS_SMALLER_OR_EQUAL = 293;
public const T_IS_GREATER_OR_EQUAL = 294;
public const T_SL = 295;
public const T_SR = 296;
public const T_INSTANCEOF = 297;
public const T_INC = 298;
public const T_DEC = 299;
public const T_INT_CAST = 300;
public const T_DOUBLE_CAST = 301;
public const T_STRING_CAST = 302;
public const T_ARRAY_CAST = 303;
public const T_OBJECT_CAST = 304;
public const T_BOOL_CAST = 305;
public const T_UNSET_CAST = 306;
public const T_POW = 307;
public const T_NEW = 308;
public const T_CLONE = 309;
public const T_EXIT = 310;
public const T_IF = 311;
public const T_ELSEIF = 312;
public const T_ELSE = 313;
public const T_ENDIF = 314;
public const T_LNUMBER = 315;
public const T_DNUMBER = 316;
public const T_STRING = 317;
public const T_STRING_VARNAME = 318;
public const T_VARIABLE = 319;
public const T_NUM_STRING = 320;
public const T_INLINE_HTML = 321;
public const T_ENCAPSED_AND_WHITESPACE = 322;
public const T_CONSTANT_ENCAPSED_STRING = 323;
public const T_ECHO = 324;
public const T_DO = 325;
public const T_WHILE = 326;
public const T_ENDWHILE = 327;
public const T_FOR = 328;
public const T_ENDFOR = 329;
public const T_FOREACH = 330;
public const T_ENDFOREACH = 331;
public const T_DECLARE = 332;
public const T_ENDDECLARE = 333;
public const T_AS = 334;
public const T_SWITCH = 335;
public const T_MATCH = 336;
public const T_ENDSWITCH = 337;
public const T_CASE = 338;
public const T_DEFAULT = 339;
public const T_BREAK = 340;
public const T_CONTINUE = 341;
public const T_GOTO = 342;
public const T_FUNCTION = 343;
public const T_FN = 344;
public const T_CONST = 345;
public const T_RETURN = 346;
public const T_TRY = 347;
public const T_CATCH = 348;
public const T_FINALLY = 349;
public const T_USE = 350;
public const T_INSTEADOF = 351;
public const T_GLOBAL = 352;
public const T_STATIC = 353;
public const T_ABSTRACT = 354;
public const T_FINAL = 355;
public const T_PRIVATE = 356;
public const T_PROTECTED = 357;
public const T_PUBLIC = 358;
public const T_READONLY = 359;
public const T_PUBLIC_SET = 360;
public const T_PROTECTED_SET = 361;
public const T_PRIVATE_SET = 362;
public const T_VAR = 363;
public const T_UNSET = 364;
public const T_ISSET = 365;
public const T_EMPTY = 366;
public const T_HALT_COMPILER = 367;
public const T_CLASS = 368;
public const T_TRAIT = 369;
public const T_INTERFACE = 370;
public const T_ENUM = 371;
public const T_EXTENDS = 372;
public const T_IMPLEMENTS = 373;
public const T_OBJECT_OPERATOR = 374;
public const T_NULLSAFE_OBJECT_OPERATOR = 375;
public const T_LIST = 376;
public const T_ARRAY = 377;
public const T_CALLABLE = 378;
public const T_CLASS_C = 379;
public const T_TRAIT_C = 380;
public const T_METHOD_C = 381;
public const T_FUNC_C = 382;
public const T_PROPERTY_C = 383;
public const T_LINE = 384;
public const T_FILE = 385;
public const T_START_HEREDOC = 386;
public const T_END_HEREDOC = 387;
public const T_DOLLAR_OPEN_CURLY_BRACES = 388;
public const T_CURLY_OPEN = 389;
public const T_PAAMAYIM_NEKUDOTAYIM = 390;
public const T_NAMESPACE = 391;
public const T_NS_C = 392;
public const T_DIR = 393;
public const T_NS_SEPARATOR = 394;
public const T_ELLIPSIS = 395;
public const T_NAME_FULLY_QUALIFIED = 396;
public const T_NAME_QUALIFIED = 397;
public const T_NAME_RELATIVE = 398;
public const T_ATTRIBUTE = 399;
protected int $tokenToSymbolMapSize = 400;
protected int $actionTableSize = 1286;
protected int $gotoTableSize = 646;
protected int $invalidSymbol = 172;
protected int $errorSymbol = 1;
protected int $defaultAction = -32766;
protected int $unexpectedTokenRule = 32767;
protected int $YY2TBLSTATE = 437;
protected int $numNonLeafStates = 742;
protected array $symbolToName = array(
"EOF",
"error",
"T_THROW",
"T_INCLUDE",
"T_INCLUDE_ONCE",
"T_EVAL",
"T_REQUIRE",
"T_REQUIRE_ONCE",
"','",
"T_LOGICAL_OR",
"T_LOGICAL_XOR",
"T_LOGICAL_AND",
"T_PRINT",
"T_YIELD",
"T_DOUBLE_ARROW",
"T_YIELD_FROM",
"'='",
"T_PLUS_EQUAL",
"T_MINUS_EQUAL",
"T_MUL_EQUAL",
"T_DIV_EQUAL",
"T_CONCAT_EQUAL",
"T_MOD_EQUAL",
"T_AND_EQUAL",
"T_OR_EQUAL",
"T_XOR_EQUAL",
"T_SL_EQUAL",
"T_SR_EQUAL",
"T_POW_EQUAL",
"T_COALESCE_EQUAL",
"'?'",
"':'",
"T_COALESCE",
"T_BOOLEAN_OR",
"T_BOOLEAN_AND",
"'|'",
"'^'",
"T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG",
"T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG",
"T_IS_EQUAL",
"T_IS_NOT_EQUAL",
"T_IS_IDENTICAL",
"T_IS_NOT_IDENTICAL",
"T_SPACESHIP",
"'<'",
"T_IS_SMALLER_OR_EQUAL",
"'>'",
"T_IS_GREATER_OR_EQUAL",
"T_SL",
"T_SR",
"'+'",
"'-'",
"'.'",
"'*'",
"'/'",
"'%'",
"'!'",
"T_INSTANCEOF",
"'~'",
"T_INC",
"T_DEC",
"T_INT_CAST",
"T_DOUBLE_CAST",
"T_STRING_CAST",
"T_ARRAY_CAST",
"T_OBJECT_CAST",
"T_BOOL_CAST",
"T_UNSET_CAST",
"'@'",
"T_POW",
"'['",
"T_NEW",
"T_CLONE",
"T_EXIT",
"T_IF",
"T_ELSEIF",
"T_ELSE",
"T_ENDIF",
"T_LNUMBER",
"T_DNUMBER",
"T_STRING",
"T_STRING_VARNAME",
"T_VARIABLE",
"T_NUM_STRING",
"T_INLINE_HTML",
"T_ENCAPSED_AND_WHITESPACE",
"T_CONSTANT_ENCAPSED_STRING",
"T_ECHO",
"T_DO",
"T_WHILE",
"T_ENDWHILE",
"T_FOR",
"T_ENDFOR",
"T_FOREACH",
"T_ENDFOREACH",
"T_DECLARE",
"T_ENDDECLARE",
"T_AS",
"T_SWITCH",
"T_MATCH",
"T_ENDSWITCH",
"T_CASE",
"T_DEFAULT",
"T_BREAK",
"T_CONTINUE",
"T_GOTO",
"T_FUNCTION",
"T_FN",
"T_CONST",
"T_RETURN",
"T_TRY",
"T_CATCH",
"T_FINALLY",
"T_USE",
"T_INSTEADOF",
"T_GLOBAL",
"T_STATIC",
"T_ABSTRACT",
"T_FINAL",
"T_PRIVATE",
"T_PROTECTED",
"T_PUBLIC",
"T_READONLY",
"T_PUBLIC_SET",
"T_PROTECTED_SET",
"T_PRIVATE_SET",
"T_VAR",
"T_UNSET",
"T_ISSET",
"T_EMPTY",
"T_HALT_COMPILER",
"T_CLASS",
"T_TRAIT",
"T_INTERFACE",
"T_ENUM",
"T_EXTENDS",
"T_IMPLEMENTS",
"T_OBJECT_OPERATOR",
"T_NULLSAFE_OBJECT_OPERATOR",
"T_LIST",
"T_ARRAY",
"T_CALLABLE",
"T_CLASS_C",
"T_TRAIT_C",
"T_METHOD_C",
"T_FUNC_C",
"T_PROPERTY_C",
"T_LINE",
"T_FILE",
"T_START_HEREDOC",
"T_END_HEREDOC",
"T_DOLLAR_OPEN_CURLY_BRACES",
"T_CURLY_OPEN",
"T_PAAMAYIM_NEKUDOTAYIM",
"T_NAMESPACE",
"T_NS_C",
"T_DIR",
"T_NS_SEPARATOR",
"T_ELLIPSIS",
"T_NAME_FULLY_QUALIFIED",
"T_NAME_QUALIFIED",
"T_NAME_RELATIVE",
"T_ATTRIBUTE",
"';'",
"']'",
"'('",
"')'",
"'{'",
"'}'",
"'`'",
"'\"'",
"'\$'",
);
protected array $tokenToSymbol = array(
0,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
56,
170,
172,
171,
55,
172,
172,
165,
166,
53,
50,
8,
51,
52,
54,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
31,
163,
44,
16,
46,
30,
68,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
70,
172,
164,
36,
172,
169,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
167,
35,
168,
58,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
172,
1,
2,
3,
4,
5,
6,
7,
9,
10,
11,
12,
13,
14,
15,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
32,
33,
34,
37,
38,
39,
40,
41,
42,
43,
45,
47,
48,
49,
57,
59,
60,
61,
62,
63,
64,
65,
66,
67,
69,
71,
72,
73,
74,
75,
76,
77,
78,
79,
80,
81,
82,
83,
84,
85,
86,
87,
88,
89,
90,
91,
92,
93,
94,
95,
96,
97,
98,
99,
100,
101,
102,
103,
104,
105,
106,
107,
108,
109,
110,
111,
112,
113,
114,
115,
116,
117,
118,
119,
120,
121,
122,
123,
124,
125,
126,
127,
128,
129,
130,
131,
132,
133,
134,
135,
136,
137,
138,
139,
140,
141,
142,
143,
144,
145,
146,
147,
148,
149,
150,
151,
152,
153,
154,
155,
156,
157,
158,
159,
160,
161,
162,
);
protected array $action = array(
128,
129,
130,
565,
131,
132,
944,
754,
755,
756,
133,
38,
838,
485,
561,
1365,
-32766,
-32766,
-32766,
0,
829,
1122,
1123,
1124,
1118,
1117,
1116,
1125,
1119,
1120,
1121,
-32766,
-32766,
-32766,
-332,
748,
747,
-32766,
840,
-32766,
-32766,
-32766,
-32766,
-32766,
-32766,
-32766,
-32767,
-32767,
-32767,
-32767,
-32767,
24,
-32766,
1034,
-568,
757,
1122,
1123,
1124,
1118,
1117,
1116,
1125,
1119,
1120,
1121,
2,
381,
382,
265,
134,
384,
761,
762,
763,
764,
1111,
425,
426,
1300,
329,
36,
248,
26,
291,
818,
765,
766,
767,
768,
769,
770,
771,
772,
773,
774,
794,
566,
795,
796,
797,
798,
786,
787,
346,
347,
789,
790,
775,
776,
777,
779,
780,
781,
357,
821,
822,
823,
824,
825,
567,
-568,
-568,
299,
782,
783,
568,
569,
-194,
806,
804,
805,
817,
801,
802,
35,
-193,
570,
571,
800,
572,
573,
574,
575,
-32766,
576,
577,
471,
472,
486,
238,
-568,
803,
578,
579,
-371,
135,
-371,
128,
129,
130,
565,
131,
132,
1067,
754,
755,
756,
133,
38,
-32766,
136,
728,
1027,
1026,
1025,
1031,
1028,
1029,
1030,
-32766,
-32766,
-32766,
-32767,
-32767,
-32767,
-32767,
101,
102,
103,
104,
105,
-332,
748,
747,
1043,
923,
-32766,
-32766,
-32766,
839,
-32766,
145,
-32766,
-32766,
-32766,
-32766,
-32766,
-32766,
-32766,
-32766,
-32766,
-32766,
757,
-32766,
-32766,
-32766,
611,
-32766,
290,
-32766,
-32766,
-32766,
-32766,
-32766,
834,
718,
265,
134,
384,
761,
762,
763,
764,
-615,
-32766,
426,
-32766,
-32766,
-32766,
-32766,
-615,
251,
818,
765,
766,
767,
768,
769,
770,
771,
772,
773,
774,
794,
566,
795,
796,
797,
798,
786,
787,
346,
347,
789,
790,
775,
776,
777,
779,
780,
781,
357,
821,
822,
823,
824,
825,
567,
913,
426,
310,
782,
783,
568,
569,
-194,
806,
804,
805,
817,
801,
802,
1288,
-193,
570,
571,
800,
572,
573,
574,
575,
-273,
576,
577,
835,
82,
83,
84,
-85,
803,
578,
579,
237,
148,
778,
749,
750,
751,
752,
753,
150,
754,
755,
756,
791,
792,
37,
-32766,
85,
86,
87,
88,
89,
90,
91,
92,
93,
94,
95,
96,
97,
98,
99,
100,
101,
102,
103,
104,
105,
106,
107,
108,
1043,
276,
-32766,
-32766,
-32766,
925,
1263,
1262,
1264,
713,
831,
312,
393,
109,
7,
1097,
47,
757,
-32766,
-32766,
-32766,
838,
-85,
-32766,
1095,
-32766,
-32766,
-32766,
1268,
-32766,
-32766,
758,
759,
760,
761,
762,
763,
764,
994,
-32766,
827,
-32766,
-32766,
923,
-615,
324,
-615,
818,
765,
766,
767,
768,
769,
770,
771,
772,
773,
774,
794,
816,
795,
796,
797,
798,
786,
787,
788,
815,
789,
790,
775,
776,
777,
779,
780,
781,
820,
821,
822,
823,
824,
825,
826,
300,
301,
342,
782,
783,
784,
785,
833,
806,
804,
805,
817,
801,
802,
715,
1040,
793,
799,
800,
807,
808,
810,
809,
140,
811,
812,
838,
327,
343,
-32766,
125,
803,
814,
813,
49,
50,
51,
517,
52,
53,
1043,
-110,
371,
913,
54,
55,
-110,
56,
-110,
-566,
-32766,
-32766,
-32766,
306,
1043,
126,
-110,
-110,
-110,
-110,
-110,
-110,
-110,
-110,
-110,
-110,
-110,
-612,
1096,
106,
107,
108,
740,
276,
-612,
963,
964,
-32766,
290,
287,
965,
1330,
57,
58,
-32766,
109,
375,
995,
59,
959,
60,
245,
246,
61,
62,
63,
64,
65,
66,
67,
68,
-32766,
28,
267,
69,
441,
518,
391,
-346,
74,
1294,
1295,
519,
443,
838,
327,
-566,
-566,
1292,
42,
20,
520,
925,
521,
923,
522,
713,
523,
-564,
693,
524,
525,
-566,
923,
444,
44,
45,
447,
378,
377,
-78,
46,
526,
923,
-572,
445,
-566,
369,
341,
1346,
103,
104,
105,
-563,
1254,
923,
383,
382,
446,
528,
529,
530,
865,
719,
866,
694,
425,
461,
462,
463,
844,
532,
533,
720,
1280,
1281,
1282,
1283,
1285,
1277,
1278,
298,
865,
151,
866,
723,
153,
1284,
1279,
695,
696,
1263,
1262,
1264,
299,
-564,
-564,
70,
-153,
-153,
-153,
322,
323,
327,
154,
-4,
923,
913,
1263,
1262,
1264,
-564,
155,
-153,
283,
-153,
913,
-153,
157,
-153,
-563,
-563,
33,
-571,
1350,
-564,
913,
-58,
829,
376,
-612,
1349,
-612,
748,
747,
837,
-563,
-606,
913,
-606,
963,
964,
-57,
748,
747,
527,
123,
81,
-570,
1040,
-563,
327,
617,
899,
959,
-110,
-110,
-110,
32,
110,
111,
112,
113,
114,
115,
116,
117,
118,
119,
120,
121,
122,
124,
-565,
1043,
947,
28,
268,
149,
408,
923,
1375,
829,
137,
1376,
138,
925,
144,
838,
913,
713,
-153,
1292,
660,
21,
925,
679,
680,
283,
713,
158,
1170,
1172,
379,
380,
980,
385,
386,
159,
713,
730,
376,
-562,
438,
1066,
141,
160,
925,
297,
327,
161,
713,
963,
964,
946,
651,
652,
527,
1254,
-87,
162,
-306,
748,
747,
-84,
531,
959,
-110,
-110,
-110,
-565,
-565,
-78,
287,
1268,
532,
533,
-73,
1280,
1281,
1282,
1283,
1285,
1277,
1278,
-72,
-565,
-71,
-70,
11,
1261,
1284,
1279,
913,
-69,
748,
747,
-68,
925,
-32766,
-565,
72,
713,
-4,
-16,
1261,
323,
327,
-67,
-562,
-562,
291,
-32766,
-32766,
-32766,
-66,
-32766,
-65,
-32766,
-46,
-32766,
-18,
142,
-32766,
275,
-562,
1259,
284,
-32766,
-32766,
-32766,
729,
-32766,
732,
-32766,
-32766,
922,
147,
1261,
-562,
-32766,
422,
28,
267,
-302,
-32766,
-32766,
-32766,
279,
-32766,
1042,
-32766,
-32766,
-32766,
838,
838,
-32766,
288,
1292,
1040,
280,
-32766,
-32766,
-32766,
285,
286,
335,
-32766,
-32766,
1263,
1262,
1264,
925,
-32766,
422,
289,
713,
28,
268,
292,
293,
276,
940,
73,
1043,
-32766,
109,
689,
146,
838,
-110,
-110,
-562,
1292,
1254,
-110,
829,
-32766,
1377,
704,
582,
10,
661,
838,
-110,
1129,
706,
649,
283,
307,
960,
-32766,
533,
-32766,
1280,
1281,
1282,
1283,
1285,
1277,
1278,
682,
1043,
305,
-50,
468,
1299,
1284,
1279,
1254,
666,
-528,
496,
667,
304,
299,
683,
72,
74,
1301,
588,
-32766,
323,
327,
327,
-518,
290,
533,
40,
1280,
1281,
1282,
1283,
1285,
1277,
1278,
8,
139,
0,
-562,
-562,
27,
1284,
1279,
-276,
407,
0,
-32766,
0,
0,
0,
0,
72,
1261,
311,
-562,
0,
323,
327,
0,
-32766,
-32766,
-32766,
0,
-32766,
373,
-32766,
0,
-32766,
-562,
0,
-32766,
0,
0,
615,
0,
-32766,
-32766,
-32766,
923,
-32766,
0,
-32766,
-32766,
942,
1289,
1261,
837,
-32766,
422,
41,
299,
34,
-32766,
-32766,
-32766,
737,
-32766,
738,
-32766,
-32766,
-32766,
923,
857,
-32766,
904,
1004,
981,
988,
-32766,
-32766,
-32766,
978,
-32766,
989,
-32766,
-32766,
902,
976,
1261,
1100,
-32766,
422,
48,
1103,
1104,
-32766,
-32766,
-32766,
1101,
-32766,
1102,
-32766,
-32766,
-32766,
1108,
-600,
-32766,
849,
1316,
1334,
491,
-32766,
-32766,
-32766,
1368,
-32766,
654,
-32766,
-32766,
-599,
-598,
1261,
595,
-32766,
422,
-572,
-571,
1268,
-32766,
-32766,
-32766,
913,
-32766,
-570,
-32766,
-32766,
-32766,
-569,
-512,
-32766,
-274,
1,
29,
30,
-32766,
-32766,
-32766,
-251,
-251,
-251,
-32766,
-32766,
39,
376,
913,
43,
-32766,
422,
71,
302,
303,
75,
76,
77,
963,
964,
78,
79,
-32766,
527,
-250,
-250,
-250,
-273,
80,
374,
376,
899,
959,
-110,
-110,
-110,
143,
152,
156,
243,
331,
963,
964,
127,
358,
359,
527,
360,
361,
362,
363,
364,
365,
366,
899,
959,
-110,
-110,
-110,
-32766,
13,
367,
838,
368,
925,
1261,
14,
370,
713,
-251,
439,
560,
-32766,
-32766,
-32766,
15,
-32766,
16,
-32766,
18,
-32766,
406,
487,
-32766,
488,
495,
498,
925,
-32766,
-32766,
-32766,
713,
-250,
499,
-32766,
-32766,
500,
-110,
-110,
501,
-32766,
422,
-110,
505,
506,
507,
515,
593,
699,
1069,
1210,
-110,
-32766,
1290,
1068,
1049,
1249,
1045,
-278,
-102,
-32766,
12,
17,
22,
296,
405,
607,
612,
640,
705,
1214,
1267,
1211,
1347,
0,
321,
372,
714,
717,
721,
722,
724,
299,
725,
726,
74,
727,
1227,
731,
716,
0,
327,
411,
1293,
734,
900,
1372,
1374,
860,
859,
953,
996,
1373,
952,
950,
951,
954,
1242,
933,
943,
931,
986,
987,
638,
1371,
1328,
1317,
1335,
1344,
0,
0,
0,
327,
);
protected array $actionCheck = array(
2,
3,
4,
5,
6,
7,
1,
9,
10,
11,
12,
13,
82,
31,
85,
85,
9,
10,
11,
0,
80,
116,
117,
118,
119,
120,
121,
122,
123,
124,
125,
9,
10,
11,
8,
37,
38,
30,
1,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
101,
30,
1,
70,
57,
116,
117,
118,
119,
120,
121,
122,
123,
124,
125,
8,
106,
107,
71,
72,
73,
74,
75,
76,
77,
126,
116,
80,
150,
70,
151,
152,
8,
30,
87,
88,
89,
90,
91,
92,
93,
94,
95,
96,
97,
98,
99,
100,
101,
102,
103,
104,
105,
106,
107,
108,
109,
110,
111,
112,
113,
114,
115,
116,
117,
118,
119,
120,
121,
122,
137,
138,
162,
126,
127,
128,
129,
8,
131,
132,
133,
134,
135,
136,
8,
8,
139,
140,
141,
142,
143,
144,
145,
9,
147,
148,
137,
138,
167,
14,
167,
154,
155,
156,
106,
158,
108,
2,
3,
4,
5,
6,
7,
166,
9,
10,
11,
12,
13,
116,
8,
167,
119,
120,
121,
122,
123,
124,
125,
9,
10,
11,
44,
45,
46,
47,
48,
49,
50,
51,
52,
166,
37,
38,
141,
1,
9,
10,
11,
163,
30,
8,
32,
33,
34,
35,
36,
37,
38,
9,
10,
11,
57,
9,
10,
11,
1,
30,
165,
32,
33,
34,
35,
36,
80,
31,
71,
72,
73,
74,
75,
76,
77,
1,
30,
80,
32,
33,
34,
35,
8,
8,
87,
88,
89,
90,
91,
92,
93,
94,
95,
96,
97,
98,
99,
100,
101,
102,
103,
104,
105,
106,
107,
108,
109,
110,
111,
112,
113,
114,
115,
116,
117,
118,
119,
120,
121,
122,
84,
80,
8,
126,
127,
128,
129,
166,
131,
132,
133,
134,
135,
136,
1,
166,
139,
140,
141,
142,
143,
144,
145,
166,
147,
148,
160,
9,
10,
11,
31,
154,
155,
156,
97,
158,
2,
3,
4,
5,
6,
7,
14,
9,
10,
11,
12,
13,
30,
116,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
48,
49,
50,
51,
52,
53,
54,
55,
141,
57,
9,
10,
11,
163,
159,
160,
161,
167,
80,
8,
106,
69,
108,
168,
70,
57,
9,
10,
11,
82,
97,
30,
1,
32,
33,
34,
1,
9,
10,
71,
72,
73,
74,
75,
76,
77,
31,
30,
80,
32,
33,
1,
164,
8,
166,
87,
88,
89,
90,
91,
92,
93,
94,
95,
96,
97,
98,
99,
100,
101,
102,
103,
104,
105,
106,
107,
108,
109,
110,
111,
112,
113,
114,
115,
116,
117,
118,
119,
120,
121,
122,
137,
138,
8,
126,
127,
128,
129,
160,
131,
132,
133,
134,
135,
136,
167,
116,
139,
140,
141,
142,
143,
144,
145,
167,
147,
148,
82,
171,
8,
116,
167,
154,
155,
156,
2,
3,
4,
5,
6,
7,
141,
101,
8,
84,
12,
13,
106,
15,
108,
70,
9,
10,
11,
113,
141,
14,
116,
117,
118,
119,
120,
121,
122,
123,
124,
125,
126,
1,
163,
53,
54,
55,
167,
57,
8,
117,
118,
116,
165,
30,
122,
1,
50,
51,
140,
69,
8,
163,
56,
131,
58,
59,
60,
61,
62,
63,
64,
65,
66,
67,
68,
140,
70,
71,
72,
73,
74,
8,
168,
165,
78,
79,
80,
8,
82,
171,
137,
138,
86,
87,
88,
89,
163,
91,
1,
93,
167,
95,
70,
80,
98,
99,
153,
1,
8,
103,
104,
105,
106,
107,
16,
109,
110,
1,
165,
8,
167,
115,
116,
1,
50,
51,
52,
70,
122,
1,
106,
107,
8,
127,
128,
129,
106,
31,
108,
116,
116,
132,
133,
134,
8,
139,
140,
31,
142,
143,
144,
145,
146,
147,
148,
149,
106,
14,
108,
31,
14,
155,
156,
140,
141,
159,
160,
161,
162,
137,
138,
165,
75,
76,
77,
169,
170,
171,
14,
0,
1,
84,
159,
160,
161,
153,
14,
90,
165,
92,
84,
94,
14,
96,
137,
138,
14,
165,
1,
167,
84,
16,
80,
106,
164,
8,
166,
37,
38,
159,
153,
164,
84,
166,
117,
118,
16,
37,
38,
122,
16,
167,
165,
116,
167,
171,
51,
130,
131,
132,
133,
134,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
16,
70,
141,
73,
70,
71,
101,
102,
1,
80,
80,
16,
83,
16,
163,
16,
82,
84,
167,
168,
86,
75,
76,
163,
75,
76,
165,
167,
16,
59,
60,
106,
107,
163,
106,
107,
16,
167,
31,
106,
70,
108,
1,
167,
16,
163,
113,
171,
16,
167,
117,
118,
122,
111,
112,
122,
122,
31,
16,
35,
37,
38,
31,
130,
131,
132,
133,
134,
137,
138,
31,
30,
1,
139,
140,
31,
142,
143,
144,
145,
146,
147,
148,
31,
153,
31,
31,
154,
80,
155,
156,
84,
31,
37,
38,
31,
163,
74,
167,
165,
167,
168,
31,
80,
170,
171,
31,
137,
138,
30,
87,
88,
89,
31,
91,
31,
93,
31,
95,
31,
31,
98,
31,
153,
116,
31,
103,
104,
105,
31,
74,
31,
109,
110,
31,
31,
80,
167,
115,
116,
70,
71,
35,
87,
88,
89,
35,
91,
140,
93,
127,
95,
82,
82,
98,
37,
86,
116,
35,
103,
104,
105,
35,
35,
35,
109,
110,
159,
160,
161,
163,
115,
116,
37,
167,
70,
71,
37,
37,
57,
38,
158,
141,
127,
69,
77,
70,
82,
117,
118,
70,
86,
122,
122,
80,
116,
83,
80,
89,
97,
90,
82,
131,
82,
92,
113,
165,
114,
131,
85,
140,
140,
142,
143,
144,
145,
146,
147,
148,
94,
141,
136,
31,
97,
150,
155,
156,
122,
96,
153,
97,
100,
135,
162,
100,
165,
165,
150,
157,
140,
170,
171,
171,
153,
165,
140,
163,
142,
143,
144,
145,
146,
147,
148,
153,
31,
-1,
137,
138,
153,
155,
156,
166,
168,
-1,
74,
-1,
-1,
-1,
-1,
165,
80,
135,
153,
-1,
170,
171,
-1,
87,
88,
89,
-1,
91,
153,
93,
-1,
95,
167,
-1,
98,
-1,
-1,
157,
-1,
103,
104,
105,
1,
74,
-1,
109,
110,
158,
164,
80,
159,
115,
116,
163,
162,
167,
87,
88,
89,
163,
91,
163,
93,
127,
95,
1,
163,
98,
163,
163,
163,
163,
103,
104,
105,
163,
74,
163,
109,
110,
163,
163,
80,
163,
115,
116,
70,
163,
163,
87,
88,
89,
163,
91,
163,
93,
127,
95,
163,
165,
98,
164,
164,
164,
102,
103,
104,
105,
164,
74,
164,
109,
110,
165,
165,
80,
81,
115,
116,
165,
165,
1,
87,
88,
89,
84,
91,
165,
93,
127,
95,
165,
165,
98,
166,
165,
165,
165,
103,
104,
105,
100,
101,
102,
109,
110,
165,
106,
84,
165,
115,
116,
165,
137,
138,
165,
165,
165,
117,
118,
165,
165,
127,
122,
100,
101,
102,
166,
165,
153,
106,
130,
131,
132,
133,
134,
165,
165,
165,
165,
165,
117,
118,
167,
165,
165,
122,
165,
165,
165,
165,
165,
165,
165,
130,
131,
132,
133,
134,
74,
166,
165,
82,
165,
163,
80,
166,
165,
167,
168,
165,
165,
87,
88,
89,
166,
91,
166,
93,
166,
95,
166,
166,
98,
166,
166,
166,
163,
103,
104,
105,
167,
168,
166,
109,
110,
166,
117,
118,
166,
115,
116,
122,
166,
166,
166,
166,
166,
166,
166,
166,
131,
127,
166,
166,
166,
166,
166,
166,
166,
140,
166,
166,
166,
166,
166,
166,
166,
166,
166,
166,
166,
166,
166,
-1,
167,
167,
167,
167,
167,
167,
167,
162,
167,
167,
165,
167,
169,
167,
167,
-1,
171,
168,
170,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
168,
-1,
-1,
-1,
171,
);
protected array $actionBase = array(
0,
-2,
156,
559,
641,
1004,
1027,
485,
292,
200,
-60,
283,
568,
590,
590,
715,
590,
195,
578,
894,
395,
395,
395,
825,
313,
313,
825,
313,
731,
731,
731,
731,
764,
764,
965,
965,
998,
932,
899,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
1088,
37,
360,
216,
644,
1061,
1067,
1063,
1068,
1059,
1058,
1062,
1064,
1069,
1109,
1110,
812,
1111,
1112,
1108,
1113,
1065,
909,
1060,
1066,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
135,
477,
373,
201,
201,
201,
201,
201,
201,
201,
201,
201,
201,
201,
201,
201,
201,
201,
201,
201,
201,
201,
201,
642,
642,
22,
22,
22,
362,
813,
778,
813,
813,
813,
813,
813,
813,
813,
813,
346,
205,
678,
188,
171,
171,
7,
7,
7,
7,
7,
376,
779,
54,
1083,
1083,
139,
139,
139,
139,
-50,
49,
749,
380,
787,
-39,
569,
569,
536,
536,
335,
335,
349,
349,
335,
335,
335,
212,
212,
212,
212,
415,
494,
519,
512,
-71,
807,
584,
584,
584,
584,
807,
807,
807,
807,
795,
1086,
807,
807,
807,
639,
828,
828,
979,
452,
452,
452,
828,
492,
-70,
-70,
492,
394,
-70,
516,
982,
637,
988,
397,
785,
486,
509,
397,
-16,
299,
502,
233,
854,
633,
854,
1056,
832,
832,
794,
752,
898,
1085,
1070,
839,
1106,
842,
1107,
471,
10,
747,
1055,
1055,
1055,
1055,
1055,
1055,
1055,
1055,
1055,
1055,
1055,
1114,
632,
1056,
145,
1114,
1114,
1114,
632,
632,
632,
632,
632,
632,
632,
632,
796,
632,
632,
650,
145,
654,
657,
145,
837,
632,
798,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
-18,
37,
37,
360,
5,
5,
37,
341,
52,
5,
5,
5,
5,
37,
37,
37,
37,
633,
830,
789,
636,
278,
843,
128,
830,
830,
830,
26,
136,
120,
732,
815,
259,
822,
822,
829,
933,
933,
822,
827,
822,
829,
822,
822,
933,
933,
855,
933,
163,
541,
430,
514,
562,
933,
273,
822,
822,
822,
822,
845,
933,
58,
573,
822,
234,
194,
822,
822,
845,
805,
802,
793,
933,
933,
933,
845,
470,
793,
793,
793,
859,
861,
800,
799,
390,
356,
598,
127,
850,
799,
799,
822,
535,
800,
799,
800,
799,
852,
799,
799,
799,
800,
799,
827,
456,
799,
720,
728,
586,
75,
799,
19,
950,
953,
734,
954,
944,
955,
1008,
958,
959,
1073,
930,
977,
947,
966,
1009,
935,
934,
811,
666,
692,
809,
784,
929,
823,
823,
823,
917,
918,
823,
823,
823,
823,
823,
823,
823,
823,
666,
847,
838,
817,
983,
703,
705,
1044,
782,
1090,
1081,
982,
950,
959,
739,
947,
966,
935,
934,
792,
790,
772,
783,
769,
763,
760,
762,
797,
1046,
974,
791,
707,
1016,
985,
1089,
1071,
986,
987,
1018,
1047,
866,
1050,
1091,
824,
1092,
1093,
900,
989,
1074,
823,
912,
897,
901,
988,
925,
666,
902,
1051,
997,
851,
1019,
1021,
1072,
834,
821,
907,
1094,
990,
991,
999,
1075,
1076,
853,
1003,
804,
1022,
841,
803,
1023,
1030,
1033,
1036,
1077,
1095,
1079,
911,
1080,
868,
818,
931,
840,
1096,
307,
835,
836,
849,
1005,
605,
978,
1082,
1087,
1097,
1040,
1041,
1042,
1098,
1099,
975,
869,
1012,
833,
1014,
964,
870,
871,
608,
848,
1052,
819,
831,
844,
626,
634,
1100,
1101,
1102,
976,
806,
816,
875,
877,
1053,
826,
1054,
1103,
640,
880,
1104,
1045,
736,
740,
560,
662,
647,
750,
820,
1084,
814,
801,
810,
1001,
740,
808,
881,
1105,
883,
887,
888,
1043,
892,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
468,
468,
468,
468,
468,
468,
313,
313,
313,
313,
313,
468,
468,
468,
468,
468,
468,
468,
313,
468,
468,
468,
313,
0,
0,
313,
0,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
468,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
297,
716,
716,
297,
297,
297,
297,
716,
716,
716,
716,
716,
716,
716,
716,
716,
716,
297,
297,
0,
297,
297,
297,
297,
297,
297,
297,
297,
855,
716,
716,
716,
716,
452,
452,
452,
452,
-95,
-95,
716,
716,
716,
394,
716,
716,
452,
452,
716,
716,
716,
716,
716,
716,
716,
716,
716,
716,
716,
0,
0,
0,
145,
-70,
716,
827,
827,
827,
827,
716,
716,
716,
716,
-70,
-70,
716,
716,
716,
0,
0,
0,
0,
0,
0,
0,
0,
145,
0,
0,
145,
0,
0,
827,
638,
827,
638,
716,
394,
855,
659,
716,
0,
0,
0,
0,
145,
827,
145,
632,
-70,
-70,
632,
632,
5,
37,
659,
613,
613,
613,
613,
0,
0,
633,
855,
855,
855,
855,
855,
855,
855,
855,
855,
855,
855,
827,
0,
855,
0,
827,
827,
827,
0,
0,
0,
0,
0,
0,
0,
0,
933,
0,
0,
0,
0,
0,
0,
0,
827,
0,
933,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
827,
0,
0,
0,
0,
0,
0,
0,
0,
0,
823,
834,
0,
0,
834,
0,
823,
823,
823,
0,
0,
0,
848,
826,
);
protected array $actionDefault = array(
3,
32767,
102,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
100,
32767,
618,
618,
618,
618,
32767,
32767,
255,
102,
32767,
32767,
487,
404,
404,
404,
32767,
32767,
560,
560,
560,
560,
560,
32767,
32767,
32767,
32767,
32767,
32767,
487,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
36,
7,
8,
10,
11,
49,
17,
328,
100,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
102,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
611,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
392,
491,
470,
471,
473,
474,
403,
561,
617,
331,
614,
333,
402,
145,
343,
334,
243,
259,
492,
260,
493,
496,
497,
216,
389,
149,
150,
434,
488,
436,
486,
490,
435,
409,
415,
416,
417,
418,
419,
420,
421,
422,
423,
424,
425,
426,
427,
407,
408,
489,
32767,
32767,
467,
466,
465,
432,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
102,
32767,
433,
437,
406,
440,
438,
439,
456,
457,
454,
455,
458,
32767,
32767,
320,
32767,
32767,
459,
460,
461,
462,
370,
368,
32767,
32767,
320,
111,
32767,
32767,
447,
448,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
504,
554,
464,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
102,
32767,
100,
556,
429,
431,
524,
442,
443,
441,
410,
32767,
529,
32767,
102,
32767,
531,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
555,
32767,
562,
562,
32767,
517,
100,
195,
32767,
530,
195,
195,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
625,
517,
110,
110,
110,
110,
110,
110,
110,
110,
110,
110,
110,
32767,
195,
110,
32767,
32767,
32767,
100,
195,
195,
195,
195,
195,
195,
195,
195,
532,
195,
195,
190,
32767,
269,
271,
102,
579,
195,
534,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
517,
452,
138,
32767,
519,
138,
562,
444,
445,
446,
562,
562,
562,
316,
293,
32767,
32767,
32767,
32767,
532,
532,
100,
100,
100,
100,
32767,
32767,
32767,
32767,
111,
503,
99,
99,
99,
99,
99,
103,
101,
32767,
32767,
32767,
32767,
224,
32767,
101,
99,
32767,
101,
101,
32767,
32767,
224,
226,
213,
228,
32767,
583,
584,
224,
101,
228,
228,
228,
248,
248,
506,
322,
101,
99,
101,
101,
197,
322,
322,
32767,
101,
506,
322,
506,
322,
199,
322,
322,
322,
506,
322,
32767,
101,
322,
215,
392,
99,
99,
322,
32767,
32767,
32767,
519,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
223,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
549,
32767,
567,
581,
450,
451,
453,
566,
564,
475,
476,
477,
478,
479,
480,
481,
483,
613,
32767,
523,
32767,
32767,
32767,
342,
32767,
623,
32767,
32767,
32767,
9,
74,
512,
42,
43,
51,
57,
538,
539,
540,
541,
535,
536,
542,
537,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
624,
32767,
562,
32767,
32767,
32767,
32767,
449,
544,
589,
32767,
32767,
563,
616,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
138,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
549,
32767,
136,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
545,
32767,
32767,
32767,
562,
32767,
32767,
32767,
32767,
318,
315,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
562,
32767,
32767,
32767,
32767,
32767,
295,
32767,
312,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
388,
519,
298,
300,
301,
32767,
32767,
32767,
32767,
364,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
32767,
152,
152,
3,
3,
345,
152,
152,
152,
345,
345,
152,
345,
345,
345,
152,
152,
152,
152,
152,
152,
281,
185,
263,
266,
248,
248,
152,
356,
152,
);
protected array $goto = array(
196,
196,
1041,
352,
700,
465,
587,
470,
470,
1072,
736,
641,
643,
1205,
855,
663,
470,
856,
709,
687,
690,
1014,
698,
707,
1010,
625,
662,
166,
166,
166,
166,
220,
197,
193,
193,
176,
178,
215,
193,
193,
193,
193,
193,
194,
194,
194,
194,
194,
188,
189,
190,
191,
192,
217,
215,
218,
540,
541,
423,
542,
545,
546,
547,
548,
549,
550,
551,
552,
1156,
167,
168,
169,
195,
170,
171,
172,
165,
173,
174,
175,
177,
214,
216,
219,
239,
242,
253,
254,
256,
257,
258,
259,
260,
261,
262,
263,
269,
270,
271,
272,
281,
282,
317,
318,
319,
429,
430,
431,
602,
221,
222,
223,
224,
225,
226,
227,
228,
229,
230,
231,
232,
233,
234,
235,
179,
236,
180,
188,
189,
190,
191,
192,
217,
1156,
198,
199,
200,
201,
240,
181,
182,
202,
183,
203,
199,
184,
241,
198,
164,
204,
205,
185,
206,
207,
208,
186,
209,
210,
187,
211,
212,
213,
278,
278,
278,
278,
858,
433,
665,
979,
916,
604,
917,
428,
320,
314,
315,
338,
597,
432,
339,
434,
642,
627,
627,
896,
854,
896,
896,
1291,
1291,
1291,
1291,
1291,
1291,
1291,
1291,
1291,
1291,
614,
628,
631,
632,
633,
634,
655,
656,
657,
711,
830,
871,
460,
912,
907,
908,
921,
864,
909,
861,
910,
911,
862,
356,
915,
868,
421,
883,
482,
867,
870,
1361,
1361,
356,
356,
484,
1094,
1089,
1090,
1091,
889,
603,
1107,
397,
400,
605,
609,
356,
356,
1361,
594,
356,
712,
344,
1378,
353,
354,
511,
703,
442,
1105,
1260,
1041,
1260,
1260,
350,
559,
1364,
1364,
356,
356,
1041,
1260,
1041,
1351,
1041,
1041,
345,
344,
1041,
1041,
1041,
1041,
1041,
1041,
1041,
1041,
1041,
1041,
1041,
1000,
1236,
948,
249,
249,
1260,
1237,
1240,
949,
1241,
1260,
1260,
1260,
1260,
1114,
1115,
1260,
1260,
1260,
1343,
1343,
1343,
1343,
564,
557,
851,
427,
1322,
616,
395,
247,
247,
247,
247,
244,
250,
592,
929,
503,
664,
504,
930,
355,
355,
355,
355,
510,
945,
512,
945,
479,
1336,
1337,
328,
557,
564,
589,
590,
330,
600,
606,
1153,
621,
622,
555,
1065,
555,
555,
658,
659,
25,
676,
677,
678,
440,
555,
1310,
1310,
686,
559,
851,
670,
1310,
1310,
1310,
1310,
1310,
1310,
1310,
1310,
1310,
1310,
1044,
1044,
1047,
1046,
685,
956,
458,
340,
1036,
1052,
1053,
973,
973,
973,
973,
1050,
1051,
458,
967,
974,
1307,
1307,
971,
412,
708,
848,
1307,
1307,
1307,
1307,
1307,
1307,
1307,
1307,
1307,
1307,
5,
610,
6,
873,
934,
1143,
451,
451,
876,
451,
451,
1333,
962,
1333,
1333,
1253,
1019,
404,
553,
553,
553,
553,
1333,
608,
875,
620,
668,
998,
1251,
558,
584,
1022,
869,
739,
558,
885,
584,
480,
398,
464,
1078,
697,
326,
309,
1250,
832,
1345,
1345,
1345,
1345,
1082,
473,
601,
474,
475,
1338,
1339,
697,
1128,
881,
697,
984,
1369,
1370,
598,
619,
1032,
0,
544,
544,
851,
836,
0,
1329,
544,
544,
544,
544,
544,
544,
544,
544,
544,
544,
543,
543,
1255,
879,
0,
0,
543,
0,
543,
543,
543,
543,
543,
543,
543,
543,
451,
451,
451,
451,
451,
451,
451,
451,
451,
451,
451,
252,
252,
451,
836,
1080,
836,
409,
410,
1331,
1331,
1080,
674,
0,
675,
0,
414,
415,
416,
0,
688,
0,
0,
417,
635,
637,
639,
0,
348,
0,
0,
1256,
1257,
0,
1243,
884,
872,
1077,
1081,
0,
846,
1003,
0,
0,
975,
0,
735,
1243,
982,
556,
1012,
1007,
0,
435,
0,
0,
0,
0,
0,
1258,
1319,
1320,
0,
0,
435,
273,
325,
0,
325,
325,
0,
972,
1048,
1048,
0,
0,
0,
669,
1059,
1055,
1056,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1126,
888,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1017,
1017,
);
protected array $gotoCheck = array(
42,
42,
73,
97,
73,
156,
48,
154,
154,
128,
48,
48,
48,
156,
26,
48,
154,
27,
9,
48,
48,
48,
48,
48,
48,
56,
56,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
23,
23,
23,
23,
15,
66,
66,
49,
65,
131,
65,
66,
66,
66,
66,
66,
66,
66,
66,
66,
66,
108,
108,
25,
25,
25,
25,
108,
108,
108,
108,
108,
108,
108,
108,
108,
108,
81,
81,
81,
81,
81,
81,
81,
81,
81,
81,
6,
35,
83,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
14,
15,
15,
43,
35,
84,
15,
35,
188,
188,
14,
14,
84,
15,
15,
15,
15,
45,
8,
8,
59,
59,
59,
59,
14,
14,
188,
178,
14,
8,
174,
14,
97,
97,
8,
8,
83,
8,
73,
73,
73,
73,
185,
14,
188,
188,
14,
14,
73,
73,
73,
187,
73,
73,
174,
174,
73,
73,
73,
73,
73,
73,
73,
73,
73,
73,
73,
103,
79,
79,
5,
5,
73,
79,
79,
79,
79,
73,
73,
73,
73,
145,
145,
73,
73,
73,
9,
9,
9,
9,
76,
76,
22,
13,
14,
13,
62,
5,
5,
5,
5,
5,
5,
104,
73,
160,
64,
160,
73,
24,
24,
24,
24,
160,
9,
14,
9,
182,
182,
182,
76,
76,
76,
76,
76,
76,
76,
76,
155,
76,
76,
19,
115,
19,
19,
86,
86,
76,
86,
86,
86,
113,
19,
176,
176,
117,
14,
22,
121,
176,
176,
176,
176,
176,
176,
176,
176,
176,
176,
89,
89,
119,
119,
89,
89,
19,
29,
89,
89,
89,
19,
19,
19,
19,
120,
120,
19,
19,
19,
177,
177,
93,
93,
93,
18,
177,
177,
177,
177,
177,
177,
177,
177,
177,
177,
46,
17,
46,
37,
17,
17,
23,
23,
39,
23,
23,
131,
92,
131,
131,
14,
17,
28,
107,
107,
107,
107,
131,
107,
17,
80,
17,
17,
166,
9,
9,
110,
17,
99,
9,
41,
9,
157,
9,
9,
130,
7,
175,
175,
17,
7,
131,
131,
131,
131,
133,
9,
9,
9,
9,
184,
184,
7,
148,
9,
7,
96,
9,
9,
2,
2,
114,
-1,
179,
179,
22,
12,
-1,
131,
179,
179,
179,
179,
179,
179,
179,
179,
179,
179,
162,
162,
20,
9,
-1,
-1,
162,
-1,
162,
162,
162,
162,
162,
162,
162,
162,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
5,
5,
23,
12,
131,
12,
82,
82,
131,
131,
131,
82,
-1,
82,
-1,
82,
82,
82,
-1,
82,
-1,
-1,
82,
85,
85,
85,
-1,
82,
-1,
-1,
20,
20,
-1,
20,
16,
16,
16,
16,
-1,
20,
50,
-1,
-1,
50,
-1,
50,
20,
16,
50,
50,
50,
-1,
118,
-1,
-1,
-1,
-1,
-1,
20,
20,
20,
-1,
-1,
118,
24,
24,
-1,
24,
24,
-1,
16,
118,
118,
-1,
-1,
-1,
118,
118,
118,
118,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
16,
16,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
107,
107,
);
protected array $gotoBase = array(
0,
0,
-234,
0,
0,
291,
199,
451,
232,
8,
0,
0,
191,
-25,
-76,
-183,
108,
-48,
96,
88,
109,
0,
36,
159,
328,
182,
10,
13,
94,
91,
0,
0,
0,
0,
0,
-162,
0,
78,
0,
101,
0,
9,
-1,
202,
0,
213,
-322,
0,
-708,
151,
556,
0,
0,
0,
0,
0,
-15,
0,
0,
197,
0,
0,
276,
0,
90,
156,
-70,
0,
0,
0,
0,
0,
0,
-5,
0,
0,
-34,
0,
0,
-119,
112,
-160,
40,
-67,
-246,
69,
-364,
0,
0,
102,
0,
0,
97,
98,
0,
0,
33,
-483,
0,
42,
0,
0,
0,
254,
282,
0,
0,
407,
-54,
0,
77,
0,
0,
86,
-29,
79,
0,
84,
314,
104,
111,
80,
0,
0,
0,
0,
0,
0,
7,
0,
82,
163,
0,
23,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
30,
0,
0,
29,
0,
0,
0,
0,
0,
-27,
106,
-263,
12,
0,
0,
-171,
0,
264,
0,
0,
0,
75,
0,
0,
0,
0,
0,
0,
0,
-46,
137,
128,
164,
220,
248,
0,
0,
38,
0,
99,
234,
0,
242,
-78,
0,
0,
);
protected array $gotoDefault = array(
-32768,
516,
743,
4,
744,
938,
819,
828,
580,
534,
710,
349,
629,
424,
1327,
914,
1142,
599,
847,
1269,
1275,
459,
850,
333,
733,
926,
897,
898,
401,
388,
863,
399,
653,
630,
497,
882,
455,
874,
489,
877,
454,
886,
163,
420,
514,
890,
3,
893,
562,
924,
977,
389,
901,
390,
681,
903,
583,
905,
906,
396,
402,
403,
1147,
591,
626,
918,
255,
585,
919,
387,
920,
928,
392,
394,
691,
469,
508,
502,
413,
1109,
586,
613,
650,
448,
476,
624,
636,
623,
483,
436,
418,
332,
961,
969,
490,
467,
983,
351,
991,
741,
1155,
644,
492,
999,
645,
1006,
1009,
535,
536,
481,
1021,
266,
1024,
493,
1033,
23,
671,
1038,
1039,
672,
646,
1061,
647,
673,
648,
1063,
466,
581,
1071,
456,
1079,
1315,
457,
1083,
264,
1086,
277,
419,
437,
1092,
1093,
9,
1099,
701,
702,
19,
274,
513,
1127,
692,
-32768,
-32768,
-32768,
-32768,
453,
1154,
452,
1224,
1226,
563,
494,
1244,
294,
1247,
684,
509,
1252,
449,
1318,
450,
537,
477,
316,
538,
1362,
308,
336,
313,
554,
295,
337,
539,
478,
1324,
1332,
334,
31,
1352,
1363,
596,
618,
);
protected array $ruleToNonTerminal = array(
0,
1,
3,
3,
2,
5,
5,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
7,
7,
7,
7,
7,
7,
7,
7,
8,
8,
9,
10,
11,
11,
11,
12,
12,
13,
13,
14,
15,
15,
16,
16,
17,
17,
18,
18,
21,
21,
22,
23,
23,
24,
24,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
29,
29,
30,
30,
32,
34,
34,
28,
36,
36,
33,
38,
38,
35,
35,
37,
37,
39,
39,
31,
40,
40,
41,
43,
44,
44,
45,
45,
46,
46,
48,
47,
47,
47,
47,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
25,
25,
50,
69,
69,
72,
72,
71,
70,
70,
63,
75,
75,
76,
76,
77,
77,
78,
78,
79,
79,
80,
80,
80,
26,
26,
27,
27,
27,
27,
27,
88,
88,
90,
90,
83,
83,
91,
91,
92,
92,
92,
84,
84,
87,
87,
85,
85,
93,
94,
94,
57,
57,
65,
65,
68,
68,
68,
67,
95,
95,
96,
58,
58,
58,
58,
97,
97,
98,
98,
99,
99,
100,
101,
101,
102,
102,
103,
103,
55,
55,
51,
51,
105,
53,
53,
106,
52,
52,
54,
54,
64,
64,
64,
64,
81,
81,
109,
109,
111,
111,
112,
112,
112,
112,
112,
112,
112,
110,
110,
110,
115,
115,
115,
115,
89,
89,
118,
118,
118,
119,
119,
116,
116,
120,
120,
122,
122,
123,
123,
117,
124,
124,
121,
125,
125,
125,
125,
113,
113,
82,
82,
82,
20,
20,
20,
127,
126,
126,
128,
128,
128,
128,
60,
129,
129,
130,
61,
132,
132,
133,
133,
134,
134,
86,
135,
135,
135,
135,
135,
135,
135,
140,
140,
141,
141,
142,
142,
142,
142,
142,
143,
144,
144,
139,
139,
136,
136,
138,
138,
146,
146,
145,
145,
145,
145,
145,
145,
145,
145,
145,
145,
137,
147,
147,
149,
148,
148,
150,
150,
114,
151,
151,
153,
153,
153,
152,
152,
62,
104,
154,
154,
56,
56,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
161,
162,
162,
163,
155,
155,
160,
160,
164,
165,
165,
166,
167,
168,
168,
168,
168,
19,
19,
73,
73,
73,
73,
156,
156,
156,
156,
170,
170,
159,
159,
159,
157,
157,
176,
176,
176,
176,
176,
176,
176,
176,
176,
176,
177,
177,
177,
108,
179,
179,
179,
179,
158,
158,
158,
158,
158,
158,
158,
158,
59,
59,
173,
173,
173,
173,
173,
180,
180,
169,
169,
169,
169,
181,
181,
181,
181,
181,
181,
74,
74,
66,
66,
66,
66,
131,
131,
131,
131,
184,
183,
172,
172,
172,
172,
172,
172,
172,
171,
171,
171,
182,
182,
182,
182,
107,
178,
186,
186,
185,
185,
187,
187,
187,
187,
187,
187,
187,
187,
175,
175,
175,
175,
174,
189,
188,
188,
188,
188,
188,
188,
188,
188,
190,
190,
190,
190,
);
protected array $ruleToLength = array(
1,
1,
2,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
0,
1,
1,
2,
1,
3,
4,
1,
2,
0,
1,
1,
1,
1,
4,
3,
5,
4,
3,
4,
1,
3,
1,
1,
8,
7,
2,
3,
1,
2,
3,
1,
2,
3,
1,
1,
3,
1,
3,
1,
2,
2,
3,
1,
3,
2,
3,
1,
3,
3,
2,
0,
1,
1,
1,
1,
1,
3,
7,
10,
5,
7,
9,
5,
3,
3,
3,
3,
3,
3,
1,
2,
5,
7,
9,
6,
5,
6,
3,
2,
1,
1,
1,
1,
0,
2,
1,
3,
8,
0,
4,
2,
1,
3,
0,
1,
0,
1,
0,
1,
3,
1,
1,
1,
1,
8,
9,
7,
8,
7,
6,
8,
0,
2,
0,
2,
1,
2,
1,
2,
1,
1,
1,
0,
2,
0,
2,
0,
2,
2,
1,
3,
1,
4,
1,
4,
1,
1,
4,
2,
1,
3,
3,
3,
4,
4,
5,
0,
2,
4,
3,
1,
1,
7,
0,
2,
1,
3,
3,
4,
1,
4,
0,
2,
5,
0,
2,
6,
0,
2,
0,
3,
1,
2,
1,
1,
2,
0,
1,
3,
0,
2,
1,
1,
1,
1,
1,
1,
1,
7,
9,
6,
1,
2,
1,
1,
1,
1,
1,
1,
1,
1,
3,
3,
3,
1,
3,
3,
3,
3,
3,
1,
3,
3,
1,
1,
2,
1,
1,
0,
1,
0,
2,
2,
2,
4,
3,
1,
1,
3,
1,
2,
2,
3,
2,
3,
1,
1,
2,
3,
1,
1,
3,
2,
0,
1,
5,
5,
6,
10,
3,
5,
1,
1,
3,
0,
2,
4,
5,
4,
4,
4,
3,
1,
1,
1,
1,
1,
1,
0,
1,
1,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
2,
1,
3,
1,
1,
3,
0,
2,
0,
5,
8,
1,
3,
3,
0,
2,
2,
2,
3,
1,
0,
1,
1,
3,
3,
3,
4,
4,
1,
1,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
5,
4,
3,
4,
4,
2,
2,
4,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
3,
2,
1,
2,
4,
2,
2,
8,
9,
8,
9,
9,
10,
9,
10,
8,
3,
2,
2,
1,
1,
0,
4,
2,
1,
3,
2,
1,
2,
2,
2,
4,
1,
1,
1,
1,
1,
1,
1,
1,
3,
1,
1,
1,
0,
1,
1,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
3,
5,
3,
3,
4,
1,
1,
3,
1,
1,
1,
1,
1,
3,
2,
3,
0,
1,
1,
3,
1,
1,
1,
1,
1,
1,
3,
1,
1,
1,
4,
4,
1,
4,
4,
0,
1,
1,
1,
3,
3,
1,
4,
2,
2,
1,
3,
1,
4,
4,
3,
3,
3,
3,
1,
3,
1,
1,
3,
1,
1,
4,
1,
1,
1,
3,
1,
1,
2,
1,
3,
4,
3,
2,
0,
2,
2,
1,
2,
1,
1,
1,
4,
3,
3,
3,
3,
6,
3,
1,
1,
2,
1,
);
protected function initReduceCallbacks() : void {
$this->reduceCallbacks = [
0 => null,
1 => static function ($self, $stackPos) {
$self->semValue = $self->handleNamespaces($self->semStack[$stackPos - (1 - 1)]);
},
2 => static function ($self, $stackPos) {
if ($self->semStack[$stackPos - (2 - 2)] !== null) {
$self->semStack[$stackPos - (2 - 1)][] = $self->semStack[$stackPos - (2 - 2)];
}
$self->semValue = $self->semStack[$stackPos - (2 - 1)];
},
3 => static function ($self, $stackPos) {
$self->semValue = array();
},
4 => static function ($self, $stackPos) {
$nop = $self->maybeCreateZeroLengthNop($self->tokenPos);
if ($nop !== null) {
$self->semStack[$stackPos - (1 - 1)][] = $nop;
}
$self->semValue = $self->semStack[$stackPos - (1 - 1)];
},
5 => null,
6 => null,
7 => null,
8 => null,
9 => null,
10 => null,
11 => null,
12 => null,
13 => null,
14 => null,
15 => null,
16 => null,
17 => null,
18 => null,
19 => null,
20 => null,
21 => null,
22 => null,
23 => null,
24 => null,
25 => null,
26 => null,
27 => null,
28 => null,
29 => null,
30 => null,
31 => null,
32 => null,
33 => null,
34 => null,
35 => null,
36 => null,
37 => null,
38 => null,
39 => null,
40 => null,
41 => null,
42 => null,
43 => null,
44 => null,
45 => null,
46 => null,
47 => null,
48 => null,
49 => null,
50 => null,
51 => null,
52 => null,
53 => null,
54 => null,
55 => null,
56 => null,
57 => null,
58 => null,
59 => null,
60 => null,
61 => null,
62 => null,
63 => null,
64 => null,
65 => null,
66 => null,
67 => null,
68 => null,
69 => null,
70 => null,
71 => null,
72 => null,
73 => null,
74 => null,
75 => null,
76 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (1 - 1)];
if ($self->semValue === "<?=") {
$self->emitError(new Error('Cannot use "<?=" as an identifier', $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos])));
}
},
77 => null,
78 => null,
79 => null,
80 => null,
81 => null,
82 => null,
83 => null,
84 => null,
85 => static function ($self, $stackPos) {
$self->semValue = new Node\Identifier($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
86 => static function ($self, $stackPos) {
$self->semValue = new Node\Identifier($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
87 => static function ($self, $stackPos) {
$self->semValue = new Node\Identifier($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
88 => static function ($self, $stackPos) {
$self->semValue = new Node\Identifier($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
89 => static function ($self, $stackPos) {
$self->semValue = new Name($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
90 => static function ($self, $stackPos) {
$self->semValue = new Name($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
91 => static function ($self, $stackPos) {
$self->semValue = new Name($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
92 => static function ($self, $stackPos) {
$self->semValue = new Name($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
93 => static function ($self, $stackPos) {
$self->semValue = new Name($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
94 => null,
95 => static function ($self, $stackPos) {
$self->semValue = new Name(substr($self->semStack[$stackPos - (1 - 1)], 1), $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
96 => static function ($self, $stackPos) {
$self->semValue = new Expr\Variable(substr($self->semStack[$stackPos - (1 - 1)], 1), $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
97 => static function ($self, $stackPos) {
/* nothing */
},
98 => static function ($self, $stackPos) {
/* nothing */
},
99 => static function ($self, $stackPos) {
/* nothing */
},
100 => static function ($self, $stackPos) {
$self->emitError(new Error('A trailing comma is not allowed here', $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos])));
},
101 => null,
102 => null,
103 => static function ($self, $stackPos) {
$self->semValue = new Node\Attribute($self->semStack[$stackPos - (1 - 1)], [], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
104 => static function ($self, $stackPos) {
$self->semValue = new Node\Attribute($self->semStack[$stackPos - (2 - 1)], $self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
105 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
106 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
107 => static function ($self, $stackPos) {
$self->semValue = new Node\AttributeGroup($self->semStack[$stackPos - (4 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
108 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
109 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (2 - 1)][] = $self->semStack[$stackPos - (2 - 2)];
$self->semValue = $self->semStack[$stackPos - (2 - 1)];
},
110 => static function ($self, $stackPos) {
$self->semValue = [];
},
111 => null,
112 => null,
113 => null,
114 => null,
115 => static function ($self, $stackPos) {
$self->semValue = new Stmt\HaltCompiler($self->handleHaltCompiler(), $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
116 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Namespace_($self->semStack[$stackPos - (3 - 2)], null, $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
$self->semValue
->setAttribute('kind', Stmt\Namespace_::KIND_SEMICOLON);
$self->checkNamespace($self->semValue);
},
117 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Namespace_($self->semStack[$stackPos - (5 - 2)], $self->semStack[$stackPos - (5 - 4)], $self->getAttributes($self->tokenStartStack[$stackPos - (5 - 1)], $self->tokenEndStack[$stackPos]));
$self->semValue
->setAttribute('kind', Stmt\Namespace_::KIND_BRACED);
$self->checkNamespace($self->semValue);
},
118 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Namespace_(null, $self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
$self->semValue
->setAttribute('kind', Stmt\Namespace_::KIND_BRACED);
$self->checkNamespace($self->semValue);
},
119 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Use_($self->semStack[$stackPos - (3 - 2)], Stmt\Use_::TYPE_NORMAL, $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
120 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Use_($self->semStack[$stackPos - (4 - 3)], $self->semStack[$stackPos - (4 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
121 => null,
122 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Const_($self->semStack[$stackPos - (3 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
123 => static function ($self, $stackPos) {
$self->semValue = Stmt\Use_::TYPE_FUNCTION;
},
124 => static function ($self, $stackPos) {
$self->semValue = Stmt\Use_::TYPE_CONSTANT;
},
125 => static function ($self, $stackPos) {
$self->semValue = new Stmt\GroupUse($self->semStack[$stackPos - (8 - 3)], $self->semStack[$stackPos - (8 - 6)], $self->semStack[$stackPos - (8 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (8 - 1)], $self->tokenEndStack[$stackPos]));
},
126 => static function ($self, $stackPos) {
$self->semValue = new Stmt\GroupUse($self->semStack[$stackPos - (7 - 2)], $self->semStack[$stackPos - (7 - 5)], Stmt\Use_::TYPE_UNKNOWN, $self->getAttributes($self->tokenStartStack[$stackPos - (7 - 1)], $self->tokenEndStack[$stackPos]));
},
127 => null,
128 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
129 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
130 => null,
131 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
132 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
133 => null,
134 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
135 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
136 => static function ($self, $stackPos) {
$self->semValue = new Node\UseItem($self->semStack[$stackPos - (1 - 1)], null, Stmt\Use_::TYPE_UNKNOWN, $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
$self->checkUseUse($self->semValue, $stackPos - (1 - 1));
},
137 => static function ($self, $stackPos) {
$self->semValue = new Node\UseItem($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], Stmt\Use_::TYPE_UNKNOWN, $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
$self->checkUseUse($self->semValue, $stackPos - (3 - 3));
},
138 => static function ($self, $stackPos) {
$self->semValue = new Node\UseItem($self->semStack[$stackPos - (1 - 1)], null, Stmt\Use_::TYPE_UNKNOWN, $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
$self->checkUseUse($self->semValue, $stackPos - (1 - 1));
},
139 => static function ($self, $stackPos) {
$self->semValue = new Node\UseItem($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], Stmt\Use_::TYPE_UNKNOWN, $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
$self->checkUseUse($self->semValue, $stackPos - (3 - 3));
},
140 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (1 - 1)];
$self->semValue->type = Stmt\Use_::TYPE_NORMAL;
},
141 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (2 - 2)];
$self->semValue->type = $self->semStack[$stackPos - (2 - 1)];
},
142 => null,
143 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
144 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
145 => static function ($self, $stackPos) {
$self->semValue = new Node\Const_($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
146 => null,
147 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
148 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
149 => static function ($self, $stackPos) {
$self->semValue = new Node\Const_(new Node\Identifier($self->semStack[$stackPos - (3 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos - (3 - 1)])), $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
150 => static function ($self, $stackPos) {
$self->semValue = new Node\Const_(new Node\Identifier($self->semStack[$stackPos - (3 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos - (3 - 1)])), $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
151 => static function ($self, $stackPos) {
if ($self->semStack[$stackPos - (2 - 2)] !== null) {
$self->semStack[$stackPos - (2 - 1)][] = $self->semStack[$stackPos - (2 - 2)];
}
$self->semValue = $self->semStack[$stackPos - (2 - 1)];
},
152 => static function ($self, $stackPos) {
$self->semValue = array();
},
153 => static function ($self, $stackPos) {
$nop = $self->maybeCreateZeroLengthNop($self->tokenPos);
if ($nop !== null) {
$self->semStack[$stackPos - (1 - 1)][] = $nop;
}
$self->semValue = $self->semStack[$stackPos - (1 - 1)];
},
154 => null,
155 => null,
156 => null,
157 => static function ($self, $stackPos) {
throw new Error('__HALT_COMPILER() can only be used from the outermost scope', $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
158 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Block($self->semStack[$stackPos - (3 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
159 => static function ($self, $stackPos) {
$self->semValue = new Stmt\If_($self->semStack[$stackPos - (7 - 3)], [
'stmts' => $self->semStack[$stackPos - (7 - 5)],
'elseifs' => $self->semStack[$stackPos - (7 - 6)],
'else' => $self->semStack[$stackPos - (7 - 7)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (7 - 1)], $self->tokenEndStack[$stackPos]));
},
160 => static function ($self, $stackPos) {
$self->semValue = new Stmt\If_($self->semStack[$stackPos - (10 - 3)], [
'stmts' => $self->semStack[$stackPos - (10 - 6)],
'elseifs' => $self->semStack[$stackPos - (10 - 7)],
'else' => $self->semStack[$stackPos - (10 - 8)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (10 - 1)], $self->tokenEndStack[$stackPos]));
},
161 => static function ($self, $stackPos) {
$self->semValue = new Stmt\While_($self->semStack[$stackPos - (5 - 3)], $self->semStack[$stackPos - (5 - 5)], $self->getAttributes($self->tokenStartStack[$stackPos - (5 - 1)], $self->tokenEndStack[$stackPos]));
},
162 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Do_($self->semStack[$stackPos - (7 - 5)], $self->semStack[$stackPos - (7 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (7 - 1)], $self->tokenEndStack[$stackPos]));
},
163 => static function ($self, $stackPos) {
$self->semValue = new Stmt\For_([
'init' => $self->semStack[$stackPos - (9 - 3)],
'cond' => $self->semStack[$stackPos - (9 - 5)],
'loop' => $self->semStack[$stackPos - (9 - 7)],
'stmts' => $self->semStack[$stackPos - (9 - 9)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (9 - 1)], $self->tokenEndStack[$stackPos]));
},
164 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Switch_($self->semStack[$stackPos - (5 - 3)], $self->semStack[$stackPos - (5 - 5)], $self->getAttributes($self->tokenStartStack[$stackPos - (5 - 1)], $self->tokenEndStack[$stackPos]));
},
165 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Break_($self->semStack[$stackPos - (3 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
166 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Continue_($self->semStack[$stackPos - (3 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
167 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Return_($self->semStack[$stackPos - (3 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
168 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Global_($self->semStack[$stackPos - (3 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
169 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Static_($self->semStack[$stackPos - (3 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
170 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Echo_($self->semStack[$stackPos - (3 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
171 => static function ($self, $stackPos) {
$self->semValue = new Stmt\InlineHTML($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
$self->semValue
->setAttribute('hasLeadingNewline', $self->inlineHtmlHasLeadingNewline($stackPos - (1 - 1)));
},
172 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Expression($self->semStack[$stackPos - (2 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
173 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Unset_($self->semStack[$stackPos - (5 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (5 - 1)], $self->tokenEndStack[$stackPos]));
},
174 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Foreach_($self->semStack[$stackPos - (7 - 3)], $self->semStack[$stackPos - (7 - 5)][0], [
'keyVar' => null,
'byRef' => $self->semStack[$stackPos - (7 - 5)][1],
'stmts' => $self->semStack[$stackPos - (7 - 7)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (7 - 1)], $self->tokenEndStack[$stackPos]));
},
175 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Foreach_($self->semStack[$stackPos - (9 - 3)], $self->semStack[$stackPos - (9 - 7)][0], [
'keyVar' => $self->semStack[$stackPos - (9 - 5)],
'byRef' => $self->semStack[$stackPos - (9 - 7)][1],
'stmts' => $self->semStack[$stackPos - (9 - 9)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (9 - 1)], $self->tokenEndStack[$stackPos]));
},
176 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Foreach_($self->semStack[$stackPos - (6 - 3)], new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos - (6 - 4)], $self->tokenEndStack[$stackPos - (6 - 4)])), [
'stmts' => $self->semStack[$stackPos - (6 - 6)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (6 - 1)], $self->tokenEndStack[$stackPos]));
},
177 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Declare_($self->semStack[$stackPos - (5 - 3)], $self->semStack[$stackPos - (5 - 5)], $self->getAttributes($self->tokenStartStack[$stackPos - (5 - 1)], $self->tokenEndStack[$stackPos]));
},
178 => static function ($self, $stackPos) {
$self->semValue = new Stmt\TryCatch($self->semStack[$stackPos - (6 - 3)], $self->semStack[$stackPos - (6 - 5)], $self->semStack[$stackPos - (6 - 6)], $self->getAttributes($self->tokenStartStack[$stackPos - (6 - 1)], $self->tokenEndStack[$stackPos]));
$self->checkTryCatch($self->semValue);
},
179 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Goto_($self->semStack[$stackPos - (3 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
180 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Label($self->semStack[$stackPos - (2 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
181 => static function ($self, $stackPos) {
$self->semValue = null;
/* means: no statement */
},
182 => null,
183 => static function ($self, $stackPos) {
$self->semValue = $self->maybeCreateNop($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]);
},
184 => static function ($self, $stackPos) {
if ($self->semStack[$stackPos - (1 - 1)] instanceof Stmt\Block) {
$self->semValue = $self->semStack[$stackPos - (1 - 1)]->stmts;
}
else {
if ($self->semStack[$stackPos - (1 - 1)] === null) {
$self->semValue = [];
}
else {
$self->semValue = [
$self->semStack[$stackPos - (1 - 1)],
];
}
}
},
185 => static function ($self, $stackPos) {
$self->semValue = array();
},
186 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (2 - 1)][] = $self->semStack[$stackPos - (2 - 2)];
$self->semValue = $self->semStack[$stackPos - (2 - 1)];
},
187 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
188 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
189 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Catch_($self->semStack[$stackPos - (8 - 3)], $self->semStack[$stackPos - (8 - 4)], $self->semStack[$stackPos - (8 - 7)], $self->getAttributes($self->tokenStartStack[$stackPos - (8 - 1)], $self->tokenEndStack[$stackPos]));
},
190 => static function ($self, $stackPos) {
$self->semValue = null;
},
191 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Finally_($self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
192 => null,
193 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
194 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
195 => static function ($self, $stackPos) {
$self->semValue = false;
},
196 => static function ($self, $stackPos) {
$self->semValue = true;
},
197 => static function ($self, $stackPos) {
$self->semValue = false;
},
198 => static function ($self, $stackPos) {
$self->semValue = true;
},
199 => static function ($self, $stackPos) {
$self->semValue = false;
},
200 => static function ($self, $stackPos) {
$self->semValue = true;
},
201 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (3 - 2)];
},
202 => static function ($self, $stackPos) {
$self->semValue = [];
},
203 => null,
204 => static function ($self, $stackPos) {
$self->semValue = new Node\Identifier($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
205 => static function ($self, $stackPos) {
$self->semValue = new Node\Identifier($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
206 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Function_($self->semStack[$stackPos - (8 - 3)], [
'byRef' => $self->semStack[$stackPos - (8 - 2)],
'params' => $self->semStack[$stackPos - (8 - 5)],
'returnType' => $self->semStack[$stackPos - (8 - 7)],
'stmts' => $self->semStack[$stackPos - (8 - 8)],
'attrGroups' => [],
], $self->getAttributes($self->tokenStartStack[$stackPos - (8 - 1)], $self->tokenEndStack[$stackPos]));
},
207 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Function_($self->semStack[$stackPos - (9 - 4)], [
'byRef' => $self->semStack[$stackPos - (9 - 3)],
'params' => $self->semStack[$stackPos - (9 - 6)],
'returnType' => $self->semStack[$stackPos - (9 - 8)],
'stmts' => $self->semStack[$stackPos - (9 - 9)],
'attrGroups' => $self->semStack[$stackPos - (9 - 1)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (9 - 1)], $self->tokenEndStack[$stackPos]));
},
208 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Class_($self->semStack[$stackPos - (7 - 2)], [
'type' => $self->semStack[$stackPos - (7 - 1)],
'extends' => $self->semStack[$stackPos - (7 - 3)],
'implements' => $self->semStack[$stackPos - (7 - 4)],
'stmts' => $self->semStack[$stackPos - (7 - 6)],
'attrGroups' => [],
], $self->getAttributes($self->tokenStartStack[$stackPos - (7 - 1)], $self->tokenEndStack[$stackPos]));
$self->checkClass($self->semValue, $stackPos - (7 - 2));
},
209 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Class_($self->semStack[$stackPos - (8 - 3)], [
'type' => $self->semStack[$stackPos - (8 - 2)],
'extends' => $self->semStack[$stackPos - (8 - 4)],
'implements' => $self->semStack[$stackPos - (8 - 5)],
'stmts' => $self->semStack[$stackPos - (8 - 7)],
'attrGroups' => $self->semStack[$stackPos - (8 - 1)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (8 - 1)], $self->tokenEndStack[$stackPos]));
$self->checkClass($self->semValue, $stackPos - (8 - 3));
},
210 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Interface_($self->semStack[$stackPos - (7 - 3)], [
'extends' => $self->semStack[$stackPos - (7 - 4)],
'stmts' => $self->semStack[$stackPos - (7 - 6)],
'attrGroups' => $self->semStack[$stackPos - (7 - 1)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (7 - 1)], $self->tokenEndStack[$stackPos]));
$self->checkInterface($self->semValue, $stackPos - (7 - 3));
},
211 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Trait_($self->semStack[$stackPos - (6 - 3)], [
'stmts' => $self->semStack[$stackPos - (6 - 5)],
'attrGroups' => $self->semStack[$stackPos - (6 - 1)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (6 - 1)], $self->tokenEndStack[$stackPos]));
},
212 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Enum_($self->semStack[$stackPos - (8 - 3)], [
'scalarType' => $self->semStack[$stackPos - (8 - 4)],
'implements' => $self->semStack[$stackPos - (8 - 5)],
'stmts' => $self->semStack[$stackPos - (8 - 7)],
'attrGroups' => $self->semStack[$stackPos - (8 - 1)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (8 - 1)], $self->tokenEndStack[$stackPos]));
$self->checkEnum($self->semValue, $stackPos - (8 - 3));
},
213 => static function ($self, $stackPos) {
$self->semValue = null;
},
214 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (2 - 2)];
},
215 => static function ($self, $stackPos) {
$self->semValue = null;
},
216 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (2 - 2)];
},
217 => static function ($self, $stackPos) {
$self->semValue = 0;
},
218 => null,
219 => null,
220 => static function ($self, $stackPos) {
$self->checkClassModifier($self->semStack[$stackPos - (2 - 1)], $self->semStack[$stackPos - (2 - 2)], $stackPos - (2 - 2));
$self->semValue = $self->semStack[$stackPos - (2 - 1)] | $self->semStack[$stackPos - (2 - 2)];
},
221 => static function ($self, $stackPos) {
$self->semValue = Modifiers::ABSTRACT;
},
222 => static function ($self, $stackPos) {
$self->semValue = Modifiers::FINAL;
},
223 => static function ($self, $stackPos) {
$self->semValue = Modifiers::READONLY;
},
224 => static function ($self, $stackPos) {
$self->semValue = null;
},
225 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (2 - 2)];
},
226 => static function ($self, $stackPos) {
$self->semValue = array();
},
227 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (2 - 2)];
},
228 => static function ($self, $stackPos) {
$self->semValue = array();
},
229 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (2 - 2)];
},
230 => null,
231 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
232 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
233 => null,
234 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (4 - 2)];
},
235 => null,
236 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (4 - 2)];
},
237 => static function ($self, $stackPos) {
if ($self->semStack[$stackPos - (1 - 1)] instanceof Stmt\Block) {
$self->semValue = $self->semStack[$stackPos - (1 - 1)]->stmts;
}
else {
if ($self->semStack[$stackPos - (1 - 1)] === null) {
$self->semValue = [];
}
else {
$self->semValue = [
$self->semStack[$stackPos - (1 - 1)],
];
}
}
},
238 => static function ($self, $stackPos) {
$self->semValue = null;
},
239 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (4 - 2)];
},
240 => null,
241 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
242 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
243 => static function ($self, $stackPos) {
$self->semValue = new Node\DeclareItem($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
244 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (3 - 2)];
},
245 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (4 - 3)];
},
246 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (4 - 2)];
},
247 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (5 - 3)];
},
248 => static function ($self, $stackPos) {
$self->semValue = array();
},
249 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (2 - 1)][] = $self->semStack[$stackPos - (2 - 2)];
$self->semValue = $self->semStack[$stackPos - (2 - 1)];
},
250 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Case_($self->semStack[$stackPos - (4 - 2)], $self->semStack[$stackPos - (4 - 4)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
251 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Case_(null, $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
252 => null,
253 => null,
254 => static function ($self, $stackPos) {
$self->semValue = new Expr\Match_($self->semStack[$stackPos - (7 - 3)], $self->semStack[$stackPos - (7 - 6)], $self->getAttributes($self->tokenStartStack[$stackPos - (7 - 1)], $self->tokenEndStack[$stackPos]));
},
255 => static function ($self, $stackPos) {
$self->semValue = [];
},
256 => null,
257 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
258 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
259 => static function ($self, $stackPos) {
$self->semValue = new Node\MatchArm($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
260 => static function ($self, $stackPos) {
$self->semValue = new Node\MatchArm(null, $self->semStack[$stackPos - (4 - 4)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
261 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (1 - 1)];
},
262 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (4 - 2)];
},
263 => static function ($self, $stackPos) {
$self->semValue = array();
},
264 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (2 - 1)][] = $self->semStack[$stackPos - (2 - 2)];
$self->semValue = $self->semStack[$stackPos - (2 - 1)];
},
265 => static function ($self, $stackPos) {
$self->semValue = new Stmt\ElseIf_($self->semStack[$stackPos - (5 - 3)], $self->semStack[$stackPos - (5 - 5)], $self->getAttributes($self->tokenStartStack[$stackPos - (5 - 1)], $self->tokenEndStack[$stackPos]));
},
266 => static function ($self, $stackPos) {
$self->semValue = array();
},
267 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (2 - 1)][] = $self->semStack[$stackPos - (2 - 2)];
$self->semValue = $self->semStack[$stackPos - (2 - 1)];
},
268 => static function ($self, $stackPos) {
$self->semValue = new Stmt\ElseIf_($self->semStack[$stackPos - (6 - 3)], $self->semStack[$stackPos - (6 - 6)], $self->getAttributes($self->tokenStartStack[$stackPos - (6 - 1)], $self->tokenEndStack[$stackPos]));
$self->fixupAlternativeElse($self->semValue);
},
269 => static function ($self, $stackPos) {
$self->semValue = null;
},
270 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Else_($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
271 => static function ($self, $stackPos) {
$self->semValue = null;
},
272 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Else_($self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
$self->fixupAlternativeElse($self->semValue);
},
273 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
false,
);
},
274 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (2 - 2)],
true,
);
},
275 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
false,
);
},
276 => static function ($self, $stackPos) {
$self->semValue = array(
$self->fixupArrayDestructuring($self->semStack[$stackPos - (1 - 1)]),
false,
);
},
277 => null,
278 => static function ($self, $stackPos) {
$self->semValue = array();
},
279 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
280 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
281 => static function ($self, $stackPos) {
$self->semValue = 0;
},
282 => static function ($self, $stackPos) {
$self->checkModifier($self->semStack[$stackPos - (2 - 1)], $self->semStack[$stackPos - (2 - 2)], $stackPos - (2 - 2));
$self->semValue = $self->semStack[$stackPos - (2 - 1)] | $self->semStack[$stackPos - (2 - 2)];
},
283 => static function ($self, $stackPos) {
$self->semValue = Modifiers::PUBLIC;
},
284 => static function ($self, $stackPos) {
$self->semValue = Modifiers::PROTECTED;
},
285 => static function ($self, $stackPos) {
$self->semValue = Modifiers::PRIVATE;
},
286 => static function ($self, $stackPos) {
$self->semValue = Modifiers::PUBLIC_SET;
},
287 => static function ($self, $stackPos) {
$self->semValue = Modifiers::PROTECTED_SET;
},
288 => static function ($self, $stackPos) {
$self->semValue = Modifiers::PRIVATE_SET;
},
289 => static function ($self, $stackPos) {
$self->semValue = Modifiers::READONLY;
},
290 => static function ($self, $stackPos) {
$self->semValue = new Node\Param($self->semStack[$stackPos - (7 - 6)], null, $self->semStack[$stackPos - (7 - 3)], $self->semStack[$stackPos - (7 - 4)], $self->semStack[$stackPos - (7 - 5)], $self->getAttributes($self->tokenStartStack[$stackPos - (7 - 1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos - (7 - 2)], $self->semStack[$stackPos - (7 - 1)], $self->semStack[$stackPos - (7 - 7)]);
$self->checkParam($self->semValue);
},
291 => static function ($self, $stackPos) {
$self->semValue = new Node\Param($self->semStack[$stackPos - (9 - 6)], $self->semStack[$stackPos - (9 - 8)], $self->semStack[$stackPos - (9 - 3)], $self->semStack[$stackPos - (9 - 4)], $self->semStack[$stackPos - (9 - 5)], $self->getAttributes($self->tokenStartStack[$stackPos - (9 - 1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos - (9 - 2)], $self->semStack[$stackPos - (9 - 1)], $self->semStack[$stackPos - (9 - 9)]);
$self->checkParam($self->semValue);
},
292 => static function ($self, $stackPos) {
$self->semValue = new Node\Param(new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos - (6 - 1)], $self->tokenEndStack[$stackPos])), null, $self->semStack[$stackPos - (6 - 3)], $self->semStack[$stackPos - (6 - 4)], $self->semStack[$stackPos - (6 - 5)], $self->getAttributes($self->tokenStartStack[$stackPos - (6 - 1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos - (6 - 2)], $self->semStack[$stackPos - (6 - 1)]);
},
293 => null,
294 => static function ($self, $stackPos) {
$self->semValue = new Node\NullableType($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
295 => static function ($self, $stackPos) {
$self->semValue = new Node\UnionType($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
296 => null,
297 => null,
298 => static function ($self, $stackPos) {
$self->semValue = new Node\Name('static', $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
299 => static function ($self, $stackPos) {
$self->semValue = $self->handleBuiltinTypes($self->semStack[$stackPos - (1 - 1)]);
},
300 => static function ($self, $stackPos) {
$self->semValue = new Node\Identifier('array', $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
301 => static function ($self, $stackPos) {
$self->semValue = new Node\Identifier('callable', $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
302 => null,
303 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (3 - 2)];
},
304 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (3 - 1)],
$self->semStack[$stackPos - (3 - 3)],
);
},
305 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
306 => null,
307 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (3 - 2)];
},
308 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (3 - 1)],
$self->semStack[$stackPos - (3 - 3)],
);
},
309 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
310 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (3 - 1)],
$self->semStack[$stackPos - (3 - 3)],
);
},
311 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
312 => static function ($self, $stackPos) {
$self->semValue = new Node\IntersectionType($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
313 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (3 - 1)],
$self->semStack[$stackPos - (3 - 3)],
);
},
314 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
315 => static function ($self, $stackPos) {
$self->semValue = new Node\IntersectionType($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
316 => null,
317 => static function ($self, $stackPos) {
$self->semValue = new Node\NullableType($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
318 => static function ($self, $stackPos) {
$self->semValue = new Node\UnionType($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
319 => null,
320 => static function ($self, $stackPos) {
$self->semValue = null;
},
321 => null,
322 => static function ($self, $stackPos) {
$self->semValue = null;
},
323 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (2 - 2)];
},
324 => static function ($self, $stackPos) {
$self->semValue = null;
},
325 => static function ($self, $stackPos) {
$self->semValue = array();
},
326 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (4 - 2)];
},
327 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (3 - 2)],
);
},
328 => static function ($self, $stackPos) {
$self->semValue = new Node\VariadicPlaceholder($self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
329 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
330 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
331 => static function ($self, $stackPos) {
$self->semValue = new Node\Arg($self->semStack[$stackPos - (1 - 1)], false, false, $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
332 => static function ($self, $stackPos) {
$self->semValue = new Node\Arg($self->semStack[$stackPos - (2 - 2)], true, false, $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
333 => static function ($self, $stackPos) {
$self->semValue = new Node\Arg($self->semStack[$stackPos - (2 - 2)], false, true, $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
334 => static function ($self, $stackPos) {
$self->semValue = new Node\Arg($self->semStack[$stackPos - (3 - 3)], false, false, $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos - (3 - 1)]);
},
335 => null,
336 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
337 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
338 => null,
339 => null,
340 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
341 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
342 => static function ($self, $stackPos) {
$self->semValue = new Node\StaticVar($self->semStack[$stackPos - (1 - 1)], null, $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
343 => static function ($self, $stackPos) {
$self->semValue = new Node\StaticVar($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
344 => static function ($self, $stackPos) {
if ($self->semStack[$stackPos - (2 - 2)] !== null) {
$self->semStack[$stackPos - (2 - 1)][] = $self->semStack[$stackPos - (2 - 2)];
$self->semValue = $self->semStack[$stackPos - (2 - 1)];
}
else {
$self->semValue = $self->semStack[$stackPos - (2 - 1)];
}
},
345 => static function ($self, $stackPos) {
$self->semValue = array();
},
346 => static function ($self, $stackPos) {
$nop = $self->maybeCreateZeroLengthNop($self->tokenPos);
if ($nop !== null) {
$self->semStack[$stackPos - (1 - 1)][] = $nop;
}
$self->semValue = $self->semStack[$stackPos - (1 - 1)];
},
347 => static function ($self, $stackPos) {
$self->semValue = new Stmt\Property($self->semStack[$stackPos - (5 - 2)], $self->semStack[$stackPos - (5 - 4)], $self->getAttributes($self->tokenStartStack[$stackPos - (5 - 1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos - (5 - 3)], $self->semStack[$stackPos - (5 - 1)]);
},
348 => static function ($self, $stackPos) {
$self->semValue = new Stmt\ClassConst($self->semStack[$stackPos - (5 - 4)], $self->semStack[$stackPos - (5 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (5 - 1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos - (5 - 1)]);
$self->checkClassConst($self->semValue, $stackPos - (5 - 2));
},
349 => static function ($self, $stackPos) {
$self->semValue = new Stmt\ClassConst($self->semStack[$stackPos - (6 - 5)], $self->semStack[$stackPos - (6 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (6 - 1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos - (6 - 1)], $self->semStack[$stackPos - (6 - 4)]);
$self->checkClassConst($self->semValue, $stackPos - (6 - 2));
},
350 => static function ($self, $stackPos) {
$self->semValue = new Stmt\ClassMethod($self->semStack[$stackPos - (10 - 5)], [
'type' => $self->semStack[$stackPos - (10 - 2)],
'byRef' => $self->semStack[$stackPos - (10 - 4)],
'params' => $self->semStack[$stackPos - (10 - 7)],
'returnType' => $self->semStack[$stackPos - (10 - 9)],
'stmts' => $self->semStack[$stackPos - (10 - 10)],
'attrGroups' => $self->semStack[$stackPos - (10 - 1)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (10 - 1)], $self->tokenEndStack[$stackPos]));
$self->checkClassMethod($self->semValue, $stackPos - (10 - 2));
},
351 => static function ($self, $stackPos) {
$self->semValue = new Stmt\TraitUse($self->semStack[$stackPos - (3 - 2)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
352 => static function ($self, $stackPos) {
$self->semValue = new Stmt\EnumCase($self->semStack[$stackPos - (5 - 3)], $self->semStack[$stackPos - (5 - 4)], $self->semStack[$stackPos - (5 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (5 - 1)], $self->tokenEndStack[$stackPos]));
},
353 => static function ($self, $stackPos) {
$self->semValue = null;
/* will be skipped */
},
354 => static function ($self, $stackPos) {
$self->semValue = array();
},
355 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (3 - 2)];
},
356 => static function ($self, $stackPos) {
$self->semValue = array();
},
357 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (2 - 1)][] = $self->semStack[$stackPos - (2 - 2)];
$self->semValue = $self->semStack[$stackPos - (2 - 1)];
},
358 => static function ($self, $stackPos) {
$self->semValue = new Stmt\TraitUseAdaptation\Precedence($self->semStack[$stackPos - (4 - 1)][0], $self->semStack[$stackPos - (4 - 1)][1], $self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
359 => static function ($self, $stackPos) {
$self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos - (5 - 1)][0], $self->semStack[$stackPos - (5 - 1)][1], $self->semStack[$stackPos - (5 - 3)], $self->semStack[$stackPos - (5 - 4)], $self->getAttributes($self->tokenStartStack[$stackPos - (5 - 1)], $self->tokenEndStack[$stackPos]));
},
360 => static function ($self, $stackPos) {
$self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos - (4 - 1)][0], $self->semStack[$stackPos - (4 - 1)][1], $self->semStack[$stackPos - (4 - 3)], null, $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
361 => static function ($self, $stackPos) {
$self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos - (4 - 1)][0], $self->semStack[$stackPos - (4 - 1)][1], null, $self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
362 => static function ($self, $stackPos) {
$self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos - (4 - 1)][0], $self->semStack[$stackPos - (4 - 1)][1], null, $self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
363 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (3 - 1)],
$self->semStack[$stackPos - (3 - 3)],
);
},
364 => null,
365 => static function ($self, $stackPos) {
$self->semValue = array(
null,
$self->semStack[$stackPos - (1 - 1)],
);
},
366 => static function ($self, $stackPos) {
$self->semValue = null;
},
367 => null,
368 => null,
369 => static function ($self, $stackPos) {
$self->semValue = 0;
},
370 => static function ($self, $stackPos) {
$self->semValue = 0;
},
371 => null,
372 => null,
373 => static function ($self, $stackPos) {
$self->checkModifier($self->semStack[$stackPos - (2 - 1)], $self->semStack[$stackPos - (2 - 2)], $stackPos - (2 - 2));
$self->semValue = $self->semStack[$stackPos - (2 - 1)] | $self->semStack[$stackPos - (2 - 2)];
},
374 => static function ($self, $stackPos) {
$self->semValue = Modifiers::PUBLIC;
},
375 => static function ($self, $stackPos) {
$self->semValue = Modifiers::PROTECTED;
},
376 => static function ($self, $stackPos) {
$self->semValue = Modifiers::PRIVATE;
},
377 => static function ($self, $stackPos) {
$self->semValue = Modifiers::PUBLIC_SET;
},
378 => static function ($self, $stackPos) {
$self->semValue = Modifiers::PROTECTED_SET;
},
379 => static function ($self, $stackPos) {
$self->semValue = Modifiers::PRIVATE_SET;
},
380 => static function ($self, $stackPos) {
$self->semValue = Modifiers::STATIC;
},
381 => static function ($self, $stackPos) {
$self->semValue = Modifiers::ABSTRACT;
},
382 => static function ($self, $stackPos) {
$self->semValue = Modifiers::FINAL;
},
383 => static function ($self, $stackPos) {
$self->semValue = Modifiers::READONLY;
},
384 => null,
385 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
386 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
387 => static function ($self, $stackPos) {
$self->semValue = new Node\VarLikeIdentifier(substr($self->semStack[$stackPos - (1 - 1)], 1), $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
388 => static function ($self, $stackPos) {
$self->semValue = new Node\PropertyItem($self->semStack[$stackPos - (1 - 1)], null, $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
389 => static function ($self, $stackPos) {
$self->semValue = new Node\PropertyItem($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
390 => static function ($self, $stackPos) {
$self->semValue = [];
},
391 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (2 - 1)][] = $self->semStack[$stackPos - (2 - 2)];
$self->semValue = $self->semStack[$stackPos - (2 - 1)];
},
392 => static function ($self, $stackPos) {
$self->semValue = [];
},
393 => static function ($self, $stackPos) {
$self->semValue = new Node\PropertyHook($self->semStack[$stackPos - (5 - 4)], $self->semStack[$stackPos - (5 - 5)], [
'flags' => $self->semStack[$stackPos - (5 - 2)],
'byRef' => $self->semStack[$stackPos - (5 - 3)],
'params' => [],
'attrGroups' => $self->semStack[$stackPos - (5 - 1)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (5 - 1)], $self->tokenEndStack[$stackPos]));
$self->checkPropertyHook($self->semValue, null);
},
394 => static function ($self, $stackPos) {
$self->semValue = new Node\PropertyHook($self->semStack[$stackPos - (8 - 4)], $self->semStack[$stackPos - (8 - 8)], [
'flags' => $self->semStack[$stackPos - (8 - 2)],
'byRef' => $self->semStack[$stackPos - (8 - 3)],
'params' => $self->semStack[$stackPos - (8 - 6)],
'attrGroups' => $self->semStack[$stackPos - (8 - 1)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (8 - 1)], $self->tokenEndStack[$stackPos]));
$self->checkPropertyHook($self->semValue, $stackPos - (8 - 5));
},
395 => static function ($self, $stackPos) {
$self->semValue = null;
},
396 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (3 - 2)];
},
397 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (3 - 2)];
},
398 => static function ($self, $stackPos) {
$self->semValue = 0;
},
399 => static function ($self, $stackPos) {
$self->checkPropertyHookModifiers($self->semStack[$stackPos - (2 - 1)], $self->semStack[$stackPos - (2 - 2)], $stackPos - (2 - 2));
$self->semValue = $self->semStack[$stackPos - (2 - 1)] | $self->semStack[$stackPos - (2 - 2)];
},
400 => null,
401 => null,
402 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
403 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
404 => static function ($self, $stackPos) {
$self->semValue = array();
},
405 => null,
406 => null,
407 => static function ($self, $stackPos) {
$self->semValue = new Expr\Assign($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
408 => static function ($self, $stackPos) {
$self->semValue = new Expr\Assign($self->fixupArrayDestructuring($self->semStack[$stackPos - (3 - 1)]), $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
409 => static function ($self, $stackPos) {
$self->semValue = new Expr\Assign($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
410 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignRef($self->semStack[$stackPos - (4 - 1)], $self->semStack[$stackPos - (4 - 4)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
411 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignRef($self->semStack[$stackPos - (4 - 1)], $self->semStack[$stackPos - (4 - 4)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
if (!$self->phpVersion
->allowsAssignNewByReference()) {
$self->emitError(new Error('Cannot assign new by reference', $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos])));
}
},
412 => null,
413 => null,
414 => static function ($self, $stackPos) {
$self->semValue = new Expr\Clone_($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
415 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignOp\Plus($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
416 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignOp\Minus($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
417 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignOp\Mul($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
418 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignOp\Div($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
419 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignOp\Concat($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
420 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignOp\Mod($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
421 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignOp\BitwiseAnd($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
422 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignOp\BitwiseOr($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
423 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignOp\BitwiseXor($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
424 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignOp\ShiftLeft($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
425 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignOp\ShiftRight($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
426 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignOp\Pow($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
427 => static function ($self, $stackPos) {
$self->semValue = new Expr\AssignOp\Coalesce($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
428 => static function ($self, $stackPos) {
$self->semValue = new Expr\PostInc($self->semStack[$stackPos - (2 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
429 => static function ($self, $stackPos) {
$self->semValue = new Expr\PreInc($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
430 => static function ($self, $stackPos) {
$self->semValue = new Expr\PostDec($self->semStack[$stackPos - (2 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
431 => static function ($self, $stackPos) {
$self->semValue = new Expr\PreDec($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
432 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\BooleanOr($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
433 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\BooleanAnd($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
434 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\LogicalOr($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
435 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\LogicalAnd($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
436 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\LogicalXor($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
437 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\BitwiseOr($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
438 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\BitwiseAnd($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
439 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\BitwiseAnd($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
440 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\BitwiseXor($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
441 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\Concat($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
442 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\Plus($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
443 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\Minus($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
444 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\Mul($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
445 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\Div($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
446 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\Mod($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
447 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\ShiftLeft($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
448 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\ShiftRight($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
449 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\Pow($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
450 => static function ($self, $stackPos) {
$self->semValue = new Expr\UnaryPlus($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
451 => static function ($self, $stackPos) {
$self->semValue = new Expr\UnaryMinus($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
452 => static function ($self, $stackPos) {
$self->semValue = new Expr\BooleanNot($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
453 => static function ($self, $stackPos) {
$self->semValue = new Expr\BitwiseNot($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
454 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\Identical($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
455 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\NotIdentical($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
456 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\Equal($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
457 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\NotEqual($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
458 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\Spaceship($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
459 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\Smaller($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
460 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\SmallerOrEqual($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
461 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\Greater($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
462 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\GreaterOrEqual($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
463 => static function ($self, $stackPos) {
$self->semValue = new Expr\Instanceof_($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
464 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (3 - 2)];
},
465 => static function ($self, $stackPos) {
$self->semValue = new Expr\Ternary($self->semStack[$stackPos - (5 - 1)], $self->semStack[$stackPos - (5 - 3)], $self->semStack[$stackPos - (5 - 5)], $self->getAttributes($self->tokenStartStack[$stackPos - (5 - 1)], $self->tokenEndStack[$stackPos]));
},
466 => static function ($self, $stackPos) {
$self->semValue = new Expr\Ternary($self->semStack[$stackPos - (4 - 1)], null, $self->semStack[$stackPos - (4 - 4)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
467 => static function ($self, $stackPos) {
$self->semValue = new Expr\BinaryOp\Coalesce($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
468 => static function ($self, $stackPos) {
$self->semValue = new Expr\Isset_($self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
469 => static function ($self, $stackPos) {
$self->semValue = new Expr\Empty_($self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
470 => static function ($self, $stackPos) {
$self->semValue = new Expr\Include_($self->semStack[$stackPos - (2 - 2)], Expr\Include_::TYPE_INCLUDE, $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
471 => static function ($self, $stackPos) {
$self->semValue = new Expr\Include_($self->semStack[$stackPos - (2 - 2)], Expr\Include_::TYPE_INCLUDE_ONCE, $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
472 => static function ($self, $stackPos) {
$self->semValue = new Expr\Eval_($self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
473 => static function ($self, $stackPos) {
$self->semValue = new Expr\Include_($self->semStack[$stackPos - (2 - 2)], Expr\Include_::TYPE_REQUIRE, $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
474 => static function ($self, $stackPos) {
$self->semValue = new Expr\Include_($self->semStack[$stackPos - (2 - 2)], Expr\Include_::TYPE_REQUIRE_ONCE, $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
475 => static function ($self, $stackPos) {
$self->semValue = new Expr\Cast\Int_($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
476 => static function ($self, $stackPos) {
$attrs = $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]);
$attrs['kind'] = $self->getFloatCastKind($self->semStack[$stackPos - (2 - 1)]);
$self->semValue = new Expr\Cast\Double($self->semStack[$stackPos - (2 - 2)], $attrs);
},
477 => static function ($self, $stackPos) {
$self->semValue = new Expr\Cast\String_($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
478 => static function ($self, $stackPos) {
$self->semValue = new Expr\Cast\Array_($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
479 => static function ($self, $stackPos) {
$self->semValue = new Expr\Cast\Object_($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
480 => static function ($self, $stackPos) {
$self->semValue = new Expr\Cast\Bool_($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
481 => static function ($self, $stackPos) {
$self->semValue = new Expr\Cast\Unset_($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
482 => static function ($self, $stackPos) {
$self->semValue = $self->createExitExpr($self->semStack[$stackPos - (2 - 1)], $stackPos - (2 - 1), $self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
483 => static function ($self, $stackPos) {
$self->semValue = new Expr\ErrorSuppress($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
484 => null,
485 => static function ($self, $stackPos) {
$self->semValue = new Expr\ShellExec($self->semStack[$stackPos - (3 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
486 => static function ($self, $stackPos) {
$self->semValue = new Expr\Print_($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
487 => static function ($self, $stackPos) {
$self->semValue = new Expr\Yield_(null, null, $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
488 => static function ($self, $stackPos) {
$self->semValue = new Expr\Yield_($self->semStack[$stackPos - (2 - 2)], null, $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
489 => static function ($self, $stackPos) {
$self->semValue = new Expr\Yield_($self->semStack[$stackPos - (4 - 4)], $self->semStack[$stackPos - (4 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
490 => static function ($self, $stackPos) {
$self->semValue = new Expr\YieldFrom($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
491 => static function ($self, $stackPos) {
$self->semValue = new Expr\Throw_($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
492 => static function ($self, $stackPos) {
$self->semValue = new Expr\ArrowFunction([
'static' => false,
'byRef' => $self->semStack[$stackPos - (8 - 2)],
'params' => $self->semStack[$stackPos - (8 - 4)],
'returnType' => $self->semStack[$stackPos - (8 - 6)],
'expr' => $self->semStack[$stackPos - (8 - 8)],
'attrGroups' => [],
], $self->getAttributes($self->tokenStartStack[$stackPos - (8 - 1)], $self->tokenEndStack[$stackPos]));
},
493 => static function ($self, $stackPos) {
$self->semValue = new Expr\ArrowFunction([
'static' => true,
'byRef' => $self->semStack[$stackPos - (9 - 3)],
'params' => $self->semStack[$stackPos - (9 - 5)],
'returnType' => $self->semStack[$stackPos - (9 - 7)],
'expr' => $self->semStack[$stackPos - (9 - 9)],
'attrGroups' => [],
], $self->getAttributes($self->tokenStartStack[$stackPos - (9 - 1)], $self->tokenEndStack[$stackPos]));
},
494 => static function ($self, $stackPos) {
$self->semValue = new Expr\Closure([
'static' => false,
'byRef' => $self->semStack[$stackPos - (8 - 2)],
'params' => $self->semStack[$stackPos - (8 - 4)],
'uses' => $self->semStack[$stackPos - (8 - 6)],
'returnType' => $self->semStack[$stackPos - (8 - 7)],
'stmts' => $self->semStack[$stackPos - (8 - 8)],
'attrGroups' => [],
], $self->getAttributes($self->tokenStartStack[$stackPos - (8 - 1)], $self->tokenEndStack[$stackPos]));
},
495 => static function ($self, $stackPos) {
$self->semValue = new Expr\Closure([
'static' => true,
'byRef' => $self->semStack[$stackPos - (9 - 3)],
'params' => $self->semStack[$stackPos - (9 - 5)],
'uses' => $self->semStack[$stackPos - (9 - 7)],
'returnType' => $self->semStack[$stackPos - (9 - 8)],
'stmts' => $self->semStack[$stackPos - (9 - 9)],
'attrGroups' => [],
], $self->getAttributes($self->tokenStartStack[$stackPos - (9 - 1)], $self->tokenEndStack[$stackPos]));
},
496 => static function ($self, $stackPos) {
$self->semValue = new Expr\ArrowFunction([
'static' => false,
'byRef' => $self->semStack[$stackPos - (9 - 3)],
'params' => $self->semStack[$stackPos - (9 - 5)],
'returnType' => $self->semStack[$stackPos - (9 - 7)],
'expr' => $self->semStack[$stackPos - (9 - 9)],
'attrGroups' => $self->semStack[$stackPos - (9 - 1)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (9 - 1)], $self->tokenEndStack[$stackPos]));
},
497 => static function ($self, $stackPos) {
$self->semValue = new Expr\ArrowFunction([
'static' => true,
'byRef' => $self->semStack[$stackPos - (10 - 4)],
'params' => $self->semStack[$stackPos - (10 - 6)],
'returnType' => $self->semStack[$stackPos - (10 - 8)],
'expr' => $self->semStack[$stackPos - (10 - 10)],
'attrGroups' => $self->semStack[$stackPos - (10 - 1)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (10 - 1)], $self->tokenEndStack[$stackPos]));
},
498 => static function ($self, $stackPos) {
$self->semValue = new Expr\Closure([
'static' => false,
'byRef' => $self->semStack[$stackPos - (9 - 3)],
'params' => $self->semStack[$stackPos - (9 - 5)],
'uses' => $self->semStack[$stackPos - (9 - 7)],
'returnType' => $self->semStack[$stackPos - (9 - 8)],
'stmts' => $self->semStack[$stackPos - (9 - 9)],
'attrGroups' => $self->semStack[$stackPos - (9 - 1)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (9 - 1)], $self->tokenEndStack[$stackPos]));
},
499 => static function ($self, $stackPos) {
$self->semValue = new Expr\Closure([
'static' => true,
'byRef' => $self->semStack[$stackPos - (10 - 4)],
'params' => $self->semStack[$stackPos - (10 - 6)],
'uses' => $self->semStack[$stackPos - (10 - 8)],
'returnType' => $self->semStack[$stackPos - (10 - 9)],
'stmts' => $self->semStack[$stackPos - (10 - 10)],
'attrGroups' => $self->semStack[$stackPos - (10 - 1)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (10 - 1)], $self->tokenEndStack[$stackPos]));
},
500 => static function ($self, $stackPos) {
$self->semValue = array(
new Stmt\Class_(null, [
'type' => $self->semStack[$stackPos - (8 - 2)],
'extends' => $self->semStack[$stackPos - (8 - 4)],
'implements' => $self->semStack[$stackPos - (8 - 5)],
'stmts' => $self->semStack[$stackPos - (8 - 7)],
'attrGroups' => $self->semStack[$stackPos - (8 - 1)],
], $self->getAttributes($self->tokenStartStack[$stackPos - (8 - 1)], $self->tokenEndStack[$stackPos])),
$self->semStack[$stackPos - (8 - 3)],
);
$self->checkClass($self->semValue[0], -1);
},
501 => static function ($self, $stackPos) {
$self->semValue = new Expr\New_($self->semStack[$stackPos - (3 - 2)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
502 => static function ($self, $stackPos) {
list($class, $ctorArgs) = $self->semStack[$stackPos - (2 - 2)];
$self->semValue = new Expr\New_($class, $ctorArgs, $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
503 => static function ($self, $stackPos) {
$self->semValue = new Expr\New_($self->semStack[$stackPos - (2 - 2)], [], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
504 => null,
505 => null,
506 => static function ($self, $stackPos) {
$self->semValue = array();
},
507 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (4 - 3)];
},
508 => null,
509 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
510 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
511 => static function ($self, $stackPos) {
$self->semValue = new Node\ClosureUse($self->semStack[$stackPos - (2 - 2)], $self->semStack[$stackPos - (2 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
512 => static function ($self, $stackPos) {
$self->semValue = new Name($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
513 => static function ($self, $stackPos) {
$self->semValue = new Expr\FuncCall($self->semStack[$stackPos - (2 - 1)], $self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
514 => static function ($self, $stackPos) {
$self->semValue = new Expr\FuncCall($self->semStack[$stackPos - (2 - 1)], $self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
515 => static function ($self, $stackPos) {
$self->semValue = new Expr\FuncCall($self->semStack[$stackPos - (2 - 1)], $self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
516 => static function ($self, $stackPos) {
$self->semValue = new Expr\StaticCall($self->semStack[$stackPos - (4 - 1)], $self->semStack[$stackPos - (4 - 3)], $self->semStack[$stackPos - (4 - 4)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
517 => static function ($self, $stackPos) {
$self->semValue = new Name($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
518 => null,
519 => static function ($self, $stackPos) {
$self->semValue = new Name($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
520 => static function ($self, $stackPos) {
$self->semValue = new Name($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
521 => static function ($self, $stackPos) {
$self->semValue = new Name\FullyQualified(substr($self->semStack[$stackPos - (1 - 1)], 1), $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
522 => static function ($self, $stackPos) {
$self->semValue = new Name\Relative(substr($self->semStack[$stackPos - (1 - 1)], 10), $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
523 => null,
524 => null,
525 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (3 - 2)];
},
526 => static function ($self, $stackPos) {
$self->semValue = new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
$self->errorState = 2;
},
527 => null,
528 => null,
529 => static function ($self, $stackPos) {
$self->semValue = array();
},
530 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
foreach ($self->semValue as $s) {
if ($s instanceof Node\InterpolatedStringPart) {
$s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', $self->phpVersion
->supportsUnicodeEscapes());
}
}
},
531 => static function ($self, $stackPos) {
foreach ($self->semStack[$stackPos - (1 - 1)] as $s) {
if ($s instanceof Node\InterpolatedStringPart) {
$s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', $self->phpVersion
->supportsUnicodeEscapes());
}
}
$self->semValue = $self->semStack[$stackPos - (1 - 1)];
},
532 => static function ($self, $stackPos) {
$self->semValue = array();
},
533 => null,
534 => static function ($self, $stackPos) {
$self->semValue = new Expr\ConstFetch($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
535 => static function ($self, $stackPos) {
$self->semValue = new Scalar\MagicConst\Line($self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
536 => static function ($self, $stackPos) {
$self->semValue = new Scalar\MagicConst\File($self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
537 => static function ($self, $stackPos) {
$self->semValue = new Scalar\MagicConst\Dir($self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
538 => static function ($self, $stackPos) {
$self->semValue = new Scalar\MagicConst\Class_($self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
539 => static function ($self, $stackPos) {
$self->semValue = new Scalar\MagicConst\Trait_($self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
540 => static function ($self, $stackPos) {
$self->semValue = new Scalar\MagicConst\Method($self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
541 => static function ($self, $stackPos) {
$self->semValue = new Scalar\MagicConst\Function_($self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
542 => static function ($self, $stackPos) {
$self->semValue = new Scalar\MagicConst\Namespace_($self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
543 => static function ($self, $stackPos) {
$self->semValue = new Scalar\MagicConst\Property($self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
544 => static function ($self, $stackPos) {
$self->semValue = new Expr\ClassConstFetch($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
545 => static function ($self, $stackPos) {
$self->semValue = new Expr\ClassConstFetch($self->semStack[$stackPos - (5 - 1)], $self->semStack[$stackPos - (5 - 4)], $self->getAttributes($self->tokenStartStack[$stackPos - (5 - 1)], $self->tokenEndStack[$stackPos]));
},
546 => static function ($self, $stackPos) {
$self->semValue = new Expr\ClassConstFetch($self->semStack[$stackPos - (3 - 1)], new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos - (3 - 3)], $self->tokenEndStack[$stackPos - (3 - 3)])), $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
$self->errorState = 2;
},
547 => static function ($self, $stackPos) {
$attrs = $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]);
$attrs['kind'] = Expr\Array_::KIND_SHORT;
$self->semValue = new Expr\Array_($self->semStack[$stackPos - (3 - 2)], $attrs);
},
548 => static function ($self, $stackPos) {
$attrs = $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]);
$attrs['kind'] = Expr\Array_::KIND_LONG;
$self->semValue = new Expr\Array_($self->semStack[$stackPos - (4 - 3)], $attrs);
$self->createdArrays
->attach($self->semValue);
},
549 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (1 - 1)];
$self->createdArrays
->attach($self->semValue);
},
550 => static function ($self, $stackPos) {
$self->semValue = Scalar\String_::fromString($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]), $self->phpVersion
->supportsUnicodeEscapes());
},
551 => static function ($self, $stackPos) {
$attrs = $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]);
$attrs['kind'] = Scalar\String_::KIND_DOUBLE_QUOTED;
foreach ($self->semStack[$stackPos - (3 - 2)] as $s) {
if ($s instanceof Node\InterpolatedStringPart) {
$s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '"', $self->phpVersion
->supportsUnicodeEscapes());
}
}
$self->semValue = new Scalar\InterpolatedString($self->semStack[$stackPos - (3 - 2)], $attrs);
},
552 => static function ($self, $stackPos) {
$self->semValue = $self->parseLNumber($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]), $self->phpVersion
->allowsInvalidOctals());
},
553 => static function ($self, $stackPos) {
$self->semValue = Scalar\Float_::fromString($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
554 => null,
555 => null,
556 => null,
557 => static function ($self, $stackPos) {
$self->semValue = $self->parseDocString($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 2)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]), $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 3)], $self->tokenEndStack[$stackPos - (3 - 3)]), true);
},
558 => static function ($self, $stackPos) {
$self->semValue = $self->parseDocString($self->semStack[$stackPos - (2 - 1)], '', $self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]), $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 2)], $self->tokenEndStack[$stackPos - (2 - 2)]), true);
},
559 => static function ($self, $stackPos) {
$self->semValue = $self->parseDocString($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 2)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]), $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 3)], $self->tokenEndStack[$stackPos - (3 - 3)]), true);
},
560 => static function ($self, $stackPos) {
$self->semValue = null;
},
561 => null,
562 => null,
563 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (3 - 2)];
},
564 => null,
565 => null,
566 => null,
567 => null,
568 => null,
569 => null,
570 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (3 - 2)];
},
571 => null,
572 => null,
573 => null,
574 => static function ($self, $stackPos) {
$self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos - (4 - 1)], $self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
575 => static function ($self, $stackPos) {
$self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos - (4 - 1)], $self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
576 => null,
577 => static function ($self, $stackPos) {
$self->semValue = new Expr\MethodCall($self->semStack[$stackPos - (4 - 1)], $self->semStack[$stackPos - (4 - 3)], $self->semStack[$stackPos - (4 - 4)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
578 => static function ($self, $stackPos) {
$self->semValue = new Expr\NullsafeMethodCall($self->semStack[$stackPos - (4 - 1)], $self->semStack[$stackPos - (4 - 3)], $self->semStack[$stackPos - (4 - 4)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
579 => static function ($self, $stackPos) {
$self->semValue = null;
},
580 => null,
581 => null,
582 => null,
583 => static function ($self, $stackPos) {
$self->semValue = new Expr\PropertyFetch($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
584 => static function ($self, $stackPos) {
$self->semValue = new Expr\NullsafePropertyFetch($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
585 => null,
586 => static function ($self, $stackPos) {
$self->semValue = new Expr\Variable($self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
587 => static function ($self, $stackPos) {
$self->semValue = new Expr\Variable($self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
588 => static function ($self, $stackPos) {
$self->semValue = new Expr\Variable(new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos])), $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
$self->errorState = 2;
},
589 => static function ($self, $stackPos) {
$var = $self->semStack[$stackPos - (1 - 1)]->name;
$self->semValue = \is_string($var) ? new Node\VarLikeIdentifier($var, $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos])) : $var;
},
590 => static function ($self, $stackPos) {
$self->semValue = new Expr\StaticPropertyFetch($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
591 => null,
592 => static function ($self, $stackPos) {
$self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos - (4 - 1)], $self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
593 => static function ($self, $stackPos) {
$self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos - (4 - 1)], $self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
594 => static function ($self, $stackPos) {
$self->semValue = new Expr\PropertyFetch($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
595 => static function ($self, $stackPos) {
$self->semValue = new Expr\NullsafePropertyFetch($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
596 => static function ($self, $stackPos) {
$self->semValue = new Expr\StaticPropertyFetch($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
597 => static function ($self, $stackPos) {
$self->semValue = new Expr\StaticPropertyFetch($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
598 => null,
599 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (3 - 2)];
},
600 => null,
601 => null,
602 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (3 - 2)];
},
603 => null,
604 => static function ($self, $stackPos) {
$self->semValue = new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
$self->errorState = 2;
},
605 => static function ($self, $stackPos) {
$self->semValue = new Expr\List_($self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
$self->semValue
->setAttribute('kind', Expr\List_::KIND_LIST);
$self->postprocessList($self->semValue);
},
606 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (1 - 1)];
$end = count($self->semValue) - 1;
if ($self->semValue[$end]->value instanceof Expr\Error) {
array_pop($self->semValue);
}
},
607 => null,
608 => static function ($self, $stackPos) {
/* do nothing -- prevent default action of $$=$self->semStack[$1]. See $551. */
},
609 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (3 - 1)][] = $self->semStack[$stackPos - (3 - 3)];
$self->semValue = $self->semStack[$stackPos - (3 - 1)];
},
610 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
611 => static function ($self, $stackPos) {
$self->semValue = new Node\ArrayItem($self->semStack[$stackPos - (1 - 1)], null, false, $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
612 => static function ($self, $stackPos) {
$self->semValue = new Node\ArrayItem($self->semStack[$stackPos - (2 - 2)], null, true, $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
613 => static function ($self, $stackPos) {
$self->semValue = new Node\ArrayItem($self->semStack[$stackPos - (1 - 1)], null, false, $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
614 => static function ($self, $stackPos) {
$self->semValue = new Node\ArrayItem($self->semStack[$stackPos - (3 - 3)], $self->semStack[$stackPos - (3 - 1)], false, $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
615 => static function ($self, $stackPos) {
$self->semValue = new Node\ArrayItem($self->semStack[$stackPos - (4 - 4)], $self->semStack[$stackPos - (4 - 1)], true, $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
616 => static function ($self, $stackPos) {
$self->semValue = new Node\ArrayItem($self->semStack[$stackPos - (3 - 3)], $self->semStack[$stackPos - (3 - 1)], false, $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
617 => static function ($self, $stackPos) {
$self->semValue = new Node\ArrayItem($self->semStack[$stackPos - (2 - 2)], null, false, $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]), true);
},
618 => static function ($self, $stackPos) {
/* Create an Error node now to remember the position. We'll later either report an error,
or convert this into a null element, depending on whether this is a creation or destructuring context. */
$attrs = $self->createEmptyElemAttributes($self->tokenPos);
$self->semValue = new Node\ArrayItem(new Expr\Error($attrs), null, false, $attrs);
},
619 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (2 - 1)][] = $self->semStack[$stackPos - (2 - 2)];
$self->semValue = $self->semStack[$stackPos - (2 - 1)];
},
620 => static function ($self, $stackPos) {
$self->semStack[$stackPos - (2 - 1)][] = $self->semStack[$stackPos - (2 - 2)];
$self->semValue = $self->semStack[$stackPos - (2 - 1)];
},
621 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (1 - 1)],
);
},
622 => static function ($self, $stackPos) {
$self->semValue = array(
$self->semStack[$stackPos - (2 - 1)],
$self->semStack[$stackPos - (2 - 2)],
);
},
623 => static function ($self, $stackPos) {
$attrs = $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]);
$attrs['rawValue'] = $self->semStack[$stackPos - (1 - 1)];
$self->semValue = new Node\InterpolatedStringPart($self->semStack[$stackPos - (1 - 1)], $attrs);
},
624 => static function ($self, $stackPos) {
$self->semValue = new Expr\Variable($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
625 => null,
626 => static function ($self, $stackPos) {
$self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos - (4 - 1)], $self->semStack[$stackPos - (4 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (4 - 1)], $self->tokenEndStack[$stackPos]));
},
627 => static function ($self, $stackPos) {
$self->semValue = new Expr\PropertyFetch($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
628 => static function ($self, $stackPos) {
$self->semValue = new Expr\NullsafePropertyFetch($self->semStack[$stackPos - (3 - 1)], $self->semStack[$stackPos - (3 - 3)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
629 => static function ($self, $stackPos) {
$self->semValue = new Expr\Variable($self->semStack[$stackPos - (3 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
630 => static function ($self, $stackPos) {
$self->semValue = new Expr\Variable($self->semStack[$stackPos - (3 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (3 - 1)], $self->tokenEndStack[$stackPos]));
},
631 => static function ($self, $stackPos) {
$self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos - (6 - 2)], $self->semStack[$stackPos - (6 - 4)], $self->getAttributes($self->tokenStartStack[$stackPos - (6 - 1)], $self->tokenEndStack[$stackPos]));
},
632 => static function ($self, $stackPos) {
$self->semValue = $self->semStack[$stackPos - (3 - 2)];
},
633 => static function ($self, $stackPos) {
$self->semValue = new Scalar\String_($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
634 => static function ($self, $stackPos) {
$self->semValue = $self->parseNumString($self->semStack[$stackPos - (1 - 1)], $self->getAttributes($self->tokenStartStack[$stackPos - (1 - 1)], $self->tokenEndStack[$stackPos]));
},
635 => static function ($self, $stackPos) {
$self->semValue = $self->parseNumString('-' . $self->semStack[$stackPos - (2 - 2)], $self->getAttributes($self->tokenStartStack[$stackPos - (2 - 1)], $self->tokenEndStack[$stackPos]));
},
636 => null,
];
}
}
Classes
Title | Deprecated | Summary |
---|---|---|
Php7 |