Php7.php 145 KB

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