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