Php8.php 189 KB

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