1: <?php declare(strict_types=1);
2:
3: namespace PhpParser\Parser;
4:
5: use PhpParser\Error;
6: use PhpParser\Modifiers;
7: use PhpParser\Node;
8: use PhpParser\Node\Expr;
9: use PhpParser\Node\Name;
10: use PhpParser\Node\Scalar;
11: use PhpParser\Node\Stmt;
12:
13: /* This is an automatically GENERATED file, which should not be manually edited.
14: * Instead edit one of the following:
15: * * the grammar file grammar/php.y
16: * * the skeleton file grammar/parser.template
17: * * the preprocessing script grammar/rebuildParsers.php
18: */
19: class Php7 extends \PhpParser\ParserAbstract
20: {
21: public const YYERRTOK = 256;
22: public const T_THROW = 257;
23: public const T_INCLUDE = 258;
24: public const T_INCLUDE_ONCE = 259;
25: public const T_EVAL = 260;
26: public const T_REQUIRE = 261;
27: public const T_REQUIRE_ONCE = 262;
28: public const T_LOGICAL_OR = 263;
29: public const T_LOGICAL_XOR = 264;
30: public const T_LOGICAL_AND = 265;
31: public const T_PRINT = 266;
32: public const T_YIELD = 267;
33: public const T_DOUBLE_ARROW = 268;
34: public const T_YIELD_FROM = 269;
35: public const T_PLUS_EQUAL = 270;
36: public const T_MINUS_EQUAL = 271;
37: public const T_MUL_EQUAL = 272;
38: public const T_DIV_EQUAL = 273;
39: public const T_CONCAT_EQUAL = 274;
40: public const T_MOD_EQUAL = 275;
41: public const T_AND_EQUAL = 276;
42: public const T_OR_EQUAL = 277;
43: public const T_XOR_EQUAL = 278;
44: public const T_SL_EQUAL = 279;
45: public const T_SR_EQUAL = 280;
46: public const T_POW_EQUAL = 281;
47: public const T_COALESCE_EQUAL = 282;
48: public const T_COALESCE = 283;
49: public const T_BOOLEAN_OR = 284;
50: public const T_BOOLEAN_AND = 285;
51: public const T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG = 286;
52: public const T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG = 287;
53: public const T_IS_EQUAL = 288;
54: public const T_IS_NOT_EQUAL = 289;
55: public const T_IS_IDENTICAL = 290;
56: public const T_IS_NOT_IDENTICAL = 291;
57: public const T_SPACESHIP = 292;
58: public const T_IS_SMALLER_OR_EQUAL = 293;
59: public const T_IS_GREATER_OR_EQUAL = 294;
60: public const T_SL = 295;
61: public const T_SR = 296;
62: public const T_INSTANCEOF = 297;
63: public const T_INC = 298;
64: public const T_DEC = 299;
65: public const T_INT_CAST = 300;
66: public const T_DOUBLE_CAST = 301;
67: public const T_STRING_CAST = 302;
68: public const T_ARRAY_CAST = 303;
69: public const T_OBJECT_CAST = 304;
70: public const T_BOOL_CAST = 305;
71: public const T_UNSET_CAST = 306;
72: public const T_POW = 307;
73: public const T_NEW = 308;
74: public const T_CLONE = 309;
75: public const T_EXIT = 310;
76: public const T_IF = 311;
77: public const T_ELSEIF = 312;
78: public const T_ELSE = 313;
79: public const T_ENDIF = 314;
80: public const T_LNUMBER = 315;
81: public const T_DNUMBER = 316;
82: public const T_STRING = 317;
83: public const T_STRING_VARNAME = 318;
84: public const T_VARIABLE = 319;
85: public const T_NUM_STRING = 320;
86: public const T_INLINE_HTML = 321;
87: public const T_ENCAPSED_AND_WHITESPACE = 322;
88: public const T_CONSTANT_ENCAPSED_STRING = 323;
89: public const T_ECHO = 324;
90: public const T_DO = 325;
91: public const T_WHILE = 326;
92: public const T_ENDWHILE = 327;
93: public const T_FOR = 328;
94: public const T_ENDFOR = 329;
95: public const T_FOREACH = 330;
96: public const T_ENDFOREACH = 331;
97: public const T_DECLARE = 332;
98: public const T_ENDDECLARE = 333;
99: public const T_AS = 334;
100: public const T_SWITCH = 335;
101: public const T_MATCH = 336;
102: public const T_ENDSWITCH = 337;
103: public const T_CASE = 338;
104: public const T_DEFAULT = 339;
105: public const T_BREAK = 340;
106: public const T_CONTINUE = 341;
107: public const T_GOTO = 342;
108: public const T_FUNCTION = 343;
109: public const T_FN = 344;
110: public const T_CONST = 345;
111: public const T_RETURN = 346;
112: public const T_TRY = 347;
113: public const T_CATCH = 348;
114: public const T_FINALLY = 349;
115: public const T_USE = 350;
116: public const T_INSTEADOF = 351;
117: public const T_GLOBAL = 352;
118: public const T_STATIC = 353;
119: public const T_ABSTRACT = 354;
120: public const T_FINAL = 355;
121: public const T_PRIVATE = 356;
122: public const T_PROTECTED = 357;
123: public const T_PUBLIC = 358;
124: public const T_READONLY = 359;
125: public const T_PUBLIC_SET = 360;
126: public const T_PROTECTED_SET = 361;
127: public const T_PRIVATE_SET = 362;
128: public const T_VAR = 363;
129: public const T_UNSET = 364;
130: public const T_ISSET = 365;
131: public const T_EMPTY = 366;
132: public const T_HALT_COMPILER = 367;
133: public const T_CLASS = 368;
134: public const T_TRAIT = 369;
135: public const T_INTERFACE = 370;
136: public const T_ENUM = 371;
137: public const T_EXTENDS = 372;
138: public const T_IMPLEMENTS = 373;
139: public const T_OBJECT_OPERATOR = 374;
140: public const T_NULLSAFE_OBJECT_OPERATOR = 375;
141: public const T_LIST = 376;
142: public const T_ARRAY = 377;
143: public const T_CALLABLE = 378;
144: public const T_CLASS_C = 379;
145: public const T_TRAIT_C = 380;
146: public const T_METHOD_C = 381;
147: public const T_FUNC_C = 382;
148: public const T_PROPERTY_C = 383;
149: public const T_LINE = 384;
150: public const T_FILE = 385;
151: public const T_START_HEREDOC = 386;
152: public const T_END_HEREDOC = 387;
153: public const T_DOLLAR_OPEN_CURLY_BRACES = 388;
154: public const T_CURLY_OPEN = 389;
155: public const T_PAAMAYIM_NEKUDOTAYIM = 390;
156: public const T_NAMESPACE = 391;
157: public const T_NS_C = 392;
158: public const T_DIR = 393;
159: public const T_NS_SEPARATOR = 394;
160: public const T_ELLIPSIS = 395;
161: public const T_NAME_FULLY_QUALIFIED = 396;
162: public const T_NAME_QUALIFIED = 397;
163: public const T_NAME_RELATIVE = 398;
164: public const T_ATTRIBUTE = 399;
165:
166: protected int $tokenToSymbolMapSize = 400;
167: protected int $actionTableSize = 1291;
168: protected int $gotoTableSize = 609;
169:
170: protected int $invalidSymbol = 172;
171: protected int $errorSymbol = 1;
172: protected int $defaultAction = -32766;
173: protected int $unexpectedTokenRule = 32767;
174:
175: protected int $YY2TBLSTATE = 439;
176: protected int $numNonLeafStates = 745;
177:
178: protected array $symbolToName = array(
179: "EOF",
180: "error",
181: "T_THROW",
182: "T_INCLUDE",
183: "T_INCLUDE_ONCE",
184: "T_EVAL",
185: "T_REQUIRE",
186: "T_REQUIRE_ONCE",
187: "','",
188: "T_LOGICAL_OR",
189: "T_LOGICAL_XOR",
190: "T_LOGICAL_AND",
191: "T_PRINT",
192: "T_YIELD",
193: "T_DOUBLE_ARROW",
194: "T_YIELD_FROM",
195: "'='",
196: "T_PLUS_EQUAL",
197: "T_MINUS_EQUAL",
198: "T_MUL_EQUAL",
199: "T_DIV_EQUAL",
200: "T_CONCAT_EQUAL",
201: "T_MOD_EQUAL",
202: "T_AND_EQUAL",
203: "T_OR_EQUAL",
204: "T_XOR_EQUAL",
205: "T_SL_EQUAL",
206: "T_SR_EQUAL",
207: "T_POW_EQUAL",
208: "T_COALESCE_EQUAL",
209: "'?'",
210: "':'",
211: "T_COALESCE",
212: "T_BOOLEAN_OR",
213: "T_BOOLEAN_AND",
214: "'|'",
215: "'^'",
216: "T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG",
217: "T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG",
218: "T_IS_EQUAL",
219: "T_IS_NOT_EQUAL",
220: "T_IS_IDENTICAL",
221: "T_IS_NOT_IDENTICAL",
222: "T_SPACESHIP",
223: "'<'",
224: "T_IS_SMALLER_OR_EQUAL",
225: "'>'",
226: "T_IS_GREATER_OR_EQUAL",
227: "T_SL",
228: "T_SR",
229: "'+'",
230: "'-'",
231: "'.'",
232: "'*'",
233: "'/'",
234: "'%'",
235: "'!'",
236: "T_INSTANCEOF",
237: "'~'",
238: "T_INC",
239: "T_DEC",
240: "T_INT_CAST",
241: "T_DOUBLE_CAST",
242: "T_STRING_CAST",
243: "T_ARRAY_CAST",
244: "T_OBJECT_CAST",
245: "T_BOOL_CAST",
246: "T_UNSET_CAST",
247: "'@'",
248: "T_POW",
249: "'['",
250: "T_NEW",
251: "T_CLONE",
252: "T_EXIT",
253: "T_IF",
254: "T_ELSEIF",
255: "T_ELSE",
256: "T_ENDIF",
257: "T_LNUMBER",
258: "T_DNUMBER",
259: "T_STRING",
260: "T_STRING_VARNAME",
261: "T_VARIABLE",
262: "T_NUM_STRING",
263: "T_INLINE_HTML",
264: "T_ENCAPSED_AND_WHITESPACE",
265: "T_CONSTANT_ENCAPSED_STRING",
266: "T_ECHO",
267: "T_DO",
268: "T_WHILE",
269: "T_ENDWHILE",
270: "T_FOR",
271: "T_ENDFOR",
272: "T_FOREACH",
273: "T_ENDFOREACH",
274: "T_DECLARE",
275: "T_ENDDECLARE",
276: "T_AS",
277: "T_SWITCH",
278: "T_MATCH",
279: "T_ENDSWITCH",
280: "T_CASE",
281: "T_DEFAULT",
282: "T_BREAK",
283: "T_CONTINUE",
284: "T_GOTO",
285: "T_FUNCTION",
286: "T_FN",
287: "T_CONST",
288: "T_RETURN",
289: "T_TRY",
290: "T_CATCH",
291: "T_FINALLY",
292: "T_USE",
293: "T_INSTEADOF",
294: "T_GLOBAL",
295: "T_STATIC",
296: "T_ABSTRACT",
297: "T_FINAL",
298: "T_PRIVATE",
299: "T_PROTECTED",
300: "T_PUBLIC",
301: "T_READONLY",
302: "T_PUBLIC_SET",
303: "T_PROTECTED_SET",
304: "T_PRIVATE_SET",
305: "T_VAR",
306: "T_UNSET",
307: "T_ISSET",
308: "T_EMPTY",
309: "T_HALT_COMPILER",
310: "T_CLASS",
311: "T_TRAIT",
312: "T_INTERFACE",
313: "T_ENUM",
314: "T_EXTENDS",
315: "T_IMPLEMENTS",
316: "T_OBJECT_OPERATOR",
317: "T_NULLSAFE_OBJECT_OPERATOR",
318: "T_LIST",
319: "T_ARRAY",
320: "T_CALLABLE",
321: "T_CLASS_C",
322: "T_TRAIT_C",
323: "T_METHOD_C",
324: "T_FUNC_C",
325: "T_PROPERTY_C",
326: "T_LINE",
327: "T_FILE",
328: "T_START_HEREDOC",
329: "T_END_HEREDOC",
330: "T_DOLLAR_OPEN_CURLY_BRACES",
331: "T_CURLY_OPEN",
332: "T_PAAMAYIM_NEKUDOTAYIM",
333: "T_NAMESPACE",
334: "T_NS_C",
335: "T_DIR",
336: "T_NS_SEPARATOR",
337: "T_ELLIPSIS",
338: "T_NAME_FULLY_QUALIFIED",
339: "T_NAME_QUALIFIED",
340: "T_NAME_RELATIVE",
341: "T_ATTRIBUTE",
342: "';'",
343: "']'",
344: "'('",
345: "')'",
346: "'{'",
347: "'}'",
348: "'`'",
349: "'\"'",
350: "'$'"
351: );
352:
353: protected array $tokenToSymbol = array(
354: 0, 172, 172, 172, 172, 172, 172, 172, 172, 172,
355: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
356: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
357: 172, 172, 172, 56, 170, 172, 171, 55, 172, 172,
358: 165, 166, 53, 50, 8, 51, 52, 54, 172, 172,
359: 172, 172, 172, 172, 172, 172, 172, 172, 31, 163,
360: 44, 16, 46, 30, 68, 172, 172, 172, 172, 172,
361: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
362: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
363: 172, 70, 172, 164, 36, 172, 169, 172, 172, 172,
364: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
365: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
366: 172, 172, 172, 167, 35, 168, 58, 172, 172, 172,
367: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
368: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
369: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
370: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
371: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
372: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
373: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
374: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
375: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
376: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
377: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
378: 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
379: 172, 172, 172, 172, 172, 172, 1, 2, 3, 4,
380: 5, 6, 7, 9, 10, 11, 12, 13, 14, 15,
381: 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
382: 27, 28, 29, 32, 33, 34, 37, 38, 39, 40,
383: 41, 42, 43, 45, 47, 48, 49, 57, 59, 60,
384: 61, 62, 63, 64, 65, 66, 67, 69, 71, 72,
385: 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
386: 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
387: 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
388: 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
389: 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
390: 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
391: 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
392: 143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
393: 153, 154, 155, 156, 157, 158, 159, 160, 161, 162
394: );
395:
396: protected array $action = array(
397: 128, 129, 130, 568, 131, 132, 948, 757, 758, 759,
398: 133, 38, 841, -85, 0, 1369,-32766,-32766,-32766, 488,
399: 832, 1126, 1127, 1128, 1122, 1121, 1120, 1129, 1123, 1124,
400: 1125,-32766,-32766,-32766, -333, 751, 750,-32766, 843,-32766,
401: -32766,-32766,-32766,-32766,-32766,-32766,-32767,-32767,-32767,-32767,
402: -32767, -372,-32766, -372, 1038, 760, 1126, 1127, 1128, 1122,
403: 1121, 1120, 1129, 1123, 1124, 1125, 382, 383, 442, 265,
404: 134, 385, 764, 765, 766, 767, 427, 837, 428, -85,
405: 330, 36, 248, 2, 292, 821, 768, 769, 770, 771,
406: 772, 773, 774, 775, 776, 777, 797, 569, 798, 799,
407: 800, 801, 789, 790, 347, 348, 792, 793, 778, 779,
408: 780, 782, 783, 784, 358, 824, 825, 826, 827, 828,
409: 570, 26, 300, -195, 785, 786, 571, 572, -194, 809,
410: 807, 808, 820, 804, 805,-32766,-32766, 573, 574, 803,
411: 575, 576, 577, 578,-32766, 579, 580, 474, 475, 869,
412: 238, 870, 806, 581, 582, 489, 135, 838, 128, 129,
413: 130, 568, 131, 132, 1071, 757, 758, 759, 133, 38,
414: -32766, 35, 731, 1031, 1030, 1029, 1035, 1032, 1033, 1034,
415: -32766,-32766,-32766,-32767,-32767,-32767,-32767, 101, 102, 103,
416: 104, 105, -333, 751, 750, 1047, 927,-32766,-32766,-32766,
417: 842,-32766, 840,-32766,-32766,-32766,-32766,-32766,-32766,-32766,
418: -32766,-32766,-32766, 760,-32766,-32766,-32766, 614,-32766, 291,
419: -32766,-32766,-32766,-32766,-32766, 136, 721, 265, 134, 385,
420: 764, 765, 766, 767, -616,-32766, 428,-32766,-32766,-32766,
421: -32766, -616, 145, 821, 768, 769, 770, 771, 772, 773,
422: 774, 775, 776, 777, 797, 569, 798, 799, 800, 801,
423: 789, 790, 347, 348, 792, 793, 778, 779, 780, 782,
424: 783, 784, 358, 824, 825, 826, 827, 828, 570, 917,
425: 428, -195, 785, 786, 571, 572, -194, 809, 807, 808,
426: 820, 804, 805, 1292, 251, 573, 574, 803, 575, 576,
427: 577, 578, -274, 579, 580, 1100, 82, 83, 84, 743,
428: 806, 581, 582, 237, 148, 781, 752, 753, 754, 755,
429: 756, 150, 757, 758, 759, 794, 795, 37, 24, 85,
430: 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
431: 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
432: 106, 107, 108, 1115, 276,-32766,-32766,-32766, 929, 1267,
433: 1266, 1268, 716, 834, 311, 394, 109, 7, 1101, -569,
434: 760,-32766,-32766,-32766, 841, 1354,-32766, 1099,-32766,-32766,
435: -32766, 1272, 1353, 313, 761, 762, 763, 764, 765, 766,
436: 767, 998,-32766, 830,-32766,-32766, 927, -616, 325, -616,
437: 821, 768, 769, 770, 771, 772, 773, 774, 775, 776,
438: 777, 797, 819, 798, 799, 800, 801, 789, 790, 791,
439: 818, 792, 793, 778, 779, 780, 782, 783, 784, 823,
440: 824, 825, 826, 827, 828, 829, -569, -569, 343, 785,
441: 786, 787, 788, 836, 809, 807, 808, 820, 804, 805,
442: 718, 564, 796, 802, 803, 810, 811, 813, 812, 140,
443: 814, 815, 841, 328, 344,-32766, -569, 806, 817, 816,
444: 49, 50, 51, 520, 52, 53, 869, -110, 870, 917,
445: 54, 55, -110, 56, -110, -567,-32766,-32766,-32766, 307,
446: 1047, 126, -110, -110, -110, -110, -110, -110, -110, -110,
447: -110, -110, -110, -613, 372, 106, 107, 108, 376, 276,
448: -613, 392, 1334,-32766, 291, 288, 1304, 446, 57, 58,
449: -32766, 109, 447, 999, 59, 47, 60, 245, 246, 61,
450: 62, 63, 64, 65, 66, 67, 68,-32766, 28, 267,
451: 69, 444, 521, 448, -347, 74, 1298, 1299, 522, 449,
452: 841, 328, -567, -567, 1296, 42, 20, 523, 929, 524,
453: 927, 525, 716, 526, -565, 696, 527, 528, -567, 927,
454: 847, 44, 45, 450, 379, 378, -78, 46, 529, 927,
455: -573,-32766, -567, 370, 342, 1350, 103, 104, 105, -564,
456: 1258, 927, 301, 302, 1044, 531, 532, 533, -607, 722,
457: -607, 697, 464, 465, 466, 151, 1047, 535, 536, 723,
458: 1284, 1285, 1286, 1287, 1289, 1281, 1282, 299, -58, 1047,
459: 153, 726, 125, 1288, 1283, 698, 699, 1267, 1266, 1268,
460: 300, -565, -565, 70, -154, -154, -154, 323, 324, 328,
461: -57, -4, 927, 917, 1267, 1266, 1268, -565, -87, -154,
462: 284, -154, 917, -154, 154, -154, -564, -564, 155, -572,
463: 157, -565, 917, 33, 832, 377, -613, 123, -613, 751,
464: 750, 124, -564, 137, 917, 289, 967, 968, 81, 751,
465: 750, 530, 328, 138, -571, 620, -564, 663, 21, 903,
466: 963, -110, -110, -110, 32, 110, 111, 112, 113, 114,
467: 115, 116, 117, 118, 119, 120, 121, 122, 144, -566,
468: 382, 383, 28, 268, 1379, 158, 927, 1380, 967, 968,
469: 427, 159, 929, 969, 841, 917, 716, -154, 1296, 951,
470: 160, 929, 963, 384, 383, 716, 832, 1174, 1176, 682,
471: 683, 984, 1044, 427, 161, 716, 733, 377, -563, 440,
472: 1070, 141, 162, 929, 298, 328, -84, 716, 967, 968,
473: 149, 410, -307, 530, 1258, -78, 300, 1047, 751, 750,
474: -73, 534, 963, -110, -110, -110, -566, -566, 950, 288,
475: 1272, 535, 536, -72, 1284, 1285, 1286, 1287, 1289, 1281,
476: 1282, 284, -566, 380, 381, 11, 1265, 1288, 1283, 917,
477: -71, 751, 750, -70, 929,-32766, -566, 72, 716, -4,
478: -16, 1265, 324, 328, -69, -563, -563, 292,-32766,-32766,
479: -32766, -68,-32766, -67,-32766, -66,-32766, 386, 387,-32766,
480: -65, -563, 1263, -46,-32766,-32766,-32766, -18,-32766, 142,
481: -32766,-32766, 275, 285, 1265, -563,-32766, 424, 28, 267,
482: 732,-32766,-32766,-32766, 735,-32766, 1046,-32766,-32766,-32766,
483: 841, 841,-32766, 926, 1296, 1044, 147,-32766,-32766,-32766,
484: 654, 655, -303,-32766,-32766, 1267, 1266, 1268, 929,-32766,
485: 424, 280, 716, 28, 268, 281, 286, 287, 336, 73,
486: 1047,-32766, 290, 293, 294, 841, -110, -110, -563, 1296,
487: 1258, -110, 944,-32766, 276, 109, 692, 832, 146, 1381,
488: -110, 707, 841, 585, 284, 1133, 685, 709, 536,-32766,
489: 1284, 1285, 1286, 1287, 1289, 1281, 1282,-32766, 1047, 664,
490: -50, 10, 308, 1288, 1283, 1258, 669, 306, 471, 305,
491: 499, 300, 312, 72, 74, 670, 964, 1303, 324, 328,
492: 328, -529, 291, 536, 686, 1284, 1285, 1286, 1287, 1289,
493: 1281, 1282, 652, 139, 1305, -563, -563, 591, 1288, 1283,
494: -519, 300, 34,-32766, 8, 840, 0, 618, 72, 1265,
495: 0, -563, 0, 324, 328, 0,-32766,-32766,-32766, 0,
496: -32766, 0,-32766, 0,-32766, -563, 0,-32766,-32766, 0,
497: 0, 27,-32766,-32766,-32766, 927,-32766, 40,-32766,-32766,
498: 0, 0, 1265, 374,-32766, 424, 0, 946, 0,-32766,
499: -32766,-32766, 0,-32766, 41,-32766,-32766,-32766, 927, 740,
500: -32766, 741, 860, 908, 1008,-32766,-32766,-32766, 985,-32766,
501: 992,-32766,-32766, 982, 993, 1265, 906,-32766, 424, 48,
502: 980, 1104,-32766,-32766,-32766, 1107,-32766, 1108,-32766,-32766,
503: -32766, 1105, -601,-32766, 1106, 1112, -277, 494,-32766,-32766,
504: -32766, 1293,-32766, 852,-32766,-32766, 1320, 1338, 1265, 598,
505: -32766, 424, 1372, 657, 1272,-32766,-32766,-32766, 917,-32766,
506: -600,-32766,-32766,-32766, -599, -573,-32766, -275, -572, -571,
507: -570,-32766,-32766,-32766, -252, -252, -252,-32766,-32766, -513,
508: 377, 917, 1,-32766, 424, 29, 303, 304, 30, 39,
509: 43, 967, 968, 71, 75,-32766, 530, -251, -251, -251,
510: -274, 76, 375, 377, 903, 963, -110, -110, -110, 77,
511: 78, 79, 80, 143, 967, 968, 127, 152, 156, 530,
512: 243, 332, 359, 360, 361, 362, 363, 903, 963, -110,
513: -110, -110,-32766, 13, 364, 841, 365, 929, 1265, 14,
514: 366, 716, -252, 367, 368,-32766,-32766,-32766, 369,-32766,
515: 371,-32766, 441,-32766, 563, 322,-32766, 15, 16, 18,
516: 929,-32766,-32766,-32766, 716, -251, 408,-32766,-32766, 490,
517: -110, -110, 491,-32766, 424, -110, 498, 501, 502, 503,
518: 504, 508, 509, 510, -110,-32766, 518, 596, 702, 1073,
519: 1214, 1294, 1072,-32766, 1053, 1253, 1049, -279, -102, 12,
520: 17, 22, 297, 407, 610, 615, 643, 708, 1218, 1271,
521: 1215, 1351, 0, 373, 717, 300, 720, 724, 74, 725,
522: 1231, 727, 728, 729, 328, 409, 730, 734, 719, 0,
523: 413, 737, 904, 1376, 1378, 863, 862, 957, 1000, 1377,
524: 956, 954, 955, 958, 1246, 937, 947, 935, 990, 991,
525: 641, 1375, 1332, 1321, 1339, 1348, 0, 0, 1297, 0,
526: 328
527: );
528:
529: protected array $actionCheck = array(
530: 2, 3, 4, 5, 6, 7, 1, 9, 10, 11,
531: 12, 13, 82, 31, 0, 85, 9, 10, 11, 31,
532: 80, 116, 117, 118, 119, 120, 121, 122, 123, 124,
533: 125, 9, 10, 11, 8, 37, 38, 30, 1, 32,
534: 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
535: 43, 106, 30, 108, 1, 57, 116, 117, 118, 119,
536: 120, 121, 122, 123, 124, 125, 106, 107, 108, 71,
537: 72, 73, 74, 75, 76, 77, 116, 80, 80, 97,
538: 70, 151, 152, 8, 30, 87, 88, 89, 90, 91,
539: 92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
540: 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
541: 112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
542: 122, 8, 162, 8, 126, 127, 128, 129, 8, 131,
543: 132, 133, 134, 135, 136, 9, 10, 139, 140, 141,
544: 142, 143, 144, 145, 9, 147, 148, 137, 138, 106,
545: 14, 108, 154, 155, 156, 167, 158, 160, 2, 3,
546: 4, 5, 6, 7, 166, 9, 10, 11, 12, 13,
547: 116, 8, 167, 119, 120, 121, 122, 123, 124, 125,
548: 9, 10, 11, 44, 45, 46, 47, 48, 49, 50,
549: 51, 52, 166, 37, 38, 141, 1, 9, 10, 11,
550: 163, 30, 159, 32, 33, 34, 35, 36, 37, 38,
551: 9, 10, 11, 57, 9, 10, 11, 1, 30, 165,
552: 32, 33, 34, 35, 36, 8, 31, 71, 72, 73,
553: 74, 75, 76, 77, 1, 30, 80, 32, 33, 34,
554: 35, 8, 8, 87, 88, 89, 90, 91, 92, 93,
555: 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
556: 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
557: 114, 115, 116, 117, 118, 119, 120, 121, 122, 84,
558: 80, 166, 126, 127, 128, 129, 166, 131, 132, 133,
559: 134, 135, 136, 1, 8, 139, 140, 141, 142, 143,
560: 144, 145, 166, 147, 148, 163, 9, 10, 11, 167,
561: 154, 155, 156, 97, 158, 2, 3, 4, 5, 6,
562: 7, 14, 9, 10, 11, 12, 13, 30, 101, 32,
563: 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
564: 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
565: 53, 54, 55, 126, 57, 9, 10, 11, 163, 159,
566: 160, 161, 167, 80, 8, 106, 69, 108, 168, 70,
567: 57, 9, 10, 11, 82, 1, 30, 1, 32, 33,
568: 34, 1, 8, 8, 71, 72, 73, 74, 75, 76,
569: 77, 31, 30, 80, 32, 33, 1, 164, 8, 166,
570: 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
571: 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
572: 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
573: 117, 118, 119, 120, 121, 122, 137, 138, 8, 126,
574: 127, 128, 129, 160, 131, 132, 133, 134, 135, 136,
575: 167, 85, 139, 140, 141, 142, 143, 144, 145, 167,
576: 147, 148, 82, 171, 8, 116, 167, 154, 155, 156,
577: 2, 3, 4, 5, 6, 7, 106, 101, 108, 84,
578: 12, 13, 106, 15, 108, 70, 9, 10, 11, 113,
579: 141, 14, 116, 117, 118, 119, 120, 121, 122, 123,
580: 124, 125, 126, 1, 8, 53, 54, 55, 8, 57,
581: 8, 8, 1, 116, 165, 30, 150, 8, 50, 51,
582: 140, 69, 8, 163, 56, 70, 58, 59, 60, 61,
583: 62, 63, 64, 65, 66, 67, 68, 140, 70, 71,
584: 72, 73, 74, 8, 168, 165, 78, 79, 80, 8,
585: 82, 171, 137, 138, 86, 87, 88, 89, 163, 91,
586: 1, 93, 167, 95, 70, 80, 98, 99, 153, 1,
587: 8, 103, 104, 105, 106, 107, 16, 109, 110, 1,
588: 165, 116, 167, 115, 116, 1, 50, 51, 52, 70,
589: 122, 1, 137, 138, 116, 127, 128, 129, 164, 31,
590: 166, 116, 132, 133, 134, 14, 141, 139, 140, 31,
591: 142, 143, 144, 145, 146, 147, 148, 149, 16, 141,
592: 14, 31, 167, 155, 156, 140, 141, 159, 160, 161,
593: 162, 137, 138, 165, 75, 76, 77, 169, 170, 171,
594: 16, 0, 1, 84, 159, 160, 161, 153, 31, 90,
595: 165, 92, 84, 94, 14, 96, 137, 138, 14, 165,
596: 14, 167, 84, 14, 80, 106, 164, 16, 166, 37,
597: 38, 16, 153, 16, 84, 37, 117, 118, 167, 37,
598: 38, 122, 171, 16, 165, 51, 167, 75, 76, 130,
599: 131, 132, 133, 134, 16, 17, 18, 19, 20, 21,
600: 22, 23, 24, 25, 26, 27, 28, 29, 16, 70,
601: 106, 107, 70, 71, 80, 16, 1, 83, 117, 118,
602: 116, 16, 163, 122, 82, 84, 167, 168, 86, 73,
603: 16, 163, 131, 106, 107, 167, 80, 59, 60, 75,
604: 76, 163, 116, 116, 16, 167, 31, 106, 70, 108,
605: 1, 167, 16, 163, 113, 171, 31, 167, 117, 118,
606: 101, 102, 35, 122, 122, 31, 162, 141, 37, 38,
607: 31, 130, 131, 132, 133, 134, 137, 138, 122, 30,
608: 1, 139, 140, 31, 142, 143, 144, 145, 146, 147,
609: 148, 165, 153, 106, 107, 154, 80, 155, 156, 84,
610: 31, 37, 38, 31, 163, 74, 167, 165, 167, 168,
611: 31, 80, 170, 171, 31, 137, 138, 30, 87, 88,
612: 89, 31, 91, 31, 93, 31, 95, 106, 107, 98,
613: 31, 153, 116, 31, 103, 104, 105, 31, 74, 31,
614: 109, 110, 31, 31, 80, 167, 115, 116, 70, 71,
615: 31, 87, 88, 89, 31, 91, 140, 93, 127, 95,
616: 82, 82, 98, 31, 86, 116, 31, 103, 104, 105,
617: 111, 112, 35, 109, 110, 159, 160, 161, 163, 115,
618: 116, 35, 167, 70, 71, 35, 35, 35, 35, 158,
619: 141, 127, 37, 37, 37, 82, 117, 118, 70, 86,
620: 122, 122, 38, 116, 57, 69, 77, 80, 70, 83,
621: 131, 80, 82, 89, 165, 82, 94, 92, 140, 140,
622: 142, 143, 144, 145, 146, 147, 148, 85, 141, 90,
623: 31, 97, 114, 155, 156, 122, 96, 136, 97, 135,
624: 97, 162, 135, 165, 165, 100, 131, 150, 170, 171,
625: 171, 153, 165, 140, 100, 142, 143, 144, 145, 146,
626: 147, 148, 113, 31, 150, 137, 138, 157, 155, 156,
627: 153, 162, 167, 74, 153, 159, -1, 157, 165, 80,
628: -1, 153, -1, 170, 171, -1, 87, 88, 89, -1,
629: 91, -1, 93, -1, 95, 167, -1, 98, 140, -1,
630: -1, 153, 103, 104, 105, 1, 74, 163, 109, 110,
631: -1, -1, 80, 153, 115, 116, -1, 158, -1, 87,
632: 88, 89, -1, 91, 163, 93, 127, 95, 1, 163,
633: 98, 163, 163, 163, 163, 103, 104, 105, 163, 74,
634: 163, 109, 110, 163, 163, 80, 163, 115, 116, 70,
635: 163, 163, 87, 88, 89, 163, 91, 163, 93, 127,
636: 95, 163, 165, 98, 163, 163, 166, 102, 103, 104,
637: 105, 164, 74, 164, 109, 110, 164, 164, 80, 81,
638: 115, 116, 164, 164, 1, 87, 88, 89, 84, 91,
639: 165, 93, 127, 95, 165, 165, 98, 166, 165, 165,
640: 165, 103, 104, 105, 100, 101, 102, 109, 110, 165,
641: 106, 84, 165, 115, 116, 165, 137, 138, 165, 165,
642: 165, 117, 118, 165, 165, 127, 122, 100, 101, 102,
643: 166, 165, 153, 106, 130, 131, 132, 133, 134, 165,
644: 165, 165, 165, 165, 117, 118, 167, 165, 165, 122,
645: 165, 165, 165, 165, 165, 165, 165, 130, 131, 132,
646: 133, 134, 74, 166, 165, 82, 165, 163, 80, 166,
647: 165, 167, 168, 165, 165, 87, 88, 89, 165, 91,
648: 165, 93, 165, 95, 165, 167, 98, 166, 166, 166,
649: 163, 103, 104, 105, 167, 168, 166, 109, 110, 166,
650: 117, 118, 166, 115, 116, 122, 166, 166, 166, 166,
651: 166, 166, 166, 166, 131, 127, 166, 166, 166, 166,
652: 166, 166, 166, 140, 166, 166, 166, 166, 166, 166,
653: 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
654: 166, 166, -1, 167, 167, 162, 167, 167, 165, 167,
655: 169, 167, 167, 167, 171, 168, 167, 167, 167, -1,
656: 168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
657: 168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
658: 168, 168, 168, 168, 168, 168, -1, -1, 170, -1,
659: 171
660: );
661:
662: protected array $actionBase = array(
663: 0, -2, 156, 559, 641, 1004, 1027, 485, 292, 200,
664: -60, 283, 568, 590, 590, 715, 590, 195, 578, 901,
665: 395, 395, 395, 831, 313, 313, 831, 313, 731, 731,
666: 731, 731, 764, 764, 965, 965, 998, 932, 899, 1088,
667: 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088,
668: 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088,
669: 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088,
670: 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088,
671: 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088,
672: 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088,
673: 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088,
674: 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088,
675: 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088,
676: 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088,
677: 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088,
678: 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088,
679: 1088, 1088, 1088, 37, 360, 216, 649, 1066, 1072, 1068,
680: 1073, 1064, 1063, 1067, 1069, 1074, 1113, 1114, 835, 1115,
681: 1116, 1112, 1117, 1070, 919, 1065, 1071, 297, 297, 297,
682: 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
683: 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
684: 297, 297, 297, 297, 135, 477, 126, 201, 201, 201,
685: 201, 201, 201, 201, 201, 201, 201, 201, 201, 201,
686: 201, 201, 201, 201, 201, 201, 201, 642, 642, 22,
687: 22, 22, 362, 813, 778, 813, 813, 813, 813, 813,
688: 813, 813, 813, 346, 205, 678, 188, 171, 171, 7,
689: 7, 7, 7, 7, 376, 779, 54, 1083, 1083, 139,
690: 139, 139, 139, 227, -55, 749, 380, -40, 787, 604,
691: 626, 626, 536, 536, 478, 478, 349, 349, 478, 478,
692: 478, 465, 465, 465, 465, 415, 494, 519, 43, 366,
693: 858, 584, 584, 584, 584, 858, 858, 858, 858, 814,
694: 1118, 858, 858, 858, 639, 828, 828, 979, 452, 452,
695: 452, 828, 370, -70, -70, 370, 601, -70, 511, 987,
696: 634, 999, 397, 815, 627, 434, 397, 299, 455, 502,
697: 233, 816, 687, 816, 1062, 842, 842, 802, 739, 902,
698: 1091, 1075, 845, 1110, 854, 1111, 470, 10, 734, 1061,
699: 1061, 1061, 1061, 1061, 1061, 1061, 1061, 1061, 1061, 1061,
700: 1119, 632, 1062, -3, 1119, 1119, 1119, 632, 632, 632,
701: 632, 632, 632, 632, 632, 806, 632, 632, 759, -3,
702: 612, 664, -3, 853, 632, 817, 37, 37, 37, 37,
703: 37, 37, 37, 37, 37, 37, 37, -12, 37, 37,
704: 360, 5, 5, 37, 142, 53, 5, 5, 5, 5,
705: 37, 37, 37, 37, 687, 847, 810, 721, -18, 820,
706: 120, 847, 847, 847, 26, 136, 115, 727, 837, 259,
707: 827, 827, 827, 833, 947, 947, 827, 830, 827, 833,
708: 827, 827, 947, 947, 809, 947, 217, 509, 430, 500,
709: 514, 947, 356, 827, 827, 827, 827, 807, 947, 75,
710: 535, 827, 286, 234, 827, 827, 807, 804, 812, 801,
711: 947, 947, 947, 807, 496, 801, 801, 801, 866, 868,
712: 849, 811, 390, 375, 562, 163, 864, 811, 811, 827,
713: 503, 849, 811, 849, 811, 859, 811, 811, 811, 849,
714: 811, 830, 456, 811, 699, 705, 541, 113, 811, 14,
715: 958, 959, 617, 966, 954, 974, 1017, 975, 976, 1077,
716: 944, 985, 955, 977, 1019, 953, 950, 832, 651, 655,
717: 821, 798, 935, 836, 836, 836, 930, 933, 836, 836,
718: 836, 836, 836, 836, 836, 836, 651, 907, 860, 824,
719: 988, 657, 667, 1051, 797, 1094, 1081, 987, 958, 976,
720: 725, 955, 977, 953, 950, 799, 794, 790, 792, 783,
721: 772, 752, 769, 808, 1053, 978, 844, 692, 1023, 989,
722: 1093, 1018, 990, 991, 1030, 1054, 869, 1055, 1095, 838,
723: 1096, 1097, 909, 1001, 1079, 836, 929, 897, 912, 999,
724: 934, 651, 913, 1056, 997, 805, 1033, 1036, 1076, 841,
725: 826, 918, 1098, 1005, 1008, 1009, 1080, 1082, 861, 1003,
726: 900, 1040, 843, 1087, 1041, 1042, 1043, 1044, 1084, 1099,
727: 1085, 925, 1086, 870, 839, 931, 840, 1100, 307, 851,
728: 852, 857, 1015, 591, 986, 1089, 1092, 1101, 1045, 1046,
729: 1047, 1102, 1103, 982, 871, 1021, 822, 1022, 964, 875,
730: 877, 606, 856, 1058, 846, 850, 855, 640, 644, 1104,
731: 1105, 1106, 983, 819, 829, 880, 881, 1059, 638, 1060,
732: 1107, 646, 883, 1108, 1052, 714, 728, 560, 624, 602,
733: 736, 825, 1090, 848, 818, 834, 1013, 728, 823, 887,
734: 1109, 888, 892, 894, 1050, 898, 0, 0, 0, 0,
735: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
736: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
737: 0, 0, 0, 0, 0, 0, 468, 468, 468, 468,
738: 468, 468, 313, 313, 313, 313, 313, 468, 468, 468,
739: 468, 468, 468, 468, 313, 468, 468, 468, 313, 0,
740: 0, 313, 0, 468, 468, 468, 468, 468, 468, 468,
741: 468, 468, 468, 468, 468, 468, 468, 468, 468, 468,
742: 468, 468, 468, 468, 468, 468, 468, 468, 468, 468,
743: 468, 468, 468, 468, 468, 468, 468, 468, 468, 468,
744: 468, 468, 468, 468, 468, 468, 468, 468, 468, 468,
745: 468, 468, 468, 468, 468, 468, 468, 468, 468, 468,
746: 468, 468, 468, 468, 468, 468, 468, 468, 468, 468,
747: 468, 468, 468, 468, 468, 468, 468, 468, 468, 468,
748: 468, 468, 468, 468, 468, 468, 468, 468, 468, 468,
749: 468, 468, 468, 468, 468, 468, 468, 468, 468, 468,
750: 468, 468, 468, 468, 468, 468, 468, 468, 468, 468,
751: 468, 468, 468, 468, 468, 468, 468, 468, 468, 468,
752: 468, 468, 468, 468, 468, 468, 468, 468, 468, 468,
753: 468, 468, 468, 468, 468, 468, 468, 468, 297, 297,
754: 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
755: 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
756: 297, 297, 0, 0, 0, 0, 0, 0, 0, 0,
757: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
758: 0, 0, 0, 0, 0, 0, 0, 0, 0, 297,
759: 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
760: 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
761: 297, 297, 716, 716, 297, 297, 297, 297, 716, 716,
762: 716, 716, 716, 716, 716, 716, 716, 716, 297, 297,
763: 0, 297, 297, 297, 297, 297, 297, 297, 297, 809,
764: 716, 716, 716, 716, 452, 452, 452, 452, -95, -95,
765: 716, 716, 601, 716, 601, 716, 716, 452, 452, 716,
766: 716, 716, 716, 716, 716, 716, 716, 716, 716, 716,
767: 0, 0, 0, -3, -70, 716, 830, 830, 830, 830,
768: 716, 716, 716, 716, -70, -70, 716, 716, 716, 0,
769: 0, 0, 0, 0, 0, 0, 0, -3, 0, 0,
770: -3, 0, 0, 830, 656, 830, 656, 716, 601, 809,
771: 374, 716, 0, 0, 0, 0, -3, 830, -3, 632,
772: -70, -70, 632, 632, 5, 37, 374, 659, 659, 659,
773: 659, 0, 0, 687, 809, 809, 809, 809, 809, 809,
774: 809, 809, 809, 809, 809, 830, 0, 809, 0, 830,
775: 830, 830, 0, 0, 0, 0, 0, 0, 0, 0,
776: 947, 0, 0, 0, 0, 0, 0, 0, 830, 0,
777: 947, 0, 0, 0, 0, 0, 0, 0, 0, 0,
778: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
779: 830, 0, 0, 0, 0, 0, 0, 0, 0, 0,
780: 836, 841, 0, 0, 841, 0, 836, 836, 836, 0,
781: 0, 0, 856, 638
782: );
783:
784: protected array $actionDefault = array(
785: 3,32767, 102,32767,32767,32767,32767,32767,32767,32767,
786: 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
787: 32767,32767,32767,32767,32767,32767, 100,32767, 619, 619,
788: 619, 619,32767,32767, 256, 102,32767,32767, 488, 405,
789: 405, 405,32767,32767, 561, 561, 561, 561, 561,32767,
790: 32767,32767,32767,32767,32767, 488,32767,32767,32767,32767,
791: 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
792: 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
793: 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
794: 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
795: 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
796: 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
797: 32767,32767,32767,32767,32767,32767,32767,32767, 36, 7,
798: 8, 10, 11, 49, 17, 329, 100,32767,32767,32767,
799: 32767,32767,32767,32767,32767, 102,32767,32767,32767,32767,
800: 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
801: 32767,32767,32767,32767,32767,32767, 612,32767,32767,32767,
802: 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
803: 32767,32767,32767,32767,32767,32767,32767, 393, 492, 471,
804: 472, 474, 475, 404, 562, 618, 332, 615, 334, 403,
805: 146, 344, 335, 244, 260, 493, 261, 494, 497, 498,
806: 217, 390, 150, 151, 435, 489, 437, 487, 491, 436,
807: 410, 416, 417, 418, 419, 420, 421, 422, 423, 424,
808: 425, 426, 427, 428, 408, 409, 490,32767,32767, 468,
809: 467, 466, 433,32767,32767,32767,32767,32767,32767,32767,
810: 32767, 102,32767, 434, 438, 407, 441, 439, 440, 457,
811: 458, 455, 456, 459,32767,32767, 321,32767,32767, 460,
812: 461, 462, 463, 371, 369,32767,32767, 111, 321, 111,
813: 32767,32767, 448, 449,32767,32767,32767,32767,32767,32767,
814: 32767,32767,32767,32767,32767, 505, 555, 465,32767,32767,
815: 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
816: 32767, 102,32767, 100, 557, 430, 432, 525, 443, 444,
817: 442, 411,32767, 530,32767, 102,32767, 532,32767,32767,
818: 32767,32767,32767,32767,32767,32767,32767, 556,32767, 563,
819: 563,32767, 518, 100, 196,32767, 531, 196, 196,32767,
820: 32767,32767,32767,32767,32767,32767,32767, 626, 518, 110,
821: 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
822: 32767, 196, 110,32767,32767,32767, 100, 196, 196, 196,
823: 196, 196, 196, 196, 196, 533, 196, 196, 191,32767,
824: 270, 272, 102, 580, 196, 535,32767,32767,32767,32767,
825: 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
826: 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
827: 32767,32767,32767,32767, 518, 453, 139,32767, 520, 139,
828: 563, 445, 446, 447, 563, 563, 563, 317, 294,32767,
829: 32767,32767,32767,32767, 533, 533, 100, 100, 100, 100,
830: 32767,32767,32767,32767, 111, 504, 99, 99, 99, 99,
831: 99, 103, 101,32767,32767,32767,32767, 225,32767, 101,
832: 99,32767, 101, 101,32767,32767, 225, 227, 214, 229,
833: 32767, 584, 585, 225, 101, 229, 229, 229, 249, 249,
834: 507, 323, 101, 99, 101, 101, 198, 323, 323,32767,
835: 101, 507, 323, 507, 323, 200, 323, 323, 323, 507,
836: 323,32767, 101, 323, 216, 393, 99, 99, 323,32767,
837: 32767,32767, 520,32767,32767,32767,32767,32767,32767,32767,
838: 224,32767,32767,32767,32767,32767,32767,32767,32767, 550,
839: 32767, 568, 582, 451, 452, 454, 567, 565, 476, 477,
840: 478, 479, 480, 481, 482, 484, 614,32767, 524,32767,
841: 32767,32767, 343,32767, 624,32767,32767,32767, 9, 74,
842: 513, 42, 43, 51, 57, 539, 540, 541, 542, 536,
843: 537, 543, 538,32767,32767,32767,32767,32767,32767,32767,
844: 32767,32767,32767,32767,32767,32767,32767,32767, 625,32767,
845: 563,32767,32767,32767,32767, 450, 545, 590,32767,32767,
846: 564, 617,32767,32767,32767,32767,32767,32767,32767, 139,
847: 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
848: 550,32767, 137,32767,32767,32767,32767,32767,32767,32767,
849: 32767, 546,32767,32767,32767, 563,32767,32767,32767,32767,
850: 319, 316,32767,32767,32767,32767,32767,32767,32767,32767,
851: 32767,32767,32767,32767,32767,32767,32767,32767, 563,32767,
852: 32767,32767,32767,32767, 296,32767, 313,32767,32767,32767,
853: 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
854: 32767,32767,32767,32767,32767, 389, 520, 299, 301, 302,
855: 32767,32767,32767,32767, 365,32767,32767,32767,32767,32767,
856: 32767,32767,32767,32767,32767,32767, 153, 153, 3, 3,
857: 346, 153, 153, 153, 346, 346, 153, 346, 346, 346,
858: 153, 153, 153, 153, 153, 153, 282, 186, 264, 267,
859: 249, 249, 153, 357, 153
860: );
861:
862: protected array $goto = array(
863: 196, 196, 1045, 1076, 703, 468, 590, 473, 473, 858,
864: 739, 644, 646, 1209, 859, 666, 473, 833, 712, 690,
865: 693, 1018, 701, 710, 1014, 423, 353, 166, 166, 166,
866: 166, 220, 197, 193, 193, 176, 178, 215, 193, 193,
867: 193, 193, 193, 194, 194, 194, 194, 194, 188, 189,
868: 190, 191, 192, 217, 215, 218, 543, 544, 425, 545,
869: 548, 549, 550, 551, 552, 553, 554, 555, 1160, 167,
870: 168, 169, 195, 170, 171, 172, 165, 173, 174, 175,
871: 177, 214, 216, 219, 239, 242, 253, 254, 256, 257,
872: 258, 259, 260, 261, 262, 263, 269, 270, 271, 272,
873: 282, 283, 318, 319, 320, 431, 432, 433, 605, 221,
874: 222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
875: 232, 233, 234, 235, 179, 236, 180, 188, 189, 190,
876: 191, 192, 217, 1160, 198, 199, 200, 201, 240, 181,
877: 182, 202, 183, 203, 199, 184, 241, 198, 164, 204,
878: 205, 185, 206, 207, 208, 186, 209, 210, 187, 211,
879: 212, 213, 279, 277, 279, 279, 861, 983, 411, 412,
880: 920, 607, 921, 677, 854, 678, 854, 416, 417, 418,
881: 357, 691, 345, 463, 419, 463, 435, 668, 893, 349,
882: 357, 357, 430, 321, 315, 316, 339, 600, 434, 340,
883: 436, 645, 485, 597, 357, 357, 346, 345, 357, 487,
884: 351, 1382, 916, 911, 912, 925, 867, 913, 864, 914,
885: 915, 865, 868, 562, 919, 872, 357, 357, 429, 871,
886: 619, 854, 445, 1355, 630, 630, 1098, 1093, 1094, 1095,
887: 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295,
888: 617, 631, 634, 635, 636, 637, 658, 659, 660, 714,
889: 1264, 1045, 1264, 1264, 661, 662, 1004, 679, 680, 681,
890: 1045, 1264, 396, 1045, 1326, 1045, 1045, 354, 355, 1045,
891: 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
892: 900, 857, 900, 900, 595, 1264, 515, 506, 667, 507,
893: 1264, 1264, 1264, 1264, 1069, 513, 1264, 1264, 1264, 1347,
894: 1347, 1347, 1347, 567, 560, 356, 356, 356, 356, 1157,
895: 5, 558, 6, 558, 558, 628, 665, 933, 562, 1051,
896: 1050, 934, 558, 556, 556, 556, 556, 949, 611, 949,
897: 482, 1340, 1341, 329, 560, 567, 592, 593, 331, 603,
898: 609, 854, 624, 625, 249, 249, 461, 975, 414, 711,
899: 25, 977, 977, 977, 977, 1314, 1314, 461, 971, 978,
900: 443, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314,
901: 1314, 247, 247, 247, 247, 244, 250, 1311, 1311, 1118,
902: 1119, 839, 1257, 1311, 1311, 1311, 1311, 1311, 1311, 1311,
903: 1311, 1311, 1311, 547, 547, 398, 401, 608, 612, 547,
904: 547, 547, 547, 547, 547, 547, 547, 547, 547, 638,
905: 640, 642, 689, 454, 454, 673, 454, 454, 1337, 1259,
906: 1337, 1337, 546, 546, 839, 341, 839, 851, 546, 1337,
907: 546, 546, 546, 546, 546, 546, 546, 546, 561, 587,
908: 561, 623, 1007, 405, 561, 979, 587, 738, 399, 467,
909: 559, 1016, 1011, 966, 1349, 1349, 1349, 1349, 1054, 1055,
910: 880, 476, 604, 477, 478, 877, 1365, 1365, 437, 885,
911: 1255, 700, 1373, 1374, 1082, 835, 1260, 1261, 742, 1247,
912: 437, 1333, 875, 1026, 1365, 849, 406, 700, 1052, 1052,
913: 700, 889, 1247, 672, 1063, 1059, 1060, 883, 887, 327,
914: 310, 874, 1368, 1368, 1262, 1323, 1324, 483, 454, 454,
915: 454, 454, 454, 454, 454, 454, 454, 454, 454, 1342,
916: 1343, 454, 613, 1084, 1086, 938, 1147, 1335, 1335, 1084,
917: 601, 622, 1021, 1021, 988, 1036, 1132, 1023, 888, 876,
918: 1081, 1085, 0, 0, 0, 879, 0, 671, 1002, 0,
919: 0, 986, 0, 873, 1048, 1048, 0, 0, 688, 960,
920: 606, 1111, 1040, 1056, 1057, 1254, 273, 326, 0, 326,
921: 326, 715, 0, 0, 976, 0, 514, 706, 0, 1109,
922: 252, 252, 1240, 952, 0, 0, 0, 1241, 1244, 953,
923: 1245, 0, 0, 0, 0, 0, 0, 1130, 892
924: );
925:
926: protected array $gotoCheck = array(
927: 42, 42, 73, 128, 73, 156, 48, 154, 154, 26,
928: 48, 48, 48, 156, 27, 48, 154, 6, 9, 48,
929: 48, 48, 48, 48, 48, 43, 97, 42, 42, 42,
930: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
931: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
932: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
933: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
934: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
935: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
936: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
937: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
938: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
939: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
940: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
941: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
942: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
943: 42, 42, 23, 23, 23, 23, 15, 49, 82, 82,
944: 65, 131, 65, 82, 22, 82, 22, 82, 82, 82,
945: 14, 82, 174, 83, 82, 83, 66, 66, 45, 82,
946: 14, 14, 66, 66, 66, 66, 66, 66, 66, 66,
947: 66, 66, 84, 178, 14, 14, 174, 174, 14, 84,
948: 185, 14, 15, 15, 15, 15, 15, 15, 15, 15,
949: 15, 15, 15, 14, 15, 15, 14, 14, 13, 15,
950: 13, 22, 83, 187, 108, 108, 15, 15, 15, 15,
951: 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
952: 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
953: 73, 73, 73, 73, 86, 86, 103, 86, 86, 86,
954: 73, 73, 62, 73, 14, 73, 73, 97, 97, 73,
955: 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
956: 25, 25, 25, 25, 104, 73, 14, 160, 64, 160,
957: 73, 73, 73, 73, 115, 160, 73, 73, 73, 9,
958: 9, 9, 9, 76, 76, 24, 24, 24, 24, 155,
959: 46, 19, 46, 19, 19, 56, 56, 73, 14, 119,
960: 119, 73, 19, 107, 107, 107, 107, 9, 107, 9,
961: 182, 182, 182, 76, 76, 76, 76, 76, 76, 76,
962: 76, 22, 76, 76, 5, 5, 19, 93, 93, 93,
963: 76, 19, 19, 19, 19, 176, 176, 19, 19, 19,
964: 113, 176, 176, 176, 176, 176, 176, 176, 176, 176,
965: 176, 5, 5, 5, 5, 5, 5, 177, 177, 145,
966: 145, 12, 14, 177, 177, 177, 177, 177, 177, 177,
967: 177, 177, 177, 179, 179, 59, 59, 59, 59, 179,
968: 179, 179, 179, 179, 179, 179, 179, 179, 179, 85,
969: 85, 85, 117, 23, 23, 121, 23, 23, 131, 20,
970: 131, 131, 162, 162, 12, 29, 12, 18, 162, 131,
971: 162, 162, 162, 162, 162, 162, 162, 162, 9, 9,
972: 9, 80, 50, 28, 9, 50, 9, 50, 9, 9,
973: 50, 50, 50, 92, 131, 131, 131, 131, 120, 120,
974: 39, 9, 9, 9, 9, 37, 188, 188, 118, 9,
975: 166, 7, 9, 9, 130, 7, 20, 20, 99, 20,
976: 118, 131, 35, 110, 188, 20, 31, 7, 118, 118,
977: 7, 41, 20, 118, 118, 118, 118, 9, 35, 175,
978: 175, 35, 188, 188, 20, 20, 20, 157, 23, 23,
979: 23, 23, 23, 23, 23, 23, 23, 23, 23, 184,
980: 184, 23, 17, 131, 133, 17, 17, 131, 131, 131,
981: 2, 2, 107, 107, 96, 114, 148, 17, 16, 16,
982: 16, 16, -1, -1, -1, 17, -1, 17, 17, -1,
983: -1, 16, -1, 17, 89, 89, -1, -1, 89, 89,
984: 8, 8, 89, 89, 89, 17, 24, 24, -1, 24,
985: 24, 8, -1, -1, 16, -1, 8, 8, -1, 8,
986: 5, 5, 79, 79, -1, -1, -1, 79, 79, 79,
987: 79, -1, -1, -1, -1, -1, -1, 16, 16
988: );
989:
990: protected array $gotoBase = array(
991: 0, 0, -178, 0, 0, 353, 7, 474, 562, 8,
992: 0, 0, 93, -113, -119, -184, 91, 63, 126, 56,
993: 34, 0, -103, 159, 312, 287, 5, 10, 112, 137,
994: 0, 54, 0, 0, 0, 119, 0, 132, 0, 145,
995: 0, 55, -1, 2, 0, 162, -422, 0, -711, 149,
996: 440, 0, 0, 0, 0, 0, 285, 0, 0, 360,
997: 0, 0, 230, 0, 60, 156, -51, 0, 0, 0,
998: 0, 0, 0, -5, 0, 0, -34, 0, 0, 181,
999: 120, -110, -329, -94, -274, -66, -460, 0, 0, 284,
1000: 0, 0, 130, 51, 0, 0, 96, -463, 0, 78,
1001: 0, 0, 0, 231, 251, 0, 0, 305, -3, 0,
1002: 121, 0, 0, 92, 30, 29, 0, 138, 212, 49,
1003: 182, 134, 0, 0, 0, 0, 0, 0, 1, 0,
1004: 108, 163, 0, 87, 0, 0, 0, 0, 0, 0,
1005: 0, 0, 0, 0, 0, 116, 0, 0, 97, 0,
1006: 0, 0, 0, 0, -27, 75, -263, 72, 0, 0,
1007: -204, 0, 195, 0, 0, 0, 109, 0, 0, 0,
1008: 0, 0, 0, 0, -117, 186, 128, 150, 174, 166,
1009: 0, 0, 38, 0, 155, 180, 0, 202, 167, 0,
1010: 0
1011: );
1012:
1013: protected array $gotoDefault = array(
1014: -32768, 519, 746, 4, 747, 942, 822, 831, 583, 537,
1015: 713, 350, 632, 426, 1331, 918, 1146, 602, 850, 1273,
1016: 1279, 462, 853, 334, 736, 930, 901, 902, 402, 389,
1017: 866, 400, 656, 633, 500, 886, 458, 878, 492, 881,
1018: 457, 890, 163, 422, 517, 894, 3, 897, 565, 928,
1019: 981, 390, 905, 391, 684, 907, 586, 909, 910, 397,
1020: 403, 404, 1151, 594, 629, 922, 255, 588, 923, 388,
1021: 924, 932, 393, 395, 694, 472, 511, 505, 415, 1113,
1022: 589, 616, 653, 451, 479, 627, 639, 626, 486, 438,
1023: 420, 333, 965, 973, 493, 470, 987, 352, 995, 744,
1024: 1159, 647, 495, 1003, 648, 1010, 1013, 538, 539, 484,
1025: 1025, 266, 1028, 496, 1037, 23, 674, 1042, 1043, 675,
1026: 649, 1065, 650, 676, 651, 1067, 469, 584, 1075, 459,
1027: 1083, 1319, 460, 1087, 264, 1090, 278, 421, 439, 1096,
1028: 1097, 9, 1103, 704, 705, 19, 274, 516, 1131, 695,
1029: -32768,-32768,-32768,-32768, 456, 1158, 455, 1228, 1230, 566,
1030: 497, 1248, 295, 1251, 687, 512, 1256, 452, 1322, 453,
1031: 540, 480, 317, 541, 1366, 309, 337, 314, 557, 296,
1032: 338, 542, 481, 1328, 1336, 335, 31, 1356, 1367, 599,
1033: 621
1034: );
1035:
1036: protected array $ruleToNonTerminal = array(
1037: 0, 1, 3, 3, 2, 5, 5, 6, 6, 6,
1038: 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
1039: 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
1040: 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
1041: 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
1042: 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
1043: 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
1044: 6, 6, 6, 6, 6, 6, 6, 7, 7, 7,
1045: 7, 7, 7, 7, 7, 8, 8, 9, 10, 11,
1046: 11, 11, 12, 12, 13, 13, 14, 15, 15, 16,
1047: 16, 17, 17, 18, 18, 21, 21, 22, 23, 23,
1048: 24, 24, 4, 4, 4, 4, 4, 4, 4, 4,
1049: 4, 4, 4, 4, 29, 29, 30, 30, 32, 34,
1050: 34, 28, 36, 36, 33, 38, 38, 35, 35, 37,
1051: 37, 39, 39, 31, 40, 40, 41, 43, 44, 44,
1052: 45, 45, 46, 46, 48, 47, 47, 47, 47, 49,
1053: 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
1054: 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
1055: 49, 49, 49, 25, 25, 50, 69, 69, 72, 72,
1056: 71, 70, 70, 63, 75, 75, 76, 76, 77, 77,
1057: 78, 78, 79, 79, 80, 80, 80, 26, 26, 27,
1058: 27, 27, 27, 27, 88, 88, 90, 90, 83, 83,
1059: 91, 91, 92, 92, 92, 84, 84, 87, 87, 85,
1060: 85, 93, 94, 94, 57, 57, 65, 65, 68, 68,
1061: 68, 67, 95, 95, 96, 58, 58, 58, 58, 97,
1062: 97, 98, 98, 99, 99, 100, 101, 101, 102, 102,
1063: 103, 103, 55, 55, 51, 51, 105, 53, 53, 106,
1064: 52, 52, 54, 54, 64, 64, 64, 64, 81, 81,
1065: 109, 109, 111, 111, 112, 112, 112, 112, 112, 112,
1066: 112, 110, 110, 110, 115, 115, 115, 115, 89, 89,
1067: 118, 118, 118, 119, 119, 116, 116, 120, 120, 122,
1068: 122, 123, 123, 117, 124, 124, 121, 125, 125, 125,
1069: 125, 113, 113, 82, 82, 82, 20, 20, 20, 127,
1070: 126, 126, 128, 128, 128, 128, 60, 129, 129, 130,
1071: 61, 132, 132, 133, 133, 134, 134, 86, 135, 135,
1072: 135, 135, 135, 135, 135, 140, 140, 141, 141, 142,
1073: 142, 142, 142, 142, 143, 144, 144, 139, 139, 136,
1074: 136, 138, 138, 146, 146, 145, 145, 145, 145, 145,
1075: 145, 145, 145, 145, 145, 137, 147, 147, 149, 148,
1076: 148, 150, 150, 114, 151, 151, 153, 153, 153, 152,
1077: 152, 62, 104, 154, 154, 56, 56, 42, 42, 42,
1078: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
1079: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
1080: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
1081: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
1082: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
1083: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
1084: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
1085: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
1086: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
1087: 42, 161, 162, 162, 163, 155, 155, 160, 160, 164,
1088: 165, 165, 166, 167, 168, 168, 168, 168, 19, 19,
1089: 73, 73, 73, 73, 156, 156, 156, 156, 170, 170,
1090: 159, 159, 159, 157, 157, 176, 176, 176, 176, 176,
1091: 176, 176, 176, 176, 176, 177, 177, 177, 108, 179,
1092: 179, 179, 179, 158, 158, 158, 158, 158, 158, 158,
1093: 158, 59, 59, 173, 173, 173, 173, 173, 180, 180,
1094: 169, 169, 169, 169, 181, 181, 181, 181, 181, 181,
1095: 74, 74, 66, 66, 66, 66, 131, 131, 131, 131,
1096: 184, 183, 172, 172, 172, 172, 172, 172, 172, 171,
1097: 171, 171, 182, 182, 182, 182, 107, 178, 186, 186,
1098: 185, 185, 187, 187, 187, 187, 187, 187, 187, 187,
1099: 175, 175, 175, 175, 174, 189, 188, 188, 188, 188,
1100: 188, 188, 188, 188, 190, 190, 190, 190
1101: );
1102:
1103: protected array $ruleToLength = array(
1104: 1, 1, 2, 0, 1, 1, 1, 1, 1, 1,
1105: 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1106: 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1107: 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1108: 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1109: 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1110: 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1111: 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1112: 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1113: 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
1114: 1, 0, 1, 1, 2, 1, 3, 4, 1, 2,
1115: 0, 1, 1, 1, 1, 4, 3, 5, 4, 3,
1116: 4, 1, 3, 4, 1, 1, 8, 7, 2, 3,
1117: 1, 2, 3, 1, 2, 3, 1, 1, 3, 1,
1118: 3, 1, 2, 2, 3, 1, 3, 2, 3, 1,
1119: 3, 3, 2, 0, 1, 1, 1, 1, 1, 3,
1120: 7, 10, 5, 7, 9, 5, 3, 3, 3, 3,
1121: 3, 3, 1, 2, 5, 7, 9, 6, 5, 6,
1122: 3, 2, 1, 1, 1, 1, 0, 2, 1, 3,
1123: 8, 0, 4, 2, 1, 3, 0, 1, 0, 1,
1124: 0, 1, 3, 1, 1, 1, 1, 8, 9, 7,
1125: 8, 7, 6, 8, 0, 2, 0, 2, 1, 2,
1126: 1, 2, 1, 1, 1, 0, 2, 0, 2, 0,
1127: 2, 2, 1, 3, 1, 4, 1, 4, 1, 1,
1128: 4, 2, 1, 3, 3, 3, 4, 4, 5, 0,
1129: 2, 4, 3, 1, 1, 7, 0, 2, 1, 3,
1130: 3, 4, 1, 4, 0, 2, 5, 0, 2, 6,
1131: 0, 2, 0, 3, 1, 2, 1, 1, 2, 0,
1132: 1, 3, 0, 2, 1, 1, 1, 1, 1, 1,
1133: 1, 7, 9, 6, 1, 2, 1, 1, 1, 1,
1134: 1, 1, 1, 1, 3, 3, 3, 1, 3, 3,
1135: 3, 3, 3, 1, 3, 3, 1, 1, 2, 1,
1136: 1, 0, 1, 0, 2, 2, 2, 4, 3, 1,
1137: 1, 3, 1, 2, 2, 3, 2, 3, 1, 1,
1138: 2, 3, 1, 1, 3, 2, 0, 1, 5, 5,
1139: 6, 10, 3, 5, 1, 1, 3, 0, 2, 4,
1140: 5, 4, 4, 4, 3, 1, 1, 1, 1, 1,
1141: 1, 0, 1, 1, 2, 1, 1, 1, 1, 1,
1142: 1, 1, 1, 1, 1, 2, 1, 3, 1, 1,
1143: 3, 0, 2, 0, 5, 8, 1, 3, 3, 0,
1144: 2, 2, 2, 3, 1, 0, 1, 1, 3, 3,
1145: 3, 4, 4, 1, 1, 2, 3, 3, 3, 3,
1146: 3, 3, 3, 3, 3, 3, 3, 3, 3, 2,
1147: 2, 2, 2, 3, 3, 3, 3, 3, 3, 3,
1148: 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1149: 3, 2, 2, 2, 2, 3, 3, 3, 3, 3,
1150: 3, 3, 3, 3, 3, 3, 5, 4, 3, 4,
1151: 4, 2, 2, 4, 2, 2, 2, 2, 2, 2,
1152: 2, 2, 2, 2, 2, 1, 3, 2, 1, 2,
1153: 4, 2, 2, 8, 9, 8, 9, 9, 10, 9,
1154: 10, 8, 3, 2, 2, 1, 1, 0, 4, 2,
1155: 1, 3, 2, 1, 2, 2, 2, 4, 1, 1,
1156: 1, 1, 1, 1, 1, 1, 3, 1, 1, 1,
1157: 0, 1, 1, 0, 1, 1, 1, 1, 1, 1,
1158: 1, 1, 1, 1, 1, 3, 5, 3, 3, 4,
1159: 1, 1, 3, 1, 1, 1, 1, 1, 3, 2,
1160: 3, 0, 1, 1, 3, 1, 1, 1, 1, 1,
1161: 1, 3, 1, 1, 1, 4, 4, 1, 4, 4,
1162: 0, 1, 1, 1, 3, 3, 1, 4, 2, 2,
1163: 1, 3, 1, 4, 4, 3, 3, 3, 3, 1,
1164: 3, 1, 1, 3, 1, 1, 4, 1, 1, 1,
1165: 3, 1, 1, 2, 1, 3, 4, 3, 2, 0,
1166: 2, 2, 1, 2, 1, 1, 1, 4, 3, 3,
1167: 3, 3, 6, 3, 1, 1, 2, 1
1168: );
1169:
1170: protected function initReduceCallbacks(): void {
1171: $this->reduceCallbacks = [
1172: 0 => null,
1173: 1 => static function ($self, $stackPos) {
1174: $self->semValue = $self->handleNamespaces($self->semStack[$stackPos-(1-1)]);
1175: },
1176: 2 => static function ($self, $stackPos) {
1177: if ($self->semStack[$stackPos-(2-2)] !== null) { $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; } $self->semValue = $self->semStack[$stackPos-(2-1)];;
1178: },
1179: 3 => static function ($self, $stackPos) {
1180: $self->semValue = array();
1181: },
1182: 4 => static function ($self, $stackPos) {
1183: $nop = $self->maybeCreateZeroLengthNop($self->tokenPos);;
1184: if ($nop !== null) { $self->semStack[$stackPos-(1-1)][] = $nop; } $self->semValue = $self->semStack[$stackPos-(1-1)];
1185: },
1186: 5 => null,
1187: 6 => null,
1188: 7 => null,
1189: 8 => null,
1190: 9 => null,
1191: 10 => null,
1192: 11 => null,
1193: 12 => null,
1194: 13 => null,
1195: 14 => null,
1196: 15 => null,
1197: 16 => null,
1198: 17 => null,
1199: 18 => null,
1200: 19 => null,
1201: 20 => null,
1202: 21 => null,
1203: 22 => null,
1204: 23 => null,
1205: 24 => null,
1206: 25 => null,
1207: 26 => null,
1208: 27 => null,
1209: 28 => null,
1210: 29 => null,
1211: 30 => null,
1212: 31 => null,
1213: 32 => null,
1214: 33 => null,
1215: 34 => null,
1216: 35 => null,
1217: 36 => null,
1218: 37 => null,
1219: 38 => null,
1220: 39 => null,
1221: 40 => null,
1222: 41 => null,
1223: 42 => null,
1224: 43 => null,
1225: 44 => null,
1226: 45 => null,
1227: 46 => null,
1228: 47 => null,
1229: 48 => null,
1230: 49 => null,
1231: 50 => null,
1232: 51 => null,
1233: 52 => null,
1234: 53 => null,
1235: 54 => null,
1236: 55 => null,
1237: 56 => null,
1238: 57 => null,
1239: 58 => null,
1240: 59 => null,
1241: 60 => null,
1242: 61 => null,
1243: 62 => null,
1244: 63 => null,
1245: 64 => null,
1246: 65 => null,
1247: 66 => null,
1248: 67 => null,
1249: 68 => null,
1250: 69 => null,
1251: 70 => null,
1252: 71 => null,
1253: 72 => null,
1254: 73 => null,
1255: 74 => null,
1256: 75 => null,
1257: 76 => static function ($self, $stackPos) {
1258: $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])));
1259: },
1260: 77 => null,
1261: 78 => null,
1262: 79 => null,
1263: 80 => null,
1264: 81 => null,
1265: 82 => null,
1266: 83 => null,
1267: 84 => null,
1268: 85 => static function ($self, $stackPos) {
1269: $self->semValue = new Node\Identifier($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1270: },
1271: 86 => static function ($self, $stackPos) {
1272: $self->semValue = new Node\Identifier($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1273: },
1274: 87 => static function ($self, $stackPos) {
1275: $self->semValue = new Node\Identifier($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1276: },
1277: 88 => static function ($self, $stackPos) {
1278: $self->semValue = new Node\Identifier($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1279: },
1280: 89 => static function ($self, $stackPos) {
1281: $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1282: },
1283: 90 => static function ($self, $stackPos) {
1284: $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1285: },
1286: 91 => static function ($self, $stackPos) {
1287: $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1288: },
1289: 92 => static function ($self, $stackPos) {
1290: $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1291: },
1292: 93 => static function ($self, $stackPos) {
1293: $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1294: },
1295: 94 => null,
1296: 95 => static function ($self, $stackPos) {
1297: $self->semValue = new Name(substr($self->semStack[$stackPos-(1-1)], 1), $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1298: },
1299: 96 => static function ($self, $stackPos) {
1300: $self->semValue = new Expr\Variable(substr($self->semStack[$stackPos-(1-1)], 1), $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1301: },
1302: 97 => static function ($self, $stackPos) {
1303: /* nothing */
1304: },
1305: 98 => static function ($self, $stackPos) {
1306: /* nothing */
1307: },
1308: 99 => static function ($self, $stackPos) {
1309: /* nothing */
1310: },
1311: 100 => static function ($self, $stackPos) {
1312: $self->emitError(new Error('A trailing comma is not allowed here', $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])));
1313: },
1314: 101 => null,
1315: 102 => null,
1316: 103 => static function ($self, $stackPos) {
1317: $self->semValue = new Node\Attribute($self->semStack[$stackPos-(1-1)], [], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1318: },
1319: 104 => static function ($self, $stackPos) {
1320: $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]));
1321: },
1322: 105 => static function ($self, $stackPos) {
1323: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1324: },
1325: 106 => static function ($self, $stackPos) {
1326: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1327: },
1328: 107 => static function ($self, $stackPos) {
1329: $self->semValue = new Node\AttributeGroup($self->semStack[$stackPos-(4-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]));
1330: },
1331: 108 => static function ($self, $stackPos) {
1332: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1333: },
1334: 109 => static function ($self, $stackPos) {
1335: $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)];
1336: },
1337: 110 => static function ($self, $stackPos) {
1338: $self->semValue = [];
1339: },
1340: 111 => null,
1341: 112 => null,
1342: 113 => null,
1343: 114 => null,
1344: 115 => static function ($self, $stackPos) {
1345: $self->semValue = new Stmt\HaltCompiler($self->handleHaltCompiler(), $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]));
1346: },
1347: 116 => static function ($self, $stackPos) {
1348: $self->semValue = new Stmt\Namespace_($self->semStack[$stackPos-(3-2)], null, $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]));
1349: $self->semValue->setAttribute('kind', Stmt\Namespace_::KIND_SEMICOLON);
1350: $self->checkNamespace($self->semValue);
1351: },
1352: 117 => static function ($self, $stackPos) {
1353: $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]));
1354: $self->semValue->setAttribute('kind', Stmt\Namespace_::KIND_BRACED);
1355: $self->checkNamespace($self->semValue);
1356: },
1357: 118 => static function ($self, $stackPos) {
1358: $self->semValue = new Stmt\Namespace_(null, $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]));
1359: $self->semValue->setAttribute('kind', Stmt\Namespace_::KIND_BRACED);
1360: $self->checkNamespace($self->semValue);
1361: },
1362: 119 => static function ($self, $stackPos) {
1363: $self->semValue = new Stmt\Use_($self->semStack[$stackPos-(3-2)], Stmt\Use_::TYPE_NORMAL, $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]));
1364: },
1365: 120 => static function ($self, $stackPos) {
1366: $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]));
1367: },
1368: 121 => null,
1369: 122 => static function ($self, $stackPos) {
1370: $self->semValue = new Stmt\Const_($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]), []);
1371: },
1372: 123 => static function ($self, $stackPos) {
1373: $self->semValue = new Stmt\Const_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(4-1)]);
1374: $self->checkConstantAttributes($self->semValue);
1375: },
1376: 124 => static function ($self, $stackPos) {
1377: $self->semValue = Stmt\Use_::TYPE_FUNCTION;
1378: },
1379: 125 => static function ($self, $stackPos) {
1380: $self->semValue = Stmt\Use_::TYPE_CONSTANT;
1381: },
1382: 126 => static function ($self, $stackPos) {
1383: $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]));
1384: },
1385: 127 => static function ($self, $stackPos) {
1386: $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]));
1387: },
1388: 128 => null,
1389: 129 => static function ($self, $stackPos) {
1390: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1391: },
1392: 130 => static function ($self, $stackPos) {
1393: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1394: },
1395: 131 => null,
1396: 132 => static function ($self, $stackPos) {
1397: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1398: },
1399: 133 => static function ($self, $stackPos) {
1400: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1401: },
1402: 134 => null,
1403: 135 => static function ($self, $stackPos) {
1404: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1405: },
1406: 136 => static function ($self, $stackPos) {
1407: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1408: },
1409: 137 => static function ($self, $stackPos) {
1410: $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));
1411: },
1412: 138 => static function ($self, $stackPos) {
1413: $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));
1414: },
1415: 139 => static function ($self, $stackPos) {
1416: $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));
1417: },
1418: 140 => static function ($self, $stackPos) {
1419: $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));
1420: },
1421: 141 => static function ($self, $stackPos) {
1422: $self->semValue = $self->semStack[$stackPos-(1-1)]; $self->semValue->type = Stmt\Use_::TYPE_NORMAL;
1423: },
1424: 142 => static function ($self, $stackPos) {
1425: $self->semValue = $self->semStack[$stackPos-(2-2)]; $self->semValue->type = $self->semStack[$stackPos-(2-1)];
1426: },
1427: 143 => null,
1428: 144 => static function ($self, $stackPos) {
1429: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1430: },
1431: 145 => static function ($self, $stackPos) {
1432: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1433: },
1434: 146 => static function ($self, $stackPos) {
1435: $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]));
1436: },
1437: 147 => null,
1438: 148 => static function ($self, $stackPos) {
1439: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1440: },
1441: 149 => static function ($self, $stackPos) {
1442: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1443: },
1444: 150 => static function ($self, $stackPos) {
1445: $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]));
1446: },
1447: 151 => static function ($self, $stackPos) {
1448: $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]));
1449: },
1450: 152 => static function ($self, $stackPos) {
1451: if ($self->semStack[$stackPos-(2-2)] !== null) { $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; } $self->semValue = $self->semStack[$stackPos-(2-1)];;
1452: },
1453: 153 => static function ($self, $stackPos) {
1454: $self->semValue = array();
1455: },
1456: 154 => static function ($self, $stackPos) {
1457: $nop = $self->maybeCreateZeroLengthNop($self->tokenPos);;
1458: if ($nop !== null) { $self->semStack[$stackPos-(1-1)][] = $nop; } $self->semValue = $self->semStack[$stackPos-(1-1)];
1459: },
1460: 155 => null,
1461: 156 => null,
1462: 157 => null,
1463: 158 => static function ($self, $stackPos) {
1464: throw new Error('__HALT_COMPILER() can only be used from the outermost scope', $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1465: },
1466: 159 => static function ($self, $stackPos) {
1467: $self->semValue = new Stmt\Block($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]));
1468: },
1469: 160 => static function ($self, $stackPos) {
1470: $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]));
1471: },
1472: 161 => static function ($self, $stackPos) {
1473: $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]));
1474: },
1475: 162 => static function ($self, $stackPos) {
1476: $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]));
1477: },
1478: 163 => static function ($self, $stackPos) {
1479: $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]));
1480: },
1481: 164 => static function ($self, $stackPos) {
1482: $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]));
1483: },
1484: 165 => static function ($self, $stackPos) {
1485: $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]));
1486: },
1487: 166 => static function ($self, $stackPos) {
1488: $self->semValue = new Stmt\Break_($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]));
1489: },
1490: 167 => static function ($self, $stackPos) {
1491: $self->semValue = new Stmt\Continue_($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]));
1492: },
1493: 168 => static function ($self, $stackPos) {
1494: $self->semValue = new Stmt\Return_($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]));
1495: },
1496: 169 => static function ($self, $stackPos) {
1497: $self->semValue = new Stmt\Global_($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]));
1498: },
1499: 170 => static function ($self, $stackPos) {
1500: $self->semValue = new Stmt\Static_($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]));
1501: },
1502: 171 => static function ($self, $stackPos) {
1503: $self->semValue = new Stmt\Echo_($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]));
1504: },
1505: 172 => static function ($self, $stackPos) {
1506:
1507: $self->semValue = new Stmt\InlineHTML($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1508: $self->semValue->setAttribute('hasLeadingNewline', $self->inlineHtmlHasLeadingNewline($stackPos-(1-1)));
1509:
1510: },
1511: 173 => static function ($self, $stackPos) {
1512: $self->semValue = new Stmt\Expression($self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
1513: },
1514: 174 => static function ($self, $stackPos) {
1515: $self->semValue = new Stmt\Unset_($self->semStack[$stackPos-(5-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos]));
1516: },
1517: 175 => static function ($self, $stackPos) {
1518: $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]));
1519: },
1520: 176 => static function ($self, $stackPos) {
1521: $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]));
1522: },
1523: 177 => static function ($self, $stackPos) {
1524: $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]));
1525: },
1526: 178 => static function ($self, $stackPos) {
1527: $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]));
1528: },
1529: 179 => static function ($self, $stackPos) {
1530: $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);
1531: },
1532: 180 => static function ($self, $stackPos) {
1533: $self->semValue = new Stmt\Goto_($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]));
1534: },
1535: 181 => static function ($self, $stackPos) {
1536: $self->semValue = new Stmt\Label($self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
1537: },
1538: 182 => static function ($self, $stackPos) {
1539: $self->semValue = null; /* means: no statement */
1540: },
1541: 183 => null,
1542: 184 => static function ($self, $stackPos) {
1543: $self->semValue = $self->maybeCreateNop($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]);
1544: },
1545: 185 => static function ($self, $stackPos) {
1546: 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)]]; };
1547: },
1548: 186 => static function ($self, $stackPos) {
1549: $self->semValue = array();
1550: },
1551: 187 => static function ($self, $stackPos) {
1552: $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)];
1553: },
1554: 188 => static function ($self, $stackPos) {
1555: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1556: },
1557: 189 => static function ($self, $stackPos) {
1558: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1559: },
1560: 190 => static function ($self, $stackPos) {
1561: $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]));
1562: },
1563: 191 => static function ($self, $stackPos) {
1564: $self->semValue = null;
1565: },
1566: 192 => static function ($self, $stackPos) {
1567: $self->semValue = new Stmt\Finally_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]));
1568: },
1569: 193 => null,
1570: 194 => static function ($self, $stackPos) {
1571: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1572: },
1573: 195 => static function ($self, $stackPos) {
1574: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1575: },
1576: 196 => static function ($self, $stackPos) {
1577: $self->semValue = false;
1578: },
1579: 197 => static function ($self, $stackPos) {
1580: $self->semValue = true;
1581: },
1582: 198 => static function ($self, $stackPos) {
1583: $self->semValue = false;
1584: },
1585: 199 => static function ($self, $stackPos) {
1586: $self->semValue = true;
1587: },
1588: 200 => static function ($self, $stackPos) {
1589: $self->semValue = false;
1590: },
1591: 201 => static function ($self, $stackPos) {
1592: $self->semValue = true;
1593: },
1594: 202 => static function ($self, $stackPos) {
1595: $self->semValue = $self->semStack[$stackPos-(3-2)];
1596: },
1597: 203 => static function ($self, $stackPos) {
1598: $self->semValue = [];
1599: },
1600: 204 => null,
1601: 205 => static function ($self, $stackPos) {
1602: $self->semValue = new Node\Identifier($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1603: },
1604: 206 => static function ($self, $stackPos) {
1605: $self->semValue = new Node\Identifier($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1606: },
1607: 207 => static function ($self, $stackPos) {
1608: $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]));
1609: },
1610: 208 => static function ($self, $stackPos) {
1611: $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]));
1612: },
1613: 209 => static function ($self, $stackPos) {
1614: $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]));
1615: $self->checkClass($self->semValue, $stackPos-(7-2));
1616: },
1617: 210 => static function ($self, $stackPos) {
1618: $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]));
1619: $self->checkClass($self->semValue, $stackPos-(8-3));
1620: },
1621: 211 => static function ($self, $stackPos) {
1622: $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]));
1623: $self->checkInterface($self->semValue, $stackPos-(7-3));
1624: },
1625: 212 => static function ($self, $stackPos) {
1626: $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]));
1627: },
1628: 213 => static function ($self, $stackPos) {
1629: $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]));
1630: $self->checkEnum($self->semValue, $stackPos-(8-3));
1631: },
1632: 214 => static function ($self, $stackPos) {
1633: $self->semValue = null;
1634: },
1635: 215 => static function ($self, $stackPos) {
1636: $self->semValue = $self->semStack[$stackPos-(2-2)];
1637: },
1638: 216 => static function ($self, $stackPos) {
1639: $self->semValue = null;
1640: },
1641: 217 => static function ($self, $stackPos) {
1642: $self->semValue = $self->semStack[$stackPos-(2-2)];
1643: },
1644: 218 => static function ($self, $stackPos) {
1645: $self->semValue = 0;
1646: },
1647: 219 => null,
1648: 220 => null,
1649: 221 => static function ($self, $stackPos) {
1650: $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)];
1651: },
1652: 222 => static function ($self, $stackPos) {
1653: $self->semValue = Modifiers::ABSTRACT;
1654: },
1655: 223 => static function ($self, $stackPos) {
1656: $self->semValue = Modifiers::FINAL;
1657: },
1658: 224 => static function ($self, $stackPos) {
1659: $self->semValue = Modifiers::READONLY;
1660: },
1661: 225 => static function ($self, $stackPos) {
1662: $self->semValue = null;
1663: },
1664: 226 => static function ($self, $stackPos) {
1665: $self->semValue = $self->semStack[$stackPos-(2-2)];
1666: },
1667: 227 => static function ($self, $stackPos) {
1668: $self->semValue = array();
1669: },
1670: 228 => static function ($self, $stackPos) {
1671: $self->semValue = $self->semStack[$stackPos-(2-2)];
1672: },
1673: 229 => static function ($self, $stackPos) {
1674: $self->semValue = array();
1675: },
1676: 230 => static function ($self, $stackPos) {
1677: $self->semValue = $self->semStack[$stackPos-(2-2)];
1678: },
1679: 231 => null,
1680: 232 => static function ($self, $stackPos) {
1681: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1682: },
1683: 233 => static function ($self, $stackPos) {
1684: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1685: },
1686: 234 => null,
1687: 235 => static function ($self, $stackPos) {
1688: $self->semValue = $self->semStack[$stackPos-(4-2)];
1689: },
1690: 236 => null,
1691: 237 => static function ($self, $stackPos) {
1692: $self->semValue = $self->semStack[$stackPos-(4-2)];
1693: },
1694: 238 => static function ($self, $stackPos) {
1695: 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)]]; };
1696: },
1697: 239 => static function ($self, $stackPos) {
1698: $self->semValue = null;
1699: },
1700: 240 => static function ($self, $stackPos) {
1701: $self->semValue = $self->semStack[$stackPos-(4-2)];
1702: },
1703: 241 => null,
1704: 242 => static function ($self, $stackPos) {
1705: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1706: },
1707: 243 => static function ($self, $stackPos) {
1708: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1709: },
1710: 244 => static function ($self, $stackPos) {
1711: $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]));
1712: },
1713: 245 => static function ($self, $stackPos) {
1714: $self->semValue = $self->semStack[$stackPos-(3-2)];
1715: },
1716: 246 => static function ($self, $stackPos) {
1717: $self->semValue = $self->semStack[$stackPos-(4-3)];
1718: },
1719: 247 => static function ($self, $stackPos) {
1720: $self->semValue = $self->semStack[$stackPos-(4-2)];
1721: },
1722: 248 => static function ($self, $stackPos) {
1723: $self->semValue = $self->semStack[$stackPos-(5-3)];
1724: },
1725: 249 => static function ($self, $stackPos) {
1726: $self->semValue = array();
1727: },
1728: 250 => static function ($self, $stackPos) {
1729: $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)];
1730: },
1731: 251 => static function ($self, $stackPos) {
1732: $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]));
1733: },
1734: 252 => static function ($self, $stackPos) {
1735: $self->semValue = new Stmt\Case_(null, $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]));
1736: },
1737: 253 => null,
1738: 254 => null,
1739: 255 => static function ($self, $stackPos) {
1740: $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]));
1741: },
1742: 256 => static function ($self, $stackPos) {
1743: $self->semValue = [];
1744: },
1745: 257 => null,
1746: 258 => static function ($self, $stackPos) {
1747: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1748: },
1749: 259 => static function ($self, $stackPos) {
1750: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1751: },
1752: 260 => static function ($self, $stackPos) {
1753: $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]));
1754: },
1755: 261 => static function ($self, $stackPos) {
1756: $self->semValue = new Node\MatchArm(null, $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]));
1757: },
1758: 262 => static function ($self, $stackPos) {
1759: $self->semValue = $self->semStack[$stackPos-(1-1)];
1760: },
1761: 263 => static function ($self, $stackPos) {
1762: $self->semValue = $self->semStack[$stackPos-(4-2)];
1763: },
1764: 264 => static function ($self, $stackPos) {
1765: $self->semValue = array();
1766: },
1767: 265 => static function ($self, $stackPos) {
1768: $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)];
1769: },
1770: 266 => static function ($self, $stackPos) {
1771: $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]));
1772: },
1773: 267 => static function ($self, $stackPos) {
1774: $self->semValue = array();
1775: },
1776: 268 => static function ($self, $stackPos) {
1777: $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)];
1778: },
1779: 269 => static function ($self, $stackPos) {
1780: $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);
1781: },
1782: 270 => static function ($self, $stackPos) {
1783: $self->semValue = null;
1784: },
1785: 271 => static function ($self, $stackPos) {
1786: $self->semValue = new Stmt\Else_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
1787: },
1788: 272 => static function ($self, $stackPos) {
1789: $self->semValue = null;
1790: },
1791: 273 => static function ($self, $stackPos) {
1792: $self->semValue = new Stmt\Else_($self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); $self->fixupAlternativeElse($self->semValue);
1793: },
1794: 274 => static function ($self, $stackPos) {
1795: $self->semValue = array($self->semStack[$stackPos-(1-1)], false);
1796: },
1797: 275 => static function ($self, $stackPos) {
1798: $self->semValue = array($self->semStack[$stackPos-(2-2)], true);
1799: },
1800: 276 => static function ($self, $stackPos) {
1801: $self->semValue = array($self->semStack[$stackPos-(1-1)], false);
1802: },
1803: 277 => static function ($self, $stackPos) {
1804: $self->semValue = array($self->fixupArrayDestructuring($self->semStack[$stackPos-(1-1)]), false);
1805: },
1806: 278 => null,
1807: 279 => static function ($self, $stackPos) {
1808: $self->semValue = array();
1809: },
1810: 280 => static function ($self, $stackPos) {
1811: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1812: },
1813: 281 => static function ($self, $stackPos) {
1814: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1815: },
1816: 282 => static function ($self, $stackPos) {
1817: $self->semValue = 0;
1818: },
1819: 283 => static function ($self, $stackPos) {
1820: $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)];
1821: },
1822: 284 => static function ($self, $stackPos) {
1823: $self->semValue = Modifiers::PUBLIC;
1824: },
1825: 285 => static function ($self, $stackPos) {
1826: $self->semValue = Modifiers::PROTECTED;
1827: },
1828: 286 => static function ($self, $stackPos) {
1829: $self->semValue = Modifiers::PRIVATE;
1830: },
1831: 287 => static function ($self, $stackPos) {
1832: $self->semValue = Modifiers::PUBLIC_SET;
1833: },
1834: 288 => static function ($self, $stackPos) {
1835: $self->semValue = Modifiers::PROTECTED_SET;
1836: },
1837: 289 => static function ($self, $stackPos) {
1838: $self->semValue = Modifiers::PRIVATE_SET;
1839: },
1840: 290 => static function ($self, $stackPos) {
1841: $self->semValue = Modifiers::READONLY;
1842: },
1843: 291 => static function ($self, $stackPos) {
1844: $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)]);
1845: $self->checkParam($self->semValue);
1846: $self->addPropertyNameToHooks($self->semValue);
1847: },
1848: 292 => static function ($self, $stackPos) {
1849: $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)]);
1850: $self->checkParam($self->semValue);
1851: $self->addPropertyNameToHooks($self->semValue);
1852: },
1853: 293 => static function ($self, $stackPos) {
1854: $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)]);
1855: },
1856: 294 => null,
1857: 295 => static function ($self, $stackPos) {
1858: $self->semValue = new Node\NullableType($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
1859: },
1860: 296 => static function ($self, $stackPos) {
1861: $self->semValue = new Node\UnionType($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1862: },
1863: 297 => null,
1864: 298 => null,
1865: 299 => static function ($self, $stackPos) {
1866: $self->semValue = new Node\Name('static', $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1867: },
1868: 300 => static function ($self, $stackPos) {
1869: $self->semValue = $self->handleBuiltinTypes($self->semStack[$stackPos-(1-1)]);
1870: },
1871: 301 => static function ($self, $stackPos) {
1872: $self->semValue = new Node\Identifier('array', $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1873: },
1874: 302 => static function ($self, $stackPos) {
1875: $self->semValue = new Node\Identifier('callable', $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1876: },
1877: 303 => null,
1878: 304 => static function ($self, $stackPos) {
1879: $self->semValue = $self->semStack[$stackPos-(3-2)];
1880: },
1881: 305 => static function ($self, $stackPos) {
1882: $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]);
1883: },
1884: 306 => static function ($self, $stackPos) {
1885: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1886: },
1887: 307 => null,
1888: 308 => static function ($self, $stackPos) {
1889: $self->semValue = $self->semStack[$stackPos-(3-2)];
1890: },
1891: 309 => static function ($self, $stackPos) {
1892: $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]);
1893: },
1894: 310 => static function ($self, $stackPos) {
1895: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1896: },
1897: 311 => static function ($self, $stackPos) {
1898: $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]);
1899: },
1900: 312 => static function ($self, $stackPos) {
1901: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1902: },
1903: 313 => static function ($self, $stackPos) {
1904: $self->semValue = new Node\IntersectionType($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1905: },
1906: 314 => static function ($self, $stackPos) {
1907: $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]);
1908: },
1909: 315 => static function ($self, $stackPos) {
1910: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1911: },
1912: 316 => static function ($self, $stackPos) {
1913: $self->semValue = new Node\IntersectionType($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1914: },
1915: 317 => null,
1916: 318 => static function ($self, $stackPos) {
1917: $self->semValue = new Node\NullableType($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
1918: },
1919: 319 => static function ($self, $stackPos) {
1920: $self->semValue = new Node\UnionType($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1921: },
1922: 320 => null,
1923: 321 => static function ($self, $stackPos) {
1924: $self->semValue = null;
1925: },
1926: 322 => null,
1927: 323 => static function ($self, $stackPos) {
1928: $self->semValue = null;
1929: },
1930: 324 => static function ($self, $stackPos) {
1931: $self->semValue = $self->semStack[$stackPos-(2-2)];
1932: },
1933: 325 => static function ($self, $stackPos) {
1934: $self->semValue = null;
1935: },
1936: 326 => static function ($self, $stackPos) {
1937: $self->semValue = array();
1938: },
1939: 327 => static function ($self, $stackPos) {
1940: $self->semValue = $self->semStack[$stackPos-(4-2)];
1941: },
1942: 328 => static function ($self, $stackPos) {
1943: $self->semValue = array($self->semStack[$stackPos-(3-2)]);
1944: },
1945: 329 => static function ($self, $stackPos) {
1946: $self->semValue = new Node\VariadicPlaceholder($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1947: },
1948: 330 => static function ($self, $stackPos) {
1949: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1950: },
1951: 331 => static function ($self, $stackPos) {
1952: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1953: },
1954: 332 => static function ($self, $stackPos) {
1955: $self->semValue = new Node\Arg($self->semStack[$stackPos-(1-1)], false, false, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1956: },
1957: 333 => static function ($self, $stackPos) {
1958: $self->semValue = new Node\Arg($self->semStack[$stackPos-(2-2)], true, false, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
1959: },
1960: 334 => static function ($self, $stackPos) {
1961: $self->semValue = new Node\Arg($self->semStack[$stackPos-(2-2)], false, true, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
1962: },
1963: 335 => static function ($self, $stackPos) {
1964: $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)]);
1965: },
1966: 336 => null,
1967: 337 => static function ($self, $stackPos) {
1968: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1969: },
1970: 338 => static function ($self, $stackPos) {
1971: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1972: },
1973: 339 => null,
1974: 340 => null,
1975: 341 => static function ($self, $stackPos) {
1976: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
1977: },
1978: 342 => static function ($self, $stackPos) {
1979: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
1980: },
1981: 343 => static function ($self, $stackPos) {
1982: $self->semValue = new Node\StaticVar($self->semStack[$stackPos-(1-1)], null, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
1983: },
1984: 344 => static function ($self, $stackPos) {
1985: $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]));
1986: },
1987: 345 => static function ($self, $stackPos) {
1988: 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)]; }
1989: },
1990: 346 => static function ($self, $stackPos) {
1991: $self->semValue = array();
1992: },
1993: 347 => static function ($self, $stackPos) {
1994: $nop = $self->maybeCreateZeroLengthNop($self->tokenPos);;
1995: if ($nop !== null) { $self->semStack[$stackPos-(1-1)][] = $nop; } $self->semValue = $self->semStack[$stackPos-(1-1)];
1996: },
1997: 348 => static function ($self, $stackPos) {
1998: $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)]);
1999: },
2000: 349 => static function ($self, $stackPos) {
2001: $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)]);
2002: $self->checkClassConst($self->semValue, $stackPos-(5-2));
2003: },
2004: 350 => static function ($self, $stackPos) {
2005: $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)]);
2006: $self->checkClassConst($self->semValue, $stackPos-(6-2));
2007: },
2008: 351 => static function ($self, $stackPos) {
2009: $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]));
2010: $self->checkClassMethod($self->semValue, $stackPos-(10-2));
2011: },
2012: 352 => static function ($self, $stackPos) {
2013: $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]));
2014: },
2015: 353 => static function ($self, $stackPos) {
2016: $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]));
2017: },
2018: 354 => static function ($self, $stackPos) {
2019: $self->semValue = null; /* will be skipped */
2020: },
2021: 355 => static function ($self, $stackPos) {
2022: $self->semValue = array();
2023: },
2024: 356 => static function ($self, $stackPos) {
2025: $self->semValue = $self->semStack[$stackPos-(3-2)];
2026: },
2027: 357 => static function ($self, $stackPos) {
2028: $self->semValue = array();
2029: },
2030: 358 => static function ($self, $stackPos) {
2031: $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)];
2032: },
2033: 359 => static function ($self, $stackPos) {
2034: $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]));
2035: },
2036: 360 => static function ($self, $stackPos) {
2037: $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]));
2038: },
2039: 361 => static function ($self, $stackPos) {
2040: $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]));
2041: },
2042: 362 => static function ($self, $stackPos) {
2043: $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]));
2044: },
2045: 363 => static function ($self, $stackPos) {
2046: $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]));
2047: },
2048: 364 => static function ($self, $stackPos) {
2049: $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]);
2050: },
2051: 365 => null,
2052: 366 => static function ($self, $stackPos) {
2053: $self->semValue = array(null, $self->semStack[$stackPos-(1-1)]);
2054: },
2055: 367 => static function ($self, $stackPos) {
2056: $self->semValue = null;
2057: },
2058: 368 => null,
2059: 369 => null,
2060: 370 => static function ($self, $stackPos) {
2061: $self->semValue = 0;
2062: },
2063: 371 => static function ($self, $stackPos) {
2064: $self->semValue = 0;
2065: },
2066: 372 => null,
2067: 373 => null,
2068: 374 => static function ($self, $stackPos) {
2069: $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)];
2070: },
2071: 375 => static function ($self, $stackPos) {
2072: $self->semValue = Modifiers::PUBLIC;
2073: },
2074: 376 => static function ($self, $stackPos) {
2075: $self->semValue = Modifiers::PROTECTED;
2076: },
2077: 377 => static function ($self, $stackPos) {
2078: $self->semValue = Modifiers::PRIVATE;
2079: },
2080: 378 => static function ($self, $stackPos) {
2081: $self->semValue = Modifiers::PUBLIC_SET;
2082: },
2083: 379 => static function ($self, $stackPos) {
2084: $self->semValue = Modifiers::PROTECTED_SET;
2085: },
2086: 380 => static function ($self, $stackPos) {
2087: $self->semValue = Modifiers::PRIVATE_SET;
2088: },
2089: 381 => static function ($self, $stackPos) {
2090: $self->semValue = Modifiers::STATIC;
2091: },
2092: 382 => static function ($self, $stackPos) {
2093: $self->semValue = Modifiers::ABSTRACT;
2094: },
2095: 383 => static function ($self, $stackPos) {
2096: $self->semValue = Modifiers::FINAL;
2097: },
2098: 384 => static function ($self, $stackPos) {
2099: $self->semValue = Modifiers::READONLY;
2100: },
2101: 385 => null,
2102: 386 => static function ($self, $stackPos) {
2103: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
2104: },
2105: 387 => static function ($self, $stackPos) {
2106: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
2107: },
2108: 388 => static function ($self, $stackPos) {
2109: $self->semValue = new Node\VarLikeIdentifier(substr($self->semStack[$stackPos-(1-1)], 1), $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2110: },
2111: 389 => static function ($self, $stackPos) {
2112: $self->semValue = new Node\PropertyItem($self->semStack[$stackPos-(1-1)], null, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2113: },
2114: 390 => static function ($self, $stackPos) {
2115: $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]));
2116: },
2117: 391 => static function ($self, $stackPos) {
2118: $self->semValue = [];
2119: },
2120: 392 => static function ($self, $stackPos) {
2121: $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)];
2122: },
2123: 393 => static function ($self, $stackPos) {
2124: $self->semValue = [];
2125: },
2126: 394 => static function ($self, $stackPos) {
2127: $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]));
2128: $self->checkPropertyHook($self->semValue, null);
2129: },
2130: 395 => static function ($self, $stackPos) {
2131: $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]));
2132: $self->checkPropertyHook($self->semValue, $stackPos-(8-5));
2133: },
2134: 396 => static function ($self, $stackPos) {
2135: $self->semValue = null;
2136: },
2137: 397 => static function ($self, $stackPos) {
2138: $self->semValue = $self->semStack[$stackPos-(3-2)];
2139: },
2140: 398 => static function ($self, $stackPos) {
2141: $self->semValue = $self->semStack[$stackPos-(3-2)];
2142: },
2143: 399 => static function ($self, $stackPos) {
2144: $self->semValue = 0;
2145: },
2146: 400 => static function ($self, $stackPos) {
2147: $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)];
2148: },
2149: 401 => null,
2150: 402 => null,
2151: 403 => static function ($self, $stackPos) {
2152: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
2153: },
2154: 404 => static function ($self, $stackPos) {
2155: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
2156: },
2157: 405 => static function ($self, $stackPos) {
2158: $self->semValue = array();
2159: },
2160: 406 => null,
2161: 407 => null,
2162: 408 => static function ($self, $stackPos) {
2163: $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]));
2164: },
2165: 409 => static function ($self, $stackPos) {
2166: $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]));
2167: },
2168: 410 => static function ($self, $stackPos) {
2169: $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]));
2170: },
2171: 411 => static function ($self, $stackPos) {
2172: $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]));
2173: },
2174: 412 => static function ($self, $stackPos) {
2175: $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]));
2176: if (!$self->phpVersion->allowsAssignNewByReference()) {
2177: $self->emitError(new Error('Cannot assign new by reference', $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])));
2178: }
2179:
2180: },
2181: 413 => null,
2182: 414 => null,
2183: 415 => static function ($self, $stackPos) {
2184: $self->semValue = new Expr\Clone_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2185: },
2186: 416 => static function ($self, $stackPos) {
2187: $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]));
2188: },
2189: 417 => static function ($self, $stackPos) {
2190: $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]));
2191: },
2192: 418 => static function ($self, $stackPos) {
2193: $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]));
2194: },
2195: 419 => static function ($self, $stackPos) {
2196: $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]));
2197: },
2198: 420 => static function ($self, $stackPos) {
2199: $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]));
2200: },
2201: 421 => static function ($self, $stackPos) {
2202: $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]));
2203: },
2204: 422 => static function ($self, $stackPos) {
2205: $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]));
2206: },
2207: 423 => static function ($self, $stackPos) {
2208: $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]));
2209: },
2210: 424 => static function ($self, $stackPos) {
2211: $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]));
2212: },
2213: 425 => static function ($self, $stackPos) {
2214: $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]));
2215: },
2216: 426 => static function ($self, $stackPos) {
2217: $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]));
2218: },
2219: 427 => static function ($self, $stackPos) {
2220: $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]));
2221: },
2222: 428 => static function ($self, $stackPos) {
2223: $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]));
2224: },
2225: 429 => static function ($self, $stackPos) {
2226: $self->semValue = new Expr\PostInc($self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2227: },
2228: 430 => static function ($self, $stackPos) {
2229: $self->semValue = new Expr\PreInc($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2230: },
2231: 431 => static function ($self, $stackPos) {
2232: $self->semValue = new Expr\PostDec($self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2233: },
2234: 432 => static function ($self, $stackPos) {
2235: $self->semValue = new Expr\PreDec($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2236: },
2237: 433 => static function ($self, $stackPos) {
2238: $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]));
2239: },
2240: 434 => static function ($self, $stackPos) {
2241: $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]));
2242: },
2243: 435 => static function ($self, $stackPos) {
2244: $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]));
2245: },
2246: 436 => static function ($self, $stackPos) {
2247: $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]));
2248: },
2249: 437 => static function ($self, $stackPos) {
2250: $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]));
2251: },
2252: 438 => static function ($self, $stackPos) {
2253: $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]));
2254: },
2255: 439 => static function ($self, $stackPos) {
2256: $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]));
2257: },
2258: 440 => static function ($self, $stackPos) {
2259: $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]));
2260: },
2261: 441 => static function ($self, $stackPos) {
2262: $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]));
2263: },
2264: 442 => static function ($self, $stackPos) {
2265: $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]));
2266: },
2267: 443 => static function ($self, $stackPos) {
2268: $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]));
2269: },
2270: 444 => static function ($self, $stackPos) {
2271: $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]));
2272: },
2273: 445 => static function ($self, $stackPos) {
2274: $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]));
2275: },
2276: 446 => static function ($self, $stackPos) {
2277: $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]));
2278: },
2279: 447 => static function ($self, $stackPos) {
2280: $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]));
2281: },
2282: 448 => static function ($self, $stackPos) {
2283: $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]));
2284: },
2285: 449 => static function ($self, $stackPos) {
2286: $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]));
2287: },
2288: 450 => static function ($self, $stackPos) {
2289: $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]));
2290: },
2291: 451 => static function ($self, $stackPos) {
2292: $self->semValue = new Expr\UnaryPlus($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2293: },
2294: 452 => static function ($self, $stackPos) {
2295: $self->semValue = new Expr\UnaryMinus($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2296: },
2297: 453 => static function ($self, $stackPos) {
2298: $self->semValue = new Expr\BooleanNot($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2299: },
2300: 454 => static function ($self, $stackPos) {
2301: $self->semValue = new Expr\BitwiseNot($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2302: },
2303: 455 => static function ($self, $stackPos) {
2304: $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]));
2305: },
2306: 456 => static function ($self, $stackPos) {
2307: $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]));
2308: },
2309: 457 => static function ($self, $stackPos) {
2310: $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]));
2311: },
2312: 458 => static function ($self, $stackPos) {
2313: $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]));
2314: },
2315: 459 => static function ($self, $stackPos) {
2316: $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]));
2317: },
2318: 460 => static function ($self, $stackPos) {
2319: $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]));
2320: },
2321: 461 => static function ($self, $stackPos) {
2322: $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]));
2323: },
2324: 462 => static function ($self, $stackPos) {
2325: $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]));
2326: },
2327: 463 => static function ($self, $stackPos) {
2328: $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]));
2329: },
2330: 464 => static function ($self, $stackPos) {
2331: $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]));
2332: },
2333: 465 => static function ($self, $stackPos) {
2334: $self->semValue = $self->semStack[$stackPos-(3-2)];
2335: },
2336: 466 => static function ($self, $stackPos) {
2337: $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]));
2338: },
2339: 467 => static function ($self, $stackPos) {
2340: $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]));
2341: },
2342: 468 => static function ($self, $stackPos) {
2343: $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]));
2344: },
2345: 469 => static function ($self, $stackPos) {
2346: $self->semValue = new Expr\Isset_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]));
2347: },
2348: 470 => static function ($self, $stackPos) {
2349: $self->semValue = new Expr\Empty_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]));
2350: },
2351: 471 => static function ($self, $stackPos) {
2352: $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2353: },
2354: 472 => static function ($self, $stackPos) {
2355: $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]));
2356: },
2357: 473 => static function ($self, $stackPos) {
2358: $self->semValue = new Expr\Eval_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]));
2359: },
2360: 474 => static function ($self, $stackPos) {
2361: $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2362: },
2363: 475 => static function ($self, $stackPos) {
2364: $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]));
2365: },
2366: 476 => static function ($self, $stackPos) {
2367: $self->semValue = new Expr\Cast\Int_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2368: },
2369: 477 => static function ($self, $stackPos) {
2370: $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]);
2371: $attrs['kind'] = $self->getFloatCastKind($self->semStack[$stackPos-(2-1)]);
2372: $self->semValue = new Expr\Cast\Double($self->semStack[$stackPos-(2-2)], $attrs);
2373: },
2374: 478 => static function ($self, $stackPos) {
2375: $self->semValue = new Expr\Cast\String_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2376: },
2377: 479 => static function ($self, $stackPos) {
2378: $self->semValue = new Expr\Cast\Array_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2379: },
2380: 480 => static function ($self, $stackPos) {
2381: $self->semValue = new Expr\Cast\Object_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2382: },
2383: 481 => static function ($self, $stackPos) {
2384: $self->semValue = new Expr\Cast\Bool_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2385: },
2386: 482 => static function ($self, $stackPos) {
2387: $self->semValue = new Expr\Cast\Unset_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2388: },
2389: 483 => static function ($self, $stackPos) {
2390: $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]));
2391: },
2392: 484 => static function ($self, $stackPos) {
2393: $self->semValue = new Expr\ErrorSuppress($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2394: },
2395: 485 => null,
2396: 486 => static function ($self, $stackPos) {
2397: $self->semValue = new Expr\ShellExec($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]));
2398: },
2399: 487 => static function ($self, $stackPos) {
2400: $self->semValue = new Expr\Print_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2401: },
2402: 488 => static function ($self, $stackPos) {
2403: $self->semValue = new Expr\Yield_(null, null, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2404: },
2405: 489 => static function ($self, $stackPos) {
2406: $self->semValue = new Expr\Yield_($self->semStack[$stackPos-(2-2)], null, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2407: },
2408: 490 => static function ($self, $stackPos) {
2409: $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]));
2410: },
2411: 491 => static function ($self, $stackPos) {
2412: $self->semValue = new Expr\YieldFrom($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2413: },
2414: 492 => static function ($self, $stackPos) {
2415: $self->semValue = new Expr\Throw_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2416: },
2417: 493 => static function ($self, $stackPos) {
2418: $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]));
2419: },
2420: 494 => static function ($self, $stackPos) {
2421: $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]));
2422: },
2423: 495 => static function ($self, $stackPos) {
2424: $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]));
2425: },
2426: 496 => static function ($self, $stackPos) {
2427: $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]));
2428: },
2429: 497 => static function ($self, $stackPos) {
2430: $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]));
2431: },
2432: 498 => static function ($self, $stackPos) {
2433: $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]));
2434: },
2435: 499 => static function ($self, $stackPos) {
2436: $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]));
2437: },
2438: 500 => static function ($self, $stackPos) {
2439: $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]));
2440: },
2441: 501 => static function ($self, $stackPos) {
2442: $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)]);
2443: $self->checkClass($self->semValue[0], -1);
2444: },
2445: 502 => static function ($self, $stackPos) {
2446: $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]));
2447: },
2448: 503 => static function ($self, $stackPos) {
2449: 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]));
2450: },
2451: 504 => static function ($self, $stackPos) {
2452: $self->semValue = new Expr\New_($self->semStack[$stackPos-(2-2)], [], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2453: },
2454: 505 => null,
2455: 506 => null,
2456: 507 => static function ($self, $stackPos) {
2457: $self->semValue = array();
2458: },
2459: 508 => static function ($self, $stackPos) {
2460: $self->semValue = $self->semStack[$stackPos-(4-3)];
2461: },
2462: 509 => null,
2463: 510 => static function ($self, $stackPos) {
2464: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
2465: },
2466: 511 => static function ($self, $stackPos) {
2467: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
2468: },
2469: 512 => static function ($self, $stackPos) {
2470: $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]));
2471: },
2472: 513 => static function ($self, $stackPos) {
2473: $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2474: },
2475: 514 => static function ($self, $stackPos) {
2476: $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]));
2477: },
2478: 515 => static function ($self, $stackPos) {
2479: $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]));
2480: },
2481: 516 => static function ($self, $stackPos) {
2482: $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]));
2483: },
2484: 517 => static function ($self, $stackPos) {
2485: $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]));
2486: },
2487: 518 => static function ($self, $stackPos) {
2488: $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2489: },
2490: 519 => null,
2491: 520 => static function ($self, $stackPos) {
2492: $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2493: },
2494: 521 => static function ($self, $stackPos) {
2495: $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2496: },
2497: 522 => static function ($self, $stackPos) {
2498: $self->semValue = new Name\FullyQualified(substr($self->semStack[$stackPos-(1-1)], 1), $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2499: },
2500: 523 => static function ($self, $stackPos) {
2501: $self->semValue = new Name\Relative(substr($self->semStack[$stackPos-(1-1)], 10), $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2502: },
2503: 524 => null,
2504: 525 => null,
2505: 526 => static function ($self, $stackPos) {
2506: $self->semValue = $self->semStack[$stackPos-(3-2)];
2507: },
2508: 527 => static function ($self, $stackPos) {
2509: $self->semValue = new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); $self->errorState = 2;
2510: },
2511: 528 => null,
2512: 529 => null,
2513: 530 => static function ($self, $stackPos) {
2514: $self->semValue = array();
2515: },
2516: 531 => static function ($self, $stackPos) {
2517: $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()); } };
2518: },
2519: 532 => static function ($self, $stackPos) {
2520: 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)];
2521: },
2522: 533 => static function ($self, $stackPos) {
2523: $self->semValue = array();
2524: },
2525: 534 => null,
2526: 535 => static function ($self, $stackPos) {
2527: $self->semValue = new Expr\ConstFetch($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2528: },
2529: 536 => static function ($self, $stackPos) {
2530: $self->semValue = new Scalar\MagicConst\Line($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2531: },
2532: 537 => static function ($self, $stackPos) {
2533: $self->semValue = new Scalar\MagicConst\File($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2534: },
2535: 538 => static function ($self, $stackPos) {
2536: $self->semValue = new Scalar\MagicConst\Dir($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2537: },
2538: 539 => static function ($self, $stackPos) {
2539: $self->semValue = new Scalar\MagicConst\Class_($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2540: },
2541: 540 => static function ($self, $stackPos) {
2542: $self->semValue = new Scalar\MagicConst\Trait_($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2543: },
2544: 541 => static function ($self, $stackPos) {
2545: $self->semValue = new Scalar\MagicConst\Method($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2546: },
2547: 542 => static function ($self, $stackPos) {
2548: $self->semValue = new Scalar\MagicConst\Function_($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2549: },
2550: 543 => static function ($self, $stackPos) {
2551: $self->semValue = new Scalar\MagicConst\Namespace_($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2552: },
2553: 544 => static function ($self, $stackPos) {
2554: $self->semValue = new Scalar\MagicConst\Property($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2555: },
2556: 545 => static function ($self, $stackPos) {
2557: $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]));
2558: },
2559: 546 => static function ($self, $stackPos) {
2560: $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]));
2561: },
2562: 547 => static function ($self, $stackPos) {
2563: $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;
2564: },
2565: 548 => static function ($self, $stackPos) {
2566: $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]); $attrs['kind'] = Expr\Array_::KIND_SHORT;
2567: $self->semValue = new Expr\Array_($self->semStack[$stackPos-(3-2)], $attrs);
2568: },
2569: 549 => static function ($self, $stackPos) {
2570: $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]); $attrs['kind'] = Expr\Array_::KIND_LONG;
2571: $self->semValue = new Expr\Array_($self->semStack[$stackPos-(4-3)], $attrs);
2572: $self->createdArrays->attach($self->semValue);
2573: },
2574: 550 => static function ($self, $stackPos) {
2575: $self->semValue = $self->semStack[$stackPos-(1-1)]; $self->createdArrays->attach($self->semValue);
2576: },
2577: 551 => static function ($self, $stackPos) {
2578: $self->semValue = Scalar\String_::fromString($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]), $self->phpVersion->supportsUnicodeEscapes());
2579: },
2580: 552 => static function ($self, $stackPos) {
2581: $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]); $attrs['kind'] = Scalar\String_::KIND_DOUBLE_QUOTED;
2582: 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);
2583: },
2584: 553 => static function ($self, $stackPos) {
2585: $self->semValue = $self->parseLNumber($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]), $self->phpVersion->allowsInvalidOctals());
2586: },
2587: 554 => static function ($self, $stackPos) {
2588: $self->semValue = Scalar\Float_::fromString($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2589: },
2590: 555 => null,
2591: 556 => null,
2592: 557 => null,
2593: 558 => static function ($self, $stackPos) {
2594: $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);
2595: },
2596: 559 => static function ($self, $stackPos) {
2597: $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);
2598: },
2599: 560 => static function ($self, $stackPos) {
2600: $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);
2601: },
2602: 561 => static function ($self, $stackPos) {
2603: $self->semValue = null;
2604: },
2605: 562 => null,
2606: 563 => null,
2607: 564 => static function ($self, $stackPos) {
2608: $self->semValue = $self->semStack[$stackPos-(3-2)];
2609: },
2610: 565 => null,
2611: 566 => null,
2612: 567 => null,
2613: 568 => null,
2614: 569 => null,
2615: 570 => null,
2616: 571 => static function ($self, $stackPos) {
2617: $self->semValue = $self->semStack[$stackPos-(3-2)];
2618: },
2619: 572 => null,
2620: 573 => null,
2621: 574 => null,
2622: 575 => static function ($self, $stackPos) {
2623: $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]));
2624: },
2625: 576 => static function ($self, $stackPos) {
2626: $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]));
2627: },
2628: 577 => null,
2629: 578 => static function ($self, $stackPos) {
2630: $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]));
2631: },
2632: 579 => static function ($self, $stackPos) {
2633: $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]));
2634: },
2635: 580 => static function ($self, $stackPos) {
2636: $self->semValue = null;
2637: },
2638: 581 => null,
2639: 582 => null,
2640: 583 => null,
2641: 584 => static function ($self, $stackPos) {
2642: $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]));
2643: },
2644: 585 => static function ($self, $stackPos) {
2645: $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]));
2646: },
2647: 586 => null,
2648: 587 => static function ($self, $stackPos) {
2649: $self->semValue = new Expr\Variable($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]));
2650: },
2651: 588 => static function ($self, $stackPos) {
2652: $self->semValue = new Expr\Variable($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2653: },
2654: 589 => static function ($self, $stackPos) {
2655: $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;
2656: },
2657: 590 => static function ($self, $stackPos) {
2658: $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;
2659: },
2660: 591 => static function ($self, $stackPos) {
2661: $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]));
2662: },
2663: 592 => null,
2664: 593 => static function ($self, $stackPos) {
2665: $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]));
2666: },
2667: 594 => static function ($self, $stackPos) {
2668: $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]));
2669: },
2670: 595 => static function ($self, $stackPos) {
2671: $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]));
2672: },
2673: 596 => static function ($self, $stackPos) {
2674: $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]));
2675: },
2676: 597 => static function ($self, $stackPos) {
2677: $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]));
2678: },
2679: 598 => static function ($self, $stackPos) {
2680: $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]));
2681: },
2682: 599 => null,
2683: 600 => static function ($self, $stackPos) {
2684: $self->semValue = $self->semStack[$stackPos-(3-2)];
2685: },
2686: 601 => null,
2687: 602 => null,
2688: 603 => static function ($self, $stackPos) {
2689: $self->semValue = $self->semStack[$stackPos-(3-2)];
2690: },
2691: 604 => null,
2692: 605 => static function ($self, $stackPos) {
2693: $self->semValue = new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); $self->errorState = 2;
2694: },
2695: 606 => static function ($self, $stackPos) {
2696: $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);
2697: $self->postprocessList($self->semValue);
2698: },
2699: 607 => static function ($self, $stackPos) {
2700: $self->semValue = $self->semStack[$stackPos-(1-1)]; $end = count($self->semValue)-1; if ($self->semValue[$end]->value instanceof Expr\Error) array_pop($self->semValue);
2701: },
2702: 608 => null,
2703: 609 => static function ($self, $stackPos) {
2704: /* do nothing -- prevent default action of $$=$self->semStack[$1]. See $551. */
2705: },
2706: 610 => static function ($self, $stackPos) {
2707: $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)];
2708: },
2709: 611 => static function ($self, $stackPos) {
2710: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
2711: },
2712: 612 => static function ($self, $stackPos) {
2713: $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(1-1)], null, false, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2714: },
2715: 613 => static function ($self, $stackPos) {
2716: $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(2-2)], null, true, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2717: },
2718: 614 => static function ($self, $stackPos) {
2719: $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(1-1)], null, false, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2720: },
2721: 615 => static function ($self, $stackPos) {
2722: $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]));
2723: },
2724: 616 => static function ($self, $stackPos) {
2725: $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]));
2726: },
2727: 617 => static function ($self, $stackPos) {
2728: $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]));
2729: },
2730: 618 => static function ($self, $stackPos) {
2731: $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(2-2)], null, false, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]), true);
2732: },
2733: 619 => static function ($self, $stackPos) {
2734: /* Create an Error node now to remember the position. We'll later either report an error,
2735: or convert this into a null element, depending on whether this is a creation or destructuring context. */
2736: $attrs = $self->createEmptyElemAttributes($self->tokenPos);
2737: $self->semValue = new Node\ArrayItem(new Expr\Error($attrs), null, false, $attrs);
2738: },
2739: 620 => static function ($self, $stackPos) {
2740: $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)];
2741: },
2742: 621 => static function ($self, $stackPos) {
2743: $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)];
2744: },
2745: 622 => static function ($self, $stackPos) {
2746: $self->semValue = array($self->semStack[$stackPos-(1-1)]);
2747: },
2748: 623 => static function ($self, $stackPos) {
2749: $self->semValue = array($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)]);
2750: },
2751: 624 => static function ($self, $stackPos) {
2752: $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);
2753: },
2754: 625 => static function ($self, $stackPos) {
2755: $self->semValue = new Expr\Variable($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2756: },
2757: 626 => null,
2758: 627 => static function ($self, $stackPos) {
2759: $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]));
2760: },
2761: 628 => static function ($self, $stackPos) {
2762: $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]));
2763: },
2764: 629 => static function ($self, $stackPos) {
2765: $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]));
2766: },
2767: 630 => static function ($self, $stackPos) {
2768: $self->semValue = new Expr\Variable($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]));
2769: },
2770: 631 => static function ($self, $stackPos) {
2771: $self->semValue = new Expr\Variable($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]));
2772: },
2773: 632 => static function ($self, $stackPos) {
2774: $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]));
2775: },
2776: 633 => static function ($self, $stackPos) {
2777: $self->semValue = $self->semStack[$stackPos-(3-2)];
2778: },
2779: 634 => static function ($self, $stackPos) {
2780: $self->semValue = new Scalar\String_($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2781: },
2782: 635 => static function ($self, $stackPos) {
2783: $self->semValue = $self->parseNumString($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]));
2784: },
2785: 636 => static function ($self, $stackPos) {
2786: $self->semValue = $self->parseNumString('-' . $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]));
2787: },
2788: 637 => null,
2789: ];
2790: }
2791: }
2792: