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