guard-mthaml 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (341) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +34 -0
  3. data/lib/guard/mthaml.rb +140 -0
  4. data/lib/guard/mthaml/compiler/MtHaml.php +255 -0
  5. data/lib/guard/mthaml/templates/Guardfile +12 -0
  6. data/lib/guard/mthaml/version.rb +5 -0
  7. data/vendor/autoload.php +7 -0
  8. data/vendor/coffeescript/coffeescript/LICENSE +22 -0
  9. data/vendor/coffeescript/coffeescript/README.md +96 -0
  10. data/vendor/coffeescript/coffeescript/composer.json +23 -0
  11. data/vendor/coffeescript/coffeescript/grammar.y +309 -0
  12. data/vendor/coffeescript/coffeescript/make.php +115 -0
  13. data/vendor/coffeescript/coffeescript/src/CoffeeScript/Compiler.php +76 -0
  14. data/vendor/coffeescript/coffeescript/src/CoffeeScript/Error.php +15 -0
  15. data/vendor/coffeescript/coffeescript/src/CoffeeScript/Helpers.php +116 -0
  16. data/vendor/coffeescript/coffeescript/src/CoffeeScript/Init.php +96 -0
  17. data/vendor/coffeescript/coffeescript/src/CoffeeScript/Lexer.php +1356 -0
  18. data/vendor/coffeescript/coffeescript/src/CoffeeScript/Nodes.php +105 -0
  19. data/vendor/coffeescript/coffeescript/src/CoffeeScript/Parser.php +3326 -0
  20. data/vendor/coffeescript/coffeescript/src/CoffeeScript/Rewriter.php +552 -0
  21. data/vendor/coffeescript/coffeescript/src/CoffeeScript/Scope.php +196 -0
  22. data/vendor/coffeescript/coffeescript/src/CoffeeScript/SyntaxError.php +9 -0
  23. data/vendor/coffeescript/coffeescript/src/CoffeeScript/Value.php +20 -0
  24. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Access.php +31 -0
  25. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Arr.php +69 -0
  26. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Assign.php +353 -0
  27. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Base.php +288 -0
  28. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Block.php +294 -0
  29. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Call.php +283 -0
  30. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Class.php +282 -0
  31. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Closure.php +49 -0
  32. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Code.php +203 -0
  33. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Comment.php +39 -0
  34. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Existence.php +42 -0
  35. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Extends.php +26 -0
  36. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/For.php +250 -0
  37. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/If.php +161 -0
  38. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/In.php +99 -0
  39. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Index.php +27 -0
  40. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Literal.php +96 -0
  41. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Obj.php +126 -0
  42. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Op.php +292 -0
  43. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Param.php +119 -0
  44. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Parens.php +45 -0
  45. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Range.php +225 -0
  46. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Return.php +56 -0
  47. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Slice.php +47 -0
  48. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Splat.php +100 -0
  49. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Switch.php +121 -0
  50. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Throw.php +37 -0
  51. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Try.php +79 -0
  52. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Value.php +210 -0
  53. data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/While.php +112 -0
  54. data/vendor/coffeescript/coffeescript/tests/cases/arrays.coffee +77 -0
  55. data/vendor/coffeescript/coffeescript/tests/cases/assignment.coffee +352 -0
  56. data/vendor/coffeescript/coffeescript/tests/cases/booleans.coffee +21 -0
  57. data/vendor/coffeescript/coffeescript/tests/cases/classes.coffee +681 -0
  58. data/vendor/coffeescript/coffeescript/tests/cases/comments.coffee +207 -0
  59. data/vendor/coffeescript/coffeescript/tests/cases/compilation.coffee +72 -0
  60. data/vendor/coffeescript/coffeescript/tests/cases/comprehensions.coffee +501 -0
  61. data/vendor/coffeescript/coffeescript/tests/cases/control_flow.coffee +430 -0
  62. data/vendor/coffeescript/coffeescript/tests/cases/eval.coffee +29 -0
  63. data/vendor/coffeescript/coffeescript/tests/cases/exception_handling.coffee +102 -0
  64. data/vendor/coffeescript/coffeescript/tests/cases/formatting.coffee +146 -0
  65. data/vendor/coffeescript/coffeescript/tests/cases/function_invocation.coffee +552 -0
  66. data/vendor/coffeescript/coffeescript/tests/cases/functions.coffee +188 -0
  67. data/vendor/coffeescript/coffeescript/tests/cases/helpers.coffee +96 -0
  68. data/vendor/coffeescript/coffeescript/tests/cases/importing.coffee +18 -0
  69. data/vendor/coffeescript/coffeescript/tests/cases/interpolation.coffee +138 -0
  70. data/vendor/coffeescript/coffeescript/tests/cases/javascript_literals.coffee +10 -0
  71. data/vendor/coffeescript/coffeescript/tests/cases/numbers.coffee +76 -0
  72. data/vendor/coffeescript/coffeescript/tests/cases/objects.coffee +271 -0
  73. data/vendor/coffeescript/coffeescript/tests/cases/operators.coffee +277 -0
  74. data/vendor/coffeescript/coffeescript/tests/cases/option_parser.coffee +43 -0
  75. data/vendor/coffeescript/coffeescript/tests/cases/ranges.coffee +88 -0
  76. data/vendor/coffeescript/coffeescript/tests/cases/regexps.coffee +63 -0
  77. data/vendor/coffeescript/coffeescript/tests/cases/scope.coffee +43 -0
  78. data/vendor/coffeescript/coffeescript/tests/cases/slicing_and_splicing.coffee +143 -0
  79. data/vendor/coffeescript/coffeescript/tests/cases/soaks.coffee +134 -0
  80. data/vendor/coffeescript/coffeescript/tests/cases/strict.coffee +155 -0
  81. data/vendor/coffeescript/coffeescript/tests/cases/strings.coffee +107 -0
  82. data/vendor/coffeescript/coffeescript/tests/css/style.css +43 -0
  83. data/vendor/coffeescript/coffeescript/tests/index.php +119 -0
  84. data/vendor/coffeescript/coffeescript/tests/js/lib/coffeescript_1.1.1.js +8 -0
  85. data/vendor/coffeescript/coffeescript/tests/js/lib/coffeescript_1.2.0.js +8 -0
  86. data/vendor/coffeescript/coffeescript/tests/js/lib/coffeescript_1.3.0.js +8 -0
  87. data/vendor/coffeescript/coffeescript/tests/js/lib/coffeescript_1.3.1.js +8 -0
  88. data/vendor/coffeescript/coffeescript/tests/js/lib/diff.js +276 -0
  89. data/vendor/coffeescript/coffeescript/tests/js/main.js +123 -0
  90. data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/LICENSE.txt +10 -0
  91. data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/Lempar.php +948 -0
  92. data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/Action.php +257 -0
  93. data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/ActionTable.php +299 -0
  94. data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/Config.php +574 -0
  95. data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/Data.php +1857 -0
  96. data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/Parser.php +851 -0
  97. data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/PropagationLink.php +126 -0
  98. data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/Rule.php +144 -0
  99. data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/State.php +283 -0
  100. data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/Symbol.php +288 -0
  101. data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/cli.php +5 -0
  102. data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/ParserGenerator.php +811 -0
  103. data/vendor/composer/ClassLoader.php +383 -0
  104. data/vendor/composer/autoload_classmap.php +9 -0
  105. data/vendor/composer/autoload_namespaces.php +12 -0
  106. data/vendor/composer/autoload_psr4.php +10 -0
  107. data/vendor/composer/autoload_real.php +50 -0
  108. data/vendor/composer/installed.json +166 -0
  109. data/vendor/michelf/php-markdown/License.md +36 -0
  110. data/vendor/michelf/php-markdown/Michelf/Markdown.inc.php +10 -0
  111. data/vendor/michelf/php-markdown/Michelf/Markdown.php +3117 -0
  112. data/vendor/michelf/php-markdown/Michelf/MarkdownExtra.inc.php +11 -0
  113. data/vendor/michelf/php-markdown/Michelf/MarkdownExtra.php +38 -0
  114. data/vendor/michelf/php-markdown/Michelf/MarkdownInterface.inc.php +9 -0
  115. data/vendor/michelf/php-markdown/Michelf/MarkdownInterface.php +37 -0
  116. data/vendor/michelf/php-markdown/Readme.md +305 -0
  117. data/vendor/michelf/php-markdown/Readme.php +31 -0
  118. data/vendor/michelf/php-markdown/composer.json +31 -0
  119. data/vendor/mthaml/mthaml/CHANGELOG +48 -0
  120. data/vendor/mthaml/mthaml/LICENSE +44 -0
  121. data/vendor/mthaml/mthaml/README.markdown +262 -0
  122. data/vendor/mthaml/mthaml/composer.json +45 -0
  123. data/vendor/mthaml/mthaml/docs/Makefile +153 -0
  124. data/vendor/mthaml/mthaml/docs/_static/mthaml.css +30 -0
  125. data/vendor/mthaml/mthaml/docs/_theme/mthaml/theme.conf +4 -0
  126. data/vendor/mthaml/mthaml/docs/conf.py +242 -0
  127. data/vendor/mthaml/mthaml/docs/index.rst +18 -0
  128. data/vendor/mthaml/mthaml/docs/twig-syntax.rst +274 -0
  129. data/vendor/mthaml/mthaml/examples/README.md +5 -0
  130. data/vendor/mthaml/mthaml/examples/autoload.php +8 -0
  131. data/vendor/mthaml/mthaml/examples/example-php.haml +5 -0
  132. data/vendor/mthaml/mthaml/examples/example-php.php +37 -0
  133. data/vendor/mthaml/mthaml/examples/example-twig-noext.twig +11 -0
  134. data/vendor/mthaml/mthaml/examples/example-twig.haml +9 -0
  135. data/vendor/mthaml/mthaml/examples/example-twig.php +60 -0
  136. data/vendor/mthaml/mthaml/examples/example.twig.haml +8 -0
  137. data/vendor/mthaml/mthaml/lib/MtHaml/Autoloader.php +22 -0
  138. data/vendor/mthaml/mthaml/lib/MtHaml/Environment.php +178 -0
  139. data/vendor/mthaml/mthaml/lib/MtHaml/Escaping.php +33 -0
  140. data/vendor/mthaml/mthaml/lib/MtHaml/Exception.php +9 -0
  141. data/vendor/mthaml/mthaml/lib/MtHaml/Exception/SyntaxErrorException.php +9 -0
  142. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/AbstractFilter.php +43 -0
  143. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Cdata.php +16 -0
  144. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/CoffeeScript.php +33 -0
  145. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Css.php +26 -0
  146. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Escaped.php +22 -0
  147. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/FilterInterface.php +15 -0
  148. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Javascript.php +26 -0
  149. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Less.php +27 -0
  150. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Less/LeafoLess.php +20 -0
  151. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Less/OyejorgeLess.php +23 -0
  152. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Markdown.php +58 -0
  153. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Markdown/CebeMarkdown.php +22 -0
  154. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Markdown/Ciconia.php +21 -0
  155. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Markdown/MichelfMarkdown.php +21 -0
  156. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Markdown/Parsedown.php +21 -0
  157. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Php.php +37 -0
  158. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Plain.php +24 -0
  159. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Preserve.php +19 -0
  160. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Scss.php +37 -0
  161. data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Twig.php +47 -0
  162. data/vendor/mthaml/mthaml/lib/MtHaml/Indentation/Indentation.php +96 -0
  163. data/vendor/mthaml/mthaml/lib/MtHaml/Indentation/IndentationException.php +9 -0
  164. data/vendor/mthaml/mthaml/lib/MtHaml/Indentation/IndentationInterface.php +50 -0
  165. data/vendor/mthaml/mthaml/lib/MtHaml/Indentation/Undefined.php +41 -0
  166. data/vendor/mthaml/mthaml/lib/MtHaml/Node/Comment.php +71 -0
  167. data/vendor/mthaml/mthaml/lib/MtHaml/Node/Doctype.php +96 -0
  168. data/vendor/mthaml/mthaml/lib/MtHaml/Node/EscapableAbstract.php +19 -0
  169. data/vendor/mthaml/mthaml/lib/MtHaml/Node/Filter.php +51 -0
  170. data/vendor/mthaml/mthaml/lib/MtHaml/Node/Insert.php +42 -0
  171. data/vendor/mthaml/mthaml/lib/MtHaml/Node/InterpolatedString.php +73 -0
  172. data/vendor/mthaml/mthaml/lib/MtHaml/Node/NestAbstract.php +117 -0
  173. data/vendor/mthaml/mthaml/lib/MtHaml/Node/NestInterface.php +10 -0
  174. data/vendor/mthaml/mthaml/lib/MtHaml/Node/NodeAbstract.php +77 -0
  175. data/vendor/mthaml/mthaml/lib/MtHaml/Node/ObjectRefClass.php +42 -0
  176. data/vendor/mthaml/mthaml/lib/MtHaml/Node/ObjectRefId.php +42 -0
  177. data/vendor/mthaml/mthaml/lib/MtHaml/Node/Root.php +35 -0
  178. data/vendor/mthaml/mthaml/lib/MtHaml/Node/Run.php +71 -0
  179. data/vendor/mthaml/mthaml/lib/MtHaml/Node/Statement.php +45 -0
  180. data/vendor/mthaml/mthaml/lib/MtHaml/Node/Tag.php +90 -0
  181. data/vendor/mthaml/mthaml/lib/MtHaml/Node/TagAttribute.php +62 -0
  182. data/vendor/mthaml/mthaml/lib/MtHaml/Node/TagAttributeInterpolation.php +24 -0
  183. data/vendor/mthaml/mthaml/lib/MtHaml/Node/TagAttributeList.php +24 -0
  184. data/vendor/mthaml/mthaml/lib/MtHaml/Node/Text.php +37 -0
  185. data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/Autoclose.php +25 -0
  186. data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/Escaping.php +105 -0
  187. data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/MergeAttrs.php +110 -0
  188. data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/Midblock.php +37 -0
  189. data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/NodeVisitorAbstract.php +226 -0
  190. data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/NodeVisitorInterface.php +97 -0
  191. data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/PhpRenderer.php +288 -0
  192. data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/Printer.php +265 -0
  193. data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/RendererAbstract.php +581 -0
  194. data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/TwigRenderer.php +252 -0
  195. data/vendor/mthaml/mthaml/lib/MtHaml/Parser.php +862 -0
  196. data/vendor/mthaml/mthaml/lib/MtHaml/Parser/Buffer.php +147 -0
  197. data/vendor/mthaml/mthaml/lib/MtHaml/Runtime.php +218 -0
  198. data/vendor/mthaml/mthaml/lib/MtHaml/Runtime/AttributeInterpolation.php +16 -0
  199. data/vendor/mthaml/mthaml/lib/MtHaml/Runtime/AttributeList.php +16 -0
  200. data/vendor/mthaml/mthaml/lib/MtHaml/Support/Php/Executor.php +157 -0
  201. data/vendor/mthaml/mthaml/lib/MtHaml/Support/Twig/Extension.php +47 -0
  202. data/vendor/mthaml/mthaml/lib/MtHaml/Support/Twig/Lexer.php +48 -0
  203. data/vendor/mthaml/mthaml/lib/MtHaml/Support/Twig/Loader.php +81 -0
  204. data/vendor/mthaml/mthaml/lib/MtHaml/Target/Php.php +23 -0
  205. data/vendor/mthaml/mthaml/lib/MtHaml/Target/TargetAbstract.php +87 -0
  206. data/vendor/mthaml/mthaml/lib/MtHaml/Target/TargetInterface.php +12 -0
  207. data/vendor/mthaml/mthaml/lib/MtHaml/Target/Twig.php +23 -0
  208. data/vendor/mthaml/mthaml/lib/MtHaml/TreeBuilder.php +100 -0
  209. data/vendor/mthaml/mthaml/lib/MtHaml/TreeBuilderException.php +9 -0
  210. data/vendor/mthaml/mthaml/phpunit.xml +25 -0
  211. data/vendor/mthaml/mthaml/test/MtHaml/Tests/EnvironmentTest.php +59 -0
  212. data/vendor/mthaml/mthaml/test/MtHaml/Tests/HamlSpecTest.php +83 -0
  213. data/vendor/mthaml/mthaml/test/MtHaml/Tests/IndentationTest.php +140 -0
  214. data/vendor/mthaml/mthaml/test/MtHaml/Tests/Node/DoctypeTest.php +51 -0
  215. data/vendor/mthaml/mthaml/test/MtHaml/Tests/Node/NodeTest.php +110 -0
  216. data/vendor/mthaml/mthaml/test/MtHaml/Tests/NodeVisitor/PhpRendererTest.php +113 -0
  217. data/vendor/mthaml/mthaml/test/MtHaml/Tests/NodeVisitor/TwigRendererTest.php +68 -0
  218. data/vendor/mthaml/mthaml/test/MtHaml/Tests/NodeVisitorsTest.php +44 -0
  219. data/vendor/mthaml/mthaml/test/MtHaml/Tests/Parser/BufferTest.php +77 -0
  220. data/vendor/mthaml/mthaml/test/MtHaml/Tests/ParserTest.php +47 -0
  221. data/vendor/mthaml/mthaml/test/MtHaml/Tests/RuntimeTest.php +356 -0
  222. data/vendor/mthaml/mthaml/test/MtHaml/Tests/Support/Php/ExecutorTest.php +83 -0
  223. data/vendor/mthaml/mthaml/test/MtHaml/Tests/Support/Twig/LoaderTest.php +65 -0
  224. data/vendor/mthaml/mthaml/test/MtHaml/Tests/TestCase.php +49 -0
  225. data/vendor/mthaml/mthaml/test/MtHaml/Tests/TestCaseTest.php +50 -0
  226. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/Support/Php/Executor.001.haml +1 -0
  227. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/attr_list_php.test +20 -0
  228. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/attr_list_twig.test +12 -0
  229. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/boolean_attr_php.test +16 -0
  230. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/boolean_attr_twig.test +16 -0
  231. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/bug28_php.test +15 -0
  232. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/bug28_twig.test +15 -0
  233. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/bug42.test +13 -0
  234. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/bug8_twig.test +10 -0
  235. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/coffeescript_filter.test +31 -0
  236. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/comments.test +26 -0
  237. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/cond_cmt.test +25 -0
  238. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/doctype.test +18 -0
  239. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/doctype_html4.test +20 -0
  240. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/doctype_invalid.test +12 -0
  241. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/doctype_invalid_xhtml.test +12 -0
  242. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/doctype_php.test +18 -0
  243. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/doctype_xhtml.test +30 -0
  244. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/filters.test +51 -0
  245. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/insert_non_echo_php.test +11 -0
  246. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/insert_non_echo_twig.test +11 -0
  247. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/interpolation_in_html_attrs_php.test +31 -0
  248. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/interpolation_in_html_attrs_twig.test +31 -0
  249. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/less_filter_leafo.test +33 -0
  250. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/less_filter_oyejorge.test +49 -0
  251. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/markdown_filter_cebemarkdown.test +35 -0
  252. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/markdown_filter_ciconia.test +36 -0
  253. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/markdown_filter_michelf.test +34 -0
  254. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/markdown_filter_parsedown.test +31 -0
  255. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/markdown_optimization_filter_michelf.test +23 -0
  256. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/mergeattrs.test +18 -0
  257. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/nuke_inner_whitespace.test +77 -0
  258. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/nuke_outer_whitespace.test +122 -0
  259. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/object_ref_php.test +14 -0
  260. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/object_ref_twig.test +14 -0
  261. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/php.test +109 -0
  262. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/php_autoescaping.test +22 -0
  263. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/php_autoescaping_once.test +25 -0
  264. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/php_blocks.test +29 -0
  265. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/php_filters.test +42 -0
  266. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/scss_filter.test +32 -0
  267. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/strip_inline_comments_php.test +22 -0
  268. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/test.test +24 -0
  269. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/trailing_semicolon_php.test +14 -0
  270. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/try_catch_php.test +17 -0
  271. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/twig.test +112 -0
  272. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/twig_blocks.test +29 -0
  273. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/twig_filters.test +37 -0
  274. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/twig_whitespace.test +32 -0
  275. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/whitespace.test +63 -0
  276. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/nodevisitors/autoclose.test +30 -0
  277. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/nodevisitors/escaping.test +52 -0
  278. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/nodevisitors/escaping_attr_once.test +52 -0
  279. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/nodevisitors/escaping_html_false.test +52 -0
  280. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/nodevisitors/mergeattrs.test +26 -0
  281. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/nodevisitors/midblock.test +54 -0
  282. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/nodevisitors/midblock_002.test +32 -0
  283. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/attr_list.test +14 -0
  284. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/attrs.test +42 -0
  285. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/attrs_002.test +35 -0
  286. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/attrs_003.test +30 -0
  287. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/attrs_html_linebreak.test +17 -0
  288. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/blocks.test +27 -0
  289. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/blocks_002.test +15 -0
  290. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/boolean_attr.test +19 -0
  291. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/bug28.test +15 -0
  292. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/bug8.test +11 -0
  293. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/cond_cmt.test +23 -0
  294. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/doctype.test +11 -0
  295. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/double_equal.test +7 -0
  296. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/empty_line_after_multiline.test +10 -0
  297. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_001.test +8 -0
  298. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_002.test +8 -0
  299. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_003.test +8 -0
  300. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_004.test +6 -0
  301. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_005.test +5 -0
  302. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_006.test +7 -0
  303. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_007.test +7 -0
  304. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_008.test +7 -0
  305. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_009.test +5 -0
  306. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_010.test +5 -0
  307. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_013.test +5 -0
  308. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_016.test +7 -0
  309. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_017.test +8 -0
  310. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_018.test +6 -0
  311. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_019.test +6 -0
  312. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_020.test +5 -0
  313. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/filters.test +20 -0
  314. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/filters_002.test +19 -0
  315. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/filters_003.test +13 -0
  316. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/filters_004.test +21 -0
  317. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/filters_005.test +22 -0
  318. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/filters_006.test +23 -0
  319. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/insertflags.test +17 -0
  320. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/interpolation.test +36 -0
  321. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/interpolation_in_html_attrs.test +17 -0
  322. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/multiline.test +18 -0
  323. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/multiline_code.test +59 -0
  324. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/multiple_attr_kinds.test +47 -0
  325. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/non_rendered_comment.test +31 -0
  326. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/ns.test +11 -0
  327. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/object_ref.test +22 -0
  328. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/object_ref_error1.test +5 -0
  329. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/object_ref_error2.test +5 -0
  330. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/quotes_in_haml.test +10 -0
  331. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/ruby19_attrs.test +11 -0
  332. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/ruby_attrs_comma.test +23 -0
  333. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/ruby_attrs_comma_errors_001.test +5 -0
  334. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/ruby_attrs_comma_errors_002.test +5 -0
  335. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/ruby_attrs_comma_errors_003.test +5 -0
  336. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/standard.test +114 -0
  337. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/tagflags.test +39 -0
  338. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/runtime/php_filters.test +28 -0
  339. data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/runtime/twig_filters.test +31 -0
  340. data/vendor/mthaml/mthaml/test/bootstrap.php +3 -0
  341. metadata +398 -0
@@ -0,0 +1,105 @@
1
+ <?php
2
+
3
+ namespace CoffeeScript;
4
+
5
+ Init::init();
6
+
7
+ define('LEVEL_TOP', 1);
8
+ define('LEVEL_PAREN', 2);
9
+ define('LEVEL_LIST', 3);
10
+ define('LEVEL_COND', 4);
11
+ define('LEVEL_OP', 5);
12
+ define('LEVEL_ACCESS', 6);
13
+
14
+ define('TAB', ' ');
15
+
16
+ define('IDENTIFIER_STR', '[$A-Za-z_\x7f-\x{ffff}][$\w\x7f-\x{ffff}]*');
17
+ define('IDENTIFIER', '/^'.IDENTIFIER_STR.'$/u');
18
+ define('IS_STRING', '/^[\'"]/');
19
+ define('SIMPLENUM', '/^[+-]?\d+$/');
20
+ define('METHOD_DEF', '/^(?:('.IDENTIFIER_STR.')\.prototype(?:\.('.IDENTIFIER_STR.')|\[("(?:[^\\\\"\r\n]|\\\\.)*"|\'(?:[^\\\\\'\r\n]|\\\\.)*\')\]|\[(0x[\da-fA-F]+|\d*\.?\d+(?:[eE][+-]?\d+)?)\]))|('.IDENTIFIER_STR.')$/u');
21
+
22
+ class Nodes {
23
+
24
+ static function multident($code, $tab)
25
+ {
26
+ $code = preg_replace('/\n/', "\n{$tab}", $code);
27
+ return preg_replace('/\s+$/', '', $code);
28
+ }
29
+
30
+ static function unfold_soak($options, $parent, $name)
31
+ {
32
+ if ( ! (isset($parent->{$name}) && $parent->{$name} && $ifn = $parent->{$name}->unfold_soak($options)))
33
+ {
34
+ return NULL;
35
+ }
36
+
37
+ $parent->{$name} = $ifn->body;
38
+ $ifn->body = yy('Value', $parent);
39
+
40
+ return $ifn;
41
+ }
42
+
43
+ static function utility($name)
44
+ {
45
+ Scope::$root->assign($ref = "__$name", call_user_func(array(__CLASS__, "utility_$name")));
46
+
47
+ return $ref;
48
+ }
49
+
50
+ static function utility_bind()
51
+ {
52
+ return 'function(fn, me){ return function(){ return fn.apply(me, arguments); }; }';
53
+ }
54
+
55
+ static function utility_extends()
56
+ {
57
+ return 'function(child, parent) { '
58
+ . 'for (var key in parent) { '
59
+ . 'if ('.self::utility('hasProp').'.call(parent, key)) '
60
+ . 'child[key] = parent[key]; '
61
+ . '} '
62
+ . 'function ctor() { '
63
+ . 'this.constructor = child; '
64
+ . '} '
65
+ . 'ctor.prototype = parent.prototype; child.prototype = new ctor; child.__super__ = parent.prototype; '
66
+ . 'return child; '
67
+ . '}';
68
+ }
69
+
70
+ static function utility_hasProp()
71
+ {
72
+ return '{}.hasOwnProperty';
73
+ }
74
+
75
+ static function utility_indexOf()
76
+ {
77
+ return '[].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; }';
78
+ }
79
+
80
+ static function utility_slice()
81
+ {
82
+ return '[].slice';
83
+ }
84
+
85
+ /**
86
+ * Since PHP can't return values from __construct, and some of the node
87
+ * classes rely heavily on this feature in JavaScript, we use this function
88
+ * instead of 'new'.
89
+ */
90
+ static function yy($type)
91
+ {
92
+ $args = func_get_args();
93
+ array_shift($args);
94
+
95
+ $type = __NAMESPACE__.'\yy_'.$type;
96
+
97
+ $inst = new $type;
98
+ $inst = call_user_func_array(array($inst, 'constructor'), $args);
99
+
100
+ return $inst;
101
+ }
102
+
103
+ }
104
+
105
+ ?>
@@ -0,0 +1,3326 @@
1
+ <?php
2
+ namespace CoffeeScript;
3
+ use \ArrayAccess as ArrayAccess;
4
+ Init::init();
5
+
6
+ /* Driver template for the PHP_ParserGenerator parser generator. (PHP port of LEMON)
7
+ */
8
+
9
+ /**
10
+ * This can be used to store both the string representation of
11
+ * a token, and any useful meta-data associated with the token.
12
+ *
13
+ * meta-data should be stored as an array
14
+ */
15
+ class yyToken implements ArrayAccess
16
+ {
17
+ public $string = '';
18
+ public $metadata = array();
19
+
20
+ function __construct($s, $m = array())
21
+ {
22
+ if ($s instanceof yyToken) {
23
+ $this->string = $s->string;
24
+ $this->metadata = $s->metadata;
25
+ } else {
26
+ $this->string = (string) $s;
27
+ if ($m instanceof yyToken) {
28
+ $this->metadata = $m->metadata;
29
+ } elseif (is_array($m)) {
30
+ $this->metadata = $m;
31
+ }
32
+ }
33
+ }
34
+
35
+ function __toString()
36
+ {
37
+ return $this->string;
38
+ }
39
+
40
+ function offsetExists($offset)
41
+ {
42
+ return isset($this->metadata[$offset]);
43
+ }
44
+
45
+ function offsetGet($offset)
46
+ {
47
+ return $this->metadata[$offset];
48
+ }
49
+
50
+ function offsetSet($offset, $value)
51
+ {
52
+ if ($offset === null) {
53
+ if (isset($value[0])) {
54
+ $x = ($value instanceof yyToken) ?
55
+ $value->metadata : $value;
56
+ $this->metadata = array_merge($this->metadata, $x);
57
+ return;
58
+ }
59
+ $offset = count($this->metadata);
60
+ }
61
+ if ($value === null) {
62
+ return;
63
+ }
64
+ if ($value instanceof yyToken) {
65
+ if ($value->metadata) {
66
+ $this->metadata[$offset] = $value->metadata;
67
+ }
68
+ } elseif ($value) {
69
+ $this->metadata[$offset] = $value;
70
+ }
71
+ }
72
+
73
+ function offsetUnset($offset)
74
+ {
75
+ unset($this->metadata[$offset]);
76
+ }
77
+ }
78
+
79
+ /** The following structure represents a single element of the
80
+ * parser's stack. Information stored includes:
81
+ *
82
+ * + The state number for the parser at this level of the stack.
83
+ *
84
+ * + The value of the token stored at this level of the stack.
85
+ * (In other words, the "major" token.)
86
+ *
87
+ * + The semantic value stored at this level of the stack. This is
88
+ * the information used by the action routines in the grammar.
89
+ * It is sometimes called the "minor" token.
90
+ */
91
+ class yyStackEntry
92
+ {
93
+ public $stateno; /* The state-number */
94
+ public $major; /* The major token value. This is the code
95
+ ** number for the token at this stack level */
96
+ public $minor; /* The user-supplied minor token value. This
97
+ ** is the value of the token */
98
+ };
99
+
100
+ // code external to the class is included here
101
+
102
+ // declare_class is output here
103
+ #line 2 "/var/www/coffeescript-php/grammar.y"
104
+ class Parser #line 102 "/var/www/coffeescript-php/grammar.php"
105
+ {
106
+ static $LINE = 0;
107
+ static $FILE = 'unknown';
108
+
109
+ /* First off, code is included which follows the "include_class" declaration
110
+ ** in the input file. */
111
+
112
+ /* Next is all token values, as class constants
113
+ */
114
+ /*
115
+ ** These constants (all generated automatically by the parser generator)
116
+ ** specify the various kinds of tokens (terminals) that the parser
117
+ ** understands.
118
+ **
119
+ ** Each symbol here is a terminal symbol in the grammar.
120
+ */
121
+ const YY_POST_IF = 1;
122
+ const YY_IF = 2;
123
+ const YY_ELSE = 3;
124
+ const YY_FOR = 4;
125
+ const YY_WHILE = 5;
126
+ const YY_UNTIL = 6;
127
+ const YY_LOOP = 7;
128
+ const YY_SUPER = 8;
129
+ const YY_CLASS = 9;
130
+ const YY_FORIN = 10;
131
+ const YY_FOROF = 11;
132
+ const YY_BY = 12;
133
+ const YY_WHEN = 13;
134
+ const YY_EQUALS = 14;
135
+ const YY_COLON = 15;
136
+ const YY_COMPOUND_ASSIGN = 16;
137
+ const YY_RETURN = 17;
138
+ const YY_THROW = 18;
139
+ const YY_EXTENDS = 19;
140
+ const YY_INDENT = 20;
141
+ const YY_OUTDENT = 21;
142
+ const YY_LOGIC = 22;
143
+ const YY_COMPARE = 23;
144
+ const YY_RELATION = 24;
145
+ const YY_SHIFT = 25;
146
+ const YY_MATH = 26;
147
+ const YY_PLUS = 27;
148
+ const YY_MINUS = 28;
149
+ const YY_UNARY = 29;
150
+ const YY_EXISTENTIAL = 30;
151
+ const YY_INCREMENT = 31;
152
+ const YY_DECREMENT = 32;
153
+ const YY_CALL_START = 33;
154
+ const YY_CALL_END = 34;
155
+ const YY_ACCESSOR = 35;
156
+ const YY_EXISTENTIAL_ACCESSOR = 36;
157
+ const YY_PROTOTYPE = 37;
158
+ const YY_TERMINATOR = 38;
159
+ const YY_STATEMENT = 39;
160
+ const YY_IDENTIFIER = 40;
161
+ const YY_NUMBER = 41;
162
+ const YY_STRING = 42;
163
+ const YY_JS = 43;
164
+ const YY_REGEX = 44;
165
+ const YY_DEBUGGER = 45;
166
+ const YY_BOOL = 46;
167
+ const YY_HERECOMMENT = 47;
168
+ const YY_PARAM_START = 48;
169
+ const YY_PARAM_END = 49;
170
+ const YY_FUNC = 50;
171
+ const YY_BOUND_FUNC = 51;
172
+ const YY_COMMA = 52;
173
+ const YY_RANGE_EXCLUSIVE = 53;
174
+ const YY_INDEX_START = 54;
175
+ const YY_INDEX_END = 55;
176
+ const YY_INDEX_SOAK = 56;
177
+ const YY_OBJECT_START = 57;
178
+ const YY_OBJECT_END = 58;
179
+ const YY_FUNC_EXIST = 59;
180
+ const YY_THIS = 60;
181
+ const YY_AT_SIGN = 61;
182
+ const YY_ARRAY_START = 62;
183
+ const YY_ARRAY_END = 63;
184
+ const YY_RANGE_INCLUSIVE = 64;
185
+ const YY_TRY = 65;
186
+ const YY_FINALLY = 66;
187
+ const YY_CATCH = 67;
188
+ const YY_PAREN_START = 68;
189
+ const YY_PAREN_END = 69;
190
+ const YY_OWN = 70;
191
+ const YY_SWITCH = 71;
192
+ const YY_LEADING_WHEN = 72;
193
+ const YY_NO_ACTION = 512;
194
+ const YY_ACCEPT_ACTION = 511;
195
+ const YY_ERROR_ACTION = 510;
196
+
197
+ /* Next are that tables used to determine what action to take based on the
198
+ ** current state and lookahead token. These tables are used to implement
199
+ ** functions that take a state number and lookahead value and return an
200
+ ** action integer.
201
+ **
202
+ ** Suppose the action integer is N. Then the action is determined as
203
+ ** follows
204
+ **
205
+ ** 0 <= N < self::YYNSTATE Shift N. That is,
206
+ ** push the lookahead
207
+ ** token onto the stack
208
+ ** and goto state N.
209
+ **
210
+ ** self::YYNSTATE <= N < self::YYNSTATE+self::YYNRULE Reduce by rule N-YYNSTATE.
211
+ **
212
+ ** N == self::YYNSTATE+self::YYNRULE A syntax error has occurred.
213
+ **
214
+ ** N == self::YYNSTATE+self::YYNRULE+1 The parser accepts its
215
+ ** input. (and concludes parsing)
216
+ **
217
+ ** N == self::YYNSTATE+self::YYNRULE+2 No such action. Denotes unused
218
+ ** slots in the yy_action[] table.
219
+ **
220
+ ** The action table is constructed as a single large static array $yy_action.
221
+ ** Given state S and lookahead X, the action is computed as
222
+ **
223
+ ** self::$yy_action[self::$yy_shift_ofst[S] + X ]
224
+ **
225
+ ** If the index value self::$yy_shift_ofst[S]+X is out of range or if the value
226
+ ** self::$yy_lookahead[self::$yy_shift_ofst[S]+X] is not equal to X or if
227
+ ** self::$yy_shift_ofst[S] is equal to self::YY_SHIFT_USE_DFLT, it means that
228
+ ** the action is not in the table and that self::$yy_default[S] should be used instead.
229
+ **
230
+ ** The formula above is for computing the action when the lookahead is
231
+ ** a terminal symbol. If the lookahead is a non-terminal (as occurs after
232
+ ** a reduce action) then the static $yy_reduce_ofst array is used in place of
233
+ ** the static $yy_shift_ofst array and self::YY_REDUCE_USE_DFLT is used in place of
234
+ ** self::YY_SHIFT_USE_DFLT.
235
+ **
236
+ ** The following are the tables generated in this section:
237
+ **
238
+ ** self::$yy_action A single table containing all actions.
239
+ ** self::$yy_lookahead A table containing the lookahead for each entry in
240
+ ** yy_action. Used to detect hash collisions.
241
+ ** self::$yy_shift_ofst For each state, the offset into self::$yy_action for
242
+ ** shifting terminals.
243
+ ** self::$yy_reduce_ofst For each state, the offset into self::$yy_action for
244
+ ** shifting non-terminals after a reduce.
245
+ ** self::$yy_default Default action for each state.
246
+ */
247
+ const YY_SZ_ACTTAB = 4561;
248
+ static public $yy_action = array(
249
+ /* 0 */ 511, 181, 186, 235, 90, 118, 254, 255, 111, 109,
250
+ /* 10 */ 266, 267, 264, 263, 259, 260, 261, 262, 246, 245,
251
+ /* 20 */ 237, 232, 300, 178, 32, 34, 238, 309, 158, 304,
252
+ /* 30 */ 35, 19, 269, 299, 4, 164, 132, 301, 298, 297,
253
+ /* 40 */ 39, 21, 36, 22, 20, 32, 34, 225, 309, 226,
254
+ /* 50 */ 135, 154, 291, 147, 135, 20, 32, 34, 65, 309,
255
+ /* 60 */ 183, 70, 117, 254, 255, 111, 109, 266, 267, 264,
256
+ /* 70 */ 263, 259, 260, 261, 262, 246, 245, 237, 232, 300,
257
+ /* 80 */ 178, 151, 152, 238, 251, 158, 251, 230, 231, 269,
258
+ /* 90 */ 299, 287, 164, 234, 301, 298, 297, 21, 36, 22,
259
+ /* 100 */ 20, 32, 34, 139, 309, 283, 241, 144, 154, 291,
260
+ /* 110 */ 147, 135, 243, 13, 244, 135, 8, 183, 69, 117,
261
+ /* 120 */ 254, 255, 111, 109, 266, 267, 264, 263, 259, 260,
262
+ /* 130 */ 261, 262, 246, 245, 237, 232, 300, 178, 130, 8,
263
+ /* 140 */ 238, 66, 158, 242, 306, 200, 269, 299, 52, 164,
264
+ /* 150 */ 169, 301, 298, 297, 16, 185, 222, 45, 201, 195,
265
+ /* 160 */ 13, 44, 191, 180, 199, 154, 291, 147, 135, 268,
266
+ /* 170 */ 239, 37, 26, 159, 183, 77, 117, 254, 255, 111,
267
+ /* 180 */ 109, 266, 267, 264, 263, 259, 260, 261, 262, 246,
268
+ /* 190 */ 245, 237, 232, 300, 178, 128, 272, 238, 310, 158,
269
+ /* 200 */ 129, 272, 293, 269, 299, 287, 164, 1, 301, 298,
270
+ /* 210 */ 297, 179, 36, 22, 20, 32, 34, 138, 309, 283,
271
+ /* 220 */ 40, 292, 154, 291, 147, 135, 275, 131, 13, 240,
272
+ /* 230 */ 236, 183, 77, 117, 254, 255, 111, 109, 266, 267,
273
+ /* 240 */ 264, 263, 259, 260, 261, 262, 246, 245, 237, 232,
274
+ /* 250 */ 300, 178, 280, 277, 238, 75, 158, 205, 150, 202,
275
+ /* 260 */ 269, 299, 287, 164, 190, 301, 298, 297, 22, 20,
276
+ /* 270 */ 32, 34, 207, 309, 139, 225, 283, 226, 135, 154,
277
+ /* 280 */ 291, 147, 135, 13, 206, 198, 17, 302, 183, 77,
278
+ /* 290 */ 117, 254, 255, 111, 109, 266, 267, 264, 263, 259,
279
+ /* 300 */ 260, 261, 262, 246, 245, 237, 232, 300, 178, 220,
280
+ /* 310 */ 251, 238, 251, 158, 271, 307, 15, 269, 299, 287,
281
+ /* 320 */ 164, 165, 301, 298, 297, 305, 5, 62, 227, 62,
282
+ /* 330 */ 207, 140, 3, 283, 2, 176, 154, 291, 147, 135,
283
+ /* 340 */ 68, 187, 206, 198, 11, 183, 77, 117, 254, 255,
284
+ /* 350 */ 111, 109, 266, 267, 264, 263, 259, 260, 261, 262,
285
+ /* 360 */ 246, 245, 237, 232, 300, 178, 211, 184, 238, 286,
286
+ /* 370 */ 158, 5, 285, 248, 269, 299, 287, 164, 258, 301,
287
+ /* 380 */ 298, 297, 381, 252, 381, 381, 381, 250, 145, 11,
288
+ /* 390 */ 283, 155, 9, 154, 291, 147, 135, 166, 247, 270,
289
+ /* 400 */ 149, 308, 183, 381, 309, 381, 14, 175, 381, 235,
290
+ /* 410 */ 90, 118, 254, 255, 111, 109, 266, 267, 264, 263,
291
+ /* 420 */ 259, 260, 261, 262, 246, 245, 237, 232, 300, 178,
292
+ /* 430 */ 278, 170, 238, 295, 158, 182, 376, 249, 269, 299,
293
+ /* 440 */ 168, 164, 134, 301, 298, 297, 56, 279, 67, 47,
294
+ /* 450 */ 24, 12, 160, 58, 376, 276, 189, 154, 291, 147,
295
+ /* 460 */ 135, 57, 25, 265, 6, 167, 183, 177, 376, 333,
296
+ /* 470 */ 257, 42, 43, 50, 250, 59, 60, 28, 142, 376,
297
+ /* 480 */ 67, 47, 24, 256, 251, 230, 231, 233, 229, 228,
298
+ /* 490 */ 224, 234, 63, 61, 240, 236, 225, 333, 226, 135,
299
+ /* 500 */ 333, 62, 333, 333, 303, 153, 3, 288, 333, 148,
300
+ /* 510 */ 55, 64, 7, 333, 207, 18, 333, 333, 56, 333,
301
+ /* 520 */ 67, 47, 24, 12, 160, 58, 206, 198, 8, 221,
302
+ /* 530 */ 333, 193, 217, 57, 25, 219, 53, 333, 333, 214,
303
+ /* 540 */ 173, 204, 208, 42, 43, 50, 333, 59, 60, 333,
304
+ /* 550 */ 218, 184, 143, 333, 54, 256, 251, 230, 231, 233,
305
+ /* 560 */ 229, 228, 224, 234, 63, 212, 240, 236, 51, 333,
306
+ /* 570 */ 223, 333, 225, 62, 226, 135, 303, 153, 3, 27,
307
+ /* 580 */ 333, 148, 333, 225, 7, 226, 135, 18, 172, 333,
308
+ /* 590 */ 235, 90, 118, 254, 255, 111, 109, 266, 267, 264,
309
+ /* 600 */ 263, 259, 260, 261, 262, 246, 245, 237, 232, 300,
310
+ /* 610 */ 178, 296, 333, 238, 225, 158, 226, 135, 333, 269,
311
+ /* 620 */ 299, 14, 164, 333, 301, 298, 297, 56, 333, 67,
312
+ /* 630 */ 47, 24, 12, 160, 58, 333, 333, 5, 154, 291,
313
+ /* 640 */ 147, 135, 57, 25, 333, 6, 333, 183, 333, 333,
314
+ /* 650 */ 333, 203, 42, 43, 50, 11, 59, 60, 333, 210,
315
+ /* 660 */ 225, 141, 226, 135, 256, 251, 230, 231, 233, 229,
316
+ /* 670 */ 228, 224, 234, 63, 333, 240, 236, 333, 333, 273,
317
+ /* 680 */ 333, 333, 62, 333, 333, 303, 153, 3, 333, 333,
318
+ /* 690 */ 148, 333, 333, 7, 333, 171, 18, 235, 90, 118,
319
+ /* 700 */ 254, 255, 111, 109, 266, 267, 264, 263, 259, 260,
320
+ /* 710 */ 261, 262, 246, 245, 237, 232, 300, 178, 333, 333,
321
+ /* 720 */ 238, 333, 158, 333, 5, 284, 269, 299, 333, 164,
322
+ /* 730 */ 14, 301, 298, 297, 56, 333, 67, 47, 24, 12,
323
+ /* 740 */ 160, 58, 11, 333, 333, 154, 291, 147, 135, 57,
324
+ /* 750 */ 25, 61, 215, 333, 183, 333, 333, 333, 333, 42,
325
+ /* 760 */ 43, 50, 333, 59, 60, 333, 333, 333, 333, 64,
326
+ /* 770 */ 333, 256, 251, 230, 231, 233, 229, 228, 224, 234,
327
+ /* 780 */ 63, 333, 240, 236, 333, 213, 333, 333, 333, 62,
328
+ /* 790 */ 333, 333, 303, 153, 3, 333, 311, 148, 333, 333,
329
+ /* 800 */ 7, 333, 333, 18, 333, 77, 117, 254, 255, 111,
330
+ /* 810 */ 109, 266, 267, 264, 263, 259, 260, 261, 262, 246,
331
+ /* 820 */ 245, 237, 232, 300, 178, 333, 333, 238, 333, 158,
332
+ /* 830 */ 333, 333, 38, 269, 299, 287, 164, 333, 301, 298,
333
+ /* 840 */ 297, 333, 39, 21, 36, 22, 20, 32, 34, 290,
334
+ /* 850 */ 309, 333, 154, 291, 147, 135, 333, 333, 333, 333,
335
+ /* 860 */ 333, 183, 77, 117, 254, 255, 111, 109, 266, 267,
336
+ /* 870 */ 264, 263, 259, 260, 261, 262, 246, 245, 237, 232,
337
+ /* 880 */ 300, 178, 333, 333, 238, 333, 158, 333, 333, 333,
338
+ /* 890 */ 269, 299, 287, 164, 333, 301, 298, 297, 333, 39,
339
+ /* 900 */ 21, 36, 22, 20, 32, 34, 282, 309, 333, 154,
340
+ /* 910 */ 291, 147, 135, 221, 333, 333, 333, 333, 183, 219,
341
+ /* 920 */ 174, 333, 333, 216, 173, 204, 208, 253, 90, 118,
342
+ /* 930 */ 254, 255, 111, 109, 266, 267, 264, 263, 259, 260,
343
+ /* 940 */ 261, 262, 246, 245, 237, 232, 300, 178, 333, 333,
344
+ /* 950 */ 238, 333, 158, 333, 333, 29, 269, 299, 333, 164,
345
+ /* 960 */ 333, 301, 298, 297, 39, 21, 36, 22, 20, 32,
346
+ /* 970 */ 34, 333, 309, 333, 333, 154, 291, 147, 135, 333,
347
+ /* 980 */ 333, 333, 333, 281, 183, 94, 117, 254, 255, 111,
348
+ /* 990 */ 109, 266, 267, 264, 263, 259, 260, 261, 262, 246,
349
+ /* 1000 */ 245, 237, 232, 300, 178, 333, 333, 238, 333, 158,
350
+ /* 1010 */ 333, 333, 333, 269, 299, 333, 164, 333, 301, 298,
351
+ /* 1020 */ 297, 56, 333, 67, 47, 24, 12, 160, 58, 333,
352
+ /* 1030 */ 333, 333, 154, 291, 147, 135, 57, 25, 333, 48,
353
+ /* 1040 */ 333, 183, 333, 333, 333, 333, 42, 43, 50, 333,
354
+ /* 1050 */ 59, 60, 333, 333, 333, 333, 333, 333, 256, 251,
355
+ /* 1060 */ 230, 231, 233, 229, 228, 224, 234, 63, 333, 240,
356
+ /* 1070 */ 236, 333, 333, 333, 333, 333, 62, 333, 333, 303,
357
+ /* 1080 */ 153, 3, 333, 333, 148, 333, 333, 7, 333, 333,
358
+ /* 1090 */ 18, 333, 333, 56, 333, 67, 47, 24, 12, 160,
359
+ /* 1100 */ 58, 333, 333, 416, 333, 137, 136, 146, 57, 25,
360
+ /* 1110 */ 333, 125, 333, 333, 333, 333, 333, 333, 42, 43,
361
+ /* 1120 */ 50, 333, 59, 60, 4, 333, 132, 333, 251, 294,
362
+ /* 1130 */ 256, 251, 230, 231, 233, 229, 228, 224, 234, 63,
363
+ /* 1140 */ 333, 240, 236, 333, 333, 62, 333, 333, 62, 144,
364
+ /* 1150 */ 2, 303, 153, 3, 333, 333, 148, 333, 333, 7,
365
+ /* 1160 */ 333, 333, 18, 333, 333, 56, 333, 67, 47, 24,
366
+ /* 1170 */ 12, 160, 58, 333, 333, 333, 333, 137, 136, 146,
367
+ /* 1180 */ 57, 25, 333, 33, 333, 333, 333, 333, 333, 333,
368
+ /* 1190 */ 42, 43, 50, 333, 59, 60, 4, 333, 132, 333,
369
+ /* 1200 */ 333, 294, 256, 251, 230, 231, 233, 229, 228, 224,
370
+ /* 1210 */ 234, 63, 333, 240, 236, 333, 333, 333, 333, 333,
371
+ /* 1220 */ 62, 333, 333, 303, 153, 3, 333, 333, 148, 333,
372
+ /* 1230 */ 333, 7, 333, 333, 18, 89, 117, 254, 255, 111,
373
+ /* 1240 */ 109, 266, 267, 264, 263, 259, 260, 261, 262, 246,
374
+ /* 1250 */ 245, 237, 232, 300, 178, 333, 333, 238, 333, 158,
375
+ /* 1260 */ 333, 333, 333, 269, 299, 333, 164, 333, 301, 298,
376
+ /* 1270 */ 297, 56, 333, 67, 47, 24, 12, 160, 58, 333,
377
+ /* 1280 */ 133, 333, 154, 291, 147, 135, 57, 25, 333, 8,
378
+ /* 1290 */ 333, 183, 333, 333, 333, 333, 42, 43, 50, 333,
379
+ /* 1300 */ 59, 60, 333, 333, 333, 333, 333, 333, 256, 251,
380
+ /* 1310 */ 230, 231, 233, 229, 228, 224, 234, 63, 333, 240,
381
+ /* 1320 */ 236, 333, 333, 333, 333, 333, 62, 333, 333, 303,
382
+ /* 1330 */ 153, 3, 333, 333, 148, 333, 333, 7, 333, 333,
383
+ /* 1340 */ 18, 333, 333, 56, 333, 67, 47, 24, 12, 160,
384
+ /* 1350 */ 58, 333, 333, 333, 333, 333, 333, 333, 57, 25,
385
+ /* 1360 */ 333, 333, 188, 333, 333, 333, 333, 333, 42, 43,
386
+ /* 1370 */ 50, 333, 59, 60, 333, 333, 333, 333, 333, 333,
387
+ /* 1380 */ 256, 251, 230, 231, 233, 229, 228, 224, 234, 63,
388
+ /* 1390 */ 333, 240, 236, 333, 333, 333, 333, 333, 62, 333,
389
+ /* 1400 */ 333, 303, 153, 3, 333, 333, 148, 333, 333, 7,
390
+ /* 1410 */ 333, 333, 18, 333, 333, 56, 333, 67, 47, 24,
391
+ /* 1420 */ 12, 160, 58, 333, 333, 333, 333, 333, 333, 333,
392
+ /* 1430 */ 57, 25, 333, 10, 333, 333, 333, 333, 333, 333,
393
+ /* 1440 */ 42, 43, 50, 333, 59, 60, 333, 333, 333, 333,
394
+ /* 1450 */ 333, 333, 256, 251, 230, 231, 233, 229, 228, 224,
395
+ /* 1460 */ 234, 63, 333, 240, 236, 333, 333, 333, 333, 333,
396
+ /* 1470 */ 62, 333, 333, 303, 153, 3, 333, 333, 148, 333,
397
+ /* 1480 */ 333, 7, 333, 333, 18, 333, 333, 56, 333, 67,
398
+ /* 1490 */ 47, 24, 12, 160, 58, 333, 333, 333, 333, 333,
399
+ /* 1500 */ 333, 333, 57, 25, 333, 6, 333, 333, 333, 333,
400
+ /* 1510 */ 333, 333, 42, 43, 50, 333, 59, 60, 333, 333,
401
+ /* 1520 */ 333, 333, 333, 333, 256, 251, 230, 231, 233, 229,
402
+ /* 1530 */ 228, 224, 234, 63, 333, 240, 236, 333, 333, 333,
403
+ /* 1540 */ 333, 333, 62, 333, 333, 303, 153, 3, 333, 333,
404
+ /* 1550 */ 148, 333, 333, 7, 333, 333, 18, 123, 117, 254,
405
+ /* 1560 */ 255, 111, 109, 266, 267, 264, 263, 259, 260, 261,
406
+ /* 1570 */ 262, 246, 245, 237, 232, 300, 178, 333, 333, 238,
407
+ /* 1580 */ 333, 158, 333, 333, 333, 269, 299, 333, 164, 333,
408
+ /* 1590 */ 301, 298, 297, 56, 333, 67, 47, 24, 12, 160,
409
+ /* 1600 */ 58, 333, 333, 333, 154, 291, 147, 135, 57, 25,
410
+ /* 1610 */ 333, 333, 333, 183, 333, 333, 333, 333, 42, 43,
411
+ /* 1620 */ 50, 333, 59, 60, 333, 333, 333, 333, 333, 333,
412
+ /* 1630 */ 256, 251, 230, 231, 233, 229, 228, 224, 234, 63,
413
+ /* 1640 */ 333, 240, 236, 333, 333, 333, 333, 333, 62, 333,
414
+ /* 1650 */ 333, 303, 153, 3, 333, 333, 148, 333, 333, 7,
415
+ /* 1660 */ 333, 333, 18, 333, 122, 117, 254, 255, 111, 109,
416
+ /* 1670 */ 266, 267, 264, 263, 259, 260, 261, 262, 246, 245,
417
+ /* 1680 */ 237, 232, 300, 178, 333, 333, 238, 333, 158, 333,
418
+ /* 1690 */ 333, 31, 269, 299, 333, 164, 333, 301, 298, 297,
419
+ /* 1700 */ 39, 21, 36, 22, 20, 32, 34, 333, 309, 333,
420
+ /* 1710 */ 333, 154, 291, 147, 135, 333, 333, 333, 333, 333,
421
+ /* 1720 */ 183, 82, 117, 254, 255, 111, 109, 266, 267, 264,
422
+ /* 1730 */ 263, 259, 260, 261, 262, 246, 245, 237, 232, 300,
423
+ /* 1740 */ 178, 333, 333, 238, 200, 158, 333, 333, 333, 269,
424
+ /* 1750 */ 299, 333, 164, 333, 301, 298, 297, 201, 195, 333,
425
+ /* 1760 */ 333, 197, 180, 199, 333, 333, 333, 333, 154, 291,
426
+ /* 1770 */ 147, 135, 333, 333, 333, 333, 333, 183, 101, 117,
427
+ /* 1780 */ 254, 255, 111, 109, 266, 267, 264, 263, 259, 260,
428
+ /* 1790 */ 261, 262, 246, 245, 237, 232, 300, 178, 333, 333,
429
+ /* 1800 */ 238, 333, 158, 333, 333, 333, 269, 299, 333, 164,
430
+ /* 1810 */ 333, 301, 298, 297, 333, 333, 333, 333, 333, 333,
431
+ /* 1820 */ 333, 333, 333, 333, 333, 154, 291, 147, 135, 333,
432
+ /* 1830 */ 333, 333, 333, 333, 183, 95, 117, 254, 255, 111,
433
+ /* 1840 */ 109, 266, 267, 264, 263, 259, 260, 261, 262, 246,
434
+ /* 1850 */ 245, 237, 232, 300, 178, 333, 333, 238, 333, 158,
435
+ /* 1860 */ 333, 333, 333, 269, 299, 333, 164, 333, 301, 298,
436
+ /* 1870 */ 297, 333, 333, 333, 333, 333, 333, 333, 333, 333,
437
+ /* 1880 */ 333, 333, 154, 291, 147, 135, 333, 333, 333, 333,
438
+ /* 1890 */ 333, 183, 96, 117, 254, 255, 111, 109, 266, 267,
439
+ /* 1900 */ 264, 263, 259, 260, 261, 262, 246, 245, 237, 232,
440
+ /* 1910 */ 300, 178, 333, 333, 238, 333, 158, 333, 333, 333,
441
+ /* 1920 */ 269, 299, 333, 164, 333, 301, 298, 297, 333, 333,
442
+ /* 1930 */ 333, 333, 333, 333, 333, 333, 333, 333, 333, 154,
443
+ /* 1940 */ 291, 147, 135, 333, 333, 333, 333, 333, 183, 100,
444
+ /* 1950 */ 117, 254, 255, 111, 109, 266, 267, 264, 263, 259,
445
+ /* 1960 */ 260, 261, 262, 246, 245, 237, 232, 300, 178, 333,
446
+ /* 1970 */ 333, 238, 333, 158, 333, 333, 333, 269, 299, 333,
447
+ /* 1980 */ 164, 333, 301, 298, 297, 333, 333, 333, 333, 333,
448
+ /* 1990 */ 333, 333, 333, 333, 333, 333, 154, 291, 147, 135,
449
+ /* 2000 */ 333, 333, 333, 333, 333, 183, 115, 117, 254, 255,
450
+ /* 2010 */ 111, 109, 266, 267, 264, 263, 259, 260, 261, 262,
451
+ /* 2020 */ 246, 245, 237, 232, 300, 178, 333, 333, 238, 333,
452
+ /* 2030 */ 158, 333, 333, 333, 269, 299, 333, 164, 333, 301,
453
+ /* 2040 */ 298, 297, 333, 333, 333, 333, 333, 333, 333, 333,
454
+ /* 2050 */ 333, 333, 333, 154, 291, 147, 135, 333, 333, 333,
455
+ /* 2060 */ 333, 333, 183, 110, 117, 254, 255, 111, 109, 266,
456
+ /* 2070 */ 267, 264, 263, 259, 260, 261, 262, 246, 245, 237,
457
+ /* 2080 */ 232, 300, 178, 333, 333, 238, 333, 158, 333, 333,
458
+ /* 2090 */ 333, 269, 299, 333, 164, 333, 301, 298, 297, 333,
459
+ /* 2100 */ 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
460
+ /* 2110 */ 154, 291, 147, 135, 333, 333, 333, 333, 333, 183,
461
+ /* 2120 */ 84, 117, 254, 255, 111, 109, 266, 267, 264, 263,
462
+ /* 2130 */ 259, 260, 261, 262, 246, 245, 237, 232, 300, 178,
463
+ /* 2140 */ 333, 333, 238, 333, 158, 333, 333, 333, 269, 299,
464
+ /* 2150 */ 333, 164, 333, 301, 298, 297, 333, 333, 333, 333,
465
+ /* 2160 */ 333, 333, 333, 333, 333, 333, 333, 154, 291, 147,
466
+ /* 2170 */ 135, 333, 333, 333, 333, 333, 183, 73, 117, 254,
467
+ /* 2180 */ 255, 111, 109, 266, 267, 264, 263, 259, 260, 261,
468
+ /* 2190 */ 262, 246, 245, 237, 232, 300, 178, 333, 333, 238,
469
+ /* 2200 */ 333, 158, 333, 333, 333, 269, 299, 333, 164, 333,
470
+ /* 2210 */ 301, 298, 297, 333, 333, 333, 333, 333, 333, 333,
471
+ /* 2220 */ 333, 333, 333, 333, 154, 291, 147, 135, 333, 333,
472
+ /* 2230 */ 333, 333, 333, 183, 81, 117, 254, 255, 111, 109,
473
+ /* 2240 */ 266, 267, 264, 263, 259, 260, 261, 262, 246, 245,
474
+ /* 2250 */ 237, 232, 300, 178, 333, 333, 238, 333, 158, 333,
475
+ /* 2260 */ 333, 333, 269, 299, 333, 164, 333, 301, 298, 297,
476
+ /* 2270 */ 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
477
+ /* 2280 */ 333, 154, 291, 147, 135, 333, 333, 333, 333, 333,
478
+ /* 2290 */ 183, 83, 117, 254, 255, 111, 109, 266, 267, 264,
479
+ /* 2300 */ 263, 259, 260, 261, 262, 246, 245, 237, 232, 300,
480
+ /* 2310 */ 178, 333, 333, 238, 333, 158, 333, 333, 333, 269,
481
+ /* 2320 */ 299, 333, 164, 333, 301, 298, 297, 333, 333, 333,
482
+ /* 2330 */ 333, 333, 333, 333, 333, 333, 333, 333, 154, 291,
483
+ /* 2340 */ 147, 135, 333, 333, 333, 333, 333, 183, 102, 117,
484
+ /* 2350 */ 254, 255, 111, 109, 266, 267, 264, 263, 259, 260,
485
+ /* 2360 */ 261, 262, 246, 245, 237, 232, 300, 178, 333, 333,
486
+ /* 2370 */ 238, 333, 158, 333, 333, 333, 269, 299, 333, 164,
487
+ /* 2380 */ 333, 301, 298, 297, 333, 333, 333, 333, 333, 333,
488
+ /* 2390 */ 333, 333, 333, 333, 333, 154, 291, 147, 135, 333,
489
+ /* 2400 */ 333, 333, 333, 333, 183, 72, 117, 254, 255, 111,
490
+ /* 2410 */ 109, 266, 267, 264, 263, 259, 260, 261, 262, 246,
491
+ /* 2420 */ 245, 237, 232, 300, 178, 333, 333, 238, 333, 158,
492
+ /* 2430 */ 333, 333, 333, 269, 299, 333, 164, 333, 301, 298,
493
+ /* 2440 */ 297, 333, 333, 333, 333, 333, 333, 333, 333, 333,
494
+ /* 2450 */ 333, 333, 154, 291, 147, 135, 333, 333, 333, 333,
495
+ /* 2460 */ 333, 183, 104, 117, 254, 255, 111, 109, 266, 267,
496
+ /* 2470 */ 264, 263, 259, 260, 261, 262, 246, 245, 237, 232,
497
+ /* 2480 */ 300, 178, 333, 333, 238, 333, 158, 333, 333, 333,
498
+ /* 2490 */ 269, 299, 333, 164, 333, 301, 298, 297, 333, 333,
499
+ /* 2500 */ 333, 333, 333, 333, 333, 333, 333, 333, 333, 154,
500
+ /* 2510 */ 291, 147, 135, 333, 333, 333, 333, 333, 183, 71,
501
+ /* 2520 */ 117, 254, 255, 111, 109, 266, 267, 264, 263, 259,
502
+ /* 2530 */ 260, 261, 262, 246, 245, 237, 232, 300, 178, 333,
503
+ /* 2540 */ 333, 238, 333, 158, 333, 333, 333, 269, 299, 333,
504
+ /* 2550 */ 164, 333, 301, 298, 297, 333, 333, 333, 333, 333,
505
+ /* 2560 */ 333, 333, 333, 333, 333, 333, 154, 291, 147, 135,
506
+ /* 2570 */ 333, 333, 333, 333, 333, 183, 85, 117, 254, 255,
507
+ /* 2580 */ 111, 109, 266, 267, 264, 263, 259, 260, 261, 262,
508
+ /* 2590 */ 246, 245, 237, 232, 300, 178, 333, 333, 238, 333,
509
+ /* 2600 */ 158, 333, 333, 333, 269, 299, 333, 164, 333, 301,
510
+ /* 2610 */ 298, 297, 333, 333, 333, 333, 333, 333, 333, 333,
511
+ /* 2620 */ 333, 333, 333, 154, 291, 147, 135, 333, 333, 333,
512
+ /* 2630 */ 333, 333, 183, 76, 117, 254, 255, 111, 109, 266,
513
+ /* 2640 */ 267, 264, 263, 259, 260, 261, 262, 246, 245, 237,
514
+ /* 2650 */ 232, 300, 178, 333, 333, 238, 333, 158, 333, 333,
515
+ /* 2660 */ 333, 269, 299, 333, 164, 333, 301, 298, 297, 333,
516
+ /* 2670 */ 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
517
+ /* 2680 */ 154, 291, 147, 135, 333, 333, 333, 333, 333, 183,
518
+ /* 2690 */ 88, 117, 254, 255, 111, 109, 266, 267, 264, 263,
519
+ /* 2700 */ 259, 260, 261, 262, 246, 245, 237, 232, 300, 178,
520
+ /* 2710 */ 333, 333, 238, 333, 158, 333, 333, 333, 269, 299,
521
+ /* 2720 */ 333, 164, 333, 301, 298, 297, 333, 333, 333, 333,
522
+ /* 2730 */ 333, 333, 333, 333, 333, 333, 333, 154, 291, 147,
523
+ /* 2740 */ 135, 333, 333, 333, 333, 333, 183, 93, 117, 254,
524
+ /* 2750 */ 255, 111, 109, 266, 267, 264, 263, 259, 260, 261,
525
+ /* 2760 */ 262, 246, 245, 237, 232, 300, 178, 333, 333, 238,
526
+ /* 2770 */ 333, 158, 333, 333, 333, 269, 299, 333, 164, 333,
527
+ /* 2780 */ 301, 298, 297, 333, 333, 333, 333, 333, 333, 333,
528
+ /* 2790 */ 333, 333, 333, 333, 154, 291, 147, 135, 333, 333,
529
+ /* 2800 */ 333, 333, 333, 183, 120, 117, 254, 255, 111, 109,
530
+ /* 2810 */ 266, 267, 264, 263, 259, 260, 261, 262, 246, 245,
531
+ /* 2820 */ 237, 232, 300, 178, 333, 333, 238, 333, 158, 333,
532
+ /* 2830 */ 333, 333, 269, 299, 333, 164, 333, 301, 298, 297,
533
+ /* 2840 */ 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
534
+ /* 2850 */ 333, 154, 291, 147, 135, 333, 333, 333, 333, 333,
535
+ /* 2860 */ 183, 114, 117, 254, 255, 111, 109, 266, 267, 264,
536
+ /* 2870 */ 263, 259, 260, 261, 262, 246, 245, 237, 232, 300,
537
+ /* 2880 */ 178, 333, 333, 238, 333, 158, 333, 333, 333, 269,
538
+ /* 2890 */ 299, 333, 164, 333, 301, 298, 297, 333, 333, 333,
539
+ /* 2900 */ 333, 333, 333, 333, 333, 333, 333, 333, 154, 291,
540
+ /* 2910 */ 147, 135, 333, 333, 333, 333, 333, 183, 119, 117,
541
+ /* 2920 */ 254, 255, 111, 109, 266, 267, 264, 263, 259, 260,
542
+ /* 2930 */ 261, 262, 246, 245, 237, 232, 300, 178, 333, 333,
543
+ /* 2940 */ 238, 333, 158, 333, 333, 333, 269, 299, 333, 164,
544
+ /* 2950 */ 333, 301, 298, 297, 333, 333, 333, 333, 333, 333,
545
+ /* 2960 */ 333, 333, 333, 333, 333, 154, 291, 147, 135, 333,
546
+ /* 2970 */ 333, 333, 333, 333, 183, 116, 117, 254, 255, 111,
547
+ /* 2980 */ 109, 266, 267, 264, 263, 259, 260, 261, 262, 246,
548
+ /* 2990 */ 245, 237, 232, 300, 178, 333, 333, 238, 333, 158,
549
+ /* 3000 */ 333, 333, 333, 269, 299, 333, 164, 333, 301, 298,
550
+ /* 3010 */ 297, 333, 333, 333, 333, 333, 333, 333, 333, 333,
551
+ /* 3020 */ 333, 333, 154, 291, 147, 135, 333, 333, 333, 333,
552
+ /* 3030 */ 333, 183, 74, 117, 254, 255, 111, 109, 266, 267,
553
+ /* 3040 */ 264, 263, 259, 260, 261, 262, 246, 245, 237, 232,
554
+ /* 3050 */ 300, 178, 333, 333, 238, 333, 158, 333, 333, 333,
555
+ /* 3060 */ 269, 299, 333, 164, 333, 301, 298, 297, 333, 333,
556
+ /* 3070 */ 333, 333, 333, 333, 333, 333, 333, 333, 333, 154,
557
+ /* 3080 */ 291, 147, 135, 333, 333, 333, 333, 333, 183, 97,
558
+ /* 3090 */ 117, 254, 255, 111, 109, 266, 267, 264, 263, 259,
559
+ /* 3100 */ 260, 261, 262, 246, 245, 237, 232, 300, 178, 333,
560
+ /* 3110 */ 333, 238, 333, 158, 333, 333, 333, 269, 299, 333,
561
+ /* 3120 */ 164, 333, 301, 298, 297, 333, 333, 333, 333, 333,
562
+ /* 3130 */ 333, 333, 333, 333, 333, 333, 154, 291, 147, 135,
563
+ /* 3140 */ 333, 333, 333, 333, 333, 183, 98, 117, 254, 255,
564
+ /* 3150 */ 111, 109, 266, 267, 264, 263, 259, 260, 261, 262,
565
+ /* 3160 */ 246, 245, 237, 232, 300, 178, 333, 333, 238, 333,
566
+ /* 3170 */ 158, 333, 333, 333, 269, 299, 333, 164, 333, 301,
567
+ /* 3180 */ 298, 297, 333, 333, 333, 333, 333, 333, 333, 333,
568
+ /* 3190 */ 333, 333, 333, 154, 291, 147, 135, 333, 333, 333,
569
+ /* 3200 */ 333, 333, 183, 78, 117, 254, 255, 111, 109, 266,
570
+ /* 3210 */ 267, 264, 263, 259, 260, 261, 262, 246, 245, 237,
571
+ /* 3220 */ 232, 300, 178, 333, 333, 238, 333, 158, 333, 333,
572
+ /* 3230 */ 333, 269, 299, 333, 164, 333, 301, 298, 297, 333,
573
+ /* 3240 */ 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
574
+ /* 3250 */ 154, 291, 147, 135, 333, 333, 333, 333, 333, 183,
575
+ /* 3260 */ 105, 117, 254, 255, 111, 109, 266, 267, 264, 263,
576
+ /* 3270 */ 259, 260, 261, 262, 246, 245, 237, 232, 300, 178,
577
+ /* 3280 */ 333, 333, 238, 333, 158, 333, 333, 333, 269, 299,
578
+ /* 3290 */ 333, 164, 333, 301, 298, 297, 333, 333, 333, 333,
579
+ /* 3300 */ 333, 333, 333, 333, 333, 333, 333, 154, 291, 147,
580
+ /* 3310 */ 135, 333, 333, 333, 333, 333, 183, 108, 117, 254,
581
+ /* 3320 */ 255, 111, 109, 266, 267, 264, 263, 259, 260, 261,
582
+ /* 3330 */ 262, 246, 245, 237, 232, 300, 178, 333, 333, 238,
583
+ /* 3340 */ 333, 158, 333, 333, 333, 269, 299, 333, 164, 333,
584
+ /* 3350 */ 301, 298, 297, 333, 333, 333, 333, 333, 333, 333,
585
+ /* 3360 */ 333, 333, 333, 333, 154, 291, 147, 135, 333, 333,
586
+ /* 3370 */ 333, 333, 333, 183, 87, 117, 254, 255, 111, 109,
587
+ /* 3380 */ 266, 267, 264, 263, 259, 260, 261, 262, 246, 245,
588
+ /* 3390 */ 237, 232, 300, 178, 333, 333, 238, 333, 158, 333,
589
+ /* 3400 */ 333, 333, 269, 299, 333, 164, 333, 301, 298, 297,
590
+ /* 3410 */ 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
591
+ /* 3420 */ 333, 154, 291, 147, 135, 333, 333, 333, 333, 333,
592
+ /* 3430 */ 183, 92, 117, 254, 255, 111, 109, 266, 267, 264,
593
+ /* 3440 */ 263, 259, 260, 261, 262, 246, 245, 237, 232, 300,
594
+ /* 3450 */ 178, 333, 333, 238, 333, 158, 333, 333, 333, 269,
595
+ /* 3460 */ 299, 333, 164, 333, 301, 298, 297, 333, 333, 333,
596
+ /* 3470 */ 333, 333, 333, 333, 333, 333, 333, 333, 154, 291,
597
+ /* 3480 */ 147, 135, 333, 333, 333, 333, 333, 183, 121, 117,
598
+ /* 3490 */ 254, 255, 111, 109, 266, 267, 264, 263, 259, 260,
599
+ /* 3500 */ 261, 262, 246, 245, 237, 232, 300, 178, 333, 333,
600
+ /* 3510 */ 238, 333, 158, 333, 333, 333, 269, 299, 333, 164,
601
+ /* 3520 */ 333, 301, 298, 297, 333, 333, 333, 333, 333, 333,
602
+ /* 3530 */ 333, 333, 333, 333, 333, 154, 291, 147, 135, 333,
603
+ /* 3540 */ 333, 333, 333, 333, 183, 124, 117, 254, 255, 111,
604
+ /* 3550 */ 109, 266, 267, 264, 263, 259, 260, 261, 262, 246,
605
+ /* 3560 */ 245, 237, 232, 300, 178, 333, 333, 238, 333, 158,
606
+ /* 3570 */ 333, 333, 333, 269, 299, 333, 164, 333, 301, 298,
607
+ /* 3580 */ 297, 333, 333, 333, 333, 333, 333, 333, 333, 333,
608
+ /* 3590 */ 333, 333, 154, 291, 147, 135, 333, 333, 333, 333,
609
+ /* 3600 */ 333, 183, 79, 117, 254, 255, 111, 109, 266, 267,
610
+ /* 3610 */ 264, 263, 259, 260, 261, 262, 246, 245, 237, 232,
611
+ /* 3620 */ 300, 178, 333, 333, 238, 333, 158, 333, 333, 333,
612
+ /* 3630 */ 269, 299, 333, 164, 333, 301, 298, 297, 333, 333,
613
+ /* 3640 */ 333, 333, 333, 333, 333, 333, 333, 333, 333, 154,
614
+ /* 3650 */ 291, 147, 135, 333, 333, 333, 333, 333, 183, 91,
615
+ /* 3660 */ 117, 254, 255, 111, 109, 266, 267, 264, 263, 259,
616
+ /* 3670 */ 260, 261, 262, 246, 245, 237, 232, 300, 178, 333,
617
+ /* 3680 */ 333, 238, 333, 158, 333, 333, 333, 269, 299, 333,
618
+ /* 3690 */ 164, 333, 301, 298, 297, 333, 333, 333, 333, 333,
619
+ /* 3700 */ 333, 333, 333, 333, 333, 333, 154, 291, 147, 135,
620
+ /* 3710 */ 333, 333, 333, 333, 333, 183, 103, 117, 254, 255,
621
+ /* 3720 */ 111, 109, 266, 267, 264, 263, 259, 260, 261, 262,
622
+ /* 3730 */ 246, 245, 237, 232, 300, 178, 333, 333, 238, 333,
623
+ /* 3740 */ 158, 333, 333, 333, 269, 299, 333, 164, 333, 301,
624
+ /* 3750 */ 298, 297, 333, 333, 333, 333, 333, 333, 333, 333,
625
+ /* 3760 */ 333, 333, 333, 154, 291, 147, 135, 333, 333, 333,
626
+ /* 3770 */ 333, 333, 183, 106, 117, 254, 255, 111, 109, 266,
627
+ /* 3780 */ 267, 264, 263, 259, 260, 261, 262, 246, 245, 237,
628
+ /* 3790 */ 232, 300, 178, 333, 333, 238, 333, 158, 333, 333,
629
+ /* 3800 */ 333, 269, 299, 333, 164, 333, 301, 298, 297, 333,
630
+ /* 3810 */ 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
631
+ /* 3820 */ 154, 291, 147, 135, 333, 333, 333, 333, 333, 183,
632
+ /* 3830 */ 80, 117, 254, 255, 111, 109, 266, 267, 264, 263,
633
+ /* 3840 */ 259, 260, 261, 262, 246, 245, 237, 232, 300, 178,
634
+ /* 3850 */ 333, 333, 238, 333, 158, 333, 333, 333, 269, 299,
635
+ /* 3860 */ 333, 164, 333, 301, 298, 297, 333, 333, 333, 333,
636
+ /* 3870 */ 333, 333, 333, 333, 333, 333, 333, 154, 291, 147,
637
+ /* 3880 */ 135, 333, 333, 333, 333, 333, 183, 99, 117, 254,
638
+ /* 3890 */ 255, 111, 109, 266, 267, 264, 263, 259, 260, 261,
639
+ /* 3900 */ 262, 246, 245, 237, 232, 300, 178, 333, 333, 238,
640
+ /* 3910 */ 333, 158, 333, 333, 333, 269, 299, 333, 164, 333,
641
+ /* 3920 */ 301, 298, 297, 333, 333, 333, 333, 333, 333, 333,
642
+ /* 3930 */ 333, 333, 333, 333, 154, 291, 147, 135, 333, 333,
643
+ /* 3940 */ 333, 333, 333, 183, 107, 117, 254, 255, 111, 109,
644
+ /* 3950 */ 266, 267, 264, 263, 259, 260, 261, 262, 246, 245,
645
+ /* 3960 */ 237, 232, 300, 178, 333, 333, 238, 333, 158, 333,
646
+ /* 3970 */ 333, 333, 269, 299, 333, 164, 333, 301, 298, 297,
647
+ /* 3980 */ 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
648
+ /* 3990 */ 333, 154, 291, 147, 135, 333, 333, 333, 333, 333,
649
+ /* 4000 */ 183, 86, 117, 254, 255, 111, 109, 266, 267, 264,
650
+ /* 4010 */ 263, 259, 260, 261, 262, 246, 245, 237, 232, 300,
651
+ /* 4020 */ 178, 333, 333, 238, 333, 158, 333, 333, 333, 269,
652
+ /* 4030 */ 299, 333, 164, 333, 301, 298, 297, 56, 333, 333,
653
+ /* 4040 */ 333, 333, 12, 160, 58, 333, 333, 333, 154, 291,
654
+ /* 4050 */ 147, 135, 57, 25, 333, 333, 333, 183, 333, 333,
655
+ /* 4060 */ 333, 333, 42, 43, 50, 333, 59, 60, 333, 333,
656
+ /* 4070 */ 333, 333, 333, 333, 256, 251, 230, 231, 233, 229,
657
+ /* 4080 */ 228, 224, 234, 63, 333, 240, 236, 160, 333, 333,
658
+ /* 4090 */ 333, 333, 62, 333, 333, 303, 153, 3, 46, 8,
659
+ /* 4100 */ 148, 333, 333, 7, 333, 30, 18, 333, 67, 47,
660
+ /* 4110 */ 24, 333, 333, 333, 333, 333, 333, 333, 333, 251,
661
+ /* 4120 */ 230, 231, 233, 229, 228, 224, 39, 21, 36, 22,
662
+ /* 4130 */ 20, 32, 34, 333, 309, 333, 62, 333, 333, 303,
663
+ /* 4140 */ 153, 3, 333, 313, 333, 333, 333, 7, 333, 112,
664
+ /* 4150 */ 113, 333, 333, 333, 333, 333, 333, 213, 333, 333,
665
+ /* 4160 */ 333, 237, 232, 300, 274, 333, 30, 238, 311, 67,
666
+ /* 4170 */ 47, 24, 333, 269, 299, 333, 127, 333, 301, 298,
667
+ /* 4180 */ 297, 30, 333, 333, 67, 47, 24, 39, 21, 36,
668
+ /* 4190 */ 22, 20, 32, 34, 333, 309, 333, 333, 333, 333,
669
+ /* 4200 */ 126, 333, 39, 21, 36, 22, 20, 32, 34, 30,
670
+ /* 4210 */ 309, 333, 67, 47, 24, 333, 333, 333, 163, 333,
671
+ /* 4220 */ 30, 333, 333, 67, 47, 24, 333, 333, 333, 311,
672
+ /* 4230 */ 39, 21, 36, 22, 20, 32, 34, 333, 309, 333,
673
+ /* 4240 */ 194, 39, 21, 36, 22, 20, 32, 34, 333, 309,
674
+ /* 4250 */ 200, 30, 333, 333, 67, 47, 24, 333, 333, 333,
675
+ /* 4260 */ 333, 333, 333, 201, 195, 333, 333, 192, 180, 199,
676
+ /* 4270 */ 8, 312, 39, 21, 36, 22, 20, 32, 34, 30,
677
+ /* 4280 */ 309, 333, 67, 47, 24, 333, 156, 333, 333, 333,
678
+ /* 4290 */ 333, 333, 333, 333, 333, 333, 333, 333, 333, 209,
679
+ /* 4300 */ 39, 21, 36, 22, 20, 32, 34, 30, 309, 333,
680
+ /* 4310 */ 67, 47, 24, 333, 333, 333, 160, 333, 333, 333,
681
+ /* 4320 */ 333, 333, 333, 333, 333, 333, 333, 196, 39, 21,
682
+ /* 4330 */ 36, 22, 20, 32, 34, 30, 309, 333, 67, 47,
683
+ /* 4340 */ 24, 333, 333, 333, 333, 333, 333, 333, 251, 230,
684
+ /* 4350 */ 231, 233, 229, 228, 224, 333, 39, 21, 36, 22,
685
+ /* 4360 */ 20, 32, 34, 333, 309, 62, 112, 113, 303, 153,
686
+ /* 4370 */ 3, 333, 333, 333, 333, 333, 7, 333, 237, 232,
687
+ /* 4380 */ 300, 274, 333, 333, 238, 333, 333, 289, 333, 333,
688
+ /* 4390 */ 269, 299, 333, 161, 333, 301, 298, 297, 333, 112,
689
+ /* 4400 */ 113, 333, 333, 333, 333, 333, 333, 333, 333, 333,
690
+ /* 4410 */ 333, 237, 232, 300, 274, 30, 333, 238, 67, 47,
691
+ /* 4420 */ 24, 333, 333, 269, 299, 333, 162, 333, 301, 298,
692
+ /* 4430 */ 297, 67, 47, 24, 333, 333, 39, 21, 36, 22,
693
+ /* 4440 */ 20, 32, 34, 333, 309, 333, 333, 8, 333, 39,
694
+ /* 4450 */ 21, 36, 22, 20, 32, 34, 333, 309, 67, 47,
695
+ /* 4460 */ 24, 333, 333, 333, 333, 333, 333, 49, 333, 333,
696
+ /* 4470 */ 333, 333, 333, 333, 333, 333, 39, 21, 36, 22,
697
+ /* 4480 */ 20, 32, 34, 333, 309, 67, 47, 24, 333, 333,
698
+ /* 4490 */ 333, 333, 333, 333, 41, 333, 23, 8, 333, 67,
699
+ /* 4500 */ 47, 24, 333, 39, 21, 36, 22, 20, 32, 34,
700
+ /* 4510 */ 381, 309, 381, 381, 381, 333, 333, 39, 21, 36,
701
+ /* 4520 */ 22, 20, 32, 34, 200, 309, 333, 333, 333, 333,
702
+ /* 4530 */ 333, 381, 333, 381, 333, 333, 381, 201, 195, 333,
703
+ /* 4540 */ 333, 192, 180, 199, 333, 333, 333, 333, 333, 333,
704
+ /* 4550 */ 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
705
+ /* 4560 */ 157,
706
+ );
707
+ static public $yy_lookahead = array(
708
+ /* 0 */ 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
709
+ /* 10 */ 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
710
+ /* 20 */ 94, 95, 96, 97, 27, 28, 100, 30, 102, 76,
711
+ /* 30 */ 12, 13, 106, 107, 54, 109, 56, 111, 112, 113,
712
+ /* 40 */ 22, 23, 24, 25, 26, 27, 28, 125, 30, 127,
713
+ /* 50 */ 128, 125, 126, 127, 128, 26, 27, 28, 52, 30,
714
+ /* 60 */ 134, 78, 79, 80, 81, 82, 83, 84, 85, 86,
715
+ /* 70 */ 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
716
+ /* 80 */ 97, 66, 67, 100, 40, 102, 40, 41, 42, 106,
717
+ /* 90 */ 107, 108, 109, 47, 111, 112, 113, 23, 24, 25,
718
+ /* 100 */ 26, 27, 28, 120, 30, 122, 76, 61, 125, 126,
719
+ /* 110 */ 127, 128, 125, 38, 127, 128, 20, 134, 78, 79,
720
+ /* 120 */ 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
721
+ /* 130 */ 90, 91, 92, 93, 94, 95, 96, 97, 49, 20,
722
+ /* 140 */ 100, 52, 102, 21, 69, 81, 106, 107, 52, 109,
723
+ /* 150 */ 103, 111, 112, 113, 16, 115, 116, 19, 94, 95,
724
+ /* 160 */ 38, 121, 98, 99, 100, 125, 126, 127, 128, 31,
725
+ /* 170 */ 32, 10, 11, 94, 134, 78, 79, 80, 81, 82,
726
+ /* 180 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
727
+ /* 190 */ 93, 94, 95, 96, 97, 132, 133, 100, 94, 102,
728
+ /* 200 */ 132, 133, 119, 106, 107, 108, 109, 33, 111, 112,
729
+ /* 210 */ 113, 21, 24, 25, 26, 27, 28, 120, 30, 122,
730
+ /* 220 */ 14, 76, 125, 126, 127, 128, 76, 3, 38, 50,
731
+ /* 230 */ 51, 134, 78, 79, 80, 81, 82, 83, 84, 85,
732
+ /* 240 */ 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
733
+ /* 250 */ 96, 97, 21, 21, 100, 52, 102, 55, 66, 53,
734
+ /* 260 */ 106, 107, 108, 109, 38, 111, 112, 113, 25, 26,
735
+ /* 270 */ 27, 28, 94, 30, 120, 125, 122, 127, 128, 125,
736
+ /* 280 */ 126, 127, 128, 38, 106, 107, 15, 119, 134, 78,
737
+ /* 290 */ 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
738
+ /* 300 */ 89, 90, 91, 92, 93, 94, 95, 96, 97, 131,
739
+ /* 310 */ 40, 100, 40, 102, 38, 69, 14, 106, 107, 108,
740
+ /* 320 */ 109, 103, 111, 112, 113, 76, 20, 57, 129, 57,
741
+ /* 330 */ 94, 120, 62, 122, 62, 76, 125, 126, 127, 128,
742
+ /* 340 */ 70, 124, 106, 107, 38, 134, 78, 79, 80, 81,
743
+ /* 350 */ 82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
744
+ /* 360 */ 92, 93, 94, 95, 96, 97, 130, 131, 100, 63,
745
+ /* 370 */ 102, 20, 21, 94, 106, 107, 108, 109, 114, 111,
746
+ /* 380 */ 112, 113, 33, 110, 35, 36, 37, 114, 120, 38,
747
+ /* 390 */ 122, 118, 52, 125, 126, 127, 128, 103, 94, 76,
748
+ /* 400 */ 102, 76, 134, 54, 30, 56, 72, 75, 59, 77,
749
+ /* 410 */ 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
750
+ /* 420 */ 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
751
+ /* 430 */ 133, 103, 100, 76, 102, 76, 20, 94, 106, 107,
752
+ /* 440 */ 103, 109, 76, 111, 112, 113, 2, 76, 4, 5,
753
+ /* 450 */ 6, 7, 8, 9, 38, 76, 76, 125, 126, 127,
754
+ /* 460 */ 128, 17, 18, 119, 20, 103, 134, 76, 52, 135,
755
+ /* 470 */ 110, 27, 28, 29, 114, 31, 32, 1, 118, 63,
756
+ /* 480 */ 4, 5, 6, 39, 40, 41, 42, 43, 44, 45,
757
+ /* 490 */ 46, 47, 48, 20, 50, 51, 125, 135, 127, 128,
758
+ /* 500 */ 135, 57, 135, 135, 60, 61, 62, 63, 135, 65,
759
+ /* 510 */ 2, 38, 68, 135, 94, 71, 135, 135, 2, 135,
760
+ /* 520 */ 4, 5, 6, 7, 8, 9, 106, 107, 20, 94,
761
+ /* 530 */ 135, 58, 112, 17, 18, 100, 20, 135, 135, 104,
762
+ /* 540 */ 105, 106, 107, 27, 28, 29, 135, 31, 32, 135,
763
+ /* 550 */ 130, 131, 3, 135, 38, 39, 40, 41, 42, 43,
764
+ /* 560 */ 44, 45, 46, 47, 48, 76, 50, 51, 121, 135,
765
+ /* 570 */ 21, 135, 125, 57, 127, 128, 60, 61, 62, 121,
766
+ /* 580 */ 135, 65, 135, 125, 68, 127, 128, 71, 75, 135,
767
+ /* 590 */ 77, 78, 79, 80, 81, 82, 83, 84, 85, 86,
768
+ /* 600 */ 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
769
+ /* 610 */ 97, 76, 135, 100, 125, 102, 127, 128, 135, 106,
770
+ /* 620 */ 107, 72, 109, 135, 111, 112, 113, 2, 135, 4,
771
+ /* 630 */ 5, 6, 7, 8, 9, 135, 135, 20, 125, 126,
772
+ /* 640 */ 127, 128, 17, 18, 135, 20, 135, 134, 135, 135,
773
+ /* 650 */ 135, 34, 27, 28, 29, 38, 31, 32, 135, 34,
774
+ /* 660 */ 125, 3, 127, 128, 39, 40, 41, 42, 43, 44,
775
+ /* 670 */ 45, 46, 47, 48, 135, 50, 51, 135, 135, 21,
776
+ /* 680 */ 135, 135, 57, 135, 135, 60, 61, 62, 135, 135,
777
+ /* 690 */ 65, 135, 135, 68, 135, 75, 71, 77, 78, 79,
778
+ /* 700 */ 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
779
+ /* 710 */ 90, 91, 92, 93, 94, 95, 96, 97, 135, 135,
780
+ /* 720 */ 100, 135, 102, 135, 20, 21, 106, 107, 135, 109,
781
+ /* 730 */ 72, 111, 112, 113, 2, 135, 4, 5, 6, 7,
782
+ /* 740 */ 8, 9, 38, 135, 135, 125, 126, 127, 128, 17,
783
+ /* 750 */ 18, 20, 21, 135, 134, 135, 135, 135, 135, 27,
784
+ /* 760 */ 28, 29, 135, 31, 32, 135, 135, 135, 135, 38,
785
+ /* 770 */ 135, 39, 40, 41, 42, 43, 44, 45, 46, 47,
786
+ /* 780 */ 48, 135, 50, 51, 135, 53, 135, 135, 135, 57,
787
+ /* 790 */ 135, 135, 60, 61, 62, 135, 64, 65, 135, 135,
788
+ /* 800 */ 68, 135, 135, 71, 135, 78, 79, 80, 81, 82,
789
+ /* 810 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
790
+ /* 820 */ 93, 94, 95, 96, 97, 135, 135, 100, 135, 102,
791
+ /* 830 */ 135, 135, 12, 106, 107, 108, 109, 135, 111, 112,
792
+ /* 840 */ 113, 135, 22, 23, 24, 25, 26, 27, 28, 122,
793
+ /* 850 */ 30, 135, 125, 126, 127, 128, 135, 135, 135, 135,
794
+ /* 860 */ 135, 134, 78, 79, 80, 81, 82, 83, 84, 85,
795
+ /* 870 */ 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
796
+ /* 880 */ 96, 97, 135, 135, 100, 135, 102, 135, 135, 135,
797
+ /* 890 */ 106, 107, 108, 109, 135, 111, 112, 113, 135, 22,
798
+ /* 900 */ 23, 24, 25, 26, 27, 28, 122, 30, 135, 125,
799
+ /* 910 */ 126, 127, 128, 94, 135, 135, 135, 135, 134, 100,
800
+ /* 920 */ 101, 135, 135, 104, 105, 106, 107, 77, 78, 79,
801
+ /* 930 */ 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
802
+ /* 940 */ 90, 91, 92, 93, 94, 95, 96, 97, 135, 135,
803
+ /* 950 */ 100, 135, 102, 135, 135, 13, 106, 107, 135, 109,
804
+ /* 960 */ 135, 111, 112, 113, 22, 23, 24, 25, 26, 27,
805
+ /* 970 */ 28, 135, 30, 135, 135, 125, 126, 127, 128, 135,
806
+ /* 980 */ 135, 135, 135, 76, 134, 78, 79, 80, 81, 82,
807
+ /* 990 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
808
+ /* 1000 */ 93, 94, 95, 96, 97, 135, 135, 100, 135, 102,
809
+ /* 1010 */ 135, 135, 135, 106, 107, 135, 109, 135, 111, 112,
810
+ /* 1020 */ 113, 2, 135, 4, 5, 6, 7, 8, 9, 135,
811
+ /* 1030 */ 135, 135, 125, 126, 127, 128, 17, 18, 135, 20,
812
+ /* 1040 */ 135, 134, 135, 135, 135, 135, 27, 28, 29, 135,
813
+ /* 1050 */ 31, 32, 135, 135, 135, 135, 135, 135, 39, 40,
814
+ /* 1060 */ 41, 42, 43, 44, 45, 46, 47, 48, 135, 50,
815
+ /* 1070 */ 51, 135, 135, 135, 135, 135, 57, 135, 135, 60,
816
+ /* 1080 */ 61, 62, 135, 135, 65, 135, 135, 68, 135, 135,
817
+ /* 1090 */ 71, 135, 135, 2, 135, 4, 5, 6, 7, 8,
818
+ /* 1100 */ 9, 135, 135, 33, 135, 35, 36, 37, 17, 18,
819
+ /* 1110 */ 135, 20, 135, 135, 135, 135, 135, 135, 27, 28,
820
+ /* 1120 */ 29, 135, 31, 32, 54, 135, 56, 135, 40, 59,
821
+ /* 1130 */ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
822
+ /* 1140 */ 135, 50, 51, 135, 135, 57, 135, 135, 57, 61,
823
+ /* 1150 */ 62, 60, 61, 62, 135, 135, 65, 135, 135, 68,
824
+ /* 1160 */ 135, 135, 71, 135, 135, 2, 135, 4, 5, 6,
825
+ /* 1170 */ 7, 8, 9, 135, 135, 135, 135, 35, 36, 37,
826
+ /* 1180 */ 17, 18, 135, 20, 135, 135, 135, 135, 135, 135,
827
+ /* 1190 */ 27, 28, 29, 135, 31, 32, 54, 135, 56, 135,
828
+ /* 1200 */ 135, 59, 39, 40, 41, 42, 43, 44, 45, 46,
829
+ /* 1210 */ 47, 48, 135, 50, 51, 135, 135, 135, 135, 135,
830
+ /* 1220 */ 57, 135, 135, 60, 61, 62, 135, 135, 65, 135,
831
+ /* 1230 */ 135, 68, 135, 135, 71, 78, 79, 80, 81, 82,
832
+ /* 1240 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
833
+ /* 1250 */ 93, 94, 95, 96, 97, 135, 135, 100, 135, 102,
834
+ /* 1260 */ 135, 135, 135, 106, 107, 135, 109, 135, 111, 112,
835
+ /* 1270 */ 113, 2, 135, 4, 5, 6, 7, 8, 9, 135,
836
+ /* 1280 */ 123, 135, 125, 126, 127, 128, 17, 18, 135, 20,
837
+ /* 1290 */ 135, 134, 135, 135, 135, 135, 27, 28, 29, 135,
838
+ /* 1300 */ 31, 32, 135, 135, 135, 135, 135, 135, 39, 40,
839
+ /* 1310 */ 41, 42, 43, 44, 45, 46, 47, 48, 135, 50,
840
+ /* 1320 */ 51, 135, 135, 135, 135, 135, 57, 135, 135, 60,
841
+ /* 1330 */ 61, 62, 135, 135, 65, 135, 135, 68, 135, 135,
842
+ /* 1340 */ 71, 135, 135, 2, 135, 4, 5, 6, 7, 8,
843
+ /* 1350 */ 9, 135, 135, 135, 135, 135, 135, 135, 17, 18,
844
+ /* 1360 */ 135, 135, 21, 135, 135, 135, 135, 135, 27, 28,
845
+ /* 1370 */ 29, 135, 31, 32, 135, 135, 135, 135, 135, 135,
846
+ /* 1380 */ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
847
+ /* 1390 */ 135, 50, 51, 135, 135, 135, 135, 135, 57, 135,
848
+ /* 1400 */ 135, 60, 61, 62, 135, 135, 65, 135, 135, 68,
849
+ /* 1410 */ 135, 135, 71, 135, 135, 2, 135, 4, 5, 6,
850
+ /* 1420 */ 7, 8, 9, 135, 135, 135, 135, 135, 135, 135,
851
+ /* 1430 */ 17, 18, 135, 20, 135, 135, 135, 135, 135, 135,
852
+ /* 1440 */ 27, 28, 29, 135, 31, 32, 135, 135, 135, 135,
853
+ /* 1450 */ 135, 135, 39, 40, 41, 42, 43, 44, 45, 46,
854
+ /* 1460 */ 47, 48, 135, 50, 51, 135, 135, 135, 135, 135,
855
+ /* 1470 */ 57, 135, 135, 60, 61, 62, 135, 135, 65, 135,
856
+ /* 1480 */ 135, 68, 135, 135, 71, 135, 135, 2, 135, 4,
857
+ /* 1490 */ 5, 6, 7, 8, 9, 135, 135, 135, 135, 135,
858
+ /* 1500 */ 135, 135, 17, 18, 135, 20, 135, 135, 135, 135,
859
+ /* 1510 */ 135, 135, 27, 28, 29, 135, 31, 32, 135, 135,
860
+ /* 1520 */ 135, 135, 135, 135, 39, 40, 41, 42, 43, 44,
861
+ /* 1530 */ 45, 46, 47, 48, 135, 50, 51, 135, 135, 135,
862
+ /* 1540 */ 135, 135, 57, 135, 135, 60, 61, 62, 135, 135,
863
+ /* 1550 */ 65, 135, 135, 68, 135, 135, 71, 78, 79, 80,
864
+ /* 1560 */ 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
865
+ /* 1570 */ 91, 92, 93, 94, 95, 96, 97, 135, 135, 100,
866
+ /* 1580 */ 135, 102, 135, 135, 135, 106, 107, 135, 109, 135,
867
+ /* 1590 */ 111, 112, 113, 2, 135, 4, 5, 6, 7, 8,
868
+ /* 1600 */ 9, 135, 135, 135, 125, 126, 127, 128, 17, 18,
869
+ /* 1610 */ 135, 135, 135, 134, 135, 135, 135, 135, 27, 28,
870
+ /* 1620 */ 29, 135, 31, 32, 135, 135, 135, 135, 135, 135,
871
+ /* 1630 */ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
872
+ /* 1640 */ 135, 50, 51, 135, 135, 135, 135, 135, 57, 135,
873
+ /* 1650 */ 135, 60, 61, 62, 135, 135, 65, 135, 135, 68,
874
+ /* 1660 */ 135, 135, 71, 135, 78, 79, 80, 81, 82, 83,
875
+ /* 1670 */ 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
876
+ /* 1680 */ 94, 95, 96, 97, 135, 135, 100, 135, 102, 135,
877
+ /* 1690 */ 135, 13, 106, 107, 135, 109, 135, 111, 112, 113,
878
+ /* 1700 */ 22, 23, 24, 25, 26, 27, 28, 135, 30, 135,
879
+ /* 1710 */ 135, 125, 126, 127, 128, 135, 135, 135, 135, 135,
880
+ /* 1720 */ 134, 78, 79, 80, 81, 82, 83, 84, 85, 86,
881
+ /* 1730 */ 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
882
+ /* 1740 */ 97, 135, 135, 100, 81, 102, 135, 135, 135, 106,
883
+ /* 1750 */ 107, 135, 109, 135, 111, 112, 113, 94, 95, 135,
884
+ /* 1760 */ 135, 98, 99, 100, 135, 135, 135, 135, 125, 126,
885
+ /* 1770 */ 127, 128, 135, 135, 135, 135, 135, 134, 78, 79,
886
+ /* 1780 */ 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
887
+ /* 1790 */ 90, 91, 92, 93, 94, 95, 96, 97, 135, 135,
888
+ /* 1800 */ 100, 135, 102, 135, 135, 135, 106, 107, 135, 109,
889
+ /* 1810 */ 135, 111, 112, 113, 135, 135, 135, 135, 135, 135,
890
+ /* 1820 */ 135, 135, 135, 135, 135, 125, 126, 127, 128, 135,
891
+ /* 1830 */ 135, 135, 135, 135, 134, 78, 79, 80, 81, 82,
892
+ /* 1840 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
893
+ /* 1850 */ 93, 94, 95, 96, 97, 135, 135, 100, 135, 102,
894
+ /* 1860 */ 135, 135, 135, 106, 107, 135, 109, 135, 111, 112,
895
+ /* 1870 */ 113, 135, 135, 135, 135, 135, 135, 135, 135, 135,
896
+ /* 1880 */ 135, 135, 125, 126, 127, 128, 135, 135, 135, 135,
897
+ /* 1890 */ 135, 134, 78, 79, 80, 81, 82, 83, 84, 85,
898
+ /* 1900 */ 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
899
+ /* 1910 */ 96, 97, 135, 135, 100, 135, 102, 135, 135, 135,
900
+ /* 1920 */ 106, 107, 135, 109, 135, 111, 112, 113, 135, 135,
901
+ /* 1930 */ 135, 135, 135, 135, 135, 135, 135, 135, 135, 125,
902
+ /* 1940 */ 126, 127, 128, 135, 135, 135, 135, 135, 134, 78,
903
+ /* 1950 */ 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
904
+ /* 1960 */ 89, 90, 91, 92, 93, 94, 95, 96, 97, 135,
905
+ /* 1970 */ 135, 100, 135, 102, 135, 135, 135, 106, 107, 135,
906
+ /* 1980 */ 109, 135, 111, 112, 113, 135, 135, 135, 135, 135,
907
+ /* 1990 */ 135, 135, 135, 135, 135, 135, 125, 126, 127, 128,
908
+ /* 2000 */ 135, 135, 135, 135, 135, 134, 78, 79, 80, 81,
909
+ /* 2010 */ 82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
910
+ /* 2020 */ 92, 93, 94, 95, 96, 97, 135, 135, 100, 135,
911
+ /* 2030 */ 102, 135, 135, 135, 106, 107, 135, 109, 135, 111,
912
+ /* 2040 */ 112, 113, 135, 135, 135, 135, 135, 135, 135, 135,
913
+ /* 2050 */ 135, 135, 135, 125, 126, 127, 128, 135, 135, 135,
914
+ /* 2060 */ 135, 135, 134, 78, 79, 80, 81, 82, 83, 84,
915
+ /* 2070 */ 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
916
+ /* 2080 */ 95, 96, 97, 135, 135, 100, 135, 102, 135, 135,
917
+ /* 2090 */ 135, 106, 107, 135, 109, 135, 111, 112, 113, 135,
918
+ /* 2100 */ 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
919
+ /* 2110 */ 125, 126, 127, 128, 135, 135, 135, 135, 135, 134,
920
+ /* 2120 */ 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
921
+ /* 2130 */ 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
922
+ /* 2140 */ 135, 135, 100, 135, 102, 135, 135, 135, 106, 107,
923
+ /* 2150 */ 135, 109, 135, 111, 112, 113, 135, 135, 135, 135,
924
+ /* 2160 */ 135, 135, 135, 135, 135, 135, 135, 125, 126, 127,
925
+ /* 2170 */ 128, 135, 135, 135, 135, 135, 134, 78, 79, 80,
926
+ /* 2180 */ 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
927
+ /* 2190 */ 91, 92, 93, 94, 95, 96, 97, 135, 135, 100,
928
+ /* 2200 */ 135, 102, 135, 135, 135, 106, 107, 135, 109, 135,
929
+ /* 2210 */ 111, 112, 113, 135, 135, 135, 135, 135, 135, 135,
930
+ /* 2220 */ 135, 135, 135, 135, 125, 126, 127, 128, 135, 135,
931
+ /* 2230 */ 135, 135, 135, 134, 78, 79, 80, 81, 82, 83,
932
+ /* 2240 */ 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
933
+ /* 2250 */ 94, 95, 96, 97, 135, 135, 100, 135, 102, 135,
934
+ /* 2260 */ 135, 135, 106, 107, 135, 109, 135, 111, 112, 113,
935
+ /* 2270 */ 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
936
+ /* 2280 */ 135, 125, 126, 127, 128, 135, 135, 135, 135, 135,
937
+ /* 2290 */ 134, 78, 79, 80, 81, 82, 83, 84, 85, 86,
938
+ /* 2300 */ 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
939
+ /* 2310 */ 97, 135, 135, 100, 135, 102, 135, 135, 135, 106,
940
+ /* 2320 */ 107, 135, 109, 135, 111, 112, 113, 135, 135, 135,
941
+ /* 2330 */ 135, 135, 135, 135, 135, 135, 135, 135, 125, 126,
942
+ /* 2340 */ 127, 128, 135, 135, 135, 135, 135, 134, 78, 79,
943
+ /* 2350 */ 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
944
+ /* 2360 */ 90, 91, 92, 93, 94, 95, 96, 97, 135, 135,
945
+ /* 2370 */ 100, 135, 102, 135, 135, 135, 106, 107, 135, 109,
946
+ /* 2380 */ 135, 111, 112, 113, 135, 135, 135, 135, 135, 135,
947
+ /* 2390 */ 135, 135, 135, 135, 135, 125, 126, 127, 128, 135,
948
+ /* 2400 */ 135, 135, 135, 135, 134, 78, 79, 80, 81, 82,
949
+ /* 2410 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
950
+ /* 2420 */ 93, 94, 95, 96, 97, 135, 135, 100, 135, 102,
951
+ /* 2430 */ 135, 135, 135, 106, 107, 135, 109, 135, 111, 112,
952
+ /* 2440 */ 113, 135, 135, 135, 135, 135, 135, 135, 135, 135,
953
+ /* 2450 */ 135, 135, 125, 126, 127, 128, 135, 135, 135, 135,
954
+ /* 2460 */ 135, 134, 78, 79, 80, 81, 82, 83, 84, 85,
955
+ /* 2470 */ 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
956
+ /* 2480 */ 96, 97, 135, 135, 100, 135, 102, 135, 135, 135,
957
+ /* 2490 */ 106, 107, 135, 109, 135, 111, 112, 113, 135, 135,
958
+ /* 2500 */ 135, 135, 135, 135, 135, 135, 135, 135, 135, 125,
959
+ /* 2510 */ 126, 127, 128, 135, 135, 135, 135, 135, 134, 78,
960
+ /* 2520 */ 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
961
+ /* 2530 */ 89, 90, 91, 92, 93, 94, 95, 96, 97, 135,
962
+ /* 2540 */ 135, 100, 135, 102, 135, 135, 135, 106, 107, 135,
963
+ /* 2550 */ 109, 135, 111, 112, 113, 135, 135, 135, 135, 135,
964
+ /* 2560 */ 135, 135, 135, 135, 135, 135, 125, 126, 127, 128,
965
+ /* 2570 */ 135, 135, 135, 135, 135, 134, 78, 79, 80, 81,
966
+ /* 2580 */ 82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
967
+ /* 2590 */ 92, 93, 94, 95, 96, 97, 135, 135, 100, 135,
968
+ /* 2600 */ 102, 135, 135, 135, 106, 107, 135, 109, 135, 111,
969
+ /* 2610 */ 112, 113, 135, 135, 135, 135, 135, 135, 135, 135,
970
+ /* 2620 */ 135, 135, 135, 125, 126, 127, 128, 135, 135, 135,
971
+ /* 2630 */ 135, 135, 134, 78, 79, 80, 81, 82, 83, 84,
972
+ /* 2640 */ 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
973
+ /* 2650 */ 95, 96, 97, 135, 135, 100, 135, 102, 135, 135,
974
+ /* 2660 */ 135, 106, 107, 135, 109, 135, 111, 112, 113, 135,
975
+ /* 2670 */ 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
976
+ /* 2680 */ 125, 126, 127, 128, 135, 135, 135, 135, 135, 134,
977
+ /* 2690 */ 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
978
+ /* 2700 */ 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
979
+ /* 2710 */ 135, 135, 100, 135, 102, 135, 135, 135, 106, 107,
980
+ /* 2720 */ 135, 109, 135, 111, 112, 113, 135, 135, 135, 135,
981
+ /* 2730 */ 135, 135, 135, 135, 135, 135, 135, 125, 126, 127,
982
+ /* 2740 */ 128, 135, 135, 135, 135, 135, 134, 78, 79, 80,
983
+ /* 2750 */ 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
984
+ /* 2760 */ 91, 92, 93, 94, 95, 96, 97, 135, 135, 100,
985
+ /* 2770 */ 135, 102, 135, 135, 135, 106, 107, 135, 109, 135,
986
+ /* 2780 */ 111, 112, 113, 135, 135, 135, 135, 135, 135, 135,
987
+ /* 2790 */ 135, 135, 135, 135, 125, 126, 127, 128, 135, 135,
988
+ /* 2800 */ 135, 135, 135, 134, 78, 79, 80, 81, 82, 83,
989
+ /* 2810 */ 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
990
+ /* 2820 */ 94, 95, 96, 97, 135, 135, 100, 135, 102, 135,
991
+ /* 2830 */ 135, 135, 106, 107, 135, 109, 135, 111, 112, 113,
992
+ /* 2840 */ 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
993
+ /* 2850 */ 135, 125, 126, 127, 128, 135, 135, 135, 135, 135,
994
+ /* 2860 */ 134, 78, 79, 80, 81, 82, 83, 84, 85, 86,
995
+ /* 2870 */ 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
996
+ /* 2880 */ 97, 135, 135, 100, 135, 102, 135, 135, 135, 106,
997
+ /* 2890 */ 107, 135, 109, 135, 111, 112, 113, 135, 135, 135,
998
+ /* 2900 */ 135, 135, 135, 135, 135, 135, 135, 135, 125, 126,
999
+ /* 2910 */ 127, 128, 135, 135, 135, 135, 135, 134, 78, 79,
1000
+ /* 2920 */ 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
1001
+ /* 2930 */ 90, 91, 92, 93, 94, 95, 96, 97, 135, 135,
1002
+ /* 2940 */ 100, 135, 102, 135, 135, 135, 106, 107, 135, 109,
1003
+ /* 2950 */ 135, 111, 112, 113, 135, 135, 135, 135, 135, 135,
1004
+ /* 2960 */ 135, 135, 135, 135, 135, 125, 126, 127, 128, 135,
1005
+ /* 2970 */ 135, 135, 135, 135, 134, 78, 79, 80, 81, 82,
1006
+ /* 2980 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
1007
+ /* 2990 */ 93, 94, 95, 96, 97, 135, 135, 100, 135, 102,
1008
+ /* 3000 */ 135, 135, 135, 106, 107, 135, 109, 135, 111, 112,
1009
+ /* 3010 */ 113, 135, 135, 135, 135, 135, 135, 135, 135, 135,
1010
+ /* 3020 */ 135, 135, 125, 126, 127, 128, 135, 135, 135, 135,
1011
+ /* 3030 */ 135, 134, 78, 79, 80, 81, 82, 83, 84, 85,
1012
+ /* 3040 */ 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
1013
+ /* 3050 */ 96, 97, 135, 135, 100, 135, 102, 135, 135, 135,
1014
+ /* 3060 */ 106, 107, 135, 109, 135, 111, 112, 113, 135, 135,
1015
+ /* 3070 */ 135, 135, 135, 135, 135, 135, 135, 135, 135, 125,
1016
+ /* 3080 */ 126, 127, 128, 135, 135, 135, 135, 135, 134, 78,
1017
+ /* 3090 */ 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
1018
+ /* 3100 */ 89, 90, 91, 92, 93, 94, 95, 96, 97, 135,
1019
+ /* 3110 */ 135, 100, 135, 102, 135, 135, 135, 106, 107, 135,
1020
+ /* 3120 */ 109, 135, 111, 112, 113, 135, 135, 135, 135, 135,
1021
+ /* 3130 */ 135, 135, 135, 135, 135, 135, 125, 126, 127, 128,
1022
+ /* 3140 */ 135, 135, 135, 135, 135, 134, 78, 79, 80, 81,
1023
+ /* 3150 */ 82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
1024
+ /* 3160 */ 92, 93, 94, 95, 96, 97, 135, 135, 100, 135,
1025
+ /* 3170 */ 102, 135, 135, 135, 106, 107, 135, 109, 135, 111,
1026
+ /* 3180 */ 112, 113, 135, 135, 135, 135, 135, 135, 135, 135,
1027
+ /* 3190 */ 135, 135, 135, 125, 126, 127, 128, 135, 135, 135,
1028
+ /* 3200 */ 135, 135, 134, 78, 79, 80, 81, 82, 83, 84,
1029
+ /* 3210 */ 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
1030
+ /* 3220 */ 95, 96, 97, 135, 135, 100, 135, 102, 135, 135,
1031
+ /* 3230 */ 135, 106, 107, 135, 109, 135, 111, 112, 113, 135,
1032
+ /* 3240 */ 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
1033
+ /* 3250 */ 125, 126, 127, 128, 135, 135, 135, 135, 135, 134,
1034
+ /* 3260 */ 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
1035
+ /* 3270 */ 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
1036
+ /* 3280 */ 135, 135, 100, 135, 102, 135, 135, 135, 106, 107,
1037
+ /* 3290 */ 135, 109, 135, 111, 112, 113, 135, 135, 135, 135,
1038
+ /* 3300 */ 135, 135, 135, 135, 135, 135, 135, 125, 126, 127,
1039
+ /* 3310 */ 128, 135, 135, 135, 135, 135, 134, 78, 79, 80,
1040
+ /* 3320 */ 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
1041
+ /* 3330 */ 91, 92, 93, 94, 95, 96, 97, 135, 135, 100,
1042
+ /* 3340 */ 135, 102, 135, 135, 135, 106, 107, 135, 109, 135,
1043
+ /* 3350 */ 111, 112, 113, 135, 135, 135, 135, 135, 135, 135,
1044
+ /* 3360 */ 135, 135, 135, 135, 125, 126, 127, 128, 135, 135,
1045
+ /* 3370 */ 135, 135, 135, 134, 78, 79, 80, 81, 82, 83,
1046
+ /* 3380 */ 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
1047
+ /* 3390 */ 94, 95, 96, 97, 135, 135, 100, 135, 102, 135,
1048
+ /* 3400 */ 135, 135, 106, 107, 135, 109, 135, 111, 112, 113,
1049
+ /* 3410 */ 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
1050
+ /* 3420 */ 135, 125, 126, 127, 128, 135, 135, 135, 135, 135,
1051
+ /* 3430 */ 134, 78, 79, 80, 81, 82, 83, 84, 85, 86,
1052
+ /* 3440 */ 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
1053
+ /* 3450 */ 97, 135, 135, 100, 135, 102, 135, 135, 135, 106,
1054
+ /* 3460 */ 107, 135, 109, 135, 111, 112, 113, 135, 135, 135,
1055
+ /* 3470 */ 135, 135, 135, 135, 135, 135, 135, 135, 125, 126,
1056
+ /* 3480 */ 127, 128, 135, 135, 135, 135, 135, 134, 78, 79,
1057
+ /* 3490 */ 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
1058
+ /* 3500 */ 90, 91, 92, 93, 94, 95, 96, 97, 135, 135,
1059
+ /* 3510 */ 100, 135, 102, 135, 135, 135, 106, 107, 135, 109,
1060
+ /* 3520 */ 135, 111, 112, 113, 135, 135, 135, 135, 135, 135,
1061
+ /* 3530 */ 135, 135, 135, 135, 135, 125, 126, 127, 128, 135,
1062
+ /* 3540 */ 135, 135, 135, 135, 134, 78, 79, 80, 81, 82,
1063
+ /* 3550 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
1064
+ /* 3560 */ 93, 94, 95, 96, 97, 135, 135, 100, 135, 102,
1065
+ /* 3570 */ 135, 135, 135, 106, 107, 135, 109, 135, 111, 112,
1066
+ /* 3580 */ 113, 135, 135, 135, 135, 135, 135, 135, 135, 135,
1067
+ /* 3590 */ 135, 135, 125, 126, 127, 128, 135, 135, 135, 135,
1068
+ /* 3600 */ 135, 134, 78, 79, 80, 81, 82, 83, 84, 85,
1069
+ /* 3610 */ 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
1070
+ /* 3620 */ 96, 97, 135, 135, 100, 135, 102, 135, 135, 135,
1071
+ /* 3630 */ 106, 107, 135, 109, 135, 111, 112, 113, 135, 135,
1072
+ /* 3640 */ 135, 135, 135, 135, 135, 135, 135, 135, 135, 125,
1073
+ /* 3650 */ 126, 127, 128, 135, 135, 135, 135, 135, 134, 78,
1074
+ /* 3660 */ 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
1075
+ /* 3670 */ 89, 90, 91, 92, 93, 94, 95, 96, 97, 135,
1076
+ /* 3680 */ 135, 100, 135, 102, 135, 135, 135, 106, 107, 135,
1077
+ /* 3690 */ 109, 135, 111, 112, 113, 135, 135, 135, 135, 135,
1078
+ /* 3700 */ 135, 135, 135, 135, 135, 135, 125, 126, 127, 128,
1079
+ /* 3710 */ 135, 135, 135, 135, 135, 134, 78, 79, 80, 81,
1080
+ /* 3720 */ 82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
1081
+ /* 3730 */ 92, 93, 94, 95, 96, 97, 135, 135, 100, 135,
1082
+ /* 3740 */ 102, 135, 135, 135, 106, 107, 135, 109, 135, 111,
1083
+ /* 3750 */ 112, 113, 135, 135, 135, 135, 135, 135, 135, 135,
1084
+ /* 3760 */ 135, 135, 135, 125, 126, 127, 128, 135, 135, 135,
1085
+ /* 3770 */ 135, 135, 134, 78, 79, 80, 81, 82, 83, 84,
1086
+ /* 3780 */ 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
1087
+ /* 3790 */ 95, 96, 97, 135, 135, 100, 135, 102, 135, 135,
1088
+ /* 3800 */ 135, 106, 107, 135, 109, 135, 111, 112, 113, 135,
1089
+ /* 3810 */ 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
1090
+ /* 3820 */ 125, 126, 127, 128, 135, 135, 135, 135, 135, 134,
1091
+ /* 3830 */ 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
1092
+ /* 3840 */ 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
1093
+ /* 3850 */ 135, 135, 100, 135, 102, 135, 135, 135, 106, 107,
1094
+ /* 3860 */ 135, 109, 135, 111, 112, 113, 135, 135, 135, 135,
1095
+ /* 3870 */ 135, 135, 135, 135, 135, 135, 135, 125, 126, 127,
1096
+ /* 3880 */ 128, 135, 135, 135, 135, 135, 134, 78, 79, 80,
1097
+ /* 3890 */ 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
1098
+ /* 3900 */ 91, 92, 93, 94, 95, 96, 97, 135, 135, 100,
1099
+ /* 3910 */ 135, 102, 135, 135, 135, 106, 107, 135, 109, 135,
1100
+ /* 3920 */ 111, 112, 113, 135, 135, 135, 135, 135, 135, 135,
1101
+ /* 3930 */ 135, 135, 135, 135, 125, 126, 127, 128, 135, 135,
1102
+ /* 3940 */ 135, 135, 135, 134, 78, 79, 80, 81, 82, 83,
1103
+ /* 3950 */ 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
1104
+ /* 3960 */ 94, 95, 96, 97, 135, 135, 100, 135, 102, 135,
1105
+ /* 3970 */ 135, 135, 106, 107, 135, 109, 135, 111, 112, 113,
1106
+ /* 3980 */ 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
1107
+ /* 3990 */ 135, 125, 126, 127, 128, 135, 135, 135, 135, 135,
1108
+ /* 4000 */ 134, 78, 79, 80, 81, 82, 83, 84, 85, 86,
1109
+ /* 4010 */ 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
1110
+ /* 4020 */ 97, 135, 135, 100, 135, 102, 135, 135, 135, 106,
1111
+ /* 4030 */ 107, 135, 109, 135, 111, 112, 113, 2, 135, 135,
1112
+ /* 4040 */ 135, 135, 7, 8, 9, 135, 135, 135, 125, 126,
1113
+ /* 4050 */ 127, 128, 17, 18, 135, 135, 135, 134, 135, 135,
1114
+ /* 4060 */ 135, 135, 27, 28, 29, 135, 31, 32, 135, 135,
1115
+ /* 4070 */ 135, 135, 135, 135, 39, 40, 41, 42, 43, 44,
1116
+ /* 4080 */ 45, 46, 47, 48, 135, 50, 51, 8, 135, 135,
1117
+ /* 4090 */ 135, 135, 57, 135, 135, 60, 61, 62, 19, 20,
1118
+ /* 4100 */ 65, 135, 135, 68, 135, 1, 71, 135, 4, 5,
1119
+ /* 4110 */ 6, 135, 135, 135, 135, 135, 135, 135, 135, 40,
1120
+ /* 4120 */ 41, 42, 43, 44, 45, 46, 22, 23, 24, 25,
1121
+ /* 4130 */ 26, 27, 28, 135, 30, 135, 57, 135, 135, 60,
1122
+ /* 4140 */ 61, 62, 135, 76, 135, 135, 135, 68, 135, 82,
1123
+ /* 4150 */ 83, 135, 135, 135, 135, 135, 135, 53, 135, 135,
1124
+ /* 4160 */ 135, 94, 95, 96, 97, 135, 1, 100, 64, 4,
1125
+ /* 4170 */ 5, 6, 135, 106, 107, 135, 109, 135, 111, 112,
1126
+ /* 4180 */ 113, 1, 135, 135, 4, 5, 6, 22, 23, 24,
1127
+ /* 4190 */ 25, 26, 27, 28, 135, 30, 135, 135, 135, 135,
1128
+ /* 4200 */ 20, 135, 22, 23, 24, 25, 26, 27, 28, 1,
1129
+ /* 4210 */ 30, 135, 4, 5, 6, 135, 135, 135, 53, 135,
1130
+ /* 4220 */ 1, 135, 135, 4, 5, 6, 135, 135, 135, 64,
1131
+ /* 4230 */ 22, 23, 24, 25, 26, 27, 28, 135, 30, 135,
1132
+ /* 4240 */ 21, 22, 23, 24, 25, 26, 27, 28, 135, 30,
1133
+ /* 4250 */ 81, 1, 135, 135, 4, 5, 6, 135, 135, 135,
1134
+ /* 4260 */ 135, 135, 135, 94, 95, 135, 135, 98, 99, 100,
1135
+ /* 4270 */ 20, 63, 22, 23, 24, 25, 26, 27, 28, 1,
1136
+ /* 4280 */ 30, 135, 4, 5, 6, 135, 117, 135, 135, 135,
1137
+ /* 4290 */ 135, 135, 135, 135, 135, 135, 135, 135, 135, 21,
1138
+ /* 4300 */ 22, 23, 24, 25, 26, 27, 28, 1, 30, 135,
1139
+ /* 4310 */ 4, 5, 6, 135, 135, 135, 8, 135, 135, 135,
1140
+ /* 4320 */ 135, 135, 135, 135, 135, 135, 135, 21, 22, 23,
1141
+ /* 4330 */ 24, 25, 26, 27, 28, 1, 30, 135, 4, 5,
1142
+ /* 4340 */ 6, 135, 135, 135, 135, 135, 135, 135, 40, 41,
1143
+ /* 4350 */ 42, 43, 44, 45, 46, 135, 22, 23, 24, 25,
1144
+ /* 4360 */ 26, 27, 28, 135, 30, 57, 82, 83, 60, 61,
1145
+ /* 4370 */ 62, 135, 135, 135, 135, 135, 68, 135, 94, 95,
1146
+ /* 4380 */ 96, 97, 135, 135, 100, 135, 135, 53, 135, 135,
1147
+ /* 4390 */ 106, 107, 135, 109, 135, 111, 112, 113, 135, 82,
1148
+ /* 4400 */ 83, 135, 135, 135, 135, 135, 135, 135, 135, 135,
1149
+ /* 4410 */ 135, 94, 95, 96, 97, 1, 135, 100, 4, 5,
1150
+ /* 4420 */ 6, 135, 135, 106, 107, 135, 109, 135, 111, 112,
1151
+ /* 4430 */ 113, 4, 5, 6, 135, 135, 22, 23, 24, 25,
1152
+ /* 4440 */ 26, 27, 28, 135, 30, 135, 135, 20, 135, 22,
1153
+ /* 4450 */ 23, 24, 25, 26, 27, 28, 135, 30, 4, 5,
1154
+ /* 4460 */ 6, 135, 135, 135, 135, 135, 135, 13, 135, 135,
1155
+ /* 4470 */ 135, 135, 135, 135, 135, 135, 22, 23, 24, 25,
1156
+ /* 4480 */ 26, 27, 28, 135, 30, 4, 5, 6, 135, 135,
1157
+ /* 4490 */ 135, 135, 135, 135, 13, 135, 19, 20, 135, 4,
1158
+ /* 4500 */ 5, 6, 135, 22, 23, 24, 25, 26, 27, 28,
1159
+ /* 4510 */ 33, 30, 35, 36, 37, 135, 135, 22, 23, 24,
1160
+ /* 4520 */ 25, 26, 27, 28, 81, 30, 135, 135, 135, 135,
1161
+ /* 4530 */ 135, 54, 135, 56, 135, 135, 59, 94, 95, 135,
1162
+ /* 4540 */ 135, 98, 99, 100, 135, 135, 135, 135, 135, 135,
1163
+ /* 4550 */ 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
1164
+ /* 4560 */ 117,
1165
+ );
1166
+ const YY_SHIFT_USE_DFLT = -21;
1167
+ const YY_SHIFT_MAX = 187;
1168
+ static public $yy_shift_ofst = array(
1169
+ /* 0 */ 1269, 625, 444, 444, 732, 1485, 1485, 1413, 1341, 1591,
1170
+ /* 10 */ 1591, 1591, 1269, 1591, 1591, 516, 1019, 1163, 1091, 1591,
1171
+ /* 20 */ 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591,
1172
+ /* 30 */ 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591,
1173
+ /* 40 */ 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591,
1174
+ /* 50 */ 1591, 1591, 1591, 1591, 1591, 1591, 1591, 4035, 4079, 4308,
1175
+ /* 60 */ 4308, 46, 46, 1088, 46, 46, 1088, 270, 272, 4104,
1176
+ /* 70 */ 4165, 4250, 4250, 4427, 4427, 272, 4306, 4334, 4180, 4219,
1177
+ /* 80 */ 4208, 4278, 4414, 4414, 4414, 4414, 4414, 4481, 4454, 4414,
1178
+ /* 90 */ 4414, 4414, 4414, 4495, 4495, 4495, 18, 820, 1678, 942,
1179
+ /* 100 */ 877, 877, 877, 877, 877, 877, 877, 877, 877, 1070,
1180
+ /* 110 */ 74, 1070, 1142, 1142, 188, 243, 29, 476, 476, -3,
1181
+ /* 120 */ 374, 374, 374, 374, 374, 334, 334, 4477, 549, 658,
1182
+ /* 130 */ 179, 508, -20, 96, 15, 161, 44, 44, 340, 340,
1183
+ /* 140 */ 340, 119, 174, 119, 44, 340, 44, 119, 119, 119,
1184
+ /* 150 */ 119, 119, 44, 44, 119, 174, 6, 6, 119, 119,
1185
+ /* 160 */ 174, 349, 349, 416, 138, 473, 351, 704, 617, 731,
1186
+ /* 170 */ 306, 190, 122, 206, 89, 75, 276, 231, 302, 246,
1187
+ /* 180 */ 271, 245, 232, 224, 203, 202, 226, 192,
1188
+ );
1189
+ const YY_REDUCE_USE_DFLT = -79;
1190
+ const YY_REDUCE_MAX = 160;
1191
+ static public $yy_reduce_ofst = array(
1192
+ /* 0 */ -74, 268, 154, -17, 40, 211, 97, 332, 513, 727,
1193
+ /* 10 */ 620, 784, 907, 850, 1157, 3239, 3182, 3353, 3125, 3011,
1194
+ /* 20 */ 2840, 2783, 2897, 2954, 3296, 3695, 3809, 3752, 3923, 3866,
1195
+ /* 30 */ 3581, 3638, 3467, 3524, 3410, 3068, 1928, 1814, 1871, 1985,
1196
+ /* 40 */ 2042, 1757, 1586, 1479, 1643, 1700, 2099, 2612, 2555, 2669,
1197
+ /* 50 */ 2726, 2498, 2213, 2156, 2270, 2327, 2441, 2384, 4067, 4317,
1198
+ /* 60 */ 4284, 4443, 4169, 819, 1663, 64, 435, 420, 236, 447,
1199
+ /* 70 */ 458, 371, 150, 489, 535, 178, -78, -78, -78, -78,
1200
+ /* 80 */ -78, -78, -78, -78, -78, -78, -78, -78, -78, -78,
1201
+ /* 90 */ -78, -78, -78, -78, -78, -78, -78, -78, -78, -78,
1202
+ /* 100 */ -78, -78, -78, -78, -78, -78, -78, -78, -78, 360,
1203
+ /* 110 */ -78, 273, 273, 360, -78, -78, -78, -13, -13, -78,
1204
+ /* 120 */ -78, -78, -78, -78, -78, 68, 63, 357, 297, 297,
1205
+ /* 130 */ 298, 323, 264, 259, 217, 199, 279, 304, 294, 328,
1206
+ /* 140 */ 362, 391, 344, 359, 104, 337, 343, 379, 366, 380,
1207
+ /* 150 */ 325, -47, 79, 104, 145, 83, 218, 47, 30, 249,
1208
+ /* 160 */ 168,
1209
+ );
1210
+ static public $yyExpectedTokens = array(
1211
+ /* 0 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 20, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1212
+ /* 1 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 20, 27, 28, 29, 31, 32, 34, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1213
+ /* 2 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 20, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 63, 65, 68, 71, ),
1214
+ /* 3 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 20, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 63, 65, 68, 71, ),
1215
+ /* 4 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 53, 57, 60, 61, 62, 64, 65, 68, 71, ),
1216
+ /* 5 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 20, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1217
+ /* 6 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 20, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1218
+ /* 7 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 20, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1219
+ /* 8 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 21, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1220
+ /* 9 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1221
+ /* 10 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1222
+ /* 11 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1223
+ /* 12 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 20, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1224
+ /* 13 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1225
+ /* 14 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1226
+ /* 15 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 20, 27, 28, 29, 31, 32, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1227
+ /* 16 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 20, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1228
+ /* 17 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 20, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1229
+ /* 18 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 20, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1230
+ /* 19 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1231
+ /* 20 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1232
+ /* 21 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1233
+ /* 22 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1234
+ /* 23 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1235
+ /* 24 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1236
+ /* 25 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1237
+ /* 26 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1238
+ /* 27 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1239
+ /* 28 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1240
+ /* 29 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1241
+ /* 30 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1242
+ /* 31 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1243
+ /* 32 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1244
+ /* 33 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1245
+ /* 34 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1246
+ /* 35 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1247
+ /* 36 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1248
+ /* 37 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1249
+ /* 38 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1250
+ /* 39 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1251
+ /* 40 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1252
+ /* 41 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1253
+ /* 42 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1254
+ /* 43 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1255
+ /* 44 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1256
+ /* 45 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1257
+ /* 46 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1258
+ /* 47 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1259
+ /* 48 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1260
+ /* 49 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1261
+ /* 50 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1262
+ /* 51 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1263
+ /* 52 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1264
+ /* 53 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1265
+ /* 54 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1266
+ /* 55 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1267
+ /* 56 */ array(2, 4, 5, 6, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1268
+ /* 57 */ array(2, 7, 8, 9, 17, 18, 27, 28, 29, 31, 32, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 57, 60, 61, 62, 65, 68, 71, ),
1269
+ /* 58 */ array(8, 19, 20, 40, 41, 42, 43, 44, 45, 46, 57, 60, 61, 62, 68, ),
1270
+ /* 59 */ array(8, 40, 41, 42, 43, 44, 45, 46, 57, 60, 61, 62, 68, ),
1271
+ /* 60 */ array(8, 40, 41, 42, 43, 44, 45, 46, 57, 60, 61, 62, 68, ),
1272
+ /* 61 */ array(40, 41, 42, 47, 61, ),
1273
+ /* 62 */ array(40, 41, 42, 47, 61, ),
1274
+ /* 63 */ array(40, 57, 61, 62, ),
1275
+ /* 64 */ array(40, 41, 42, 47, 61, ),
1276
+ /* 65 */ array(40, 41, 42, 47, 61, ),
1277
+ /* 66 */ array(40, 57, 61, 62, ),
1278
+ /* 67 */ array(40, 57, 62, 70, ),
1279
+ /* 68 */ array(40, 57, 62, ),
1280
+ /* 69 */ array(1, 4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, 53, 64, ),
1281
+ /* 70 */ array(1, 4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, 53, 64, ),
1282
+ /* 71 */ array(1, 4, 5, 6, 20, 22, 23, 24, 25, 26, 27, 28, 30, ),
1283
+ /* 72 */ array(1, 4, 5, 6, 20, 22, 23, 24, 25, 26, 27, 28, 30, ),
1284
+ /* 73 */ array(4, 5, 6, 20, 22, 23, 24, 25, 26, 27, 28, 30, ),
1285
+ /* 74 */ array(4, 5, 6, 20, 22, 23, 24, 25, 26, 27, 28, 30, ),
1286
+ /* 75 */ array(40, 57, 62, ),
1287
+ /* 76 */ array(1, 4, 5, 6, 21, 22, 23, 24, 25, 26, 27, 28, 30, ),
1288
+ /* 77 */ array(1, 4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, 53, ),
1289
+ /* 78 */ array(1, 4, 5, 6, 20, 22, 23, 24, 25, 26, 27, 28, 30, ),
1290
+ /* 79 */ array(1, 4, 5, 6, 21, 22, 23, 24, 25, 26, 27, 28, 30, ),
1291
+ /* 80 */ array(1, 4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, 63, ),
1292
+ /* 81 */ array(1, 4, 5, 6, 21, 22, 23, 24, 25, 26, 27, 28, 30, ),
1293
+ /* 82 */ array(1, 4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, ),
1294
+ /* 83 */ array(1, 4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, ),
1295
+ /* 84 */ array(1, 4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, ),
1296
+ /* 85 */ array(1, 4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, ),
1297
+ /* 86 */ array(1, 4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, ),
1298
+ /* 87 */ array(4, 5, 6, 13, 22, 23, 24, 25, 26, 27, 28, 30, ),
1299
+ /* 88 */ array(4, 5, 6, 13, 22, 23, 24, 25, 26, 27, 28, 30, ),
1300
+ /* 89 */ array(1, 4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, ),
1301
+ /* 90 */ array(1, 4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, ),
1302
+ /* 91 */ array(1, 4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, ),
1303
+ /* 92 */ array(1, 4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, ),
1304
+ /* 93 */ array(4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, ),
1305
+ /* 94 */ array(4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, ),
1306
+ /* 95 */ array(4, 5, 6, 22, 23, 24, 25, 26, 27, 28, 30, ),
1307
+ /* 96 */ array(12, 13, 22, 23, 24, 25, 26, 27, 28, 30, ),
1308
+ /* 97 */ array(12, 22, 23, 24, 25, 26, 27, 28, 30, ),
1309
+ /* 98 */ array(13, 22, 23, 24, 25, 26, 27, 28, 30, ),
1310
+ /* 99 */ array(13, 22, 23, 24, 25, 26, 27, 28, 30, ),
1311
+ /* 100 */ array(22, 23, 24, 25, 26, 27, 28, 30, ),
1312
+ /* 101 */ array(22, 23, 24, 25, 26, 27, 28, 30, ),
1313
+ /* 102 */ array(22, 23, 24, 25, 26, 27, 28, 30, ),
1314
+ /* 103 */ array(22, 23, 24, 25, 26, 27, 28, 30, ),
1315
+ /* 104 */ array(22, 23, 24, 25, 26, 27, 28, 30, ),
1316
+ /* 105 */ array(22, 23, 24, 25, 26, 27, 28, 30, ),
1317
+ /* 106 */ array(22, 23, 24, 25, 26, 27, 28, 30, ),
1318
+ /* 107 */ array(22, 23, 24, 25, 26, 27, 28, 30, ),
1319
+ /* 108 */ array(22, 23, 24, 25, 26, 27, 28, 30, ),
1320
+ /* 109 */ array(33, 35, 36, 37, 54, 56, 59, ),
1321
+ /* 110 */ array(23, 24, 25, 26, 27, 28, 30, ),
1322
+ /* 111 */ array(33, 35, 36, 37, 54, 56, 59, ),
1323
+ /* 112 */ array(35, 36, 37, 54, 56, 59, ),
1324
+ /* 113 */ array(35, 36, 37, 54, 56, 59, ),
1325
+ /* 114 */ array(24, 25, 26, 27, 28, 30, ),
1326
+ /* 115 */ array(25, 26, 27, 28, 30, ),
1327
+ /* 116 */ array(26, 27, 28, 30, ),
1328
+ /* 117 */ array(1, 4, 5, 6, ),
1329
+ /* 118 */ array(1, 4, 5, 6, ),
1330
+ /* 119 */ array(27, 28, 30, ),
1331
+ /* 120 */ array(30, ),
1332
+ /* 121 */ array(30, ),
1333
+ /* 122 */ array(30, ),
1334
+ /* 123 */ array(30, ),
1335
+ /* 124 */ array(30, ),
1336
+ /* 125 */ array(72, ),
1337
+ /* 126 */ array(72, ),
1338
+ /* 127 */ array(19, 20, 33, 35, 36, 37, 54, 56, 59, ),
1339
+ /* 128 */ array(3, 21, 72, ),
1340
+ /* 129 */ array(3, 21, 72, ),
1341
+ /* 130 */ array(50, 51, ),
1342
+ /* 131 */ array(2, 20, ),
1343
+ /* 132 */ array(54, 56, ),
1344
+ /* 133 */ array(20, 52, ),
1345
+ /* 134 */ array(66, 67, ),
1346
+ /* 135 */ array(10, 11, ),
1347
+ /* 136 */ array(40, ),
1348
+ /* 137 */ array(40, ),
1349
+ /* 138 */ array(52, ),
1350
+ /* 139 */ array(52, ),
1351
+ /* 140 */ array(52, ),
1352
+ /* 141 */ array(20, ),
1353
+ /* 142 */ array(33, ),
1354
+ /* 143 */ array(20, ),
1355
+ /* 144 */ array(40, ),
1356
+ /* 145 */ array(52, ),
1357
+ /* 146 */ array(40, ),
1358
+ /* 147 */ array(20, ),
1359
+ /* 148 */ array(20, ),
1360
+ /* 149 */ array(20, ),
1361
+ /* 150 */ array(20, ),
1362
+ /* 151 */ array(20, ),
1363
+ /* 152 */ array(40, ),
1364
+ /* 153 */ array(40, ),
1365
+ /* 154 */ array(20, ),
1366
+ /* 155 */ array(33, ),
1367
+ /* 156 */ array(52, ),
1368
+ /* 157 */ array(52, ),
1369
+ /* 158 */ array(20, ),
1370
+ /* 159 */ array(20, ),
1371
+ /* 160 */ array(33, ),
1372
+ /* 161 */ array(33, 35, 36, 37, 54, 56, 59, ),
1373
+ /* 162 */ array(33, 35, 36, 37, 54, 56, 59, ),
1374
+ /* 163 */ array(20, 38, 52, 63, ),
1375
+ /* 164 */ array(16, 19, 31, 32, ),
1376
+ /* 165 */ array(20, 38, 58, ),
1377
+ /* 166 */ array(20, 21, 38, ),
1378
+ /* 167 */ array(20, 21, 38, ),
1379
+ /* 168 */ array(20, 34, 38, ),
1380
+ /* 169 */ array(20, 21, 38, ),
1381
+ /* 170 */ array(20, 38, 63, ),
1382
+ /* 171 */ array(21, 38, ),
1383
+ /* 172 */ array(21, 38, ),
1384
+ /* 173 */ array(14, 53, ),
1385
+ /* 174 */ array(49, 52, ),
1386
+ /* 175 */ array(38, 69, ),
1387
+ /* 176 */ array(38, ),
1388
+ /* 177 */ array(21, ),
1389
+ /* 178 */ array(14, ),
1390
+ /* 179 */ array(69, ),
1391
+ /* 180 */ array(15, ),
1392
+ /* 181 */ array(38, ),
1393
+ /* 182 */ array(21, ),
1394
+ /* 183 */ array(3, ),
1395
+ /* 184 */ array(52, ),
1396
+ /* 185 */ array(55, ),
1397
+ /* 186 */ array(38, ),
1398
+ /* 187 */ array(66, ),
1399
+ /* 188 */ array(),
1400
+ /* 189 */ array(),
1401
+ /* 190 */ array(),
1402
+ /* 191 */ array(),
1403
+ /* 192 */ array(),
1404
+ /* 193 */ array(),
1405
+ /* 194 */ array(),
1406
+ /* 195 */ array(),
1407
+ /* 196 */ array(),
1408
+ /* 197 */ array(),
1409
+ /* 198 */ array(),
1410
+ /* 199 */ array(),
1411
+ /* 200 */ array(),
1412
+ /* 201 */ array(),
1413
+ /* 202 */ array(),
1414
+ /* 203 */ array(),
1415
+ /* 204 */ array(),
1416
+ /* 205 */ array(),
1417
+ /* 206 */ array(),
1418
+ /* 207 */ array(),
1419
+ /* 208 */ array(),
1420
+ /* 209 */ array(),
1421
+ /* 210 */ array(),
1422
+ /* 211 */ array(),
1423
+ /* 212 */ array(),
1424
+ /* 213 */ array(),
1425
+ /* 214 */ array(),
1426
+ /* 215 */ array(),
1427
+ /* 216 */ array(),
1428
+ /* 217 */ array(),
1429
+ /* 218 */ array(),
1430
+ /* 219 */ array(),
1431
+ /* 220 */ array(),
1432
+ /* 221 */ array(),
1433
+ /* 222 */ array(),
1434
+ /* 223 */ array(),
1435
+ /* 224 */ array(),
1436
+ /* 225 */ array(),
1437
+ /* 226 */ array(),
1438
+ /* 227 */ array(),
1439
+ /* 228 */ array(),
1440
+ /* 229 */ array(),
1441
+ /* 230 */ array(),
1442
+ /* 231 */ array(),
1443
+ /* 232 */ array(),
1444
+ /* 233 */ array(),
1445
+ /* 234 */ array(),
1446
+ /* 235 */ array(),
1447
+ /* 236 */ array(),
1448
+ /* 237 */ array(),
1449
+ /* 238 */ array(),
1450
+ /* 239 */ array(),
1451
+ /* 240 */ array(),
1452
+ /* 241 */ array(),
1453
+ /* 242 */ array(),
1454
+ /* 243 */ array(),
1455
+ /* 244 */ array(),
1456
+ /* 245 */ array(),
1457
+ /* 246 */ array(),
1458
+ /* 247 */ array(),
1459
+ /* 248 */ array(),
1460
+ /* 249 */ array(),
1461
+ /* 250 */ array(),
1462
+ /* 251 */ array(),
1463
+ /* 252 */ array(),
1464
+ /* 253 */ array(),
1465
+ /* 254 */ array(),
1466
+ /* 255 */ array(),
1467
+ /* 256 */ array(),
1468
+ /* 257 */ array(),
1469
+ /* 258 */ array(),
1470
+ /* 259 */ array(),
1471
+ /* 260 */ array(),
1472
+ /* 261 */ array(),
1473
+ /* 262 */ array(),
1474
+ /* 263 */ array(),
1475
+ /* 264 */ array(),
1476
+ /* 265 */ array(),
1477
+ /* 266 */ array(),
1478
+ /* 267 */ array(),
1479
+ /* 268 */ array(),
1480
+ /* 269 */ array(),
1481
+ /* 270 */ array(),
1482
+ /* 271 */ array(),
1483
+ /* 272 */ array(),
1484
+ /* 273 */ array(),
1485
+ /* 274 */ array(),
1486
+ /* 275 */ array(),
1487
+ /* 276 */ array(),
1488
+ /* 277 */ array(),
1489
+ /* 278 */ array(),
1490
+ /* 279 */ array(),
1491
+ /* 280 */ array(),
1492
+ /* 281 */ array(),
1493
+ /* 282 */ array(),
1494
+ /* 283 */ array(),
1495
+ /* 284 */ array(),
1496
+ /* 285 */ array(),
1497
+ /* 286 */ array(),
1498
+ /* 287 */ array(),
1499
+ /* 288 */ array(),
1500
+ /* 289 */ array(),
1501
+ /* 290 */ array(),
1502
+ /* 291 */ array(),
1503
+ /* 292 */ array(),
1504
+ /* 293 */ array(),
1505
+ /* 294 */ array(),
1506
+ /* 295 */ array(),
1507
+ /* 296 */ array(),
1508
+ /* 297 */ array(),
1509
+ /* 298 */ array(),
1510
+ /* 299 */ array(),
1511
+ /* 300 */ array(),
1512
+ /* 301 */ array(),
1513
+ /* 302 */ array(),
1514
+ /* 303 */ array(),
1515
+ /* 304 */ array(),
1516
+ /* 305 */ array(),
1517
+ /* 306 */ array(),
1518
+ /* 307 */ array(),
1519
+ /* 308 */ array(),
1520
+ /* 309 */ array(),
1521
+ /* 310 */ array(),
1522
+ /* 311 */ array(),
1523
+ /* 312 */ array(),
1524
+ /* 313 */ array(),
1525
+ );
1526
+ static public $yy_default = array(
1527
+ /* 0 */ 314, 510, 510, 510, 510, 510, 510, 510, 510, 365,
1528
+ /* 10 */ 510, 510, 510, 319, 510, 510, 510, 510, 510, 510,
1529
+ /* 20 */ 510, 510, 510, 510, 510, 510, 510, 510, 510, 510,
1530
+ /* 30 */ 510, 510, 510, 510, 510, 510, 510, 510, 510, 510,
1531
+ /* 40 */ 510, 510, 510, 510, 431, 510, 510, 510, 510, 510,
1532
+ /* 50 */ 510, 429, 510, 510, 510, 510, 510, 358, 404, 510,
1533
+ /* 60 */ 510, 399, 399, 366, 510, 365, 510, 510, 510, 396,
1534
+ /* 70 */ 437, 510, 510, 406, 410, 510, 510, 437, 510, 510,
1535
+ /* 80 */ 510, 510, 430, 440, 371, 428, 490, 451, 449, 439,
1536
+ /* 90 */ 320, 491, 351, 450, 458, 452, 471, 473, 475, 472,
1537
+ /* 100 */ 476, 509, 348, 477, 357, 507, 446, 474, 347, 326,
1538
+ /* 110 */ 505, 325, 416, 416, 504, 506, 503, 510, 321, 502,
1539
+ /* 120 */ 492, 501, 494, 493, 500, 510, 510, 408, 510, 510,
1540
+ /* 130 */ 510, 510, 510, 510, 441, 510, 510, 510, 364, 364,
1541
+ /* 140 */ 364, 510, 510, 510, 510, 364, 392, 510, 510, 510,
1542
+ /* 150 */ 510, 510, 510, 421, 510, 510, 364, 364, 510, 510,
1543
+ /* 160 */ 414, 495, 496, 426, 381, 510, 510, 510, 510, 510,
1544
+ /* 170 */ 510, 510, 510, 369, 510, 510, 484, 510, 384, 510,
1545
+ /* 180 */ 350, 315, 510, 488, 469, 510, 510, 442, 337, 360,
1546
+ /* 190 */ 316, 401, 400, 398, 352, 355, 508, 402, 468, 356,
1547
+ /* 200 */ 353, 354, 370, 419, 374, 394, 467, 466, 375, 349,
1548
+ /* 210 */ 418, 465, 407, 426, 368, 403, 367, 462, 464, 373,
1549
+ /* 220 */ 470, 372, 397, 478, 346, 455, 460, 463, 345, 344,
1550
+ /* 230 */ 340, 341, 342, 343, 359, 317, 363, 377, 380, 497,
1551
+ /* 240 */ 362, 361, 338, 454, 459, 336, 335, 389, 390, 391,
1552
+ /* 250 */ 393, 339, 378, 318, 322, 323, 324, 379, 395, 331,
1553
+ /* 260 */ 332, 333, 334, 330, 329, 413, 327, 328, 498, 382,
1554
+ /* 270 */ 489, 485, 482, 480, 384, 487, 461, 479, 483, 486,
1555
+ /* 280 */ 481, 457, 434, 432, 436, 435, 424, 438, 423, 376,
1556
+ /* 290 */ 433, 456, 453, 412, 417, 409, 411, 388, 387, 383,
1557
+ /* 300 */ 385, 386, 415, 420, 443, 445, 447, 448, 444, 499,
1558
+ /* 310 */ 422, 425, 427, 405,
1559
+ );
1560
+ /* The next thing included is series of defines which control
1561
+ ** various aspects of the generated parser.
1562
+ ** self::YYNOCODE is a number which corresponds
1563
+ ** to no legal terminal or nonterminal number. This
1564
+ ** number is used to fill in empty slots of the hash
1565
+ ** table.
1566
+ ** self::YYFALLBACK If defined, this indicates that one or more tokens
1567
+ ** have fall-back values which should be used if the
1568
+ ** original value of the token will not parse.
1569
+ ** self::YYSTACKDEPTH is the maximum depth of the parser's stack.
1570
+ ** self::YYNSTATE the combined number of states.
1571
+ ** self::YYNRULE the number of rules in the grammar
1572
+ ** self::YYERRORSYMBOL is the code number of the error symbol. If not
1573
+ ** defined, then do no error processing.
1574
+ */
1575
+ const YYNOCODE = 136;
1576
+ const YYSTACKDEPTH = 100;
1577
+ const YYNSTATE = 314;
1578
+ const YYNRULE = 196;
1579
+ const YYERRORSYMBOL = 73;
1580
+ const YYERRSYMDT = 'yy0';
1581
+ const YYFALLBACK = 0;
1582
+ /** The next table maps tokens into fallback tokens. If a construct
1583
+ * like the following:
1584
+ *
1585
+ * %fallback ID X Y Z.
1586
+ *
1587
+ * appears in the grammer, then ID becomes a fallback token for X, Y,
1588
+ * and Z. Whenever one of the tokens X, Y, or Z is input to the parser
1589
+ * but it does not parse, the type of the token is changed to ID and
1590
+ * the parse is retried before an error is thrown.
1591
+ */
1592
+ static public $yyFallback = array(
1593
+ );
1594
+ /**
1595
+ * Turn parser tracing on by giving a stream to which to write the trace
1596
+ * and a prompt to preface each trace message. Tracing is turned off
1597
+ * by making either argument NULL
1598
+ *
1599
+ * Inputs:
1600
+ *
1601
+ * - A stream resource to which trace output should be written.
1602
+ * If NULL, then tracing is turned off.
1603
+ * - A prefix string written at the beginning of every
1604
+ * line of trace output. If NULL, then tracing is
1605
+ * turned off.
1606
+ *
1607
+ * Outputs:
1608
+ *
1609
+ * - None.
1610
+ * @param resource
1611
+ * @param string
1612
+ */
1613
+ static function Trace($TraceFILE, $zTracePrompt)
1614
+ {
1615
+ if (!$TraceFILE) {
1616
+ $zTracePrompt = 0;
1617
+ } elseif (!$zTracePrompt) {
1618
+ $TraceFILE = 0;
1619
+ }
1620
+ self::$yyTraceFILE = $TraceFILE;
1621
+ self::$yyTracePrompt = $zTracePrompt;
1622
+ }
1623
+
1624
+ /**
1625
+ * Output debug information to output (php://output stream)
1626
+ */
1627
+ static function PrintTrace()
1628
+ {
1629
+ self::$yyTraceFILE = fopen('php://output', 'w');
1630
+ self::$yyTracePrompt = '';
1631
+ }
1632
+
1633
+ /**
1634
+ * @var resource|0
1635
+ */
1636
+ static public $yyTraceFILE;
1637
+ /**
1638
+ * String to prepend to debug output
1639
+ * @var string|0
1640
+ */
1641
+ static public $yyTracePrompt;
1642
+ /**
1643
+ * @var int
1644
+ */
1645
+ public $yyidx = -1; /* Index of top element in stack */
1646
+ /**
1647
+ * @var int
1648
+ */
1649
+ public $yyerrcnt; /* Shifts left before out of the error */
1650
+ /**
1651
+ * @var array
1652
+ */
1653
+ public $yystack = array(); /* The parser's stack */
1654
+
1655
+ /**
1656
+ * For tracing shifts, the names of all terminals and nonterminals
1657
+ * are required. The following table supplies these names
1658
+ * @var array
1659
+ */
1660
+ static public $yyTokenName = array(
1661
+ '$', 'YY_POST_IF', 'YY_IF', 'YY_ELSE',
1662
+ 'YY_FOR', 'YY_WHILE', 'YY_UNTIL', 'YY_LOOP',
1663
+ 'YY_SUPER', 'YY_CLASS', 'YY_FORIN', 'YY_FOROF',
1664
+ 'YY_BY', 'YY_WHEN', 'YY_EQUALS', 'YY_COLON',
1665
+ 'YY_COMPOUND_ASSIGN', 'YY_RETURN', 'YY_THROW', 'YY_EXTENDS',
1666
+ 'YY_INDENT', 'YY_OUTDENT', 'YY_LOGIC', 'YY_COMPARE',
1667
+ 'YY_RELATION', 'YY_SHIFT', 'YY_MATH', 'YY_PLUS',
1668
+ 'YY_MINUS', 'YY_UNARY', 'YY_EXISTENTIAL', 'YY_INCREMENT',
1669
+ 'YY_DECREMENT', 'YY_CALL_START', 'YY_CALL_END', 'YY_ACCESSOR',
1670
+ 'YY_EXISTENTIAL_ACCESSOR', 'YY_PROTOTYPE', 'YY_TERMINATOR', 'YY_STATEMENT',
1671
+ 'YY_IDENTIFIER', 'YY_NUMBER', 'YY_STRING', 'YY_JS',
1672
+ 'YY_REGEX', 'YY_DEBUGGER', 'YY_BOOL', 'YY_HERECOMMENT',
1673
+ 'YY_PARAM_START', 'YY_PARAM_END', 'YY_FUNC', 'YY_BOUND_FUNC',
1674
+ 'YY_COMMA', 'YY_RANGE_EXCLUSIVE', 'YY_INDEX_START', 'YY_INDEX_END',
1675
+ 'YY_INDEX_SOAK', 'YY_OBJECT_START', 'YY_OBJECT_END', 'YY_FUNC_EXIST',
1676
+ 'YY_THIS', 'YY_AT_SIGN', 'YY_ARRAY_START', 'YY_ARRAY_END',
1677
+ 'YY_RANGE_INCLUSIVE', 'YY_TRY', 'YY_FINALLY', 'YY_CATCH',
1678
+ 'YY_PAREN_START', 'YY_PAREN_END', 'YY_OWN', 'YY_SWITCH',
1679
+ 'YY_LEADING_WHEN', 'error', 'root', 'body',
1680
+ 'block', 'line', 'expression', 'statement',
1681
+ 'return', 'comment', 'value', 'invocation',
1682
+ 'code', 'operation', 'assign', 'if',
1683
+ 'try', 'while', 'for', 'switch',
1684
+ 'class', 'throw', 'identifier', 'alphanumeric',
1685
+ 'literal', 'assignable', 'assignObj', 'objAssignable',
1686
+ 'thisProperty', 'paramList', 'funcGlyph', 'optComma',
1687
+ 'param', 'paramVar', 'array', 'object',
1688
+ 'splat', 'simpleAssignable', 'accessor', 'parenthetical',
1689
+ 'range', 'this', 'index', 'indexValue',
1690
+ 'slice', 'assignList', 'optFuncExist', 'arguments',
1691
+ 'argList', 'rangeDots', 'arg', 'simpleArgs',
1692
+ 'catch', 'whileSource', 'loop', 'forBody',
1693
+ 'forStart', 'forSource', 'forVariables', 'forValue',
1694
+ 'whens', 'when', 'ifBlock',
1695
+ );
1696
+
1697
+ /**
1698
+ * For tracing reduce actions, the names of all rules are required.
1699
+ * @var array
1700
+ */
1701
+ static public $yyRuleName = array(
1702
+ /* 0 */ "root ::=",
1703
+ /* 1 */ "root ::= body",
1704
+ /* 2 */ "root ::= block YY_TERMINATOR",
1705
+ /* 3 */ "body ::= line",
1706
+ /* 4 */ "body ::= body YY_TERMINATOR line",
1707
+ /* 5 */ "body ::= body YY_TERMINATOR",
1708
+ /* 6 */ "line ::= expression",
1709
+ /* 7 */ "line ::= statement",
1710
+ /* 8 */ "statement ::= return",
1711
+ /* 9 */ "statement ::= comment",
1712
+ /* 10 */ "statement ::= YY_STATEMENT",
1713
+ /* 11 */ "expression ::= value",
1714
+ /* 12 */ "expression ::= invocation",
1715
+ /* 13 */ "expression ::= code",
1716
+ /* 14 */ "expression ::= operation",
1717
+ /* 15 */ "expression ::= assign",
1718
+ /* 16 */ "expression ::= if",
1719
+ /* 17 */ "expression ::= try",
1720
+ /* 18 */ "expression ::= while",
1721
+ /* 19 */ "expression ::= for",
1722
+ /* 20 */ "expression ::= switch",
1723
+ /* 21 */ "expression ::= class",
1724
+ /* 22 */ "expression ::= throw",
1725
+ /* 23 */ "block ::= YY_INDENT YY_OUTDENT",
1726
+ /* 24 */ "block ::= YY_INDENT body YY_OUTDENT",
1727
+ /* 25 */ "identifier ::= YY_IDENTIFIER",
1728
+ /* 26 */ "alphanumeric ::= YY_NUMBER",
1729
+ /* 27 */ "alphanumeric ::= YY_STRING",
1730
+ /* 28 */ "literal ::= alphanumeric",
1731
+ /* 29 */ "literal ::= YY_JS",
1732
+ /* 30 */ "literal ::= YY_REGEX",
1733
+ /* 31 */ "literal ::= YY_DEBUGGER",
1734
+ /* 32 */ "literal ::= YY_BOOL",
1735
+ /* 33 */ "assign ::= assignable YY_EQUALS expression",
1736
+ /* 34 */ "assign ::= assignable YY_EQUALS YY_TERMINATOR expression",
1737
+ /* 35 */ "assign ::= assignable YY_EQUALS YY_INDENT expression YY_OUTDENT",
1738
+ /* 36 */ "assignObj ::= objAssignable",
1739
+ /* 37 */ "assignObj ::= objAssignable YY_COLON expression",
1740
+ /* 38 */ "assignObj ::= objAssignable YY_COLON YY_INDENT expression YY_OUTDENT",
1741
+ /* 39 */ "assignObj ::= comment",
1742
+ /* 40 */ "objAssignable ::= identifier",
1743
+ /* 41 */ "objAssignable ::= alphanumeric",
1744
+ /* 42 */ "objAssignable ::= thisProperty",
1745
+ /* 43 */ "return ::= YY_RETURN expression",
1746
+ /* 44 */ "return ::= YY_RETURN",
1747
+ /* 45 */ "comment ::= YY_HERECOMMENT",
1748
+ /* 46 */ "code ::= YY_PARAM_START paramList YY_PARAM_END funcGlyph block",
1749
+ /* 47 */ "code ::= funcGlyph block",
1750
+ /* 48 */ "funcGlyph ::= YY_FUNC",
1751
+ /* 49 */ "funcGlyph ::= YY_BOUND_FUNC",
1752
+ /* 50 */ "optComma ::=",
1753
+ /* 51 */ "optComma ::= YY_COMMA",
1754
+ /* 52 */ "paramList ::=",
1755
+ /* 53 */ "paramList ::= param",
1756
+ /* 54 */ "paramList ::= paramList YY_COMMA param",
1757
+ /* 55 */ "param ::= paramVar",
1758
+ /* 56 */ "param ::= paramVar YY_RANGE_EXCLUSIVE",
1759
+ /* 57 */ "param ::= paramVar YY_EQUALS expression",
1760
+ /* 58 */ "paramVar ::= identifier",
1761
+ /* 59 */ "paramVar ::= thisProperty",
1762
+ /* 60 */ "paramVar ::= array",
1763
+ /* 61 */ "paramVar ::= object",
1764
+ /* 62 */ "splat ::= expression YY_RANGE_EXCLUSIVE",
1765
+ /* 63 */ "simpleAssignable ::= identifier",
1766
+ /* 64 */ "simpleAssignable ::= value accessor",
1767
+ /* 65 */ "simpleAssignable ::= invocation accessor",
1768
+ /* 66 */ "simpleAssignable ::= thisProperty",
1769
+ /* 67 */ "assignable ::= simpleAssignable",
1770
+ /* 68 */ "assignable ::= array",
1771
+ /* 69 */ "assignable ::= object",
1772
+ /* 70 */ "value ::= assignable",
1773
+ /* 71 */ "value ::= literal",
1774
+ /* 72 */ "value ::= parenthetical",
1775
+ /* 73 */ "value ::= range",
1776
+ /* 74 */ "value ::= this",
1777
+ /* 75 */ "accessor ::= YY_ACCESSOR identifier",
1778
+ /* 76 */ "accessor ::= YY_EXISTENTIAL_ACCESSOR identifier",
1779
+ /* 77 */ "accessor ::= YY_PROTOTYPE identifier",
1780
+ /* 78 */ "accessor ::= YY_PROTOTYPE",
1781
+ /* 79 */ "accessor ::= index",
1782
+ /* 80 */ "index ::= YY_INDEX_START indexValue YY_INDEX_END",
1783
+ /* 81 */ "index ::= YY_INDEX_SOAK index",
1784
+ /* 82 */ "indexValue ::= expression",
1785
+ /* 83 */ "indexValue ::= slice",
1786
+ /* 84 */ "object ::= YY_OBJECT_START assignList optComma YY_OBJECT_END",
1787
+ /* 85 */ "assignList ::=",
1788
+ /* 86 */ "assignList ::= assignObj",
1789
+ /* 87 */ "assignList ::= assignList YY_COMMA assignObj",
1790
+ /* 88 */ "assignList ::= assignList optComma YY_TERMINATOR assignObj",
1791
+ /* 89 */ "assignList ::= assignList optComma YY_INDENT assignList optComma YY_OUTDENT",
1792
+ /* 90 */ "class ::= YY_CLASS",
1793
+ /* 91 */ "class ::= YY_CLASS block",
1794
+ /* 92 */ "class ::= YY_CLASS YY_EXTENDS expression",
1795
+ /* 93 */ "class ::= YY_CLASS YY_EXTENDS expression block",
1796
+ /* 94 */ "class ::= YY_CLASS simpleAssignable",
1797
+ /* 95 */ "class ::= YY_CLASS simpleAssignable block",
1798
+ /* 96 */ "class ::= YY_CLASS simpleAssignable YY_EXTENDS expression",
1799
+ /* 97 */ "class ::= YY_CLASS simpleAssignable YY_EXTENDS expression block",
1800
+ /* 98 */ "invocation ::= value optFuncExist arguments",
1801
+ /* 99 */ "invocation ::= invocation optFuncExist arguments",
1802
+ /* 100 */ "invocation ::= YY_SUPER",
1803
+ /* 101 */ "invocation ::= YY_SUPER arguments",
1804
+ /* 102 */ "optFuncExist ::=",
1805
+ /* 103 */ "optFuncExist ::= YY_FUNC_EXIST",
1806
+ /* 104 */ "arguments ::= YY_CALL_START YY_CALL_END",
1807
+ /* 105 */ "arguments ::= YY_CALL_START argList optComma YY_CALL_END",
1808
+ /* 106 */ "this ::= YY_THIS",
1809
+ /* 107 */ "this ::= YY_AT_SIGN",
1810
+ /* 108 */ "thisProperty ::= YY_AT_SIGN identifier",
1811
+ /* 109 */ "array ::= YY_ARRAY_START YY_ARRAY_END",
1812
+ /* 110 */ "array ::= YY_ARRAY_START argList optComma YY_ARRAY_END",
1813
+ /* 111 */ "rangeDots ::= YY_RANGE_INCLUSIVE",
1814
+ /* 112 */ "rangeDots ::= YY_RANGE_EXCLUSIVE",
1815
+ /* 113 */ "range ::= YY_ARRAY_START expression rangeDots expression YY_ARRAY_END",
1816
+ /* 114 */ "slice ::= expression rangeDots expression",
1817
+ /* 115 */ "slice ::= expression rangeDots",
1818
+ /* 116 */ "slice ::= rangeDots expression",
1819
+ /* 117 */ "slice ::= rangeDots",
1820
+ /* 118 */ "argList ::= arg",
1821
+ /* 119 */ "argList ::= argList YY_COMMA arg",
1822
+ /* 120 */ "argList ::= argList optComma YY_TERMINATOR arg",
1823
+ /* 121 */ "argList ::= YY_INDENT argList optComma YY_OUTDENT",
1824
+ /* 122 */ "argList ::= argList optComma YY_INDENT argList optComma YY_OUTDENT",
1825
+ /* 123 */ "arg ::= expression",
1826
+ /* 124 */ "arg ::= splat",
1827
+ /* 125 */ "simpleArgs ::= expression",
1828
+ /* 126 */ "simpleArgs ::= simpleArgs YY_COMMA expression",
1829
+ /* 127 */ "try ::= YY_TRY block",
1830
+ /* 128 */ "try ::= YY_TRY block catch",
1831
+ /* 129 */ "try ::= YY_TRY block YY_FINALLY block",
1832
+ /* 130 */ "try ::= YY_TRY block catch YY_FINALLY block",
1833
+ /* 131 */ "catch ::= YY_CATCH identifier block",
1834
+ /* 132 */ "throw ::= YY_THROW expression",
1835
+ /* 133 */ "parenthetical ::= YY_PAREN_START body YY_PAREN_END",
1836
+ /* 134 */ "parenthetical ::= YY_PAREN_START YY_INDENT body YY_OUTDENT YY_PAREN_END",
1837
+ /* 135 */ "whileSource ::= YY_WHILE expression",
1838
+ /* 136 */ "whileSource ::= YY_WHILE expression YY_WHEN expression",
1839
+ /* 137 */ "whileSource ::= YY_UNTIL expression",
1840
+ /* 138 */ "whileSource ::= YY_UNTIL expression YY_WHEN expression",
1841
+ /* 139 */ "while ::= whileSource block",
1842
+ /* 140 */ "while ::= statement whileSource",
1843
+ /* 141 */ "while ::= expression whileSource",
1844
+ /* 142 */ "while ::= loop",
1845
+ /* 143 */ "loop ::= YY_LOOP block",
1846
+ /* 144 */ "loop ::= YY_LOOP expression",
1847
+ /* 145 */ "for ::= statement forBody",
1848
+ /* 146 */ "for ::= expression forBody",
1849
+ /* 147 */ "for ::= forBody block",
1850
+ /* 148 */ "forBody ::= YY_FOR range",
1851
+ /* 149 */ "forBody ::= forStart forSource",
1852
+ /* 150 */ "forStart ::= YY_FOR forVariables",
1853
+ /* 151 */ "forStart ::= YY_FOR YY_OWN forVariables",
1854
+ /* 152 */ "forValue ::= identifier",
1855
+ /* 153 */ "forValue ::= array",
1856
+ /* 154 */ "forValue ::= object",
1857
+ /* 155 */ "forVariables ::= forValue",
1858
+ /* 156 */ "forVariables ::= forValue YY_COMMA forValue",
1859
+ /* 157 */ "forSource ::= YY_FORIN expression",
1860
+ /* 158 */ "forSource ::= YY_FOROF expression",
1861
+ /* 159 */ "forSource ::= YY_FORIN expression YY_WHEN expression",
1862
+ /* 160 */ "forSource ::= YY_FOROF expression YY_WHEN expression",
1863
+ /* 161 */ "forSource ::= YY_FORIN expression YY_BY expression",
1864
+ /* 162 */ "forSource ::= YY_FORIN expression YY_WHEN expression YY_BY expression",
1865
+ /* 163 */ "forSource ::= YY_FORIN expression YY_BY expression YY_WHEN expression",
1866
+ /* 164 */ "switch ::= YY_SWITCH expression YY_INDENT whens YY_OUTDENT",
1867
+ /* 165 */ "switch ::= YY_SWITCH expression YY_INDENT whens YY_ELSE block YY_OUTDENT",
1868
+ /* 166 */ "switch ::= YY_SWITCH YY_INDENT whens YY_OUTDENT",
1869
+ /* 167 */ "switch ::= YY_SWITCH YY_INDENT whens YY_ELSE block YY_OUTDENT",
1870
+ /* 168 */ "whens ::= when",
1871
+ /* 169 */ "whens ::= whens when",
1872
+ /* 170 */ "when ::= YY_LEADING_WHEN simpleArgs block",
1873
+ /* 171 */ "when ::= YY_LEADING_WHEN simpleArgs block YY_TERMINATOR",
1874
+ /* 172 */ "ifBlock ::= YY_IF expression block",
1875
+ /* 173 */ "ifBlock ::= ifBlock YY_ELSE YY_IF expression block",
1876
+ /* 174 */ "if ::= ifBlock",
1877
+ /* 175 */ "if ::= ifBlock YY_ELSE block",
1878
+ /* 176 */ "if ::= statement YY_POST_IF expression",
1879
+ /* 177 */ "if ::= expression YY_POST_IF expression",
1880
+ /* 178 */ "operation ::= YY_UNARY expression",
1881
+ /* 179 */ "operation ::= YY_MINUS expression",
1882
+ /* 180 */ "operation ::= YY_PLUS expression",
1883
+ /* 181 */ "operation ::= YY_DECREMENT simpleAssignable",
1884
+ /* 182 */ "operation ::= YY_INCREMENT simpleAssignable",
1885
+ /* 183 */ "operation ::= simpleAssignable YY_DECREMENT",
1886
+ /* 184 */ "operation ::= simpleAssignable YY_INCREMENT",
1887
+ /* 185 */ "operation ::= expression YY_EXISTENTIAL",
1888
+ /* 186 */ "operation ::= expression YY_PLUS expression",
1889
+ /* 187 */ "operation ::= expression YY_MINUS expression",
1890
+ /* 188 */ "operation ::= expression YY_MATH expression",
1891
+ /* 189 */ "operation ::= expression YY_SHIFT expression",
1892
+ /* 190 */ "operation ::= expression YY_COMPARE expression",
1893
+ /* 191 */ "operation ::= expression YY_LOGIC expression",
1894
+ /* 192 */ "operation ::= expression YY_RELATION expression",
1895
+ /* 193 */ "operation ::= simpleAssignable YY_COMPOUND_ASSIGN expression",
1896
+ /* 194 */ "operation ::= simpleAssignable YY_COMPOUND_ASSIGN YY_INDENT expression YY_OUTDENT",
1897
+ /* 195 */ "operation ::= simpleAssignable YY_EXTENDS expression",
1898
+ );
1899
+
1900
+ /**
1901
+ * This function returns the symbolic name associated with a token
1902
+ * value.
1903
+ * @param int
1904
+ * @return string
1905
+ */
1906
+ static function tokenName($tokenType)
1907
+ {
1908
+ if ($tokenType === 0) {
1909
+ return 'End of Input';
1910
+ }
1911
+ if ($tokenType > 0 && $tokenType < count(self::$yyTokenName)) {
1912
+ return self::$yyTokenName[$tokenType];
1913
+ } else {
1914
+ return "Unknown";
1915
+ }
1916
+ }
1917
+
1918
+ /**
1919
+ * The following function deletes the value associated with a
1920
+ * symbol. The symbol can be either a terminal or nonterminal.
1921
+ * @param int the symbol code
1922
+ * @param mixed the symbol's value
1923
+ */
1924
+ static function yy_destructor($yymajor, $yypminor)
1925
+ {
1926
+ switch ($yymajor) {
1927
+ /* Here is inserted the actions which take place when a
1928
+ ** terminal or non-terminal is destroyed. This can happen
1929
+ ** when the symbol is popped from the stack during a
1930
+ ** reduce or during error processing or when a parser is
1931
+ ** being destroyed before it is finished parsing.
1932
+ **
1933
+ ** Note: during a reduce, the only symbols destroyed are those
1934
+ ** which appear on the RHS of the rule, but which are not used
1935
+ ** inside the C code.
1936
+ */
1937
+ default: break; /* If no destructor action specified: do nothing */
1938
+ }
1939
+ }
1940
+
1941
+ /**
1942
+ * Pop the parser's stack once.
1943
+ *
1944
+ * If there is a destructor routine associated with the token which
1945
+ * is popped from the stack, then call it.
1946
+ *
1947
+ * Return the major token number for the symbol popped.
1948
+ * @param yyParser
1949
+ * @return int
1950
+ */
1951
+ function yy_pop_parser_stack()
1952
+ {
1953
+ if (!count($this->yystack)) {
1954
+ return;
1955
+ }
1956
+ $yytos = array_pop($this->yystack);
1957
+ if (self::$yyTraceFILE && $this->yyidx >= 0) {
1958
+ fwrite(self::$yyTraceFILE,
1959
+ self::$yyTracePrompt . 'Popping ' . self::tokenName($yytos->major) .
1960
+ "\n");
1961
+ }
1962
+ $yymajor = $yytos->major;
1963
+ self::yy_destructor($yymajor, $yytos->minor);
1964
+ $this->yyidx--;
1965
+ return $yymajor;
1966
+ }
1967
+
1968
+ /**
1969
+ * Deallocate and destroy a parser. Destructors are all called for
1970
+ * all stack elements before shutting the parser down.
1971
+ */
1972
+ function __destruct()
1973
+ {
1974
+ while ($this->yyidx >= 0) {
1975
+ $this->yy_pop_parser_stack();
1976
+ }
1977
+ if (is_resource(self::$yyTraceFILE)) {
1978
+ fclose(self::$yyTraceFILE);
1979
+ }
1980
+ }
1981
+
1982
+ /**
1983
+ * Based on the current state and parser stack, get a list of all
1984
+ * possible lookahead tokens
1985
+ * @param int
1986
+ * @return array
1987
+ */
1988
+ function yy_get_expected_tokens($token)
1989
+ {
1990
+ $state = $this->yystack[$this->yyidx]->stateno;
1991
+ $expected = self::$yyExpectedTokens[$state];
1992
+ if (in_array($token, self::$yyExpectedTokens[$state], true)) {
1993
+ return $expected;
1994
+ }
1995
+ $stack = $this->yystack;
1996
+ $yyidx = $this->yyidx;
1997
+ do {
1998
+ $yyact = $this->yy_find_shift_action($token);
1999
+ if ($yyact >= self::YYNSTATE && $yyact < self::YYNSTATE + self::YYNRULE) {
2000
+ // reduce action
2001
+ $done = 0;
2002
+ do {
2003
+ if ($done++ == 100) {
2004
+ $this->yyidx = $yyidx;
2005
+ $this->yystack = $stack;
2006
+ // too much recursion prevents proper detection
2007
+ // so give up
2008
+ return array_unique($expected);
2009
+ }
2010
+ $yyruleno = $yyact - self::YYNSTATE;
2011
+ $this->yyidx -= self::$yyRuleInfo[$yyruleno]['rhs'];
2012
+ $nextstate = $this->yy_find_reduce_action(
2013
+ $this->yystack[$this->yyidx]->stateno,
2014
+ self::$yyRuleInfo[$yyruleno]['lhs']);
2015
+ if (isset(self::$yyExpectedTokens[$nextstate])) {
2016
+ $expected += self::$yyExpectedTokens[$nextstate];
2017
+ if (in_array($token,
2018
+ self::$yyExpectedTokens[$nextstate], true)) {
2019
+ $this->yyidx = $yyidx;
2020
+ $this->yystack = $stack;
2021
+ return array_unique($expected);
2022
+ }
2023
+ }
2024
+ if ($nextstate < self::YYNSTATE) {
2025
+ // we need to shift a non-terminal
2026
+ $this->yyidx++;
2027
+ $x = new yyStackEntry;
2028
+ $x->stateno = $nextstate;
2029
+ $x->major = self::$yyRuleInfo[$yyruleno]['lhs'];
2030
+ $this->yystack[$this->yyidx] = $x;
2031
+ continue 2;
2032
+ } elseif ($nextstate == self::YYNSTATE + self::YYNRULE + 1) {
2033
+ $this->yyidx = $yyidx;
2034
+ $this->yystack = $stack;
2035
+ // the last token was just ignored, we can't accept
2036
+ // by ignoring input, this is in essence ignoring a
2037
+ // syntax error!
2038
+ return array_unique($expected);
2039
+ } elseif ($nextstate === self::YY_NO_ACTION) {
2040
+ $this->yyidx = $yyidx;
2041
+ $this->yystack = $stack;
2042
+ // input accepted, but not shifted (I guess)
2043
+ return $expected;
2044
+ } else {
2045
+ $yyact = $nextstate;
2046
+ }
2047
+ } while (true);
2048
+ }
2049
+ break;
2050
+ } while (true);
2051
+ return array_unique($expected);
2052
+ }
2053
+
2054
+ /**
2055
+ * Based on the parser state and current parser stack, determine whether
2056
+ * the lookahead token is possible.
2057
+ *
2058
+ * The parser will convert the token value to an error token if not. This
2059
+ * catches some unusual edge cases where the parser would fail.
2060
+ * @param int
2061
+ * @return bool
2062
+ */
2063
+ function yy_is_expected_token($token)
2064
+ {
2065
+ if ($token === 0) {
2066
+ return true; // 0 is not part of this
2067
+ }
2068
+ $state = $this->yystack[$this->yyidx]->stateno;
2069
+ if (in_array($token, self::$yyExpectedTokens[$state], true)) {
2070
+ return true;
2071
+ }
2072
+ $stack = $this->yystack;
2073
+ $yyidx = $this->yyidx;
2074
+ do {
2075
+ $yyact = $this->yy_find_shift_action($token);
2076
+ if ($yyact >= self::YYNSTATE && $yyact < self::YYNSTATE + self::YYNRULE) {
2077
+ // reduce action
2078
+ $done = 0;
2079
+ do {
2080
+ if ($done++ == 100) {
2081
+ $this->yyidx = $yyidx;
2082
+ $this->yystack = $stack;
2083
+ // too much recursion prevents proper detection
2084
+ // so give up
2085
+ return true;
2086
+ }
2087
+ $yyruleno = $yyact - self::YYNSTATE;
2088
+ $this->yyidx -= self::$yyRuleInfo[$yyruleno]['rhs'];
2089
+ $nextstate = $this->yy_find_reduce_action(
2090
+ $this->yystack[$this->yyidx]->stateno,
2091
+ self::$yyRuleInfo[$yyruleno]['lhs']);
2092
+ if (isset(self::$yyExpectedTokens[$nextstate]) &&
2093
+ in_array($token, self::$yyExpectedTokens[$nextstate], true)) {
2094
+ $this->yyidx = $yyidx;
2095
+ $this->yystack = $stack;
2096
+ return true;
2097
+ }
2098
+ if ($nextstate < self::YYNSTATE) {
2099
+ // we need to shift a non-terminal
2100
+ $this->yyidx++;
2101
+ $x = new yyStackEntry;
2102
+ $x->stateno = $nextstate;
2103
+ $x->major = self::$yyRuleInfo[$yyruleno]['lhs'];
2104
+ $this->yystack[$this->yyidx] = $x;
2105
+ continue 2;
2106
+ } elseif ($nextstate == self::YYNSTATE + self::YYNRULE + 1) {
2107
+ $this->yyidx = $yyidx;
2108
+ $this->yystack = $stack;
2109
+ if (!$token) {
2110
+ // end of input: this is valid
2111
+ return true;
2112
+ }
2113
+ // the last token was just ignored, we can't accept
2114
+ // by ignoring input, this is in essence ignoring a
2115
+ // syntax error!
2116
+ return false;
2117
+ } elseif ($nextstate === self::YY_NO_ACTION) {
2118
+ $this->yyidx = $yyidx;
2119
+ $this->yystack = $stack;
2120
+ // input accepted, but not shifted (I guess)
2121
+ return true;
2122
+ } else {
2123
+ $yyact = $nextstate;
2124
+ }
2125
+ } while (true);
2126
+ }
2127
+ break;
2128
+ } while (true);
2129
+ $this->yyidx = $yyidx;
2130
+ $this->yystack = $stack;
2131
+ return true;
2132
+ }
2133
+
2134
+ /**
2135
+ * Find the appropriate action for a parser given the terminal
2136
+ * look-ahead token iLookAhead.
2137
+ *
2138
+ * If the look-ahead token is YYNOCODE, then check to see if the action is
2139
+ * independent of the look-ahead. If it is, return the action, otherwise
2140
+ * return YY_NO_ACTION.
2141
+ * @param int The look-ahead token
2142
+ */
2143
+ function yy_find_shift_action($iLookAhead)
2144
+ {
2145
+ $stateno = $this->yystack[$this->yyidx]->stateno;
2146
+
2147
+ /* if ($this->yyidx < 0) return self::YY_NO_ACTION; */
2148
+ if (!isset(self::$yy_shift_ofst[$stateno])) {
2149
+ // no shift actions
2150
+ return self::$yy_default[$stateno];
2151
+ }
2152
+ $i = self::$yy_shift_ofst[$stateno];
2153
+ if ($i === self::YY_SHIFT_USE_DFLT) {
2154
+ return self::$yy_default[$stateno];
2155
+ }
2156
+ if ($iLookAhead == self::YYNOCODE) {
2157
+ return self::YY_NO_ACTION;
2158
+ }
2159
+ $i += $iLookAhead;
2160
+ if ($i < 0 || $i >= self::YY_SZ_ACTTAB ||
2161
+ self::$yy_lookahead[$i] != $iLookAhead) {
2162
+ if (count(self::$yyFallback) && $iLookAhead < count(self::$yyFallback)
2163
+ && ($iFallback = self::$yyFallback[$iLookAhead]) != 0) {
2164
+ if (self::$yyTraceFILE) {
2165
+ fwrite(self::$yyTraceFILE, self::$yyTracePrompt . "FALLBACK " .
2166
+ self::tokenName($iLookAhead) . " => " .
2167
+ self::tokenName($iFallback) . "\n");
2168
+ }
2169
+ return $this->yy_find_shift_action($iFallback);
2170
+ }
2171
+ return self::$yy_default[$stateno];
2172
+ } else {
2173
+ return self::$yy_action[$i];
2174
+ }
2175
+ }
2176
+
2177
+ /**
2178
+ * Find the appropriate action for a parser given the non-terminal
2179
+ * look-ahead token $iLookAhead.
2180
+ *
2181
+ * If the look-ahead token is self::YYNOCODE, then check to see if the action is
2182
+ * independent of the look-ahead. If it is, return the action, otherwise
2183
+ * return self::YY_NO_ACTION.
2184
+ * @param int Current state number
2185
+ * @param int The look-ahead token
2186
+ */
2187
+ function yy_find_reduce_action($stateno, $iLookAhead)
2188
+ {
2189
+ /* $stateno = $this->yystack[$this->yyidx]->stateno; */
2190
+
2191
+ if (!isset(self::$yy_reduce_ofst[$stateno])) {
2192
+ return self::$yy_default[$stateno];
2193
+ }
2194
+ $i = self::$yy_reduce_ofst[$stateno];
2195
+ if ($i == self::YY_REDUCE_USE_DFLT) {
2196
+ return self::$yy_default[$stateno];
2197
+ }
2198
+ if ($iLookAhead == self::YYNOCODE) {
2199
+ return self::YY_NO_ACTION;
2200
+ }
2201
+ $i += $iLookAhead;
2202
+ if ($i < 0 || $i >= self::YY_SZ_ACTTAB ||
2203
+ self::$yy_lookahead[$i] != $iLookAhead) {
2204
+ return self::$yy_default[$stateno];
2205
+ } else {
2206
+ return self::$yy_action[$i];
2207
+ }
2208
+ }
2209
+
2210
+ /**
2211
+ * Perform a shift action.
2212
+ * @param int The new state to shift in
2213
+ * @param int The major token to shift in
2214
+ * @param mixed the minor token to shift in
2215
+ */
2216
+ function yy_shift($yyNewState, $yyMajor, $yypMinor)
2217
+ {
2218
+ $this->yyidx++;
2219
+ if ($this->yyidx >= self::YYSTACKDEPTH) {
2220
+ $this->yyidx--;
2221
+ if (self::$yyTraceFILE) {
2222
+ fprintf(self::$yyTraceFILE, "%sStack Overflow!\n", self::$yyTracePrompt);
2223
+ }
2224
+ while ($this->yyidx >= 0) {
2225
+ $this->yy_pop_parser_stack();
2226
+ }
2227
+ /* Here code is inserted which will execute if the parser
2228
+ ** stack ever overflows */
2229
+ return;
2230
+ }
2231
+ $yytos = new yyStackEntry;
2232
+ $yytos->stateno = $yyNewState;
2233
+ $yytos->major = $yyMajor;
2234
+ $yytos->minor = $yypMinor;
2235
+ array_push($this->yystack, $yytos);
2236
+ if (self::$yyTraceFILE && $this->yyidx > 0) {
2237
+ fprintf(self::$yyTraceFILE, "%sShift %d\n", self::$yyTracePrompt,
2238
+ $yyNewState);
2239
+ fprintf(self::$yyTraceFILE, "%sStack:", self::$yyTracePrompt);
2240
+ for ($i = 1; $i <= $this->yyidx; $i++) {
2241
+ fprintf(self::$yyTraceFILE, " %s",
2242
+ self::tokenName($this->yystack[$i]->major));
2243
+ }
2244
+ fwrite(self::$yyTraceFILE,"\n");
2245
+ }
2246
+ }
2247
+
2248
+ /**
2249
+ * The following table contains information about every rule that
2250
+ * is used during the reduce.
2251
+ *
2252
+ * <pre>
2253
+ * array(
2254
+ * array(
2255
+ * int $lhs; Symbol on the left-hand side of the rule
2256
+ * int $nrhs; Number of right-hand side symbols in the rule
2257
+ * ),...
2258
+ * );
2259
+ * </pre>
2260
+ */
2261
+ static public $yyRuleInfo = array(
2262
+ array( 'lhs' => 74, 'rhs' => 0 ),
2263
+ array( 'lhs' => 74, 'rhs' => 1 ),
2264
+ array( 'lhs' => 74, 'rhs' => 2 ),
2265
+ array( 'lhs' => 75, 'rhs' => 1 ),
2266
+ array( 'lhs' => 75, 'rhs' => 3 ),
2267
+ array( 'lhs' => 75, 'rhs' => 2 ),
2268
+ array( 'lhs' => 77, 'rhs' => 1 ),
2269
+ array( 'lhs' => 77, 'rhs' => 1 ),
2270
+ array( 'lhs' => 79, 'rhs' => 1 ),
2271
+ array( 'lhs' => 79, 'rhs' => 1 ),
2272
+ array( 'lhs' => 79, 'rhs' => 1 ),
2273
+ array( 'lhs' => 78, 'rhs' => 1 ),
2274
+ array( 'lhs' => 78, 'rhs' => 1 ),
2275
+ array( 'lhs' => 78, 'rhs' => 1 ),
2276
+ array( 'lhs' => 78, 'rhs' => 1 ),
2277
+ array( 'lhs' => 78, 'rhs' => 1 ),
2278
+ array( 'lhs' => 78, 'rhs' => 1 ),
2279
+ array( 'lhs' => 78, 'rhs' => 1 ),
2280
+ array( 'lhs' => 78, 'rhs' => 1 ),
2281
+ array( 'lhs' => 78, 'rhs' => 1 ),
2282
+ array( 'lhs' => 78, 'rhs' => 1 ),
2283
+ array( 'lhs' => 78, 'rhs' => 1 ),
2284
+ array( 'lhs' => 78, 'rhs' => 1 ),
2285
+ array( 'lhs' => 76, 'rhs' => 2 ),
2286
+ array( 'lhs' => 76, 'rhs' => 3 ),
2287
+ array( 'lhs' => 94, 'rhs' => 1 ),
2288
+ array( 'lhs' => 95, 'rhs' => 1 ),
2289
+ array( 'lhs' => 95, 'rhs' => 1 ),
2290
+ array( 'lhs' => 96, 'rhs' => 1 ),
2291
+ array( 'lhs' => 96, 'rhs' => 1 ),
2292
+ array( 'lhs' => 96, 'rhs' => 1 ),
2293
+ array( 'lhs' => 96, 'rhs' => 1 ),
2294
+ array( 'lhs' => 96, 'rhs' => 1 ),
2295
+ array( 'lhs' => 86, 'rhs' => 3 ),
2296
+ array( 'lhs' => 86, 'rhs' => 4 ),
2297
+ array( 'lhs' => 86, 'rhs' => 5 ),
2298
+ array( 'lhs' => 98, 'rhs' => 1 ),
2299
+ array( 'lhs' => 98, 'rhs' => 3 ),
2300
+ array( 'lhs' => 98, 'rhs' => 5 ),
2301
+ array( 'lhs' => 98, 'rhs' => 1 ),
2302
+ array( 'lhs' => 99, 'rhs' => 1 ),
2303
+ array( 'lhs' => 99, 'rhs' => 1 ),
2304
+ array( 'lhs' => 99, 'rhs' => 1 ),
2305
+ array( 'lhs' => 80, 'rhs' => 2 ),
2306
+ array( 'lhs' => 80, 'rhs' => 1 ),
2307
+ array( 'lhs' => 81, 'rhs' => 1 ),
2308
+ array( 'lhs' => 84, 'rhs' => 5 ),
2309
+ array( 'lhs' => 84, 'rhs' => 2 ),
2310
+ array( 'lhs' => 102, 'rhs' => 1 ),
2311
+ array( 'lhs' => 102, 'rhs' => 1 ),
2312
+ array( 'lhs' => 103, 'rhs' => 0 ),
2313
+ array( 'lhs' => 103, 'rhs' => 1 ),
2314
+ array( 'lhs' => 101, 'rhs' => 0 ),
2315
+ array( 'lhs' => 101, 'rhs' => 1 ),
2316
+ array( 'lhs' => 101, 'rhs' => 3 ),
2317
+ array( 'lhs' => 104, 'rhs' => 1 ),
2318
+ array( 'lhs' => 104, 'rhs' => 2 ),
2319
+ array( 'lhs' => 104, 'rhs' => 3 ),
2320
+ array( 'lhs' => 105, 'rhs' => 1 ),
2321
+ array( 'lhs' => 105, 'rhs' => 1 ),
2322
+ array( 'lhs' => 105, 'rhs' => 1 ),
2323
+ array( 'lhs' => 105, 'rhs' => 1 ),
2324
+ array( 'lhs' => 108, 'rhs' => 2 ),
2325
+ array( 'lhs' => 109, 'rhs' => 1 ),
2326
+ array( 'lhs' => 109, 'rhs' => 2 ),
2327
+ array( 'lhs' => 109, 'rhs' => 2 ),
2328
+ array( 'lhs' => 109, 'rhs' => 1 ),
2329
+ array( 'lhs' => 97, 'rhs' => 1 ),
2330
+ array( 'lhs' => 97, 'rhs' => 1 ),
2331
+ array( 'lhs' => 97, 'rhs' => 1 ),
2332
+ array( 'lhs' => 82, 'rhs' => 1 ),
2333
+ array( 'lhs' => 82, 'rhs' => 1 ),
2334
+ array( 'lhs' => 82, 'rhs' => 1 ),
2335
+ array( 'lhs' => 82, 'rhs' => 1 ),
2336
+ array( 'lhs' => 82, 'rhs' => 1 ),
2337
+ array( 'lhs' => 110, 'rhs' => 2 ),
2338
+ array( 'lhs' => 110, 'rhs' => 2 ),
2339
+ array( 'lhs' => 110, 'rhs' => 2 ),
2340
+ array( 'lhs' => 110, 'rhs' => 1 ),
2341
+ array( 'lhs' => 110, 'rhs' => 1 ),
2342
+ array( 'lhs' => 114, 'rhs' => 3 ),
2343
+ array( 'lhs' => 114, 'rhs' => 2 ),
2344
+ array( 'lhs' => 115, 'rhs' => 1 ),
2345
+ array( 'lhs' => 115, 'rhs' => 1 ),
2346
+ array( 'lhs' => 107, 'rhs' => 4 ),
2347
+ array( 'lhs' => 117, 'rhs' => 0 ),
2348
+ array( 'lhs' => 117, 'rhs' => 1 ),
2349
+ array( 'lhs' => 117, 'rhs' => 3 ),
2350
+ array( 'lhs' => 117, 'rhs' => 4 ),
2351
+ array( 'lhs' => 117, 'rhs' => 6 ),
2352
+ array( 'lhs' => 92, 'rhs' => 1 ),
2353
+ array( 'lhs' => 92, 'rhs' => 2 ),
2354
+ array( 'lhs' => 92, 'rhs' => 3 ),
2355
+ array( 'lhs' => 92, 'rhs' => 4 ),
2356
+ array( 'lhs' => 92, 'rhs' => 2 ),
2357
+ array( 'lhs' => 92, 'rhs' => 3 ),
2358
+ array( 'lhs' => 92, 'rhs' => 4 ),
2359
+ array( 'lhs' => 92, 'rhs' => 5 ),
2360
+ array( 'lhs' => 83, 'rhs' => 3 ),
2361
+ array( 'lhs' => 83, 'rhs' => 3 ),
2362
+ array( 'lhs' => 83, 'rhs' => 1 ),
2363
+ array( 'lhs' => 83, 'rhs' => 2 ),
2364
+ array( 'lhs' => 118, 'rhs' => 0 ),
2365
+ array( 'lhs' => 118, 'rhs' => 1 ),
2366
+ array( 'lhs' => 119, 'rhs' => 2 ),
2367
+ array( 'lhs' => 119, 'rhs' => 4 ),
2368
+ array( 'lhs' => 113, 'rhs' => 1 ),
2369
+ array( 'lhs' => 113, 'rhs' => 1 ),
2370
+ array( 'lhs' => 100, 'rhs' => 2 ),
2371
+ array( 'lhs' => 106, 'rhs' => 2 ),
2372
+ array( 'lhs' => 106, 'rhs' => 4 ),
2373
+ array( 'lhs' => 121, 'rhs' => 1 ),
2374
+ array( 'lhs' => 121, 'rhs' => 1 ),
2375
+ array( 'lhs' => 112, 'rhs' => 5 ),
2376
+ array( 'lhs' => 116, 'rhs' => 3 ),
2377
+ array( 'lhs' => 116, 'rhs' => 2 ),
2378
+ array( 'lhs' => 116, 'rhs' => 2 ),
2379
+ array( 'lhs' => 116, 'rhs' => 1 ),
2380
+ array( 'lhs' => 120, 'rhs' => 1 ),
2381
+ array( 'lhs' => 120, 'rhs' => 3 ),
2382
+ array( 'lhs' => 120, 'rhs' => 4 ),
2383
+ array( 'lhs' => 120, 'rhs' => 4 ),
2384
+ array( 'lhs' => 120, 'rhs' => 6 ),
2385
+ array( 'lhs' => 122, 'rhs' => 1 ),
2386
+ array( 'lhs' => 122, 'rhs' => 1 ),
2387
+ array( 'lhs' => 123, 'rhs' => 1 ),
2388
+ array( 'lhs' => 123, 'rhs' => 3 ),
2389
+ array( 'lhs' => 88, 'rhs' => 2 ),
2390
+ array( 'lhs' => 88, 'rhs' => 3 ),
2391
+ array( 'lhs' => 88, 'rhs' => 4 ),
2392
+ array( 'lhs' => 88, 'rhs' => 5 ),
2393
+ array( 'lhs' => 124, 'rhs' => 3 ),
2394
+ array( 'lhs' => 93, 'rhs' => 2 ),
2395
+ array( 'lhs' => 111, 'rhs' => 3 ),
2396
+ array( 'lhs' => 111, 'rhs' => 5 ),
2397
+ array( 'lhs' => 125, 'rhs' => 2 ),
2398
+ array( 'lhs' => 125, 'rhs' => 4 ),
2399
+ array( 'lhs' => 125, 'rhs' => 2 ),
2400
+ array( 'lhs' => 125, 'rhs' => 4 ),
2401
+ array( 'lhs' => 89, 'rhs' => 2 ),
2402
+ array( 'lhs' => 89, 'rhs' => 2 ),
2403
+ array( 'lhs' => 89, 'rhs' => 2 ),
2404
+ array( 'lhs' => 89, 'rhs' => 1 ),
2405
+ array( 'lhs' => 126, 'rhs' => 2 ),
2406
+ array( 'lhs' => 126, 'rhs' => 2 ),
2407
+ array( 'lhs' => 90, 'rhs' => 2 ),
2408
+ array( 'lhs' => 90, 'rhs' => 2 ),
2409
+ array( 'lhs' => 90, 'rhs' => 2 ),
2410
+ array( 'lhs' => 127, 'rhs' => 2 ),
2411
+ array( 'lhs' => 127, 'rhs' => 2 ),
2412
+ array( 'lhs' => 128, 'rhs' => 2 ),
2413
+ array( 'lhs' => 128, 'rhs' => 3 ),
2414
+ array( 'lhs' => 131, 'rhs' => 1 ),
2415
+ array( 'lhs' => 131, 'rhs' => 1 ),
2416
+ array( 'lhs' => 131, 'rhs' => 1 ),
2417
+ array( 'lhs' => 130, 'rhs' => 1 ),
2418
+ array( 'lhs' => 130, 'rhs' => 3 ),
2419
+ array( 'lhs' => 129, 'rhs' => 2 ),
2420
+ array( 'lhs' => 129, 'rhs' => 2 ),
2421
+ array( 'lhs' => 129, 'rhs' => 4 ),
2422
+ array( 'lhs' => 129, 'rhs' => 4 ),
2423
+ array( 'lhs' => 129, 'rhs' => 4 ),
2424
+ array( 'lhs' => 129, 'rhs' => 6 ),
2425
+ array( 'lhs' => 129, 'rhs' => 6 ),
2426
+ array( 'lhs' => 91, 'rhs' => 5 ),
2427
+ array( 'lhs' => 91, 'rhs' => 7 ),
2428
+ array( 'lhs' => 91, 'rhs' => 4 ),
2429
+ array( 'lhs' => 91, 'rhs' => 6 ),
2430
+ array( 'lhs' => 132, 'rhs' => 1 ),
2431
+ array( 'lhs' => 132, 'rhs' => 2 ),
2432
+ array( 'lhs' => 133, 'rhs' => 3 ),
2433
+ array( 'lhs' => 133, 'rhs' => 4 ),
2434
+ array( 'lhs' => 134, 'rhs' => 3 ),
2435
+ array( 'lhs' => 134, 'rhs' => 5 ),
2436
+ array( 'lhs' => 87, 'rhs' => 1 ),
2437
+ array( 'lhs' => 87, 'rhs' => 3 ),
2438
+ array( 'lhs' => 87, 'rhs' => 3 ),
2439
+ array( 'lhs' => 87, 'rhs' => 3 ),
2440
+ array( 'lhs' => 85, 'rhs' => 2 ),
2441
+ array( 'lhs' => 85, 'rhs' => 2 ),
2442
+ array( 'lhs' => 85, 'rhs' => 2 ),
2443
+ array( 'lhs' => 85, 'rhs' => 2 ),
2444
+ array( 'lhs' => 85, 'rhs' => 2 ),
2445
+ array( 'lhs' => 85, 'rhs' => 2 ),
2446
+ array( 'lhs' => 85, 'rhs' => 2 ),
2447
+ array( 'lhs' => 85, 'rhs' => 2 ),
2448
+ array( 'lhs' => 85, 'rhs' => 3 ),
2449
+ array( 'lhs' => 85, 'rhs' => 3 ),
2450
+ array( 'lhs' => 85, 'rhs' => 3 ),
2451
+ array( 'lhs' => 85, 'rhs' => 3 ),
2452
+ array( 'lhs' => 85, 'rhs' => 3 ),
2453
+ array( 'lhs' => 85, 'rhs' => 3 ),
2454
+ array( 'lhs' => 85, 'rhs' => 3 ),
2455
+ array( 'lhs' => 85, 'rhs' => 3 ),
2456
+ array( 'lhs' => 85, 'rhs' => 5 ),
2457
+ array( 'lhs' => 85, 'rhs' => 3 ),
2458
+ );
2459
+
2460
+ /**
2461
+ * The following table contains a mapping of reduce action to method name
2462
+ * that handles the reduction.
2463
+ *
2464
+ * If a rule is not set, it has no handler.
2465
+ */
2466
+ static public $yyReduceMap = array(
2467
+ 0 => 0,
2468
+ 23 => 0,
2469
+ 1 => 1,
2470
+ 6 => 1,
2471
+ 7 => 1,
2472
+ 8 => 1,
2473
+ 9 => 1,
2474
+ 11 => 1,
2475
+ 12 => 1,
2476
+ 13 => 1,
2477
+ 14 => 1,
2478
+ 15 => 1,
2479
+ 16 => 1,
2480
+ 17 => 1,
2481
+ 18 => 1,
2482
+ 19 => 1,
2483
+ 20 => 1,
2484
+ 21 => 1,
2485
+ 22 => 1,
2486
+ 28 => 1,
2487
+ 39 => 1,
2488
+ 40 => 1,
2489
+ 41 => 1,
2490
+ 42 => 1,
2491
+ 51 => 1,
2492
+ 58 => 1,
2493
+ 59 => 1,
2494
+ 60 => 1,
2495
+ 61 => 1,
2496
+ 66 => 1,
2497
+ 67 => 1,
2498
+ 70 => 1,
2499
+ 74 => 1,
2500
+ 79 => 1,
2501
+ 123 => 1,
2502
+ 124 => 1,
2503
+ 125 => 1,
2504
+ 142 => 1,
2505
+ 150 => 1,
2506
+ 152 => 1,
2507
+ 168 => 1,
2508
+ 174 => 1,
2509
+ 2 => 2,
2510
+ 5 => 2,
2511
+ 24 => 2,
2512
+ 80 => 2,
2513
+ 3 => 3,
2514
+ 4 => 4,
2515
+ 10 => 10,
2516
+ 25 => 10,
2517
+ 26 => 10,
2518
+ 27 => 10,
2519
+ 29 => 10,
2520
+ 30 => 10,
2521
+ 31 => 10,
2522
+ 32 => 32,
2523
+ 33 => 33,
2524
+ 34 => 34,
2525
+ 35 => 35,
2526
+ 36 => 36,
2527
+ 63 => 36,
2528
+ 68 => 36,
2529
+ 69 => 36,
2530
+ 71 => 36,
2531
+ 72 => 36,
2532
+ 73 => 36,
2533
+ 153 => 36,
2534
+ 154 => 36,
2535
+ 37 => 37,
2536
+ 38 => 38,
2537
+ 43 => 43,
2538
+ 44 => 44,
2539
+ 45 => 45,
2540
+ 46 => 46,
2541
+ 47 => 47,
2542
+ 48 => 48,
2543
+ 49 => 49,
2544
+ 50 => 50,
2545
+ 52 => 52,
2546
+ 85 => 52,
2547
+ 104 => 52,
2548
+ 53 => 53,
2549
+ 86 => 53,
2550
+ 118 => 53,
2551
+ 155 => 53,
2552
+ 54 => 54,
2553
+ 119 => 54,
2554
+ 55 => 55,
2555
+ 56 => 56,
2556
+ 57 => 57,
2557
+ 62 => 62,
2558
+ 64 => 64,
2559
+ 65 => 65,
2560
+ 75 => 75,
2561
+ 76 => 76,
2562
+ 77 => 77,
2563
+ 78 => 78,
2564
+ 81 => 81,
2565
+ 82 => 82,
2566
+ 83 => 83,
2567
+ 84 => 84,
2568
+ 87 => 87,
2569
+ 88 => 88,
2570
+ 89 => 89,
2571
+ 122 => 89,
2572
+ 90 => 90,
2573
+ 91 => 91,
2574
+ 92 => 92,
2575
+ 93 => 93,
2576
+ 94 => 94,
2577
+ 95 => 95,
2578
+ 96 => 96,
2579
+ 97 => 97,
2580
+ 98 => 98,
2581
+ 99 => 98,
2582
+ 100 => 100,
2583
+ 101 => 101,
2584
+ 102 => 102,
2585
+ 103 => 103,
2586
+ 105 => 105,
2587
+ 121 => 105,
2588
+ 106 => 106,
2589
+ 107 => 106,
2590
+ 108 => 108,
2591
+ 109 => 109,
2592
+ 110 => 110,
2593
+ 111 => 111,
2594
+ 112 => 112,
2595
+ 113 => 113,
2596
+ 114 => 114,
2597
+ 115 => 115,
2598
+ 116 => 116,
2599
+ 117 => 117,
2600
+ 120 => 120,
2601
+ 126 => 126,
2602
+ 156 => 126,
2603
+ 127 => 127,
2604
+ 128 => 128,
2605
+ 129 => 129,
2606
+ 130 => 130,
2607
+ 131 => 131,
2608
+ 132 => 132,
2609
+ 133 => 133,
2610
+ 134 => 134,
2611
+ 135 => 135,
2612
+ 136 => 136,
2613
+ 137 => 137,
2614
+ 138 => 138,
2615
+ 139 => 139,
2616
+ 140 => 140,
2617
+ 141 => 140,
2618
+ 143 => 143,
2619
+ 144 => 144,
2620
+ 145 => 145,
2621
+ 146 => 145,
2622
+ 147 => 147,
2623
+ 148 => 148,
2624
+ 149 => 149,
2625
+ 151 => 151,
2626
+ 157 => 157,
2627
+ 158 => 158,
2628
+ 159 => 159,
2629
+ 160 => 160,
2630
+ 161 => 161,
2631
+ 162 => 162,
2632
+ 163 => 163,
2633
+ 164 => 164,
2634
+ 165 => 165,
2635
+ 166 => 166,
2636
+ 167 => 167,
2637
+ 169 => 169,
2638
+ 170 => 170,
2639
+ 171 => 171,
2640
+ 172 => 172,
2641
+ 173 => 173,
2642
+ 175 => 175,
2643
+ 176 => 176,
2644
+ 177 => 176,
2645
+ 178 => 178,
2646
+ 181 => 178,
2647
+ 182 => 178,
2648
+ 179 => 179,
2649
+ 180 => 179,
2650
+ 183 => 183,
2651
+ 184 => 183,
2652
+ 185 => 185,
2653
+ 186 => 186,
2654
+ 187 => 186,
2655
+ 188 => 186,
2656
+ 189 => 186,
2657
+ 190 => 186,
2658
+ 191 => 186,
2659
+ 192 => 192,
2660
+ 193 => 193,
2661
+ 194 => 194,
2662
+ 195 => 195,
2663
+ );
2664
+ /* Beginning here are the reduction cases. A typical example
2665
+ ** follows:
2666
+ ** #line <lineno> <grammarfile>
2667
+ ** function yy_r0($yymsp){ ... } // User supplied code
2668
+ ** #line <lineno> <thisfile>
2669
+ */
2670
+ #line 28 "/var/www/coffeescript-php/grammar.y"
2671
+ function yy_r0(){ $this->_retvalue = yy('Block'); }
2672
+ #line 2672 "/var/www/coffeescript-php/grammar.php"
2673
+ #line 29 "/var/www/coffeescript-php/grammar.y"
2674
+ function yy_r1(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; }
2675
+ #line 2675 "/var/www/coffeescript-php/grammar.php"
2676
+ #line 30 "/var/www/coffeescript-php/grammar.y"
2677
+ function yy_r2(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor; }
2678
+ #line 2678 "/var/www/coffeescript-php/grammar.php"
2679
+ #line 32 "/var/www/coffeescript-php/grammar.y"
2680
+ function yy_r3(){ $this->_retvalue = yy_Block::wrap(array($this->yystack[$this->yyidx + 0]->minor)); }
2681
+ #line 2681 "/var/www/coffeescript-php/grammar.php"
2682
+ #line 33 "/var/www/coffeescript-php/grammar.y"
2683
+ function yy_r4(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor->push($this->yystack[$this->yyidx + 0]->minor); }
2684
+ #line 2684 "/var/www/coffeescript-php/grammar.php"
2685
+ #line 41 "/var/www/coffeescript-php/grammar.y"
2686
+ function yy_r10(){ $this->_retvalue = yy('Literal', $this->yystack[$this->yyidx + 0]->minor); }
2687
+ #line 2687 "/var/www/coffeescript-php/grammar.php"
2688
+ #line 69 "/var/www/coffeescript-php/grammar.y"
2689
+ function yy_r32(){
2690
+ $val = yy('Literal', $this->yystack[$this->yyidx + 0]->minor);
2691
+ $val->is_undefined = $this->yystack[$this->yyidx + 0]->minor === 'undefined';
2692
+ $this->_retvalue = $val;
2693
+ }
2694
+ #line 2694 "/var/www/coffeescript-php/grammar.php"
2695
+ #line 75 "/var/www/coffeescript-php/grammar.y"
2696
+ function yy_r33(){ $this->_retvalue = yy('Assign', $this->yystack[$this->yyidx + -2]->minor, $this->yystack[$this->yyidx + 0]->minor); }
2697
+ #line 2697 "/var/www/coffeescript-php/grammar.php"
2698
+ #line 76 "/var/www/coffeescript-php/grammar.y"
2699
+ function yy_r34(){ $this->_retvalue = yy('Assign', $this->yystack[$this->yyidx + -3]->minor, $this->yystack[$this->yyidx + 0]->minor); }
2700
+ #line 2700 "/var/www/coffeescript-php/grammar.php"
2701
+ #line 77 "/var/www/coffeescript-php/grammar.y"
2702
+ function yy_r35(){ $this->_retvalue = yy('Assign', $this->yystack[$this->yyidx + -4]->minor, $this->yystack[$this->yyidx + -1]->minor); }
2703
+ #line 2703 "/var/www/coffeescript-php/grammar.php"
2704
+ #line 79 "/var/www/coffeescript-php/grammar.y"
2705
+ function yy_r36(){ $this->_retvalue = yy('Value', $this->yystack[$this->yyidx + 0]->minor); }
2706
+ #line 2706 "/var/www/coffeescript-php/grammar.php"
2707
+ #line 80 "/var/www/coffeescript-php/grammar.y"
2708
+ function yy_r37(){ $this->_retvalue = yy('Assign', yy('Value', $this->yystack[$this->yyidx + -2]->minor), $this->yystack[$this->yyidx + 0]->minor, 'object'); }
2709
+ #line 2709 "/var/www/coffeescript-php/grammar.php"
2710
+ #line 81 "/var/www/coffeescript-php/grammar.y"
2711
+ function yy_r38(){ $this->_retvalue = yy('Assign', yy('Value', $this->yystack[$this->yyidx + -4]->minor), $this->yystack[$this->yyidx + -1]->minor, 'object'); }
2712
+ #line 2712 "/var/www/coffeescript-php/grammar.php"
2713
+ #line 88 "/var/www/coffeescript-php/grammar.y"
2714
+ function yy_r43(){ $this->_retvalue = yy('Return', $this->yystack[$this->yyidx + 0]->minor); }
2715
+ #line 2715 "/var/www/coffeescript-php/grammar.php"
2716
+ #line 89 "/var/www/coffeescript-php/grammar.y"
2717
+ function yy_r44(){ $this->_retvalue = yy('Return'); }
2718
+ #line 2718 "/var/www/coffeescript-php/grammar.php"
2719
+ #line 91 "/var/www/coffeescript-php/grammar.y"
2720
+ function yy_r45(){ $this->_retvalue = yy('Comment', $this->yystack[$this->yyidx + 0]->minor); }
2721
+ #line 2721 "/var/www/coffeescript-php/grammar.php"
2722
+ #line 93 "/var/www/coffeescript-php/grammar.y"
2723
+ function yy_r46(){ $this->_retvalue = yy('Code', $this->yystack[$this->yyidx + -3]->minor, $this->yystack[$this->yyidx + 0]->minor, $this->yystack[$this->yyidx + -1]->minor); }
2724
+ #line 2724 "/var/www/coffeescript-php/grammar.php"
2725
+ #line 94 "/var/www/coffeescript-php/grammar.y"
2726
+ function yy_r47(){ $this->_retvalue = yy('Code', array(), $this->yystack[$this->yyidx + 0]->minor, $this->yystack[$this->yyidx + -1]->minor); }
2727
+ #line 2727 "/var/www/coffeescript-php/grammar.php"
2728
+ #line 96 "/var/www/coffeescript-php/grammar.y"
2729
+ function yy_r48(){ $this->_retvalue = 'func'; }
2730
+ #line 2730 "/var/www/coffeescript-php/grammar.php"
2731
+ #line 97 "/var/www/coffeescript-php/grammar.y"
2732
+ function yy_r49(){ $this->_retvalue = 'boundfunc'; }
2733
+ #line 2733 "/var/www/coffeescript-php/grammar.php"
2734
+ #line 99 "/var/www/coffeescript-php/grammar.y"
2735
+ function yy_r50(){ $this->_retvalue = ''; }
2736
+ #line 2736 "/var/www/coffeescript-php/grammar.php"
2737
+ #line 102 "/var/www/coffeescript-php/grammar.y"
2738
+ function yy_r52(){ $this->_retvalue = array(); }
2739
+ #line 2739 "/var/www/coffeescript-php/grammar.php"
2740
+ #line 103 "/var/www/coffeescript-php/grammar.y"
2741
+ function yy_r53(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor); }
2742
+ #line 2742 "/var/www/coffeescript-php/grammar.php"
2743
+ #line 104 "/var/www/coffeescript-php/grammar.y"
2744
+ function yy_r54(){ $this->_retvalue = array_merge($this->yystack[$this->yyidx + -2]->minor, array($this->yystack[$this->yyidx + 0]->minor)); }
2745
+ #line 2745 "/var/www/coffeescript-php/grammar.php"
2746
+ #line 106 "/var/www/coffeescript-php/grammar.y"
2747
+ function yy_r55(){ $this->_retvalue = yy('Param', $this->yystack[$this->yyidx + 0]->minor); }
2748
+ #line 2748 "/var/www/coffeescript-php/grammar.php"
2749
+ #line 107 "/var/www/coffeescript-php/grammar.y"
2750
+ function yy_r56(){ $this->_retvalue = yy('Param', $this->yystack[$this->yyidx + -1]->minor, NULL, TRUE); }
2751
+ #line 2751 "/var/www/coffeescript-php/grammar.php"
2752
+ #line 108 "/var/www/coffeescript-php/grammar.y"
2753
+ function yy_r57(){ $this->_retvalue = yy('Param', $this->yystack[$this->yyidx + -2]->minor, $this->yystack[$this->yyidx + 0]->minor); }
2754
+ #line 2754 "/var/www/coffeescript-php/grammar.php"
2755
+ #line 115 "/var/www/coffeescript-php/grammar.y"
2756
+ function yy_r62(){ $this->_retvalue = yy('Splat', $this->yystack[$this->yyidx + -1]->minor); }
2757
+ #line 2757 "/var/www/coffeescript-php/grammar.php"
2758
+ #line 118 "/var/www/coffeescript-php/grammar.y"
2759
+ function yy_r64(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor->add($this->yystack[$this->yyidx + 0]->minor); }
2760
+ #line 2760 "/var/www/coffeescript-php/grammar.php"
2761
+ #line 119 "/var/www/coffeescript-php/grammar.y"
2762
+ function yy_r65(){ $this->_retvalue = yy('Value', $this->yystack[$this->yyidx + -1]->minor, is_object($this->yystack[$this->yyidx + 0]->minor) ? array($this->yystack[$this->yyidx + 0]->minor) : (array) $this->yystack[$this->yyidx + 0]->minor); }
2763
+ #line 2763 "/var/www/coffeescript-php/grammar.php"
2764
+ #line 132 "/var/www/coffeescript-php/grammar.y"
2765
+ function yy_r75(){ $this->_retvalue = yy('Access', $this->yystack[$this->yyidx + 0]->minor); }
2766
+ #line 2766 "/var/www/coffeescript-php/grammar.php"
2767
+ #line 133 "/var/www/coffeescript-php/grammar.y"
2768
+ function yy_r76(){ $this->_retvalue = yy('Access', $this->yystack[$this->yyidx + 0]->minor, 'soak'); }
2769
+ #line 2769 "/var/www/coffeescript-php/grammar.php"
2770
+ #line 134 "/var/www/coffeescript-php/grammar.y"
2771
+ function yy_r77(){ $this->_retvalue = array( yy('Access', yy('Literal', 'prototype')), yy('Access', $this->yystack[$this->yyidx + 0]->minor) ); }
2772
+ #line 2772 "/var/www/coffeescript-php/grammar.php"
2773
+ #line 135 "/var/www/coffeescript-php/grammar.y"
2774
+ function yy_r78(){ $this->_retvalue = yy('Access', yy('Literal', 'prototype')); }
2775
+ #line 2775 "/var/www/coffeescript-php/grammar.php"
2776
+ #line 139 "/var/www/coffeescript-php/grammar.y"
2777
+ function yy_r81(){ $this->_retvalue = extend($this->yystack[$this->yyidx + 0]->minor, array('soak' => TRUE)); }
2778
+ #line 2778 "/var/www/coffeescript-php/grammar.php"
2779
+ #line 141 "/var/www/coffeescript-php/grammar.y"
2780
+ function yy_r82(){ $this->_retvalue = yy('Index', $this->yystack[$this->yyidx + 0]->minor); }
2781
+ #line 2781 "/var/www/coffeescript-php/grammar.php"
2782
+ #line 142 "/var/www/coffeescript-php/grammar.y"
2783
+ function yy_r83(){ $this->_retvalue = yy('Slice', $this->yystack[$this->yyidx + 0]->minor); }
2784
+ #line 2784 "/var/www/coffeescript-php/grammar.php"
2785
+ #line 144 "/var/www/coffeescript-php/grammar.y"
2786
+ function yy_r84(){
2787
+ $object_start = $this->yystack[$this->yyidx - 3]->minor;
2788
+ $generated = isset($object_start->generated) ? $object_start->generated : FALSE;
2789
+
2790
+ $this->_retvalue = yy('Obj', $this->yystack[$this->yyidx + -2]->minor, $generated);
2791
+ }
2792
+ #line 2792 "/var/www/coffeescript-php/grammar.php"
2793
+ #line 153 "/var/www/coffeescript-php/grammar.y"
2794
+ function yy_r87(){ $this->yystack[$this->yyidx + -2]->minor[] = $this->yystack[$this->yyidx + 0]->minor; $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor; }
2795
+ #line 2795 "/var/www/coffeescript-php/grammar.php"
2796
+ #line 154 "/var/www/coffeescript-php/grammar.y"
2797
+ function yy_r88(){ $this->yystack[$this->yyidx + -3]->minor[] = $this->yystack[$this->yyidx + 0]->minor; $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor; }
2798
+ #line 2798 "/var/www/coffeescript-php/grammar.php"
2799
+ #line 155 "/var/www/coffeescript-php/grammar.y"
2800
+ function yy_r89(){ $this->_retvalue = array_merge($this->yystack[$this->yyidx + -5]->minor, $this->yystack[$this->yyidx + -2]->minor); }
2801
+ #line 2801 "/var/www/coffeescript-php/grammar.php"
2802
+ #line 157 "/var/www/coffeescript-php/grammar.y"
2803
+ function yy_r90(){ $this->_retvalue = yy('Class'); }
2804
+ #line 2804 "/var/www/coffeescript-php/grammar.php"
2805
+ #line 158 "/var/www/coffeescript-php/grammar.y"
2806
+ function yy_r91(){ $this->_retvalue = yy('Class', NULL, NULL, $this->yystack[$this->yyidx + 0]->minor); }
2807
+ #line 2807 "/var/www/coffeescript-php/grammar.php"
2808
+ #line 159 "/var/www/coffeescript-php/grammar.y"
2809
+ function yy_r92(){ $this->_retvalue = yy('Class', NULL, $this->yystack[$this->yyidx + 0]->minor); }
2810
+ #line 2810 "/var/www/coffeescript-php/grammar.php"
2811
+ #line 160 "/var/www/coffeescript-php/grammar.y"
2812
+ function yy_r93(){ $this->_retvalue = yy('Class', NULL, $this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + 0]->minor); }
2813
+ #line 2813 "/var/www/coffeescript-php/grammar.php"
2814
+ #line 161 "/var/www/coffeescript-php/grammar.y"
2815
+ function yy_r94(){ $this->_retvalue = yy('Class', $this->yystack[$this->yyidx + 0]->minor); }
2816
+ #line 2816 "/var/www/coffeescript-php/grammar.php"
2817
+ #line 162 "/var/www/coffeescript-php/grammar.y"
2818
+ function yy_r95(){ $this->_retvalue = yy('Class', $this->yystack[$this->yyidx + -1]->minor, NULL, $this->yystack[$this->yyidx + 0]->minor); }
2819
+ #line 2819 "/var/www/coffeescript-php/grammar.php"
2820
+ #line 163 "/var/www/coffeescript-php/grammar.y"
2821
+ function yy_r96(){ $this->_retvalue = yy('Class', $this->yystack[$this->yyidx + -2]->minor, $this->yystack[$this->yyidx + 0]->minor); }
2822
+ #line 2822 "/var/www/coffeescript-php/grammar.php"
2823
+ #line 164 "/var/www/coffeescript-php/grammar.y"
2824
+ function yy_r97(){ $this->_retvalue = yy('Class', $this->yystack[$this->yyidx + -3]->minor, $this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + 0]->minor); }
2825
+ #line 2825 "/var/www/coffeescript-php/grammar.php"
2826
+ #line 166 "/var/www/coffeescript-php/grammar.y"
2827
+ function yy_r98(){ $this->_retvalue = yy('Call', $this->yystack[$this->yyidx + -2]->minor, $this->yystack[$this->yyidx + 0]->minor, $this->yystack[$this->yyidx + -1]->minor); }
2828
+ #line 2828 "/var/www/coffeescript-php/grammar.php"
2829
+ #line 168 "/var/www/coffeescript-php/grammar.y"
2830
+ function yy_r100(){ $this->_retvalue = yy('Call', 'super', array(yy('Splat', yy('Literal', 'arguments')))); }
2831
+ #line 2831 "/var/www/coffeescript-php/grammar.php"
2832
+ #line 169 "/var/www/coffeescript-php/grammar.y"
2833
+ function yy_r101(){ $this->_retvalue = yy('Call', 'super', $this->yystack[$this->yyidx + 0]->minor); }
2834
+ #line 2834 "/var/www/coffeescript-php/grammar.php"
2835
+ #line 171 "/var/www/coffeescript-php/grammar.y"
2836
+ function yy_r102(){ $this->_retvalue = FALSE; }
2837
+ #line 2837 "/var/www/coffeescript-php/grammar.php"
2838
+ #line 172 "/var/www/coffeescript-php/grammar.y"
2839
+ function yy_r103(){ $this->_retvalue = TRUE; }
2840
+ #line 2840 "/var/www/coffeescript-php/grammar.php"
2841
+ #line 175 "/var/www/coffeescript-php/grammar.y"
2842
+ function yy_r105(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor; }
2843
+ #line 2843 "/var/www/coffeescript-php/grammar.php"
2844
+ #line 177 "/var/www/coffeescript-php/grammar.y"
2845
+ function yy_r106(){ $this->_retvalue = yy('Value', yy('Literal', 'this')); }
2846
+ #line 2846 "/var/www/coffeescript-php/grammar.php"
2847
+ #line 180 "/var/www/coffeescript-php/grammar.y"
2848
+ function yy_r108(){ $this->_retvalue = yy('Value', yy('Literal', 'this'), array(yy('Access', $this->yystack[$this->yyidx + 0]->minor)), 'this'); }
2849
+ #line 2849 "/var/www/coffeescript-php/grammar.php"
2850
+ #line 182 "/var/www/coffeescript-php/grammar.y"
2851
+ function yy_r109(){ $this->_retvalue = yy('Arr', array()); }
2852
+ #line 2852 "/var/www/coffeescript-php/grammar.php"
2853
+ #line 183 "/var/www/coffeescript-php/grammar.y"
2854
+ function yy_r110(){ $this->_retvalue = yy('Arr', $this->yystack[$this->yyidx + -2]->minor); }
2855
+ #line 2855 "/var/www/coffeescript-php/grammar.php"
2856
+ #line 185 "/var/www/coffeescript-php/grammar.y"
2857
+ function yy_r111(){ $this->_retvalue = 'inclusive'; }
2858
+ #line 2858 "/var/www/coffeescript-php/grammar.php"
2859
+ #line 186 "/var/www/coffeescript-php/grammar.y"
2860
+ function yy_r112(){ $this->_retvalue = 'exclusive'; }
2861
+ #line 2861 "/var/www/coffeescript-php/grammar.php"
2862
+ #line 188 "/var/www/coffeescript-php/grammar.y"
2863
+ function yy_r113(){ $this->_retvalue = yy('Range', $this->yystack[$this->yyidx + -3]->minor, $this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + -2]->minor); }
2864
+ #line 2864 "/var/www/coffeescript-php/grammar.php"
2865
+ #line 190 "/var/www/coffeescript-php/grammar.y"
2866
+ function yy_r114(){ $this->_retvalue = yy('Range', $this->yystack[$this->yyidx + -2]->minor, $this->yystack[$this->yyidx + 0]->minor, $this->yystack[$this->yyidx + -1]->minor); }
2867
+ #line 2867 "/var/www/coffeescript-php/grammar.php"
2868
+ #line 191 "/var/www/coffeescript-php/grammar.y"
2869
+ function yy_r115(){ $this->_retvalue = yy('Range', $this->yystack[$this->yyidx + -1]->minor, NULL, $this->yystack[$this->yyidx + 0]->minor); }
2870
+ #line 2870 "/var/www/coffeescript-php/grammar.php"
2871
+ #line 192 "/var/www/coffeescript-php/grammar.y"
2872
+ function yy_r116(){ $this->_retvalue = yy('Range', NULL, $this->yystack[$this->yyidx + 0]->minor, $this->yystack[$this->yyidx + -1]->minor); }
2873
+ #line 2873 "/var/www/coffeescript-php/grammar.php"
2874
+ #line 193 "/var/www/coffeescript-php/grammar.y"
2875
+ function yy_r117(){ $this->_retvalue = yy('Range', NULL, NULL, $this->yystack[$this->yyidx + 0]->minor); }
2876
+ #line 2876 "/var/www/coffeescript-php/grammar.php"
2877
+ #line 197 "/var/www/coffeescript-php/grammar.y"
2878
+ function yy_r120(){ $this->_retvalue = array_merge($this->yystack[$this->yyidx + -3]->minor, array($this->yystack[$this->yyidx + 0]->minor)); }
2879
+ #line 2879 "/var/www/coffeescript-php/grammar.php"
2880
+ #line 205 "/var/www/coffeescript-php/grammar.y"
2881
+ function yy_r126(){ $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor, $this->yystack[$this->yyidx + 0]->minor); }
2882
+ #line 2882 "/var/www/coffeescript-php/grammar.php"
2883
+ #line 207 "/var/www/coffeescript-php/grammar.y"
2884
+ function yy_r127(){ $this->_retvalue = yy('Try', $this->yystack[$this->yyidx + 0]->minor); }
2885
+ #line 2885 "/var/www/coffeescript-php/grammar.php"
2886
+ #line 208 "/var/www/coffeescript-php/grammar.y"
2887
+ function yy_r128(){ $this->_retvalue = yy('Try', $this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + 0]->minor[0], $this->yystack[$this->yyidx + 0]->minor[1]); }
2888
+ #line 2888 "/var/www/coffeescript-php/grammar.php"
2889
+ #line 209 "/var/www/coffeescript-php/grammar.y"
2890
+ function yy_r129(){ $this->_retvalue = yy('Try', $this->yystack[$this->yyidx + -2]->minor, NULL, NULL, $this->yystack[$this->yyidx + 0]->minor); }
2891
+ #line 2891 "/var/www/coffeescript-php/grammar.php"
2892
+ #line 210 "/var/www/coffeescript-php/grammar.y"
2893
+ function yy_r130(){ $this->_retvalue = yy('Try', $this->yystack[$this->yyidx + -3]->minor, $this->yystack[$this->yyidx + -2]->minor[0], $this->yystack[$this->yyidx + -2]->minor[1], $this->yystack[$this->yyidx + 0]->minor); }
2894
+ #line 2894 "/var/www/coffeescript-php/grammar.php"
2895
+ #line 212 "/var/www/coffeescript-php/grammar.y"
2896
+ function yy_r131(){ $this->_retvalue = array($this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + 0]->minor); }
2897
+ #line 2897 "/var/www/coffeescript-php/grammar.php"
2898
+ #line 214 "/var/www/coffeescript-php/grammar.y"
2899
+ function yy_r132(){ $this->_retvalue = yy('Throw', $this->yystack[$this->yyidx + 0]->minor); }
2900
+ #line 2900 "/var/www/coffeescript-php/grammar.php"
2901
+ #line 216 "/var/www/coffeescript-php/grammar.y"
2902
+ function yy_r133(){ $this->_retvalue = yy('Parens', $this->yystack[$this->yyidx + -1]->minor); }
2903
+ #line 2903 "/var/www/coffeescript-php/grammar.php"
2904
+ #line 217 "/var/www/coffeescript-php/grammar.y"
2905
+ function yy_r134(){ $this->_retvalue = yy('Parens', $this->yystack[$this->yyidx + -2]->minor); }
2906
+ #line 2906 "/var/www/coffeescript-php/grammar.php"
2907
+ #line 219 "/var/www/coffeescript-php/grammar.y"
2908
+ function yy_r135(){ $this->_retvalue = yy('While', $this->yystack[$this->yyidx + 0]->minor); }
2909
+ #line 2909 "/var/www/coffeescript-php/grammar.php"
2910
+ #line 220 "/var/www/coffeescript-php/grammar.y"
2911
+ function yy_r136(){ $this->_retvalue = yy('While', $this->yystack[$this->yyidx + -2]->minor, array('guard' => $this->yystack[$this->yyidx + 0]->minor)); }
2912
+ #line 2912 "/var/www/coffeescript-php/grammar.php"
2913
+ #line 221 "/var/www/coffeescript-php/grammar.y"
2914
+ function yy_r137(){ $this->_retvalue = yy('While', $this->yystack[$this->yyidx + 0]->minor, array('invert' => TRUE)); }
2915
+ #line 2915 "/var/www/coffeescript-php/grammar.php"
2916
+ #line 222 "/var/www/coffeescript-php/grammar.y"
2917
+ function yy_r138(){ $this->_retvalue = yy('While', $this->yystack[$this->yyidx + -2]->minor, array('invert' => TRUE, 'guard' => $this->yystack[$this->yyidx + 0]->minor)); }
2918
+ #line 2918 "/var/www/coffeescript-php/grammar.php"
2919
+ #line 224 "/var/www/coffeescript-php/grammar.y"
2920
+ function yy_r139(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor->add_body($this->yystack[$this->yyidx + 0]->minor); }
2921
+ #line 2921 "/var/www/coffeescript-php/grammar.php"
2922
+ #line 225 "/var/www/coffeescript-php/grammar.y"
2923
+ function yy_r140(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor->add_body(yy_Block::wrap(array($this->yystack[$this->yyidx + -1]->minor))); }
2924
+ #line 2924 "/var/www/coffeescript-php/grammar.php"
2925
+ #line 229 "/var/www/coffeescript-php/grammar.y"
2926
+ function yy_r143(){ $this->_retvalue = yy('While', yy('Literal', 'true')); $this->_retvalue->add_body($this->yystack[$this->yyidx + 0]->minor); }
2927
+ #line 2927 "/var/www/coffeescript-php/grammar.php"
2928
+ #line 230 "/var/www/coffeescript-php/grammar.y"
2929
+ function yy_r144(){ $this->_retvalue = yy('While', yy('Literal', 'true')); $this->_retvalue->add_body(yy_Block::wrap($this->yystack[$this->yyidx + 0]->minor)); }
2930
+ #line 2930 "/var/www/coffeescript-php/grammar.php"
2931
+ #line 232 "/var/www/coffeescript-php/grammar.y"
2932
+ function yy_r145(){ $this->_retvalue = yy('For', $this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + 0]->minor); }
2933
+ #line 2933 "/var/www/coffeescript-php/grammar.php"
2934
+ #line 234 "/var/www/coffeescript-php/grammar.y"
2935
+ function yy_r147(){ $this->_retvalue = yy('For', $this->yystack[$this->yyidx + 0]->minor, $this->yystack[$this->yyidx + -1]->minor); }
2936
+ #line 2936 "/var/www/coffeescript-php/grammar.php"
2937
+ #line 236 "/var/www/coffeescript-php/grammar.y"
2938
+ function yy_r148(){ $this->_retvalue = array('source' => yy('Value', $this->yystack[$this->yyidx + 0]->minor)); }
2939
+ #line 2939 "/var/www/coffeescript-php/grammar.php"
2940
+ #line 237 "/var/www/coffeescript-php/grammar.y"
2941
+ function yy_r149(){ $this->yystack[$this->yyidx + 0]->minor['own'] = isset($this->yystack[$this->yyidx + -1]->minor['own']) ? $this->yystack[$this->yyidx + -1]->minor['own'] : NULL; $this->yystack[$this->yyidx + 0]->minor['name'] = $this->yystack[$this->yyidx + -1]->minor[0]; $this->yystack[$this->yyidx + 0]->minor['index'] = isset($this->yystack[$this->yyidx + -1]->minor[1]) ? $this->yystack[$this->yyidx + -1]->minor[1] : NULL; $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; }
2942
+ #line 2942 "/var/www/coffeescript-php/grammar.php"
2943
+ #line 240 "/var/www/coffeescript-php/grammar.y"
2944
+ function yy_r151(){ $this->yystack[$this->yyidx + 0]->minor['own'] = TRUE; $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; }
2945
+ #line 2945 "/var/www/coffeescript-php/grammar.php"
2946
+ #line 249 "/var/www/coffeescript-php/grammar.y"
2947
+ function yy_r157(){ $this->_retvalue = array('source' => $this->yystack[$this->yyidx + 0]->minor); }
2948
+ #line 2948 "/var/www/coffeescript-php/grammar.php"
2949
+ #line 250 "/var/www/coffeescript-php/grammar.y"
2950
+ function yy_r158(){ $this->_retvalue = array('source' => $this->yystack[$this->yyidx + 0]->minor, 'object' => TRUE); }
2951
+ #line 2951 "/var/www/coffeescript-php/grammar.php"
2952
+ #line 251 "/var/www/coffeescript-php/grammar.y"
2953
+ function yy_r159(){ $this->_retvalue = array('source' => $this->yystack[$this->yyidx + -2]->minor, 'guard' => $this->yystack[$this->yyidx + 0]->minor); }
2954
+ #line 2954 "/var/www/coffeescript-php/grammar.php"
2955
+ #line 252 "/var/www/coffeescript-php/grammar.y"
2956
+ function yy_r160(){ $this->_retvalue = array('source' => $this->yystack[$this->yyidx + -2]->minor, 'guard' => $this->yystack[$this->yyidx + 0]->minor, 'object' => TRUE); }
2957
+ #line 2957 "/var/www/coffeescript-php/grammar.php"
2958
+ #line 253 "/var/www/coffeescript-php/grammar.y"
2959
+ function yy_r161(){ $this->_retvalue = array('source' => $this->yystack[$this->yyidx + -2]->minor, 'step' => $this->yystack[$this->yyidx + 0]->minor); }
2960
+ #line 2960 "/var/www/coffeescript-php/grammar.php"
2961
+ #line 254 "/var/www/coffeescript-php/grammar.y"
2962
+ function yy_r162(){ $this->_retvalue = array('source' => $this->yystack[$this->yyidx + -4]->minor, 'guard' => $this->yystack[$this->yyidx + -2]->minor, 'step' => $this->yystack[$this->yyidx + 0]->minor); }
2963
+ #line 2963 "/var/www/coffeescript-php/grammar.php"
2964
+ #line 255 "/var/www/coffeescript-php/grammar.y"
2965
+ function yy_r163(){ $this->_retvalue = array('source' => $this->yystack[$this->yyidx + -4]->minor, 'step' => $this->yystack[$this->yyidx + -2]->minor, 'guard' => $this->yystack[$this->yyidx + 0]->minor); }
2966
+ #line 2966 "/var/www/coffeescript-php/grammar.php"
2967
+ #line 257 "/var/www/coffeescript-php/grammar.y"
2968
+ function yy_r164(){ $this->_retvalue = yy('Switch', $this->yystack[$this->yyidx + -3]->minor, $this->yystack[$this->yyidx + -1]->minor); }
2969
+ #line 2969 "/var/www/coffeescript-php/grammar.php"
2970
+ #line 258 "/var/www/coffeescript-php/grammar.y"
2971
+ function yy_r165(){ $this->_retvalue = yy('Switch', $this->yystack[$this->yyidx + -5]->minor, $this->yystack[$this->yyidx + -3]->minor, $this->yystack[$this->yyidx + -1]->minor); }
2972
+ #line 2972 "/var/www/coffeescript-php/grammar.php"
2973
+ #line 259 "/var/www/coffeescript-php/grammar.y"
2974
+ function yy_r166(){ $this->_retvalue = yy('Switch', NULL, $this->yystack[$this->yyidx + -1]->minor); }
2975
+ #line 2975 "/var/www/coffeescript-php/grammar.php"
2976
+ #line 260 "/var/www/coffeescript-php/grammar.y"
2977
+ function yy_r167(){ $this->_retvalue = yy('Switch', NULL, $this->yystack[$this->yyidx + -3]->minor, $this->yystack[$this->yyidx + -1]->minor); }
2978
+ #line 2978 "/var/www/coffeescript-php/grammar.php"
2979
+ #line 263 "/var/www/coffeescript-php/grammar.y"
2980
+ function yy_r169(){ $this->_retvalue = array_merge($this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + 0]->minor); }
2981
+ #line 2981 "/var/www/coffeescript-php/grammar.php"
2982
+ #line 265 "/var/www/coffeescript-php/grammar.y"
2983
+ function yy_r170(){ $this->_retvalue = array(array($this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + 0]->minor)); }
2984
+ #line 2984 "/var/www/coffeescript-php/grammar.php"
2985
+ #line 266 "/var/www/coffeescript-php/grammar.y"
2986
+ function yy_r171(){ $this->_retvalue = array(array($this->yystack[$this->yyidx + -2]->minor, $this->yystack[$this->yyidx + -1]->minor)); }
2987
+ #line 2987 "/var/www/coffeescript-php/grammar.php"
2988
+ #line 268 "/var/www/coffeescript-php/grammar.y"
2989
+ function yy_r172(){ $this->_retvalue = yy('If', $this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + 0]->minor, array('type' => $this->yystack[$this->yyidx + -2]->minor)); }
2990
+ #line 2990 "/var/www/coffeescript-php/grammar.php"
2991
+ #line 269 "/var/www/coffeescript-php/grammar.y"
2992
+ function yy_r173(){ $this->_retvalue = $this->yystack[$this->yyidx + -4]->minor->add_else(yy('If', $this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + 0]->minor, array('type' => $this->yystack[$this->yyidx + -2]->minor))); }
2993
+ #line 2993 "/var/www/coffeescript-php/grammar.php"
2994
+ #line 272 "/var/www/coffeescript-php/grammar.y"
2995
+ function yy_r175(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor->add_else($this->yystack[$this->yyidx + 0]->minor); }
2996
+ #line 2996 "/var/www/coffeescript-php/grammar.php"
2997
+ #line 273 "/var/www/coffeescript-php/grammar.y"
2998
+ function yy_r176(){ $this->_retvalue = yy('If', $this->yystack[$this->yyidx + 0]->minor, yy_Block::wrap(array($this->yystack[$this->yyidx + -2]->minor)), array('type' => $this->yystack[$this->yyidx + -1]->minor, 'statement' => TRUE)); }
2999
+ #line 2999 "/var/www/coffeescript-php/grammar.php"
3000
+ #line 276 "/var/www/coffeescript-php/grammar.y"
3001
+ function yy_r178(){ $this->_retvalue = yy('Op', $this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + 0]->minor); }
3002
+ #line 3002 "/var/www/coffeescript-php/grammar.php"
3003
+ #line 277 "/var/www/coffeescript-php/grammar.y"
3004
+ function yy_r179(){ $this->_retvalue = yy('Op', $this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + 0]->minor); /* prec: 'UNARY'; */ }
3005
+ #line 3005 "/var/www/coffeescript-php/grammar.php"
3006
+ #line 282 "/var/www/coffeescript-php/grammar.y"
3007
+ function yy_r183(){ $this->_retvalue = yy('Op', $this->yystack[$this->yyidx + 0]->minor, $this->yystack[$this->yyidx + -1]->minor, NULL, TRUE); }
3008
+ #line 3008 "/var/www/coffeescript-php/grammar.php"
3009
+ #line 285 "/var/www/coffeescript-php/grammar.y"
3010
+ function yy_r185(){ $this->_retvalue = yy('Existence', $this->yystack[$this->yyidx + -1]->minor); }
3011
+ #line 3011 "/var/www/coffeescript-php/grammar.php"
3012
+ #line 287 "/var/www/coffeescript-php/grammar.y"
3013
+ function yy_r186(){ $this->_retvalue = yy('Op', $this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + -2]->minor, $this->yystack[$this->yyidx + 0]->minor); }
3014
+ #line 3014 "/var/www/coffeescript-php/grammar.php"
3015
+ #line 294 "/var/www/coffeescript-php/grammar.y"
3016
+ function yy_r192(){
3017
+ if ($this->yystack[$this->yyidx + -1]->minor{0} === '!') {
3018
+ $this->_retvalue = yy('Op', substr($this->yystack[$this->yyidx + -1]->minor, 1), $this->yystack[$this->yyidx + -2]->minor, $this->yystack[$this->yyidx + 0]->minor);
3019
+ $this->_retvalue = $this->_retvalue->invert();
3020
+ }
3021
+ else {
3022
+ $this->_retvalue = yy('Op', $this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + -2]->minor, $this->yystack[$this->yyidx + 0]->minor);
3023
+ }
3024
+ }
3025
+ #line 3025 "/var/www/coffeescript-php/grammar.php"
3026
+ #line 304 "/var/www/coffeescript-php/grammar.y"
3027
+ function yy_r193(){ $this->_retvalue = yy('Assign', $this->yystack[$this->yyidx + -2]->minor, $this->yystack[$this->yyidx + 0]->minor, $this->yystack[$this->yyidx + -1]->minor); }
3028
+ #line 3028 "/var/www/coffeescript-php/grammar.php"
3029
+ #line 305 "/var/www/coffeescript-php/grammar.y"
3030
+ function yy_r194(){ $this->_retvalue = yy('Assign', $this->yystack[$this->yyidx + -4]->minor, $this->yystack[$this->yyidx + -1]->minor, $this->yystack[$this->yyidx + -3]->minor); }
3031
+ #line 3031 "/var/www/coffeescript-php/grammar.php"
3032
+ #line 306 "/var/www/coffeescript-php/grammar.y"
3033
+ function yy_r195(){ $this->_retvalue = yy('Extends', $this->yystack[$this->yyidx + -2]->minor, $this->yystack[$this->yyidx + 0]->minor); }
3034
+ #line 3034 "/var/www/coffeescript-php/grammar.php"
3035
+
3036
+ /**
3037
+ * placeholder for the left hand side in a reduce operation.
3038
+ *
3039
+ * For a parser with a rule like this:
3040
+ * <pre>
3041
+ * rule(A) ::= B. { A = 1; }
3042
+ * </pre>
3043
+ *
3044
+ * The parser will translate to something like:
3045
+ *
3046
+ * <code>
3047
+ * function yy_r0(){$this->_retvalue = 1;}
3048
+ * </code>
3049
+ */
3050
+ private $_retvalue;
3051
+
3052
+ /**
3053
+ * Perform a reduce action and the shift that must immediately
3054
+ * follow the reduce.
3055
+ *
3056
+ * For a rule such as:
3057
+ *
3058
+ * <pre>
3059
+ * A ::= B blah C. { dosomething(); }
3060
+ * </pre>
3061
+ *
3062
+ * This function will first call the action, if any, ("dosomething();" in our
3063
+ * example), and then it will pop three states from the stack,
3064
+ * one for each entry on the right-hand side of the expression
3065
+ * (B, blah, and C in our example rule), and then push the result of the action
3066
+ * back on to the stack with the resulting state reduced to (as described in the .out
3067
+ * file)
3068
+ * @param int Number of the rule by which to reduce
3069
+ */
3070
+ function yy_reduce($yyruleno)
3071
+ {
3072
+ //int $yygoto; /* The next state */
3073
+ //int $yyact; /* The next action */
3074
+ //mixed $yygotominor; /* The LHS of the rule reduced */
3075
+ //yyStackEntry $yymsp; /* The top of the parser's stack */
3076
+ //int $yysize; /* Amount to pop the stack */
3077
+ $yymsp = $this->yystack[$this->yyidx];
3078
+ if (self::$yyTraceFILE && $yyruleno >= 0
3079
+ && $yyruleno < count(self::$yyRuleName)) {
3080
+ fprintf(self::$yyTraceFILE, "%sReduce (%d) [%s].\n",
3081
+ self::$yyTracePrompt, $yyruleno,
3082
+ self::$yyRuleName[$yyruleno]);
3083
+ }
3084
+
3085
+ $this->_retvalue = $yy_lefthand_side = null;
3086
+ if (array_key_exists($yyruleno, self::$yyReduceMap)) {
3087
+ // call the action
3088
+ $this->_retvalue = null;
3089
+ $this->{'yy_r' . self::$yyReduceMap[$yyruleno]}();
3090
+ $yy_lefthand_side = $this->_retvalue;
3091
+ }
3092
+ $yygoto = self::$yyRuleInfo[$yyruleno]['lhs'];
3093
+ $yysize = self::$yyRuleInfo[$yyruleno]['rhs'];
3094
+ $this->yyidx -= $yysize;
3095
+ for ($i = $yysize; $i; $i--) {
3096
+ // pop all of the right-hand side parameters
3097
+ array_pop($this->yystack);
3098
+ }
3099
+ $yyact = $this->yy_find_reduce_action($this->yystack[$this->yyidx]->stateno, $yygoto);
3100
+ if ($yyact < self::YYNSTATE) {
3101
+ /* If we are not debugging and the reduce action popped at least
3102
+ ** one element off the stack, then we can push the new element back
3103
+ ** onto the stack here, and skip the stack overflow test in yy_shift().
3104
+ ** That gives a significant speed improvement. */
3105
+ if (!self::$yyTraceFILE && $yysize) {
3106
+ $this->yyidx++;
3107
+ $x = new yyStackEntry;
3108
+ $x->stateno = $yyact;
3109
+ $x->major = $yygoto;
3110
+ $x->minor = $yy_lefthand_side;
3111
+ $this->yystack[$this->yyidx] = $x;
3112
+ } else {
3113
+ $this->yy_shift($yyact, $yygoto, $yy_lefthand_side);
3114
+ }
3115
+ } elseif ($yyact == self::YYNSTATE + self::YYNRULE + 1) {
3116
+ $this->yy_accept();
3117
+ }
3118
+ }
3119
+
3120
+ /**
3121
+ * The following code executes when the parse fails
3122
+ *
3123
+ * Code from %parse_fail is inserted here
3124
+ */
3125
+ function yy_parse_failed()
3126
+ {
3127
+ if (self::$yyTraceFILE) {
3128
+ fprintf(self::$yyTraceFILE, "%sFail!\n", self::$yyTracePrompt);
3129
+ }
3130
+ while ($this->yyidx >= 0) {
3131
+ $this->yy_pop_parser_stack();
3132
+ }
3133
+ /* Here code is inserted which will be executed whenever the
3134
+ ** parser fails */
3135
+ }
3136
+
3137
+ /**
3138
+ * The following code executes when a syntax error first occurs.
3139
+ *
3140
+ * %syntax_error code is inserted here
3141
+ * @param int The major type of the error token
3142
+ * @param mixed The minor type of the error token
3143
+ */
3144
+ function yy_syntax_error($yymajor, $TOKEN)
3145
+ {
3146
+ #line 4 "/var/www/coffeescript-php/grammar.y"
3147
+
3148
+ throw new SyntaxError(
3149
+ 'unexpected '.$this->tokenName($yymajor).' in '.self::$FILE.':'
3150
+ . (self::$LINE + 1).'.'
3151
+ );
3152
+ #line 3153 "/var/www/coffeescript-php/grammar.php"
3153
+ }
3154
+
3155
+ /**
3156
+ * The following is executed when the parser accepts
3157
+ *
3158
+ * %parse_accept code is inserted here
3159
+ */
3160
+ function yy_accept()
3161
+ {
3162
+ if (self::$yyTraceFILE) {
3163
+ fprintf(self::$yyTraceFILE, "%sAccept!\n", self::$yyTracePrompt);
3164
+ }
3165
+ while ($this->yyidx >= 0) {
3166
+ $stack = $this->yy_pop_parser_stack();
3167
+ }
3168
+ /* Here code is inserted which will be executed whenever the
3169
+ ** parser accepts */
3170
+ }
3171
+
3172
+ /**
3173
+ * The main parser program.
3174
+ *
3175
+ * The first argument is the major token number. The second is
3176
+ * the token value string as scanned from the input.
3177
+ *
3178
+ * @param int $yymajor the token number
3179
+ * @param mixed $yytokenvalue the token value
3180
+ * @param mixed ... any extra arguments that should be passed to handlers
3181
+ *
3182
+ * @return void
3183
+ */
3184
+ function parse($token)
3185
+ {
3186
+ list($yymajor, $yytokenvalue, ) = $token ? $token : array(0, 0);
3187
+ self::$LINE = isset($token[2]) ? $token[2] : -1;
3188
+
3189
+ // $yyact; /* The parser action. */
3190
+ // $yyendofinput; /* True if we are at the end of input */
3191
+ $yyerrorhit = 0; /* True if yymajor has invoked an error */
3192
+
3193
+ /* (re)initialize the parser, if necessary */
3194
+ if ($this->yyidx === null || $this->yyidx < 0) {
3195
+ /* if ($yymajor == 0) return; // not sure why this was here... */
3196
+ $this->yyidx = 0;
3197
+ $this->yyerrcnt = -1;
3198
+ $x = new yyStackEntry;
3199
+ $x->stateno = 0;
3200
+ $x->major = 0;
3201
+ $this->yystack = array();
3202
+ array_push($this->yystack, $x);
3203
+ }
3204
+ $yyendofinput = ($yymajor==0);
3205
+
3206
+ if (self::$yyTraceFILE) {
3207
+ fprintf(
3208
+ self::$yyTraceFILE,
3209
+ "%sInput %s\n",
3210
+ self::$yyTracePrompt,
3211
+ self::tokenName($yymajor)
3212
+ );
3213
+ }
3214
+
3215
+ do {
3216
+ $yyact = $this->yy_find_shift_action($yymajor);
3217
+ if ($yymajor < self::YYERRORSYMBOL
3218
+ && !$this->yy_is_expected_token($yymajor)
3219
+ ) {
3220
+ // force a syntax error
3221
+ $yyact = self::YY_ERROR_ACTION;
3222
+ }
3223
+ if ($yyact < self::YYNSTATE) {
3224
+ $this->yy_shift($yyact, $yymajor, $yytokenvalue);
3225
+ $this->yyerrcnt--;
3226
+ if ($yyendofinput && $this->yyidx >= 0) {
3227
+ $yymajor = 0;
3228
+ } else {
3229
+ $yymajor = self::YYNOCODE;
3230
+ }
3231
+ } elseif ($yyact < self::YYNSTATE + self::YYNRULE) {
3232
+ $this->yy_reduce($yyact - self::YYNSTATE);
3233
+ } elseif ($yyact == self::YY_ERROR_ACTION) {
3234
+ if (self::$yyTraceFILE) {
3235
+ fprintf(
3236
+ self::$yyTraceFILE,
3237
+ "%sSyntax Error!\n",
3238
+ self::$yyTracePrompt
3239
+ );
3240
+ }
3241
+ if (self::YYERRORSYMBOL) {
3242
+ /* A syntax error has occurred.
3243
+ ** The response to an error depends upon whether or not the
3244
+ ** grammar defines an error token "ERROR".
3245
+ **
3246
+ ** This is what we do if the grammar does define ERROR:
3247
+ **
3248
+ ** * Call the %syntax_error function.
3249
+ **
3250
+ ** * Begin popping the stack until we enter a state where
3251
+ ** it is legal to shift the error symbol, then shift
3252
+ ** the error symbol.
3253
+ **
3254
+ ** * Set the error count to three.
3255
+ **
3256
+ ** * Begin accepting and shifting new tokens. No new error
3257
+ ** processing will occur until three tokens have been
3258
+ ** shifted successfully.
3259
+ **
3260
+ */
3261
+ if ($this->yyerrcnt < 0) {
3262
+ $this->yy_syntax_error($yymajor, $yytokenvalue);
3263
+ }
3264
+ $yymx = $this->yystack[$this->yyidx]->major;
3265
+ if ($yymx == self::YYERRORSYMBOL || $yyerrorhit ) {
3266
+ if (self::$yyTraceFILE) {
3267
+ fprintf(
3268
+ self::$yyTraceFILE,
3269
+ "%sDiscard input token %s\n",
3270
+ self::$yyTracePrompt,
3271
+ self::tokenName($yymajor)
3272
+ );
3273
+ }
3274
+ $this->yy_destructor($yymajor, $yytokenvalue);
3275
+ $yymajor = self::YYNOCODE;
3276
+ } else {
3277
+ while ($this->yyidx >= 0
3278
+ && $yymx != self::YYERRORSYMBOL
3279
+ && ($yyact = $this->yy_find_shift_action(self::YYERRORSYMBOL)) >= self::YYNSTATE
3280
+ ) {
3281
+ $this->yy_pop_parser_stack();
3282
+ }
3283
+ if ($this->yyidx < 0 || $yymajor==0) {
3284
+ $this->yy_destructor($yymajor, $yytokenvalue);
3285
+ $this->yy_parse_failed();
3286
+ $yymajor = self::YYNOCODE;
3287
+ } elseif ($yymx != self::YYERRORSYMBOL) {
3288
+ $u2 = 0;
3289
+ $this->yy_shift($yyact, self::YYERRORSYMBOL, $u2);
3290
+ }
3291
+ }
3292
+ $this->yyerrcnt = 3;
3293
+ $yyerrorhit = 1;
3294
+ } else {
3295
+ /* YYERRORSYMBOL is not defined */
3296
+ /* This is what we do if the grammar does not define ERROR:
3297
+ **
3298
+ ** * Report an error message, and throw away the input token.
3299
+ **
3300
+ ** * If the input token is $, then fail the parse.
3301
+ **
3302
+ ** As before, subsequent error messages are suppressed until
3303
+ ** three input tokens have been successfully shifted.
3304
+ */
3305
+ if ($this->yyerrcnt <= 0) {
3306
+ $this->yy_syntax_error($yymajor, $yytokenvalue);
3307
+ }
3308
+ $this->yyerrcnt = 3;
3309
+ $this->yy_destructor($yymajor, $yytokenvalue);
3310
+ if ($yyendofinput) {
3311
+ $this->yy_parse_failed();
3312
+ }
3313
+ $yymajor = self::YYNOCODE;
3314
+ }
3315
+ } else {
3316
+ $this->yy_accept();
3317
+ $yymajor = self::YYNOCODE;
3318
+ }
3319
+ } while ($yymajor != self::YYNOCODE && $this->yyidx >= 0);
3320
+
3321
+ if ($token === NULL)
3322
+ {
3323
+ return $this->_retvalue;
3324
+ }
3325
+ }
3326
+ }