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