Php7.php 136 KB

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