Php7.php 164 KB

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