From a63b495fe69a00484451f1f4ab9b26be89d4dd6c Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Thu, 23 Jul 2020 11:57:04 +0200 Subject: [PATCH] Migrate grammar to use PHP 8 T_NAME_* tokens This will break everything on PHP < 8. --- grammar/php5.y | 37 +- grammar/php7.y | 37 +- grammar/tokens.y | 3 + lib/PhpParser/Parser/Php5.php | 1799 ++++++++-------- lib/PhpParser/Parser/Php7.php | 1803 +++++++++-------- lib/PhpParser/Parser/Tokens.php | 3 + .../parser/stmt/namespace/groupUseErrors.test | 2 +- .../parser/stmt/namespace/invalidName.test | 2 +- 8 files changed, 1839 insertions(+), 1847 deletions(-) diff --git a/grammar/php5.y b/grammar/php5.y index c814ef4..c7d245d 100644 --- a/grammar/php5.y +++ b/grammar/php5.y @@ -49,13 +49,14 @@ reserved_non_modifiers_identifier: reserved_non_modifiers { $$ = Node\Identifier[$1]; } ; -namespace_name_parts: - T_STRING { init($1); } - | namespace_name_parts T_NS_SEPARATOR T_STRING { push($1, $3); } +namespace_name: + T_STRING { $$ = Name[$1]; } + | T_NAME_QUALIFIED { $$ = Name[$1]; } ; -namespace_name: - namespace_name_parts { $$ = Name[$1]; } +legacy_namespace_name: + namespace_name { $$ = $1; } + | T_NAME_FULLY_QUALIFIED { $$ = Name[substr($1, 1)]; } ; plain_variable: @@ -91,16 +92,11 @@ use_type: | T_CONST { $$ = Stmt\Use_::TYPE_CONSTANT; } ; -/* Using namespace_name_parts here to avoid s/r conflict on T_NS_SEPARATOR */ group_use_declaration: - T_USE use_type namespace_name_parts T_NS_SEPARATOR '{' unprefixed_use_declarations '}' - { $$ = Stmt\GroupUse[new Name($3, stackAttributes(#3)), $6, $2]; } - | T_USE use_type T_NS_SEPARATOR namespace_name_parts T_NS_SEPARATOR '{' unprefixed_use_declarations '}' - { $$ = Stmt\GroupUse[new Name($4, stackAttributes(#4)), $7, $2]; } - | T_USE namespace_name_parts T_NS_SEPARATOR '{' inline_use_declarations '}' - { $$ = Stmt\GroupUse[new Name($2, stackAttributes(#2)), $5, Stmt\Use_::TYPE_UNKNOWN]; } - | T_USE T_NS_SEPARATOR namespace_name_parts T_NS_SEPARATOR '{' inline_use_declarations '}' - { $$ = Stmt\GroupUse[new Name($3, stackAttributes(#3)), $6, Stmt\Use_::TYPE_UNKNOWN]; } + T_USE use_type legacy_namespace_name T_NS_SEPARATOR '{' unprefixed_use_declarations '}' + { $$ = Stmt\GroupUse[$3, $6, $2]; } + | T_USE legacy_namespace_name T_NS_SEPARATOR '{' inline_use_declarations '}' + { $$ = Stmt\GroupUse[$2, $5, Stmt\Use_::TYPE_UNKNOWN]; } ; unprefixed_use_declarations: @@ -127,8 +123,10 @@ unprefixed_use_declaration: ; use_declaration: - unprefixed_use_declaration { $$ = $1; } - | T_NS_SEPARATOR unprefixed_use_declaration { $$ = $2; } + legacy_namespace_name + { $$ = Stmt\UseUse[$1, null, Stmt\Use_::TYPE_UNKNOWN]; $this->checkUseUse($$, #1); } + | legacy_namespace_name T_AS identifier + { $$ = Stmt\UseUse[$1, $3, Stmt\Use_::TYPE_UNKNOWN]; $this->checkUseUse($$, #3); } ; inline_use_declaration: @@ -734,9 +732,10 @@ class_name: ; name: - namespace_name_parts { $$ = Name[$1]; } - | T_NS_SEPARATOR namespace_name_parts { $$ = Name\FullyQualified[$2]; } - | T_NAMESPACE T_NS_SEPARATOR namespace_name_parts { $$ = Name\Relative[$3]; } + T_STRING { $$ = Name[$1]; } + | T_NAME_QUALIFIED { $$ = Name[$1]; } + | T_NAME_FULLY_QUALIFIED { $$ = Name\FullyQualified[substr($1, 1)]; } + | T_NAME_RELATIVE { $$ = Name\Relative[substr($1, 10)]; } ; class_name_reference: diff --git a/grammar/php7.y b/grammar/php7.y index 0aad147..36b7cf7 100644 --- a/grammar/php7.y +++ b/grammar/php7.y @@ -49,13 +49,14 @@ reserved_non_modifiers_identifier: reserved_non_modifiers { $$ = Node\Identifier[$1]; } ; -namespace_name_parts: - T_STRING { init($1); } - | namespace_name_parts T_NS_SEPARATOR T_STRING { push($1, $3); } +namespace_name: + T_STRING { $$ = Name[$1]; } + | T_NAME_QUALIFIED { $$ = Name[$1]; } ; -namespace_name: - namespace_name_parts { $$ = Name[$1]; } +legacy_namespace_name: + namespace_name { $$ = $1; } + | T_NAME_FULLY_QUALIFIED { $$ = Name[substr($1, 1)]; } ; plain_variable: @@ -105,16 +106,11 @@ use_type: | T_CONST { $$ = Stmt\Use_::TYPE_CONSTANT; } ; -/* Using namespace_name_parts here to avoid s/r conflict on T_NS_SEPARATOR */ group_use_declaration: - T_USE use_type namespace_name_parts T_NS_SEPARATOR '{' unprefixed_use_declarations '}' - { $$ = Stmt\GroupUse[new Name($3, stackAttributes(#3)), $6, $2]; } - | T_USE use_type T_NS_SEPARATOR namespace_name_parts T_NS_SEPARATOR '{' unprefixed_use_declarations '}' - { $$ = Stmt\GroupUse[new Name($4, stackAttributes(#4)), $7, $2]; } - | T_USE namespace_name_parts T_NS_SEPARATOR '{' inline_use_declarations '}' - { $$ = Stmt\GroupUse[new Name($2, stackAttributes(#2)), $5, Stmt\Use_::TYPE_UNKNOWN]; } - | T_USE T_NS_SEPARATOR namespace_name_parts T_NS_SEPARATOR '{' inline_use_declarations '}' - { $$ = Stmt\GroupUse[new Name($3, stackAttributes(#3)), $6, Stmt\Use_::TYPE_UNKNOWN]; } + T_USE use_type legacy_namespace_name T_NS_SEPARATOR '{' unprefixed_use_declarations '}' + { $$ = Stmt\GroupUse[$3, $6, $2]; } + | T_USE legacy_namespace_name T_NS_SEPARATOR '{' inline_use_declarations '}' + { $$ = Stmt\GroupUse[$2, $5, Stmt\Use_::TYPE_UNKNOWN]; } ; unprefixed_use_declarations: @@ -154,8 +150,10 @@ unprefixed_use_declaration: ; use_declaration: - unprefixed_use_declaration { $$ = $1; } - | T_NS_SEPARATOR unprefixed_use_declaration { $$ = $2; } + legacy_namespace_name + { $$ = Stmt\UseUse[$1, null, Stmt\Use_::TYPE_UNKNOWN]; $this->checkUseUse($$, #1); } + | legacy_namespace_name T_AS identifier + { $$ = Stmt\UseUse[$1, $3, Stmt\Use_::TYPE_UNKNOWN]; $this->checkUseUse($$, #3); } ; inline_use_declaration: @@ -826,9 +824,10 @@ class_name: ; name: - namespace_name_parts { $$ = Name[$1]; } - | T_NS_SEPARATOR namespace_name_parts { $$ = Name\FullyQualified[$2]; } - | T_NAMESPACE T_NS_SEPARATOR namespace_name_parts { $$ = Name\Relative[$3]; } + T_STRING { $$ = Name[$1]; } + | T_NAME_QUALIFIED { $$ = Name[$1]; } + | T_NAME_FULLY_QUALIFIED { $$ = Name\FullyQualified[substr($1, 1)]; } + | T_NAME_RELATIVE { $$ = Name\Relative[substr($1, 10)]; } ; class_name_reference: diff --git a/grammar/tokens.y b/grammar/tokens.y index 84e0d6b..4f796d8 100644 --- a/grammar/tokens.y +++ b/grammar/tokens.y @@ -113,3 +113,6 @@ %token T_DIR %token T_NS_SEPARATOR %token T_ELLIPSIS +%token T_NAME_FULLY_QUALIFIED +%token T_NAME_QUALIFIED +%token T_NAME_RELATIVE \ No newline at end of file diff --git a/lib/PhpParser/Parser/Php5.php b/lib/PhpParser/Parser/Php5.php index 28110a5..9899160 100644 --- a/lib/PhpParser/Parser/Php5.php +++ b/lib/PhpParser/Parser/Php5.php @@ -17,17 +17,17 @@ use PhpParser\Node\Stmt; */ class Php5 extends \PhpParser\ParserAbstract { - protected $tokenToSymbolMapSize = 395; - protected $actionTableSize = 1075; - protected $gotoTableSize = 650; + protected $tokenToSymbolMapSize = 398; + protected $actionTableSize = 1061; + protected $gotoTableSize = 580; - protected $invalidSymbol = 160; + protected $invalidSymbol = 163; protected $errorSymbol = 1; protected $defaultAction = -32766; protected $unexpectedTokenRule = 32767; - protected $YY2TBLSTATE = 407; - protected $numNonLeafStates = 676; + protected $YY2TBLSTATE = 405; + protected $numNonLeafStates = 658; protected $symbolToName = array( "EOF", @@ -181,6 +181,9 @@ class Php5 extends \PhpParser\ParserAbstract "T_DIR", "T_NS_SEPARATOR", "T_ELLIPSIS", + "T_NAME_FULLY_QUALIFIED", + "T_NAME_QUALIFIED", + "T_NAME_RELATIVE", "';'", "'{'", "'}'", @@ -193,157 +196,156 @@ class Php5 extends \PhpParser\ParserAbstract ); protected $tokenToSymbol = array( - 0, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 54, 159, 160, 156, 53, 36, 160, - 154, 155, 51, 48, 7, 49, 50, 52, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 30, 151, - 42, 15, 44, 29, 66, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 68, 160, 158, 35, 160, 157, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 152, 34, 153, 56, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 1, 2, 3, 4, + 0, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 54, 162, 163, 159, 53, 36, 163, + 157, 158, 51, 48, 7, 49, 50, 52, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 30, 154, + 42, 15, 44, 29, 66, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 68, 163, 161, 35, 163, 160, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 155, 34, 156, 56, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 31, 32, 33, 37, 38, 39, 40, 41, 43, 45, 46, 47, 55, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 160, - 160, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 163, + 163, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 160, - 160, 160, 160, 160, 160, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150 + 132, 133, 134, 135, 136, 137, 138, 139, 140, 163, + 163, 163, 163, 163, 163, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 150, 151, 152, 153 ); protected $action = array( - 681, 682, 683, 684, 685, 283, 686, 687, 688, 724, - 725, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 0, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242,-32766,-32766,-32766,-32766,-32766,-32766,-32766, - -32766,-32767,-32767,-32767,-32767, 1053, 243, 244,-32766,-32766, - -32766,-32766,-32766, 689,-32766, 27,-32766,-32766,-32766,-32766, - -32766,-32766,-32767,-32767,-32767,-32767,-32767, 690, 691, 692, - 693, 694, 695, 696, 1189, 125, 758, 960, 961, 962, - 959, 958, 957, 697, 698, 699, 700, 701, 702, 703, - 704, 705, 706, 707, 727, 750, 728, 729, 730, 731, - 719, 720, 721, 749, 722, 723, 708, 709, 710, 711, - 712, 713, 714, 752, 753, 754, 755, 756, 757, 715, - 716, 717, 718, 748, 739, 737, 738, 734, 735, 1053, - 726, 732, 733, 740, 741, 743, 742, 744, 745, 54, - 55, 426, 56, 57, 736, 747, 746, -221, 58, 59, - 340, 60,-32766,-32766,-32766,-32766,-32766,-32766,-32766,-32766, - -32766, 210,-32767,-32767,-32767,-32767,-32767,-32767,-32767,-32767, - 97, 98, 99, 100, 101, 301, 102, 103, 104, 52, - 304, 835, 632, 312, 815, 61, 62, 1053, 762, 28, - 765, 63, 105, 64, 294, 295, 65, 66, 67, 68, - 69, 70, 71, 72, 332, 25, 302, 73, 418,-32766, - -32766,-32766, 419, 1104, 1105, 762, 417, 765, 219, 220, - 221, 475,-32766,-32766,-32766, 1081, 836,-32766,-32766,-32766, - -32766, 10,-32766,-32766,-32766,-32766,-32766,-32766, 1053, 206, - -32766, 438, 310,-32766, 351,-32766,-32766,-32766,-32766,-32766, - 633, 78, 499, 434, 552, 336, 500, 938, 1053, 434, - 483, 484, 286, 124, 439, 335, 336, 354, 817, 485, - 486, 485, 1110, 1111, 1112, 1113, 1107, 1108, 313, 907, - 908, 298, 296, 500, 1114, 1109, 434, 219, 220, 221, - 285, 41, 500, 336, 324, 434, 325, 427, -127, -127, - -127, -4, 836, 474, 219, 220, 221, 824, 206, 245, - 40, 21, 428, -127, 476, -127, 477, -127, 478, -127, - 760, 429,-32766,-32766,-32766, 206, 31, 32, 430, 431, - 423, 826, 33, 479, 1189, 765, 74, 914, 1223, 352, - 353, 480, 481,-32766,-32766,-32766, 425, 482, 1053, 883, - 807, 854, 432, 433, 240, 241, 242, 960, 961, 962, - 959, 958, 957, 448,-32766, 1155,-32766,-32766,-32766,-32766, - 243, 244, 298, 427, 836, 934, 838, 647, -127, 474, - -32766,-32766,-32766, 824, 1203, 300, 40, 21, 428,-32766, - 476, 777, 477, 778, 478, 128, 75, 429, 30, 297, - 913,-32766, 31, 32, 430, 431, 129, 409, 33, 479, - 340, 821, 74, 323, 421, 352, 353, 480, 481,-32766, - -32766,-32766, 422, 482, 424, 1053, 769, 854, 432, 433, - -32766,-32766,-32766,-32766, 48, 9, 411, 1154, 1204,-32766, - -32766, 328,-32766,-32766,-32766, 427, 836, 337, 220, 221, - 952, 474, 838, 647, -4, 824, 1053, 594, 40, 21, - 428, 760, 476,-32766, 477,-32766, 478, 49, 206, 429, - 884, -206, -206, -206, 31, 32, 430, 431, 20, 36, - 33, 479, -256, 526, 74, 449, 128, 352, 353, 480, - 481,-32766,-32766,-32766, 1071, 482, 119, 51, 807, 854, - 432, 433, 99, 100, 101, 123, 339, 219, 220, 221, - -32766,-32766,-32766, 1053,-32766,-32766, 1116, 427, 120, 219, - 220, 221, 206, 474, 838, 647, -206, 824, 206, 247, - 40, 21, 428, 211, 476, 130, 477, 299, 478, 336, - 206, 429, 1116, -205, -205, -205, 31, 32, 430, 431, - 212, 121, 33, 479, 213, 836, 74, 221, 776, 352, - 353, 480, 481, 237, 238, 239, 822, 482, 933, 451, - 807, 854, 432, 433, 1053, 777, 206, 778, 79, 80, - 81, 122, 133, 248, 650, 1232, 585, 500, 1233, 249, - 434, 444, 127, -84, 649, 819, 838, 647, -205, 34, - 250, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 316, 304, 427,-32766,-32766, 658, - 836, 661, 474, 243, 244, 834, 824, 105, 132, 40, - 21, 428,-32766, 476, 304, 477, 105, 478, 458, 22, - 429, 463, 601, 608, 609, 31, 32, 430, 847, 651, - 43, 33, 479, 616, 836, 74, 907, 908, 352, 353, - 134, 362, 770, 653, 949, 667, 482, 937, 675, 500, - 44, 45, 434, 46, 47, 50, 53, 131, -225, 302, - -32766, -275, 762, 655, 588, 628, 447, -82, 836, 760, - 442, 427, 763, 765, 468, 838, 647, 474, 965, 532, - 606, 824, 855, 856, 40, 21, 428, 641, 476, 620, - 477, 327, 478, 1115, -505, 429, 11, 659, 450, 282, - 31, 32, 430, 591, 605, 427, 33, 479, 24, 1161, - 74, 474, 78, 352, 353, 824, 0, 0, 40, 21, - 428, 482, 476, 329, 477, 38, 478, 0, 0, 429, - 0, 326, 485, 0, 31, 32, 430, 331, 309, 427, - 33, 479, 311, 836, 74, 474, -506, 352, 353, 824, - 838, 647, 40, 21, 428, 482, 476, -414, 477, -406, - 478, 5, 6, 429, 12, 14, 361, -415, 31, 32, - 430, 672, 664, 375, 33, 479, 386, 836, 74, 387, - 395, 352, 353, 444, 870, 647, 534, 412, 413, 482, - 849, -222, 39, 670, 35, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 671, 775, - 825, 833, 812, 827, 427, 886, 877, 878, 838, 647, - 474, 810, 871, 868, 824, 866, 944, 40, 21, 428, - 945, 476, 942, 477, 816, 478, 992, 994, 429, 818, - 820, 832, 823, 31, 32, 430, 941, 773, 427, 33, - 479, 774, 943, 74, 474, 648, 352, 353, 824, 652, - 654, 40, 21, 428, 482, 476, 656, 477, 657, 478, - 660, 662, 429, 663, 665, 666, 126, 31, 32, 430, - 333, 334, 407, 33, 479, 246, 408, 74, 808, 1229, - 352, 353, 1231, 838, 647, 26, 772, 853, 482, 771, - 852, 1230, 851, 214, 215, 1067, 843, 1055, 850, 216, - -505, 217, 1056, 841, 950, 875, 876, 462, 1228, 1197, - 1195, 1180, 1193, 208, 1095, 925, 1201, 838, 647, 29, - 1191, 1104, 1105, 781, 782,-32766, 214, 215, 779, 1106, - 780, -221, 216, 37, 217, 42, 76, 77, 209, 284, - 292, 293, 305, 306, 307, 308, 208, 341, 410, 416, - -32766, 1160, 16, 17, 1104, 1105, 18, 380,-32766, 459, - 466, 467, 1106, 472, 567, 638, 1058, 1061, 915, 1120, - 1057, 1033, 577, 1032, 1097, 0, 287, 0, 573, -424, - 1110, 1111, 1112, 1113, 1107, 1108, 385, 1051, 0, 1062, - 1064, 1063, 1114, 1109, 1066, 1065, 1080, 1194, 1179, 218, - 1175,-32766, 1192, 0, 1094, 1226, 1121, 1174, 612, 0, - 0, 573, 0, 1110, 1111, 1112, 1113, 1107, 1108, 385, - 0, 0, 0, 0, 0, 1114, 1109, 0, 0, 0, - 0, 0, 218, 0,-32766 + 663, 664, 665, 666, 667, 282, 668, 669, 670, 706, + 707, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 0, 230, 231, 232, 233, 234, 235, 236, 237, 238, + 239, 240, 241,-32766,-32766,-32766,-32766,-32766,-32766,-32766, + -32766,-32767,-32767,-32767,-32767, 27, 242, 243,-32766,-32766, + -32766,-32766,-32766, 671,-32766, 333,-32766,-32766,-32766,-32766, + -32766,-32766,-32767,-32767,-32767,-32767,-32767, 672, 673, 674, + 675, 676, 677, 678, 125, 816, 740, 941, 942, 943, + 940, 939, 938, 679, 680, 681, 682, 683, 684, 685, + 686, 687, 688, 689, 709, 732, 710, 711, 712, 713, + 701, 702, 703, 731, 704, 705, 690, 691, 692, 693, + 694, 695, 696, 734, 735, 736, 737, 738, 739, 697, + 698, 699, 700, 730, 721, 719, 720, 716, 717, 52, + 708, 714, 715, 722, 723, 725, 724, 726, 727, 54, + 55, 417, 56, 57, 718, 729, 728, 864, 58, 59, + -220, 60,-32766,-32766,-32766,-32766,-32766,-32766,-32766,-32766, + -32766, 1171,-32767,-32767,-32767,-32767, 1034, 35, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 118,-32766,-32766,-32766,-32766, 61, 62, 10, 1034, 209, + 292, 63, 313, 64, 290, 291, 65, 66, 67, 68, + 69, 70, 71, 72, 763, 25, 298, 73, 409, 973, + 975, 309, 294, 1086, 1087, 1064, 124, 748, 239, 240, + 241, 465,-32766,-32766,-32766, 742, 354, 294, 807, 817, + -32766,-32766,-32766, 323, 242, 243, 129, 218, 219, 220, + 341, 428, 359,-32766, 1171,-32766,-32766,-32766,-32766,-32766, + -32766,-32766, 488,-32766,-32766,-32766,-32766,-32766, 202, 748, + 473, 474, 941, 942, 943, 940, 939, 938,-32766, 475, + 476, 865, 1092, 1093, 1094, 1095, 1089, 1090, 315, 1214, + 338, 297, 1215, -505, 1096, 1091, 888, 889, 1066, 1065, + 1067, 218, 219, 220, 41,-32766, 337, 330, 1185, 332, + 418, -126, -126, -126, 75, 410, 464, -4, 817, 296, + 805, -224, 202, 40, 21, 419, -126, 466, -126, 467, + -126, 468, -126, 341, 420, 748, 128, 744, 748, 31, + 32, 421, 422, 748, 915, 33, 469, 1034, 337, 74, + 298, 128, 351, 352, 470, 471,-32766,-32766,-32766, 894, + 472, 748, 412, 788, 835, 423, 424,-32767,-32767,-32767, + -32767, 97, 98, 99, 100, 101, 437,-32766, 748,-32766, + -32766,-32766,-32766, 802, 413, 742, 340, 475, 119, 418, + 475, 576, 819, 629, -126, 464, 415, 817, 28, 805, + 1136, 762, 40, 21, 419, 760, 466, 761, 467, 748, + 468, 745, 429, 420, 337, 429, 285, 337, 31, 32, + 421, 422, 337, 405, 33, 469, 1034, 1034, 74, 311, + 414, 351, 352, 470, 471,-32766,-32766,-32766, 429, 472, + 337, 615, 752, 835, 423, 424,-32766,-32766,-32766, 440, + 1098, 1137, 747, 1064, 36, 429,-32766, 337,-32766,-32766, + -32766, 48, 130, 342,-32766,-32766, 337,-32766, 418,-32766, + -32766, 819, 629, -4, 464, 416, 817, 748, 805, 123, + 1205, 40, 21, 419, 126, 466, 429, 467, 337, 468, + 1062, 210, 420, 534, -205, -205, -205, 31, 32, 421, + 422, 438, 211, 33, 469, 219, 220, 74, 212, 759, + 351, 352, 470, 471, 1066, 1065, 1067, 202, 472, 919, + 1034, 788, 835, 423, 424, 202, 1066, 1065, 1067, 1034, + 9, 803, 1034, 218, 219, 220, 320, 218, 219, 220, + 30, 293, 244, 914, 286, 933, 220, 418, 120, 895, + 819, 629, -205, 464, 202, 246, 295, 805, 202, 247, + 40, 21, 419, 1034, 466, 202, 467, 1186, 468, 796, + 49, 420, 248, -204, -204, -204, 31, 32, 421, 422, + -255, 20, 33, 469, 249, 760, 74, 761, 817, 351, + 352, 470, 471, -84, 102, 103, 104, 472, 303,-32766, + 788, 835, 423, 424,-32766,-32766,-32766, 218, 219, 220, + 105, 79, 80, 81,-32766,-32766,-32766, 632,-32766,-32766, + -32766, 99, 100, 101, 51,-32766, 1052, 310, 202, 819, + 629, -204, 34, 817, 82, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 101, 102, 103, 104, 121, 303, 418, + 78, 512, 633,-32766, 337, 464, 828, 817, 640, 805, + 105, 798, 40, 21, 419, 1034, 466, 643, 467, 815, + 468, 888, 889, 420, 236, 237, 238, 133, 31, 32, + 421, 567, 132, 127, 33, 469, 637, 43, 74,-32766, + -32766, 351, 352, 303, 418, 800, 242, 243, 105, 472, + 464, 122, 134, 364, 805, 447, 22, 40, 21, 419, + 1098, 466, 44, 467, 298, 468, 45, 817, 420, 452, + 584, 591, 592, 31, 32, 421, 753, 635, 418, 33, + 469, 819, 629, 74, 464, 46, 351, 352, 805, 930, + 649, 40, 21, 419, 472, 466, 641, 467, 47, 468, + 50, 817, 420, 918, 657, 53, 131, 31, 32, 421, + 599, 742,-32766, 33, 469, 436, -274, 74, 611, 748, + 351, 352, 946, 516, 623, 603, 819, 629, 472, 570, + 646, 432, 589,-32766, 321, 836, 837, 318, 418, -82, + 11, 439, 456, 281, 464, 322, 817, 573, 805, 588, + -505, 40, 21, 419, 458, 466, 312, 467, -414, 468, + 851, 629, 420, 527, 1097, 1143, 747, 31, 32, 421, + -221, -424, 418, 33, 469, 0, 0, 74, 464, 78, + 351, 352, 805, 319, 0, 40, 21, 419, 472, 466, + 314, 467, -506, 468, 0, 0, 420, -405, 331, 6, + 7, 31, 32, 421, 0, 12, 558, 33, 469, 14, + 363, 74, -415, 830, 351, 352, 38, 418, 1032, 0, + 819, 629, 472, 464, 39, 245, 652, 805, 653, 758, + 40, 21, 419, 806, 466, 814, 467, 793, 468, 808, + 867, 420, 858, 213, 214, 859, 31, 32, 421, 215, + 791, 216, 33, 469, 819, 629, 74, 852, 849, 351, + 352, 847, 925, 207, 926, 923, 797, 472, 213, 214, + 799, 1086, 1087, 801, 215, 813, 216, 804, 922, 1088, + 756, 757, 924, -220, 353, 630, 634, 636, 207, 638, + 639, 642, 644, 645, 647, 648, 1086, 1087, 631, 819, + 629, 24, 654, 789, 1088, 1211, 1213, 755, 834, 754, + 833, 1212, 832, 1048, 824, 1036, 831, 1037, 822, 931, + 856, 857, 451, 1210, 1179, 1177, 1162, 1175, 554, 1077, + 1092, 1093, 1094, 1095, 1089, 1090, 388, 906, 1183, 1173, + 1043, 26, 1096, 1091, 29, 37, 42, 76, 77, 208, + 284, 288, 217, 554, 289, 1092, 1093, 1094, 1095, 1089, + 1090, 388, 304, 305, 306, 307, 335, 1096, 1091, 406, + 408, 1045, 16, 17, 18, 383, 448, 217, 287, 455, + 457, 462, 548, 620, 1039, 1042, 896, 1102, 1038, 1014, + 559, 1013, 1079, 0, 0, 0, 1044, 1047, 1046, 1061, + 1176, 1161, 1157, 1174, 1076, 1208, 1103, 1156, 595, 0, + 1142 ); protected $actionCheck = array( @@ -351,185 +353,184 @@ class Php5 extends \PhpParser\ParserAbstract 12, 32, 33, 34, 35, 36, 37, 38, 39, 40, 0, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 8, 9, 10, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 12, 67, 68, 32, 33, + 36, 37, 38, 39, 40, 7, 67, 68, 32, 33, 34, 35, 36, 55, 29, 7, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 69, 70, 71, - 72, 73, 74, 75, 80, 7, 78, 115, 116, 117, + 72, 73, 74, 75, 7, 1, 78, 115, 116, 117, 118, 119, 120, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 12, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 68, 132, 133, 134, 135, 136, 137, 138, 139, 140, 2, - 3, 4, 5, 6, 146, 147, 148, 155, 11, 12, - 156, 14, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 7, 42, 43, 44, 45, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 36, 51, 52, 53, 68, - 55, 1, 78, 7, 151, 48, 49, 12, 78, 7, - 80, 54, 67, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 7, 68, 69, 70, 71, 8, - 9, 10, 126, 76, 77, 78, 7, 80, 8, 9, - 10, 84, 8, 9, 10, 115, 1, 8, 9, 10, - 29, 7, 31, 32, 33, 34, 35, 36, 12, 29, - 154, 104, 131, 29, 7, 31, 32, 33, 34, 35, - 146, 152, 115, 149, 79, 156, 146, 153, 12, 149, - 123, 124, 36, 152, 154, 7, 156, 7, 151, 132, - 133, 132, 135, 136, 137, 138, 139, 140, 141, 133, - 134, 36, 36, 146, 147, 148, 149, 8, 9, 10, - 7, 154, 146, 156, 157, 149, 159, 72, 73, 74, - 75, 0, 1, 78, 8, 9, 10, 82, 29, 13, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 78, 96, 32, 33, 34, 29, 101, 102, 103, 104, - 7, 151, 107, 108, 80, 80, 111, 155, 83, 114, - 115, 116, 117, 8, 9, 10, 7, 122, 12, 30, - 125, 126, 127, 128, 51, 52, 53, 115, 116, 117, - 118, 119, 120, 30, 29, 155, 31, 32, 33, 34, - 67, 68, 36, 72, 1, 151, 151, 152, 153, 78, - 8, 9, 10, 82, 1, 7, 85, 86, 87, 80, - 89, 104, 91, 106, 93, 150, 150, 96, 143, 144, - 155, 29, 101, 102, 103, 104, 152, 106, 107, 108, - 156, 151, 111, 112, 7, 114, 115, 116, 117, 8, - 9, 10, 7, 122, 7, 12, 125, 126, 127, 128, - 32, 33, 34, 35, 68, 106, 149, 158, 155, 8, - 29, 112, 31, 32, 33, 72, 1, 146, 9, 10, - 121, 78, 151, 152, 153, 82, 12, 83, 85, 86, - 87, 78, 89, 154, 91, 156, 93, 68, 29, 96, - 151, 98, 99, 100, 101, 102, 103, 104, 155, 13, - 107, 108, 153, 83, 111, 152, 150, 114, 115, 116, - 117, 8, 9, 10, 155, 122, 15, 68, 125, 126, - 127, 128, 48, 49, 50, 13, 68, 8, 9, 10, - 8, 9, 29, 12, 31, 32, 142, 72, 152, 8, - 9, 10, 29, 78, 151, 152, 153, 82, 29, 30, - 85, 86, 87, 15, 89, 152, 91, 36, 93, 156, - 29, 96, 142, 98, 99, 100, 101, 102, 103, 104, - 15, 152, 107, 108, 15, 1, 111, 10, 151, 114, - 115, 116, 117, 48, 49, 50, 151, 122, 151, 131, - 125, 126, 127, 128, 12, 104, 29, 106, 8, 9, - 10, 152, 152, 15, 30, 78, 156, 146, 81, 15, - 149, 149, 30, 30, 152, 151, 151, 152, 153, 29, - 15, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 30, 55, 72, 32, 33, 30, - 1, 30, 78, 67, 68, 30, 82, 67, 30, 85, - 86, 87, 32, 89, 55, 91, 67, 93, 73, 74, - 96, 73, 74, 109, 110, 101, 102, 103, 36, 30, - 68, 107, 108, 75, 1, 111, 133, 134, 114, 115, - 99, 100, 151, 152, 151, 152, 122, 151, 152, 146, - 68, 68, 149, 68, 68, 68, 68, 68, 155, 69, - 83, 80, 78, 30, 88, 92, 87, 95, 1, 78, - 104, 72, 78, 80, 104, 151, 152, 78, 80, 83, - 112, 82, 126, 126, 85, 86, 87, 90, 89, 94, - 91, 130, 93, 142, 131, 96, 95, 30, 95, 95, - 101, 102, 103, 98, 98, 72, 107, 108, 154, 142, - 111, 78, 152, 114, 115, 82, -1, -1, 85, 86, - 87, 122, 89, 113, 91, 151, 93, -1, -1, 96, - -1, 129, 132, -1, 101, 102, 103, 129, 131, 72, - 107, 108, 131, 1, 111, 78, 131, 114, 115, 82, - 151, 152, 85, 86, 87, 122, 89, 145, 91, 145, - 93, 145, 145, 96, 145, 145, 145, 145, 101, 102, - 103, 153, 30, 149, 107, 108, 149, 1, 111, 149, - 149, 114, 115, 149, 151, 152, 149, 149, 149, 122, - 150, 155, 151, 151, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 151, 151, - 151, 151, 151, 151, 72, 151, 151, 151, 151, 152, - 78, 151, 151, 151, 82, 151, 151, 85, 86, 87, - 151, 89, 151, 91, 151, 93, 57, 58, 96, 151, - 151, 151, 151, 101, 102, 103, 151, 151, 72, 107, - 108, 151, 151, 111, 78, 152, 114, 115, 82, 152, - 152, 85, 86, 87, 122, 89, 152, 91, 152, 93, - 152, 152, 96, 152, 152, 152, 152, 101, 102, 103, - 152, 152, 152, 107, 108, 30, 152, 111, 153, 153, - 114, 115, 153, 151, 152, 154, 153, 153, 122, 153, - 153, 153, 153, 48, 49, 153, 153, 153, 153, 54, - 131, 56, 153, 153, 153, 153, 153, 153, 153, 153, - 153, 153, 153, 68, 153, 153, 153, 151, 152, 154, - 153, 76, 77, 153, 153, 80, 48, 49, 153, 84, - 153, 155, 54, 154, 56, 154, 154, 154, 154, 154, - 154, 154, 154, 154, 154, 154, 68, 154, 154, 154, - 154, 159, 155, 155, 76, 77, 155, 155, 80, 155, - 155, 155, 84, 155, 155, 155, 155, 155, 155, 155, - 155, 155, 155, 155, 155, -1, 156, -1, 133, 157, - 135, 136, 137, 138, 139, 140, 141, 157, -1, 158, - 158, 158, 147, 148, 158, 158, 158, 158, 158, 154, - 158, 156, 158, -1, 158, 158, 158, 158, 158, -1, - -1, 133, -1, 135, 136, 137, 138, 139, 140, 141, - -1, -1, -1, -1, -1, 147, 148, -1, -1, -1, - -1, -1, 154, -1, 156 + 3, 4, 5, 6, 146, 147, 148, 30, 11, 12, + 158, 14, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 80, 42, 43, 44, 45, 12, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 32, 33, 34, 35, 48, 49, 7, 12, 7, + 36, 54, 131, 56, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 156, 68, 69, 70, 71, 57, + 58, 7, 36, 76, 77, 78, 155, 80, 51, 52, + 53, 84, 8, 9, 10, 78, 7, 36, 154, 1, + 8, 9, 10, 7, 67, 68, 155, 8, 9, 10, + 159, 104, 7, 29, 80, 31, 32, 33, 34, 35, + 36, 29, 115, 31, 32, 33, 34, 35, 29, 80, + 123, 124, 115, 116, 117, 118, 119, 120, 115, 132, + 133, 154, 135, 136, 137, 138, 139, 140, 141, 78, + 7, 36, 81, 131, 147, 148, 133, 134, 151, 152, + 153, 8, 9, 10, 157, 8, 159, 160, 1, 162, + 72, 73, 74, 75, 150, 126, 78, 0, 1, 7, + 82, 158, 29, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 159, 96, 80, 150, 78, 80, 101, + 102, 103, 104, 80, 154, 107, 108, 12, 159, 111, + 69, 150, 114, 115, 116, 117, 8, 9, 10, 158, + 122, 80, 7, 125, 126, 127, 128, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 30, 29, 80, 31, + 32, 33, 34, 154, 7, 78, 68, 132, 15, 72, + 132, 83, 154, 155, 156, 78, 7, 1, 7, 82, + 161, 156, 85, 86, 87, 104, 89, 106, 91, 80, + 93, 152, 157, 96, 159, 157, 7, 159, 101, 102, + 103, 104, 159, 106, 107, 108, 12, 12, 111, 112, + 7, 114, 115, 116, 117, 8, 9, 10, 157, 122, + 159, 78, 125, 126, 127, 128, 8, 9, 10, 131, + 142, 158, 151, 78, 13, 157, 29, 159, 31, 32, + 33, 68, 155, 146, 8, 9, 159, 29, 72, 31, + 32, 154, 155, 156, 78, 7, 1, 80, 82, 13, + 83, 85, 86, 87, 155, 89, 157, 91, 159, 93, + 115, 15, 96, 79, 98, 99, 100, 101, 102, 103, + 104, 155, 15, 107, 108, 9, 10, 111, 15, 154, + 114, 115, 116, 117, 151, 152, 153, 29, 122, 156, + 12, 125, 126, 127, 128, 29, 151, 152, 153, 12, + 106, 154, 12, 8, 9, 10, 112, 8, 9, 10, + 143, 144, 13, 154, 36, 121, 10, 72, 155, 158, + 154, 155, 156, 78, 29, 30, 36, 82, 29, 15, + 85, 86, 87, 12, 89, 29, 91, 158, 93, 154, + 68, 96, 15, 98, 99, 100, 101, 102, 103, 104, + 156, 158, 107, 108, 15, 104, 111, 106, 1, 114, + 115, 116, 117, 30, 51, 52, 53, 122, 55, 32, + 125, 126, 127, 128, 8, 9, 10, 8, 9, 10, + 67, 8, 9, 10, 8, 9, 10, 30, 32, 33, + 34, 48, 49, 50, 68, 29, 158, 30, 29, 154, + 155, 156, 29, 1, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 53, 155, 55, 72, + 155, 83, 30, 115, 159, 78, 36, 1, 30, 82, + 67, 154, 85, 86, 87, 12, 89, 30, 91, 30, + 93, 133, 134, 96, 48, 49, 50, 155, 101, 102, + 103, 159, 30, 30, 107, 108, 30, 68, 111, 32, + 33, 114, 115, 55, 72, 154, 67, 68, 67, 122, + 78, 155, 99, 100, 82, 73, 74, 85, 86, 87, + 142, 89, 68, 91, 69, 93, 68, 1, 96, 73, + 74, 109, 110, 101, 102, 103, 154, 155, 72, 107, + 108, 154, 155, 111, 78, 68, 114, 115, 82, 154, + 155, 85, 86, 87, 122, 89, 30, 91, 68, 93, + 68, 1, 96, 154, 155, 68, 68, 101, 102, 103, + 75, 78, 83, 107, 108, 87, 80, 111, 92, 80, + 114, 115, 80, 83, 90, 94, 154, 155, 122, 88, + 30, 104, 112, 115, 113, 126, 126, 129, 72, 95, + 95, 95, 95, 95, 78, 129, 1, 98, 82, 98, + 131, 85, 86, 87, 104, 89, 131, 91, 145, 93, + 154, 155, 96, 149, 142, 142, 151, 101, 102, 103, + 158, 160, 72, 107, 108, -1, -1, 111, 78, 155, + 114, 115, 82, 130, -1, 85, 86, 87, 122, 89, + 131, 91, 131, 93, -1, -1, 96, 145, 155, 145, + 145, 101, 102, 103, -1, 145, 149, 107, 108, 145, + 145, 111, 145, 150, 114, 115, 154, 72, 160, -1, + 154, 155, 122, 78, 154, 30, 154, 82, 154, 154, + 85, 86, 87, 154, 89, 154, 91, 154, 93, 154, + 154, 96, 154, 48, 49, 154, 101, 102, 103, 54, + 154, 56, 107, 108, 154, 155, 111, 154, 154, 114, + 115, 154, 154, 68, 154, 154, 154, 122, 48, 49, + 154, 76, 77, 154, 54, 154, 56, 154, 154, 84, + 154, 154, 154, 158, 155, 155, 155, 155, 68, 155, + 155, 155, 155, 155, 155, 155, 76, 77, 155, 154, + 155, 157, 156, 156, 84, 156, 156, 156, 156, 156, + 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, + 156, 156, 156, 156, 156, 156, 156, 156, 133, 156, + 135, 136, 137, 138, 139, 140, 141, 156, 156, 156, + 161, 157, 147, 148, 157, 157, 157, 157, 157, 157, + 157, 157, 157, 133, 157, 135, 136, 137, 138, 139, + 140, 141, 157, 157, 157, 157, 157, 147, 148, 157, + 157, 161, 158, 158, 158, 158, 158, 157, 159, 158, + 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, + 158, 158, 158, -1, -1, -1, 161, 161, 161, 161, + 161, 161, 161, 161, 161, 161, 161, 161, 161, -1, + 162 ); protected $actionBase = array( - 0, 225, 301, 373, 445, 254, 254, 104, 731, -2, - -2, 242, -2, -2, -2, 629, 697, 772, 697, 554, - 663, 806, 806, 806, 245, 246, 246, 246, 336, 859, - 175, 33, 117, 444, 562, 226, 501, 413, 413, 413, - 413, 137, 137, 413, 413, 413, 413, 413, 413, 413, - 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, - 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, - 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, - 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, - 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, - 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, - 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, - 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, - 413, 413, 413, 413, 413, 319, 180, 492, 466, 713, - 718, 719, 720, 855, 634, 856, 795, 796, 608, 797, - 798, 799, 801, 802, 794, 803, 890, 807, 570, 570, - 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, - 431, 296, 210, 499, 279, 502, 511, 511, 511, 511, - 511, 511, 511, 219, 219, 219, 219, 219, 219, 219, - 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, - 219, 439, 372, 372, 372, 547, 885, 493, 918, 918, - 918, 918, 918, 918, 918, 918, 918, 918, 918, 918, - 918, 918, 918, 918, 918, 918, 918, 918, 918, 918, - 918, 918, 918, 918, 918, 918, 918, 918, 918, 918, - 918, 918, 918, 918, 918, 918, 918, 918, 918, 918, - 918, 483, -21, -21, 411, 610, 335, 595, 214, 290, - 201, 25, 25, 25, 25, 25, 398, 16, 4, 4, - 4, 4, 809, 124, 124, 124, 124, 120, 120, 120, - 120, 329, 139, 139, 630, 630, 620, 754, 454, 454, - 515, 515, 110, 110, 110, 110, 110, 110, 110, 110, - 110, 110, 86, 611, 836, 533, 533, 533, 533, 383, - 383, 383, 146, 400, 597, 832, 146, 125, 125, 125, - 303, 303, 303, 287, 626, 255, 309, 309, 309, 309, - 255, 309, 309, 471, 471, 471, 99, 442, 607, 507, - 430, 441, 399, 635, 792, 636, 793, 526, 652, 111, - 668, 669, 860, 596, 860, 575, 578, 544, 644, 333, - 828, -6, 319, 523, 429, 589, 721, 407, 726, 260, - 415, 438, 521, 366, 323, 758, 730, 857, 858, 283, - 645, 589, 589, 589, 182, 374, 759, 760, 366, -8, - 566, 566, 566, 566, 810, 764, 566, 566, 566, 566, - 811, 815, 224, 417, 817, 339, 725, 614, 614, 621, - 621, 614, 614, 614, 614, 628, 622, 614, 805, 584, - 584, 621, 623, 621, 628, 622, 821, 821, 821, 821, - 621, 622, 621, 621, 614, 621, 584, 584, 622, 620, - 584, 48, 622, 632, 614, 638, 638, 821, 672, 687, - 621, 621, 591, 584, 584, 584, 591, 622, 821, 598, - 670, 154, 584, 821, 594, 623, 594, 598, 622, 594, - 623, 623, 594, 20, 563, 592, 819, 822, 834, 733, - 586, 587, 826, 827, 823, 825, 771, 605, 667, 688, - 689, 481, 612, 613, 615, 616, 646, 617, 637, 596, - 664, 579, 579, 579, 593, 647, 593, 579, 579, 579, - 579, 579, 579, 579, 579, 871, 642, 651, 641, 609, - 690, 518, 654, 633, 535, 737, 581, 667, 667, 765, - 851, 842, 862, 870, 624, 828, 849, 593, 872, 604, - 68, 539, 829, 648, 657, 660, 593, 830, 593, 738, - 593, 852, 766, 619, 769, 667, 773, 579, 853, 873, - 876, 877, 878, 879, 880, 882, 884, 618, 886, 691, - 606, 844, 176, 824, 644, 649, 661, 692, 774, 197, - 887, 776, 593, 593, 744, 590, 593, 746, 694, 671, - 837, 695, 845, 888, 581, 846, 593, 600, 777, 889, - 197, 599, 588, 666, 625, 696, 835, 854, 833, 748, - 568, 574, 778, 779, 782, 601, 700, 838, 841, 816, - 701, 749, 585, 751, 603, 783, 752, 831, 702, 784, - 785, 850, 602, 664, 650, 640, 631, 627, 753, 789, - 848, 704, 705, 709, 790, 711, 791, 0, 0, 0, + 0, 228, 307, 386, 465, 353, 81, 81, 778, -2, + -2, 147, -2, -2, -2, 622, 716, 750, 716, 577, + 656, 795, 795, 795, 191, 154, 154, 154, 176, 884, + 404, 405, 507, 541, 653, 498, 510, 325, 325, 325, + 325, 137, 137, 325, 325, 325, 325, 325, 325, 325, + 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, + 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, + 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, + 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, + 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, + 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, + 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, + 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, + 325, 325, 325, 325, 325, 117, 74, 456, 431, 762, + 766, 769, 771, 880, 698, 881, 817, 818, 652, 819, + 820, 821, 823, 831, 816, 832, 897, 833, 593, 593, + 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, + 287, 519, 283, 515, 229, 446, 589, 589, 589, 589, + 589, 589, 589, 596, 596, 596, 596, 596, 596, 596, + 596, 596, 596, 596, 596, 596, 596, 596, 596, 596, + 596, 486, 845, 586, 586, 586, 526, 870, 870, 870, + 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, + 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, + 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, + 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, + 478, 428, -21, -21, 417, 557, 338, 657, 222, 576, + 214, 25, 25, 25, 25, 25, 149, 16, 4, 4, + 4, 4, 152, 315, 315, 315, 315, 120, 120, 120, + 120, 245, 245, 414, 248, 248, 271, 319, 288, 288, + 288, 288, 288, 288, 288, 288, 288, 288, 179, 563, + 563, 626, 626, 253, 153, 153, 153, 153, 686, 538, + 538, 291, 297, 297, 297, 568, 673, 898, 365, 365, + 365, 365, 365, 365, 533, 533, 533, 167, 167, 167, + 690, 471, 387, 471, 387, 668, 665, 495, 665, 679, + 201, 522, 793, 492, 699, 814, 701, 815, 599, 717, + 61, 869, 677, 249, 869, 632, 646, 612, 249, 249, + 702, 336, 855, 164, 117, 585, 546, 638, 773, 345, + 664, 776, 219, 367, 308, 572, 383, 413, 707, 777, + 882, 883, 399, 711, 638, 638, 638, 381, 298, 383, + -8, 629, 629, 629, 629, 48, 629, 629, 629, 629, + 235, 180, 379, 458, 774, 683, 683, 692, 620, 837, + 794, 794, 683, 689, 683, 692, 620, 839, 839, 839, + 839, 683, 620, 683, 683, 683, 794, 794, 620, 645, + 794, 38, 620, 658, 666, 666, 839, 722, 724, 683, + 683, 703, 794, 794, 794, 703, 620, 839, 670, 713, + 182, 794, 839, 587, 689, 587, 683, 670, 620, 587, + 689, 689, 587, 20, 553, 619, 838, 840, 862, 780, + 659, 660, 844, 847, 841, 843, 834, 639, 725, 729, + 363, 644, 648, 667, 680, 704, 682, 675, 677, 631, + 631, 631, 669, 705, 669, 631, 631, 631, 631, 631, + 631, 631, 631, 829, 663, 715, 709, 678, 731, 466, + 477, 781, 672, 797, 876, 867, 661, 708, 855, 874, + 669, 860, 712, 67, 483, 856, 796, 693, 669, 857, + 669, 782, 669, 877, 799, 688, 800, 801, 631, 878, + 885, 886, 887, 888, 889, 890, 891, 892, 687, 893, + 733, 691, 868, 204, 842, 702, 710, 696, 779, 735, + 802, 226, 894, 803, 669, 669, 784, 674, 669, 785, + 736, 720, 864, 738, 871, 895, 672, 697, 872, 669, + 700, 804, 896, 226, 628, 685, 662, 681, 741, 863, + 879, 859, 786, 534, 547, 805, 806, 807, 637, 746, + 865, 866, 775, 753, 787, 559, 788, 676, 808, 789, + 858, 754, 809, 810, 875, 694, 714, 671, 695, 684, + 790, 811, 873, 757, 758, 760, 812, 761, 813, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 137, 137, 137, - 137, -2, -2, -2, -2, 0, 0, -2, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 137, + 137, 137, 137, -2, -2, -2, -2, 0, 0, -2, + 0, 0, 0, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 0, 0, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 0, 0, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, @@ -537,45 +538,43 @@ class Php5 extends \PhpParser\ParserAbstract 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 570, 570, 570, 570, 570, 570, 570, 570, 570, - 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, - 570, 570, 570, 570, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 570, -21, -21, -21, - -21, 570, -21, -21, -21, -21, -21, -21, -21, 570, - 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, - 570, 570, 570, 570, 570, 570, 570, -21, 570, 570, - 570, -21, 110, -21, 110, 110, 110, 110, 110, 110, - 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, - 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, - 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, - 110, 110, 110, 110, 110, 110, 110, 570, 0, 0, - 570, -21, 570, -21, 570, -21, 570, 570, 570, 570, - 570, 570, -21, -21, -21, -21, -21, -21, 0, 125, - 125, 125, 125, -21, -21, -21, -21, -38, 110, 110, - 110, 110, 110, 110, 125, 125, 303, 303, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 110, -38, - 110, 614, 614, 614, 614, 623, 623, 623, 614, 255, - 255, 255, 614, 0, 0, 0, 0, 0, 0, 614, - 255, 0, 110, 110, 110, 110, 0, 110, 110, 614, - 614, 614, 623, 614, 255, 623, 623, 614, 584, 571, - 571, 571, 571, 197, 366, 0, 614, 614, 623, 623, - 623, 0, 0, 0, 584, 0, 621, 0, 0, 0, - 0, 579, 68, 0, 237, 0, 0, 0, 0, 0, - 0, 624, 237, 378, 378, 0, 618, 579, 579, 579, - 0, 0, 624, 624, 0, 0, 0, 0, 0, 0, - 258, 624, 0, 0, 0, 0, 258, 209, 0, 0, - 209, 0, 197 + 137, 137, 137, 593, 593, 593, 593, 593, 593, 593, + 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, + 593, 593, 593, 593, 593, 593, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 593, -21, + -21, -21, -21, 593, -21, -21, -21, -21, -21, -21, + -21, 593, 593, 593, 593, 593, 593, 593, 593, 593, + 593, 593, 593, 593, 593, 593, 593, 593, 593, -21, + 365, 593, 593, 593, -21, 365, 365, 365, 365, 365, + 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, + 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, + 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, + 365, 365, 365, 365, 365, 365, 365, 365, -21, 593, + 0, 0, 593, -21, 593, -21, 593, -21, 593, 593, + 593, 593, 593, 593, -21, -21, -21, -21, -21, -21, + 0, 533, 533, 533, 533, -21, -21, -21, -21, 365, + 365, -38, 365, 365, 365, 365, 365, 365, 365, 365, + 365, 365, 365, 365, 365, 365, 365, 533, 533, 167, + 167, 365, 365, 365, 365, 365, -38, 365, 365, 249, + 689, 689, 689, 387, 387, 387, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 387, 249, + 0, 249, 0, 365, 249, 689, 249, 387, 689, 689, + 249, 794, 603, 603, 603, 603, 226, 383, 0, 689, + 689, 0, 689, 0, 0, 0, 0, 0, 794, 0, + 683, 0, 0, 0, 0, 631, 67, 0, 696, 273, + 0, 0, 0, 0, 0, 0, 696, 273, 302, 302, + 0, 687, 631, 631, 631, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 226 ); protected $actionDefault = array( 3,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767, 534, 534, 489,32767,32767, - 32767,32767,32767,32767,32767,32767,32767, 294, 294, 294, + 32767,32767,32767,32767,32767,32767,32767, 293, 293, 293, 32767,32767,32767, 522, 522, 522, 522, 522, 522, 522, - 522, 522, 522, 522,32767,32767,32767,32767,32767, 377, + 522, 522, 522, 522,32767,32767,32767,32767,32767, 376, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, @@ -583,129 +582,120 @@ class Php5 extends \PhpParser\ParserAbstract 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767,32767, 383, 539,32767, + 32767,32767,32767,32767,32767,32767,32767, 382, 539,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767,32767,32767, 358, 359, - 361, 362, 293, 542, 523, 242, 384, 538, 292, 244, - 322, 493,32767,32767,32767, 324, 121, 253, 198, 492, - 124, 291, 229, 376, 378, 323, 298, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 297, 449, 355, 354, 353, 451,32767, 450, 486, 486, - 489,32767,32767,32767,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767,32767,32767, 357, 358, + 360, 361, 292, 542, 523, 241, 383, 538, 291, 243, + 321, 493,32767,32767,32767, 323, 120, 252, 197, 492, + 123, 290, 228, 375, 377, 322, 297, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 296, 449,32767, 354, 353, 352, 451, 486, 486, 489, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767, 320, 477, 476, 321, 447, 325, 448, 327, 452, - 326, 343, 344, 341, 342, 345, 454, 453, 470, 471, - 468, 469, 296, 346, 347, 348, 349, 472, 473, 474, - 475, 277,32767,32767, 533, 533,32767,32767, 334, 335, - 461, 462,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767, 278,32767, 233, 233, 233, 233,32767, - 32767,32767, 233,32767,32767,32767,32767, 329, 330, 328, - 456, 457, 455,32767, 423,32767,32767,32767,32767,32767, - 425,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767, 494,32767,32767,32767,32767,32767, 507, 412, - 32767,32767,32767, 405,32767, 217, 219, 166, 480,32767, - 32767,32767,32767,32767, 512, 339,32767,32767,32767,32767, - 32767, 549,32767, 507,32767,32767,32767,32767,32767,32767, - 352, 331, 332, 333,32767,32767,32767,32767, 511, 505, - 464, 465, 466, 467,32767,32767, 458, 459, 460, 463, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767, 170,32767, 420, 426, - 426,32767,32767,32767,32767, 170,32767,32767,32767,32767, - 32767, 170,32767,32767,32767,32767, 510, 509, 170,32767, - 406, 488, 170, 183,32767, 181, 181,32767, 203, 203, - 32767,32767, 185, 481, 500,32767, 185, 170,32767, 394, - 172, 488,32767,32767, 235,32767, 235, 394, 170, 235, - 32767,32767, 235,32767, 86, 430,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767,32767,32767, 407,32767, - 32767,32767, 373, 374, 483, 496,32767, 497,32767, 405, - 32767, 337, 338, 340, 317,32767, 319, 363, 364, 365, - 366, 367, 368, 369, 371,32767, 410,32767, 413,32767, - 32767,32767, 88, 113, 252,32767, 547, 88, 408,32767, - 32767, 301, 547,32767,32767,32767,32767, 541,32767,32767, - 295,32767,32767,32767, 88, 88, 248,32767, 168,32767, - 531,32767, 548,32767, 505, 409,32767, 336,32767,32767, - 32767,32767,32767,32767,32767,32767,32767, 506,32767,32767, - 32767,32767, 224,32767, 443,32767, 88,32767,32767, 184, - 32767,32767, 299, 243,32767,32767, 540,32767,32767,32767, - 32767,32767,32767,32767,32767,32767, 169,32767,32767,32767, - 186,32767,32767, 505,32767,32767,32767,32767,32767,32767, - 32767, 290,32767,32767,32767,32767,32767,32767,32767, 505, - 32767,32767, 228,32767,32767,32767,32767,32767,32767,32767, - 32767,32767, 86, 60,32767, 271,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767,32767, 126, 126, 3, - 126, 126, 255, 3, 255, 126, 255, 255, 126, 126, - 126, 126, 126, 126, 126, 126, 126, 126, 211, 214, - 203, 203, 163, 126, 126, 263 + 450, 319, 477, 476, 320, 447, 324, 448, 326, 452, + 325, 342, 343, 340, 341, 344, 454, 453, 470, 471, + 468, 469, 295, 345, 346, 347, 348, 472, 473, 474, + 475,32767,32767, 276, 533, 533,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767,32767,32767,32767, 333, + 334, 461, 462,32767, 232, 232, 232, 232, 277, 232, + 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767, 328, 329, 327, 456, 457, 455, + 423,32767,32767,32767, 425,32767,32767,32767,32767,32767, + 32767,32767,32767, 494,32767,32767,32767,32767,32767, 507, + 412,32767, 404,32767,32767, 216, 218, 165,32767,32767, + 480,32767,32767,32767,32767,32767, 512, 338,32767,32767, + 114,32767,32767,32767, 549,32767, 507,32767, 114,32767, + 32767,32767,32767, 351, 330, 331, 332,32767,32767, 511, + 505, 464, 465, 466, 467,32767, 458, 459, 460, 463, + 32767,32767,32767,32767,32767,32767,32767,32767, 169, 420, + 426, 426,32767,32767,32767,32767, 169,32767,32767,32767, + 32767,32767, 169,32767,32767,32767, 510, 509, 169,32767, + 405, 488, 169, 182, 180, 180,32767, 202, 202,32767, + 32767, 184, 481, 500,32767, 184, 169,32767, 393, 171, + 488,32767,32767, 234,32767, 234,32767, 393, 169, 234, + 32767,32767, 234,32767, 406, 430,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, + 32767, 372, 373, 483, 496,32767, 497,32767, 404, 336, + 337, 339, 316,32767, 318, 362, 363, 364, 365, 366, + 367, 368, 370,32767, 410,32767, 413,32767,32767,32767, + 251,32767, 547,32767,32767, 300, 547,32767,32767,32767, + 541,32767,32767, 294,32767,32767,32767,32767, 247,32767, + 167,32767, 531,32767, 548,32767, 505,32767, 335,32767, + 32767,32767,32767,32767,32767,32767,32767,32767, 506,32767, + 32767,32767,32767, 223,32767, 443,32767, 114,32767,32767, + 32767, 183,32767,32767, 298, 242,32767,32767, 540,32767, + 32767,32767,32767,32767,32767,32767,32767, 112,32767, 168, + 32767,32767,32767, 185,32767,32767, 505,32767,32767,32767, + 32767,32767,32767,32767, 289,32767,32767,32767,32767,32767, + 32767,32767, 505,32767,32767, 227,32767,32767,32767,32767, + 32767,32767,32767,32767,32767, 406,32767, 270,32767,32767, + 32767,32767,32767,32767,32767,32767,32767,32767,32767, 125, + 125, 3, 125, 125, 254, 3, 254, 125, 254, 254, + 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, + 210, 213, 202, 202, 162, 125, 125, 262 ); protected $goto = array( 165, 138, 138, 138, 165, 143, 146, 139, 140, 141, 148, 186, 167, 162, 162, 162, 162, 143, 143, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, - 158, 159, 160, 161, 183, 137, 184, 501, 502, 365, - 503, 507, 508, 509, 510, 511, 512, 513, 514, 978, - 142, 163, 144, 145, 147, 170, 175, 185, 202, 251, + 158, 159, 160, 161, 183, 137, 184, 489, 490, 367, + 491, 495, 496, 497, 498, 499, 500, 501, 502, 959, + 142, 163, 144, 145, 147, 170, 175, 185, 203, 251, 254, 256, 258, 260, 261, 262, 263, 264, 265, 273, - 274, 275, 276, 288, 289, 317, 318, 319, 381, 382, - 383, 557, 187, 188, 189, 190, 191, 192, 193, 194, + 274, 275, 276, 299, 300, 324, 325, 326, 384, 385, + 386, 538, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 149, 150, 151, 166, - 152, 168, 153, 203, 169, 154, 155, 156, 204, 157, - 135, 634, 575, 761, 575, 575, 575, 575, 575, 575, - 575, 575, 575, 575, 575, 575, 575, 575, 575, 575, - 575, 575, 575, 575, 575, 575, 575, 575, 575, 575, - 575, 575, 575, 575, 575, 575, 575, 575, 575, 575, - 575, 575, 575, 575, 575, 575, 575, 1117, 767, 1117, - 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, - 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, - 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, - 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, - 1117, 1117, 505, 505, 505, 505, 505, 505, 516, 642, - 516, 768, 505, 505, 505, 505, 505, 505, 505, 505, - 505, 505, 517, 798, 517, 899, 899, 1208, 1208, 531, - 589, 617, 863, 863, 863, 863, 173, 858, 864, 1093, - 1092, 176, 177, 178, 390, 391, 392, 393, 172, 201, - 205, 207, 255, 257, 259, 266, 267, 268, 269, 270, - 271, 277, 278, 279, 280, 290, 291, 320, 321, 322, - 396, 397, 398, 399, 174, 179, 252, 253, 180, 181, - 182, 389, 619, 550, 550, 582, 546, 598, 766, 613, - 614, 548, 548, 504, 506, 537, 554, 583, 586, 596, - 603, 885, 867, 865, 867, 668, 829, 519, 894, 889, - 574, 344, 574, 574, 574, 574, 574, 574, 574, 574, - 574, 574, 574, 574, 574, 574, 574, 574, 574, 574, - 574, 574, 574, 574, 574, 574, 574, 574, 574, 574, - 574, 574, 574, 574, 574, 574, 574, 574, 574, 574, - 574, 574, 574, 574, 574, 559, 560, 561, 562, 563, - 564, 565, 566, 568, 599, 522, 558, 330, 315, 1220, - 1220, 530, 592, 595, 640, 527, 527, 527, 869, 527, - 600, 347, 406, 530, 530, 1220, 440, 440, 440, 440, - 440, 440, 545, 527, 551, 955, 440, 440, 440, 440, - 440, 440, 440, 440, 440, 440, 1082, 1212, 1082, 906, - 906, 906, 906, 3, 4, 623, 906, 956, 626, 556, - 906, 363, 1186, 581, 1186, 917, 371, 371, 371, 366, - 1082, 1082, 1082, 1082, 791, 1082, 1082, 371, 371, 1185, - 607, 1185, 1178, 371, 1166, 471, 1202, 1202, 1202, 527, - 527, 371, 1234, 544, 576, 527, 527, 618, 1075, 527, - 1205, 791, 791, 378, 1026, 923, 524, 923, 518, 903, - 518, 912, 350, 1184, 976, 400, 528, 543, 787, 669, - 570, 372, 376, 921, 604, 785, 555, 896, 624, 625, - 892, 629, 630, 637, 639, 644, 646, 453, 455, 948, - 645, 673, 1098, 404, 1118, 627, 946, 1200, 1200, 1200, - 1036, 19, 15, 359, 1219, 1219, 1068, 873, 784, 784, - 795, 964, 792, 792, 792, 794, 1073, 926, 783, 456, - 1219, 569, 345, 346, 360, 524, 1078, 1079, 1222, 1163, - 1075, 535, 23, 587, 469, 547, 0, 615, 373, 373, - 373, 0, 0, 1076, 1177, 1076, 0, 0, 542, 0, - 460, 0, 1077, 0, 0, 0, 0, 0, 0, 0, - 0, 13, 0, 0, 0, 373, 0, 0, 622, 388, - 0, 0, 0, 1074, 631, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 521, 541, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, - 0, 541, 0, 0, 0, 0, 0, 536, 520, 0, - 525, 443, 0, 445, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 790, 1227 + 152, 168, 153, 204, 169, 154, 155, 156, 205, 157, + 135, 616, 556, 574, 578, 622, 624, 556, 556, 556, + 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, + 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, + 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, + 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, + 1099, 515, 345, 571, 600, 1099, 1099, 1099, 1099, 1099, + 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, + 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, + 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, + 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 504, 1202, + 1202, 1075, 1074, 504, 540, 541, 542, 543, 544, 545, + 546, 547, 549, 582, 3, 4, 173, 1202, 844, 844, + 844, 844, 839, 845, 176, 177, 178, 391, 392, 393, + 394, 172, 201, 206, 250, 255, 257, 259, 266, 267, + 268, 269, 270, 271, 277, 278, 279, 280, 301, 302, + 327, 328, 329, 396, 397, 398, 399, 174, 179, 252, + 253, 180, 181, 182, 493, 493, 750, 493, 493, 493, + 493, 493, 493, 493, 493, 493, 493, 493, 493, 493, + 493, 505, 929, 442, 444, 627, 505, 751, 779, 1100, + 610, 927, 880, 880, 765, 1190, 1190, 1168, 555, 775, + 764, 743, 1168, 555, 555, 555, 555, 555, 555, 555, + 555, 555, 555, 555, 555, 555, 555, 555, 555, 555, + 555, 555, 555, 555, 555, 555, 555, 555, 555, 555, + 555, 555, 555, 555, 555, 555, 555, 555, 555, 555, + 555, 555, 555, 555, 555, 555, 390, 602, 746, 532, + 532, 564, 528, 530, 530, 492, 494, 520, 536, 565, + 568, 579, 586, 810, 606, 506, 346, 347, 609, 850, + 506, 365, 537, 746, 533, 746, 563, 430, 430, 375, + 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, + 430, 430, 430, 430, 1063, 581, 957, 596, 597, 1063, + 887, 887, 887, 887, 1160, 887, 887, 1182, 1182, 1182, + 376, 376, 376, 749, 1063, 1063, 1063, 1063, 1063, 1063, + 334, 1056, 317, 374, 374, 374, 866, 848, 846, 848, + 650, 461, 507, 875, 870, 376, 1194, 368, 374, 389, + 374, 898, 374, 1080, 583, 348, 404, 374, 1216, 590, + 601, 1017, 19, 15, 361, 1148, 1187, 525, 936, 904, + 510, 526, 904, 651, 551, 381, 1201, 1201, 587, 1007, + 550, 877, 607, 608, 873, 612, 613, 619, 621, 626, + 628, 23, 884, 937, 1201, 336, 598, 1059, 1060, 1204, + 378, 1056, 557, 539, 893, 768, 766, 379, 514, 902, + 509, 524, 655, 1057, 1159, 1057, 776, 509, 1167, 524, + 514, 514, 1058, 1167, 1049, 907, 508, 1054, 511, 433, + 434, 510, 1184, 1184, 1184, 854, 445, 945, 569, 1145, + 459, 362, 0, 0, 773, 1209, 0, 518, 0, 519, + 0, 529, 0, 0, 0, 0, 0, 1166, 0, 0, + 0, 771, 0, 0, 0, 449, 0, 0, 0, 0, + 0, 0, 605, 0, 0, 0, 0, 13, 1055, 614 ); protected $gotoCheck = array( @@ -720,96 +710,89 @@ class Php5 extends \PhpParser\ParserAbstract 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, - 42, 56, 66, 5, 66, 66, 66, 66, 66, 66, + 42, 56, 66, 59, 59, 59, 8, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, - 66, 66, 66, 66, 66, 66, 66, 124, 14, 124, + 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, + 124, 99, 69, 39, 39, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, - 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, - 124, 124, 115, 115, 115, 115, 115, 115, 66, 8, - 66, 15, 115, 115, 115, 115, 115, 115, 115, 115, - 115, 115, 115, 28, 115, 74, 74, 74, 74, 99, - 39, 39, 66, 66, 66, 66, 26, 66, 66, 122, - 122, 26, 26, 26, 26, 26, 26, 26, 26, 26, + 124, 124, 124, 124, 124, 124, 124, 124, 66, 140, + 140, 122, 122, 66, 108, 108, 108, 108, 108, 108, + 108, 108, 108, 108, 29, 29, 26, 140, 66, 66, + 66, 66, 66, 66, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, - 26, 50, 50, 50, 50, 50, 50, 64, 13, 64, - 64, 50, 50, 50, 50, 50, 50, 50, 50, 50, - 50, 13, 13, 13, 13, 13, 49, 13, 13, 13, - 56, 69, 56, 56, 56, 56, 56, 56, 56, 56, + 26, 26, 26, 26, 115, 115, 14, 115, 115, 115, + 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, + 115, 115, 7, 7, 7, 7, 115, 15, 28, 7, + 7, 7, 74, 74, 22, 74, 74, 116, 56, 22, + 22, 5, 116, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, - 56, 56, 56, 56, 56, 108, 108, 108, 108, 108, - 108, 108, 108, 108, 108, 10, 46, 123, 123, 140, - 140, 46, 59, 59, 59, 10, 10, 10, 32, 10, - 67, 67, 67, 46, 46, 140, 56, 56, 56, 56, - 56, 56, 10, 10, 107, 95, 56, 56, 56, 56, - 56, 56, 56, 56, 56, 56, 56, 138, 56, 56, - 56, 56, 56, 29, 29, 60, 56, 95, 60, 2, - 56, 60, 116, 2, 116, 81, 12, 12, 12, 45, - 56, 56, 56, 56, 22, 56, 56, 12, 12, 117, - 125, 117, 79, 12, 129, 56, 117, 117, 117, 10, - 10, 12, 12, 10, 10, 10, 10, 48, 79, 10, - 136, 22, 22, 47, 100, 12, 12, 12, 120, 76, - 120, 78, 17, 117, 99, 21, 10, 31, 24, 31, - 31, 11, 16, 82, 31, 23, 10, 31, 31, 31, - 31, 31, 31, 31, 31, 31, 31, 7, 7, 7, - 7, 71, 33, 20, 7, 7, 7, 8, 8, 8, - 33, 33, 33, 33, 139, 139, 111, 68, 22, 22, - 25, 97, 22, 22, 22, 22, 113, 83, 22, 62, - 139, 33, 69, 69, 57, 12, 79, 79, 139, 128, - 79, 57, 33, 63, 106, 57, -1, 33, 121, 121, - 121, -1, -1, 79, 79, 79, -1, -1, 8, -1, - 57, -1, 79, -1, -1, -1, -1, -1, -1, -1, - -1, 57, -1, -1, -1, 121, -1, -1, 12, 121, - -1, -1, -1, 12, 12, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 8, 8, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 8, - -1, 8, -1, -1, -1, -1, -1, 99, 8, -1, - 8, 8, -1, 8, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 8, 8 + 56, 56, 56, 56, 56, 56, 50, 50, 10, 50, + 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, + 50, 50, 50, 49, 60, 120, 69, 69, 60, 32, + 120, 60, 2, 10, 107, 10, 2, 56, 56, 10, + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 64, 99, 64, 64, 56, + 56, 56, 56, 56, 79, 56, 56, 8, 8, 8, + 121, 121, 121, 13, 56, 56, 56, 56, 56, 56, + 123, 79, 123, 12, 12, 12, 13, 13, 13, 13, + 13, 56, 13, 13, 13, 121, 138, 45, 12, 121, + 12, 81, 12, 33, 67, 67, 67, 12, 12, 125, + 48, 33, 33, 33, 33, 129, 136, 8, 95, 12, + 12, 31, 12, 31, 31, 47, 139, 139, 31, 100, + 33, 31, 31, 31, 31, 31, 31, 31, 31, 31, + 31, 33, 76, 95, 139, 17, 33, 79, 79, 139, + 11, 79, 11, 46, 78, 24, 23, 16, 46, 82, + 8, 8, 71, 79, 79, 79, 25, 8, 117, 8, + 46, 46, 79, 117, 111, 83, 8, 113, 8, 8, + 8, 12, 117, 117, 117, 68, 62, 97, 63, 128, + 106, 57, -1, -1, 8, 8, -1, 57, -1, 99, + -1, 57, -1, -1, -1, -1, -1, 117, -1, -1, + -1, 8, -1, -1, -1, 57, -1, -1, -1, -1, + -1, -1, 12, -1, -1, -1, -1, 57, 12, 12 ); protected $gotoBase = array( - 0, 0, -230, 0, 0, 102, 0, 492, 198, 0, - 42, 144, 113, 286, 156, 209, 132, 149, 0, 0, - 95, 141, 111, 134, 143, 99, 30, 0, 213, -260, - 0, -171, 358, 84, 0, 0, 0, 0, 0, 192, - 0, 0, -24, 0, 0, 389, 342, 170, 174, 288, - -1, 0, 0, 0, 0, 0, 104, 103, 0, 66, - -51, 0, 83, 87, -367, 0, -94, 53, 94, -138, - 0, 139, 0, 0, -57, 0, 157, 0, 155, 100, - 0, 397, 129, 105, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 114, 0, 97, 0, 188, - 160, 0, 0, 0, 0, 0, 77, 368, 311, 0, - 0, 96, 0, 101, 0, -80, 120, 137, 0, 0, - 166, 239, -71, 43, -49, 231, 0, 0, 78, 234, - 0, 0, 0, 0, 0, 0, 175, 0, 380, 200, - 55, 0, 0 + 0, 0, -249, 0, 0, 300, 0, 287, 105, 0, + 47, 164, 118, 421, 274, 295, 171, 184, 0, 0, + 0, 0, -49, 168, 172, 104, 24, 0, 288, -431, + 0, -159, 359, 44, 0, 0, 0, 0, 0, 125, + 0, 0, -24, 0, 0, 407, 479, 186, 178, 355, + 75, 0, 0, 0, 0, 0, 106, 119, 0, -192, + -81, 0, 101, 93, -231, 0, -90, 135, 121, -276, + 0, 148, 0, 0, 21, 0, 183, 0, 194, 71, + 0, 423, 155, 112, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 185, 0, 122, 0, 120, + 176, 0, 0, 0, 0, 0, 83, 358, 170, 0, + 0, 113, 0, 111, 0, -7, 9, 220, 0, 0, + 77, 108, -102, 100, -42, 251, 0, 0, 89, 256, + 0, 0, 0, 0, 0, 0, 181, 0, 419, 160, + -107, 0, 0 ); protected $gotoDefault = array( - -32768, 473, 677, 2, 678, 751, 759, 610, 487, 643, - 488, 523, 1196, 804, 805, 806, 368, 414, 489, 367, - 401, 394, 793, 786, 788, 796, 171, 402, 799, 1, - 801, 529, 837, 1027, 355, 809, 356, 602, 811, 539, - 813, 814, 136, 369, 370, 540, 490, 377, 590, 828, - 272, 374, 830, 357, 831, 840, 358, 470, 465, 571, - 621, 435, 452, 584, 578, 549, 1090, 579, 872, 343, - 880, 674, 888, 891, 491, 572, 902, 457, 910, 1103, - 384, 916, 922, 927, 281, 930, 415, 403, 597, 935, - 936, 7, 940, 635, 636, 8, 303, 963, 611, 977, - 420, 1046, 1048, 492, 493, 533, 464, 515, 538, 494, - 1069, 446, 405, 1072, 495, 496, 436, 437, 1087, 349, - 1171, 348, 454, 314, 1158, 593, 1122, 461, 1211, 1167, - 342, 497, 498, 364, 1190, 379, 1206, 441, 1213, 1221, - 338, 553, 580 + -32768, 463, 659, 2, 660, 733, 741, 593, 477, 625, + 577, 370, 1178, 785, 786, 787, 371, 358, 478, 369, + 400, 395, 774, 767, 769, 777, 171, 401, 780, 1, + 782, 513, 818, 1008, 355, 790, 356, 585, 792, 522, + 794, 795, 136, 372, 373, 523, 479, 380, 572, 809, + 272, 377, 811, 357, 812, 821, 360, 460, 454, 552, + 604, 425, 441, 566, 560, 531, 1072, 561, 853, 344, + 861, 656, 869, 872, 480, 553, 883, 446, 891, 1085, + 387, 897, 903, 908, 283, 911, 407, 402, 580, 916, + 917, 5, 921, 617, 618, 8, 308, 944, 594, 958, + 411, 1027, 1029, 481, 482, 517, 453, 503, 521, 483, + 1050, 435, 403, 1053, 484, 485, 426, 427, 1069, 350, + 1153, 349, 443, 316, 1140, 575, 1104, 450, 1193, 1149, + 343, 486, 487, 366, 1172, 382, 1188, 431, 1195, 1203, + 339, 535, 562 ); protected $ruleToNonTerminal = array( @@ -821,28 +804,28 @@ class Php5 extends \PhpParser\ParserAbstract 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, - 6, 6, 7, 7, 8, 9, 10, 10, 11, 12, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 17, 17, 18, 18, 18, 18, 20, 20, 16, - 16, 21, 21, 22, 22, 23, 23, 24, 24, 19, - 19, 25, 27, 27, 28, 29, 29, 31, 30, 30, - 30, 30, 32, 32, 32, 32, 32, 32, 32, 32, + 6, 6, 7, 7, 8, 9, 10, 10, 11, 11, + 12, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 17, 17, 18, 18, 20, 20, 16, 16, + 21, 21, 22, 22, 23, 23, 24, 24, 19, 19, + 25, 27, 27, 28, 29, 29, 31, 30, 30, 30, + 30, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, - 32, 13, 13, 53, 53, 55, 54, 54, 47, 47, - 57, 57, 58, 58, 14, 15, 15, 15, 61, 61, - 61, 62, 62, 65, 65, 63, 63, 67, 67, 40, - 40, 49, 49, 52, 52, 52, 51, 51, 68, 41, - 41, 41, 41, 69, 69, 70, 70, 71, 71, 38, - 38, 34, 34, 72, 36, 36, 73, 35, 35, 37, - 37, 48, 48, 48, 59, 59, 75, 75, 76, 76, - 78, 78, 78, 77, 77, 60, 60, 79, 79, 79, - 80, 80, 81, 81, 81, 43, 43, 82, 82, 82, - 44, 44, 83, 83, 84, 84, 64, 85, 85, 85, - 85, 90, 90, 91, 91, 92, 92, 92, 92, 92, - 93, 94, 94, 89, 89, 86, 86, 88, 88, 96, - 96, 95, 95, 95, 95, 95, 95, 87, 87, 98, - 97, 97, 45, 45, 39, 39, 42, 42, 42, 42, + 13, 13, 53, 53, 55, 54, 54, 47, 47, 57, + 57, 58, 58, 14, 15, 15, 15, 61, 61, 61, + 62, 62, 65, 65, 63, 63, 67, 67, 40, 40, + 49, 49, 52, 52, 52, 51, 51, 68, 41, 41, + 41, 41, 69, 69, 70, 70, 71, 71, 38, 38, + 34, 34, 72, 36, 36, 73, 35, 35, 37, 37, + 48, 48, 48, 59, 59, 75, 75, 76, 76, 78, + 78, 78, 77, 77, 60, 60, 79, 79, 79, 80, + 80, 81, 81, 81, 43, 43, 82, 82, 82, 44, + 44, 83, 83, 84, 84, 64, 85, 85, 85, 85, + 90, 90, 91, 91, 92, 92, 92, 92, 92, 93, + 94, 94, 89, 89, 86, 86, 88, 88, 96, 96, + 95, 95, 95, 95, 95, 95, 87, 87, 98, 97, + 97, 45, 45, 39, 39, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, @@ -851,9 +834,9 @@ class Php5 extends \PhpParser\ParserAbstract 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, - 42, 33, 33, 46, 46, 103, 103, 104, 104, 104, - 104, 110, 99, 99, 106, 106, 112, 112, 113, 114, - 114, 114, 114, 114, 114, 66, 66, 56, 56, 56, + 33, 33, 46, 46, 103, 103, 104, 104, 104, 104, + 110, 99, 99, 106, 106, 112, 112, 113, 114, 114, + 114, 114, 114, 114, 66, 66, 56, 56, 56, 56, 100, 100, 118, 118, 115, 115, 119, 119, 119, 119, 101, 101, 101, 105, 105, 105, 111, 111, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, @@ -880,39 +863,39 @@ class Php5 extends \PhpParser\ParserAbstract 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 3, 5, 4, 3, 4, + 2, 3, 1, 1, 7, 6, 3, 1, 3, 1, + 3, 1, 1, 3, 1, 3, 1, 2, 3, 1, + 3, 3, 1, 3, 2, 0, 1, 1, 1, 1, + 1, 3, 5, 8, 3, 5, 9, 3, 2, 3, + 2, 3, 2, 3, 3, 3, 3, 1, 2, 2, + 5, 7, 9, 5, 6, 3, 3, 2, 2, 1, + 1, 1, 0, 2, 8, 0, 4, 1, 3, 0, + 1, 0, 1, 10, 7, 6, 5, 1, 2, 2, + 0, 2, 0, 2, 0, 2, 1, 3, 1, 4, + 1, 4, 1, 1, 4, 1, 3, 3, 3, 4, + 4, 5, 0, 2, 4, 3, 1, 1, 1, 4, + 0, 2, 3, 0, 2, 4, 0, 2, 0, 3, + 1, 2, 1, 1, 0, 1, 3, 4, 6, 1, + 1, 1, 0, 1, 0, 2, 2, 3, 3, 1, + 3, 1, 2, 2, 3, 1, 1, 2, 4, 3, + 1, 1, 3, 2, 0, 1, 3, 3, 9, 3, + 1, 3, 0, 2, 4, 5, 4, 4, 4, 3, + 1, 1, 1, 3, 1, 1, 0, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, - 1, 1, 1, 1, 3, 5, 4, 3, 4, 2, - 3, 1, 1, 7, 8, 6, 7, 3, 1, 3, - 1, 3, 1, 1, 3, 1, 2, 1, 2, 3, - 1, 3, 3, 1, 3, 2, 0, 1, 1, 1, - 1, 1, 3, 5, 8, 3, 5, 9, 3, 2, - 3, 2, 3, 2, 3, 3, 3, 3, 1, 2, - 2, 5, 7, 9, 5, 6, 3, 3, 2, 2, - 1, 1, 1, 0, 2, 8, 0, 4, 1, 3, - 0, 1, 0, 1, 10, 7, 6, 5, 1, 2, - 2, 0, 2, 0, 2, 0, 2, 1, 3, 1, - 4, 1, 4, 1, 1, 4, 1, 3, 3, 3, - 4, 4, 5, 0, 2, 4, 3, 1, 1, 1, - 4, 0, 2, 3, 0, 2, 4, 0, 2, 0, - 3, 1, 2, 1, 1, 0, 1, 3, 4, 6, - 1, 1, 1, 0, 1, 0, 2, 2, 3, 3, - 1, 3, 1, 2, 2, 3, 1, 1, 2, 4, - 3, 1, 1, 3, 2, 0, 1, 3, 3, 9, - 3, 1, 3, 0, 2, 4, 5, 4, 4, 4, - 3, 1, 1, 1, 3, 1, 1, 0, 1, 1, - 2, 1, 1, 1, 1, 1, 1, 1, 3, 1, - 1, 3, 3, 1, 0, 1, 1, 3, 3, 4, - 4, 1, 2, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 1, 0, 1, 1, 3, 3, 4, 4, + 1, 2, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 2, 2, 2, 2, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, - 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 1, 3, 5, 4, 3, 4, 4, 2, 2, + 1, 3, 5, 4, 3, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 1, 1, 1, 3, 2, 1, 2, 10, - 11, 3, 3, 2, 4, 4, 3, 4, 4, 4, - 4, 7, 3, 2, 0, 4, 1, 3, 2, 2, - 4, 6, 2, 2, 4, 1, 1, 1, 2, 3, + 2, 1, 1, 1, 3, 2, 1, 2, 10, 11, + 3, 3, 2, 4, 4, 3, 4, 4, 4, 4, + 7, 3, 2, 0, 4, 1, 3, 2, 2, 4, + 6, 2, 2, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, 4, 4, 0, 2, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, @@ -1192,19 +1175,19 @@ class Php5 extends \PhpParser\ParserAbstract $this->semValue = new Node\Identifier($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 86 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); - }, - 87 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; - }, - 88 => function ($stackPos) { $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, + 87 => function ($stackPos) { + $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + }, + 88 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, 89 => function ($stackPos) { - $this->semValue = new Expr\Variable(substr($this->semStack[$stackPos-(1-1)], 1), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Name(substr($this->semStack[$stackPos-(1-1)], 1), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 90 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\Variable(substr($this->semStack[$stackPos-(1-1)], 1), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 91 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; @@ -1213,117 +1196,117 @@ class Php5 extends \PhpParser\ParserAbstract $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 93 => function ($stackPos) { - $this->semValue = new Stmt\HaltCompiler($this->lexer->handleHaltCompiler(), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 94 => function ($stackPos) { + $this->semValue = new Stmt\HaltCompiler($this->lexer->handleHaltCompiler(), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + }, + 95 => function ($stackPos) { $this->semValue = new Stmt\Namespace_($this->semStack[$stackPos-(3-2)], null, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); $this->semValue->setAttribute('kind', Stmt\Namespace_::KIND_SEMICOLON); $this->checkNamespace($this->semValue); }, - 95 => function ($stackPos) { + 96 => function ($stackPos) { $this->semValue = new Stmt\Namespace_($this->semStack[$stackPos-(5-2)], $this->semStack[$stackPos-(5-4)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); $this->semValue->setAttribute('kind', Stmt\Namespace_::KIND_BRACED); $this->checkNamespace($this->semValue); }, - 96 => function ($stackPos) { + 97 => function ($stackPos) { $this->semValue = new Stmt\Namespace_(null, $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); $this->semValue->setAttribute('kind', Stmt\Namespace_::KIND_BRACED); $this->checkNamespace($this->semValue); }, - 97 => function ($stackPos) { + 98 => function ($stackPos) { $this->semValue = new Stmt\Use_($this->semStack[$stackPos-(3-2)], Stmt\Use_::TYPE_NORMAL, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 98 => function ($stackPos) { + 99 => function ($stackPos) { $this->semValue = new Stmt\Use_($this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-2)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 99 => function ($stackPos) { + 100 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 100 => function ($stackPos) { + 101 => function ($stackPos) { $this->semValue = new Stmt\Const_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 101 => function ($stackPos) { + 102 => function ($stackPos) { $this->semValue = Stmt\Use_::TYPE_FUNCTION; }, - 102 => function ($stackPos) { + 103 => function ($stackPos) { $this->semValue = Stmt\Use_::TYPE_CONSTANT; }, - 103 => function ($stackPos) { - $this->semValue = new Stmt\GroupUse(new Name($this->semStack[$stackPos-(7-3)], $this->startAttributeStack[$stackPos-(7-3)] + $this->endAttributeStack[$stackPos-(7-3)]), $this->semStack[$stackPos-(7-6)], $this->semStack[$stackPos-(7-2)], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes); - }, 104 => function ($stackPos) { - $this->semValue = new Stmt\GroupUse(new Name($this->semStack[$stackPos-(8-4)], $this->startAttributeStack[$stackPos-(8-4)] + $this->endAttributeStack[$stackPos-(8-4)]), $this->semStack[$stackPos-(8-7)], $this->semStack[$stackPos-(8-2)], $this->startAttributeStack[$stackPos-(8-1)] + $this->endAttributes); + $this->semValue = new Stmt\GroupUse($this->semStack[$stackPos-(7-3)], $this->semStack[$stackPos-(7-6)], $this->semStack[$stackPos-(7-2)], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes); }, 105 => function ($stackPos) { - $this->semValue = new Stmt\GroupUse(new Name($this->semStack[$stackPos-(6-2)], $this->startAttributeStack[$stackPos-(6-2)] + $this->endAttributeStack[$stackPos-(6-2)]), $this->semStack[$stackPos-(6-5)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); + $this->semValue = new Stmt\GroupUse($this->semStack[$stackPos-(6-2)], $this->semStack[$stackPos-(6-5)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); }, 106 => function ($stackPos) { - $this->semValue = new Stmt\GroupUse(new Name($this->semStack[$stackPos-(7-3)], $this->startAttributeStack[$stackPos-(7-3)] + $this->endAttributeStack[$stackPos-(7-3)]), $this->semStack[$stackPos-(7-6)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes); + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, 107 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 108 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, 109 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 110 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, 111 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 112 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); - }, - 113 => function ($stackPos) { $this->semValue = new Stmt\UseUse($this->semStack[$stackPos-(1-1)], null, Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); $this->checkUseUse($this->semValue, $stackPos-(1-1)); }, - 114 => function ($stackPos) { + 113 => function ($stackPos) { $this->semValue = new Stmt\UseUse($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); $this->checkUseUse($this->semValue, $stackPos-(3-3)); }, + 114 => function ($stackPos) { + $this->semValue = new Stmt\UseUse($this->semStack[$stackPos-(1-1)], null, Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); $this->checkUseUse($this->semValue, $stackPos-(1-1)); + }, 115 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Stmt\UseUse($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); $this->checkUseUse($this->semValue, $stackPos-(3-3)); }, 116 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(2-2)]; - }, - 117 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; $this->semValue->type = Stmt\Use_::TYPE_NORMAL; }, - 118 => function ($stackPos) { + 117 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-2)]; $this->semValue->type = $this->semStack[$stackPos-(2-1)]; }, - 119 => function ($stackPos) { + 118 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, + 119 => function ($stackPos) { + $this->semValue = array($this->semStack[$stackPos-(1-1)]); + }, 120 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semValue = new Node\Const_($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 121 => function ($stackPos) { - $this->semValue = new Node\Const_($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 122 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 123 => function ($stackPos) { + 122 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 124 => function ($stackPos) { + 123 => function ($stackPos) { $this->semValue = new Node\Const_($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 125 => function ($stackPos) { + 124 => function ($stackPos) { if (is_array($this->semStack[$stackPos-(2-2)])) { $this->semValue = array_merge($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)]); } else { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }; }, - 126 => function ($stackPos) { + 125 => function ($stackPos) { $this->semValue = array(); }, - 127 => function ($stackPos) { + 126 => function ($stackPos) { $startAttributes = $this->lookaheadStartAttributes; if (isset($startAttributes['comments'])) { $nop = new Stmt\Nop($this->createCommentNopAttributes($startAttributes['comments'])); } else { $nop = null; }; if ($nop !== null) { $this->semStack[$stackPos-(1-1)][] = $nop; } $this->semValue = $this->semStack[$stackPos-(1-1)]; }, + 127 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, 128 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, @@ -1331,12 +1314,9 @@ class Php5 extends \PhpParser\ParserAbstract $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 130 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; - }, - 131 => function ($stackPos) { throw new Error('__HALT_COMPILER() can only be used from the outermost scope', $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 132 => function ($stackPos) { + 131 => function ($stackPos) { if ($this->semStack[$stackPos-(3-2)]) { $this->semValue = $this->semStack[$stackPos-(3-2)]; $attrs = $this->startAttributeStack[$stackPos-(3-1)]; $stmts = $this->semValue; if (!empty($attrs['comments'])) {$stmts[0]->setAttribute('comments', array_merge($attrs['comments'], $stmts[0]->getAttribute('comments', []))); }; @@ -1346,732 +1326,735 @@ class Php5 extends \PhpParser\ParserAbstract } }, - 133 => function ($stackPos) { + 132 => function ($stackPos) { $this->semValue = new Stmt\If_($this->semStack[$stackPos-(5-2)], ['stmts' => is_array($this->semStack[$stackPos-(5-3)]) ? $this->semStack[$stackPos-(5-3)] : array($this->semStack[$stackPos-(5-3)]), 'elseifs' => $this->semStack[$stackPos-(5-4)], 'else' => $this->semStack[$stackPos-(5-5)]], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 134 => function ($stackPos) { + 133 => function ($stackPos) { $this->semValue = new Stmt\If_($this->semStack[$stackPos-(8-2)], ['stmts' => $this->semStack[$stackPos-(8-4)], 'elseifs' => $this->semStack[$stackPos-(8-5)], 'else' => $this->semStack[$stackPos-(8-6)]], $this->startAttributeStack[$stackPos-(8-1)] + $this->endAttributes); }, - 135 => function ($stackPos) { + 134 => function ($stackPos) { $this->semValue = new Stmt\While_($this->semStack[$stackPos-(3-2)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 136 => function ($stackPos) { + 135 => function ($stackPos) { $this->semValue = new Stmt\Do_($this->semStack[$stackPos-(5-4)], is_array($this->semStack[$stackPos-(5-2)]) ? $this->semStack[$stackPos-(5-2)] : array($this->semStack[$stackPos-(5-2)]), $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 137 => function ($stackPos) { + 136 => function ($stackPos) { $this->semValue = new Stmt\For_(['init' => $this->semStack[$stackPos-(9-3)], 'cond' => $this->semStack[$stackPos-(9-5)], 'loop' => $this->semStack[$stackPos-(9-7)], 'stmts' => $this->semStack[$stackPos-(9-9)]], $this->startAttributeStack[$stackPos-(9-1)] + $this->endAttributes); }, - 138 => function ($stackPos) { + 137 => function ($stackPos) { $this->semValue = new Stmt\Switch_($this->semStack[$stackPos-(3-2)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 139 => function ($stackPos) { + 138 => function ($stackPos) { $this->semValue = new Stmt\Break_(null, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 140 => function ($stackPos) { + 139 => function ($stackPos) { $this->semValue = new Stmt\Break_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 141 => function ($stackPos) { + 140 => function ($stackPos) { $this->semValue = new Stmt\Continue_(null, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 142 => function ($stackPos) { + 141 => function ($stackPos) { $this->semValue = new Stmt\Continue_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 143 => function ($stackPos) { + 142 => function ($stackPos) { $this->semValue = new Stmt\Return_(null, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 144 => function ($stackPos) { + 143 => function ($stackPos) { $this->semValue = new Stmt\Return_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 145 => function ($stackPos) { + 144 => function ($stackPos) { $this->semValue = new Stmt\Global_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 146 => function ($stackPos) { + 145 => function ($stackPos) { $this->semValue = new Stmt\Static_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 147 => function ($stackPos) { + 146 => function ($stackPos) { $this->semValue = new Stmt\Echo_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 148 => function ($stackPos) { + 147 => function ($stackPos) { $this->semValue = new Stmt\InlineHTML($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, + 148 => function ($stackPos) { + $this->semValue = new Stmt\Expression($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, 149 => function ($stackPos) { $this->semValue = new Stmt\Expression($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 150 => function ($stackPos) { - $this->semValue = new Stmt\Expression($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 151 => function ($stackPos) { $this->semValue = new Stmt\Unset_($this->semStack[$stackPos-(5-3)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 152 => function ($stackPos) { + 151 => function ($stackPos) { $this->semValue = new Stmt\Foreach_($this->semStack[$stackPos-(7-3)], $this->semStack[$stackPos-(7-5)][0], ['keyVar' => null, 'byRef' => $this->semStack[$stackPos-(7-5)][1], 'stmts' => $this->semStack[$stackPos-(7-7)]], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes); }, - 153 => function ($stackPos) { + 152 => function ($stackPos) { $this->semValue = new Stmt\Foreach_($this->semStack[$stackPos-(9-3)], $this->semStack[$stackPos-(9-7)][0], ['keyVar' => $this->semStack[$stackPos-(9-5)], 'byRef' => $this->semStack[$stackPos-(9-7)][1], 'stmts' => $this->semStack[$stackPos-(9-9)]], $this->startAttributeStack[$stackPos-(9-1)] + $this->endAttributes); }, - 154 => function ($stackPos) { + 153 => function ($stackPos) { $this->semValue = new Stmt\Declare_($this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 155 => function ($stackPos) { + 154 => function ($stackPos) { $this->semValue = new Stmt\TryCatch($this->semStack[$stackPos-(6-3)], $this->semStack[$stackPos-(6-5)], $this->semStack[$stackPos-(6-6)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); $this->checkTryCatch($this->semValue); }, - 156 => function ($stackPos) { + 155 => function ($stackPos) { $this->semValue = new Stmt\Throw_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 157 => function ($stackPos) { + 156 => function ($stackPos) { $this->semValue = new Stmt\Goto_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 158 => function ($stackPos) { + 157 => function ($stackPos) { $this->semValue = new Stmt\Label($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 159 => function ($stackPos) { + 158 => function ($stackPos) { $this->semValue = new Stmt\Expression($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 160 => function ($stackPos) { + 159 => function ($stackPos) { $this->semValue = array(); /* means: no statement */ }, - 161 => function ($stackPos) { + 160 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 162 => function ($stackPos) { + 161 => function ($stackPos) { $startAttributes = $this->startAttributeStack[$stackPos-(1-1)]; if (isset($startAttributes['comments'])) { $this->semValue = new Stmt\Nop($startAttributes + $this->endAttributes); } else { $this->semValue = null; }; if ($this->semValue === null) $this->semValue = array(); /* means: no statement */ }, - 163 => function ($stackPos) { + 162 => function ($stackPos) { $this->semValue = array(); }, - 164 => function ($stackPos) { + 163 => function ($stackPos) { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 165 => function ($stackPos) { + 164 => function ($stackPos) { $this->semValue = new Stmt\Catch_(array($this->semStack[$stackPos-(8-3)]), $this->semStack[$stackPos-(8-4)], $this->semStack[$stackPos-(8-7)], $this->startAttributeStack[$stackPos-(8-1)] + $this->endAttributes); }, - 166 => function ($stackPos) { + 165 => function ($stackPos) { $this->semValue = null; }, - 167 => function ($stackPos) { + 166 => function ($stackPos) { $this->semValue = new Stmt\Finally_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 168 => function ($stackPos) { + 167 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 169 => function ($stackPos) { + 168 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 170 => function ($stackPos) { + 169 => function ($stackPos) { $this->semValue = false; }, + 170 => function ($stackPos) { + $this->semValue = true; + }, 171 => function ($stackPos) { - $this->semValue = true; - }, - 172 => function ($stackPos) { $this->semValue = false; }, - 173 => function ($stackPos) { + 172 => function ($stackPos) { $this->semValue = true; }, - 174 => function ($stackPos) { + 173 => function ($stackPos) { $this->semValue = new Stmt\Function_($this->semStack[$stackPos-(10-3)], ['byRef' => $this->semStack[$stackPos-(10-2)], 'params' => $this->semStack[$stackPos-(10-5)], 'returnType' => $this->semStack[$stackPos-(10-7)], 'stmts' => $this->semStack[$stackPos-(10-9)]], $this->startAttributeStack[$stackPos-(10-1)] + $this->endAttributes); }, - 175 => function ($stackPos) { + 174 => function ($stackPos) { $this->semValue = new Stmt\Class_($this->semStack[$stackPos-(7-2)], ['type' => $this->semStack[$stackPos-(7-1)], 'extends' => $this->semStack[$stackPos-(7-3)], 'implements' => $this->semStack[$stackPos-(7-4)], 'stmts' => $this->semStack[$stackPos-(7-6)]], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes); $this->checkClass($this->semValue, $stackPos-(7-2)); }, - 176 => function ($stackPos) { + 175 => function ($stackPos) { $this->semValue = new Stmt\Interface_($this->semStack[$stackPos-(6-2)], ['extends' => $this->semStack[$stackPos-(6-3)], 'stmts' => $this->semStack[$stackPos-(6-5)]], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); $this->checkInterface($this->semValue, $stackPos-(6-2)); }, - 177 => function ($stackPos) { + 176 => function ($stackPos) { $this->semValue = new Stmt\Trait_($this->semStack[$stackPos-(5-2)], ['stmts' => $this->semStack[$stackPos-(5-4)]], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 178 => function ($stackPos) { + 177 => function ($stackPos) { $this->semValue = 0; }, - 179 => function ($stackPos) { + 178 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_ABSTRACT; }, - 180 => function ($stackPos) { + 179 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_FINAL; }, - 181 => function ($stackPos) { + 180 => function ($stackPos) { $this->semValue = null; }, + 181 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(2-2)]; + }, 182 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(2-2)]; + $this->semValue = array(); }, 183 => function ($stackPos) { - $this->semValue = array(); + $this->semValue = $this->semStack[$stackPos-(2-2)]; }, 184 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(2-2)]; + $this->semValue = array(); }, 185 => function ($stackPos) { - $this->semValue = array(); - }, - 186 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-2)]; }, - 187 => function ($stackPos) { + 186 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, + 187 => function ($stackPos) { + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + }, 188 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + $this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]); }, 189 => function ($stackPos) { - $this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]); + $this->semValue = $this->semStack[$stackPos-(4-2)]; }, 190 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(4-2)]; + $this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]); }, 191 => function ($stackPos) { - $this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]); + $this->semValue = $this->semStack[$stackPos-(4-2)]; }, 192 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(4-2)]; - }, - 193 => function ($stackPos) { $this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]); }, - 194 => function ($stackPos) { + 193 => function ($stackPos) { $this->semValue = null; }, - 195 => function ($stackPos) { + 194 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(4-2)]; }, - 196 => function ($stackPos) { + 195 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 197 => function ($stackPos) { + 196 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 198 => function ($stackPos) { + 197 => function ($stackPos) { $this->semValue = new Stmt\DeclareDeclare($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 199 => function ($stackPos) { + 198 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(3-2)]; }, - 200 => function ($stackPos) { + 199 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(4-3)]; }, - 201 => function ($stackPos) { + 200 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(4-2)]; }, - 202 => function ($stackPos) { + 201 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(5-3)]; }, - 203 => function ($stackPos) { + 202 => function ($stackPos) { $this->semValue = array(); }, - 204 => function ($stackPos) { + 203 => function ($stackPos) { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 205 => function ($stackPos) { + 204 => function ($stackPos) { $this->semValue = new Stmt\Case_($this->semStack[$stackPos-(4-2)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 206 => function ($stackPos) { + 205 => function ($stackPos) { $this->semValue = new Stmt\Case_(null, $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, + 206 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos]; + }, 207 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos]; }, 208 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos]; - }, - 209 => function ($stackPos) { $this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]); }, - 210 => function ($stackPos) { + 209 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(4-2)]; }, - 211 => function ($stackPos) { + 210 => function ($stackPos) { $this->semValue = array(); }, + 211 => function ($stackPos) { + $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; + }, 212 => function ($stackPos) { - $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; - }, - 213 => function ($stackPos) { $this->semValue = new Stmt\ElseIf_($this->semStack[$stackPos-(3-2)], is_array($this->semStack[$stackPos-(3-3)]) ? $this->semStack[$stackPos-(3-3)] : array($this->semStack[$stackPos-(3-3)]), $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 214 => function ($stackPos) { + 213 => function ($stackPos) { $this->semValue = array(); }, - 215 => function ($stackPos) { + 214 => function ($stackPos) { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 216 => function ($stackPos) { + 215 => function ($stackPos) { $this->semValue = new Stmt\ElseIf_($this->semStack[$stackPos-(4-2)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 217 => function ($stackPos) { + 216 => function ($stackPos) { $this->semValue = null; }, - 218 => function ($stackPos) { + 217 => function ($stackPos) { $this->semValue = new Stmt\Else_(is_array($this->semStack[$stackPos-(2-2)]) ? $this->semStack[$stackPos-(2-2)] : array($this->semStack[$stackPos-(2-2)]), $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 219 => function ($stackPos) { + 218 => function ($stackPos) { $this->semValue = null; }, - 220 => function ($stackPos) { + 219 => function ($stackPos) { $this->semValue = new Stmt\Else_($this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 221 => function ($stackPos) { + 220 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)], false); }, - 222 => function ($stackPos) { + 221 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(2-2)], true); }, - 223 => function ($stackPos) { + 222 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)], false); }, - 224 => function ($stackPos) { + 223 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, + 224 => function ($stackPos) { + $this->semValue = array(); + }, 225 => function ($stackPos) { - $this->semValue = array(); + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 226 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, 227 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; - }, - 228 => function ($stackPos) { $this->semValue = new Node\Param($this->semStack[$stackPos-(4-4)], null, $this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-2)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); $this->checkParam($this->semValue); }, - 229 => function ($stackPos) { + 228 => function ($stackPos) { $this->semValue = new Node\Param($this->semStack[$stackPos-(6-4)], $this->semStack[$stackPos-(6-6)], $this->semStack[$stackPos-(6-1)], $this->semStack[$stackPos-(6-2)], $this->semStack[$stackPos-(6-3)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); $this->checkParam($this->semValue); }, - 230 => function ($stackPos) { + 229 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 231 => function ($stackPos) { + 230 => function ($stackPos) { $this->semValue = new Node\Identifier('array', $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 232 => function ($stackPos) { + 231 => function ($stackPos) { $this->semValue = new Node\Identifier('callable', $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 233 => function ($stackPos) { + 232 => function ($stackPos) { $this->semValue = null; }, + 233 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, 234 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; - }, - 235 => function ($stackPos) { $this->semValue = null; }, - 236 => function ($stackPos) { + 235 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-2)]; }, - 237 => function ($stackPos) { + 236 => function ($stackPos) { $this->semValue = array(); }, - 238 => function ($stackPos) { + 237 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(3-2)]; }, - 239 => function ($stackPos) { + 238 => function ($stackPos) { $this->semValue = array(new Node\Arg($this->semStack[$stackPos-(3-2)], false, false, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes)); }, - 240 => function ($stackPos) { + 239 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, + 240 => function ($stackPos) { + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + }, 241 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; - }, - 242 => function ($stackPos) { $this->semValue = new Node\Arg($this->semStack[$stackPos-(1-1)], false, false, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 243 => function ($stackPos) { + 242 => function ($stackPos) { $this->semValue = new Node\Arg($this->semStack[$stackPos-(2-2)], true, false, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 244 => function ($stackPos) { + 243 => function ($stackPos) { $this->semValue = new Node\Arg($this->semStack[$stackPos-(2-2)], false, true, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 245 => function ($stackPos) { + 244 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, + 245 => function ($stackPos) { + $this->semValue = array($this->semStack[$stackPos-(1-1)]); + }, 246 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); - }, - 247 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 248 => function ($stackPos) { + 247 => function ($stackPos) { $this->semValue = new Expr\Variable($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 249 => function ($stackPos) { + 248 => function ($stackPos) { $this->semValue = new Expr\Variable($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 250 => function ($stackPos) { + 249 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 251 => function ($stackPos) { + 250 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 252 => function ($stackPos) { + 251 => function ($stackPos) { $this->semValue = new Stmt\StaticVar($this->semStack[$stackPos-(1-1)], null, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 253 => function ($stackPos) { + 252 => function ($stackPos) { $this->semValue = new Stmt\StaticVar($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 254 => function ($stackPos) { + 253 => function ($stackPos) { if ($this->semStack[$stackPos-(2-2)] !== null) { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; } }, - 255 => function ($stackPos) { + 254 => function ($stackPos) { $this->semValue = array(); }, - 256 => function ($stackPos) { + 255 => function ($stackPos) { $startAttributes = $this->lookaheadStartAttributes; if (isset($startAttributes['comments'])) { $nop = new Stmt\Nop($this->createCommentNopAttributes($startAttributes['comments'])); } else { $nop = null; }; if ($nop !== null) { $this->semStack[$stackPos-(1-1)][] = $nop; } $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 257 => function ($stackPos) { + 256 => function ($stackPos) { $this->semValue = new Stmt\Property($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); $this->checkProperty($this->semValue, $stackPos-(3-1)); }, - 258 => function ($stackPos) { + 257 => function ($stackPos) { $this->semValue = new Stmt\ClassConst($this->semStack[$stackPos-(3-2)], 0, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 259 => function ($stackPos) { + 258 => function ($stackPos) { $this->semValue = new Stmt\ClassMethod($this->semStack[$stackPos-(9-4)], ['type' => $this->semStack[$stackPos-(9-1)], 'byRef' => $this->semStack[$stackPos-(9-3)], 'params' => $this->semStack[$stackPos-(9-6)], 'returnType' => $this->semStack[$stackPos-(9-8)], 'stmts' => $this->semStack[$stackPos-(9-9)]], $this->startAttributeStack[$stackPos-(9-1)] + $this->endAttributes); $this->checkClassMethod($this->semValue, $stackPos-(9-1)); }, - 260 => function ($stackPos) { + 259 => function ($stackPos) { $this->semValue = new Stmt\TraitUse($this->semStack[$stackPos-(3-2)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 261 => function ($stackPos) { + 260 => function ($stackPos) { $this->semValue = array(); }, - 262 => function ($stackPos) { + 261 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(3-2)]; }, - 263 => function ($stackPos) { + 262 => function ($stackPos) { $this->semValue = array(); }, - 264 => function ($stackPos) { + 263 => function ($stackPos) { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 265 => function ($stackPos) { + 264 => function ($stackPos) { $this->semValue = new Stmt\TraitUseAdaptation\Precedence($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 266 => function ($stackPos) { + 265 => function ($stackPos) { $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(5-1)][0], $this->semStack[$stackPos-(5-1)][1], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-4)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 267 => function ($stackPos) { + 266 => function ($stackPos) { $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], $this->semStack[$stackPos-(4-3)], null, $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, + 267 => function ($stackPos) { + $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], null, $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + }, 268 => function ($stackPos) { $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], null, $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 269 => function ($stackPos) { - $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], null, $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); - }, - 270 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)]); }, - 271 => function ($stackPos) { + 270 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 272 => function ($stackPos) { + 271 => function ($stackPos) { $this->semValue = array(null, $this->semStack[$stackPos-(1-1)]); }, - 273 => function ($stackPos) { + 272 => function ($stackPos) { $this->semValue = null; }, - 274 => function ($stackPos) { + 273 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(3-2)]; }, - 275 => function ($stackPos) { + 274 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, + 275 => function ($stackPos) { + $this->semValue = 0; + }, 276 => function ($stackPos) { $this->semValue = 0; }, 277 => function ($stackPos) { - $this->semValue = 0; + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 278 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 279 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; - }, - 280 => function ($stackPos) { $this->checkModifier($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $this->semValue = $this->semStack[$stackPos-(2-1)] | $this->semStack[$stackPos-(2-2)]; }, - 281 => function ($stackPos) { + 280 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_PUBLIC; }, - 282 => function ($stackPos) { + 281 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_PROTECTED; }, - 283 => function ($stackPos) { + 282 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_PRIVATE; }, - 284 => function ($stackPos) { + 283 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_STATIC; }, - 285 => function ($stackPos) { + 284 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_ABSTRACT; }, - 286 => function ($stackPos) { + 285 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_FINAL; }, - 287 => function ($stackPos) { + 286 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, + 287 => function ($stackPos) { + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + }, 288 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; - }, - 289 => function ($stackPos) { $this->semValue = new Node\VarLikeIdentifier(substr($this->semStack[$stackPos-(1-1)], 1), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 290 => function ($stackPos) { + 289 => function ($stackPos) { $this->semValue = new Stmt\PropertyProperty($this->semStack[$stackPos-(1-1)], null, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 291 => function ($stackPos) { + 290 => function ($stackPos) { $this->semValue = new Stmt\PropertyProperty($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 292 => function ($stackPos) { + 291 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 293 => function ($stackPos) { + 292 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 294 => function ($stackPos) { + 293 => function ($stackPos) { $this->semValue = array(); }, + 294 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, 295 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 296 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 297 => function ($stackPos) { $this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 298 => function ($stackPos) { - $this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignRef($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 299 => function ($stackPos) { $this->semValue = new Expr\AssignRef($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 300 => function ($stackPos) { - $this->semValue = new Expr\AssignRef($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 301 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; - }, - 302 => function ($stackPos) { $this->semValue = new Expr\Clone_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 303 => function ($stackPos) { + 302 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 304 => function ($stackPos) { + 303 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 305 => function ($stackPos) { + 304 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 306 => function ($stackPos) { + 305 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 307 => function ($stackPos) { + 306 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 308 => function ($stackPos) { + 307 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 309 => function ($stackPos) { + 308 => function ($stackPos) { $this->semValue = new Expr\AssignOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 310 => function ($stackPos) { + 309 => function ($stackPos) { $this->semValue = new Expr\AssignOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 311 => function ($stackPos) { + 310 => function ($stackPos) { $this->semValue = new Expr\AssignOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 312 => function ($stackPos) { + 311 => function ($stackPos) { $this->semValue = new Expr\AssignOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 313 => function ($stackPos) { + 312 => function ($stackPos) { $this->semValue = new Expr\AssignOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 314 => function ($stackPos) { + 313 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 315 => function ($stackPos) { + 314 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Coalesce($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 316 => function ($stackPos) { + 315 => function ($stackPos) { $this->semValue = new Expr\PostInc($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 317 => function ($stackPos) { + 316 => function ($stackPos) { $this->semValue = new Expr\PreInc($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 318 => function ($stackPos) { + 317 => function ($stackPos) { $this->semValue = new Expr\PostDec($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 319 => function ($stackPos) { + 318 => function ($stackPos) { $this->semValue = new Expr\PreDec($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 320 => function ($stackPos) { + 319 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 321 => function ($stackPos) { + 320 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 322 => function ($stackPos) { + 321 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 323 => function ($stackPos) { + 322 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 324 => function ($stackPos) { + 323 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 325 => function ($stackPos) { + 324 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 326 => function ($stackPos) { + 325 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 327 => function ($stackPos) { + 326 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 328 => function ($stackPos) { + 327 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 329 => function ($stackPos) { + 328 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 330 => function ($stackPos) { + 329 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 331 => function ($stackPos) { + 330 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 332 => function ($stackPos) { + 331 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 333 => function ($stackPos) { + 332 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 334 => function ($stackPos) { + 333 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 335 => function ($stackPos) { + 334 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 336 => function ($stackPos) { + 335 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 337 => function ($stackPos) { + 336 => function ($stackPos) { $this->semValue = new Expr\UnaryPlus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 338 => function ($stackPos) { + 337 => function ($stackPos) { $this->semValue = new Expr\UnaryMinus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 339 => function ($stackPos) { + 338 => function ($stackPos) { $this->semValue = new Expr\BooleanNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 340 => function ($stackPos) { + 339 => function ($stackPos) { $this->semValue = new Expr\BitwiseNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 341 => function ($stackPos) { + 340 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 342 => function ($stackPos) { + 341 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 343 => function ($stackPos) { + 342 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 344 => function ($stackPos) { + 343 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 345 => function ($stackPos) { + 344 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Spaceship($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 346 => function ($stackPos) { + 345 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 347 => function ($stackPos) { + 346 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 348 => function ($stackPos) { + 347 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 349 => function ($stackPos) { + 348 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 350 => function ($stackPos) { + 349 => function ($stackPos) { $this->semValue = new Expr\Instanceof_($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 351 => function ($stackPos) { + 350 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 352 => function ($stackPos) { + 351 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(3-2)]; }, - 353 => function ($stackPos) { + 352 => function ($stackPos) { $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(5-1)], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 354 => function ($stackPos) { + 353 => function ($stackPos) { $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(4-1)], null, $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 355 => function ($stackPos) { + 354 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Coalesce($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 356 => function ($stackPos) { + 355 => function ($stackPos) { $this->semValue = new Expr\Isset_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 357 => function ($stackPos) { + 356 => function ($stackPos) { $this->semValue = new Expr\Empty_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 358 => function ($stackPos) { + 357 => function ($stackPos) { $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 359 => function ($stackPos) { + 358 => function ($stackPos) { $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 360 => function ($stackPos) { + 359 => function ($stackPos) { $this->semValue = new Expr\Eval_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 361 => function ($stackPos) { + 360 => function ($stackPos) { $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 362 => function ($stackPos) { + 361 => function ($stackPos) { $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 363 => function ($stackPos) { + 362 => function ($stackPos) { $this->semValue = new Expr\Cast\Int_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 364 => function ($stackPos) { + 363 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes; $attrs['kind'] = $this->getFloatCastKind($this->semStack[$stackPos-(2-1)]); $this->semValue = new Expr\Cast\Double($this->semStack[$stackPos-(2-2)], $attrs); }, - 365 => function ($stackPos) { + 364 => function ($stackPos) { $this->semValue = new Expr\Cast\String_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 366 => function ($stackPos) { + 365 => function ($stackPos) { $this->semValue = new Expr\Cast\Array_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 367 => function ($stackPos) { + 366 => function ($stackPos) { $this->semValue = new Expr\Cast\Object_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 368 => function ($stackPos) { + 367 => function ($stackPos) { $this->semValue = new Expr\Cast\Bool_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 369 => function ($stackPos) { + 368 => function ($stackPos) { $this->semValue = new Expr\Cast\Unset_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 370 => function ($stackPos) { + 369 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes; $attrs['kind'] = strtolower($this->semStack[$stackPos-(2-1)]) === 'exit' ? Expr\Exit_::KIND_EXIT : Expr\Exit_::KIND_DIE; $this->semValue = new Expr\Exit_($this->semStack[$stackPos-(2-2)], $attrs); }, - 371 => function ($stackPos) { + 370 => function ($stackPos) { $this->semValue = new Expr\ErrorSuppress($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, + 371 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, 372 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, @@ -2079,116 +2062,116 @@ class Php5 extends \PhpParser\ParserAbstract $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 374 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; - }, - 375 => function ($stackPos) { $this->semValue = new Expr\ShellExec($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 376 => function ($stackPos) { + 375 => function ($stackPos) { $this->semValue = new Expr\Print_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 377 => function ($stackPos) { + 376 => function ($stackPos) { $this->semValue = new Expr\Yield_(null, null, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 378 => function ($stackPos) { + 377 => function ($stackPos) { $this->semValue = new Expr\YieldFrom($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 379 => function ($stackPos) { + 378 => function ($stackPos) { $this->semValue = new Expr\Closure(['static' => false, 'byRef' => $this->semStack[$stackPos-(10-2)], 'params' => $this->semStack[$stackPos-(10-4)], 'uses' => $this->semStack[$stackPos-(10-6)], 'returnType' => $this->semStack[$stackPos-(10-7)], 'stmts' => $this->semStack[$stackPos-(10-9)]], $this->startAttributeStack[$stackPos-(10-1)] + $this->endAttributes); }, - 380 => function ($stackPos) { + 379 => function ($stackPos) { $this->semValue = new Expr\Closure(['static' => true, 'byRef' => $this->semStack[$stackPos-(11-3)], 'params' => $this->semStack[$stackPos-(11-5)], 'uses' => $this->semStack[$stackPos-(11-7)], 'returnType' => $this->semStack[$stackPos-(11-8)], 'stmts' => $this->semStack[$stackPos-(11-10)]], $this->startAttributeStack[$stackPos-(11-1)] + $this->endAttributes); }, + 380 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(3-2)]; + }, 381 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(3-2)]; }, 382 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; - }, - 383 => function ($stackPos) { $this->semValue = new Expr\Yield_($this->semStack[$stackPos-(2-2)], null, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 384 => function ($stackPos) { + 383 => function ($stackPos) { $this->semValue = new Expr\Yield_($this->semStack[$stackPos-(4-4)], $this->semStack[$stackPos-(4-2)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 385 => function ($stackPos) { + 384 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes; $attrs['kind'] = Expr\Array_::KIND_LONG; $this->semValue = new Expr\Array_($this->semStack[$stackPos-(4-3)], $attrs); }, - 386 => function ($stackPos) { + 385 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = Expr\Array_::KIND_SHORT; $this->semValue = new Expr\Array_($this->semStack[$stackPos-(3-2)], $attrs); }, - 387 => function ($stackPos) { + 386 => function ($stackPos) { $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 388 => function ($stackPos) { + 387 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes; $attrs['kind'] = ($this->semStack[$stackPos-(4-1)][0] === "'" || ($this->semStack[$stackPos-(4-1)][1] === "'" && ($this->semStack[$stackPos-(4-1)][0] === 'b' || $this->semStack[$stackPos-(4-1)][0] === 'B')) ? Scalar\String_::KIND_SINGLE_QUOTED : Scalar\String_::KIND_DOUBLE_QUOTED); $this->semValue = new Expr\ArrayDimFetch(new Scalar\String_(Scalar\String_::parse($this->semStack[$stackPos-(4-1)]), $attrs), $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, + 388 => function ($stackPos) { + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + }, 389 => function ($stackPos) { $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 390 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); - }, - 391 => function ($stackPos) { $this->semValue = array(new Stmt\Class_(null, ['type' => 0, 'extends' => $this->semStack[$stackPos-(7-3)], 'implements' => $this->semStack[$stackPos-(7-4)], 'stmts' => $this->semStack[$stackPos-(7-6)]], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes), $this->semStack[$stackPos-(7-2)]); $this->checkClass($this->semValue[0], -1); }, - 392 => function ($stackPos) { + 391 => function ($stackPos) { $this->semValue = new Expr\New_($this->semStack[$stackPos-(3-2)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 393 => function ($stackPos) { + 392 => function ($stackPos) { list($class, $ctorArgs) = $this->semStack[$stackPos-(2-2)]; $this->semValue = new Expr\New_($class, $ctorArgs, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 394 => function ($stackPos) { + 393 => function ($stackPos) { $this->semValue = array(); }, - 395 => function ($stackPos) { + 394 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(4-3)]; }, - 396 => function ($stackPos) { + 395 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 397 => function ($stackPos) { + 396 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 398 => function ($stackPos) { + 397 => function ($stackPos) { $this->semValue = new Expr\ClosureUse($this->semStack[$stackPos-(2-2)], $this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 399 => function ($stackPos) { + 398 => function ($stackPos) { $this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 400 => function ($stackPos) { + 399 => function ($stackPos) { $this->semValue = new Expr\StaticCall($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 401 => function ($stackPos) { + 400 => function ($stackPos) { $this->semValue = new Expr\StaticCall($this->semStack[$stackPos-(6-1)], $this->semStack[$stackPos-(6-4)], $this->semStack[$stackPos-(6-6)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); }, - 402 => function ($stackPos) { + 401 => function ($stackPos) { $this->semValue = $this->fixupPhp5StaticPropCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 403 => function ($stackPos) { + 402 => function ($stackPos) { $this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 404 => function ($stackPos) { + 403 => function ($stackPos) { $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 405 => function ($stackPos) { + 404 => function ($stackPos) { $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 406 => function ($stackPos) { + 405 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, + 406 => function ($stackPos) { + $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + }, 407 => function ($stackPos) { $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 408 => function ($stackPos) { - $this->semValue = new Name\FullyQualified($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Name\FullyQualified(substr($this->semStack[$stackPos-(1-1)], 1), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 409 => function ($stackPos) { - $this->semValue = new Name\Relative($this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Name\Relative(substr($this->semStack[$stackPos-(1-1)], 10), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 410 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; diff --git a/lib/PhpParser/Parser/Php7.php b/lib/PhpParser/Parser/Php7.php index 816b389..d4117f8 100644 --- a/lib/PhpParser/Parser/Php7.php +++ b/lib/PhpParser/Parser/Php7.php @@ -17,17 +17,17 @@ use PhpParser\Node\Stmt; */ class Php7 extends \PhpParser\ParserAbstract { - protected $tokenToSymbolMapSize = 395; - protected $actionTableSize = 990; - protected $gotoTableSize = 516; + protected $tokenToSymbolMapSize = 398; + protected $actionTableSize = 1009; + protected $gotoTableSize = 527; - protected $invalidSymbol = 160; + protected $invalidSymbol = 163; protected $errorSymbol = 1; protected $defaultAction = -32766; protected $unexpectedTokenRule = 32767; - protected $YY2TBLSTATE = 356; - protected $numNonLeafStates = 617; + protected $YY2TBLSTATE = 354; + protected $numNonLeafStates = 599; protected $symbolToName = array( "EOF", @@ -181,6 +181,9 @@ class Php7 extends \PhpParser\ParserAbstract "T_DIR", "T_NS_SEPARATOR", "T_ELLIPSIS", + "T_NAME_FULLY_QUALIFIED", + "T_NAME_QUALIFIED", + "T_NAME_RELATIVE", "';'", "'{'", "'}'", @@ -193,471 +196,472 @@ class Php7 extends \PhpParser\ParserAbstract ); protected $tokenToSymbol = array( - 0, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 54, 158, 160, 159, 53, 36, 160, - 154, 155, 51, 48, 7, 49, 50, 52, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 30, 151, - 42, 15, 44, 29, 66, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 68, 160, 157, 35, 160, 156, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 152, 34, 153, 56, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 1, 2, 3, 4, + 0, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 54, 161, 163, 162, 53, 36, 163, + 157, 158, 51, 48, 7, 49, 50, 52, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 30, 154, + 42, 15, 44, 29, 66, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 68, 163, 160, 35, 163, 159, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 155, 34, 156, 56, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 31, 32, 33, 37, 38, 39, 40, 41, 43, 45, 46, 47, 55, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 160, - 160, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 163, + 163, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 160, - 160, 160, 160, 160, 160, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150 + 132, 133, 134, 135, 136, 137, 138, 139, 140, 163, + 163, 163, 163, 163, 163, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 150, 151, 152, 153 ); protected $action = array( - 622, 623, 624, 625, 626, 221, 627, 628, 629, 665, - 666,-32766,-32766,-32766,-32767,-32767,-32767,-32767, 97, 98, - 99, 100, 101, 701,-32766,-32766,-32766,-32766,-32766, 724, - 886, 725,-32766, -275,-32766,-32766,-32766,-32766,-32766,-32766, - -32767,-32767,-32767,-32767,-32767,-32766, 873,-32766,-32766,-32766, - -32766,-32766,-32766, 630,-32766,-32766,-32766, -311, 259, -311, - 934, 935, 936, 933, 932, 931, 0, 631, 632, 633, - 634, 635, 636, 637, 364,-32766, 699,-32766,-32766,-32766, - -32766,-32766, 9, 638, 639, 640, 641, 642, 643, 644, - 645, 646, 647, 648, 668, 691, 669, 670, 671, 672, - 660, 661, 662, 690, 663, 664, 649, 650, 651, 652, - 653, 654, 655, 693, 694, 695, 696, 697, 698, 656, - 657, 658, 659, 689, 680, 678, 679, 675, 676, 1114, - 667, 673, 674, 681, 682, 684, 683, 685, 686, 46, - 47, 430, 48, 49, 677, 688, 687, -242, 50, 51, - -514, 52, -514,-32766,-32766,-32766, -478, 24,-32766,-32766, - -32766,-32766, 878, 879,-32766,-32766,-32766, 1056, 512, 1111, - -32766,-32766,-32766, 1080,-32766, 122,-32766,-32766,-32766,-32766, - -32766, -275,-32766,-32766,-32766, 53, 54, 1076,-32766,-32766, - -32766, 55, 28, 56, 226, 227, 57, 58, 59, 60, - 61, 62, 63, 64, 1048, 24, 246, 65, 375,-32766, - 910,-32766,-32766, 1082, 1083, 432, 784, 1111, 802, -478, - 30, 1080, 446, 259, 1070, 1071, 1072, 1073, 1067, 1068, - -32766,-32766,-32766, -478, 438, 1056, 1074, 1069, -179, 1133, - -478, 384, 378, 69, 838, 1132, 1111, 273, 285, 124, - -178,-32766, 297, 934, 935, 936, 933, 932, 931, 408, - 443, 444, 220, 102, 103, 104, 1111, 247, 228, 445, - 446, -477, 1070, 1071, 1072, 1073, 1067, 1068, 254, 105, - 78, 1048, 231, 454, 1074, 1069, 381, 431, -138, -138, - -138, 67, 369, 268, 231, 273, 285, 773, -4, 784, - 38, 20, 433, -138, 434, -138, 435, -138, 436, -138, - 703, 437, 127, -310, 1111, -310, 40, 41, 376, 377, - 71, 271, 42, 439, 703, 285, 66, 878, 879, 312, - 926, 440, 441, 708, -477, 133, 703, 442, 129, 1129, - 759, 807, 379, 380, -476, 285, 233, 343, -477, 1048, - 230, 99, 100, 101, -475, -477, 45, -483, 703, 500, - 703, 343, -288, 137, -480, 839, 786, 591, -138, 604, - 431, 784, 706, 343, 44, 1148, 283, 870, 869, 868, - 773, 409, 70, 38, 20, 433, -179, 434, 71, 435, - 282, 436, 703, 285, 437, 343, 128, 343, -178, 40, - 41, 376, 377, 232, 360, 42, 439, -476, 128, 66, - 267, 284, 312, 887, 440, 441, 701, -475, 296, 258, - 442, -476, 1111, 716, 807, 379, 380, -480, -476, 343, - -482, -475, 576, 315, 703, 31, 229, 257, -475, 400, - 123, 313, 431, 784, 299, 703, 316, 477, -480, 786, - 591, -4, 773, 321, 703, 38, 20, 433, 121, 434, - 368, 435, 703, 436, 393, 371, 437, 593, -220, -220, - -220, 40, 41, 376, 377, 372, 414, 42, 439, 518, - 373, 66, 343, 707, 312, 374, 440, 441, 549, 21, - 130, 343, 442, 564, 565, 759, 807, 379, 380, 343, - 577, 285, 454, 381, 712, 381, 1088, 912, 1157, 138, - 422, 1158, 8, 724, 431, 725, 136, 338, 389, 390, - 140, 786, 591, -220, 773, 542, 543, 38, 20, 433, - 141, 434, 34, 435, -84, 436, 878, 879, 437, 119, - -219, -219, -219, 40, 41, 376, 377, 911, 614, 42, - 439, 120, 784, 66, 125, 126, 312, 132, 440, 441, - 142, 143, 145, 251, 442, 605, 260, 759, 807, 379, - 380, 608, 261, 783, 135, 79, 80, 81, 247, 105, - 573, 597, 301, 134, 703, 798, 701, 704, 486, 585, - 706, 940, 567, 786, 591, -219, 32, 1159, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 555, 247, 431, -82, 550, 784, 272, 556, 10, - 540, 269, 281, 773, 105,-32766, 38, 20, 433, 481, - 434, 1048, 435, 270, 436, 397, 808, 437, 809, 36, - -245, 568, 40, 41, 376, 598, 0, 0, 42, 439, - 784, 0, 66, 1087, 0, 312, 0, 1089, 0, 0, - 0, 0, 0, 442, 0, 0, -441, 346, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 599, - 0, 0, 0, 0, 784, 0, 0, 431, 0, -432, - 5, 0, 786, 591, 12, 314, 351, 773, 800, 0, - 38, 20, 433, 352, 434, 355, 435, 393, 436, 483, - 365, 437, 366, 602, 29, 37, 40, 41, 376, 612, - 613, 431, 42, 439, 764, 848, 66, 825, 832, 312, - 906, 773, 907, 822, 38, 20, 433, 442, 434, 833, - 435, 762, 436, 820, 915, 437, 918, 919, 916, 917, - 40, 41, 376, 923, 609, 431, 42, 439, 784, 592, - 66, 594, 596, 312, 600, 773, 786, 591, 38, 20, - 433, 442, 434, 601, 435, 603, 436, 607, 294, 437, - 295, 358, 359, 595, 40, 41, 376, 606, 760, 1154, - 42, 439, 784, 1156, 66, 719, 806, 312, 718, 728, - 824, 591, -508, 805, 840, 442, 729, 726, 1155, 33, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 804, 1036, 727, 793, 801, 791, 431, - 830, 831, 1153, 1112, 786, 591, -506, 1103, 1119, 773, - 1124, 1127, 38, 20, 433, -483, 434, -482, 435, -481, - 436, 970, 972, 437, 23, 25, 234, 26, 40, 41, - 376, 35, -475, 431, 42, 439, 39, 43, 66, 68, - 72, 312, 73, 773, 74, 75, 38, 20, 433, 442, - 434, 76, 435, 77, 436, 131, 139, 437, 24, 144, - 225, 274, 40, 41, 376, 275, 276, 277, 42, 439, - 1111, 278, 66, 279, 1080, 312, 298, 361, 786, 591, - 363, -445, 1081, 442, -243, -242, 14, 15, 16, 17, - 19, 336, 410, 412, 418, -475, 420, 421, 428, 582, - 1060, 1009, 1078, 888, 1040, 1048, -247, -95, 13, -475, - 18, 22, 786, 591, 263, 335, -475, 509, 513, 0, - 534, 584, 445, 446, 1013, 1070, 1071, 1072, 1073, 1067, - 1068, 1055, 1010, 1130, 0, 1026, 0, 1074, 1069, 1077, - 1102, 1118, 1151, 546, 69, 0, 0, 0, 273, 285 + 604, 605, 606, 607, 608, 1111, 609, 610, 611, 647, + 648,-32766,-32766,-32766,-32767,-32767,-32767,-32767, 97, 98, + 99, 100, 101, 683,-32766,-32766,-32766, 0,-32766,-32766, + -32766, 867,-32766, 122,-32766,-32766,-32766,-32766,-32766,-32766, + -32767,-32767,-32767,-32767,-32767,-32766, 854,-32766,-32766,-32766, + -32766,-32766,-32766, 612,-32766,-32766,-32766, 1096, 9, 254, + 915, 916, 917, 914, 913, 912, 819, 613, 614, 615, + 616, 617, 618, 619, 691,-32766, 681,-32766,-32766,-32766, + -32766,-32766, 683, 620, 621, 622, 623, 624, 625, 626, + 627, 628, 629, 630, 650, 673, 651, 652, 653, 654, + 642, 643, 644, 672, 645, 646, 631, 632, 633, 634, + 635, 636, 637, 675, 676, 677, 678, 679, 680, 638, + 639, 640, 641, 671, 662, 660, 661, 657, 658, 28, + 649, 655, 656, 663, 664, 666, 665, 667, 668, 46, + 47, 422, 48, 49, 659, 670, 669, 228, 50, 51, + 495, 52, 915, 916, 917, 914, 913, 912, 254, 130, + 30, -274, 559, 859, 860, 685, 465, 33, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 118, 707, -178, 708, 783, 53, 54, 285, 124, 1031, + 820, 55, -177, 56, 224, 225, 57, 58, 59, 60, + 61, 62, 63, 64, 220, 24, 246, 65, 368, 951, + 953, 78, 1038, 1064, 1065, 424, 1058, 1093,-32766, -480, + -475, 1062,-32766,-32766,-32766, 1070, 345, 690, 688, 765, + -32766,-32766,-32766, 133, 430, 1033, 1032, 1034, 127, 686, + 893, 376, 371,-32766, 219,-32766,-32766,-32766,-32766, 399, + 391,-32766, 299,-32766,-32766,-32766, 1031, 484, 891, 1093, + 435, 436, 859, 860, 102, 103, 104, 1038, 247, 437, + 438, -477, 1052, 1053, 1054, 1055, 1049, 1050, 258, 502, + 105, 1115, -480, -475, 1056, 1051, 1031, 1114, 1033, 1032, + 1034, 1093, 231, 345, 67, 1093, 275, -475, 276, 288, + 423, -137, -137, -137, -4, 765, -480, -475, 1139, 44, + 754, 1140, -274, 38, 20, 425, -137, 426, -137, 427, + -137, 428, -137, 345, 429, 229, 1029, 268, 1031, 40, + 41, 369, 370, -178, -477, 42, 431, 362, 586, 66, + 282, 288, 312, -177, 432, 433, 1093, 286, -477, -241, + 434,-32766,-32766, 740, 788, 372, 373, 1031, -477, -476, + -483, -309, 1031, -309,-32766,-32766,-32766, 1031, 71, 261, + 129, 300, 265, 288, 400, 226, 423, 288, 907, 405, + 765, 1029, 767, 573, -137,-32766, 754,-32766,-32766, 38, + 20, 425, 316, 426, 345, 427, 121, 428, 321, 345, + 429, 1033, 1032, 1034, 345, 40, 41, 369, 370, 323, + 358, 42, 431, -287, 364, 66, 257, 1031, 312, 365, + 432, 433, -476, 71, 366, -478, 434, 367, 288, 699, + 788, 372, 373, 695, 229, 689, -476, -475, 1130, 128, + 45,-32766,-32766,-32766, 136, 340, -476, 868, -482, 230, + 303, 423, 381, 382, 345, 765, 533, 21, 767, 573, + -4, 754,-32766, 137, 38, 20, 425, -310, 426, -310, + 427, 414, 428, 8, 138, 429, 1031, -219, -219, -219, + 40, 41, 369, 370, 547, 548, 42, 431, -478, 70, + 66, 1031, 707, 312, 708, 432, 433, 140, 31, 227, + -475, 434, -478, 266, 740, 788, 372, 373,-32766,-32766, + -32766, 141, -478, 345, -475, 527, 528, 315, 99, 100, + 101, 851, 850, 849, -475, 34, 423, 123, 345, -514, + 119, -514, 120, 767, 573, -219, 754, 859, 860, 38, + 20, 425, 125, 426, 126, 427, 132, 428, 128, 142, + 429, 143, -218, -218, -218, 40, 41, 369, 370, 892, + 596, 42, 431, 145, 255, 66, 256, 765, 312, -84, + 432, 433, 248, 587, 590, 764, 434, 135, 247, 740, + 788, 372, 373, 290, 134, 105, 779, 683, 556, 1141, + 79, 80, 81,-32766, 689, 534, 579, 550, 471, 921, + 539, 540, 551, 467, 525, 1029, 262, 789, 767, 573, + -218, 32, 765, 82, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, + 99, 100, 101, 102, 103, 104, 567, 247, 423, 1069, + -441, 580, 688, 1071, -431, 477, 765, -82, 754, 105, + 10, 38, 20, 425, 388, 426, 410, 427, 260, 428, + -244, 790, 429, 0, 0, 0, 259, 40, 41, 369, + 267, 6, 781, 42, 431, 581, 29, 66, 12, 36, + 312, -508, 0, 423, 0, 314, 0, 499, 434, 0, + 0, 0, 0, 754, 0, 0, 38, 20, 425, 0, + 426, 0, 427, 0, 428, 37, 765, 429, 594, 591, + 595, 745, 40, 41, 369, 274, 829, 423, 42, 431, + 767, 573, 66, 806, 813, 312, 887, 754, 888, 803, + 38, 20, 425, 434, 426, 584, 427, 814, 428, 743, + 765, 429, 801, 896, 899, 900, 40, 41, 369, 897, + 898, 904, 42, 431, 313, 574, 66, 576, 578, 312, + 582, 583, 585, 589, 575, 767, 573, 434, 577, 588, + 741, 1136, 1138, 702, 787, 701, 710, 423, 786, 821, + 709, 1137, 785, 1017, 774, 765, 782, 754, 772, 811, + 38, 20, 425, 812, 426, 1135, 427, 1094, 428, 805, + 573, 429, 1085, 1101, 1106, 1109, 40, 41, 369, -506, + -483, 423, 42, 431, -482, -481, 66, 23, 25, 312, + 26, 754, 35, 39, 38, 20, 425, 434, 426, 43, + 427, 68, 428, 72, 73, 429, 74, 75, 76, 77, + 40, 41, 369, 131, 139, 144, 42, 431, 223, 277, + 66, 278, 232, 312, 279, 280, 423, 281, 283, 767, + 573, 434, -242, 287, 359, 361, 754, -241, 14, 38, + 20, 425, 15, 426, 16, 427, 17, 428, 19, 338, + 429, 401, 403, 409, 24, 40, 41, 369, 412, 413, + 420, 42, 431, 767, 573, 66, 1093, -445, 312, 564, + 1062, 1042, 990, 1060, 869, 1021, 434, -246, -96, 13, + 18, 22, 270, 337, 24, 492, 496, 519, 566, 994, + 1037, 991, 1112, 0, 1007, 0, 1093, 1059, 1084, 1100, + 1062, 1029, 1133, 530, 0, 1063, 0, 0, 767, 573, + 0, 0, 0, 0, 0, 0, 0, 0, 437, 438, + 0, 1052, 1053, 1054, 1055, 1049, 1050, 0, 0, 0, + 0, 1029, 0, 1056, 1051, 0, 0, 0, 0, 0, + 0, 0, 0, 69, 0, 0, 0, 276, 288, 438, + 0, 1052, 1053, 1054, 1055, 1049, 1050, 0, 0, 0, + 0, 0, 0, 1056, 1051, 0, 0, 0, 0, 0, + 0, 0, 0, 69, 0, 0, 0, 276, 288 ); protected $actionCheck = array( - 2, 3, 4, 5, 6, 13, 8, 9, 10, 11, + 2, 3, 4, 5, 6, 1, 8, 9, 10, 11, 12, 8, 9, 10, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 78, 8, 9, 10, 8, 9, 104, - 1, 106, 29, 7, 31, 32, 33, 34, 35, 36, + 48, 49, 50, 78, 8, 9, 10, 0, 8, 9, + 10, 1, 29, 13, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 29, 1, 31, 32, 33, - 34, 35, 36, 55, 8, 9, 10, 104, 29, 106, - 115, 116, 117, 118, 119, 120, 0, 69, 70, 71, - 72, 73, 74, 75, 149, 29, 78, 31, 32, 33, - 34, 35, 7, 85, 86, 87, 88, 89, 90, 91, + 34, 35, 36, 55, 8, 9, 10, 1, 7, 29, + 115, 116, 117, 118, 119, 120, 30, 69, 70, 71, + 72, 73, 74, 75, 1, 29, 78, 31, 32, 33, + 34, 35, 78, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 1, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 7, 132, 133, 134, 135, 136, 137, 138, 139, 140, 2, - 3, 4, 5, 6, 146, 147, 148, 155, 11, 12, - 155, 14, 157, 8, 9, 10, 68, 68, 8, 8, - 9, 10, 133, 134, 8, 9, 10, 1, 1, 80, - 8, 9, 10, 84, 29, 13, 31, 32, 33, 34, - 29, 155, 31, 32, 33, 48, 49, 1, 8, 9, - 10, 54, 7, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 115, 68, 69, 70, 71, 29, - 1, 31, 32, 76, 77, 78, 1, 80, 1, 131, - 7, 84, 133, 29, 135, 136, 137, 138, 139, 140, - 8, 9, 10, 145, 97, 1, 147, 148, 7, 1, - 152, 104, 105, 154, 30, 7, 80, 158, 159, 7, - 7, 29, 115, 115, 116, 117, 118, 119, 120, 30, - 123, 124, 95, 51, 52, 53, 80, 55, 36, 132, - 133, 68, 135, 136, 137, 138, 139, 140, 141, 67, - 152, 115, 36, 146, 147, 148, 149, 72, 73, 74, - 75, 154, 126, 156, 36, 158, 159, 82, 0, 1, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 78, 96, 30, 104, 80, 106, 101, 102, 103, 104, - 154, 112, 107, 108, 78, 159, 111, 133, 134, 114, - 121, 116, 117, 1, 131, 7, 78, 122, 152, 1, - 125, 126, 127, 128, 68, 159, 7, 115, 145, 115, - 36, 48, 49, 50, 68, 152, 68, 154, 78, 79, - 78, 115, 153, 13, 68, 151, 151, 152, 153, 152, - 72, 1, 80, 115, 68, 83, 68, 118, 119, 120, - 82, 152, 150, 85, 86, 87, 155, 89, 154, 91, - 7, 93, 78, 159, 96, 115, 150, 115, 155, 101, - 102, 103, 104, 36, 106, 107, 108, 131, 150, 111, - 112, 7, 114, 155, 116, 117, 78, 131, 7, 131, - 122, 145, 80, 125, 126, 127, 128, 131, 152, 115, - 154, 145, 78, 145, 78, 143, 144, 131, 152, 131, - 152, 7, 72, 1, 146, 78, 7, 83, 152, 151, - 152, 153, 82, 7, 78, 85, 86, 87, 152, 89, - 7, 91, 78, 93, 149, 7, 96, 152, 98, 99, - 100, 101, 102, 103, 104, 7, 100, 107, 108, 49, - 7, 111, 115, 151, 114, 7, 116, 117, 73, 74, - 152, 115, 122, 73, 74, 125, 126, 127, 128, 115, - 146, 159, 146, 149, 7, 149, 142, 153, 78, 13, - 104, 81, 106, 104, 72, 106, 99, 100, 104, 105, - 13, 151, 152, 153, 82, 109, 110, 85, 86, 87, - 13, 89, 13, 91, 30, 93, 133, 134, 96, 15, - 98, 99, 100, 101, 102, 103, 104, 151, 152, 107, - 108, 15, 1, 111, 15, 15, 114, 15, 116, 117, - 15, 15, 15, 30, 122, 30, 34, 125, 126, 127, - 128, 30, 34, 30, 30, 8, 9, 10, 55, 67, - 75, 30, 34, 68, 78, 36, 78, 78, 87, 90, - 80, 80, 92, 151, 152, 153, 29, 81, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 94, 55, 72, 95, 88, 1, 113, 98, 95, - 112, 129, 129, 82, 67, 83, 85, 86, 87, 83, - 89, 115, 91, 130, 93, 95, 126, 96, 126, 151, - 155, 98, 101, 102, 103, 30, -1, -1, 107, 108, - 1, -1, 111, 142, -1, 114, -1, 142, -1, -1, - -1, -1, -1, 122, -1, -1, 145, 149, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 30, - -1, -1, -1, -1, 1, -1, -1, 72, -1, 145, - 145, -1, 151, 152, 145, 145, 149, 82, 150, -1, - 85, 86, 87, 149, 89, 149, 91, 149, 93, 149, - 149, 96, 149, 30, 152, 151, 101, 102, 103, 151, - 151, 72, 107, 108, 151, 151, 111, 151, 151, 114, - 151, 82, 151, 151, 85, 86, 87, 122, 89, 151, - 91, 151, 93, 151, 151, 96, 151, 151, 151, 151, - 101, 102, 103, 151, 153, 72, 107, 108, 1, 152, - 111, 152, 152, 114, 152, 82, 151, 152, 85, 86, - 87, 122, 89, 152, 91, 152, 93, 152, 152, 96, - 152, 152, 152, 152, 101, 102, 103, 30, 153, 153, - 107, 108, 1, 153, 111, 153, 153, 114, 153, 153, - 151, 152, 154, 153, 153, 122, 153, 153, 153, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 153, 153, 153, 153, 153, 153, 72, - 153, 153, 153, 153, 151, 152, 154, 153, 153, 82, - 153, 153, 85, 86, 87, 154, 89, 154, 91, 154, - 93, 57, 58, 96, 154, 154, 36, 154, 101, 102, - 103, 154, 68, 72, 107, 108, 154, 154, 111, 154, - 154, 114, 154, 82, 154, 154, 85, 86, 87, 122, - 89, 154, 91, 154, 93, 154, 154, 96, 68, 154, - 154, 154, 101, 102, 103, 154, 154, 154, 107, 108, - 80, 154, 111, 154, 84, 114, 154, 154, 151, 152, - 154, 156, 158, 122, 155, 155, 155, 155, 155, 155, - 155, 155, 155, 155, 155, 131, 155, 155, 155, 155, - 155, 155, 155, 155, 155, 115, 155, 155, 155, 145, - 155, 155, 151, 152, 155, 155, 152, 155, 155, -1, - 155, 155, 132, 133, 155, 135, 136, 137, 138, 139, - 140, 155, 155, 155, -1, 156, -1, 147, 148, 157, - 157, 157, 157, 157, 154, -1, -1, -1, 158, 159 + 3, 4, 5, 6, 146, 147, 148, 36, 11, 12, + 1, 14, 115, 116, 117, 118, 119, 120, 29, 155, + 7, 7, 78, 133, 134, 78, 83, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 104, 7, 106, 1, 48, 49, 68, 7, 78, + 154, 54, 7, 56, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 13, 68, 69, 70, 71, 57, + 58, 155, 1, 76, 77, 78, 1, 80, 8, 68, + 68, 84, 8, 9, 10, 142, 115, 154, 151, 1, + 8, 9, 10, 7, 97, 151, 152, 153, 30, 152, + 156, 104, 105, 29, 95, 31, 32, 33, 34, 30, + 131, 29, 115, 31, 32, 33, 78, 79, 1, 80, + 123, 124, 133, 134, 51, 52, 53, 1, 55, 132, + 133, 68, 135, 136, 137, 138, 139, 140, 141, 49, + 67, 1, 131, 131, 147, 148, 78, 7, 151, 152, + 153, 80, 7, 115, 157, 80, 159, 145, 161, 162, + 72, 73, 74, 75, 0, 1, 155, 155, 78, 68, + 82, 81, 158, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 115, 96, 36, 115, 7, 78, 101, + 102, 103, 104, 158, 131, 107, 108, 126, 155, 111, + 7, 162, 114, 158, 116, 117, 80, 7, 145, 158, + 122, 8, 9, 125, 126, 127, 128, 78, 155, 68, + 157, 104, 78, 106, 8, 9, 10, 78, 157, 112, + 155, 7, 131, 162, 155, 36, 72, 162, 121, 100, + 1, 115, 154, 155, 156, 29, 82, 31, 32, 85, + 86, 87, 7, 89, 115, 91, 155, 93, 7, 115, + 96, 151, 152, 153, 115, 101, 102, 103, 104, 7, + 106, 107, 108, 156, 7, 111, 112, 78, 114, 7, + 116, 117, 131, 157, 7, 68, 122, 7, 162, 125, + 126, 127, 128, 7, 36, 80, 145, 68, 83, 150, + 68, 8, 9, 10, 99, 100, 155, 158, 157, 36, + 146, 72, 104, 105, 115, 1, 73, 74, 154, 155, + 156, 82, 29, 13, 85, 86, 87, 104, 89, 106, + 91, 104, 93, 106, 13, 96, 78, 98, 99, 100, + 101, 102, 103, 104, 73, 74, 107, 108, 131, 150, + 111, 78, 104, 114, 106, 116, 117, 13, 143, 144, + 131, 122, 145, 131, 125, 126, 127, 128, 8, 9, + 10, 13, 155, 115, 145, 109, 110, 145, 48, 49, + 50, 118, 119, 120, 155, 13, 72, 155, 115, 158, + 15, 160, 15, 154, 155, 156, 82, 133, 134, 85, + 86, 87, 15, 89, 15, 91, 15, 93, 150, 15, + 96, 15, 98, 99, 100, 101, 102, 103, 104, 154, + 155, 107, 108, 15, 34, 111, 34, 1, 114, 30, + 116, 117, 30, 30, 30, 30, 122, 30, 55, 125, + 126, 127, 128, 34, 68, 67, 36, 78, 75, 81, + 8, 9, 10, 83, 80, 88, 30, 92, 87, 80, + 94, 98, 98, 83, 112, 115, 113, 126, 154, 155, + 156, 29, 1, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 90, 55, 72, 142, + 145, 30, 151, 142, 145, 149, 1, 95, 82, 67, + 95, 85, 86, 87, 95, 89, 95, 91, 130, 93, + 158, 126, 96, -1, -1, -1, 129, 101, 102, 103, + 129, 145, 150, 107, 108, 30, 155, 111, 145, 154, + 114, 157, -1, 72, -1, 145, -1, 149, 122, -1, + -1, -1, -1, 82, -1, -1, 85, 86, 87, -1, + 89, -1, 91, -1, 93, 154, 1, 96, 154, 156, + 154, 154, 101, 102, 103, 155, 154, 72, 107, 108, + 154, 155, 111, 154, 154, 114, 154, 82, 154, 154, + 85, 86, 87, 122, 89, 30, 91, 154, 93, 154, + 1, 96, 154, 154, 154, 154, 101, 102, 103, 154, + 154, 154, 107, 108, 155, 155, 111, 155, 155, 114, + 155, 155, 155, 155, 155, 154, 155, 122, 155, 30, + 156, 156, 156, 156, 156, 156, 156, 72, 156, 156, + 156, 156, 156, 156, 156, 1, 156, 82, 156, 156, + 85, 86, 87, 156, 89, 156, 91, 156, 93, 154, + 155, 96, 156, 156, 156, 156, 101, 102, 103, 157, + 157, 72, 107, 108, 157, 157, 111, 157, 157, 114, + 157, 82, 157, 157, 85, 86, 87, 122, 89, 157, + 91, 157, 93, 157, 157, 96, 157, 157, 157, 157, + 101, 102, 103, 157, 157, 157, 107, 108, 157, 157, + 111, 157, 36, 114, 157, 157, 72, 157, 157, 154, + 155, 122, 158, 157, 157, 157, 82, 158, 158, 85, + 86, 87, 158, 89, 158, 91, 158, 93, 158, 158, + 96, 158, 158, 158, 68, 101, 102, 103, 158, 158, + 158, 107, 108, 154, 155, 111, 80, 159, 114, 158, + 84, 158, 158, 158, 158, 158, 122, 158, 158, 158, + 158, 158, 158, 158, 68, 158, 158, 158, 158, 158, + 158, 158, 158, -1, 159, -1, 80, 160, 160, 160, + 84, 115, 160, 160, -1, 161, -1, -1, 154, 155, + -1, -1, -1, -1, -1, -1, -1, -1, 132, 133, + -1, 135, 136, 137, 138, 139, 140, -1, -1, -1, + -1, 115, -1, 147, 148, -1, -1, -1, -1, -1, + -1, -1, -1, 157, -1, -1, -1, 161, 162, 133, + -1, 135, 136, 137, 138, 139, 140, -1, -1, -1, + -1, -1, -1, 147, 148, -1, -1, -1, -1, -1, + -1, -1, -1, 157, -1, -1, -1, 161, 162 ); protected $actionBase = array( - 0, 215, 298, 370, 442, 186, 354, 608, -2, -2, - -55, -2, -2, 625, 693, 693, 767, 693, 551, 659, - 801, 801, 801, 258, 232, 232, 232, 232, 246, 376, - 376, 280, 282, 314, 367, 384, 384, 384, 384, 384, - 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, - 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, - 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, - 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, - 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, - 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, - 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, - 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, - 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, - 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, - 384, 384, 384, 384, 384, 384, 332, 332, 214, 167, - 519, 799, 809, 802, 816, 795, 793, 800, 803, 817, - 689, 690, 544, 694, 695, 697, 698, 805, 826, 796, - 806, 567, 567, 567, 567, 567, 567, 567, 567, 567, - 567, 567, 567, 567, 567, 567, 567, 567, 567, 567, - 150, 162, 19, 156, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 222, 222, 222, 180, 151, - 830, 830, 145, 804, 46, 89, 89, 89, 89, 89, - 89, 89, 89, 89, 89, 16, 3, 3, 3, 3, - 3, -28, -28, -28, -28, 209, 166, 234, -47, 303, - 303, 29, 194, 194, 364, 525, 764, 338, 338, 403, - 403, 403, 203, 276, 212, 212, 212, -75, 556, 526, - 526, 526, 526, 292, 791, 791, 791, 791, 791, 791, - 292, 526, 526, 430, 792, 128, -5, 88, 286, 286, - 288, 286, 286, 286, 409, 409, 409, 414, 356, 315, - 552, 356, 612, 641, 818, 530, 687, 553, 688, 296, - 306, 571, 342, 573, 342, 342, 342, 416, 415, 420, - 548, 792, 332, 554, 332, 332, 332, 332, 747, 332, - 332, 332, 332, 332, 332, 229, 332, 396, 214, 217, - 45, 217, 217, 414, 523, 308, 636, 243, 523, 523, - 523, 638, 639, 26, -8, 640, 231, 406, 506, 506, - 508, 508, 511, 549, 506, 506, 506, 506, 506, 710, - 710, 508, 510, 508, 511, 723, 508, 549, 549, 508, - 508, 506, 508, 710, 549, 242, 458, 434, 439, 549, - 549, 468, 502, 506, 503, 503, 473, 508, 339, 328, - 508, 185, 513, 710, 710, 513, 404, 383, 578, 579, - 518, 549, 533, 411, 497, 213, 533, 558, 533, 453, - 518, 533, 549, 533, 478, 75, 510, 446, 533, 66, - 725, 726, 504, 728, 717, 730, 763, 731, 737, 617, - 520, 522, 746, 722, 739, 713, 711, 543, 570, 524, - 536, 555, 531, 705, 568, 512, 512, 512, 701, 512, - 512, 512, 512, 512, 512, 512, 512, 524, 822, 560, - 501, 751, 539, 528, 550, 540, 619, 521, 570, 570, - 645, 765, 819, 509, 747, 785, 741, 498, 542, 775, - 752, 611, 557, 564, 753, 757, 776, 786, 620, 787, - 646, 515, 650, 570, 652, 512, 692, 658, 823, 703, - 524, 824, 771, 572, 777, 778, 566, 653, 516, 825, - 655, 788, 622, 631, 574, 772, 495, 532, 538, 779, - 656, 781, 782, 660, 583, 537, 769, 527, 661, 350, - 766, 496, 762, 633, 663, 664, 665, 680, 681, 742, - 584, 773, 500, 774, 770, 586, 587, 507, 682, 517, - 589, 545, 546, 591, 745, 535, 505, 592, 598, 789, - 547, 683, 759, 600, 684, 784, 529, 568, 559, 514, - 534, 499, 635, 783, 541, 602, 603, 605, 606, 685, - 607, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 228, 304, 379, 454, 84, 215, 596, -2, -2, + -55, -2, -2, 611, 705, 705, 739, 705, 566, 645, + 784, 784, 784, 289, 339, 339, 339, 339, 398, 279, + 279, 178, 208, 111, 413, 284, 284, 284, 284, 284, + 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, + 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, + 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, + 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, + 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, + 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, + 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, + 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, + 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, + 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, + 284, 284, 284, 284, 284, 284, 73, 73, 36, 149, + 512, 754, 761, 757, 762, 752, 751, 755, 758, 763, + 639, 641, 547, 646, 647, 648, 649, 759, 773, 753, + 760, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 210, 20, 343, 500, 500, 500, 500, 500, 500, 500, + 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, + 500, 500, 500, 500, 500, 433, 433, 433, 356, 816, + 816, 222, 214, 846, 846, 846, 846, 846, 846, 846, + 846, 846, 846, 152, 46, 16, 3, 3, 3, 3, + 3, -28, -28, -28, -28, 257, 211, 266, 30, 363, + 470, 470, 129, 129, 404, 404, 404, 77, 83, 490, + 490, 490, 490, 501, 774, 4, 4, 490, 490, 203, + 291, 213, 213, 213, 388, 520, 355, 749, 749, 749, + 749, 749, 388, 749, 355, 230, 750, 250, 56, 371, + 250, 357, 369, 369, 372, 369, 369, 369, 491, 348, + 491, 510, 597, 609, 613, 764, 503, 633, 504, 637, + 151, 241, 179, 87, 179, 179, 179, 406, 87, 383, + 411, 87, 549, 750, 73, 499, 73, 73, 73, 73, + 692, 73, 73, 73, 73, 73, 73, 219, 73, 405, + 36, 183, 45, 183, 183, 348, 523, 496, 119, 538, + 185, 523, 523, 523, 154, 191, 175, 367, 509, 509, + 519, 550, 660, 660, 509, 514, 509, 519, 672, 509, + 550, 550, 509, 509, 509, 660, 550, 181, 407, 364, + 385, 550, 550, 412, 537, 541, 541, 417, 509, 285, + 226, 509, 122, 528, 660, 660, 528, 340, 320, 554, + 556, 492, 550, 542, 333, 426, 153, 542, 522, 542, + 509, 391, 492, 542, 550, 542, 420, 51, 514, 402, + 542, 27, 674, 676, 539, 677, 665, 679, 707, 680, + 681, 600, 481, 535, 691, 666, 682, 663, 661, 545, + 515, 517, 526, 495, 658, 518, 518, 518, 653, 518, + 518, 518, 518, 518, 518, 518, 518, 515, 767, 540, + 511, 694, 527, 529, 602, 497, 614, 738, 765, 692, + 743, 686, 525, 531, 720, 697, 553, 560, 698, 700, + 721, 744, 603, 745, 615, 516, 616, 617, 518, 652, + 524, 768, 657, 515, 769, 710, 521, 723, 724, 599, + 559, 618, 508, 772, 619, 746, 605, 606, 551, 714, + 502, 530, 532, 725, 561, 620, 730, 731, 622, 557, + 507, 704, 506, 623, 450, 708, 461, 706, 607, 624, + 625, 626, 627, 687, 562, 716, 505, 718, 709, 569, + 570, 484, 498, 572, 534, 536, 574, 688, 543, 513, + 575, 583, 747, 548, 628, 701, 585, 630, 741, 552, + 533, 493, 555, 546, 608, 732, 544, 588, 589, 590, + 591, 632, 595, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 137, 137, - 137, 137, -2, -2, -2, 0, 0, -2, 0, 0, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 567, 567, 567, 567, 567, 567, 567, - 567, 567, 567, 567, 567, 567, 567, 567, 567, 567, - 567, 567, 567, 567, 567, 567, 567, 567, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 567, 567, 567, - 567, 567, 567, 567, 567, 567, 567, 567, 567, 567, - 567, 567, 567, 567, 567, 567, 567, 567, 567, 567, - 567, 567, 567, 567, 567, 567, 567, 356, 356, 567, - 0, 567, 356, 356, 356, 356, 356, 356, 356, 356, - 356, 356, 567, 567, 567, 567, 567, 567, 212, 212, - 212, 212, 138, 356, 356, 138, 212, 212, 356, 356, - 356, 292, 292, 292, 342, 342, 356, 356, 356, 0, - 0, 0, 0, 0, 506, 292, 356, 356, 356, 356, - 0, 259, 259, 259, 259, 259, 259, 0, 356, 356, - 510, 259, 342, 238, 0, 0, 0, 0, 0, 0, - 0, 506, 506, 506, 510, 0, 506, 292, 0, 217, - 332, 238, 417, 417, 417, 417, 0, 0, 506, 0, - 506, 0, 0, 0, 0, 0, 0, 510, 549, 0, - 710, 0, 0, 0, 0, 508, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 510, 0, 0, - 0, 512, 0, 509, 0, 512, 512, 512, 509, 509, - 0, 0, 509 + 137, 137, 137, 137, -2, -2, -2, 0, 0, -2, + 0, 0, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 250, 250, + 582, 582, 250, 250, 250, 250, 250, 250, 250, 250, + 250, 250, 0, 582, 582, 582, 582, 582, 582, 582, + 213, 213, 213, 213, 37, 250, 250, 250, 37, 213, + 213, 250, 250, 250, 250, 250, 87, 355, 250, 250, + 250, 250, 355, 355, 179, 179, 250, 250, 0, 0, + 0, 0, 0, 87, 355, 0, 403, 403, 403, 403, + 403, 87, 403, 0, 514, 403, 0, 179, 280, 0, + 0, 0, 0, 0, 0, 0, 0, 87, 514, 87, + 355, 183, 87, 73, 280, 345, 345, 345, 345, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 514, 550, 0, 660, 0, 0, 0, 0, 509, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 514, 0, 0, 0, 518, 559, 0, 559, 0, + 518, 518, 518 ); protected $actionDefault = array( - 3,32767,32767,32767,32767,32767,32767,32767,32767, 93, + 3,32767,32767,32767,32767,32767,32767,32767,32767, 94, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767, 526, 526, 526, 526, 95, 224, - 95,32767,32767,32767,32767, 330, 330, 330,32767,32767, + 32767,32767,32767,32767, 526, 526, 526, 526, 96, 223, + 96,32767,32767,32767,32767, 329, 329, 329,32767,32767, 473, 473, 473, 473, 473, 473,32767,32767,32767,32767, - 32767, 411,32767,32767,32767,32767,32767,32767,32767,32767, + 32767, 410,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767, 93,32767,32767,32767,32767,32767, - 32767,32767,32767, 95,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767, 94,32767,32767,32767,32767,32767, + 32767,32767,32767, 96,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 519,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767, 394, 395, 397, 398, 329, 474, 525, 274, 522, - 328, 131, 285, 276, 212, 228, 229, 325, 135, 255, - 359, 412, 361, 410, 414, 360, 335, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, - 333, 334, 413, 415, 416, 391, 390, 389, 357, 358, - 32767,32767, 362, 332, 364,32767,32767,32767,32767,32767, - 32767,32767,32767, 95,32767, 363, 380, 381, 378, 379, - 382, 383, 384, 385, 386,32767,32767,32767, 308, 371, - 372,32767, 265, 265,32767,32767,32767,32767,32767,32767, - 32767,32767, 467, 388, 366, 367, 365,32767, 444,32767, - 32767,32767,32767,32767, 250, 250, 250, 250, 250, 250, - 446,32767, 93,32767, 250,32767,32767, 469, 354, 356, - 437, 520, 336, 523,32767,32767, 95, 431,32767,32767, - 32767,32767,32767,32767,32767,32767,32767,32767,32767, 468, - 32767,32767,32767, 93,32767,32767, 93, 175, 238, 240, - 489, 180,32767, 449,32767,32767,32767,32767,32767,32767, + 32767, 393, 394, 396, 397, 328, 474, 525, 273, 522, + 327, 130, 284, 275, 211, 227, 228, 324, 134, 254, + 358, 411, 360, 409, 413, 359, 334, 339, 340, 341, + 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, + 332, 333, 412, 414, 415, 390, 389, 388, 356,32767, + 32767, 357, 361,32767,32767,32767,32767,32767,32767,32767, + 32767, 96,32767, 331, 363, 362, 379, 380, 377, 378, + 381, 382, 383, 384, 385,32767,32767,32767,32767, 307, + 370, 371, 264, 264,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767,32767,32767, 94, 467, + 387, 365, 366, 364,32767, 444,32767, 249, 249, 249, + 249, 249, 96, 249, 446,32767, 249,32767,32767,32767, + 32767, 469, 353, 355, 437, 520, 335, 523,32767, 430, + 94,32767,32767,32767,32767,32767,32767,32767,32767,32767, + 468,32767,32767,32767,32767,32767, 94, 174,32767, 237, + 239, 96, 489, 179,32767, 449,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767, 431, 376, 533,32767, 475, 368, 369, - 370,32767,32767, 475, 475,32767, 475,32767,32767,32767, - 32767,32767,32767, 180,32767,32767,32767,32767, 95, 447, - 447, 93, 93, 93, 93, 442,32767, 180, 180,32767, - 32767,32767,32767,32767, 180, 92, 92, 92, 92, 180, - 180, 92, 195,32767, 193, 193, 92,32767, 94, 94, - 32767, 94, 197,32767, 493, 197, 94, 92, 217, 217, - 422, 180, 267, 94, 94, 94, 267, 182, 267, 94, - 422, 267, 180, 267, 92, 92,32767, 94, 267,32767, - 32767,32767, 86,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767,32767,32767, 433,32767, - 462,32767, 479, 491,32767, 374, 375, 377, 477, 399, - 400, 401, 402, 403, 404, 405, 407, 521,32767, 436, - 32767,32767,32767, 88, 122, 284,32767, 531, 88, 434, - 32767, 531,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767, 88, 88,32767,32767,32767,32767,32767,32767, - 532,32767, 475, 435,32767, 373, 458, 498,32767, 476, - 524,32767,32767,32767,32767,32767, 88,32767,32767,32767, - 32767,32767,32767,32767,32767,32767, 462, 257, 259,32767, - 32767,32767,32767,32767,32767,32767, 475,32767,32767,32767, + 32767,32767,32767,32767,32767, 430, 375, 123, 533, 123, + 475, 367, 368, 369, 475, 475, 475,32767,32767,32767, + 32767, 179, 447, 447, 94, 94, 94, 94, 442,32767, + 179, 179,32767,32767,32767,32767, 179, 93, 93, 93, + 93, 179, 179, 93, 194, 192, 192, 93,32767, 95, + 95,32767, 95, 196,32767, 493, 196, 95, 93, 216, + 216, 421, 179, 266, 95, 95, 95, 266, 181, 266, + 32767, 95, 421, 266, 179, 266, 93, 93,32767, 95, + 266,32767,32767,32767, 432,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767, 475,32767,32767,32767,32767,32767, - 32767, 324,32767,32767,32767,32767,32767,32767,32767,32767, - 254,32767,32767,32767,32767,32767, 86, 60,32767, 304, + 32767, 462,32767, 479, 491, 373, 374, 376, 477, 398, + 399, 400, 401, 402, 403, 404, 406, 521,32767, 436, + 32767,32767,32767, 283,32767, 531,32767, 531,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767, 137, 137, 3, 287, 3, 287, 137, 137, 137, - 287, 287, 137, 137, 137, 137, 137, 137, 137, 170, - 232, 235, 217, 217, 296, 137, 137 + 32767,32767,32767,32767, 532,32767, 475,32767, 372, 458, + 498,32767, 476, 524,32767,32767,32767,32767,32767,32767, + 123,32767,32767,32767,32767,32767,32767,32767,32767,32767, + 462, 256, 258,32767, 121,32767,32767,32767,32767,32767, + 32767, 475,32767,32767,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767,32767,32767, 475,32767, + 32767,32767,32767,32767, 323,32767,32767,32767,32767,32767, + 32767,32767,32767, 253,32767,32767,32767,32767,32767, 432, + 32767, 303,32767,32767,32767,32767,32767,32767,32767,32767, + 32767,32767,32767, 136, 136, 3, 286, 3, 286, 136, + 136, 136, 286, 286, 136, 136, 136, 136, 136, 136, + 136, 169, 231, 234, 216, 216, 295, 136, 136 ); protected $goto = array( 178, 150, 150, 150, 150, 178, 175, 175, 160, 162, 196, 179, 175, 175, 175, 175, 175, 176, 176, 176, 176, 176, 176, 171, 172, 173, 174, 193, 191, 194, - 455, 456, 344, 457, 459, 460, 461, 462, 463, 464, - 465, 466, 956, 147, 151, 152, 153, 177, 154, 155, + 445, 446, 346, 447, 449, 450, 451, 452, 453, 454, + 455, 456, 937, 147, 151, 152, 153, 177, 154, 155, 156, 149, 157, 158, 159, 161, 190, 192, 195, 215, - 218, 219, 222, 224, 235, 236, 237, 238, 239, 240, - 241, 242, 243, 244, 249, 250, 264, 265, 266, 348, - 349, 350, 505, 197, 198, 199, 200, 201, 202, 203, + 218, 221, 222, 234, 235, 236, 237, 238, 239, 240, + 241, 242, 243, 244, 250, 251, 271, 272, 273, 351, + 352, 353, 488, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 163, 212, 164, 180, 181, 182, 216, 183, 165, 166, 167, 184, 180, 168, 217, 148, 185, 213, 169, 186, 214, 187, - 188, 170, 189, 578, 473, 587, 781, 354, 554, 524, - 551, 306, 347, 288, 289, 291, 502, 292, 353, 293, - 356, 536, 507, 714, 467, 467, 467, 467, 399, 399, - 280, 478, 478, 478, 510, 256, 478, 339, 399, 341, - 1145, 1145, 559, 776, 342, 777, 526, 526, 493, 302, - 478, 1079, 1079, 1079, 1079, 1079, 1079, 1079, 1079, 1079, - 1079, 1097, 1097, 1121, 1122, 1145, 1097, 1097, 1097, 1097, - 1097, 1097, 1097, 1097, 1097, 1097, 1095, 1095, 875, 880, - 881, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, - 1095, 506, 922, 590, 715, 478, 478, 572, 920, 1045, - 750, 492, 516, 478, 478, 478, 741, 326, 330, 485, - 508, 511, 533, 702, 458, 458, 547, 548, 479, 458, - 458, 458, 458, 458, 458, 458, 458, 458, 458, 491, - 503, 815, 337, 586, 611, 535, 537, 1160, 823, 552, - 571, 574, 858, 581, 589, 854, 1034, 499, 803, 1035, - 741, 475, 741, 713, 515, 529, 531, 532, 583, 1046, - 929, 304, 717, 930, 847, 821, 821, 819, 821, 610, - 1134, 470, 856, 851, 1107, 890, 469, 469, 844, 1047, - 1105, 722, 324, 772, 767, 768, 782, 553, 723, 769, - 720, 770, 771, 721, 570, 775, 497, 732, 732, 817, - 817, 817, 817, 742, 742, 742, 744, 731, 745, 733, - 894, 811, 818, 898, 307, 308, 1004, 944, 826, 521, - 861, 861, 885, 504, 863, 520, 475, 328, 471, 816, - 362, 736, 557, 842, 484, 3, 4, 730, 1120, 494, - 495, 311, 866, 1049, 1049, 1041, 937, 749, 877, 877, - 877, 544, 1126, 1126, 303, 737, 877, 877, 877, 1144, - 1144, 417, 334, 1117, 1117, 734, 1049, 1049, 1049, 1049, - 895, 615, 11, 558, 1128, 1128, 1042, 1037, 1049, 1049, - 1044, 746, 828, 899, 1144, 405, 939, 523, 423, 0, - 0, 0, 0, 0, 0, 789, 0, 0, 790, 0, - 0, 0, 1113, 0, 1147, 0, 0, 0, 0, 0, + 188, 170, 189, 560, 697, 762, 569, 355, 538, 307, + 698, 350, 292, 293, 295, 486, 296, 354, 297, 356, + 521, 510, 510, 490, 731, 1061, 1061, 1061, 1061, 1061, + 1061, 1061, 1061, 1061, 1061, 1079, 1079, 508, 535, 1079, + 1079, 1079, 1079, 1079, 1079, 1079, 1079, 1079, 1079, 1077, + 1077, 284, 264, 1077, 1077, 1077, 1077, 1077, 1077, 1077, + 1077, 1077, 1077, 448, 448, 1103, 1104, 448, 448, 448, + 448, 448, 448, 448, 448, 448, 448, 476, 684, 687, + 1142, 804, 593, 520, 522, 696, 483, 536, 554, 557, + 839, 563, 571, 835, 463, 305, 828, 802, 802, 800, + 802, 592, 1116, 460, 837, 832, 726, 714, 875, 871, + 1015, 879, 784, 1016, 925, 807, 505, 1089, 459, 459, + 687, 844, 687, 910, 825, 304, 797, 911, 717, 541, + 823, 798, 798, 798, 798, 711, 757, 553, 758, 792, + 799, 390, 390, 1022, 918, 730, 457, 457, 457, 457, + 481, 390, 1026, 341, 326, 343, 493, 3, 4, 542, + 463, 344, 700, 330, 461, 985, 302, 1126, 1126, 469, + 903, 489, 572, 537, 478, 479, 555, 901, 498, 513, + 516, 517, 705, 565, 753, 748, 749, 763, 1126, 706, + 750, 703, 751, 752, 704, 408, 756, 328, 332, 470, + 491, 494, 1027, 308, 309, 1129, 713, 11, 1127, 1127, + 866, 725, 518, 1025, 712, 298, 531, 532, 856, 861, + 862, 1028, 1087, 796, 339, 568, 349, 360, 500, 1127, + 487, 1102, 504, 718, 847, 336, 715, 876, 597, 1018, + 1023, 727, 920, 507, 1030, 1030, 858, 880, 396, 809, + 858, 858, 858, 858, 858, 415, 0, 1030, 1030, 1030, + 1030, 1108, 1108, 1099, 1099, 1030, 1030, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 490, 0, 0, 0, 0, 0, 897, - 0, 1115, 1115, 897, 0, 0, 0, 0, 0, 0, + 0, 0, 1110, 1110, 0, 770, 0, 0, 771, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 472, 488, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 472, 0, 488, 0, - 0, 327, 0, 0, 476, 392, 0, 394, 0, 0, + 0, 0, 0, 0, 0, 1095, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 740, 0, 0, 1152 + 0, 0, 0, 0, 0, 0, 475, 0, 0, 878, + 0, 1097, 1097, 878, 0, 0, 0, 0, 0, 0, + 0, 842, 842, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 462, 473, 0, 0, 0, 0, + 462, 0, 473, 0, 0, 329, 0, 0, 464, 384, + 385, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 723, 0, 0, 1134, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 721 ); protected $gotoCheck = array( @@ -673,84 +677,85 @@ class Php7 extends \PhpParser\ParserAbstract 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, - 33, 33, 33, 63, 10, 8, 13, 56, 56, 46, - 46, 81, 56, 56, 56, 56, 56, 56, 56, 56, - 56, 56, 105, 17, 91, 91, 91, 91, 124, 124, - 142, 10, 10, 10, 91, 142, 10, 70, 124, 70, - 156, 156, 70, 55, 70, 55, 92, 92, 10, 70, - 10, 92, 92, 92, 92, 92, 92, 92, 92, 92, - 92, 143, 143, 151, 151, 156, 143, 143, 143, 143, - 143, 143, 143, 143, 143, 143, 144, 144, 98, 98, - 98, 144, 144, 144, 144, 144, 144, 144, 144, 144, - 144, 7, 7, 7, 18, 10, 10, 7, 7, 100, - 36, 10, 10, 10, 10, 10, 26, 49, 49, 49, - 49, 49, 74, 5, 146, 146, 74, 74, 10, 146, - 146, 146, 146, 146, 146, 146, 146, 146, 146, 39, - 10, 77, 77, 77, 39, 39, 39, 12, 40, 39, - 39, 39, 39, 39, 39, 39, 68, 145, 68, 68, - 26, 12, 26, 16, 69, 69, 69, 69, 69, 100, - 119, 152, 13, 119, 16, 16, 16, 16, 16, 16, - 154, 16, 16, 16, 12, 102, 76, 76, 87, 100, - 100, 13, 52, 13, 13, 13, 13, 54, 13, 13, - 13, 13, 13, 13, 12, 13, 88, 26, 26, 76, - 76, 76, 76, 26, 26, 26, 26, 26, 14, 14, - 14, 76, 76, 14, 81, 81, 126, 15, 14, 15, - 91, 91, 97, 2, 15, 2, 12, 66, 66, 14, - 96, 15, 15, 15, 66, 37, 37, 15, 149, 66, - 66, 20, 94, 63, 63, 15, 14, 14, 63, 63, - 63, 24, 8, 8, 11, 30, 63, 63, 63, 155, - 155, 66, 19, 105, 105, 28, 63, 63, 63, 63, - 104, 83, 66, 23, 105, 105, 135, 132, 63, 63, - 12, 32, 80, 107, 155, 72, 122, 73, 130, -1, - -1, -1, -1, -1, -1, 63, -1, -1, 63, -1, - -1, -1, 105, -1, 155, -1, -1, -1, -1, -1, + 33, 33, 33, 63, 17, 13, 8, 56, 56, 81, + 18, 56, 56, 56, 56, 56, 56, 56, 56, 56, + 56, 92, 92, 105, 36, 92, 92, 92, 92, 92, + 92, 92, 92, 92, 92, 143, 143, 46, 46, 143, + 143, 143, 143, 143, 143, 143, 143, 143, 143, 144, + 144, 142, 142, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 146, 146, 151, 151, 146, 146, 146, + 146, 146, 146, 146, 146, 146, 146, 39, 5, 10, + 12, 40, 39, 39, 39, 16, 145, 39, 39, 39, + 39, 39, 39, 39, 12, 152, 16, 16, 16, 16, + 16, 16, 154, 16, 16, 16, 14, 14, 14, 102, + 68, 14, 68, 68, 15, 14, 15, 12, 76, 76, + 10, 15, 10, 119, 87, 10, 14, 119, 15, 15, + 15, 76, 76, 76, 76, 15, 55, 12, 55, 76, + 76, 124, 124, 15, 14, 14, 91, 91, 91, 91, + 88, 124, 100, 70, 52, 70, 91, 37, 37, 70, + 12, 70, 13, 66, 66, 126, 70, 155, 155, 66, + 7, 7, 7, 54, 66, 66, 7, 7, 69, 69, + 69, 69, 13, 69, 13, 13, 13, 13, 155, 13, + 13, 13, 13, 13, 13, 66, 13, 49, 49, 49, + 49, 49, 100, 81, 81, 155, 26, 66, 156, 156, + 97, 26, 74, 12, 26, 20, 74, 74, 98, 98, + 98, 100, 100, 77, 77, 77, 11, 96, 11, 156, + 2, 149, 2, 30, 94, 19, 28, 104, 83, 132, + 135, 32, 122, 73, 63, 63, 63, 107, 72, 80, + 63, 63, 63, 63, 63, 130, -1, 63, 63, 63, + 63, 8, 8, 105, 105, 63, 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 8, -1, -1, -1, -1, -1, 105, + -1, -1, 105, 105, -1, 63, -1, -1, 63, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 105, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 8, -1, -1, 105, -1, 105, 105, 105, -1, -1, -1, -1, -1, -1, + -1, 91, 91, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 8, 8, -1, -1, -1, -1, + 8, -1, 8, -1, -1, 8, -1, -1, 8, 8, + 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 8, -1, -1, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 8, 8, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 8, -1, 8, -1, - -1, 8, -1, -1, 8, 8, -1, 8, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 8, -1, -1, 8 + -1, -1, -1, -1, -1, -1, 8 ); protected $gotoBase = array( - 0, 0, -250, 0, 0, 223, 0, 206, 115, 0, - -143, 75, -26, -21, -58, -62, 271, 141, 212, 71, - 94, 0, 0, 34, 76, 0, -41, 0, 72, 0, - 79, 0, 30, -23, 0, 0, 211, -260, 0, -343, - 239, 0, 0, 0, 0, 0, 93, 0, 0, 186, - 0, 0, 264, 0, 86, 148, -93, 0, 0, 0, - 0, 0, 0, 117, 0, 0, -30, 0, -73, -1, - -259, 0, 10, 2, -364, 0, 50, -19, 0, 0, - 29, -278, 0, 53, 0, 0, 0, 268, 277, 0, - 0, 120, -54, 0, 78, 0, 97, 91, -61, 0, - -104, 0, 267, 0, 74, 137, 0, 31, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, - 0, 0, 32, 0, 119, 0, 89, 0, 0, 0, - -12, 0, 27, 0, 0, 33, 0, 0, 0, 0, - 0, 0, -118, -39, -24, 242, 14, 0, 0, 100, - 0, -131, 255, 0, 263, 124, -95, 0, 0 + 0, 0, -225, 0, 0, 188, 0, 285, 116, 0, + -58, 48, -85, -22, -152, -156, 203, 122, 128, 57, + 78, 0, 0, 0, 0, 0, 13, 0, 56, 0, + 71, 0, -3, -23, 0, 0, 135, -320, 0, -377, + 182, 0, 0, 0, 0, 0, 121, 0, 0, 276, + 0, 0, 236, 0, 73, 241, -92, 0, 0, 0, + 0, 0, 0, 118, 0, 0, -87, 0, -111, 20, + -134, 0, -18, -33, -246, 0, -8, 83, 0, 0, + 3, -271, 0, 18, 0, 0, 0, 214, 231, 0, + 0, 242, -78, 0, 68, 0, 94, 82, 84, 0, + -53, 0, 201, 0, 41, 137, 0, 2, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, -2, + 0, 0, -5, 0, 232, 0, 38, 0, 0, 0, + -37, 0, -4, 0, 0, -1, 0, 0, 0, 0, + 0, 0, -104, -64, -50, 181, -36, 0, 0, 85, + 0, -129, 189, 0, 195, 24, 65, 0, 0 ); protected $gotoDefault = array( - -32768, 429, 618, 2, 619, 692, 700, 562, 447, 588, - 448, 474, 345, 774, 943, 794, 756, 757, 758, 331, - 367, 322, 329, 545, 530, 419, 743, 387, 735, 413, - 738, 386, 747, 146, 563, 425, 751, 1, 753, 480, - 785, 318, 761, 319, 566, 763, 487, 765, 766, 325, - 332, 333, 948, 496, 525, 778, 223, 489, 779, 317, - 780, 788, 320, 323, 575, 398, 426, 340, 924, 514, - 541, 382, 402, 522, 517, 498, 1057, 813, 407, 396, - 827, 305, 835, 616, 955, 538, 415, 843, 539, 850, - 853, 449, 450, 406, 865, 252, 411, 883, 527, 528, - 1065, 401, 889, 388, 896, 1101, 391, 900, 245, 903, - 253, 560, 357, 908, 909, 6, 914, 579, 580, 7, - 248, 424, 938, 561, 385, 954, 370, 1023, 1025, 482, - 416, 1038, 395, 569, 427, 1043, 1104, 383, 451, 403, - 290, 452, 255, 309, 287, 468, 262, 310, 453, 404, - 1109, 1116, 286, 27, 1135, 1146, 300, 501, 519 + -32768, 421, 600, 2, 601, 674, 682, 545, 439, 570, + 514, 347, 348, 755, 924, 775, 737, 738, 739, 333, + 318, 324, 331, 529, 515, 411, 724, 379, 716, 404, + 719, 378, 728, 146, 546, 417, 732, 1, 734, 466, + 766, 319, 742, 320, 549, 744, 472, 746, 747, 327, + 334, 335, 929, 480, 509, 759, 233, 474, 760, 317, + 761, 769, 322, 325, 558, 389, 418, 342, 905, 497, + 526, 374, 393, 506, 501, 482, 1039, 794, 398, 387, + 808, 306, 816, 598, 936, 523, 406, 824, 524, 831, + 834, 440, 441, 397, 846, 252, 402, 864, 511, 512, + 1047, 392, 870, 380, 877, 1083, 383, 881, 245, 884, + 253, 543, 357, 889, 890, 5, 895, 561, 562, 7, + 249, 416, 919, 544, 377, 935, 363, 1004, 1006, 468, + 407, 1019, 386, 552, 419, 1024, 1086, 375, 442, 394, + 294, 443, 263, 310, 291, 458, 269, 311, 444, 395, + 1091, 1098, 289, 27, 1117, 1128, 301, 485, 503 ); protected $ruleToNonTerminal = array( @@ -762,32 +767,32 @@ class Php7 extends \PhpParser\ParserAbstract 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, - 6, 6, 7, 7, 8, 9, 10, 10, 11, 12, - 13, 13, 14, 14, 15, 15, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 20, 20, 21, - 21, 21, 21, 23, 25, 25, 19, 27, 27, 24, - 29, 29, 26, 26, 28, 28, 30, 30, 22, 31, - 31, 32, 34, 35, 35, 36, 37, 37, 39, 38, - 38, 38, 38, 40, 40, 40, 40, 40, 40, 40, + 6, 6, 7, 7, 8, 9, 10, 10, 11, 11, + 12, 13, 13, 14, 14, 15, 15, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 20, 20, + 21, 21, 23, 25, 25, 19, 27, 27, 24, 29, + 29, 26, 26, 28, 28, 30, 30, 22, 31, 31, + 32, 34, 35, 35, 36, 37, 37, 39, 38, 38, + 38, 38, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, - 40, 40, 40, 40, 40, 40, 40, 40, 16, 16, - 59, 59, 62, 62, 61, 60, 60, 53, 65, 65, - 66, 66, 67, 67, 68, 68, 17, 18, 18, 18, - 71, 71, 71, 72, 72, 75, 75, 73, 73, 77, - 78, 78, 47, 47, 55, 55, 58, 58, 58, 57, - 79, 79, 80, 48, 48, 48, 48, 81, 81, 82, - 82, 83, 83, 84, 85, 85, 86, 86, 87, 87, - 45, 45, 41, 41, 89, 43, 43, 90, 42, 42, - 44, 44, 54, 54, 54, 54, 69, 69, 93, 93, - 95, 95, 95, 95, 94, 94, 94, 97, 97, 97, - 98, 98, 98, 99, 99, 96, 96, 70, 70, 70, - 100, 100, 101, 101, 102, 102, 102, 50, 103, 103, - 104, 51, 106, 106, 107, 107, 108, 108, 74, 109, - 109, 109, 109, 109, 114, 114, 115, 115, 116, 116, - 116, 116, 116, 117, 118, 118, 113, 113, 110, 110, - 112, 112, 120, 120, 119, 119, 119, 119, 119, 119, - 111, 121, 121, 123, 122, 122, 52, 88, 124, 124, - 46, 46, 33, 33, 33, 33, 33, 33, 33, 33, + 40, 40, 40, 40, 40, 40, 40, 16, 16, 59, + 59, 62, 62, 61, 60, 60, 53, 65, 65, 66, + 66, 67, 67, 68, 68, 17, 18, 18, 18, 71, + 71, 71, 72, 72, 75, 75, 73, 73, 77, 78, + 78, 47, 47, 55, 55, 58, 58, 58, 57, 79, + 79, 80, 48, 48, 48, 48, 81, 81, 82, 82, + 83, 83, 84, 85, 85, 86, 86, 87, 87, 45, + 45, 41, 41, 89, 43, 43, 90, 42, 42, 44, + 44, 54, 54, 54, 54, 69, 69, 93, 93, 95, + 95, 95, 95, 94, 94, 94, 97, 97, 97, 98, + 98, 98, 99, 99, 96, 96, 70, 70, 70, 100, + 100, 101, 101, 102, 102, 102, 50, 103, 103, 104, + 51, 106, 106, 107, 107, 108, 108, 74, 109, 109, + 109, 109, 109, 114, 114, 115, 115, 116, 116, 116, + 116, 116, 117, 118, 118, 113, 113, 110, 110, 112, + 112, 120, 120, 119, 119, 119, 119, 119, 119, 111, + 121, 121, 123, 122, 122, 52, 88, 124, 124, 46, + 46, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, @@ -795,9 +800,9 @@ class Php7 extends \PhpParser\ParserAbstract 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, - 33, 33, 33, 33, 33, 33, 33, 33, 33, 131, - 125, 125, 130, 130, 133, 134, 134, 135, 136, 136, - 136, 76, 76, 63, 63, 63, 126, 126, 126, 126, + 33, 33, 33, 33, 33, 33, 33, 33, 131, 125, + 125, 130, 130, 133, 134, 134, 135, 136, 136, 136, + 76, 76, 63, 63, 63, 63, 126, 126, 126, 126, 138, 138, 127, 127, 129, 129, 129, 132, 132, 143, 143, 143, 143, 143, 143, 143, 143, 143, 144, 144, 92, 146, 146, 146, 146, 128, 128, 128, 128, 128, @@ -820,42 +825,42 @@ class Php7 extends \PhpParser\ParserAbstract 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, - 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, - 3, 5, 4, 3, 4, 2, 3, 1, 1, 7, - 8, 6, 7, 2, 3, 1, 2, 3, 1, 2, - 3, 1, 1, 3, 1, 2, 1, 2, 2, 3, - 1, 3, 2, 3, 1, 3, 2, 0, 1, 1, - 1, 1, 1, 3, 7, 10, 5, 7, 9, 5, - 3, 3, 3, 3, 3, 3, 1, 2, 5, 7, - 9, 6, 5, 6, 3, 3, 2, 1, 1, 1, - 0, 2, 1, 3, 8, 0, 4, 2, 1, 3, - 0, 1, 0, 1, 3, 1, 8, 7, 6, 5, - 1, 2, 2, 0, 2, 0, 2, 0, 2, 2, - 1, 3, 1, 4, 1, 4, 1, 1, 4, 2, - 1, 3, 3, 3, 4, 4, 5, 0, 2, 4, - 3, 1, 1, 7, 0, 2, 1, 3, 3, 4, - 1, 4, 0, 2, 5, 0, 2, 6, 0, 2, - 0, 3, 1, 2, 1, 1, 2, 0, 1, 3, - 0, 1, 1, 1, 5, 7, 5, 1, 2, 1, - 1, 1, 1, 3, 3, 0, 1, 0, 2, 2, - 2, 4, 1, 3, 1, 2, 2, 2, 3, 1, - 1, 2, 3, 1, 1, 3, 2, 0, 1, 4, - 4, 9, 3, 1, 1, 3, 0, 2, 4, 5, - 4, 4, 4, 3, 1, 1, 1, 1, 1, 1, - 0, 1, 1, 2, 1, 1, 1, 1, 1, 1, - 2, 1, 3, 1, 1, 3, 2, 2, 3, 1, - 0, 1, 1, 3, 3, 3, 4, 1, 1, 2, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, + 1, 3, 5, 4, 3, 4, 2, 3, 1, 1, + 7, 6, 2, 3, 1, 2, 3, 1, 2, 3, + 1, 1, 3, 1, 3, 1, 2, 2, 3, 1, + 3, 2, 3, 1, 3, 2, 0, 1, 1, 1, + 1, 1, 3, 7, 10, 5, 7, 9, 5, 3, + 3, 3, 3, 3, 3, 1, 2, 5, 7, 9, + 6, 5, 6, 3, 3, 2, 1, 1, 1, 0, + 2, 1, 3, 8, 0, 4, 2, 1, 3, 0, + 1, 0, 1, 3, 1, 8, 7, 6, 5, 1, + 2, 2, 0, 2, 0, 2, 0, 2, 2, 1, + 3, 1, 4, 1, 4, 1, 1, 4, 2, 1, + 3, 3, 3, 4, 4, 5, 0, 2, 4, 3, + 1, 1, 7, 0, 2, 1, 3, 3, 4, 1, + 4, 0, 2, 5, 0, 2, 6, 0, 2, 0, + 3, 1, 2, 1, 1, 2, 0, 1, 3, 0, + 1, 1, 1, 5, 7, 5, 1, 2, 1, 1, + 1, 1, 3, 3, 0, 1, 0, 2, 2, 2, + 4, 1, 3, 1, 2, 2, 2, 3, 1, 1, + 2, 3, 1, 1, 3, 2, 0, 1, 4, 4, + 9, 3, 1, 1, 3, 0, 2, 4, 5, 4, + 4, 4, 3, 1, 1, 1, 1, 1, 1, 0, + 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, + 1, 3, 1, 1, 3, 2, 2, 3, 1, 0, + 1, 1, 3, 3, 3, 4, 1, 1, 2, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 2, 2, 2, 2, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, - 4, 3, 4, 4, 2, 2, 4, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 1, 3, - 2, 1, 2, 4, 2, 8, 9, 8, 9, 7, - 3, 2, 0, 4, 2, 1, 3, 2, 2, 2, - 4, 1, 1, 1, 2, 3, 1, 1, 3, 1, + 3, 3, 3, 3, 3, 3, 3, 3, 5, 4, + 3, 4, 4, 2, 2, 4, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 1, 3, 2, + 1, 2, 4, 2, 8, 9, 8, 9, 7, 3, + 2, 0, 4, 2, 1, 3, 2, 2, 2, 4, + 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 0, 3, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, 3, 4, 1, 1, 3, 1, 1, 1, 1, 1, @@ -1131,19 +1136,19 @@ class Php7 extends \PhpParser\ParserAbstract $this->semValue = new Node\Identifier($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 86 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); - }, - 87 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; - }, - 88 => function ($stackPos) { $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, + 87 => function ($stackPos) { + $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + }, + 88 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, 89 => function ($stackPos) { - $this->semValue = new Expr\Variable(substr($this->semStack[$stackPos-(1-1)], 1), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Name(substr($this->semStack[$stackPos-(1-1)], 1), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 90 => function ($stackPos) { - /* nothing */ + $this->semValue = new Expr\Variable(substr($this->semStack[$stackPos-(1-1)], 1), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 91 => function ($stackPos) { /* nothing */ @@ -1152,16 +1157,16 @@ class Php7 extends \PhpParser\ParserAbstract /* nothing */ }, 93 => function ($stackPos) { - $this->emitError(new Error('A trailing comma is not allowed here', $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes)); + /* nothing */ }, 94 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos]; + $this->emitError(new Error('A trailing comma is not allowed here', $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes)); }, 95 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos]; }, 96 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = $this->semStack[$stackPos]; }, 97 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; @@ -1170,132 +1175,132 @@ class Php7 extends \PhpParser\ParserAbstract $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 99 => function ($stackPos) { - $this->semValue = new Stmt\HaltCompiler($this->lexer->handleHaltCompiler(), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 100 => function ($stackPos) { + $this->semValue = new Stmt\HaltCompiler($this->lexer->handleHaltCompiler(), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + }, + 101 => function ($stackPos) { $this->semValue = new Stmt\Namespace_($this->semStack[$stackPos-(3-2)], null, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); $this->semValue->setAttribute('kind', Stmt\Namespace_::KIND_SEMICOLON); $this->checkNamespace($this->semValue); }, - 101 => function ($stackPos) { + 102 => function ($stackPos) { $this->semValue = new Stmt\Namespace_($this->semStack[$stackPos-(5-2)], $this->semStack[$stackPos-(5-4)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); $this->semValue->setAttribute('kind', Stmt\Namespace_::KIND_BRACED); $this->checkNamespace($this->semValue); }, - 102 => function ($stackPos) { + 103 => function ($stackPos) { $this->semValue = new Stmt\Namespace_(null, $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); $this->semValue->setAttribute('kind', Stmt\Namespace_::KIND_BRACED); $this->checkNamespace($this->semValue); }, - 103 => function ($stackPos) { + 104 => function ($stackPos) { $this->semValue = new Stmt\Use_($this->semStack[$stackPos-(3-2)], Stmt\Use_::TYPE_NORMAL, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 104 => function ($stackPos) { + 105 => function ($stackPos) { $this->semValue = new Stmt\Use_($this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-2)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 105 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(2-1)]; - }, 106 => function ($stackPos) { - $this->semValue = new Stmt\Const_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(2-1)]; }, 107 => function ($stackPos) { - $this->semValue = Stmt\Use_::TYPE_FUNCTION; + $this->semValue = new Stmt\Const_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 108 => function ($stackPos) { - $this->semValue = Stmt\Use_::TYPE_CONSTANT; + $this->semValue = Stmt\Use_::TYPE_FUNCTION; }, 109 => function ($stackPos) { - $this->semValue = new Stmt\GroupUse(new Name($this->semStack[$stackPos-(7-3)], $this->startAttributeStack[$stackPos-(7-3)] + $this->endAttributeStack[$stackPos-(7-3)]), $this->semStack[$stackPos-(7-6)], $this->semStack[$stackPos-(7-2)], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes); + $this->semValue = Stmt\Use_::TYPE_CONSTANT; }, 110 => function ($stackPos) { - $this->semValue = new Stmt\GroupUse(new Name($this->semStack[$stackPos-(8-4)], $this->startAttributeStack[$stackPos-(8-4)] + $this->endAttributeStack[$stackPos-(8-4)]), $this->semStack[$stackPos-(8-7)], $this->semStack[$stackPos-(8-2)], $this->startAttributeStack[$stackPos-(8-1)] + $this->endAttributes); + $this->semValue = new Stmt\GroupUse($this->semStack[$stackPos-(7-3)], $this->semStack[$stackPos-(7-6)], $this->semStack[$stackPos-(7-2)], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes); }, 111 => function ($stackPos) { - $this->semValue = new Stmt\GroupUse(new Name($this->semStack[$stackPos-(6-2)], $this->startAttributeStack[$stackPos-(6-2)] + $this->endAttributeStack[$stackPos-(6-2)]), $this->semStack[$stackPos-(6-5)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); + $this->semValue = new Stmt\GroupUse($this->semStack[$stackPos-(6-2)], $this->semStack[$stackPos-(6-5)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); }, 112 => function ($stackPos) { - $this->semValue = new Stmt\GroupUse(new Name($this->semStack[$stackPos-(7-3)], $this->startAttributeStack[$stackPos-(7-3)] + $this->endAttributeStack[$stackPos-(7-3)]), $this->semStack[$stackPos-(7-6)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(2-1)]; }, 113 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(2-1)]; + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, 114 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 115 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semValue = $this->semStack[$stackPos-(2-1)]; }, 116 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(2-1)]; + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, 117 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 118 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semValue = $this->semStack[$stackPos-(2-1)]; }, 119 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(2-1)]; + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, 120 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 121 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); - }, - 122 => function ($stackPos) { $this->semValue = new Stmt\UseUse($this->semStack[$stackPos-(1-1)], null, Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); $this->checkUseUse($this->semValue, $stackPos-(1-1)); }, - 123 => function ($stackPos) { + 122 => function ($stackPos) { $this->semValue = new Stmt\UseUse($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); $this->checkUseUse($this->semValue, $stackPos-(3-3)); }, + 123 => function ($stackPos) { + $this->semValue = new Stmt\UseUse($this->semStack[$stackPos-(1-1)], null, Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); $this->checkUseUse($this->semValue, $stackPos-(1-1)); + }, 124 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Stmt\UseUse($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); $this->checkUseUse($this->semValue, $stackPos-(3-3)); }, 125 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(2-2)]; - }, - 126 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; $this->semValue->type = Stmt\Use_::TYPE_NORMAL; }, - 127 => function ($stackPos) { + 126 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-2)]; $this->semValue->type = $this->semStack[$stackPos-(2-1)]; }, - 128 => function ($stackPos) { + 127 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, + 128 => function ($stackPos) { + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + }, 129 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 130 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semValue = new Node\Const_($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 131 => function ($stackPos) { - $this->semValue = new Node\Const_($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 132 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 133 => function ($stackPos) { + 132 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 134 => function ($stackPos) { + 133 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 135 => function ($stackPos) { + 134 => function ($stackPos) { $this->semValue = new Node\Const_($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 136 => function ($stackPos) { + 135 => function ($stackPos) { if (is_array($this->semStack[$stackPos-(2-2)])) { $this->semValue = array_merge($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)]); } else { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }; }, - 137 => function ($stackPos) { + 136 => function ($stackPos) { $this->semValue = array(); }, - 138 => function ($stackPos) { + 137 => function ($stackPos) { $startAttributes = $this->lookaheadStartAttributes; if (isset($startAttributes['comments'])) { $nop = new Stmt\Nop($this->createCommentNopAttributes($startAttributes['comments'])); } else { $nop = null; }; if ($nop !== null) { $this->semStack[$stackPos-(1-1)][] = $nop; } $this->semValue = $this->semStack[$stackPos-(1-1)]; }, + 138 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, 139 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, @@ -1303,12 +1308,9 @@ class Php7 extends \PhpParser\ParserAbstract $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 141 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; - }, - 142 => function ($stackPos) { throw new Error('__HALT_COMPILER() can only be used from the outermost scope', $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 143 => function ($stackPos) { + 142 => function ($stackPos) { if ($this->semStack[$stackPos-(3-2)]) { $this->semValue = $this->semStack[$stackPos-(3-2)]; $attrs = $this->startAttributeStack[$stackPos-(3-1)]; $stmts = $this->semValue; if (!empty($attrs['comments'])) {$stmts[0]->setAttribute('comments', array_merge($attrs['comments'], $stmts[0]->getAttribute('comments', []))); }; @@ -1318,580 +1320,583 @@ class Php7 extends \PhpParser\ParserAbstract } }, - 144 => function ($stackPos) { + 143 => function ($stackPos) { $this->semValue = new Stmt\If_($this->semStack[$stackPos-(7-3)], ['stmts' => is_array($this->semStack[$stackPos-(7-5)]) ? $this->semStack[$stackPos-(7-5)] : array($this->semStack[$stackPos-(7-5)]), 'elseifs' => $this->semStack[$stackPos-(7-6)], 'else' => $this->semStack[$stackPos-(7-7)]], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes); }, - 145 => function ($stackPos) { + 144 => function ($stackPos) { $this->semValue = new Stmt\If_($this->semStack[$stackPos-(10-3)], ['stmts' => $this->semStack[$stackPos-(10-6)], 'elseifs' => $this->semStack[$stackPos-(10-7)], 'else' => $this->semStack[$stackPos-(10-8)]], $this->startAttributeStack[$stackPos-(10-1)] + $this->endAttributes); }, - 146 => function ($stackPos) { + 145 => function ($stackPos) { $this->semValue = new Stmt\While_($this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 147 => function ($stackPos) { + 146 => function ($stackPos) { $this->semValue = new Stmt\Do_($this->semStack[$stackPos-(7-5)], is_array($this->semStack[$stackPos-(7-2)]) ? $this->semStack[$stackPos-(7-2)] : array($this->semStack[$stackPos-(7-2)]), $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes); }, - 148 => function ($stackPos) { + 147 => function ($stackPos) { $this->semValue = new Stmt\For_(['init' => $this->semStack[$stackPos-(9-3)], 'cond' => $this->semStack[$stackPos-(9-5)], 'loop' => $this->semStack[$stackPos-(9-7)], 'stmts' => $this->semStack[$stackPos-(9-9)]], $this->startAttributeStack[$stackPos-(9-1)] + $this->endAttributes); }, - 149 => function ($stackPos) { + 148 => function ($stackPos) { $this->semValue = new Stmt\Switch_($this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 150 => function ($stackPos) { + 149 => function ($stackPos) { $this->semValue = new Stmt\Break_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 151 => function ($stackPos) { + 150 => function ($stackPos) { $this->semValue = new Stmt\Continue_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 152 => function ($stackPos) { + 151 => function ($stackPos) { $this->semValue = new Stmt\Return_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 153 => function ($stackPos) { + 152 => function ($stackPos) { $this->semValue = new Stmt\Global_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 154 => function ($stackPos) { + 153 => function ($stackPos) { $this->semValue = new Stmt\Static_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 155 => function ($stackPos) { + 154 => function ($stackPos) { $this->semValue = new Stmt\Echo_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 156 => function ($stackPos) { + 155 => function ($stackPos) { $this->semValue = new Stmt\InlineHTML($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 157 => function ($stackPos) { + 156 => function ($stackPos) { $this->semValue = new Stmt\Expression($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 158 => function ($stackPos) { + 157 => function ($stackPos) { $this->semValue = new Stmt\Unset_($this->semStack[$stackPos-(5-3)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 159 => function ($stackPos) { + 158 => function ($stackPos) { $this->semValue = new Stmt\Foreach_($this->semStack[$stackPos-(7-3)], $this->semStack[$stackPos-(7-5)][0], ['keyVar' => null, 'byRef' => $this->semStack[$stackPos-(7-5)][1], 'stmts' => $this->semStack[$stackPos-(7-7)]], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes); }, - 160 => function ($stackPos) { + 159 => function ($stackPos) { $this->semValue = new Stmt\Foreach_($this->semStack[$stackPos-(9-3)], $this->semStack[$stackPos-(9-7)][0], ['keyVar' => $this->semStack[$stackPos-(9-5)], 'byRef' => $this->semStack[$stackPos-(9-7)][1], 'stmts' => $this->semStack[$stackPos-(9-9)]], $this->startAttributeStack[$stackPos-(9-1)] + $this->endAttributes); }, - 161 => function ($stackPos) { + 160 => function ($stackPos) { $this->semValue = new Stmt\Foreach_($this->semStack[$stackPos-(6-3)], new Expr\Error($this->startAttributeStack[$stackPos-(6-4)] + $this->endAttributeStack[$stackPos-(6-4)]), ['stmts' => $this->semStack[$stackPos-(6-6)]], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); }, - 162 => function ($stackPos) { + 161 => function ($stackPos) { $this->semValue = new Stmt\Declare_($this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 163 => function ($stackPos) { + 162 => function ($stackPos) { $this->semValue = new Stmt\TryCatch($this->semStack[$stackPos-(6-3)], $this->semStack[$stackPos-(6-5)], $this->semStack[$stackPos-(6-6)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); $this->checkTryCatch($this->semValue); }, - 164 => function ($stackPos) { + 163 => function ($stackPos) { $this->semValue = new Stmt\Throw_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 165 => function ($stackPos) { + 164 => function ($stackPos) { $this->semValue = new Stmt\Goto_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 166 => function ($stackPos) { + 165 => function ($stackPos) { $this->semValue = new Stmt\Label($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 167 => function ($stackPos) { + 166 => function ($stackPos) { $this->semValue = array(); /* means: no statement */ }, - 168 => function ($stackPos) { + 167 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 169 => function ($stackPos) { + 168 => function ($stackPos) { $startAttributes = $this->startAttributeStack[$stackPos-(1-1)]; if (isset($startAttributes['comments'])) { $this->semValue = new Stmt\Nop($startAttributes + $this->endAttributes); } else { $this->semValue = null; }; if ($this->semValue === null) $this->semValue = array(); /* means: no statement */ }, - 170 => function ($stackPos) { + 169 => function ($stackPos) { $this->semValue = array(); }, - 171 => function ($stackPos) { + 170 => function ($stackPos) { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 172 => function ($stackPos) { + 171 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, + 172 => function ($stackPos) { + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + }, 173 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; - }, - 174 => function ($stackPos) { $this->semValue = new Stmt\Catch_($this->semStack[$stackPos-(8-3)], $this->semStack[$stackPos-(8-4)], $this->semStack[$stackPos-(8-7)], $this->startAttributeStack[$stackPos-(8-1)] + $this->endAttributes); }, - 175 => function ($stackPos) { + 174 => function ($stackPos) { $this->semValue = null; }, - 176 => function ($stackPos) { + 175 => function ($stackPos) { $this->semValue = new Stmt\Finally_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 177 => function ($stackPos) { + 176 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 178 => function ($stackPos) { + 177 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 179 => function ($stackPos) { + 178 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 180 => function ($stackPos) { + 179 => function ($stackPos) { $this->semValue = false; }, + 180 => function ($stackPos) { + $this->semValue = true; + }, 181 => function ($stackPos) { - $this->semValue = true; - }, - 182 => function ($stackPos) { $this->semValue = false; }, - 183 => function ($stackPos) { + 182 => function ($stackPos) { $this->semValue = true; }, - 184 => function ($stackPos) { + 183 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(3-2)]; }, - 185 => function ($stackPos) { + 184 => function ($stackPos) { $this->semValue = []; }, - 186 => function ($stackPos) { + 185 => function ($stackPos) { $this->semValue = new Stmt\Function_($this->semStack[$stackPos-(8-3)], ['byRef' => $this->semStack[$stackPos-(8-2)], 'params' => $this->semStack[$stackPos-(8-5)], 'returnType' => $this->semStack[$stackPos-(8-7)], 'stmts' => $this->semStack[$stackPos-(8-8)]], $this->startAttributeStack[$stackPos-(8-1)] + $this->endAttributes); }, - 187 => function ($stackPos) { + 186 => function ($stackPos) { $this->semValue = new Stmt\Class_($this->semStack[$stackPos-(7-2)], ['type' => $this->semStack[$stackPos-(7-1)], 'extends' => $this->semStack[$stackPos-(7-3)], 'implements' => $this->semStack[$stackPos-(7-4)], 'stmts' => $this->semStack[$stackPos-(7-6)]], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes); $this->checkClass($this->semValue, $stackPos-(7-2)); }, - 188 => function ($stackPos) { + 187 => function ($stackPos) { $this->semValue = new Stmt\Interface_($this->semStack[$stackPos-(6-2)], ['extends' => $this->semStack[$stackPos-(6-3)], 'stmts' => $this->semStack[$stackPos-(6-5)]], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); $this->checkInterface($this->semValue, $stackPos-(6-2)); }, - 189 => function ($stackPos) { + 188 => function ($stackPos) { $this->semValue = new Stmt\Trait_($this->semStack[$stackPos-(5-2)], ['stmts' => $this->semStack[$stackPos-(5-4)]], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 190 => function ($stackPos) { + 189 => function ($stackPos) { $this->semValue = 0; }, - 191 => function ($stackPos) { + 190 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_ABSTRACT; }, - 192 => function ($stackPos) { + 191 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_FINAL; }, - 193 => function ($stackPos) { + 192 => function ($stackPos) { $this->semValue = null; }, + 193 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(2-2)]; + }, 194 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(2-2)]; + $this->semValue = array(); }, 195 => function ($stackPos) { - $this->semValue = array(); + $this->semValue = $this->semStack[$stackPos-(2-2)]; }, 196 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(2-2)]; + $this->semValue = array(); }, 197 => function ($stackPos) { - $this->semValue = array(); - }, - 198 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-2)]; }, - 199 => function ($stackPos) { + 198 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, + 199 => function ($stackPos) { + $this->semValue = array($this->semStack[$stackPos-(1-1)]); + }, 200 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, 201 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + $this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]); }, 202 => function ($stackPos) { - $this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]); + $this->semValue = $this->semStack[$stackPos-(4-2)]; }, 203 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(4-2)]; + $this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]); }, 204 => function ($stackPos) { - $this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]); + $this->semValue = $this->semStack[$stackPos-(4-2)]; }, 205 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(4-2)]; - }, - 206 => function ($stackPos) { $this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]); }, - 207 => function ($stackPos) { + 206 => function ($stackPos) { $this->semValue = null; }, - 208 => function ($stackPos) { + 207 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(4-2)]; }, - 209 => function ($stackPos) { + 208 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 210 => function ($stackPos) { + 209 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 211 => function ($stackPos) { + 210 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 212 => function ($stackPos) { + 211 => function ($stackPos) { $this->semValue = new Stmt\DeclareDeclare($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 213 => function ($stackPos) { + 212 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(3-2)]; }, - 214 => function ($stackPos) { + 213 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(4-3)]; }, - 215 => function ($stackPos) { + 214 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(4-2)]; }, - 216 => function ($stackPos) { + 215 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(5-3)]; }, - 217 => function ($stackPos) { + 216 => function ($stackPos) { $this->semValue = array(); }, - 218 => function ($stackPos) { + 217 => function ($stackPos) { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 219 => function ($stackPos) { + 218 => function ($stackPos) { $this->semValue = new Stmt\Case_($this->semStack[$stackPos-(4-2)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 220 => function ($stackPos) { + 219 => function ($stackPos) { $this->semValue = new Stmt\Case_(null, $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, + 220 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos]; + }, 221 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos]; }, 222 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos]; - }, - 223 => function ($stackPos) { $this->semValue = new Expr\Match_($this->semStack[$stackPos-(7-3)], $this->semStack[$stackPos-(7-6)], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes); }, - 224 => function ($stackPos) { + 223 => function ($stackPos) { $this->semValue = []; }, - 225 => function ($stackPos) { + 224 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 226 => function ($stackPos) { + 225 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 227 => function ($stackPos) { + 226 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 228 => function ($stackPos) { + 227 => function ($stackPos) { $this->semValue = new Node\MatchArm($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 229 => function ($stackPos) { + 228 => function ($stackPos) { $this->semValue = new Node\MatchArm(null, $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 230 => function ($stackPos) { + 229 => function ($stackPos) { $this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]); }, - 231 => function ($stackPos) { + 230 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(4-2)]; }, - 232 => function ($stackPos) { + 231 => function ($stackPos) { $this->semValue = array(); }, + 232 => function ($stackPos) { + $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; + }, 233 => function ($stackPos) { - $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; - }, - 234 => function ($stackPos) { $this->semValue = new Stmt\ElseIf_($this->semStack[$stackPos-(5-3)], is_array($this->semStack[$stackPos-(5-5)]) ? $this->semStack[$stackPos-(5-5)] : array($this->semStack[$stackPos-(5-5)]), $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 235 => function ($stackPos) { + 234 => function ($stackPos) { $this->semValue = array(); }, - 236 => function ($stackPos) { + 235 => function ($stackPos) { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 237 => function ($stackPos) { + 236 => function ($stackPos) { $this->semValue = new Stmt\ElseIf_($this->semStack[$stackPos-(6-3)], $this->semStack[$stackPos-(6-6)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); }, - 238 => function ($stackPos) { + 237 => function ($stackPos) { $this->semValue = null; }, - 239 => function ($stackPos) { + 238 => function ($stackPos) { $this->semValue = new Stmt\Else_(is_array($this->semStack[$stackPos-(2-2)]) ? $this->semStack[$stackPos-(2-2)] : array($this->semStack[$stackPos-(2-2)]), $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 240 => function ($stackPos) { + 239 => function ($stackPos) { $this->semValue = null; }, - 241 => function ($stackPos) { + 240 => function ($stackPos) { $this->semValue = new Stmt\Else_($this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 242 => function ($stackPos) { + 241 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)], false); }, - 243 => function ($stackPos) { + 242 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(2-2)], true); }, + 243 => function ($stackPos) { + $this->semValue = array($this->semStack[$stackPos-(1-1)], false); + }, 244 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)], false); }, 245 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)], false); - }, - 246 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 247 => function ($stackPos) { + 246 => function ($stackPos) { $this->semValue = array(); }, - 248 => function ($stackPos) { + 247 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 249 => function ($stackPos) { + 248 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 250 => function ($stackPos) { + 249 => function ($stackPos) { $this->semValue = 0; }, - 251 => function ($stackPos) { + 250 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_PUBLIC; }, - 252 => function ($stackPos) { + 251 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_PROTECTED; }, - 253 => function ($stackPos) { + 252 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_PRIVATE; }, - 254 => function ($stackPos) { + 253 => function ($stackPos) { $this->semValue = new Node\Param($this->semStack[$stackPos-(5-5)], null, $this->semStack[$stackPos-(5-2)], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-4)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes, $this->semStack[$stackPos-(5-1)]); $this->checkParam($this->semValue); }, - 255 => function ($stackPos) { + 254 => function ($stackPos) { $this->semValue = new Node\Param($this->semStack[$stackPos-(7-5)], $this->semStack[$stackPos-(7-7)], $this->semStack[$stackPos-(7-2)], $this->semStack[$stackPos-(7-3)], $this->semStack[$stackPos-(7-4)], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes, $this->semStack[$stackPos-(7-1)]); $this->checkParam($this->semValue); }, - 256 => function ($stackPos) { + 255 => function ($stackPos) { $this->semValue = new Node\Param(new Expr\Error($this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes), null, $this->semStack[$stackPos-(5-2)], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-4)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes, $this->semStack[$stackPos-(5-1)]); }, - 257 => function ($stackPos) { + 256 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 258 => function ($stackPos) { + 257 => function ($stackPos) { $this->semValue = new Node\NullableType($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 259 => function ($stackPos) { + 258 => function ($stackPos) { $this->semValue = new Node\UnionType($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 260 => function ($stackPos) { + 259 => function ($stackPos) { $this->semValue = $this->handleBuiltinTypes($this->semStack[$stackPos-(1-1)]); }, - 261 => function ($stackPos) { + 260 => function ($stackPos) { $this->semValue = new Node\Identifier('array', $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 262 => function ($stackPos) { + 261 => function ($stackPos) { $this->semValue = new Node\Identifier('callable', $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 263 => function ($stackPos) { + 262 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)]); }, - 264 => function ($stackPos) { + 263 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, + 264 => function ($stackPos) { + $this->semValue = null; + }, 265 => function ($stackPos) { - $this->semValue = null; - }, - 266 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 267 => function ($stackPos) { + 266 => function ($stackPos) { $this->semValue = null; }, - 268 => function ($stackPos) { + 267 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-2)]; }, - 269 => function ($stackPos) { + 268 => function ($stackPos) { $this->semValue = null; }, - 270 => function ($stackPos) { + 269 => function ($stackPos) { $this->semValue = array(); }, - 271 => function ($stackPos) { + 270 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(4-2)]; }, - 272 => function ($stackPos) { + 271 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, + 272 => function ($stackPos) { + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + }, 273 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; - }, - 274 => function ($stackPos) { $this->semValue = new Node\Arg($this->semStack[$stackPos-(1-1)], false, false, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 275 => function ($stackPos) { + 274 => function ($stackPos) { $this->semValue = new Node\Arg($this->semStack[$stackPos-(2-2)], true, false, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 276 => function ($stackPos) { + 275 => function ($stackPos) { $this->semValue = new Node\Arg($this->semStack[$stackPos-(2-2)], false, true, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 277 => function ($stackPos) { + 276 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, + 277 => function ($stackPos) { + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + }, 278 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 279 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); - }, - 280 => function ($stackPos) { $this->semValue = new Expr\Variable($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 281 => function ($stackPos) { + 280 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 282 => function ($stackPos) { + 281 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 283 => function ($stackPos) { + 282 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 284 => function ($stackPos) { + 283 => function ($stackPos) { $this->semValue = new Stmt\StaticVar($this->semStack[$stackPos-(1-1)], null, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 285 => function ($stackPos) { + 284 => function ($stackPos) { $this->semValue = new Stmt\StaticVar($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 286 => function ($stackPos) { + 285 => function ($stackPos) { if ($this->semStack[$stackPos-(2-2)] !== null) { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; } }, - 287 => function ($stackPos) { + 286 => function ($stackPos) { $this->semValue = array(); }, - 288 => function ($stackPos) { + 287 => function ($stackPos) { $startAttributes = $this->lookaheadStartAttributes; if (isset($startAttributes['comments'])) { $nop = new Stmt\Nop($this->createCommentNopAttributes($startAttributes['comments'])); } else { $nop = null; }; if ($nop !== null) { $this->semStack[$stackPos-(1-1)][] = $nop; } $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 289 => function ($stackPos) { + 288 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes; $this->semValue = new Stmt\Property($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $attrs, $this->semStack[$stackPos-(4-2)]); $this->checkProperty($this->semValue, $stackPos-(4-1)); }, - 290 => function ($stackPos) { + 289 => function ($stackPos) { $this->semValue = new Stmt\ClassConst($this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-1)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); $this->checkClassConst($this->semValue, $stackPos-(4-1)); }, - 291 => function ($stackPos) { + 290 => function ($stackPos) { $this->semValue = new Stmt\ClassMethod($this->semStack[$stackPos-(9-4)], ['type' => $this->semStack[$stackPos-(9-1)], 'byRef' => $this->semStack[$stackPos-(9-3)], 'params' => $this->semStack[$stackPos-(9-6)], 'returnType' => $this->semStack[$stackPos-(9-8)], 'stmts' => $this->semStack[$stackPos-(9-9)]], $this->startAttributeStack[$stackPos-(9-1)] + $this->endAttributes); $this->checkClassMethod($this->semValue, $stackPos-(9-1)); }, - 292 => function ($stackPos) { + 291 => function ($stackPos) { $this->semValue = new Stmt\TraitUse($this->semStack[$stackPos-(3-2)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 293 => function ($stackPos) { + 292 => function ($stackPos) { $this->semValue = null; /* will be skipped */ }, - 294 => function ($stackPos) { + 293 => function ($stackPos) { $this->semValue = array(); }, - 295 => function ($stackPos) { + 294 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(3-2)]; }, - 296 => function ($stackPos) { + 295 => function ($stackPos) { $this->semValue = array(); }, - 297 => function ($stackPos) { + 296 => function ($stackPos) { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 298 => function ($stackPos) { + 297 => function ($stackPos) { $this->semValue = new Stmt\TraitUseAdaptation\Precedence($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 299 => function ($stackPos) { + 298 => function ($stackPos) { $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(5-1)][0], $this->semStack[$stackPos-(5-1)][1], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-4)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 300 => function ($stackPos) { + 299 => function ($stackPos) { $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], $this->semStack[$stackPos-(4-3)], null, $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, + 300 => function ($stackPos) { + $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], null, $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + }, 301 => function ($stackPos) { $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], null, $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 302 => function ($stackPos) { - $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], null, $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); - }, - 303 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)]); }, - 304 => function ($stackPos) { + 303 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 305 => function ($stackPos) { + 304 => function ($stackPos) { $this->semValue = array(null, $this->semStack[$stackPos-(1-1)]); }, - 306 => function ($stackPos) { + 305 => function ($stackPos) { $this->semValue = null; }, + 306 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, 307 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 308 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = 0; }, 309 => function ($stackPos) { $this->semValue = 0; }, 310 => function ($stackPos) { - $this->semValue = 0; + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 311 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 312 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; - }, - 313 => function ($stackPos) { $this->checkModifier($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $this->semValue = $this->semStack[$stackPos-(2-1)] | $this->semStack[$stackPos-(2-2)]; }, - 314 => function ($stackPos) { + 313 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_PUBLIC; }, - 315 => function ($stackPos) { + 314 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_PROTECTED; }, - 316 => function ($stackPos) { + 315 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_PRIVATE; }, - 317 => function ($stackPos) { + 316 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_STATIC; }, - 318 => function ($stackPos) { + 317 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_ABSTRACT; }, - 319 => function ($stackPos) { + 318 => function ($stackPos) { $this->semValue = Stmt\Class_::MODIFIER_FINAL; }, - 320 => function ($stackPos) { + 319 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 321 => function ($stackPos) { + 320 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 322 => function ($stackPos) { + 321 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 323 => function ($stackPos) { + 322 => function ($stackPos) { $this->semValue = new Node\VarLikeIdentifier(substr($this->semStack[$stackPos-(1-1)], 1), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 324 => function ($stackPos) { + 323 => function ($stackPos) { $this->semValue = new Stmt\PropertyProperty($this->semStack[$stackPos-(1-1)], null, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 325 => function ($stackPos) { + 324 => function ($stackPos) { $this->semValue = new Stmt\PropertyProperty($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, + 325 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(2-1)]; + }, 326 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, 327 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(2-1)]; - }, - 328 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 329 => function ($stackPos) { + 328 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 330 => function ($stackPos) { + 329 => function ($stackPos) { $this->semValue = array(); }, + 330 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, 331 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 332 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 333 => function ($stackPos) { $this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); @@ -1900,312 +1905,312 @@ class Php7 extends \PhpParser\ParserAbstract $this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 335 => function ($stackPos) { - $this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignRef($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 336 => function ($stackPos) { - $this->semValue = new Expr\AssignRef($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 337 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 338 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; - }, - 339 => function ($stackPos) { $this->semValue = new Expr\Clone_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 340 => function ($stackPos) { + 339 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 341 => function ($stackPos) { + 340 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 342 => function ($stackPos) { + 341 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 343 => function ($stackPos) { + 342 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 344 => function ($stackPos) { + 343 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 345 => function ($stackPos) { + 344 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 346 => function ($stackPos) { + 345 => function ($stackPos) { $this->semValue = new Expr\AssignOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 347 => function ($stackPos) { + 346 => function ($stackPos) { $this->semValue = new Expr\AssignOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 348 => function ($stackPos) { + 347 => function ($stackPos) { $this->semValue = new Expr\AssignOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 349 => function ($stackPos) { + 348 => function ($stackPos) { $this->semValue = new Expr\AssignOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 350 => function ($stackPos) { + 349 => function ($stackPos) { $this->semValue = new Expr\AssignOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 351 => function ($stackPos) { + 350 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 352 => function ($stackPos) { + 351 => function ($stackPos) { $this->semValue = new Expr\AssignOp\Coalesce($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 353 => function ($stackPos) { + 352 => function ($stackPos) { $this->semValue = new Expr\PostInc($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 354 => function ($stackPos) { + 353 => function ($stackPos) { $this->semValue = new Expr\PreInc($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 355 => function ($stackPos) { + 354 => function ($stackPos) { $this->semValue = new Expr\PostDec($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 356 => function ($stackPos) { + 355 => function ($stackPos) { $this->semValue = new Expr\PreDec($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 357 => function ($stackPos) { + 356 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 358 => function ($stackPos) { + 357 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 359 => function ($stackPos) { + 358 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 360 => function ($stackPos) { + 359 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 361 => function ($stackPos) { + 360 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 362 => function ($stackPos) { + 361 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 363 => function ($stackPos) { + 362 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 364 => function ($stackPos) { + 363 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 365 => function ($stackPos) { + 364 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 366 => function ($stackPos) { + 365 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 367 => function ($stackPos) { + 366 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 368 => function ($stackPos) { + 367 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 369 => function ($stackPos) { + 368 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 370 => function ($stackPos) { + 369 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 371 => function ($stackPos) { + 370 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 372 => function ($stackPos) { + 371 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 373 => function ($stackPos) { + 372 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 374 => function ($stackPos) { + 373 => function ($stackPos) { $this->semValue = new Expr\UnaryPlus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 375 => function ($stackPos) { + 374 => function ($stackPos) { $this->semValue = new Expr\UnaryMinus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 376 => function ($stackPos) { + 375 => function ($stackPos) { $this->semValue = new Expr\BooleanNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 377 => function ($stackPos) { + 376 => function ($stackPos) { $this->semValue = new Expr\BitwiseNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 378 => function ($stackPos) { + 377 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 379 => function ($stackPos) { + 378 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 380 => function ($stackPos) { + 379 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 381 => function ($stackPos) { + 380 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 382 => function ($stackPos) { + 381 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Spaceship($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 383 => function ($stackPos) { + 382 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 384 => function ($stackPos) { + 383 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 385 => function ($stackPos) { + 384 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 386 => function ($stackPos) { + 385 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 387 => function ($stackPos) { + 386 => function ($stackPos) { $this->semValue = new Expr\Instanceof_($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 388 => function ($stackPos) { + 387 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(3-2)]; }, - 389 => function ($stackPos) { + 388 => function ($stackPos) { $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(5-1)], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, - 390 => function ($stackPos) { + 389 => function ($stackPos) { $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(4-1)], null, $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 391 => function ($stackPos) { + 390 => function ($stackPos) { $this->semValue = new Expr\BinaryOp\Coalesce($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 392 => function ($stackPos) { + 391 => function ($stackPos) { $this->semValue = new Expr\Isset_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 393 => function ($stackPos) { + 392 => function ($stackPos) { $this->semValue = new Expr\Empty_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 394 => function ($stackPos) { + 393 => function ($stackPos) { $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 395 => function ($stackPos) { + 394 => function ($stackPos) { $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 396 => function ($stackPos) { + 395 => function ($stackPos) { $this->semValue = new Expr\Eval_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 397 => function ($stackPos) { + 396 => function ($stackPos) { $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 398 => function ($stackPos) { + 397 => function ($stackPos) { $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 399 => function ($stackPos) { + 398 => function ($stackPos) { $this->semValue = new Expr\Cast\Int_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 400 => function ($stackPos) { + 399 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes; $attrs['kind'] = $this->getFloatCastKind($this->semStack[$stackPos-(2-1)]); $this->semValue = new Expr\Cast\Double($this->semStack[$stackPos-(2-2)], $attrs); }, - 401 => function ($stackPos) { + 400 => function ($stackPos) { $this->semValue = new Expr\Cast\String_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 402 => function ($stackPos) { + 401 => function ($stackPos) { $this->semValue = new Expr\Cast\Array_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 403 => function ($stackPos) { + 402 => function ($stackPos) { $this->semValue = new Expr\Cast\Object_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 404 => function ($stackPos) { + 403 => function ($stackPos) { $this->semValue = new Expr\Cast\Bool_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 405 => function ($stackPos) { + 404 => function ($stackPos) { $this->semValue = new Expr\Cast\Unset_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 406 => function ($stackPos) { + 405 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes; $attrs['kind'] = strtolower($this->semStack[$stackPos-(2-1)]) === 'exit' ? Expr\Exit_::KIND_EXIT : Expr\Exit_::KIND_DIE; $this->semValue = new Expr\Exit_($this->semStack[$stackPos-(2-2)], $attrs); }, - 407 => function ($stackPos) { + 406 => function ($stackPos) { $this->semValue = new Expr\ErrorSuppress($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 408 => function ($stackPos) { + 407 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 409 => function ($stackPos) { + 408 => function ($stackPos) { $this->semValue = new Expr\ShellExec($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 410 => function ($stackPos) { + 409 => function ($stackPos) { $this->semValue = new Expr\Print_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 411 => function ($stackPos) { + 410 => function ($stackPos) { $this->semValue = new Expr\Yield_(null, null, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 412 => function ($stackPos) { + 411 => function ($stackPos) { $this->semValue = new Expr\Yield_($this->semStack[$stackPos-(2-2)], null, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 413 => function ($stackPos) { + 412 => function ($stackPos) { $this->semValue = new Expr\Yield_($this->semStack[$stackPos-(4-4)], $this->semStack[$stackPos-(4-2)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 414 => function ($stackPos) { + 413 => function ($stackPos) { $this->semValue = new Expr\YieldFrom($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 415 => function ($stackPos) { + 414 => function ($stackPos) { $this->semValue = new Expr\ArrowFunction(['static' => false, 'byRef' => $this->semStack[$stackPos-(8-2)], 'params' => $this->semStack[$stackPos-(8-4)], 'returnType' => $this->semStack[$stackPos-(8-6)], 'expr' => $this->semStack[$stackPos-(8-8)]], $this->startAttributeStack[$stackPos-(8-1)] + $this->endAttributes); }, - 416 => function ($stackPos) { + 415 => function ($stackPos) { $this->semValue = new Expr\ArrowFunction(['static' => true, 'byRef' => $this->semStack[$stackPos-(9-3)], 'params' => $this->semStack[$stackPos-(9-5)], 'returnType' => $this->semStack[$stackPos-(9-7)], 'expr' => $this->semStack[$stackPos-(9-9)]], $this->startAttributeStack[$stackPos-(9-1)] + $this->endAttributes); }, - 417 => function ($stackPos) { + 416 => function ($stackPos) { $this->semValue = new Expr\Closure(['static' => false, 'byRef' => $this->semStack[$stackPos-(8-2)], 'params' => $this->semStack[$stackPos-(8-4)], 'uses' => $this->semStack[$stackPos-(8-6)], 'returnType' => $this->semStack[$stackPos-(8-7)], 'stmts' => $this->semStack[$stackPos-(8-8)]], $this->startAttributeStack[$stackPos-(8-1)] + $this->endAttributes); }, - 418 => function ($stackPos) { + 417 => function ($stackPos) { $this->semValue = new Expr\Closure(['static' => true, 'byRef' => $this->semStack[$stackPos-(9-3)], 'params' => $this->semStack[$stackPos-(9-5)], 'uses' => $this->semStack[$stackPos-(9-7)], 'returnType' => $this->semStack[$stackPos-(9-8)], 'stmts' => $this->semStack[$stackPos-(9-9)]], $this->startAttributeStack[$stackPos-(9-1)] + $this->endAttributes); }, - 419 => function ($stackPos) { + 418 => function ($stackPos) { $this->semValue = array(new Stmt\Class_(null, ['type' => 0, 'extends' => $this->semStack[$stackPos-(7-3)], 'implements' => $this->semStack[$stackPos-(7-4)], 'stmts' => $this->semStack[$stackPos-(7-6)]], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes), $this->semStack[$stackPos-(7-2)]); $this->checkClass($this->semValue[0], -1); }, - 420 => function ($stackPos) { + 419 => function ($stackPos) { $this->semValue = new Expr\New_($this->semStack[$stackPos-(3-2)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 421 => function ($stackPos) { + 420 => function ($stackPos) { list($class, $ctorArgs) = $this->semStack[$stackPos-(2-2)]; $this->semValue = new Expr\New_($class, $ctorArgs, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 422 => function ($stackPos) { + 421 => function ($stackPos) { $this->semValue = array(); }, - 423 => function ($stackPos) { + 422 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(4-3)]; }, - 424 => function ($stackPos) { + 423 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 425 => function ($stackPos) { + 424 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 426 => function ($stackPos) { + 425 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 427 => function ($stackPos) { + 426 => function ($stackPos) { $this->semValue = new Expr\ClosureUse($this->semStack[$stackPos-(2-2)], $this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, + 427 => function ($stackPos) { + $this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, 428 => function ($stackPos) { $this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 429 => function ($stackPos) { - $this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 430 => function ($stackPos) { $this->semValue = new Expr\StaticCall($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 431 => function ($stackPos) { + 430 => function ($stackPos) { $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 432 => function ($stackPos) { + 431 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, + 432 => function ($stackPos) { + $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + }, 433 => function ($stackPos) { $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 434 => function ($stackPos) { - $this->semValue = new Name\FullyQualified($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Name\FullyQualified(substr($this->semStack[$stackPos-(1-1)], 1), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 435 => function ($stackPos) { - $this->semValue = new Name\Relative($this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Name\Relative(substr($this->semStack[$stackPos-(1-1)], 10), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 436 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; diff --git a/lib/PhpParser/Parser/Tokens.php b/lib/PhpParser/Parser/Tokens.php index 8c62ee9..f1aa9d2 100644 --- a/lib/PhpParser/Parser/Tokens.php +++ b/lib/PhpParser/Parser/Tokens.php @@ -144,4 +144,7 @@ final class Tokens const T_DIR = 392; const T_NS_SEPARATOR = 393; const T_ELLIPSIS = 394; + const T_NAME_FULLY_QUALIFIED = 395; + const T_NAME_QUALIFIED = 396; + const T_NAME_RELATIVE = 397; } diff --git a/test/code/parser/stmt/namespace/groupUseErrors.test b/test/code/parser/stmt/namespace/groupUseErrors.test index 1cccf86..2a89984 100644 --- a/test/code/parser/stmt/namespace/groupUseErrors.test +++ b/test/code/parser/stmt/namespace/groupUseErrors.test @@ -99,7 +99,7 @@ array( // Extra NS separator use Foo\{\Bar}; ----- -Syntax error, unexpected T_NS_SEPARATOR, expecting T_STRING or T_FUNCTION or T_CONST from 3:10 to 3:10 +Syntax error, unexpected T_NAME_FULLY_QUALIFIED, expecting T_STRING or T_FUNCTION or T_CONST or T_NAME_QUALIFIED from 3:10 to 3:13 array( 0: Stmt_Expression( expr: Expr_ConstFetch( diff --git a/test/code/parser/stmt/namespace/invalidName.test b/test/code/parser/stmt/namespace/invalidName.test index 2f466d3..47651a4 100644 --- a/test/code/parser/stmt/namespace/invalidName.test +++ b/test/code/parser/stmt/namespace/invalidName.test @@ -32,7 +32,7 @@ array( -----