comparison vendor/nikic/php-parser/lib/PhpParser/Parser/Php5.php @ 0:4c8ae668cc8c

Initial import (non-working)
author Chris Cannam
date Wed, 29 Nov 2017 16:09:58 +0000
parents
children 5fb285c0d0e3
comparison
equal deleted inserted replaced
-1:000000000000 0:4c8ae668cc8c
1 <?php
2
3 namespace PhpParser\Parser;
4
5 use PhpParser\Error;
6 use PhpParser\Node;
7 use PhpParser\Node\Expr;
8 use PhpParser\Node\Name;
9 use PhpParser\Node\Scalar;
10 use PhpParser\Node\Stmt;
11
12 /* This is an automatically GENERATED file, which should not be manually edited.
13 * Instead edit one of the following:
14 * * the grammar files grammar/php5.y or grammar/php7.y
15 * * the skeleton file grammar/parser.template
16 * * the preprocessing script grammar/rebuildParsers.php
17 */
18 class Php5 extends \PhpParser\ParserAbstract
19 {
20 protected $tokenToSymbolMapSize = 392;
21 protected $actionTableSize = 1020;
22 protected $gotoTableSize = 591;
23
24 protected $invalidSymbol = 157;
25 protected $errorSymbol = 1;
26 protected $defaultAction = -32766;
27 protected $unexpectedTokenRule = 32767;
28
29 protected $YY2TBLSTATE = 405;
30 protected $YYNLSTATES = 667;
31
32 protected $symbolToName = array(
33 "EOF",
34 "error",
35 "T_INCLUDE",
36 "T_INCLUDE_ONCE",
37 "T_EVAL",
38 "T_REQUIRE",
39 "T_REQUIRE_ONCE",
40 "','",
41 "T_LOGICAL_OR",
42 "T_LOGICAL_XOR",
43 "T_LOGICAL_AND",
44 "T_PRINT",
45 "T_YIELD",
46 "T_DOUBLE_ARROW",
47 "T_YIELD_FROM",
48 "'='",
49 "T_PLUS_EQUAL",
50 "T_MINUS_EQUAL",
51 "T_MUL_EQUAL",
52 "T_DIV_EQUAL",
53 "T_CONCAT_EQUAL",
54 "T_MOD_EQUAL",
55 "T_AND_EQUAL",
56 "T_OR_EQUAL",
57 "T_XOR_EQUAL",
58 "T_SL_EQUAL",
59 "T_SR_EQUAL",
60 "T_POW_EQUAL",
61 "'?'",
62 "':'",
63 "T_COALESCE",
64 "T_BOOLEAN_OR",
65 "T_BOOLEAN_AND",
66 "'|'",
67 "'^'",
68 "'&'",
69 "T_IS_EQUAL",
70 "T_IS_NOT_EQUAL",
71 "T_IS_IDENTICAL",
72 "T_IS_NOT_IDENTICAL",
73 "T_SPACESHIP",
74 "'<'",
75 "T_IS_SMALLER_OR_EQUAL",
76 "'>'",
77 "T_IS_GREATER_OR_EQUAL",
78 "T_SL",
79 "T_SR",
80 "'+'",
81 "'-'",
82 "'.'",
83 "'*'",
84 "'/'",
85 "'%'",
86 "'!'",
87 "T_INSTANCEOF",
88 "'~'",
89 "T_INC",
90 "T_DEC",
91 "T_INT_CAST",
92 "T_DOUBLE_CAST",
93 "T_STRING_CAST",
94 "T_ARRAY_CAST",
95 "T_OBJECT_CAST",
96 "T_BOOL_CAST",
97 "T_UNSET_CAST",
98 "'@'",
99 "T_POW",
100 "'['",
101 "T_NEW",
102 "T_CLONE",
103 "T_EXIT",
104 "T_IF",
105 "T_ELSEIF",
106 "T_ELSE",
107 "T_ENDIF",
108 "T_LNUMBER",
109 "T_DNUMBER",
110 "T_STRING",
111 "T_STRING_VARNAME",
112 "T_VARIABLE",
113 "T_NUM_STRING",
114 "T_INLINE_HTML",
115 "T_ENCAPSED_AND_WHITESPACE",
116 "T_CONSTANT_ENCAPSED_STRING",
117 "T_ECHO",
118 "T_DO",
119 "T_WHILE",
120 "T_ENDWHILE",
121 "T_FOR",
122 "T_ENDFOR",
123 "T_FOREACH",
124 "T_ENDFOREACH",
125 "T_DECLARE",
126 "T_ENDDECLARE",
127 "T_AS",
128 "T_SWITCH",
129 "T_ENDSWITCH",
130 "T_CASE",
131 "T_DEFAULT",
132 "T_BREAK",
133 "T_CONTINUE",
134 "T_GOTO",
135 "T_FUNCTION",
136 "T_CONST",
137 "T_RETURN",
138 "T_TRY",
139 "T_CATCH",
140 "T_FINALLY",
141 "T_THROW",
142 "T_USE",
143 "T_INSTEADOF",
144 "T_GLOBAL",
145 "T_STATIC",
146 "T_ABSTRACT",
147 "T_FINAL",
148 "T_PRIVATE",
149 "T_PROTECTED",
150 "T_PUBLIC",
151 "T_VAR",
152 "T_UNSET",
153 "T_ISSET",
154 "T_EMPTY",
155 "T_HALT_COMPILER",
156 "T_CLASS",
157 "T_TRAIT",
158 "T_INTERFACE",
159 "T_EXTENDS",
160 "T_IMPLEMENTS",
161 "T_OBJECT_OPERATOR",
162 "T_LIST",
163 "T_ARRAY",
164 "T_CALLABLE",
165 "T_CLASS_C",
166 "T_TRAIT_C",
167 "T_METHOD_C",
168 "T_FUNC_C",
169 "T_LINE",
170 "T_FILE",
171 "T_START_HEREDOC",
172 "T_END_HEREDOC",
173 "T_DOLLAR_OPEN_CURLY_BRACES",
174 "T_CURLY_OPEN",
175 "T_PAAMAYIM_NEKUDOTAYIM",
176 "T_NAMESPACE",
177 "T_NS_C",
178 "T_DIR",
179 "T_NS_SEPARATOR",
180 "T_ELLIPSIS",
181 "';'",
182 "'{'",
183 "'}'",
184 "'('",
185 "')'",
186 "'$'",
187 "'`'",
188 "']'",
189 "'\"'"
190 );
191
192 protected $tokenToSymbol = array(
193 0, 157, 157, 157, 157, 157, 157, 157, 157, 157,
194 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
195 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
196 157, 157, 157, 53, 156, 157, 153, 52, 35, 157,
197 151, 152, 50, 47, 7, 48, 49, 51, 157, 157,
198 157, 157, 157, 157, 157, 157, 157, 157, 29, 148,
199 41, 15, 43, 28, 65, 157, 157, 157, 157, 157,
200 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
201 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
202 157, 67, 157, 155, 34, 157, 154, 157, 157, 157,
203 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
204 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
205 157, 157, 157, 149, 33, 150, 55, 157, 157, 157,
206 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
207 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
208 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
209 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
210 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
211 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
212 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
213 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
214 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
215 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
216 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
217 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
218 157, 157, 157, 157, 157, 157, 1, 2, 3, 4,
219 5, 6, 8, 9, 10, 11, 12, 13, 14, 16,
220 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
221 27, 30, 31, 32, 36, 37, 38, 39, 40, 42,
222 44, 45, 46, 54, 56, 57, 58, 59, 60, 61,
223 62, 63, 64, 66, 68, 69, 70, 71, 72, 73,
224 74, 75, 76, 77, 78, 79, 80, 81, 157, 157,
225 82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
226 92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
227 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
228 112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
229 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
230 132, 133, 134, 135, 136, 137, 157, 157, 157, 157,
231 157, 157, 138, 139, 140, 141, 142, 143, 144, 145,
232 146, 147
233 );
234
235 protected $action = array(
236 672, 673, 674, 675, 676,-32766, 677, 678, 679, 715,
237 716, 216, 217, 218, 219, 220, 221, 222, 223, 224,
238 0, 225, 226, 227, 228, 229, 230, 231, 232, 233,
239 234, 235, 236,-32766,-32766,-32766,-32766,-32766,-32766,-32766,
240 -32766,-32767,-32767,-32767,-32767, 441, 237, 238,-32766,-32766,
241 -32766,-32766, 680,-32766, 1036,-32766,-32766,-32766,-32766,-32766,
242 -32766,-32767,-32767,-32767,-32767,-32767, 681, 682, 683, 684,
243 685, 686, 687, 909, 329, 747,-32766,-32766,-32766,-32766,
244 -32766, 282, 688, 689, 690, 691, 692, 693, 694, 695,
245 696, 697, 698, 718, 719, 720, 721, 722, 710, 711,
246 712, 713, 714, 699, 700, 701, 702, 703, 704, 705,
247 741, 742, 743, 744, 745, 746, 706, 707, 708, 709,
248 739, 730, 728, 729, 725, 726, 1178, 717, 723, 724,
249 731, 732, 734, 733, 735, 736, 52, 53, 420, 54,
250 55, 727, 738, 737, 23, 56, 57, 284, 58,-32766,
251 -32766,-32766,-32766,-32766,-32766,-32766,-32766,-32766, 7,-32767,
252 -32767,-32767,-32767, 50, 325,-32766, 585, 945, 946, 947,
253 944, 943, 942, 937, 1213, 27, 1215, 1214, 763, 764,
254 821, 59, 60,-32766,-32766,-32766, 809, 61, 1172, 62,
255 291, 292, 63, 64, 65, 66, 67, 68, 69, 70,
256 334, 24, 299, 71, 413,-32766,-32766,-32766, 1185, 1087,
257 1088, 749, 633, 1178, 213, 214, 215, 464,-32766,-32766,
258 -32766, 822, 407, 1099, 311,-32766, 1186,-32766,-32766,-32766,
259 -32766,-32766,-32766, 1036, 200, -269, 428,-32766,-32766,-32766,
260 -32766,-32766,-32766,-32766,-32766, 120, 491, 945, 946, 947,
261 944, 943, 942, 306, 473, 474, 293, 623, 125,-32766,
262 893, 894, 339, 477, 478,-32766, 1093, 1094, 1095, 1096,
263 1090, 1091, 307, 492,-32766, 440, 425, 492, 1097, 1092,
264 425, 121, -220, 869, 1182, 39, 280, 334, 321, 900,
265 322, 421, -122, -122, -122, -4, 822, 463, 99, 100,
266 101, 811, 301, 119, 38, 19, 422, -122, 465, -122,
267 466, -122, 467, -122, 102, 423, -122, -122, -122, 28,
268 29, 468, 424, 624, 30, 469, 425, 812, 72, 297,
269 923, 349, 350, 470, 471,-32766,-32766,-32766, 419, 472,
270 1036, 447, 793, 840, 475, 476,-32767,-32767,-32767,-32767,
271 94, 95, 96, 97, 98,-32766, 126,-32766,-32766,-32766,
272 -32766, 1137, 213, 214, 215, 295, 421, 239, 824, 638,
273 -122, 1036, 463, 893, 894, 1205, 811, 1036, 1204, 38,
274 19, 422, 200, 465, 356, 466, 492, 467, 127, 425,
275 423, 213, 214, 215, 28, 29, 468, 424, 414, 30,
276 469, 1036, 870, 72, 320, 822, 349, 350, 470, 471,
277 34, 200, 214, 215, 472, 460, 762, 755, 840, 475,
278 476, 213, 214, 215, 295, -216, 76, 77, 78, 46,
279 298, 200, 412, 653, 338, 438, 31, 294, 333, 8,
280 348, 200, 241, 824, 638, -4, 32, 332, 79, 80,
281 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
282 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
283 101, 1210, 301, 204, 822, 421, 805, 124,-32766,-32766,
284 -32766, 463, 899, 1054, 102, 811, 18, 206, 38, 19,
285 422, 518, 465, 1172, 466, 546, 467, 47,-32766, 423,
286 -32766,-32766, 647, 28, 29, 468, 822, 801, 30, 469,
287 415, 116, 72, 803, 49, 349, 350,-32766,-32766,-32766,
288 -32766,-32766,-32766, 472, 477, 808, 234, 235, 236, 213,
289 214, 215, 1036, 215, 644, 1138, 124,-32766,-32766,-32766,
290 -32766,-32766, 237, 238, 421, 231, 232, 233, 1099, 200,
291 463, 200, 824, 638, 811, 439, 918, 38, 19, 422,
292 1036, 465, 242, 466, 749, 467, 1178, 339, 423, 96,
293 97, 98, 28, 29, 468, 822, 421, 30, 469, 117,
294 919, 72, 463, 283, 349, 350, 811, 244, 1036, 38,
295 19, 422, 472, 465, 243, 466, 118, 467, 377, 1064,
296 423, 1036, 207, 642, 28, 29, 468, 822, 129, 30,
297 469, 296, 576, 72,-32766,-32766, 349, 350, 123, 205,
298 492, 824, 638, 425, 472, 115,-32766,-32766,-32766, 434,
299 492, 200, 640, 425, 820, 641,-32766,-32766, 429,-32766,
300 334, 237, 238, 454, 591, 421,-32766, 130, 357, 449,
301 20, 463, 128, 856, 638, 811, 763, 764, 38, 19,
302 422, 313, 465, 646, 466, 650, 467, 599, 600, 423,
303 833, 301, 605, 28, 29, 468, 822, 421, 30, 469,
304 756, 643, 72, 463, 299, 349, 350, 811, 922, 666,
305 38, 19, 422, 472, 465, 102, 466, 51, 467, 934,
306 656, 423, 512, 433, 48, 28, 29, 468, 41, 42,
307 30, 469, 43, 44, 72, 45, 435, 349, 350, 1057,
308 750, 1208, 824, 638, 776, 472, 749, 33, 103, 104,
309 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
310 534, 533, 517, 513, 524, 437, 421, 602, 516, 622,
311 612, 619, 463, 582, 824, 638, 811, 595,-32766, 38,
312 19, 422, 632, 465, 579, 466, 240, 467, 975, 977,
313 423, 609, 1144, 279, 28, 29, 468, 12, -80, 30,
314 469, 537, 432, 72, 208, 209, 349, 350, 458, 1098,
315 210, 596, 211, 328, 472, 326, 11, 842, 323, 393,
316 4, 385, 408, 303, 202, 1034, 0, 0, 324, 208,
317 209, 841, 1087, 1088, 0, 210,-32766, 211, -497, -498,
318 1089, 312, 310, 824, 638, 477, 0, 0, 0, 202,
319 0, -398, 0, 0, 9, 0, 0, 1087, 1088, 3,
320 -497,-32766, -406, 370, -407, 1089, 835, 639, 0, 384,
321 372, 409, 526, 434, 0, 0, 864, 857, 863, 872,
322 0, 813, 798, 819, 807, 761, 661, 565, 760, 1093,
323 1094, 1095, 1096, 1090, 1091, 383, 37, 36, 759, 926,
324 810, 1097, 1092, 854, 852, 302, 806, 929, 212, 818,
325 -32766, 930, 565, 928, 1093, 1094, 1095, 1096, 1090, 1091,
326 383, 927, 796, 804, 660, 802, 1097, 1092, 649, 651,
327 75, 0, 652, 212, 654,-32766, 655, 658, 663, 664,
328 665, 405, 122, 330, 331, 406, 0, 1211, 757, 758,
329 839, 838, 766, 453, 1209, 1179, 1177, 1163, 1175, 1078,
330 911, 1183, 1173, 829, 836, 1038, 1039, 827, 935, 1212,
331 765, 837, 794, 662, 1050, 768, 767, 861, 862, 0,
332 304, 290, 289, 25, 26, 281, 203, 74, 305, 336,
333 411, 417, 35, 73,-32766, 40, 22, 0, 1015, 569,
334 -217, 1016, 1103, 1080, 901, 1040, 1044, 1041, 629, 559,
335 461, 457, 455, 450, 378, 16, 15, 14, -216, 0,
336 0, -416, 0, 1045, 603, 1157, 1104, 1207, 1077, 1174,
337 1158, 1162, 1176, 1063, 1048, 1049, 1046, 1047, 0, 1143
338 );
339
340 protected $actionCheck = array(
341 2, 3, 4, 5, 6, 8, 8, 9, 10, 11,
342 12, 31, 32, 33, 34, 35, 36, 37, 38, 39,
343 0, 41, 42, 43, 44, 45, 46, 47, 48, 49,
344 50, 51, 52, 8, 9, 10, 31, 32, 33, 34,
345 35, 36, 37, 38, 39, 7, 66, 67, 31, 32,
346 33, 34, 54, 28, 12, 30, 31, 32, 33, 34,
347 35, 36, 37, 38, 39, 40, 68, 69, 70, 71,
348 72, 73, 74, 79, 7, 77, 31, 32, 33, 34,
349 35, 7, 84, 85, 86, 87, 88, 89, 90, 91,
350 92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
351 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
352 112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
353 122, 123, 124, 125, 126, 127, 79, 129, 130, 131,
354 132, 133, 134, 135, 136, 137, 2, 3, 4, 5,
355 6, 143, 144, 145, 7, 11, 12, 153, 14, 31,
356 32, 33, 34, 35, 36, 37, 38, 39, 103, 41,
357 42, 43, 44, 67, 109, 79, 82, 112, 113, 114,
358 115, 116, 117, 118, 77, 7, 79, 80, 102, 103,
359 1, 47, 48, 8, 9, 10, 148, 53, 79, 55,
360 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
361 153, 67, 68, 69, 70, 8, 9, 10, 1, 75,
362 76, 77, 77, 79, 8, 9, 10, 83, 8, 9,
363 10, 1, 146, 139, 128, 28, 152, 30, 31, 32,
364 33, 34, 35, 12, 28, 79, 102, 151, 28, 153,
365 30, 31, 32, 33, 34, 149, 112, 112, 113, 114,
366 115, 116, 117, 7, 120, 121, 35, 77, 149, 103,
367 130, 131, 153, 129, 130, 109, 132, 133, 134, 135,
368 136, 137, 138, 143, 118, 7, 146, 143, 144, 145,
369 146, 7, 152, 29, 77, 151, 13, 153, 154, 152,
370 156, 71, 72, 73, 74, 0, 1, 77, 50, 51,
371 52, 81, 54, 13, 84, 85, 86, 87, 88, 89,
372 90, 91, 92, 93, 66, 95, 96, 97, 98, 99,
373 100, 101, 102, 143, 104, 105, 146, 148, 108, 7,
374 150, 111, 112, 113, 114, 8, 9, 10, 7, 119,
375 12, 7, 122, 123, 124, 125, 41, 42, 43, 44,
376 45, 46, 47, 48, 49, 28, 149, 30, 31, 32,
377 33, 155, 8, 9, 10, 35, 71, 13, 148, 149,
378 150, 12, 77, 130, 131, 79, 81, 12, 82, 84,
379 85, 86, 28, 88, 7, 90, 143, 92, 67, 146,
380 95, 8, 9, 10, 99, 100, 101, 102, 103, 104,
381 105, 12, 148, 108, 109, 1, 111, 112, 113, 114,
382 13, 28, 9, 10, 119, 7, 148, 122, 123, 124,
383 125, 8, 9, 10, 35, 152, 8, 9, 10, 67,
384 35, 28, 7, 29, 67, 29, 140, 141, 143, 7,
385 7, 28, 29, 148, 149, 150, 28, 7, 30, 31,
386 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
387 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
388 52, 150, 54, 7, 1, 71, 148, 147, 8, 9,
389 10, 77, 152, 152, 66, 81, 152, 15, 84, 85,
390 86, 82, 88, 79, 90, 128, 92, 67, 28, 95,
391 30, 31, 29, 99, 100, 101, 1, 148, 104, 105,
392 123, 149, 108, 148, 67, 111, 112, 8, 9, 10,
393 31, 32, 33, 119, 129, 148, 50, 51, 52, 8,
394 9, 10, 12, 10, 29, 152, 147, 28, 151, 30,
395 31, 32, 66, 67, 71, 47, 48, 49, 139, 28,
396 77, 28, 148, 149, 81, 149, 148, 84, 85, 86,
397 12, 88, 15, 90, 77, 92, 79, 153, 95, 47,
398 48, 49, 99, 100, 101, 1, 71, 104, 105, 149,
399 148, 108, 77, 35, 111, 112, 81, 15, 12, 84,
400 85, 86, 119, 88, 15, 90, 149, 92, 78, 112,
401 95, 12, 15, 29, 99, 100, 101, 1, 149, 104,
402 105, 35, 153, 108, 31, 32, 111, 112, 29, 15,
403 143, 148, 149, 146, 119, 15, 8, 9, 10, 146,
404 143, 28, 149, 146, 29, 29, 8, 9, 151, 31,
405 153, 66, 67, 72, 73, 71, 28, 97, 98, 72,
406 73, 77, 29, 148, 149, 81, 102, 103, 84, 85,
407 86, 29, 88, 29, 90, 29, 92, 106, 107, 95,
408 35, 54, 74, 99, 100, 101, 1, 71, 104, 105,
409 148, 149, 108, 77, 68, 111, 112, 81, 148, 149,
410 84, 85, 86, 119, 88, 66, 90, 67, 92, 148,
411 149, 95, 77, 77, 67, 99, 100, 101, 67, 67,
412 104, 105, 67, 67, 108, 67, 77, 111, 112, 79,
413 77, 77, 148, 149, 77, 119, 77, 15, 16, 17,
414 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
415 77, 77, 77, 77, 82, 86, 71, 79, 79, 79,
416 79, 91, 77, 96, 148, 149, 81, 96, 82, 84,
417 85, 86, 89, 88, 87, 90, 29, 92, 56, 57,
418 95, 93, 139, 94, 99, 100, 101, 94, 94, 104,
419 105, 94, 102, 108, 47, 48, 111, 112, 102, 139,
420 53, 109, 55, 126, 119, 110, 142, 123, 126, 146,
421 142, 146, 146, 151, 67, 154, -1, -1, 127, 47,
422 48, 123, 75, 76, -1, 53, 79, 55, 128, 128,
423 83, 128, 128, 148, 149, 129, -1, -1, -1, 67,
424 -1, 142, -1, -1, 142, -1, -1, 75, 76, 142,
425 128, 79, 142, 142, 142, 83, 147, 149, -1, 146,
426 146, 146, 146, 146, -1, -1, 148, 148, 148, 148,
427 -1, 148, 148, 148, 148, 148, 148, 130, 148, 132,
428 133, 134, 135, 136, 137, 138, 148, 148, 148, 148,
429 148, 144, 145, 148, 148, 151, 148, 148, 151, 148,
430 153, 148, 130, 148, 132, 133, 134, 135, 136, 137,
431 138, 148, 148, 148, 148, 148, 144, 145, 149, 149,
432 149, -1, 149, 151, 149, 153, 149, 149, 149, 149,
433 149, 149, 149, 149, 149, 149, -1, 150, 150, 150,
434 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
435 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
436 150, 150, 150, 150, 150, 150, 150, 150, 150, -1,
437 151, 151, 151, 151, 151, 151, 151, 151, 151, 151,
438 151, 151, 151, 151, 151, 151, 151, -1, 152, 152,
439 152, 152, 152, 152, 152, 152, 152, 152, 152, 152,
440 152, 152, 152, 152, 152, 152, 152, 152, 152, -1,
441 -1, 154, -1, 155, 155, 155, 155, 155, 155, 155,
442 155, 155, 155, 155, 155, 155, 155, 155, -1, 156
443 );
444
445 protected $actionBase = array(
446 0, 220, 295, 109, 109, 180, 745, -2, -2, -2,
447 -2, -2, 135, 574, 473, 404, 473, 606, 505, 675,
448 675, 675, 330, 389, 221, 221, 831, 221, 359, 365,
449 328, 520, 589, 548, 576, 42, 42, 42, 42, 134,
450 134, 42, 42, 42, 42, 42, 42, 42, 42, 42,
451 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
452 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
453 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
454 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
455 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
456 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
457 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
458 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
459 42, 254, 179, 290, 397, 757, 755, 738, 741, 833,
460 679, 829, 784, 785, 623, 786, 787, 788, 789, 790,
461 783, 791, 849, 792, 418, 418, 418, 418, 418, 418,
462 418, 418, 418, 418, 418, -3, 354, 383, 413, 206,
463 628, 521, 521, 521, 521, 521, 521, 521, 175, 175,
464 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
465 175, 175, 175, 175, 175, 403, 618, 618, 618, 523,
466 737, 603, 762, 762, 762, 762, 762, 762, 762, 762,
467 762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
468 762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
469 762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
470 762, 762, 762, 762, 762, 470, -20, -20, 509, 608,
471 327, 583, 210, 489, 197, 25, 25, 25, 25, 25,
472 17, 45, 5, 5, 5, 5, 712, 305, 305, 305,
473 305, 118, 118, 118, 118, 780, 781, 801, 804, 395,
474 395, 696, 696, 616, 773, 522, 522, 498, 498, 487,
475 487, 487, 487, 487, 487, 487, 487, 487, 487, 387,
476 156, 823, 130, 130, 130, 130, 243, 409, 633, 863,
477 207, 207, 207, 243, 248, 248, 248, 476, 476, 476,
478 76, 662, 296, 86, 86, 86, 86, 296, 86, 86,
479 554, 554, 554, 483, 761, 676, 477, 430, 97, 459,
480 657, 807, 661, 808, 540, 702, 96, 656, 705, -6,
481 680, 577, 571, 561, 689, 406, -6, 254, 551, 447,
482 617, 732, 663, 268, 730, 377, 38, 367, 532, 362,
483 414, 334, 774, 720, 827, 826, 74, 321, 691, 617,
484 617, 617, 137, 84, 775, 772, 362, 273, 575, 575,
485 575, 575, 806, 776, 575, 575, 575, 575, 805, 800,
486 432, 408, 782, 331, 731, 649, 649, 649, 649, 649,
487 649, 635, 649, 813, 666, 825, 825, 664, 668, 635,
488 824, 824, 824, 824, 635, 649, 825, 825, 635, 616,
489 825, 168, 635, 672, 649, 667, 667, 824, 756, 718,
490 666, 669, 681, 825, 825, 825, 681, 664, 635, 824,
491 682, 699, 466, 825, 824, 632, 632, 682, 635, 632,
492 668, 632, 20, 605, 641, 821, 822, 820, 625, 698,
493 688, 674, 811, 810, 816, 665, 626, 814, 812, 706,
494 717, 716, 639, 610, 642, 645, 646, 648, 697, 637,
495 694, 680, 707, 629, 629, 629, 690, 658, 690, 629,
496 629, 629, 629, 629, 629, 629, 629, 848, 700, 701,
497 693, 659, 715, 604, 704, 687, 472, 768, 650, 706,
498 706, 802, 835, 842, 847, 651, 643, 734, 837, 690,
499 862, 729, 274, 587, 652, 803, 703, 647, 655, 690,
500 809, 690, 769, 690, 834, 799, 644, 706, 779, 629,
501 832, 861, 860, 859, 858, 857, 856, 855, 854, 630,
502 853, 714, 677, 841, 246, 815, 689, 692, 653, 713,
503 67, 852, 778, 690, 690, 770, 761, 690, 771, 711,
504 728, 845, 710, 840, 851, 650, 839, 690, 686, 850,
505 67, 634, 598, 828, 678, 708, 819, 671, 830, 818,
506 759, 547, 579, 777, 636, 754, 844, 843, 846, 709,
507 760, 763, 572, 660, 640, 670, 793, 765, 817, 735,
508 794, 795, 836, 684, 707, 654, 685, 683, 673, 767,
509 796, 838, 736, 739, 743, 797, 753, 798, 0, 0,
510 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
511 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
512 0, 0, 0, 0, 0, 0, 0, 0, 134, 134,
513 -2, -2, -2, -2, 0, 0, 0, 0, 0, -2,
514 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
515 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
516 134, 134, 134, 134, 134, 134, 0, 0, 134, 134,
517 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
518 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
519 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
520 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
521 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
522 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
523 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
524 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
525 134, 134, 134, 134, 134, 134, 134, 134, 418, 418,
526 418, 418, 418, 418, 418, 418, 418, 418, 418, 418,
527 418, 418, 418, 418, 418, 418, 418, 418, 418, 418,
528 418, 0, 0, 0, 0, 0, 0, 0, 0, 0,
529 0, 0, 418, -20, -20, -20, -20, 418, -20, -20,
530 -20, -20, -20, -20, -20, 418, 418, 418, 418, 418,
531 418, 418, 418, 418, 418, 418, 418, 418, 418, 418,
532 418, 418, -20, 418, 418, 418, -20, 487, -20, 487,
533 487, 487, 487, 487, 487, 487, 487, 487, 487, 487,
534 487, 487, 487, 487, 487, 487, 487, 487, 487, 487,
535 487, 487, 487, 487, 487, 487, 487, 487, 487, 487,
536 487, 487, 487, 487, 487, 487, 487, 487, 487, 487,
537 487, 487, 418, 0, 0, 418, -20, 418, -20, 418,
538 -20, 418, 418, 418, 418, 418, 418, -20, -20, -20,
539 -20, -20, -20, 0, 248, 248, 248, 248, -20, -20,
540 -20, -20, 55, 55, 55, 55, 487, 487, 487, 487,
541 487, 487, 248, 248, 476, 476, 0, 0, 0, 0,
542 0, 0, 0, 0, 0, 0, 487, 55, 487, 649,
543 649, 649, 649, 649, 296, 296, 296, 47, 47, 47,
544 649, 0, 0, 0, 0, 0, 0, 649, 296, 0,
545 487, 487, 487, 487, 0, 487, 487, 649, 649, 649,
546 649, 47, 296, 649, 825, 0, 47, 550, 550, 550,
547 550, 67, 362, 0, 649, 649, 0, 669, 0, 0,
548 0, 825, 0, 0, 0, 0, 0, 629, 274, 734,
549 0, 433, 0, 0, 0, 0, 0, 0, 0, 643,
550 433, 322, 322, 0, 0, 630, 629, 629, 629, 0,
551 0, 643, 643, 0, 0, 0, 0, 0, 0, 440,
552 643, 0, 0, 0, 0, 440, 425, 0, 0, 425,
553 0, 67
554 );
555
556 protected $actionDefault = array(
557 3,32767,32767,32767,32767,32767,32767,32767,32767,32767,
558 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
559 32767,32767,32767,32767, 525, 525,32767, 481,32767,32767,
560 32767,32767,32767,32767,32767, 287, 287, 287,32767,32767,
561 32767, 513, 513, 513, 513, 513, 513, 513, 513, 513,
562 513, 513,32767,32767,32767,32767,32767, 369,32767,32767,
563 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
564 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
565 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
566 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
567 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
568 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
569 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
570 32767,32767,32767, 375, 530,32767,32767,32767,32767,32767,
571 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
572 32767,32767,32767,32767, 350, 351, 353, 354, 286, 514,
573 237, 376, 529, 285, 239, 314, 485,32767,32767,32767,
574 316, 116, 248, 193, 484, 119, 284, 224, 368, 370,
575 315, 291, 296, 297, 298, 299, 300, 301, 302, 303,
576 304, 305, 306, 307, 290, 441, 347, 346, 345, 443,
577 32767, 442, 478, 478, 481,32767,32767,32767,32767,32767,
578 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
579 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
580 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
581 32767,32767,32767,32767,32767, 312, 469, 468, 313, 439,
582 317, 440, 319, 444, 318, 335, 336, 333, 334, 337,
583 446, 445, 462, 463, 460, 461, 289, 338, 339, 340,
584 341, 464, 465, 466, 467, 271, 271, 271, 271,32767,
585 32767, 524, 524,32767,32767, 326, 327, 453, 454,32767,
586 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
587 272,32767, 228, 228, 228, 228, 228,32767,32767,32767,
588 32767,32767,32767,32767, 321, 322, 320, 448, 449, 447,
589 32767, 415,32767,32767,32767,32767,32767, 417,32767,32767,
590 32767,32767,32767,32767,32767,32767,32767, 486,32767,32767,
591 32767,32767,32767,32767,32767, 499, 404,32767,32767,32767,
592 397, 212, 214, 161, 472,32767,32767,32767,32767, 504,
593 331,32767,32767,32767,32767,32767,32767, 539,32767, 499,
594 32767,32767,32767,32767,32767,32767,32767,32767, 344, 323,
595 324, 325,32767,32767,32767,32767, 503, 497, 456, 457,
596 458, 459,32767,32767, 450, 451, 452, 455,32767,32767,
597 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
598 32767, 165,32767, 412,32767, 418, 418,32767,32767, 165,
599 32767,32767,32767,32767, 165,32767, 502, 501, 165,32767,
600 398, 480, 165, 178,32767, 176, 176,32767, 198, 198,
601 32767,32767, 180, 473, 492,32767, 180,32767, 165,32767,
602 386, 167, 480,32767,32767, 230, 230, 386, 165, 230,
603 32767, 230,32767, 82, 422,32767,32767,32767,32767,32767,
604 32767,32767,32767,32767,32767,32767,32767,32767,32767, 399,
605 32767,32767,32767,32767, 365, 366, 475, 488,32767, 489,
606 32767, 397,32767, 329, 330, 332, 309,32767, 311, 355,
607 356, 357, 358, 359, 360, 361, 363,32767, 402,32767,
608 405,32767,32767,32767, 84, 108, 247,32767, 537, 84,
609 400,32767,32767, 294, 537,32767,32767,32767,32767, 532,
610 32767,32767, 288,32767,32767,32767, 84,32767, 84, 243,
611 32767, 163,32767, 522,32767, 497,32767, 401,32767, 328,
612 32767,32767,32767,32767,32767,32767,32767,32767,32767, 498,
613 32767,32767,32767,32767, 219,32767, 435,32767, 84,32767,
614 179,32767,32767, 292, 238,32767,32767, 531,32767,32767,
615 32767,32767,32767,32767,32767,32767,32767, 164,32767,32767,
616 181,32767,32767, 497,32767,32767,32767,32767,32767,32767,
617 32767,32767, 283,32767,32767,32767,32767,32767, 497,32767,
618 32767,32767, 223,32767,32767,32767,32767,32767,32767,32767,
619 32767,32767,32767, 82, 60,32767, 265,32767,32767,32767,
620 32767,32767,32767,32767,32767,32767,32767,32767, 121, 121,
621 3, 121, 121, 3, 121, 121, 121, 121, 121, 121,
622 121, 121, 121, 121, 121, 121, 121, 206, 250, 209,
623 198, 198, 158, 250, 250, 250, 257
624 );
625
626 protected $goto = array(
627 160, 160, 134, 134, 139, 134, 135, 136, 137, 142,
628 144, 181, 162, 158, 158, 158, 158, 139, 139, 159,
629 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
630 154, 155, 156, 157, 178, 133, 179, 493, 494, 360,
631 495, 499, 500, 501, 502, 503, 504, 505, 506, 962,
632 138, 140, 141, 143, 165, 170, 180, 196, 245, 248,
633 250, 252, 254, 255, 256, 257, 258, 259, 267, 268,
634 269, 270, 285, 286, 314, 315, 316, 379, 380, 381,
635 549, 182, 183, 184, 185, 186, 187, 188, 189, 190,
636 191, 192, 193, 194, 145, 146, 147, 161, 148, 163,
637 149, 197, 164, 150, 151, 152, 198, 153, 131, 625,
638 567, 754, 567, 567, 567, 567, 567, 567, 567, 567,
639 567, 567, 567, 567, 567, 567, 567, 567, 567, 567,
640 567, 567, 567, 567, 567, 567, 567, 567, 567, 567,
641 567, 567, 567, 567, 567, 567, 567, 567, 567, 567,
642 567, 567, 567, 567, 567, 1100, 753, 1100, 1100, 1100,
643 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100,
644 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100,
645 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100,
646 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100,
647 523, 784, 497, 497, 497, 497, 497, 497, 6, 508,
648 634, 508, 497, 497, 497, 497, 497, 497, 497, 497,
649 497, 497, 509, 550, 509, 580, 606, 522, 885, 885,
650 1190, 1190, 815, 849, 849, 849, 849, 168, 844, 850,
651 522, 522, 171, 172, 173, 388, 389, 390, 391, 167,
652 195, 199, 201, 249, 251, 253, 260, 261, 262, 263,
653 264, 265, 271, 272, 273, 274, 287, 288, 317, 318,
654 319, 394, 395, 396, 397, 169, 174, 246, 247, 175,
655 176, 177, 387, 608, 543, 543, 573, 539, 583, 586,
656 631, 855, 541, 541, 496, 498, 529, 545, 574, 577,
657 587, 593, 341, 1169, 566, 1169, 566, 566, 566, 566,
658 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
659 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
660 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
661 566, 566, 566, 566, 566, 566, 566, 566, 566, 514,
662 443, 445, 933, 636, 327, 309, 1101, 618, 931, 519,
663 519, 519, 519, 777, 551, 552, 553, 554, 555, 556,
664 557, 558, 560, 589, 903, 611, 538, 519, 617, 548,
665 358, 544, 572, 430, 430, 430, 430, 430, 430, 1194,
666 777, 777, 361, 430, 430, 430, 430, 430, 430, 430,
667 430, 430, 430, 1065, 1161, 1065, 892, 892, 892, 892,
668 892, 1168, 598, 1168, 590, 344, 404, 892, 369, 369,
669 369, 1058, 1184, 1184, 1184, 1076, 1075, 1065, 1065, 1065,
670 1065, 1149, 1065, 1065, 519, 519, 536, 568, 519, 519,
671 615, 519, 369, 510, 960, 510, 1167, 386, 770, 770,
672 778, 778, 778, 780, 520, 769, 276, 277, 278, 535,
673 607, 659, 562, 547, 594, 868, 882, 613, 867, 616,
674 878, 620, 621, 628, 630, 635, 637, 1081, 375, 1201,
675 1201, 1187, 1009, 889, 1019, 17, 13, 355, 790, 752,
676 1200, 1200, 898, 1061, 1062, 362, 941, 1058, 1201, 527,
677 871, 561, 851, 540, 657, 347, 511, 880, 875, 1200,
678 1059, 1160, 1059, 21, 398, 373, 773, 1203, 604, 451,
679 1060, 771, 907, 342, 343, 368, 645, 402, 446, 10,
680 1056, 1051, 912, 781, 578, 1146, 859, 459, 949, 0,
681 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
682 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
683 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
684 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
685 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
686 528
687 );
688
689 protected $gotoCheck = array(
690 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
691 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
692 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
693 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
694 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
695 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
696 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
697 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
698 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
699 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
700 39, 39, 39, 39, 39, 39, 39, 39, 39, 53,
701 63, 12, 63, 63, 63, 63, 63, 63, 63, 63,
702 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
703 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
704 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
705 63, 63, 63, 63, 63, 119, 11, 119, 119, 119,
706 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
707 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
708 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
709 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
710 94, 25, 110, 110, 110, 110, 110, 110, 91, 63,
711 5, 63, 110, 110, 110, 110, 110, 110, 110, 110,
712 110, 110, 110, 40, 110, 36, 36, 40, 71, 71,
713 71, 71, 46, 63, 63, 63, 63, 23, 63, 63,
714 40, 40, 23, 23, 23, 23, 23, 23, 23, 23,
715 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
716 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
717 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
718 23, 23, 47, 47, 47, 47, 47, 47, 56, 56,
719 56, 29, 47, 47, 47, 47, 47, 47, 47, 47,
720 47, 47, 66, 111, 53, 111, 53, 53, 53, 53,
721 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
722 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
723 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
724 53, 53, 53, 53, 53, 53, 53, 53, 53, 8,
725 7, 7, 7, 7, 118, 118, 7, 7, 7, 8,
726 8, 8, 8, 19, 103, 103, 103, 103, 103, 103,
727 103, 103, 103, 103, 78, 57, 8, 8, 57, 2,
728 57, 102, 2, 53, 53, 53, 53, 53, 53, 132,
729 19, 19, 43, 53, 53, 53, 53, 53, 53, 53,
730 53, 53, 53, 53, 76, 53, 53, 53, 53, 53,
731 53, 112, 120, 112, 64, 64, 64, 53, 116, 116,
732 116, 76, 112, 112, 112, 117, 117, 53, 53, 53,
733 53, 124, 53, 53, 8, 8, 8, 8, 8, 8,
734 53, 8, 116, 115, 94, 115, 112, 116, 19, 19,
735 19, 19, 19, 19, 8, 19, 61, 61, 61, 28,
736 45, 28, 28, 8, 28, 28, 28, 28, 28, 28,
737 28, 28, 28, 28, 28, 28, 28, 30, 44, 134,
738 134, 130, 95, 73, 30, 30, 30, 30, 10, 10,
739 133, 133, 75, 76, 76, 54, 91, 76, 134, 54,
740 10, 30, 10, 54, 10, 14, 10, 10, 10, 133,
741 76, 76, 76, 30, 18, 13, 21, 133, 30, 54,
742 76, 20, 79, 66, 66, 9, 68, 17, 59, 54,
743 108, 106, 80, 22, 60, 123, 65, 101, 93, -1,
744 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
745 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
746 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
747 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
748 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
749 94
750 );
751
752 protected $gotoBase = array(
753 0, 0, -261, 0, 0, 198, 0, 347, 29, 192,
754 487, 154, 109, 168, 185, 0, 0, 121, 183, 43,
755 173, 184, 93, 37, 0, 193, 0, 0, -180, 273,
756 64, 0, 0, 0, 0, 0, 189, 0, 0, -22,
757 201, 0, 0, 354, 188, 180, 216, 3, 0, 0,
758 0, 0, 0, 104, 71, 0, -15, -81, 0, 92,
759 88, -207, 0, -90, 90, 89, -137, 0, 169, 0,
760 0, -51, 0, 177, 0, 179, 67, 0, 351, 166,
761 91, 0, 0, 0, 0, 0, 0, 0, 0, 0,
762 0, 196, 0, 78, 161, 181, 0, 0, 0, 0,
763 0, 80, 356, 322, 0, 0, 115, 0, 111, 0,
764 -77, 4, 112, 0, 0, 144, 108, 114, 33, -45,
765 209, 0, 0, 83, 227, 0, 0, 0, 0, 0,
766 199, 0, 362, 182, 171, 0, 0
767 );
768
769 protected $gotoDefault = array(
770 -32768, 462, 668, 2, 669, 740, 748, 601, 479, 515,
771 853, 791, 792, 364, 410, 480, 363, 399, 392, 779,
772 772, 774, 782, 166, 400, 785, 1, 787, 521, 823,
773 1010, 351, 795, 352, 592, 797, 531, 799, 800, 132,
774 481, 365, 366, 532, 374, 581, 814, 266, 371, 816,
775 353, 817, 826, 354, 614, 597, 563, 610, 482, 442,
776 575, 275, 542, 1073, 570, 858, 340, 866, 648, 874,
777 877, 483, 564, 888, 448, 896, 1086, 382, 902, 908,
778 913, 916, 418, 401, 588, 920, 921, 5, 925, 626,
779 627, 940, 300, 948, 961, 416, 1029, 1031, 484, 485,
780 525, 456, 507, 530, 486, 1052, 436, 403, 1055, 487,
781 488, 426, 427, 1070, 346, 1154, 345, 444, 308, 1141,
782 584, 1105, 452, 1193, 1150, 337, 489, 490, 359, 376,
783 1188, 431, 1195, 1202, 335, 367, 571
784 );
785
786 protected $ruleToNonTerminal = array(
787 0, 1, 3, 3, 2, 5, 5, 5, 5, 5,
788 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
789 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
790 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
791 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
792 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
793 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
794 5, 5, 5, 6, 6, 6, 6, 6, 6, 6,
795 7, 7, 8, 8, 9, 4, 4, 4, 4, 4,
796 4, 4, 4, 4, 4, 4, 14, 14, 15, 15,
797 15, 15, 17, 17, 13, 13, 18, 18, 19, 19,
798 20, 20, 21, 21, 16, 16, 22, 24, 24, 25,
799 26, 26, 28, 27, 27, 27, 27, 29, 29, 29,
800 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
801 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
802 29, 29, 29, 29, 29, 29, 10, 10, 50, 50,
803 52, 51, 51, 44, 44, 54, 54, 55, 55, 11,
804 12, 12, 12, 58, 58, 58, 59, 59, 62, 62,
805 60, 60, 64, 64, 37, 37, 46, 46, 49, 49,
806 49, 48, 48, 65, 38, 38, 38, 38, 66, 66,
807 67, 67, 68, 68, 35, 35, 31, 31, 69, 33,
808 33, 70, 32, 32, 34, 34, 45, 45, 45, 56,
809 56, 72, 72, 73, 73, 75, 75, 75, 74, 74,
810 57, 57, 76, 76, 76, 77, 77, 78, 78, 78,
811 41, 41, 79, 79, 79, 42, 42, 80, 80, 61,
812 61, 81, 81, 81, 81, 86, 86, 87, 87, 88,
813 88, 88, 88, 88, 89, 90, 90, 85, 85, 82,
814 82, 84, 84, 92, 92, 91, 91, 91, 91, 91,
815 91, 83, 83, 93, 93, 43, 43, 36, 36, 39,
816 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
817 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
818 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
819 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
820 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
821 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
822 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
823 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
824 39, 39, 39, 30, 30, 40, 40, 98, 98, 99,
825 99, 99, 99, 105, 94, 94, 101, 101, 107, 107,
826 108, 109, 109, 109, 109, 109, 109, 63, 63, 53,
827 53, 53, 95, 95, 113, 113, 110, 110, 114, 114,
828 114, 114, 96, 96, 96, 100, 100, 100, 106, 106,
829 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
830 119, 119, 119, 23, 23, 23, 23, 23, 23, 121,
831 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
832 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
833 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
834 121, 121, 104, 104, 97, 97, 97, 97, 120, 120,
835 123, 123, 122, 122, 124, 124, 47, 47, 47, 47,
836 126, 126, 125, 125, 125, 125, 125, 127, 127, 112,
837 112, 115, 115, 111, 111, 128, 128, 128, 128, 116,
838 116, 116, 116, 103, 103, 117, 117, 117, 117, 71,
839 129, 129, 130, 130, 130, 102, 102, 131, 131, 132,
840 132, 132, 132, 118, 118, 118, 118, 134, 135, 133,
841 133, 133, 133, 133, 133, 133, 136, 136, 136
842 );
843
844 protected $ruleToLength = array(
845 1, 1, 2, 0, 1, 1, 1, 1, 1, 1,
846 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
847 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
848 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
849 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
850 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
851 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
852 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
853 1, 1, 1, 3, 1, 1, 1, 1, 1, 3,
854 5, 4, 3, 4, 2, 3, 1, 1, 7, 8,
855 6, 7, 3, 1, 3, 1, 3, 1, 1, 3,
856 1, 2, 1, 2, 3, 1, 3, 3, 1, 3,
857 2, 0, 1, 1, 1, 1, 1, 3, 5, 8,
858 3, 5, 9, 3, 2, 3, 2, 3, 2, 3,
859 2, 3, 3, 3, 1, 2, 5, 7, 9, 5,
860 6, 3, 3, 2, 2, 1, 1, 1, 0, 2,
861 8, 0, 4, 1, 3, 0, 1, 0, 1, 10,
862 7, 6, 5, 1, 2, 2, 0, 2, 0, 2,
863 0, 2, 1, 3, 1, 4, 1, 4, 1, 1,
864 4, 1, 3, 3, 3, 4, 4, 5, 0, 2,
865 4, 3, 1, 1, 1, 4, 0, 2, 3, 0,
866 2, 4, 0, 2, 0, 3, 1, 2, 1, 1,
867 0, 1, 3, 4, 6, 1, 1, 1, 0, 1,
868 0, 2, 2, 3, 3, 1, 3, 1, 2, 2,
869 3, 1, 1, 2, 4, 3, 1, 1, 3, 2,
870 0, 3, 3, 9, 3, 1, 3, 0, 2, 4,
871 5, 4, 4, 4, 3, 1, 1, 1, 3, 1,
872 1, 0, 1, 1, 2, 1, 1, 1, 1, 1,
873 1, 1, 3, 1, 3, 3, 1, 0, 1, 1,
874 3, 3, 4, 4, 1, 2, 3, 3, 3, 3,
875 3, 3, 3, 3, 3, 3, 3, 3, 2, 2,
876 2, 2, 3, 3, 3, 3, 3, 3, 3, 3,
877 3, 3, 3, 3, 3, 3, 3, 3, 3, 2,
878 2, 2, 2, 3, 3, 3, 3, 3, 3, 3,
879 3, 3, 3, 1, 3, 5, 4, 3, 4, 4,
880 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
881 2, 2, 2, 2, 1, 1, 1, 3, 2, 1,
882 2, 10, 11, 3, 3, 2, 4, 4, 3, 4,
883 4, 4, 4, 7, 3, 2, 0, 4, 1, 3,
884 2, 2, 4, 6, 2, 2, 4, 1, 1, 1,
885 2, 3, 1, 1, 1, 1, 1, 1, 3, 3,
886 4, 4, 0, 2, 1, 0, 1, 1, 0, 1,
887 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
888 1, 3, 2, 1, 3, 1, 4, 3, 1, 3,
889 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
890 3, 3, 3, 3, 3, 3, 2, 2, 2, 2,
891 3, 3, 3, 3, 3, 3, 3, 3, 5, 4,
892 4, 3, 1, 3, 1, 1, 3, 3, 0, 2,
893 0, 1, 3, 1, 3, 1, 1, 1, 1, 1,
894 6, 4, 3, 4, 2, 4, 4, 1, 3, 1,
895 2, 1, 1, 4, 1, 3, 6, 4, 4, 4,
896 4, 1, 4, 0, 1, 1, 3, 1, 1, 4,
897 3, 1, 1, 1, 0, 0, 2, 3, 1, 3,
898 1, 4, 2, 2, 2, 1, 2, 1, 1, 1,
899 4, 3, 3, 3, 6, 3, 1, 1, 1
900 );
901
902 protected function reduceRule0() {
903 $this->semValue = $this->semStack[$this->stackPos];
904 }
905
906 protected function reduceRule1() {
907 $this->semValue = $this->handleNamespaces($this->semStack[$this->stackPos-(1-1)]);
908 }
909
910 protected function reduceRule2() {
911 if (is_array($this->semStack[$this->stackPos-(2-2)])) { $this->semValue = array_merge($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)]); } else { $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)]; };
912 }
913
914 protected function reduceRule3() {
915 $this->semValue = array();
916 }
917
918 protected function reduceRule4() {
919 $startAttributes = $this->lookaheadStartAttributes; if (isset($startAttributes['comments'])) { $nop = new Stmt\Nop(['comments' => $startAttributes['comments']]); } else { $nop = null; };
920 if ($nop !== null) { $this->semStack[$this->stackPos-(1-1)][] = $nop; } $this->semValue = $this->semStack[$this->stackPos-(1-1)];
921 }
922
923 protected function reduceRule5() {
924 $this->semValue = $this->semStack[$this->stackPos];
925 }
926
927 protected function reduceRule6() {
928 $this->semValue = $this->semStack[$this->stackPos];
929 }
930
931 protected function reduceRule7() {
932 $this->semValue = $this->semStack[$this->stackPos];
933 }
934
935 protected function reduceRule8() {
936 $this->semValue = $this->semStack[$this->stackPos];
937 }
938
939 protected function reduceRule9() {
940 $this->semValue = $this->semStack[$this->stackPos];
941 }
942
943 protected function reduceRule10() {
944 $this->semValue = $this->semStack[$this->stackPos];
945 }
946
947 protected function reduceRule11() {
948 $this->semValue = $this->semStack[$this->stackPos];
949 }
950
951 protected function reduceRule12() {
952 $this->semValue = $this->semStack[$this->stackPos];
953 }
954
955 protected function reduceRule13() {
956 $this->semValue = $this->semStack[$this->stackPos];
957 }
958
959 protected function reduceRule14() {
960 $this->semValue = $this->semStack[$this->stackPos];
961 }
962
963 protected function reduceRule15() {
964 $this->semValue = $this->semStack[$this->stackPos];
965 }
966
967 protected function reduceRule16() {
968 $this->semValue = $this->semStack[$this->stackPos];
969 }
970
971 protected function reduceRule17() {
972 $this->semValue = $this->semStack[$this->stackPos];
973 }
974
975 protected function reduceRule18() {
976 $this->semValue = $this->semStack[$this->stackPos];
977 }
978
979 protected function reduceRule19() {
980 $this->semValue = $this->semStack[$this->stackPos];
981 }
982
983 protected function reduceRule20() {
984 $this->semValue = $this->semStack[$this->stackPos];
985 }
986
987 protected function reduceRule21() {
988 $this->semValue = $this->semStack[$this->stackPos];
989 }
990
991 protected function reduceRule22() {
992 $this->semValue = $this->semStack[$this->stackPos];
993 }
994
995 protected function reduceRule23() {
996 $this->semValue = $this->semStack[$this->stackPos];
997 }
998
999 protected function reduceRule24() {
1000 $this->semValue = $this->semStack[$this->stackPos];
1001 }
1002
1003 protected function reduceRule25() {
1004 $this->semValue = $this->semStack[$this->stackPos];
1005 }
1006
1007 protected function reduceRule26() {
1008 $this->semValue = $this->semStack[$this->stackPos];
1009 }
1010
1011 protected function reduceRule27() {
1012 $this->semValue = $this->semStack[$this->stackPos];
1013 }
1014
1015 protected function reduceRule28() {
1016 $this->semValue = $this->semStack[$this->stackPos];
1017 }
1018
1019 protected function reduceRule29() {
1020 $this->semValue = $this->semStack[$this->stackPos];
1021 }
1022
1023 protected function reduceRule30() {
1024 $this->semValue = $this->semStack[$this->stackPos];
1025 }
1026
1027 protected function reduceRule31() {
1028 $this->semValue = $this->semStack[$this->stackPos];
1029 }
1030
1031 protected function reduceRule32() {
1032 $this->semValue = $this->semStack[$this->stackPos];
1033 }
1034
1035 protected function reduceRule33() {
1036 $this->semValue = $this->semStack[$this->stackPos];
1037 }
1038
1039 protected function reduceRule34() {
1040 $this->semValue = $this->semStack[$this->stackPos];
1041 }
1042
1043 protected function reduceRule35() {
1044 $this->semValue = $this->semStack[$this->stackPos];
1045 }
1046
1047 protected function reduceRule36() {
1048 $this->semValue = $this->semStack[$this->stackPos];
1049 }
1050
1051 protected function reduceRule37() {
1052 $this->semValue = $this->semStack[$this->stackPos];
1053 }
1054
1055 protected function reduceRule38() {
1056 $this->semValue = $this->semStack[$this->stackPos];
1057 }
1058
1059 protected function reduceRule39() {
1060 $this->semValue = $this->semStack[$this->stackPos];
1061 }
1062
1063 protected function reduceRule40() {
1064 $this->semValue = $this->semStack[$this->stackPos];
1065 }
1066
1067 protected function reduceRule41() {
1068 $this->semValue = $this->semStack[$this->stackPos];
1069 }
1070
1071 protected function reduceRule42() {
1072 $this->semValue = $this->semStack[$this->stackPos];
1073 }
1074
1075 protected function reduceRule43() {
1076 $this->semValue = $this->semStack[$this->stackPos];
1077 }
1078
1079 protected function reduceRule44() {
1080 $this->semValue = $this->semStack[$this->stackPos];
1081 }
1082
1083 protected function reduceRule45() {
1084 $this->semValue = $this->semStack[$this->stackPos];
1085 }
1086
1087 protected function reduceRule46() {
1088 $this->semValue = $this->semStack[$this->stackPos];
1089 }
1090
1091 protected function reduceRule47() {
1092 $this->semValue = $this->semStack[$this->stackPos];
1093 }
1094
1095 protected function reduceRule48() {
1096 $this->semValue = $this->semStack[$this->stackPos];
1097 }
1098
1099 protected function reduceRule49() {
1100 $this->semValue = $this->semStack[$this->stackPos];
1101 }
1102
1103 protected function reduceRule50() {
1104 $this->semValue = $this->semStack[$this->stackPos];
1105 }
1106
1107 protected function reduceRule51() {
1108 $this->semValue = $this->semStack[$this->stackPos];
1109 }
1110
1111 protected function reduceRule52() {
1112 $this->semValue = $this->semStack[$this->stackPos];
1113 }
1114
1115 protected function reduceRule53() {
1116 $this->semValue = $this->semStack[$this->stackPos];
1117 }
1118
1119 protected function reduceRule54() {
1120 $this->semValue = $this->semStack[$this->stackPos];
1121 }
1122
1123 protected function reduceRule55() {
1124 $this->semValue = $this->semStack[$this->stackPos];
1125 }
1126
1127 protected function reduceRule56() {
1128 $this->semValue = $this->semStack[$this->stackPos];
1129 }
1130
1131 protected function reduceRule57() {
1132 $this->semValue = $this->semStack[$this->stackPos];
1133 }
1134
1135 protected function reduceRule58() {
1136 $this->semValue = $this->semStack[$this->stackPos];
1137 }
1138
1139 protected function reduceRule59() {
1140 $this->semValue = $this->semStack[$this->stackPos];
1141 }
1142
1143 protected function reduceRule60() {
1144 $this->semValue = $this->semStack[$this->stackPos];
1145 }
1146
1147 protected function reduceRule61() {
1148 $this->semValue = $this->semStack[$this->stackPos];
1149 }
1150
1151 protected function reduceRule62() {
1152 $this->semValue = $this->semStack[$this->stackPos];
1153 }
1154
1155 protected function reduceRule63() {
1156 $this->semValue = $this->semStack[$this->stackPos];
1157 }
1158
1159 protected function reduceRule64() {
1160 $this->semValue = $this->semStack[$this->stackPos];
1161 }
1162
1163 protected function reduceRule65() {
1164 $this->semValue = $this->semStack[$this->stackPos];
1165 }
1166
1167 protected function reduceRule66() {
1168 $this->semValue = $this->semStack[$this->stackPos];
1169 }
1170
1171 protected function reduceRule67() {
1172 $this->semValue = $this->semStack[$this->stackPos];
1173 }
1174
1175 protected function reduceRule68() {
1176 $this->semValue = $this->semStack[$this->stackPos];
1177 }
1178
1179 protected function reduceRule69() {
1180 $this->semValue = $this->semStack[$this->stackPos];
1181 }
1182
1183 protected function reduceRule70() {
1184 $this->semValue = $this->semStack[$this->stackPos];
1185 }
1186
1187 protected function reduceRule71() {
1188 $this->semValue = $this->semStack[$this->stackPos];
1189 }
1190
1191 protected function reduceRule72() {
1192 $this->semValue = $this->semStack[$this->stackPos];
1193 }
1194
1195 protected function reduceRule73() {
1196 $this->semValue = $this->semStack[$this->stackPos];
1197 }
1198
1199 protected function reduceRule74() {
1200 $this->semValue = $this->semStack[$this->stackPos];
1201 }
1202
1203 protected function reduceRule75() {
1204 $this->semValue = $this->semStack[$this->stackPos];
1205 }
1206
1207 protected function reduceRule76() {
1208 $this->semValue = $this->semStack[$this->stackPos];
1209 }
1210
1211 protected function reduceRule77() {
1212 $this->semValue = $this->semStack[$this->stackPos];
1213 }
1214
1215 protected function reduceRule78() {
1216 $this->semValue = $this->semStack[$this->stackPos];
1217 }
1218
1219 protected function reduceRule79() {
1220 $this->semValue = $this->semStack[$this->stackPos];
1221 }
1222
1223 protected function reduceRule80() {
1224 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1225 }
1226
1227 protected function reduceRule81() {
1228 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1229 }
1230
1231 protected function reduceRule82() {
1232 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
1233 }
1234
1235 protected function reduceRule83() {
1236 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
1237 }
1238
1239 protected function reduceRule84() {
1240 $this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
1241 }
1242
1243 protected function reduceRule85() {
1244 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1245 }
1246
1247 protected function reduceRule86() {
1248 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1249 }
1250
1251 protected function reduceRule87() {
1252 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1253 }
1254
1255 protected function reduceRule88() {
1256 $this->semValue = new Stmt\HaltCompiler($this->lexer->handleHaltCompiler(), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
1257 }
1258
1259 protected function reduceRule89() {
1260 $this->semValue = new Stmt\Namespace_($this->semStack[$this->stackPos-(3-2)], null, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1261 $this->semValue->setAttribute('kind', Stmt\Namespace_::KIND_SEMICOLON);
1262 $this->checkNamespace($this->semValue);
1263 }
1264
1265 protected function reduceRule90() {
1266 $this->semValue = new Stmt\Namespace_($this->semStack[$this->stackPos-(5-2)], $this->semStack[$this->stackPos-(5-4)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
1267 $this->semValue->setAttribute('kind', Stmt\Namespace_::KIND_BRACED);
1268 $this->checkNamespace($this->semValue);
1269 }
1270
1271 protected function reduceRule91() {
1272 $this->semValue = new Stmt\Namespace_(null, $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
1273 $this->semValue->setAttribute('kind', Stmt\Namespace_::KIND_BRACED);
1274 $this->checkNamespace($this->semValue);
1275 }
1276
1277 protected function reduceRule92() {
1278 $this->semValue = new Stmt\Use_($this->semStack[$this->stackPos-(3-2)], Stmt\Use_::TYPE_NORMAL, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1279 }
1280
1281 protected function reduceRule93() {
1282 $this->semValue = new Stmt\Use_($this->semStack[$this->stackPos-(4-3)], $this->semStack[$this->stackPos-(4-2)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
1283 }
1284
1285 protected function reduceRule94() {
1286 $this->semValue = $this->semStack[$this->stackPos-(2-1)];
1287 }
1288
1289 protected function reduceRule95() {
1290 $this->semValue = new Stmt\Const_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1291 }
1292
1293 protected function reduceRule96() {
1294 $this->semValue = Stmt\Use_::TYPE_FUNCTION;
1295 }
1296
1297 protected function reduceRule97() {
1298 $this->semValue = Stmt\Use_::TYPE_CONSTANT;
1299 }
1300
1301 protected function reduceRule98() {
1302 $this->semValue = new Stmt\GroupUse(new Name($this->semStack[$this->stackPos-(7-3)], $this->startAttributeStack[$this->stackPos-(7-3)] + $this->endAttributeStack[$this->stackPos-(7-3)]), $this->semStack[$this->stackPos-(7-6)], $this->semStack[$this->stackPos-(7-2)], $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes);
1303 }
1304
1305 protected function reduceRule99() {
1306 $this->semValue = new Stmt\GroupUse(new Name($this->semStack[$this->stackPos-(8-4)], $this->startAttributeStack[$this->stackPos-(8-4)] + $this->endAttributeStack[$this->stackPos-(8-4)]), $this->semStack[$this->stackPos-(8-7)], $this->semStack[$this->stackPos-(8-2)], $this->startAttributeStack[$this->stackPos-(8-1)] + $this->endAttributes);
1307 }
1308
1309 protected function reduceRule100() {
1310 $this->semValue = new Stmt\GroupUse(new Name($this->semStack[$this->stackPos-(6-2)], $this->startAttributeStack[$this->stackPos-(6-2)] + $this->endAttributeStack[$this->stackPos-(6-2)]), $this->semStack[$this->stackPos-(6-5)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes);
1311 }
1312
1313 protected function reduceRule101() {
1314 $this->semValue = new Stmt\GroupUse(new Name($this->semStack[$this->stackPos-(7-3)], $this->startAttributeStack[$this->stackPos-(7-3)] + $this->endAttributeStack[$this->stackPos-(7-3)]), $this->semStack[$this->stackPos-(7-6)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes);
1315 }
1316
1317 protected function reduceRule102() {
1318 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
1319 }
1320
1321 protected function reduceRule103() {
1322 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
1323 }
1324
1325 protected function reduceRule104() {
1326 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
1327 }
1328
1329 protected function reduceRule105() {
1330 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
1331 }
1332
1333 protected function reduceRule106() {
1334 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
1335 }
1336
1337 protected function reduceRule107() {
1338 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
1339 }
1340
1341 protected function reduceRule108() {
1342 $this->semValue = new Stmt\UseUse($this->semStack[$this->stackPos-(1-1)], null, Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); $this->checkUseUse($this->semValue, $this->stackPos-(1-1));
1343 }
1344
1345 protected function reduceRule109() {
1346 $this->semValue = new Stmt\UseUse($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); $this->checkUseUse($this->semValue, $this->stackPos-(3-3));
1347 }
1348
1349 protected function reduceRule110() {
1350 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1351 }
1352
1353 protected function reduceRule111() {
1354 $this->semValue = $this->semStack[$this->stackPos-(2-2)];
1355 }
1356
1357 protected function reduceRule112() {
1358 $this->semValue = $this->semStack[$this->stackPos-(1-1)]; $this->semValue->type = Stmt\Use_::TYPE_NORMAL;
1359 }
1360
1361 protected function reduceRule113() {
1362 $this->semValue = $this->semStack[$this->stackPos-(2-2)]; $this->semValue->type = $this->semStack[$this->stackPos-(2-1)];
1363 }
1364
1365 protected function reduceRule114() {
1366 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
1367 }
1368
1369 protected function reduceRule115() {
1370 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
1371 }
1372
1373 protected function reduceRule116() {
1374 $this->semValue = new Node\Const_($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1375 }
1376
1377 protected function reduceRule117() {
1378 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
1379 }
1380
1381 protected function reduceRule118() {
1382 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
1383 }
1384
1385 protected function reduceRule119() {
1386 $this->semValue = new Node\Const_($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1387 }
1388
1389 protected function reduceRule120() {
1390 if (is_array($this->semStack[$this->stackPos-(2-2)])) { $this->semValue = array_merge($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)]); } else { $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)]; };
1391 }
1392
1393 protected function reduceRule121() {
1394 $this->semValue = array();
1395 }
1396
1397 protected function reduceRule122() {
1398 $startAttributes = $this->lookaheadStartAttributes; if (isset($startAttributes['comments'])) { $nop = new Stmt\Nop(['comments' => $startAttributes['comments']]); } else { $nop = null; };
1399 if ($nop !== null) { $this->semStack[$this->stackPos-(1-1)][] = $nop; } $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1400 }
1401
1402 protected function reduceRule123() {
1403 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1404 }
1405
1406 protected function reduceRule124() {
1407 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1408 }
1409
1410 protected function reduceRule125() {
1411 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1412 }
1413
1414 protected function reduceRule126() {
1415 throw new Error('__HALT_COMPILER() can only be used from the outermost scope', $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
1416 }
1417
1418 protected function reduceRule127() {
1419
1420 if ($this->semStack[$this->stackPos-(3-2)]) {
1421 $this->semValue = $this->semStack[$this->stackPos-(3-2)]; $attrs = $this->startAttributeStack[$this->stackPos-(3-1)]; $stmts = $this->semValue; if (!empty($attrs['comments'])) {$stmts[0]->setAttribute('comments', array_merge($attrs['comments'], $stmts[0]->getAttribute('comments', []))); };
1422 } else {
1423 $startAttributes = $this->startAttributeStack[$this->stackPos-(3-1)]; if (isset($startAttributes['comments'])) { $this->semValue = new Stmt\Nop(['comments' => $startAttributes['comments']]); } else { $this->semValue = null; };
1424 if (null === $this->semValue) { $this->semValue = array(); }
1425 }
1426
1427 }
1428
1429 protected function reduceRule128() {
1430 $this->semValue = new Stmt\If_($this->semStack[$this->stackPos-(5-2)], ['stmts' => is_array($this->semStack[$this->stackPos-(5-3)]) ? $this->semStack[$this->stackPos-(5-3)] : array($this->semStack[$this->stackPos-(5-3)]), 'elseifs' => $this->semStack[$this->stackPos-(5-4)], 'else' => $this->semStack[$this->stackPos-(5-5)]], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
1431 }
1432
1433 protected function reduceRule129() {
1434 $this->semValue = new Stmt\If_($this->semStack[$this->stackPos-(8-2)], ['stmts' => $this->semStack[$this->stackPos-(8-4)], 'elseifs' => $this->semStack[$this->stackPos-(8-5)], 'else' => $this->semStack[$this->stackPos-(8-6)]], $this->startAttributeStack[$this->stackPos-(8-1)] + $this->endAttributes);
1435 }
1436
1437 protected function reduceRule130() {
1438 $this->semValue = new Stmt\While_($this->semStack[$this->stackPos-(3-2)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1439 }
1440
1441 protected function reduceRule131() {
1442 $this->semValue = new Stmt\Do_($this->semStack[$this->stackPos-(5-4)], is_array($this->semStack[$this->stackPos-(5-2)]) ? $this->semStack[$this->stackPos-(5-2)] : array($this->semStack[$this->stackPos-(5-2)]), $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
1443 }
1444
1445 protected function reduceRule132() {
1446 $this->semValue = new Stmt\For_(['init' => $this->semStack[$this->stackPos-(9-3)], 'cond' => $this->semStack[$this->stackPos-(9-5)], 'loop' => $this->semStack[$this->stackPos-(9-7)], 'stmts' => $this->semStack[$this->stackPos-(9-9)]], $this->startAttributeStack[$this->stackPos-(9-1)] + $this->endAttributes);
1447 }
1448
1449 protected function reduceRule133() {
1450 $this->semValue = new Stmt\Switch_($this->semStack[$this->stackPos-(3-2)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1451 }
1452
1453 protected function reduceRule134() {
1454 $this->semValue = new Stmt\Break_(null, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
1455 }
1456
1457 protected function reduceRule135() {
1458 $this->semValue = new Stmt\Break_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1459 }
1460
1461 protected function reduceRule136() {
1462 $this->semValue = new Stmt\Continue_(null, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
1463 }
1464
1465 protected function reduceRule137() {
1466 $this->semValue = new Stmt\Continue_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1467 }
1468
1469 protected function reduceRule138() {
1470 $this->semValue = new Stmt\Return_(null, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
1471 }
1472
1473 protected function reduceRule139() {
1474 $this->semValue = new Stmt\Return_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1475 }
1476
1477 protected function reduceRule140() {
1478 $this->semValue = $this->semStack[$this->stackPos-(2-1)];
1479 }
1480
1481 protected function reduceRule141() {
1482 $this->semValue = new Stmt\Global_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1483 }
1484
1485 protected function reduceRule142() {
1486 $this->semValue = new Stmt\Static_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1487 }
1488
1489 protected function reduceRule143() {
1490 $this->semValue = new Stmt\Echo_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1491 }
1492
1493 protected function reduceRule144() {
1494 $this->semValue = new Stmt\InlineHTML($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
1495 }
1496
1497 protected function reduceRule145() {
1498 $this->semValue = $this->semStack[$this->stackPos-(2-1)];
1499 }
1500
1501 protected function reduceRule146() {
1502 $this->semValue = new Stmt\Unset_($this->semStack[$this->stackPos-(5-3)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
1503 }
1504
1505 protected function reduceRule147() {
1506 $this->semValue = new Stmt\Foreach_($this->semStack[$this->stackPos-(7-3)], $this->semStack[$this->stackPos-(7-5)][0], ['keyVar' => null, 'byRef' => $this->semStack[$this->stackPos-(7-5)][1], 'stmts' => $this->semStack[$this->stackPos-(7-7)]], $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes);
1507 }
1508
1509 protected function reduceRule148() {
1510 $this->semValue = new Stmt\Foreach_($this->semStack[$this->stackPos-(9-3)], $this->semStack[$this->stackPos-(9-7)][0], ['keyVar' => $this->semStack[$this->stackPos-(9-5)], 'byRef' => $this->semStack[$this->stackPos-(9-7)][1], 'stmts' => $this->semStack[$this->stackPos-(9-9)]], $this->startAttributeStack[$this->stackPos-(9-1)] + $this->endAttributes);
1511 }
1512
1513 protected function reduceRule149() {
1514 $this->semValue = new Stmt\Declare_($this->semStack[$this->stackPos-(5-3)], $this->semStack[$this->stackPos-(5-5)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
1515 }
1516
1517 protected function reduceRule150() {
1518 $this->semValue = new Stmt\TryCatch($this->semStack[$this->stackPos-(6-3)], $this->semStack[$this->stackPos-(6-5)], $this->semStack[$this->stackPos-(6-6)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes); $this->checkTryCatch($this->semValue);
1519 }
1520
1521 protected function reduceRule151() {
1522 $this->semValue = new Stmt\Throw_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1523 }
1524
1525 protected function reduceRule152() {
1526 $this->semValue = new Stmt\Goto_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1527 }
1528
1529 protected function reduceRule153() {
1530 $this->semValue = new Stmt\Label($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
1531 }
1532
1533 protected function reduceRule154() {
1534 $this->semValue = $this->semStack[$this->stackPos-(2-1)];
1535 }
1536
1537 protected function reduceRule155() {
1538 $this->semValue = array(); /* means: no statement */
1539 }
1540
1541 protected function reduceRule156() {
1542 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1543 }
1544
1545 protected function reduceRule157() {
1546 $startAttributes = $this->startAttributeStack[$this->stackPos-(1-1)]; if (isset($startAttributes['comments'])) { $this->semValue = new Stmt\Nop(['comments' => $startAttributes['comments']]); } else { $this->semValue = null; };
1547 if ($this->semValue === null) $this->semValue = array(); /* means: no statement */
1548 }
1549
1550 protected function reduceRule158() {
1551 $this->semValue = array();
1552 }
1553
1554 protected function reduceRule159() {
1555 $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
1556 }
1557
1558 protected function reduceRule160() {
1559 $this->semValue = new Stmt\Catch_(array($this->semStack[$this->stackPos-(8-3)]), substr($this->semStack[$this->stackPos-(8-4)], 1), $this->semStack[$this->stackPos-(8-7)], $this->startAttributeStack[$this->stackPos-(8-1)] + $this->endAttributes);
1560 }
1561
1562 protected function reduceRule161() {
1563 $this->semValue = null;
1564 }
1565
1566 protected function reduceRule162() {
1567 $this->semValue = new Stmt\Finally_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
1568 }
1569
1570 protected function reduceRule163() {
1571 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
1572 }
1573
1574 protected function reduceRule164() {
1575 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
1576 }
1577
1578 protected function reduceRule165() {
1579 $this->semValue = false;
1580 }
1581
1582 protected function reduceRule166() {
1583 $this->semValue = true;
1584 }
1585
1586 protected function reduceRule167() {
1587 $this->semValue = false;
1588 }
1589
1590 protected function reduceRule168() {
1591 $this->semValue = true;
1592 }
1593
1594 protected function reduceRule169() {
1595 $this->semValue = new Stmt\Function_($this->semStack[$this->stackPos-(10-3)], ['byRef' => $this->semStack[$this->stackPos-(10-2)], 'params' => $this->semStack[$this->stackPos-(10-5)], 'returnType' => $this->semStack[$this->stackPos-(10-7)], 'stmts' => $this->semStack[$this->stackPos-(10-9)]], $this->startAttributeStack[$this->stackPos-(10-1)] + $this->endAttributes);
1596 }
1597
1598 protected function reduceRule170() {
1599 $this->semValue = new Stmt\Class_($this->semStack[$this->stackPos-(7-2)], ['type' => $this->semStack[$this->stackPos-(7-1)], 'extends' => $this->semStack[$this->stackPos-(7-3)], 'implements' => $this->semStack[$this->stackPos-(7-4)], 'stmts' => $this->semStack[$this->stackPos-(7-6)]], $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes);
1600 $this->checkClass($this->semValue, $this->stackPos-(7-2));
1601 }
1602
1603 protected function reduceRule171() {
1604 $this->semValue = new Stmt\Interface_($this->semStack[$this->stackPos-(6-2)], ['extends' => $this->semStack[$this->stackPos-(6-3)], 'stmts' => $this->semStack[$this->stackPos-(6-5)]], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes);
1605 $this->checkInterface($this->semValue, $this->stackPos-(6-2));
1606 }
1607
1608 protected function reduceRule172() {
1609 $this->semValue = new Stmt\Trait_($this->semStack[$this->stackPos-(5-2)], ['stmts' => $this->semStack[$this->stackPos-(5-4)]], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
1610 }
1611
1612 protected function reduceRule173() {
1613 $this->semValue = 0;
1614 }
1615
1616 protected function reduceRule174() {
1617 $this->semValue = Stmt\Class_::MODIFIER_ABSTRACT;
1618 }
1619
1620 protected function reduceRule175() {
1621 $this->semValue = Stmt\Class_::MODIFIER_FINAL;
1622 }
1623
1624 protected function reduceRule176() {
1625 $this->semValue = null;
1626 }
1627
1628 protected function reduceRule177() {
1629 $this->semValue = $this->semStack[$this->stackPos-(2-2)];
1630 }
1631
1632 protected function reduceRule178() {
1633 $this->semValue = array();
1634 }
1635
1636 protected function reduceRule179() {
1637 $this->semValue = $this->semStack[$this->stackPos-(2-2)];
1638 }
1639
1640 protected function reduceRule180() {
1641 $this->semValue = array();
1642 }
1643
1644 protected function reduceRule181() {
1645 $this->semValue = $this->semStack[$this->stackPos-(2-2)];
1646 }
1647
1648 protected function reduceRule182() {
1649 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
1650 }
1651
1652 protected function reduceRule183() {
1653 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
1654 }
1655
1656 protected function reduceRule184() {
1657 $this->semValue = is_array($this->semStack[$this->stackPos-(1-1)]) ? $this->semStack[$this->stackPos-(1-1)] : array($this->semStack[$this->stackPos-(1-1)]);
1658 }
1659
1660 protected function reduceRule185() {
1661 $this->semValue = $this->semStack[$this->stackPos-(4-2)];
1662 }
1663
1664 protected function reduceRule186() {
1665 $this->semValue = is_array($this->semStack[$this->stackPos-(1-1)]) ? $this->semStack[$this->stackPos-(1-1)] : array($this->semStack[$this->stackPos-(1-1)]);
1666 }
1667
1668 protected function reduceRule187() {
1669 $this->semValue = $this->semStack[$this->stackPos-(4-2)];
1670 }
1671
1672 protected function reduceRule188() {
1673 $this->semValue = is_array($this->semStack[$this->stackPos-(1-1)]) ? $this->semStack[$this->stackPos-(1-1)] : array($this->semStack[$this->stackPos-(1-1)]);
1674 }
1675
1676 protected function reduceRule189() {
1677 $this->semValue = null;
1678 }
1679
1680 protected function reduceRule190() {
1681 $this->semValue = $this->semStack[$this->stackPos-(4-2)];
1682 }
1683
1684 protected function reduceRule191() {
1685 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
1686 }
1687
1688 protected function reduceRule192() {
1689 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
1690 }
1691
1692 protected function reduceRule193() {
1693 $this->semValue = new Stmt\DeclareDeclare($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1694 }
1695
1696 protected function reduceRule194() {
1697 $this->semValue = $this->semStack[$this->stackPos-(3-2)];
1698 }
1699
1700 protected function reduceRule195() {
1701 $this->semValue = $this->semStack[$this->stackPos-(4-3)];
1702 }
1703
1704 protected function reduceRule196() {
1705 $this->semValue = $this->semStack[$this->stackPos-(4-2)];
1706 }
1707
1708 protected function reduceRule197() {
1709 $this->semValue = $this->semStack[$this->stackPos-(5-3)];
1710 }
1711
1712 protected function reduceRule198() {
1713 $this->semValue = array();
1714 }
1715
1716 protected function reduceRule199() {
1717 $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
1718 }
1719
1720 protected function reduceRule200() {
1721 $this->semValue = new Stmt\Case_($this->semStack[$this->stackPos-(4-2)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
1722 }
1723
1724 protected function reduceRule201() {
1725 $this->semValue = new Stmt\Case_(null, $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1726 }
1727
1728 protected function reduceRule202() {
1729 $this->semValue = $this->semStack[$this->stackPos];
1730 }
1731
1732 protected function reduceRule203() {
1733 $this->semValue = $this->semStack[$this->stackPos];
1734 }
1735
1736 protected function reduceRule204() {
1737 $this->semValue = is_array($this->semStack[$this->stackPos-(1-1)]) ? $this->semStack[$this->stackPos-(1-1)] : array($this->semStack[$this->stackPos-(1-1)]);
1738 }
1739
1740 protected function reduceRule205() {
1741 $this->semValue = $this->semStack[$this->stackPos-(4-2)];
1742 }
1743
1744 protected function reduceRule206() {
1745 $this->semValue = array();
1746 }
1747
1748 protected function reduceRule207() {
1749 $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
1750 }
1751
1752 protected function reduceRule208() {
1753 $this->semValue = new Stmt\ElseIf_($this->semStack[$this->stackPos-(3-2)], is_array($this->semStack[$this->stackPos-(3-3)]) ? $this->semStack[$this->stackPos-(3-3)] : array($this->semStack[$this->stackPos-(3-3)]), $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1754 }
1755
1756 protected function reduceRule209() {
1757 $this->semValue = array();
1758 }
1759
1760 protected function reduceRule210() {
1761 $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
1762 }
1763
1764 protected function reduceRule211() {
1765 $this->semValue = new Stmt\ElseIf_($this->semStack[$this->stackPos-(4-2)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
1766 }
1767
1768 protected function reduceRule212() {
1769 $this->semValue = null;
1770 }
1771
1772 protected function reduceRule213() {
1773 $this->semValue = new Stmt\Else_(is_array($this->semStack[$this->stackPos-(2-2)]) ? $this->semStack[$this->stackPos-(2-2)] : array($this->semStack[$this->stackPos-(2-2)]), $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
1774 }
1775
1776 protected function reduceRule214() {
1777 $this->semValue = null;
1778 }
1779
1780 protected function reduceRule215() {
1781 $this->semValue = new Stmt\Else_($this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1782 }
1783
1784 protected function reduceRule216() {
1785 $this->semValue = array($this->semStack[$this->stackPos-(1-1)], false);
1786 }
1787
1788 protected function reduceRule217() {
1789 $this->semValue = array($this->semStack[$this->stackPos-(2-2)], true);
1790 }
1791
1792 protected function reduceRule218() {
1793 $this->semValue = array($this->semStack[$this->stackPos-(1-1)], false);
1794 }
1795
1796 protected function reduceRule219() {
1797 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1798 }
1799
1800 protected function reduceRule220() {
1801 $this->semValue = array();
1802 }
1803
1804 protected function reduceRule221() {
1805 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
1806 }
1807
1808 protected function reduceRule222() {
1809 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
1810 }
1811
1812 protected function reduceRule223() {
1813 $this->semValue = new Node\Param(substr($this->semStack[$this->stackPos-(4-4)], 1), null, $this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-2)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); $this->checkParam($this->semValue);
1814 }
1815
1816 protected function reduceRule224() {
1817 $this->semValue = new Node\Param(substr($this->semStack[$this->stackPos-(6-4)], 1), $this->semStack[$this->stackPos-(6-6)], $this->semStack[$this->stackPos-(6-1)], $this->semStack[$this->stackPos-(6-2)], $this->semStack[$this->stackPos-(6-3)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes); $this->checkParam($this->semValue);
1818 }
1819
1820 protected function reduceRule225() {
1821 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1822 }
1823
1824 protected function reduceRule226() {
1825 $this->semValue = 'array';
1826 }
1827
1828 protected function reduceRule227() {
1829 $this->semValue = 'callable';
1830 }
1831
1832 protected function reduceRule228() {
1833 $this->semValue = null;
1834 }
1835
1836 protected function reduceRule229() {
1837 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1838 }
1839
1840 protected function reduceRule230() {
1841 $this->semValue = null;
1842 }
1843
1844 protected function reduceRule231() {
1845 $this->semValue = $this->semStack[$this->stackPos-(2-2)];
1846 }
1847
1848 protected function reduceRule232() {
1849 $this->semValue = array();
1850 }
1851
1852 protected function reduceRule233() {
1853 $this->semValue = $this->semStack[$this->stackPos-(3-2)];
1854 }
1855
1856 protected function reduceRule234() {
1857 $this->semValue = array(new Node\Arg($this->semStack[$this->stackPos-(3-2)], false, false, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes));
1858 }
1859
1860 protected function reduceRule235() {
1861 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
1862 }
1863
1864 protected function reduceRule236() {
1865 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
1866 }
1867
1868 protected function reduceRule237() {
1869 $this->semValue = new Node\Arg($this->semStack[$this->stackPos-(1-1)], false, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
1870 }
1871
1872 protected function reduceRule238() {
1873 $this->semValue = new Node\Arg($this->semStack[$this->stackPos-(2-2)], true, false, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
1874 }
1875
1876 protected function reduceRule239() {
1877 $this->semValue = new Node\Arg($this->semStack[$this->stackPos-(2-2)], false, true, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
1878 }
1879
1880 protected function reduceRule240() {
1881 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
1882 }
1883
1884 protected function reduceRule241() {
1885 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
1886 }
1887
1888 protected function reduceRule242() {
1889 $this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
1890 }
1891
1892 protected function reduceRule243() {
1893 $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
1894 }
1895
1896 protected function reduceRule244() {
1897 $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
1898 }
1899
1900 protected function reduceRule245() {
1901 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
1902 }
1903
1904 protected function reduceRule246() {
1905 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
1906 }
1907
1908 protected function reduceRule247() {
1909 $this->semValue = new Stmt\StaticVar(substr($this->semStack[$this->stackPos-(1-1)], 1), null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
1910 }
1911
1912 protected function reduceRule248() {
1913 $this->semValue = new Stmt\StaticVar(substr($this->semStack[$this->stackPos-(3-1)], 1), $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1914 }
1915
1916 protected function reduceRule249() {
1917 $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
1918 }
1919
1920 protected function reduceRule250() {
1921 $this->semValue = array();
1922 }
1923
1924 protected function reduceRule251() {
1925 $this->semValue = new Stmt\Property($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); $this->checkProperty($this->semValue, $this->stackPos-(3-1));
1926 }
1927
1928 protected function reduceRule252() {
1929 $this->semValue = new Stmt\ClassConst($this->semStack[$this->stackPos-(3-2)], 0, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1930 }
1931
1932 protected function reduceRule253() {
1933 $this->semValue = new Stmt\ClassMethod($this->semStack[$this->stackPos-(9-4)], ['type' => $this->semStack[$this->stackPos-(9-1)], 'byRef' => $this->semStack[$this->stackPos-(9-3)], 'params' => $this->semStack[$this->stackPos-(9-6)], 'returnType' => $this->semStack[$this->stackPos-(9-8)], 'stmts' => $this->semStack[$this->stackPos-(9-9)]], $this->startAttributeStack[$this->stackPos-(9-1)] + $this->endAttributes);
1934 $this->checkClassMethod($this->semValue, $this->stackPos-(9-1));
1935 }
1936
1937 protected function reduceRule254() {
1938 $this->semValue = new Stmt\TraitUse($this->semStack[$this->stackPos-(3-2)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
1939 }
1940
1941 protected function reduceRule255() {
1942 $this->semValue = array();
1943 }
1944
1945 protected function reduceRule256() {
1946 $this->semValue = $this->semStack[$this->stackPos-(3-2)];
1947 }
1948
1949 protected function reduceRule257() {
1950 $this->semValue = array();
1951 }
1952
1953 protected function reduceRule258() {
1954 $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
1955 }
1956
1957 protected function reduceRule259() {
1958 $this->semValue = new Stmt\TraitUseAdaptation\Precedence($this->semStack[$this->stackPos-(4-1)][0], $this->semStack[$this->stackPos-(4-1)][1], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
1959 }
1960
1961 protected function reduceRule260() {
1962 $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$this->stackPos-(5-1)][0], $this->semStack[$this->stackPos-(5-1)][1], $this->semStack[$this->stackPos-(5-3)], $this->semStack[$this->stackPos-(5-4)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
1963 }
1964
1965 protected function reduceRule261() {
1966 $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$this->stackPos-(4-1)][0], $this->semStack[$this->stackPos-(4-1)][1], $this->semStack[$this->stackPos-(4-3)], null, $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
1967 }
1968
1969 protected function reduceRule262() {
1970 $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$this->stackPos-(4-1)][0], $this->semStack[$this->stackPos-(4-1)][1], null, $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
1971 }
1972
1973 protected function reduceRule263() {
1974 $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$this->stackPos-(4-1)][0], $this->semStack[$this->stackPos-(4-1)][1], null, $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
1975 }
1976
1977 protected function reduceRule264() {
1978 $this->semValue = array($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)]);
1979 }
1980
1981 protected function reduceRule265() {
1982 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1983 }
1984
1985 protected function reduceRule266() {
1986 $this->semValue = array(null, $this->semStack[$this->stackPos-(1-1)]);
1987 }
1988
1989 protected function reduceRule267() {
1990 $this->semValue = null;
1991 }
1992
1993 protected function reduceRule268() {
1994 $this->semValue = $this->semStack[$this->stackPos-(3-2)];
1995 }
1996
1997 protected function reduceRule269() {
1998 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
1999 }
2000
2001 protected function reduceRule270() {
2002 $this->semValue = 0;
2003 }
2004
2005 protected function reduceRule271() {
2006 $this->semValue = 0;
2007 }
2008
2009 protected function reduceRule272() {
2010 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2011 }
2012
2013 protected function reduceRule273() {
2014 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2015 }
2016
2017 protected function reduceRule274() {
2018 $this->checkModifier($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)], $this->stackPos-(2-2)); $this->semValue = $this->semStack[$this->stackPos-(2-1)] | $this->semStack[$this->stackPos-(2-2)];
2019 }
2020
2021 protected function reduceRule275() {
2022 $this->semValue = Stmt\Class_::MODIFIER_PUBLIC;
2023 }
2024
2025 protected function reduceRule276() {
2026 $this->semValue = Stmt\Class_::MODIFIER_PROTECTED;
2027 }
2028
2029 protected function reduceRule277() {
2030 $this->semValue = Stmt\Class_::MODIFIER_PRIVATE;
2031 }
2032
2033 protected function reduceRule278() {
2034 $this->semValue = Stmt\Class_::MODIFIER_STATIC;
2035 }
2036
2037 protected function reduceRule279() {
2038 $this->semValue = Stmt\Class_::MODIFIER_ABSTRACT;
2039 }
2040
2041 protected function reduceRule280() {
2042 $this->semValue = Stmt\Class_::MODIFIER_FINAL;
2043 }
2044
2045 protected function reduceRule281() {
2046 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
2047 }
2048
2049 protected function reduceRule282() {
2050 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
2051 }
2052
2053 protected function reduceRule283() {
2054 $this->semValue = new Stmt\PropertyProperty(substr($this->semStack[$this->stackPos-(1-1)], 1), null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2055 }
2056
2057 protected function reduceRule284() {
2058 $this->semValue = new Stmt\PropertyProperty(substr($this->semStack[$this->stackPos-(3-1)], 1), $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2059 }
2060
2061 protected function reduceRule285() {
2062 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
2063 }
2064
2065 protected function reduceRule286() {
2066 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
2067 }
2068
2069 protected function reduceRule287() {
2070 $this->semValue = array();
2071 }
2072
2073 protected function reduceRule288() {
2074 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2075 }
2076
2077 protected function reduceRule289() {
2078 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2079 }
2080
2081 protected function reduceRule290() {
2082 $this->semValue = new Expr\Assign($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2083 }
2084
2085 protected function reduceRule291() {
2086 $this->semValue = new Expr\Assign($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2087 }
2088
2089 protected function reduceRule292() {
2090 $this->semValue = new Expr\AssignRef($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2091 }
2092
2093 protected function reduceRule293() {
2094 $this->semValue = new Expr\AssignRef($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2095 }
2096
2097 protected function reduceRule294() {
2098 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2099 }
2100
2101 protected function reduceRule295() {
2102 $this->semValue = new Expr\Clone_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2103 }
2104
2105 protected function reduceRule296() {
2106 $this->semValue = new Expr\AssignOp\Plus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2107 }
2108
2109 protected function reduceRule297() {
2110 $this->semValue = new Expr\AssignOp\Minus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2111 }
2112
2113 protected function reduceRule298() {
2114 $this->semValue = new Expr\AssignOp\Mul($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2115 }
2116
2117 protected function reduceRule299() {
2118 $this->semValue = new Expr\AssignOp\Div($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2119 }
2120
2121 protected function reduceRule300() {
2122 $this->semValue = new Expr\AssignOp\Concat($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2123 }
2124
2125 protected function reduceRule301() {
2126 $this->semValue = new Expr\AssignOp\Mod($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2127 }
2128
2129 protected function reduceRule302() {
2130 $this->semValue = new Expr\AssignOp\BitwiseAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2131 }
2132
2133 protected function reduceRule303() {
2134 $this->semValue = new Expr\AssignOp\BitwiseOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2135 }
2136
2137 protected function reduceRule304() {
2138 $this->semValue = new Expr\AssignOp\BitwiseXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2139 }
2140
2141 protected function reduceRule305() {
2142 $this->semValue = new Expr\AssignOp\ShiftLeft($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2143 }
2144
2145 protected function reduceRule306() {
2146 $this->semValue = new Expr\AssignOp\ShiftRight($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2147 }
2148
2149 protected function reduceRule307() {
2150 $this->semValue = new Expr\AssignOp\Pow($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2151 }
2152
2153 protected function reduceRule308() {
2154 $this->semValue = new Expr\PostInc($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2155 }
2156
2157 protected function reduceRule309() {
2158 $this->semValue = new Expr\PreInc($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2159 }
2160
2161 protected function reduceRule310() {
2162 $this->semValue = new Expr\PostDec($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2163 }
2164
2165 protected function reduceRule311() {
2166 $this->semValue = new Expr\PreDec($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2167 }
2168
2169 protected function reduceRule312() {
2170 $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2171 }
2172
2173 protected function reduceRule313() {
2174 $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2175 }
2176
2177 protected function reduceRule314() {
2178 $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2179 }
2180
2181 protected function reduceRule315() {
2182 $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2183 }
2184
2185 protected function reduceRule316() {
2186 $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2187 }
2188
2189 protected function reduceRule317() {
2190 $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2191 }
2192
2193 protected function reduceRule318() {
2194 $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2195 }
2196
2197 protected function reduceRule319() {
2198 $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2199 }
2200
2201 protected function reduceRule320() {
2202 $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2203 }
2204
2205 protected function reduceRule321() {
2206 $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2207 }
2208
2209 protected function reduceRule322() {
2210 $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2211 }
2212
2213 protected function reduceRule323() {
2214 $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2215 }
2216
2217 protected function reduceRule324() {
2218 $this->semValue = new Expr\BinaryOp\Div($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2219 }
2220
2221 protected function reduceRule325() {
2222 $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2223 }
2224
2225 protected function reduceRule326() {
2226 $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2227 }
2228
2229 protected function reduceRule327() {
2230 $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2231 }
2232
2233 protected function reduceRule328() {
2234 $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2235 }
2236
2237 protected function reduceRule329() {
2238 $this->semValue = new Expr\UnaryPlus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2239 }
2240
2241 protected function reduceRule330() {
2242 $this->semValue = new Expr\UnaryMinus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2243 }
2244
2245 protected function reduceRule331() {
2246 $this->semValue = new Expr\BooleanNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2247 }
2248
2249 protected function reduceRule332() {
2250 $this->semValue = new Expr\BitwiseNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2251 }
2252
2253 protected function reduceRule333() {
2254 $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2255 }
2256
2257 protected function reduceRule334() {
2258 $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2259 }
2260
2261 protected function reduceRule335() {
2262 $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2263 }
2264
2265 protected function reduceRule336() {
2266 $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2267 }
2268
2269 protected function reduceRule337() {
2270 $this->semValue = new Expr\BinaryOp\Spaceship($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2271 }
2272
2273 protected function reduceRule338() {
2274 $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2275 }
2276
2277 protected function reduceRule339() {
2278 $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2279 }
2280
2281 protected function reduceRule340() {
2282 $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2283 }
2284
2285 protected function reduceRule341() {
2286 $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2287 }
2288
2289 protected function reduceRule342() {
2290 $this->semValue = new Expr\Instanceof_($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2291 }
2292
2293 protected function reduceRule343() {
2294 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2295 }
2296
2297 protected function reduceRule344() {
2298 $this->semValue = $this->semStack[$this->stackPos-(3-2)];
2299 }
2300
2301 protected function reduceRule345() {
2302 $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(5-1)], $this->semStack[$this->stackPos-(5-3)], $this->semStack[$this->stackPos-(5-5)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
2303 }
2304
2305 protected function reduceRule346() {
2306 $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(4-1)], null, $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2307 }
2308
2309 protected function reduceRule347() {
2310 $this->semValue = new Expr\BinaryOp\Coalesce($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2311 }
2312
2313 protected function reduceRule348() {
2314 $this->semValue = new Expr\Isset_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2315 }
2316
2317 protected function reduceRule349() {
2318 $this->semValue = new Expr\Empty_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2319 }
2320
2321 protected function reduceRule350() {
2322 $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2323 }
2324
2325 protected function reduceRule351() {
2326 $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2327 }
2328
2329 protected function reduceRule352() {
2330 $this->semValue = new Expr\Eval_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2331 }
2332
2333 protected function reduceRule353() {
2334 $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2335 }
2336
2337 protected function reduceRule354() {
2338 $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2339 }
2340
2341 protected function reduceRule355() {
2342 $this->semValue = new Expr\Cast\Int_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2343 }
2344
2345 protected function reduceRule356() {
2346 $this->semValue = new Expr\Cast\Double($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2347 }
2348
2349 protected function reduceRule357() {
2350 $this->semValue = new Expr\Cast\String_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2351 }
2352
2353 protected function reduceRule358() {
2354 $this->semValue = new Expr\Cast\Array_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2355 }
2356
2357 protected function reduceRule359() {
2358 $this->semValue = new Expr\Cast\Object_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2359 }
2360
2361 protected function reduceRule360() {
2362 $this->semValue = new Expr\Cast\Bool_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2363 }
2364
2365 protected function reduceRule361() {
2366 $this->semValue = new Expr\Cast\Unset_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2367 }
2368
2369 protected function reduceRule362() {
2370 $attrs = $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes;
2371 $attrs['kind'] = strtolower($this->semStack[$this->stackPos-(2-1)]) === 'exit' ? Expr\Exit_::KIND_EXIT : Expr\Exit_::KIND_DIE;
2372 $this->semValue = new Expr\Exit_($this->semStack[$this->stackPos-(2-2)], $attrs);
2373 }
2374
2375 protected function reduceRule363() {
2376 $this->semValue = new Expr\ErrorSuppress($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2377 }
2378
2379 protected function reduceRule364() {
2380 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2381 }
2382
2383 protected function reduceRule365() {
2384 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2385 }
2386
2387 protected function reduceRule366() {
2388 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2389 }
2390
2391 protected function reduceRule367() {
2392 $this->semValue = new Expr\ShellExec($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2393 }
2394
2395 protected function reduceRule368() {
2396 $this->semValue = new Expr\Print_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2397 }
2398
2399 protected function reduceRule369() {
2400 $this->semValue = new Expr\Yield_(null, null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2401 }
2402
2403 protected function reduceRule370() {
2404 $this->semValue = new Expr\YieldFrom($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2405 }
2406
2407 protected function reduceRule371() {
2408 $this->semValue = new Expr\Closure(['static' => false, 'byRef' => $this->semStack[$this->stackPos-(10-2)], 'params' => $this->semStack[$this->stackPos-(10-4)], 'uses' => $this->semStack[$this->stackPos-(10-6)], 'returnType' => $this->semStack[$this->stackPos-(10-7)], 'stmts' => $this->semStack[$this->stackPos-(10-9)]], $this->startAttributeStack[$this->stackPos-(10-1)] + $this->endAttributes);
2409 }
2410
2411 protected function reduceRule372() {
2412 $this->semValue = new Expr\Closure(['static' => true, 'byRef' => $this->semStack[$this->stackPos-(11-3)], 'params' => $this->semStack[$this->stackPos-(11-5)], 'uses' => $this->semStack[$this->stackPos-(11-7)], 'returnType' => $this->semStack[$this->stackPos-(11-8)], 'stmts' => $this->semStack[$this->stackPos-(11-10)]], $this->startAttributeStack[$this->stackPos-(11-1)] + $this->endAttributes);
2413 }
2414
2415 protected function reduceRule373() {
2416 $this->semValue = $this->semStack[$this->stackPos-(3-2)];
2417 }
2418
2419 protected function reduceRule374() {
2420 $this->semValue = $this->semStack[$this->stackPos-(3-2)];
2421 }
2422
2423 protected function reduceRule375() {
2424 $this->semValue = new Expr\Yield_($this->semStack[$this->stackPos-(2-2)], null, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2425 }
2426
2427 protected function reduceRule376() {
2428 $this->semValue = new Expr\Yield_($this->semStack[$this->stackPos-(4-4)], $this->semStack[$this->stackPos-(4-2)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2429 }
2430
2431 protected function reduceRule377() {
2432 $attrs = $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes; $attrs['kind'] = Expr\Array_::KIND_LONG;
2433 $this->semValue = new Expr\Array_($this->semStack[$this->stackPos-(4-3)], $attrs);
2434 }
2435
2436 protected function reduceRule378() {
2437 $attrs = $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = Expr\Array_::KIND_SHORT;
2438 $this->semValue = new Expr\Array_($this->semStack[$this->stackPos-(3-2)], $attrs);
2439 }
2440
2441 protected function reduceRule379() {
2442 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2443 }
2444
2445 protected function reduceRule380() {
2446 $attrs = $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes; $attrs['kind'] = ($this->semStack[$this->stackPos-(4-1)][0] === "'" || ($this->semStack[$this->stackPos-(4-1)][1] === "'" && ($this->semStack[$this->stackPos-(4-1)][0] === 'b' || $this->semStack[$this->stackPos-(4-1)][0] === 'B')) ? Scalar\String_::KIND_SINGLE_QUOTED : Scalar\String_::KIND_DOUBLE_QUOTED);
2447 $this->semValue = new Expr\ArrayDimFetch(new Scalar\String_(Scalar\String_::parse($this->semStack[$this->stackPos-(4-1)]), $attrs), $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2448 }
2449
2450 protected function reduceRule381() {
2451 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2452 }
2453
2454 protected function reduceRule382() {
2455 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2456 }
2457
2458 protected function reduceRule383() {
2459 $this->semValue = array(new Stmt\Class_(null, ['type' => 0, 'extends' => $this->semStack[$this->stackPos-(7-3)], 'implements' => $this->semStack[$this->stackPos-(7-4)], 'stmts' => $this->semStack[$this->stackPos-(7-6)]], $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(7-2)]);
2460 $this->checkClass($this->semValue[0], -1);
2461 }
2462
2463 protected function reduceRule384() {
2464 $this->semValue = new Expr\New_($this->semStack[$this->stackPos-(3-2)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2465 }
2466
2467 protected function reduceRule385() {
2468 list($class, $ctorArgs) = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = new Expr\New_($class, $ctorArgs, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2469 }
2470
2471 protected function reduceRule386() {
2472 $this->semValue = array();
2473 }
2474
2475 protected function reduceRule387() {
2476 $this->semValue = $this->semStack[$this->stackPos-(4-3)];
2477 }
2478
2479 protected function reduceRule388() {
2480 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
2481 }
2482
2483 protected function reduceRule389() {
2484 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
2485 }
2486
2487 protected function reduceRule390() {
2488 $this->semValue = new Expr\ClosureUse(substr($this->semStack[$this->stackPos-(2-2)], 1), $this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2489 }
2490
2491 protected function reduceRule391() {
2492 $this->semValue = new Expr\FuncCall($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2493 }
2494
2495 protected function reduceRule392() {
2496 $this->semValue = new Expr\StaticCall($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2497 }
2498
2499 protected function reduceRule393() {
2500 $this->semValue = new Expr\StaticCall($this->semStack[$this->stackPos-(6-1)], $this->semStack[$this->stackPos-(6-4)], $this->semStack[$this->stackPos-(6-6)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes);
2501 }
2502
2503 protected function reduceRule394() {
2504
2505 if ($this->semStack[$this->stackPos-(2-1)] instanceof Node\Expr\StaticPropertyFetch) {
2506 $this->semValue = new Expr\StaticCall($this->semStack[$this->stackPos-(2-1)]->class, new Expr\Variable($this->semStack[$this->stackPos-(2-1)]->name, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2507 } elseif ($this->semStack[$this->stackPos-(2-1)] instanceof Node\Expr\ArrayDimFetch) {
2508 $tmp = $this->semStack[$this->stackPos-(2-1)];
2509 while ($tmp->var instanceof Node\Expr\ArrayDimFetch) {
2510 $tmp = $tmp->var;
2511 }
2512
2513 $this->semValue = new Expr\StaticCall($tmp->var->class, $this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2514 $tmp->var = new Expr\Variable($tmp->var->name, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2515 } else {
2516 throw new \Exception;
2517 }
2518
2519 }
2520
2521 protected function reduceRule395() {
2522 $this->semValue = new Expr\FuncCall($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2523 }
2524
2525 protected function reduceRule396() {
2526 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2527 }
2528
2529 protected function reduceRule397() {
2530 $this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2531 }
2532
2533 protected function reduceRule398() {
2534 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2535 }
2536
2537 protected function reduceRule399() {
2538 $this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2539 }
2540
2541 protected function reduceRule400() {
2542 $this->semValue = new Name\FullyQualified($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2543 }
2544
2545 protected function reduceRule401() {
2546 $this->semValue = new Name\Relative($this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2547 }
2548
2549 protected function reduceRule402() {
2550 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2551 }
2552
2553 protected function reduceRule403() {
2554 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2555 }
2556
2557 protected function reduceRule404() {
2558 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2559 }
2560
2561 protected function reduceRule405() {
2562 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2563 }
2564
2565 protected function reduceRule406() {
2566 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2567 }
2568
2569 protected function reduceRule407() {
2570 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2571 }
2572
2573 protected function reduceRule408() {
2574 $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2575 }
2576
2577 protected function reduceRule409() {
2578 $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2579 }
2580
2581 protected function reduceRule410() {
2582 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2583 }
2584
2585 protected function reduceRule411() {
2586 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2587 }
2588
2589 protected function reduceRule412() {
2590 $this->semValue = null;
2591 }
2592
2593 protected function reduceRule413() {
2594 $this->semValue = null;
2595 }
2596
2597 protected function reduceRule414() {
2598 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2599 }
2600
2601 protected function reduceRule415() {
2602 $this->semValue = array();
2603 }
2604
2605 protected function reduceRule416() {
2606 $this->semValue = array(new Scalar\EncapsedStringPart(Scalar\String_::parseEscapeSequences($this->semStack[$this->stackPos-(1-1)], '`', false), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes));
2607 }
2608
2609 protected function reduceRule417() {
2610 foreach ($this->semStack[$this->stackPos-(1-1)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', false); } }; $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2611 }
2612
2613 protected function reduceRule418() {
2614 $this->semValue = array();
2615 }
2616
2617 protected function reduceRule419() {
2618 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2619 }
2620
2621 protected function reduceRule420() {
2622 $this->semValue = $this->parseLNumber($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes, true);
2623 }
2624
2625 protected function reduceRule421() {
2626 $this->semValue = new Scalar\DNumber(Scalar\DNumber::parse($this->semStack[$this->stackPos-(1-1)]), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2627 }
2628
2629 protected function reduceRule422() {
2630 $attrs = $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes; $attrs['kind'] = ($this->semStack[$this->stackPos-(1-1)][0] === "'" || ($this->semStack[$this->stackPos-(1-1)][1] === "'" && ($this->semStack[$this->stackPos-(1-1)][0] === 'b' || $this->semStack[$this->stackPos-(1-1)][0] === 'B')) ? Scalar\String_::KIND_SINGLE_QUOTED : Scalar\String_::KIND_DOUBLE_QUOTED);
2631 $this->semValue = new Scalar\String_(Scalar\String_::parse($this->semStack[$this->stackPos-(1-1)], false), $attrs);
2632 }
2633
2634 protected function reduceRule423() {
2635 $this->semValue = new Scalar\MagicConst\Line($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2636 }
2637
2638 protected function reduceRule424() {
2639 $this->semValue = new Scalar\MagicConst\File($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2640 }
2641
2642 protected function reduceRule425() {
2643 $this->semValue = new Scalar\MagicConst\Dir($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2644 }
2645
2646 protected function reduceRule426() {
2647 $this->semValue = new Scalar\MagicConst\Class_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2648 }
2649
2650 protected function reduceRule427() {
2651 $this->semValue = new Scalar\MagicConst\Trait_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2652 }
2653
2654 protected function reduceRule428() {
2655 $this->semValue = new Scalar\MagicConst\Method($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2656 }
2657
2658 protected function reduceRule429() {
2659 $this->semValue = new Scalar\MagicConst\Function_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2660 }
2661
2662 protected function reduceRule430() {
2663 $this->semValue = new Scalar\MagicConst\Namespace_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2664 }
2665
2666 protected function reduceRule431() {
2667 $attrs = $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$this->stackPos-(3-1)], "'") === false ? Scalar\String_::KIND_HEREDOC : Scalar\String_::KIND_NOWDOC; preg_match('/\A[bB]?<<<[ \t]*[\'"]?([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)[\'"]?(?:\r\n|\n|\r)\z/', $this->semStack[$this->stackPos-(3-1)], $matches); $attrs['docLabel'] = $matches[1];;
2668 $this->semValue = new Scalar\String_(Scalar\String_::parseDocString($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-2)], false), $attrs);
2669 }
2670
2671 protected function reduceRule432() {
2672 $attrs = $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$this->stackPos-(2-1)], "'") === false ? Scalar\String_::KIND_HEREDOC : Scalar\String_::KIND_NOWDOC; preg_match('/\A[bB]?<<<[ \t]*[\'"]?([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)[\'"]?(?:\r\n|\n|\r)\z/', $this->semStack[$this->stackPos-(2-1)], $matches); $attrs['docLabel'] = $matches[1];;
2673 $this->semValue = new Scalar\String_('', $attrs);
2674 }
2675
2676 protected function reduceRule433() {
2677 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2678 }
2679
2680 protected function reduceRule434() {
2681 $this->semValue = new Expr\ClassConstFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2682 }
2683
2684 protected function reduceRule435() {
2685 $this->semValue = new Expr\ConstFetch($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2686 }
2687
2688 protected function reduceRule436() {
2689 $this->semValue = new Expr\Array_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2690 }
2691
2692 protected function reduceRule437() {
2693 $this->semValue = new Expr\Array_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2694 }
2695
2696 protected function reduceRule438() {
2697 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2698 }
2699
2700 protected function reduceRule439() {
2701 $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2702 }
2703
2704 protected function reduceRule440() {
2705 $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2706 }
2707
2708 protected function reduceRule441() {
2709 $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2710 }
2711
2712 protected function reduceRule442() {
2713 $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2714 }
2715
2716 protected function reduceRule443() {
2717 $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2718 }
2719
2720 protected function reduceRule444() {
2721 $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2722 }
2723
2724 protected function reduceRule445() {
2725 $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2726 }
2727
2728 protected function reduceRule446() {
2729 $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2730 }
2731
2732 protected function reduceRule447() {
2733 $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2734 }
2735
2736 protected function reduceRule448() {
2737 $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2738 }
2739
2740 protected function reduceRule449() {
2741 $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2742 }
2743
2744 protected function reduceRule450() {
2745 $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2746 }
2747
2748 protected function reduceRule451() {
2749 $this->semValue = new Expr\BinaryOp\Div($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2750 }
2751
2752 protected function reduceRule452() {
2753 $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2754 }
2755
2756 protected function reduceRule453() {
2757 $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2758 }
2759
2760 protected function reduceRule454() {
2761 $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2762 }
2763
2764 protected function reduceRule455() {
2765 $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2766 }
2767
2768 protected function reduceRule456() {
2769 $this->semValue = new Expr\UnaryPlus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2770 }
2771
2772 protected function reduceRule457() {
2773 $this->semValue = new Expr\UnaryMinus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2774 }
2775
2776 protected function reduceRule458() {
2777 $this->semValue = new Expr\BooleanNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2778 }
2779
2780 protected function reduceRule459() {
2781 $this->semValue = new Expr\BitwiseNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2782 }
2783
2784 protected function reduceRule460() {
2785 $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2786 }
2787
2788 protected function reduceRule461() {
2789 $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2790 }
2791
2792 protected function reduceRule462() {
2793 $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2794 }
2795
2796 protected function reduceRule463() {
2797 $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2798 }
2799
2800 protected function reduceRule464() {
2801 $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2802 }
2803
2804 protected function reduceRule465() {
2805 $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2806 }
2807
2808 protected function reduceRule466() {
2809 $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2810 }
2811
2812 protected function reduceRule467() {
2813 $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2814 }
2815
2816 protected function reduceRule468() {
2817 $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(5-1)], $this->semStack[$this->stackPos-(5-3)], $this->semStack[$this->stackPos-(5-5)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
2818 }
2819
2820 protected function reduceRule469() {
2821 $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(4-1)], null, $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2822 }
2823
2824 protected function reduceRule470() {
2825 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2826 }
2827
2828 protected function reduceRule471() {
2829 $this->semValue = $this->semStack[$this->stackPos-(3-2)];
2830 }
2831
2832 protected function reduceRule472() {
2833 $this->semValue = new Expr\ConstFetch($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2834 }
2835
2836 protected function reduceRule473() {
2837 $this->semValue = new Expr\ClassConstFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2838 }
2839
2840 protected function reduceRule474() {
2841 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2842 }
2843
2844 protected function reduceRule475() {
2845 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2846 }
2847
2848 protected function reduceRule476() {
2849 $attrs = $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = Scalar\String_::KIND_DOUBLE_QUOTED;
2850 foreach ($this->semStack[$this->stackPos-(3-2)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '"', true); } }; $this->semValue = new Scalar\Encapsed($this->semStack[$this->stackPos-(3-2)], $attrs);
2851 }
2852
2853 protected function reduceRule477() {
2854 $attrs = $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$this->stackPos-(3-1)], "'") === false ? Scalar\String_::KIND_HEREDOC : Scalar\String_::KIND_NOWDOC; preg_match('/\A[bB]?<<<[ \t]*[\'"]?([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)[\'"]?(?:\r\n|\n|\r)\z/', $this->semStack[$this->stackPos-(3-1)], $matches); $attrs['docLabel'] = $matches[1];;
2855 foreach ($this->semStack[$this->stackPos-(3-2)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, null, true); } } $s->value = preg_replace('~(\r\n|\n|\r)\z~', '', $s->value); if ('' === $s->value) array_pop($this->semStack[$this->stackPos-(3-2)]);; $this->semValue = new Scalar\Encapsed($this->semStack[$this->stackPos-(3-2)], $attrs);
2856 }
2857
2858 protected function reduceRule478() {
2859 $this->semValue = array();
2860 }
2861
2862 protected function reduceRule479() {
2863 $this->semValue = $this->semStack[$this->stackPos-(2-1)];
2864 }
2865
2866 protected function reduceRule480() {
2867 $this->semValue = $this->semStack[$this->stackPos];
2868 }
2869
2870 protected function reduceRule481() {
2871 $this->semValue = $this->semStack[$this->stackPos];
2872 }
2873
2874 protected function reduceRule482() {
2875 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
2876 }
2877
2878 protected function reduceRule483() {
2879 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
2880 }
2881
2882 protected function reduceRule484() {
2883 $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(3-3)], $this->semStack[$this->stackPos-(3-1)], false, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2884 }
2885
2886 protected function reduceRule485() {
2887 $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2888 }
2889
2890 protected function reduceRule486() {
2891 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2892 }
2893
2894 protected function reduceRule487() {
2895 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2896 }
2897
2898 protected function reduceRule488() {
2899 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2900 }
2901
2902 protected function reduceRule489() {
2903 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2904 }
2905
2906 protected function reduceRule490() {
2907 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(6-2)], $this->semStack[$this->stackPos-(6-5)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes);
2908 }
2909
2910 protected function reduceRule491() {
2911 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2912 }
2913
2914 protected function reduceRule492() {
2915 $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2916 }
2917
2918 protected function reduceRule493() {
2919 $this->semValue = new Expr\MethodCall($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2920 }
2921
2922 protected function reduceRule494() {
2923 $this->semValue = new Expr\FuncCall($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2924 }
2925
2926 protected function reduceRule495() {
2927 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2928 }
2929
2930 protected function reduceRule496() {
2931 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2932 }
2933
2934 protected function reduceRule497() {
2935 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2936 }
2937
2938 protected function reduceRule498() {
2939 $this->semValue = $this->semStack[$this->stackPos-(3-2)];
2940 }
2941
2942 protected function reduceRule499() {
2943 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2944 }
2945
2946 protected function reduceRule500() {
2947 $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
2948 }
2949
2950 protected function reduceRule501() {
2951 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2952 }
2953
2954 protected function reduceRule502() {
2955 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2956 }
2957
2958 protected function reduceRule503() {
2959 $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2960 }
2961
2962 protected function reduceRule504() {
2963 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
2964 }
2965
2966 protected function reduceRule505() {
2967 $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(3-1)], substr($this->semStack[$this->stackPos-(3-3)], 1), $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
2968 }
2969
2970 protected function reduceRule506() {
2971 $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(6-1)], $this->semStack[$this->stackPos-(6-5)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes);
2972 }
2973
2974 protected function reduceRule507() {
2975 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2976 }
2977
2978 protected function reduceRule508() {
2979 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2980 }
2981
2982 protected function reduceRule509() {
2983 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2984 }
2985
2986 protected function reduceRule510() {
2987 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2988 }
2989
2990 protected function reduceRule511() {
2991 $this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
2992 }
2993
2994 protected function reduceRule512() {
2995 $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
2996 }
2997
2998 protected function reduceRule513() {
2999 $this->semValue = null;
3000 }
3001
3002 protected function reduceRule514() {
3003 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
3004 }
3005
3006 protected function reduceRule515() {
3007 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
3008 }
3009
3010 protected function reduceRule516() {
3011 $this->semValue = $this->semStack[$this->stackPos-(3-2)];
3012 }
3013
3014 protected function reduceRule517() {
3015 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
3016 }
3017
3018 protected function reduceRule518() {
3019 $this->semValue = new Expr\Error($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); $this->errorState = 2;
3020 }
3021
3022 protected function reduceRule519() {
3023 $this->semValue = new Expr\List_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
3024 }
3025
3026 protected function reduceRule520() {
3027 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
3028 }
3029
3030 protected function reduceRule521() {
3031 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
3032 }
3033
3034 protected function reduceRule522() {
3035 $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
3036 }
3037
3038 protected function reduceRule523() {
3039 $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
3040 }
3041
3042 protected function reduceRule524() {
3043 $this->semValue = null;
3044 }
3045
3046 protected function reduceRule525() {
3047 $this->semValue = array();
3048 }
3049
3050 protected function reduceRule526() {
3051 $this->semValue = $this->semStack[$this->stackPos-(2-1)];
3052 }
3053
3054 protected function reduceRule527() {
3055 $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
3056 }
3057
3058 protected function reduceRule528() {
3059 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
3060 }
3061
3062 protected function reduceRule529() {
3063 $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(3-3)], $this->semStack[$this->stackPos-(3-1)], false, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
3064 }
3065
3066 protected function reduceRule530() {
3067 $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
3068 }
3069
3070 protected function reduceRule531() {
3071 $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(4-4)], $this->semStack[$this->stackPos-(4-1)], true, $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
3072 }
3073
3074 protected function reduceRule532() {
3075 $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(2-2)], null, true, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
3076 }
3077
3078 protected function reduceRule533() {
3079 $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
3080 }
3081
3082 protected function reduceRule534() {
3083 $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
3084 }
3085
3086 protected function reduceRule535() {
3087 $this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
3088 }
3089
3090 protected function reduceRule536() {
3091 $this->semValue = array($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)]);
3092 }
3093
3094 protected function reduceRule537() {
3095 $this->semValue = new Scalar\EncapsedStringPart($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
3096 }
3097
3098 protected function reduceRule538() {
3099 $this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
3100 }
3101
3102 protected function reduceRule539() {
3103 $this->semValue = $this->semStack[$this->stackPos-(1-1)];
3104 }
3105
3106 protected function reduceRule540() {
3107 $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
3108 }
3109
3110 protected function reduceRule541() {
3111 $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
3112 }
3113
3114 protected function reduceRule542() {
3115 $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
3116 }
3117
3118 protected function reduceRule543() {
3119 $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
3120 }
3121
3122 protected function reduceRule544() {
3123 $this->semValue = new Expr\ArrayDimFetch(new Expr\Variable($this->semStack[$this->stackPos-(6-2)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(6-4)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes);
3124 }
3125
3126 protected function reduceRule545() {
3127 $this->semValue = $this->semStack[$this->stackPos-(3-2)];
3128 }
3129
3130 protected function reduceRule546() {
3131 $this->semValue = new Scalar\String_($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
3132 }
3133
3134 protected function reduceRule547() {
3135 $this->semValue = $this->parseNumString($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
3136 }
3137
3138 protected function reduceRule548() {
3139 $this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
3140 }
3141 }