Subversion-Projekte lars-tiefland.laravel_shop

Revision

Revision 150 | Zur aktuellen Revision | Details | Letzte Änderung | Log anzeigen | RSS feed

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