Php7.php 178 KB

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