Php5.php 154 KB

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