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