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