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