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