puppet 3.5.1-x86-mingw32 → 3.6.0.rc1-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of puppet might be problematic. Click here for more details.

Files changed (342) hide show
  1. data/CONTRIBUTING.md +5 -0
  2. data/Gemfile +17 -9
  3. data/README.md +1 -0
  4. data/conf/fileserver.conf +4 -3
  5. data/ext/README.environment +8 -0
  6. data/ext/build_defaults.yaml +1 -1
  7. data/ext/debian/control +2 -2
  8. data/ext/debian/puppet-common.dirs +4 -0
  9. data/ext/debian/rules +4 -0
  10. data/ext/emacs/puppet-mode-init.el +1 -1
  11. data/ext/emacs/puppet-mode.el +36 -17
  12. data/ext/redhat/client.init +3 -3
  13. data/ext/redhat/puppet.spec.erb +9 -0
  14. data/ext/systemd/puppet.service +3 -4
  15. data/ext/systemd/puppetmaster.service +1 -3
  16. data/install.rb +1 -1
  17. data/lib/puppet.rb +2 -1
  18. data/lib/puppet/agent.rb +1 -1
  19. data/lib/puppet/application.rb +17 -17
  20. data/lib/puppet/application/doc.rb +1 -1
  21. data/lib/puppet/configurer.rb +4 -1
  22. data/lib/puppet/configurer/downloader.rb +13 -12
  23. data/lib/puppet/configurer/plugin_handler.rb +3 -3
  24. data/lib/puppet/context.rb +6 -1
  25. data/lib/puppet/defaults.rb +82 -12
  26. data/lib/puppet/environments.rb +169 -13
  27. data/lib/puppet/external/nagios/grammar.ry +2 -0
  28. data/lib/puppet/external/nagios/parser.rb +28 -19
  29. data/lib/puppet/face/config.rb +19 -6
  30. data/lib/puppet/face/module/generate.rb +209 -7
  31. data/lib/puppet/face/module/install.rb +17 -16
  32. data/lib/puppet/face/module/list.rb +83 -82
  33. data/lib/puppet/face/module/search.rb +1 -1
  34. data/lib/puppet/face/module/upgrade.rb +10 -9
  35. data/lib/puppet/face/parser.rb +3 -2
  36. data/lib/puppet/face/plugin.rb +8 -4
  37. data/lib/puppet/file_bucket/dipper.rb +6 -3
  38. data/lib/puppet/file_bucket/file.rb +4 -2
  39. data/lib/puppet/file_serving/metadata.rb +1 -1
  40. data/lib/puppet/file_system/memory_file.rb +27 -1
  41. data/lib/puppet/file_system/memory_impl.rb +15 -1
  42. data/lib/puppet/forge.rb +148 -52
  43. data/lib/puppet/forge/cache.rb +5 -1
  44. data/lib/puppet/forge/errors.rb +10 -0
  45. data/lib/puppet/forge/repository.rb +61 -26
  46. data/lib/puppet/functions.rb +548 -0
  47. data/lib/puppet/functions/assert_type.rb +42 -0
  48. data/lib/puppet/functions/import.rb +7 -0
  49. data/lib/puppet/indirector/facts/facter.rb +1 -1
  50. data/lib/puppet/indirector/file_bucket_file/file.rb +3 -2
  51. data/lib/puppet/indirector/rest.rb +18 -0
  52. data/lib/puppet/loaders.rb +20 -0
  53. data/lib/puppet/module.rb +2 -2
  54. data/lib/puppet/module_tool.rb +40 -14
  55. data/lib/puppet/module_tool/applications.rb +0 -1
  56. data/lib/puppet/module_tool/applications/application.rb +35 -26
  57. data/lib/puppet/module_tool/applications/builder.rb +16 -6
  58. data/lib/puppet/module_tool/applications/checksummer.rb +25 -19
  59. data/lib/puppet/module_tool/applications/installer.rb +196 -35
  60. data/lib/puppet/module_tool/applications/searcher.rb +1 -0
  61. data/lib/puppet/module_tool/applications/uninstaller.rb +7 -1
  62. data/lib/puppet/module_tool/applications/unpacker.rb +57 -31
  63. data/lib/puppet/module_tool/applications/upgrader.rb +221 -65
  64. data/lib/puppet/module_tool/checksums.rb +5 -8
  65. data/lib/puppet/module_tool/errors/installer.rb +12 -44
  66. data/lib/puppet/module_tool/errors/shared.rb +84 -11
  67. data/lib/puppet/module_tool/errors/upgrader.rb +16 -45
  68. data/lib/puppet/module_tool/install_directory.rb +7 -6
  69. data/lib/puppet/module_tool/installed_modules.rb +92 -0
  70. data/lib/puppet/module_tool/local_tarball.rb +91 -0
  71. data/lib/puppet/module_tool/metadata.rb +119 -115
  72. data/lib/puppet/module_tool/modulefile.rb +9 -9
  73. data/lib/puppet/module_tool/shared_behaviors.rb +19 -7
  74. data/lib/puppet/module_tool/skeleton/templates/generator/README.md.erb +79 -0
  75. data/lib/puppet/module_tool/skeleton/templates/generator/Rakefile +18 -0
  76. data/lib/puppet/module_tool/skeleton/templates/generator/metadata.json.erb +1 -0
  77. data/lib/puppet/module_tool/skeleton/templates/generator/spec/classes/init_spec.rb.erb +7 -0
  78. data/lib/puppet/module_tool/tar.rb +3 -7
  79. data/lib/puppet/module_tool/tar/gnu.rb +21 -9
  80. data/lib/puppet/module_tool/tar/mini.rb +2 -8
  81. data/lib/puppet/network/http/api/v1.rb +1 -1
  82. data/lib/puppet/network/http/api/v2/authorization.rb +4 -2
  83. data/lib/puppet/network/http/issues.rb +1 -0
  84. data/lib/puppet/network/http_pool.rb +15 -6
  85. data/lib/puppet/node/environment.rb +91 -20
  86. data/lib/puppet/parser/ast/pops_bridge.rb +44 -3
  87. data/lib/puppet/parser/collector.rb +1 -1
  88. data/lib/puppet/parser/compiler.rb +50 -7
  89. data/lib/puppet/parser/functions.rb +6 -0
  90. data/lib/puppet/parser/functions/generate.rb +1 -1
  91. data/lib/puppet/parser/resource.rb +1 -1
  92. data/lib/puppet/pops.rb +22 -1
  93. data/lib/puppet/pops/adapters.rb +8 -1
  94. data/lib/puppet/pops/binder/bindings_composer.rb +1 -1
  95. data/lib/puppet/pops/binder/bindings_factory.rb +1 -1
  96. data/lib/puppet/pops/binder/config/binder_config_checker.rb +1 -1
  97. data/lib/puppet/pops/binder/producers.rb +2 -2
  98. data/lib/puppet/pops/evaluator/access_operator.rb +65 -25
  99. data/lib/puppet/pops/evaluator/callable_signature.rb +101 -0
  100. data/lib/puppet/pops/evaluator/closure.rb +57 -2
  101. data/lib/puppet/pops/evaluator/compare_operator.rb +1 -1
  102. data/lib/puppet/pops/evaluator/evaluator_impl.rb +9 -11
  103. data/lib/puppet/pops/evaluator/runtime3_support.rb +72 -21
  104. data/lib/puppet/pops/functions/dispatch.rb +71 -0
  105. data/lib/puppet/pops/functions/dispatcher.rb +237 -0
  106. data/lib/puppet/pops/functions/function.rb +77 -0
  107. data/lib/puppet/pops/issues.rb +12 -0
  108. data/lib/puppet/pops/loader/base_loader.rb +102 -0
  109. data/lib/puppet/pops/loader/dependency_loader.rb +60 -0
  110. data/lib/puppet/pops/loader/gem_support.rb +49 -0
  111. data/lib/puppet/pops/loader/loader.rb +180 -0
  112. data/lib/puppet/pops/loader/loader_paths.rb +137 -0
  113. data/lib/puppet/pops/loader/module_loaders.rb +242 -0
  114. data/lib/puppet/pops/loader/null_loader.rb +44 -0
  115. data/lib/puppet/pops/loader/ruby_function_instantiator.rb +34 -0
  116. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +109 -0
  117. data/lib/puppet/pops/loader/simple_environment_loader.rb +20 -0
  118. data/lib/puppet/pops/loader/static_loader.rb +69 -0
  119. data/lib/puppet/pops/loader/uri_helper.rb +22 -0
  120. data/lib/puppet/pops/loaders.rb +240 -0
  121. data/lib/puppet/pops/model/factory.rb +13 -5
  122. data/lib/puppet/pops/model/model_tree_dumper.rb +12 -4
  123. data/lib/puppet/pops/parser/egrammar.ra +31 -18
  124. data/lib/puppet/pops/parser/eparser.rb +1137 -1106
  125. data/lib/puppet/pops/parser/lexer2.rb +17 -16
  126. data/lib/puppet/pops/semantic_error.rb +17 -0
  127. data/lib/puppet/pops/types/type_calculator.rb +150 -15
  128. data/lib/puppet/pops/types/type_factory.rb +69 -0
  129. data/lib/puppet/pops/types/type_parser.rb +9 -0
  130. data/lib/puppet/pops/types/types.rb +65 -4
  131. data/lib/puppet/pops/validation/checker4_0.rb +1 -1
  132. data/lib/puppet/pops/validation/validator_factory_4_0.rb +1 -1
  133. data/lib/puppet/property/list.rb +1 -1
  134. data/lib/puppet/provider/augeas/augeas.rb +2 -2
  135. data/lib/puppet/provider/cron/crontab.rb +13 -2
  136. data/lib/puppet/provider/package.rb +24 -0
  137. data/lib/puppet/provider/package/apt.rb +6 -1
  138. data/lib/puppet/provider/package/gem.rb +8 -2
  139. data/lib/puppet/provider/package/msi.rb +0 -15
  140. data/lib/puppet/provider/package/openbsd.rb +0 -24
  141. data/lib/puppet/provider/package/rpm.rb +3 -29
  142. data/lib/puppet/provider/package/windows.rb +0 -15
  143. data/lib/puppet/provider/package/yum.rb +101 -24
  144. data/lib/puppet/provider/package/yumhelper.py +31 -1
  145. data/lib/puppet/provider/package/zypper.rb +10 -28
  146. data/lib/puppet/provider/service/debian.rb +1 -1
  147. data/lib/puppet/provider/service/init.rb +3 -0
  148. data/lib/puppet/provider/service/openbsd.rb +318 -0
  149. data/lib/puppet/provider/service/redhat.rb +6 -3
  150. data/lib/puppet/provider/service/systemd.rb +2 -2
  151. data/lib/puppet/provider/yumrepo/inifile.rb +115 -42
  152. data/lib/puppet/resource.rb +13 -9
  153. data/lib/puppet/resource/catalog.rb +12 -6
  154. data/lib/puppet/resource/type_collection.rb +3 -3
  155. data/lib/puppet/settings.rb +57 -36
  156. data/lib/puppet/settings/config_file.rb +5 -0
  157. data/lib/puppet/settings/environment_conf.rb +147 -0
  158. data/lib/puppet/settings/ttl_setting.rb +48 -0
  159. data/lib/puppet/ssl/certificate_authority.rb +2 -3
  160. data/lib/puppet/ssl/certificate_authority/autosign_command.rb +1 -1
  161. data/lib/puppet/ssl/certificate_request.rb +4 -4
  162. data/lib/puppet/ssl/validator/default_validator.rb +2 -2
  163. data/lib/puppet/status.rb +1 -1
  164. data/lib/puppet/test/test_helper.rb +1 -0
  165. data/lib/puppet/type/augeas.rb +13 -1
  166. data/lib/puppet/type/cron.rb +32 -18
  167. data/lib/puppet/type/file.rb +4 -2
  168. data/lib/puppet/type/file/checksum.rb +15 -5
  169. data/lib/puppet/type/file/content.rb +3 -1
  170. data/lib/puppet/type/file/source.rb +5 -5
  171. data/lib/puppet/type/package.rb +12 -17
  172. data/lib/puppet/type/resources.rb +3 -1
  173. data/lib/puppet/type/scheduled_task.rb +4 -5
  174. data/lib/puppet/type/service.rb +12 -2
  175. data/lib/puppet/type/user.rb +106 -0
  176. data/lib/puppet/type/yumrepo.rb +9 -1
  177. data/lib/puppet/util/checksums.rb +60 -1
  178. data/lib/puppet/util/diff.rb +3 -1
  179. data/lib/puppet/util/execution.rb +20 -16
  180. data/lib/puppet/util/feature.rb +3 -0
  181. data/lib/puppet/util/logging.rb +19 -12
  182. data/lib/puppet/util/rubygems.rb +10 -0
  183. data/lib/puppet/util/watched_file.rb +1 -1
  184. data/lib/puppet/util/windows/security.rb +5 -3
  185. data/lib/puppet/vendor/load_semantic.rb +1 -0
  186. data/lib/puppet/vendor/require_vendored.rb +2 -0
  187. data/lib/puppet/vendor/semantic/Gemfile +20 -0
  188. data/lib/puppet/vendor/semantic/Rakefile +69 -0
  189. data/lib/puppet/vendor/semantic/lib/semantic.rb +7 -0
  190. data/lib/puppet/vendor/semantic/lib/semantic/dependency.rb +181 -0
  191. data/lib/puppet/vendor/semantic/lib/semantic/dependency/graph.rb +60 -0
  192. data/lib/puppet/vendor/semantic/lib/semantic/dependency/graph_node.rb +117 -0
  193. data/lib/puppet/vendor/semantic/lib/semantic/dependency/module_release.rb +46 -0
  194. data/lib/puppet/vendor/semantic/lib/semantic/dependency/source.rb +25 -0
  195. data/lib/puppet/vendor/semantic/lib/semantic/dependency/unsatisfiable_graph.rb +31 -0
  196. data/lib/puppet/vendor/semantic/lib/semantic/version.rb +168 -0
  197. data/lib/puppet/vendor/semantic/lib/semantic/version_range.rb +424 -0
  198. data/lib/puppet/vendor/semantic/spec/spec_helper.rb +24 -0
  199. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/graph_node_spec.rb +141 -0
  200. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/graph_spec.rb +162 -0
  201. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/module_release_spec.rb +143 -0
  202. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/source_spec.rb +5 -0
  203. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/unsatisfiable_graph_spec.rb +44 -0
  204. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency_spec.rb +383 -0
  205. data/lib/puppet/vendor/semantic/spec/unit/semantic/version_range_spec.rb +307 -0
  206. data/lib/puppet/vendor/semantic/spec/unit/semantic/version_spec.rb +608 -0
  207. data/lib/puppet/version.rb +1 -1
  208. data/spec/fixtures/java.tgz +0 -0
  209. data/spec/fixtures/stdlib.tgz +0 -0
  210. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/usee/lib/puppet/functions/usee/callee.rb +5 -0
  211. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/user/lib/puppet/functions/user/caller.rb +5 -0
  212. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/user/metadata.json +9 -0
  213. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/lib/puppet/functions/modulea/rb_func_a.rb +5 -0
  214. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/lib/puppet/functions/rb_func_a.rb +5 -0
  215. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/manifests/init.pp +3 -0
  216. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/metadata.json +19 -0
  217. data/spec/fixtures/unit/pops/loaders/loaders/wo_metadata_module/modules/moduleb/lib/puppet/functions/moduleb/rb_func_b.rb +6 -0
  218. data/spec/fixtures/unit/pops/loaders/loaders/wo_metadata_module/modules/moduleb/manifests/init.pp +3 -0
  219. data/spec/fixtures/unit/provider/naginator/define_empty_param +6 -0
  220. data/spec/fixtures/unit/provider/service/systemd/list_unit_files_services +7 -0
  221. data/spec/fixtures/unit/type/user/authorized_keys +5 -0
  222. data/spec/integration/application/apply_spec.rb +1 -2
  223. data/spec/integration/configurer_spec.rb +2 -2
  224. data/spec/integration/faces/plugin_spec.rb +62 -0
  225. data/spec/integration/indirector/catalog/compiler_spec.rb +1 -1
  226. data/spec/integration/indirector/catalog/queue_spec.rb +1 -1
  227. data/spec/integration/node/environment_spec.rb +2 -2
  228. data/spec/integration/parser/future_compiler_spec.rb +96 -142
  229. data/spec/integration/parser/ruby_manifest_spec.rb +0 -5
  230. data/spec/integration/provider/cron/crontab_spec.rb +35 -0
  231. data/spec/integration/type/file_spec.rb +74 -72
  232. data/spec/integration/util/windows/security_spec.rb +17 -0
  233. data/spec/lib/matchers/resource.rb +45 -13
  234. data/spec/lib/puppet_spec/files.rb +18 -0
  235. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +56 -0
  236. data/spec/lib/puppet_spec/module_tool/stub_source.rb +133 -0
  237. data/spec/shared_contexts/checksums.rb +55 -0
  238. data/spec/unit/application/apply_spec.rb +10 -7
  239. data/spec/unit/application/doc_spec.rb +17 -10
  240. data/spec/unit/application/indirection_base_spec.rb +18 -10
  241. data/spec/unit/application/inspect_spec.rb +22 -20
  242. data/spec/unit/configurer/downloader_spec.rb +7 -6
  243. data/spec/unit/configurer/plugin_handler_spec.rb +5 -8
  244. data/spec/unit/configurer_spec.rb +1 -1
  245. data/spec/unit/context_spec.rb +23 -0
  246. data/spec/unit/environments_spec.rb +274 -16
  247. data/spec/unit/face/config_spec.rb +111 -11
  248. data/spec/unit/face/module/install_spec.rb +14 -85
  249. data/spec/unit/face/module/list_spec.rb +108 -62
  250. data/spec/unit/face/module/search_spec.rb +1 -1
  251. data/spec/unit/face/module/uninstall_spec.rb +21 -42
  252. data/spec/unit/face/parser_spec.rb +5 -2
  253. data/spec/unit/file_bucket/dipper_spec.rb +92 -86
  254. data/spec/unit/file_bucket/file_spec.rb +23 -75
  255. data/spec/unit/file_serving/metadata_spec.rb +74 -74
  256. data/spec/unit/forge/module_release_spec.rb +131 -0
  257. data/spec/unit/forge/repository_spec.rb +21 -20
  258. data/spec/unit/forge_spec.rb +99 -23
  259. data/spec/unit/functions/assert_type_spec.rb +59 -0
  260. data/spec/unit/functions4_spec.rb +671 -0
  261. data/spec/unit/indirector/catalog/static_compiler_spec.rb +2 -2
  262. data/spec/unit/indirector/facts/facter_spec.rb +9 -3
  263. data/spec/unit/indirector/file_bucket_file/file_spec.rb +156 -155
  264. data/spec/unit/indirector/rest_spec.rb +8 -0
  265. data/spec/unit/interface/face_collection_spec.rb +35 -23
  266. data/spec/unit/module_spec.rb +20 -8
  267. data/spec/unit/module_tool/applications/builder_spec.rb +40 -12
  268. data/spec/unit/module_tool/applications/checksummer_spec.rb +86 -105
  269. data/spec/unit/module_tool/applications/installer_spec.rb +293 -261
  270. data/spec/unit/module_tool/applications/searcher_spec.rb +1 -1
  271. data/spec/unit/module_tool/applications/uninstaller_spec.rb +90 -154
  272. data/spec/unit/module_tool/applications/unpacker_spec.rb +12 -12
  273. data/spec/unit/module_tool/applications/upgrader_spec.rb +286 -18
  274. data/spec/unit/module_tool/metadata_spec.rb +223 -14
  275. data/spec/unit/module_tool/tar/gnu_spec.rb +12 -9
  276. data/spec/unit/module_tool/tar/mini_spec.rb +1 -1
  277. data/spec/unit/module_tool/tar_spec.rb +4 -18
  278. data/spec/unit/module_tool_spec.rb +123 -27
  279. data/spec/unit/network/formats_spec.rb +2 -2
  280. data/spec/unit/network/http_pool_spec.rb +21 -0
  281. data/spec/unit/network/rights_spec.rb +10 -8
  282. data/spec/unit/node/environment_spec.rb +27 -2
  283. data/spec/unit/parser/collector_spec.rb +1 -1
  284. data/spec/unit/parser/compiler_spec.rb +1 -1
  285. data/spec/unit/parser/functions/generate_spec.rb +4 -0
  286. data/spec/unit/pops/evaluator/access_ops_spec.rb +50 -11
  287. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +25 -0
  288. data/spec/unit/pops/loaders/dependency_loader_spec.rb +44 -0
  289. data/spec/unit/pops/loaders/loader_paths_spec.rb +66 -0
  290. data/spec/unit/pops/loaders/loaders_spec.rb +105 -0
  291. data/spec/unit/pops/loaders/module_loaders_spec.rb +119 -0
  292. data/spec/unit/pops/loaders/static_loader_spec.rb +46 -0
  293. data/spec/unit/pops/types/type_calculator_spec.rb +145 -10
  294. data/spec/unit/pops/types/type_factory_spec.rb +101 -0
  295. data/spec/unit/pops/types/type_parser_spec.rb +22 -0
  296. data/spec/unit/property/list_spec.rb +9 -1
  297. data/spec/unit/provider/augeas/augeas_spec.rb +58 -11
  298. data/spec/unit/provider/cron/crontab_spec.rb +1 -0
  299. data/spec/unit/provider/cron/parsed_spec.rb +15 -0
  300. data/spec/unit/provider/naginator_spec.rb +14 -0
  301. data/spec/unit/provider/package/apt_spec.rb +78 -64
  302. data/spec/unit/provider/package/gem_spec.rb +15 -0
  303. data/spec/unit/provider/package/rpm_spec.rb +6 -6
  304. data/spec/unit/provider/package/windows_spec.rb +1 -1
  305. data/spec/unit/provider/package/yum_spec.rb +199 -104
  306. data/spec/unit/provider/package/zypper_spec.rb +41 -15
  307. data/spec/unit/provider/service/openbsd_spec.rb +129 -22
  308. data/spec/unit/provider/service/redhat_spec.rb +18 -4
  309. data/spec/unit/provider/service/systemd_spec.rb +5 -9
  310. data/spec/unit/provider/service/upstart_spec.rb +1 -1
  311. data/spec/unit/provider/user/directoryservice_spec.rb +10 -0
  312. data/spec/unit/provider/yumrepo/inifile_spec.rb +171 -15
  313. data/spec/unit/resource/catalog_spec.rb +20 -104
  314. data/spec/unit/resource/type_collection_spec.rb +10 -9
  315. data/spec/unit/settings/config_file_spec.rb +29 -6
  316. data/spec/unit/settings/environment_conf_spec.rb +51 -0
  317. data/spec/unit/settings_spec.rb +97 -12
  318. data/spec/unit/ssl/certificate_authority_spec.rb +2 -0
  319. data/spec/unit/type/augeas_spec.rb +1 -1
  320. data/spec/unit/type/cron_spec.rb +6 -7
  321. data/spec/unit/type/file/checksum_spec.rb +6 -0
  322. data/spec/unit/type/file/content_spec.rb +277 -207
  323. data/spec/unit/type/file_spec.rb +9 -7
  324. data/spec/unit/type/user_spec.rb +106 -18
  325. data/spec/unit/type/yumrepo_spec.rb +8 -0
  326. data/spec/unit/util/checksums_spec.rb +12 -5
  327. data/spec/unit/util/diff_spec.rb +8 -0
  328. data/spec/unit/util/execution_spec.rb +4 -4
  329. data/spec/unit/util/feature_spec.rb +2 -0
  330. data/spec/unit/util/logging_spec.rb +14 -4
  331. data/spec/unit/util/rdoc/parser_spec.rb +5 -4
  332. data/spec/unit/util/rubygems_spec.rb +14 -0
  333. data/tasks/parallel.rake +2 -2
  334. metadata +154 -21
  335. checksums.yaml +0 -7
  336. data/lib/puppet/module_tool/applications/generator.rb +0 -142
  337. data/lib/puppet/module_tool/skeleton.rb +0 -37
  338. data/lib/puppet/module_tool/skeleton/templates/generator/Modulefile.erb +0 -11
  339. data/lib/puppet/module_tool/skeleton/templates/generator/README.erb +0 -16
  340. data/lib/puppet/module_tool/tar/solaris.rb +0 -5
  341. data/spec/fixtures/unit/provider/service/systemd/list_units_services +0 -17
  342. data/spec/unit/module_tool/tar/solaris_spec.rb +0 -22
@@ -461,12 +461,16 @@ class Puppet::Pops::Model::Factory
461
461
  current.respond_to?(meth, include_all) || super
462
462
  end
463
463
 
464
+ def self.record_position(o, start_locatable, end_locateable)
465
+ new(o).record_position(start_locatable, end_locateable)
466
+ end
467
+
464
468
  # Records the position (start -> end) and computes the resulting length.
465
469
  #
466
470
  def record_position(start_locatable, end_locatable)
467
471
  from = start_locatable.is_a?(Puppet::Pops::Model::Factory) ? start_locatable.current : start_locatable
468
472
  to = end_locatable.is_a?(Puppet::Pops::Model::Factory) ? end_locatable.current : end_locatable
469
- to = from if to.nil?
473
+ to = from if to.nil? || to.offset.nil?
470
474
  o = current
471
475
  # record information directly in the Model::Positioned object
472
476
  o.offset = from.offset
@@ -703,9 +707,9 @@ class Puppet::Pops::Model::Factory
703
707
  o.nil? || o.is_a?(Puppet::Pops::Model::Nop)
704
708
  end
705
709
 
706
- STATEMENT_CALLS = {
707
- 'require' => true,
708
- 'realize' => true,
710
+ STATEMENT_CALLS = {
711
+ 'require' => true,
712
+ 'realize' => true,
709
713
  'include' => true,
710
714
  'contain' => true,
711
715
 
@@ -716,6 +720,7 @@ class Puppet::Pops::Model::Factory
716
720
  'error' => true,
717
721
 
718
722
  'fail' => true,
723
+ 'import' => true # discontinued, but transform it to make it call error reporting function
719
724
  }
720
725
  # Returns true if the given name is a "statement keyword" (require, include, contain,
721
726
  # error, notice, info, debug
@@ -732,7 +737,10 @@ class Puppet::Pops::Model::Factory
732
737
  expr = expr.current if expr.is_a?(Puppet::Pops::Model::Factory)
733
738
  name = memo[-1]
734
739
  if name.is_a?(Model::QualifiedName) && STATEMENT_CALLS[name.value]
735
- memo[-1] = Puppet::Pops::Model::Factory.CALL_NAMED(name, false, expr.is_a?(Array) ? expr : [expr])
740
+ the_call = Puppet::Pops::Model::Factory.CALL_NAMED(name, false, expr.is_a?(Array) ? expr : [expr])
741
+ # last positioned is last arg if there are several
742
+ record_position(the_call, name, expr.is_a?(Array) ? expr[-1] : expr)
743
+ memo[-1] = the_call
736
744
  if expr.is_a?(Model::CallNamedFunctionExpression)
737
745
  # Patch statement function call to expression style
738
746
  # This is needed because it is first parsed as a "statement" and the requirement changes as it becomes
@@ -219,8 +219,9 @@ class Puppet::Pops::Model::ModelTreeDumper < Puppet::Pops::Model::TreeDumper
219
219
  result
220
220
  end
221
221
 
222
- def dump_ResourceTypeDefinition o
223
- result = ["define", o.name]
222
+ def dump_NamedDefinition o
223
+ # the nil must be replaced with a string
224
+ result = [nil, o.name]
224
225
  result << ["parameters"] + o.parameters.collect {|p| do_dump(p) } if o.parameters.size() > 0
225
226
  if o.body
226
227
  result << do_dump(o.body)
@@ -230,6 +231,12 @@ class Puppet::Pops::Model::ModelTreeDumper < Puppet::Pops::Model::TreeDumper
230
231
  result
231
232
  end
232
233
 
234
+ def dump_ResourceTypeDefinition o
235
+ result = dump_NamedDefinition(o)
236
+ result[0] = 'define'
237
+ result
238
+ end
239
+
233
240
  def dump_ResourceOverrideExpression o
234
241
  result = ["override", do_dump(o.resources), :indent]
235
242
  o.operations.each do |p|
@@ -241,10 +248,11 @@ class Puppet::Pops::Model::ModelTreeDumper < Puppet::Pops::Model::TreeDumper
241
248
 
242
249
  # Produces parameters as name, or (= name value)
243
250
  def dump_Parameter o
251
+ name_part = "#{o.name}"
244
252
  if o.value
245
- ["=", o.name, do_dump(o.value)]
253
+ ["=", name_part, do_dump(o.value)]
246
254
  else
247
- o.name
255
+ name_part
248
256
  end
249
257
  end
250
258
 
@@ -18,6 +18,7 @@ token LAMBDA SELBRACE
18
18
  token NUMBER
19
19
  token HEREDOC SUBLOCATE
20
20
  token RENDER_STRING RENDER_EXPR EPP_START EPP_END EPP_END_TRIM
21
+ token FUNCTION
21
22
  token LOW
22
23
 
23
24
  prechigh
@@ -150,8 +151,9 @@ primary_expression
150
151
  | hostclass_expression
151
152
  | node_definition_expression
152
153
  | epp_render_expression
154
+ | function_definition
153
155
 
154
- # Aleways have the same value
156
+ # Allways have the same value
155
157
  literal_expression
156
158
  : array
157
159
  | boolean
@@ -228,8 +230,8 @@ lambda_rest
228
230
 
229
231
  # Produces Array<Model::Parameter>
230
232
  lambda_parameter_list
231
- : PIPE PIPE { result = [] }
232
- | PIPE parameters endcomma PIPE { result = val[1] }
233
+ : PIPE PIPE { result = [] }
234
+ | PIPE parameters endcomma PIPE { result = val[1] }
233
235
 
234
236
  #---CONDITIONALS
235
237
  #
@@ -589,9 +591,20 @@ node_definition_expression
589
591
  : nil
590
592
  | INHERITS hostname { result = val[1] }
591
593
 
594
+ #---FUNCTION DEFINITION
595
+ #
596
+ function_definition
597
+ : FUNCTION { result = Factory.QNAME(val[0][:value]) ; loc result, val[0] }
598
+ # For now the function word will just be reserved, in the future it will
599
+ # produce a function definition
600
+ # FUNCTION classname parameter_list LBRACE opt_statements RBRACE {
601
+ # result = add_definition(Factory.FUNCTION(val[1][:value], val[2], val[4]))
602
+ # loc result, val[0], val[5]
603
+ # }
604
+
592
605
  #---NAMES AND PARAMETERS COMMON TO SEVERAL RULES
593
606
  # Produces String
594
- #
607
+ # TODO: The error that "class" is not a valid classname is bad - classname rule is also used for other things
595
608
  classname
596
609
  : NAME { result = val[0] }
597
610
  | CLASS { error val[0], "'class' is not a valid classname" }
@@ -714,20 +727,20 @@ endsemi
714
727
  | SEMIC
715
728
 
716
729
  keyword
717
- : AND
718
- | CASE
719
- | CLASS
720
- | DEFAULT
721
- | DEFINE
722
- | ELSE
723
- | ELSIF
724
- | IF
725
- | IN
726
- | INHERITS
727
- | NODE
728
- | OR
729
- | UNDEF
730
- | UNLESS
730
+ : AND
731
+ | CASE
732
+ | CLASS
733
+ | DEFAULT
734
+ | DEFINE
735
+ | ELSE
736
+ | ELSIF
737
+ | IF
738
+ | IN
739
+ | INHERITS
740
+ | NODE
741
+ | OR
742
+ | UNDEF
743
+ | UNLESS
731
744
 
732
745
  nil
733
746
  : { result = nil}
@@ -20,7 +20,7 @@ module Puppet
20
20
  module Parser
21
21
  class Parser < Racc::Parser
22
22
 
23
- module_eval(<<'...end egrammar.ra/module_eval...', 'egrammar.ra', 748)
23
+ module_eval(<<'...end egrammar.ra/module_eval...', 'egrammar.ra', 761)
24
24
 
25
25
  # Make emacs happy
26
26
  # Local Variables:
@@ -30,198 +30,205 @@ module_eval(<<'...end egrammar.ra/module_eval...', 'egrammar.ra', 748)
30
30
  ##### State transition tables begin ###
31
31
 
32
32
  clist = [
33
- '57,59,275,-130,51,265,53,-216,79,-132,-225,126,313,126,79,125,265,125',
34
- '363,298,224,224,102,14,106,353,101,360,102,41,106,48,101,50,45,235,49',
35
- '69,65,238,43,68,46,47,276,-130,66,13,105,-216,67,-132,-225,12,105,258',
36
- '57,59,260,261,51,70,53,395,240,224,247,42,245,248,80,64,60,244,62,63',
37
- '61,328,243,14,231,264,52,242,126,41,265,48,125,50,45,126,49,69,65,125',
38
- '43,68,46,47,221,316,66,13,57,59,67,235,126,12,57,59,125,331,51,126,53',
39
- '70,79,125,348,272,347,42,348,333,347,64,60,220,62,63,102,14,106,335',
40
- '101,74,52,41,297,48,135,50,45,133,49,69,65,72,43,68,46,47,296,122,66',
41
- '13,105,274,67,57,59,12,114,70,57,59,250,249,51,70,53,393,340,341,60',
42
- '42,342,224,79,64,60,126,62,63,211,125,345,14,241,349,52,351,102,41,106',
43
- '48,101,50,45,290,49,69,65,187,43,68,46,47,272,274,66,13,272,359,67,296',
44
- '289,12,105,296,57,59,74,154,51,70,53,391,151,149,370,42,312,81,82,64',
45
- '60,288,62,63,80,372,274,14,274,127,52,272,375,41,114,48,115,50,45,315',
46
- '49,69,65,114,43,68,46,47,379,351,66,13,381,382,67,383,384,12,57,59,385',
47
- '111,51,387,53,70,75,77,76,78,388,42,389,319,74,64,60,71,62,63,396,14',
48
- '397,57,59,398,52,41,399,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,',
49
- ',12,57,59,,,51,,53,70,,135,,,133,42,,,,64,60,,62,63,,14,,57,59,,52,41',
50
- ',48,70,50,108,,49,69,65,,43,68,,60,,,66,13,,,67,,,12,57,59,,,51,,53',
51
- '70,,135,,,133,42,,,,64,60,,62,63,,14,,57,59,,52,41,,48,70,50,108,,49',
52
- '69,65,,43,68,,60,,,66,13,,,67,,,12,57,59,,,51,,53,70,79,135,,,133,42',
53
- ',,,64,60,,62,63,102,14,106,,101,,52,41,,48,70,50,108,,49,69,65,,43,68',
54
- ',60,,,66,13,105,,67,,,12,57,59,,,51,,53,70,79,,,,,42,,,80,64,60,,62',
55
- '63,102,14,106,,101,,52,41,,48,,50,45,,49,69,65,,43,68,46,47,,,66,13',
56
- '105,,67,,,12,57,59,,,51,,53,70,79,81,82,,,42,,,80,64,60,,62,63,102,14',
57
- '106,,101,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,105,,67,,,12',
58
- '57,59,,,51,,53,70,79,81,82,,,42,,,80,64,60,,62,63,102,14,106,,101,,52',
59
- '41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,105,,67,,,12,57,59,,,51,,53',
60
- '70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68',
61
- ',,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,',
62
- ',,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51',
63
- ',53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,',
64
- '43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63',
65
- ',14,,,,,52,41,,48,,50,121,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59',
66
- ',,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69',
67
- '65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62',
68
- '63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57',
69
- '59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49',
70
- '69,65,,43,68,,,,,66,13,,,67,,,12,,,57,59,,,51,70,53,294,,,,42,,,,64',
71
- '60,,62,63,,,,14,,,52,,,41,,48,,50,45,,49,69,65,,43,68,46,47,,,66,13',
72
- ',,67,,,12,57,59,,,51,138,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41',
73
- ',48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,140,53,70',
74
- ',,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,',
75
- ',,,66,13,,,67,,,12,,,57,59,,,51,70,53,143,,,,42,,,,64,60,,62,63,,,,14',
76
- ',,52,,,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51',
77
- ',53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,',
78
- '43,68,,,,,66,13,,,67,,,12,,,57,59,,,51,70,53,300,,,,42,,,,64,60,,62',
79
- '63,,,,14,,,52,,,41,,48,,50,45,,49,69,65,,43,68,46,47,,,66,13,,,67,,',
80
- '12,,,57,59,,,51,70,53,143,,,,42,,,,64,60,,62,63,,,,14,,,52,,,41,,48',
81
- ',50,45,,49,69,65,,43,68,46,47,,,66,13,,,67,,,12,57,59,,,51,,153,70,',
82
- ',,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,',
83
- ',,66,13,,,67,,,12,,,57,59,,,51,70,53,369,,,,42,,,,64,60,,62,63,,,,14',
84
- ',,52,,,41,,48,,50,45,,49,69,65,,43,68,46,47,,,66,13,,,67,,,12,57,59',
85
- ',,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,45,,49,69',
86
- '65,,43,68,46,47,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60',
87
- ',62,63,,14,,,,,52,41,,48,,50,45,,49,69,65,,43,68,46,47,,,66,13,,,67',
88
- ',,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50',
89
- '45,,49,69,65,,43,68,46,47,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42',
90
- ',,,64,60,,62,63,,14,,,,,52,41,,48,,50,45,,49,69,65,,43,68,46,47,,,66',
91
- '13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41',
92
- ',48,,50,45,,49,69,65,,43,68,46,47,,,66,13,,,67,,,12,57,59,,,51,,53,70',
93
- ',,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,45,,49,69,65,,43,68,46',
94
- '47,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,',
95
- ',,,52,41,,48,,50,45,,49,69,65,,43,68,46,47,,,66,13,,,67,,,12,57,59,',
96
- ',51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69',
97
- '65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62',
98
- '63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57',
99
- '59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49',
100
- '69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60',
101
- ',62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12',
102
- '57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108',
103
- ',49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64',
104
- '60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67',
105
- ',,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50',
106
- '108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,',
107
- ',,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13',
108
- ',,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48',
109
- ',50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,',
110
- '42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66',
111
- '13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41',
112
- ',48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,',
113
- ',,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,',
114
- ',,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,',
115
- '52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53',
116
- '70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68',
117
- ',,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,',
118
- ',,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51',
119
- ',53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,',
120
- '43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63',
121
- ',14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59',
122
- ',,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69',
123
- '65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62',
124
- '63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57',
125
- '59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49',
126
- '69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60',
127
- ',62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12',
128
- '57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108',
129
- ',49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64',
130
- '60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67',
131
- ',,12,,,57,59,,,51,70,53,354,,,,42,,,186,64,60,,62,63,,,,14,,,52,,,41',
132
- ',48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,',
133
- ',,,,42,,,,64,60,,62,63,,14,,,,,52,189,206,200,207,50,201,209,202,198',
134
- '196,,191,204,,,,,66,13,210,205,203,,,12,57,59,,,51,,53,70,,,,,208,190',
135
- ',,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13',
136
- ',,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48',
137
- ',50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,',
138
- '42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66',
139
- '13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41',
140
- ',48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,',
141
- ',,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,',
142
- ',,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,',
143
- '52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,,,57,59,,,51',
144
- '70,53,302,,,,42,,,,64,60,,62,63,,,,14,,,52,,,41,,48,,50,45,,49,69,65',
145
- ',43,68,46,47,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62',
146
- '63,,14,218,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12',
147
- '57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108',
148
- ',49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64',
149
- '60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67',
150
- ',,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,226,,,,52,41,,48',
151
- ',50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,',
152
- '42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,45,,49,69,65,,43,68,46,47,',
153
- ',66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52',
154
- '41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,322,53',
155
- '70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68',
156
- ',,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,',
157
- ',,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51',
158
- ',53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,',
159
- '43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63',
160
- ',14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59',
161
- ',,51,321,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49',
162
- '69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60',
163
- ',62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13,,,67,,,12',
164
- ',,57,59,,,51,70,53,324,,,,42,,,,64,60,,62,63,,,,14,,,52,,,41,,48,,50',
165
- '108,,49,69,65,,43,68,,,,,66,13,,,67,,,12,57,59,,,51,,53,70,,,,,,42,',
166
- ',,64,60,,62,63,,14,,,,,52,41,,48,,50,108,,49,69,65,,43,68,,,,,66,13',
167
- ',,67,,,12,57,59,,,51,,53,70,,,,,,42,,,,64,60,,62,63,,14,,,,,52,189,206',
168
- '200,207,50,201,209,202,198,196,,191,204,,,,,66,13,210,205,203,,,12,',
169
- ',,,,,,70,,,,,208,190,,,,64,60,,62,63,79,,,,,,52,,,98,99,100,95,90,102',
170
- ',106,,101,,,91,93,92,94,,,,,,,,,,,,,,,,105,,,,97,96,,,83,84,86,85,88',
171
- '89,,81,82,,,79,,103,80,,246,,,,98,99,100,95,90,102,,106,,101,,87,91',
172
- '93,92,94,,,,,,,,,,,,,,,,105,,,,97,96,,,83,84,86,85,88,89,79,81,82,,',
173
- '246,,,80,98,99,100,95,90,102,,106,,101,,,91,93,92,94,87,,,,,,,,,,,,',
174
- ',,105,,,,97,96,,,83,84,86,85,88,89,,81,82,,,79,,230,80,,,,,,98,99,100',
175
- '95,90,102,,106,,101,,87,91,93,92,94,,,,,,,,,,,,,,,,105,,,,97,96,,,83',
176
- '84,86,85,88,89,79,81,82,,,,,,80,98,99,100,95,90,102,,106,,101,,,91,93',
177
- '92,94,87,,,,,,,,,,,,,,,105,,,,97,96,,,83,84,86,85,88,89,,81,82,,,79',
178
- ',229,80,,,,,,98,99,100,95,90,102,,106,,101,,87,91,93,92,94,,,,,,,,,',
179
- ',,,,,,105,,,,97,96,,,83,84,86,85,88,89,,81,82,,,79,,228,80,,,,,,98,99',
180
- '100,95,90,102,,106,,101,,87,91,93,92,94,,,,,,,,,,,,,,,,105,,,,97,96',
181
- ',,83,84,86,85,88,89,,81,82,,,79,,227,80,,,,,,98,99,100,95,90,102,,106',
182
- ',101,,87,91,93,92,94,,,,,,,,,,,,,,,,105,,,,97,96,,,83,84,86,85,88,89',
183
- '79,81,82,,,,,,80,98,99,100,95,90,102,,106,,101,,216,91,93,92,94,87,',
184
- ',,,,,,,,,,,,,105,,,,97,96,,,83,84,86,85,88,89,79,81,82,,,,,,80,98,99',
185
- '100,95,90,102,,106,,101,,,91,93,92,94,87,,,,,,,,,,,,,,,105,,,,97,96',
186
- ',,83,84,86,85,88,89,79,81,82,,,,,,80,98,99,100,95,90,102,,106,,101,260',
187
- '261,91,93,92,94,87,,,,,,,,,,,,,,,105,,,,97,96,,,83,84,86,85,88,89,79',
188
- '81,82,,,,,,80,98,99,100,95,90,102,,106,,101,,,91,93,92,94,87,,,,,,,',
189
- ',,,,,,,105,,,,97,96,,,83,84,86,85,88,89,79,81,82,,,,,,80,98,99,100,95',
190
- '90,102,,106,,101,,,91,93,92,94,87,,,,,,,,,,,,,,,105,,,,97,96,,,83,84',
191
- '86,85,88,89,79,81,82,,,,,,80,98,99,100,95,90,102,,106,,101,,,91,93,92',
192
- '94,87,,,,,,,,,,,,,,,105,,,,97,96,,,83,84,86,85,88,89,79,81,82,,,,,,80',
193
- '98,99,100,95,90,102,,106,,101,,,91,93,92,94,87,,,,,,,,,,,,,,,105,,,',
194
- '97,96,,,83,84,86,85,88,89,79,81,82,,,,,,80,98,99,100,95,90,102,,106',
195
- ',101,79,,91,93,92,94,87,,,,,,,,102,,106,,101,,,105,,,,97,96,,,83,84',
196
- '86,85,88,89,,81,82,,,105,,,80,,79,,,,,86,85,,,,81,82,,,102,87,106,80',
197
- '101,,,,,,,,,,,,,,,,87,,,,,,105,,,,,,,,,,86,85,,,79,81,82,,,,,,80,98',
198
- '99,100,95,90,102,,106,,101,,,91,93,92,94,87,,,,,,,,,,,,,,,105,,,,97',
199
- '96,,,83,84,86,85,88,89,79,81,82,,,,,,80,98,99,100,95,90,102,270,106',
200
- ',101,,,91,93,92,94,87,,,,,,,,,,,,,,,105,,,,97,96,,,83,84,86,85,88,89',
201
- ',81,82,,,79,,103,80,,,,,,98,99,100,95,90,102,,106,,101,79,87,91,93,92',
202
- '94,,,,,,,,,102,,106,,101,,,105,,,,97,96,,,83,84,86,85,88,89,,81,82,',
203
- ',105,,,80,,79,,,83,84,86,85,,,,81,82,,,102,87,106,80,101,79,,,,,,,,',
204
- ',,,,,102,87,106,,101,,,105,,,,,,,,83,84,86,85,,,,81,82,,,105,,,80,,79',
205
- ',,83,84,86,85,88,89,,81,82,,,102,87,106,80,101,,,,,,,79,,,,,,,,,87,',
206
- ',,90,102,105,106,,101,,79,91,,83,84,86,85,88,89,,81,82,,90,102,,106',
207
- '80,101,,105,91,,,,79,,,83,84,86,85,88,89,87,81,82,,90,102,105,106,80',
208
- '101,,,91,,83,84,86,85,88,89,,81,82,,,87,,,80,,,105,,,,,79,,,83,84,86',
209
- '85,88,89,87,81,82,,90,102,,106,80,101,,,91,,,,,,,,,,,,,87,,,,,,105,',
210
- ',,,79,,,83,84,86,85,88,89,,81,82,95,90,102,,106,80,101,,,91,93,92,94',
211
- ',,,,,,,,,87,,,,,,105,,,,,79,,,83,84,86,85,88,89,,81,82,95,90,102,,106',
212
- '80,101,,,91,93,92,94,,,,,,,,,,87,,,,,,105,,,,,96,,,83,84,86,85,88,89',
213
- '79,81,82,,,,,,80,98,99,100,95,90,102,,106,,101,,,91,93,92,94,87,,,,',
214
- ',,,,,,,,,,105,,,,97,96,,,83,84,86,85,88,89,79,81,82,,,266,,,80,98,99',
215
- '100,95,90,102,,106,,101,,,91,93,92,94,87,,,,,,,,,,,,,,,105,,,,97,96',
216
- ',,83,84,86,85,88,89,79,81,82,,,,,,80,98,99,100,95,90,102,,106,,101,',
217
- ',91,93,92,94,87,,,,,,,,,,,,,,,105,,,,97,96,,,83,84,86,85,88,89,79,81',
218
- '82,,,,,,80,98,99,100,95,90,102,,106,,101,,,91,93,92,94,87,,,,,,,,,,',
219
- ',,,,105,,,,97,96,,,83,84,86,85,88,89,,81,82,,,,,,80,284,206,283,207',
220
- ',281,209,285,279,278,,280,282,,,,87,,,210,205,286,284,206,283,207,,281',
221
- '209,285,279,278,,280,282,,,208,287,,,210,205,286,284,206,283,207,,281',
222
- '209,285,279,278,,280,282,,,208,287,,,210,205,286,,,,,,,,,,,,,,,,208',
223
- '287' ]
224
- racc_action_table = arr = ::Array.new(6233, nil)
33
+ '59,61,277,-131,53,240,55,-218,267,-133,-227,362,315,226,247,267,59,61',
34
+ '237,246,226,226,300,14,355,59,61,245,233,42,242,49,244,52,46,128,50',
35
+ '71,67,127,44,70,47,48,278,-131,68,13,260,-218,69,-133,-227,12,137,223',
36
+ '128,135,59,61,127,72,53,137,55,397,135,43,266,262,263,66,62,267,64,65',
37
+ '63,72,124,51,128,14,249,54,127,250,72,42,62,49,330,52,46,318,50,71,67',
38
+ '62,44,70,47,48,237,128,68,13,128,127,69,128,127,12,333,127,128,274,59',
39
+ '61,127,72,53,365,55,335,81,43,350,222,349,66,62,337,64,65,350,76,349',
40
+ '51,104,14,108,54,103,59,61,42,299,49,298,52,46,276,50,71,67,74,44,70',
41
+ '47,48,252,251,68,13,107,116,69,342,343,12,77,79,78,80,59,61,344,72,53',
42
+ '226,55,395,81,43,213,347,82,66,62,243,64,65,351,353,292,51,104,14,108',
43
+ '54,103,189,274,42,276,49,274,52,46,361,50,71,67,298,44,70,47,48,291',
44
+ '298,68,13,107,76,69,156,153,12,151,372,314,290,59,61,374,72,53,276,55',
45
+ '393,81,43,276,129,82,66,62,274,64,65,377,116,117,51,104,14,108,54,103',
46
+ '317,116,42,381,49,353,52,46,383,50,71,67,384,44,70,47,48,385,386,68',
47
+ '13,107,387,69,113,389,12,390,391,321,76,59,61,73,72,53,398,55,399,81',
48
+ '43,400,401,,66,62,,64,65,,,,51,104,14,108,54,103,,,42,,49,,52,110,,50',
49
+ '71,67,,44,70,,,,,68,13,107,,69,,,12,,,,,59,61,,72,53,,55,,81,43,,,,66',
50
+ '62,,64,65,,,,51,104,14,108,54,103,,,42,,49,,52,110,,50,71,67,,44,70',
51
+ ',,,,68,13,107,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,',
52
+ '51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,',
53
+ ',,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52',
54
+ '110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,',
55
+ ',,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,46,,50,71,67,,44,70,47,48',
56
+ ',,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14',
57
+ ',54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61',
58
+ ',72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50',
59
+ '71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62',
60
+ ',64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,',
61
+ '69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42',
62
+ ',49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55',
63
+ ',,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70',
64
+ ',,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51',
65
+ ',14,,54,,,,42,,49,,52,123,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59',
66
+ '61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,',
67
+ '50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66',
68
+ '62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13',
69
+ ',,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,',
70
+ ',42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53',
71
+ ',55,296,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,46,,50,71,67',
72
+ ',44,70,47,48,,,68,13,,,69,,,12,,,,,59,61,,72,53,140,55,,,43,,,,66,62',
73
+ ',64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,',
74
+ '69,,,12,,,,,59,61,,72,53,142,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,',
75
+ ',,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72',
76
+ '53,,55,145,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71',
77
+ '67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64',
78
+ '65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,',
79
+ ',12,,,,,59,61,,72,53,,55,302,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42',
80
+ ',49,,52,46,,50,71,67,,44,70,47,48,,,68,13,,,69,,,12,,,,,59,61,,72,53',
81
+ ',55,145,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,46,,50,71,67',
82
+ ',44,70,47,48,,,68,13,,,69,,,12,,,,,59,61,,72,53,,155,,,43,,,,66,62,',
83
+ '64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69',
84
+ ',,12,,,,,59,61,,72,53,,55,371,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42',
85
+ ',49,,52,46,,50,71,67,,44,70,47,48,,,68,13,,,69,,,12,,,,,59,61,,72,53',
86
+ ',55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,46,,50,71,67,,44',
87
+ '70,47,48,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65',
88
+ ',,,51,,14,,54,,,,42,,49,,52,46,,50,71,67,,44,70,47,48,,,68,13,,,69,',
89
+ ',12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49',
90
+ ',52,46,,50,71,67,,44,70,47,48,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55',
91
+ ',,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,46,,50,71,67,,44,70',
92
+ '47,48,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,',
93
+ ',51,,14,,54,,,,42,,49,,52,46,,50,71,67,,44,70,47,48,,,68,13,,,69,,,12',
94
+ ',,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52',
95
+ '46,,50,71,67,,44,70,47,48,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43',
96
+ ',,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,46,,50,71,67,,44,70,47,48',
97
+ ',,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14',
98
+ ',54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61',
99
+ ',72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50',
100
+ '71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62',
101
+ ',64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,',
102
+ '69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42',
103
+ ',49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55',
104
+ ',,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70',
105
+ ',,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51',
106
+ ',14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59',
107
+ '61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,',
108
+ '50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66',
109
+ '62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13',
110
+ ',,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,',
111
+ ',42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53',
112
+ ',55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,',
113
+ '44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65',
114
+ ',,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12',
115
+ ',,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52',
116
+ '110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,',
117
+ ',,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,',
118
+ '68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14',
119
+ ',54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61',
120
+ ',72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50',
121
+ '71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62',
122
+ ',64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,',
123
+ '69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42',
124
+ ',49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55',
125
+ ',,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70',
126
+ ',,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51',
127
+ ',14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59',
128
+ '61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,',
129
+ '50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66',
130
+ '62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13',
131
+ ',,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,',
132
+ ',42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53',
133
+ ',55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,',
134
+ '44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,356,,43,,,188,66,62,',
135
+ '64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69',
136
+ ',,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,191',
137
+ '208,202,209,52,203,211,204,200,198,,193,206,,,,,68,13,212,207,205,,',
138
+ '12,,,,,59,61,,72,53,,55,,210,192,,,,66,62,,64,65,,,,51,,14,,54,,,,42',
139
+ ',49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55',
140
+ ',,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70',
141
+ ',,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51',
142
+ ',14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59',
143
+ '61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,',
144
+ '50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66',
145
+ '62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13',
146
+ ',,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,',
147
+ ',42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53',
148
+ ',55,304,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,46,,50,71,67',
149
+ ',44,70,47,48,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64',
150
+ '65,,,,51,,14,220,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69',
151
+ ',,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,',
152
+ '49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55',
153
+ ',,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70',
154
+ ',,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51',
155
+ ',14,228,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,',
156
+ ',,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52',
157
+ '46,,50,71,67,,44,70,47,48,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43',
158
+ ',,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,',
159
+ ',68,13,,,69,,,12,,,,,59,61,,72,53,324,55,,,43,,,,66,62,,64,65,,,,51',
160
+ ',14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59',
161
+ '61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,',
162
+ '50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66',
163
+ '62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13',
164
+ ',,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,',
165
+ ',42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53',
166
+ '323,55,,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67',
167
+ ',44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65',
168
+ ',,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12',
169
+ ',,,,59,61,,72,53,,55,326,,43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49',
170
+ ',52,110,,50,71,67,,44,70,,,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,',
171
+ '43,,,,66,62,,64,65,,,,51,,14,,54,,,,42,,49,,52,110,,50,71,67,,44,70',
172
+ ',,,,68,13,,,69,,,12,,,,,59,61,,72,53,,55,,,43,,,,66,62,,64,65,,59,61',
173
+ '51,,14,,54,,,,191,208,202,209,52,203,211,204,200,198,,193,206,,59,61',
174
+ ',68,13,212,207,205,,,12,,,,137,,,135,72,,,,,210,192,,,,66,62,,64,65',
175
+ '81,,,51,72,137,,54,135,100,101,102,97,92,104,62,108,,103,,,93,95,94',
176
+ '96,,,,72,,,,,,,,,,,62,107,,,,99,98,,,85,86,88,87,90,91,,83,84,,,,,81',
177
+ '82,105,,,248,,,,100,101,102,97,92,104,,108,,103,89,,93,95,94,96,,,,',
178
+ ',,,,,,,,,,,107,,,,99,98,,,85,86,88,87,90,91,81,83,84,,,248,,,82,100',
179
+ '101,102,97,92,104,,108,,103,,,93,95,94,96,,89,,,,,,,,,,,,,,107,,,,99',
180
+ '98,,,85,86,88,87,90,91,,83,84,,,,,81,82,232,,,,,,,100,101,102,97,92',
181
+ '104,,108,,103,89,,93,95,94,96,,,,,,,,,,,,,,,,107,,,,99,98,,,85,86,88',
182
+ '87,90,91,81,83,84,,,,,,82,100,101,102,97,92,104,,108,,103,,,93,95,94',
183
+ '96,,89,,,,,,,,,,,,,,107,,,,99,98,,,85,86,88,87,90,91,,83,84,,,,,81,82',
184
+ '231,,,,,,,100,101,102,97,92,104,,108,,103,89,,93,95,94,96,,,,,,,,,,',
185
+ ',,,,,107,,,,99,98,,,85,86,88,87,90,91,,83,84,,,,,81,82,230,,,,,,,100',
186
+ '101,102,97,92,104,,108,,103,89,,93,95,94,96,,,,,,,,,,,,,,,,107,,,,99',
187
+ '98,,,85,86,88,87,90,91,,83,84,,,,,81,82,229,,,,,,,100,101,102,97,92',
188
+ '104,,108,,103,89,,93,95,94,96,,,,,,,,,,,,,,,,107,,,,99,98,,,85,86,88',
189
+ '87,90,91,81,83,84,,,,,,82,100,101,102,97,92,104,,108,,103,,218,93,95',
190
+ '94,96,,89,,,,,,,,,,,,,,107,,,,99,98,,,85,86,88,87,90,91,81,83,84,,,',
191
+ ',,82,100,101,102,97,92,104,,108,,103,,,93,95,94,96,,89,,,,,,,,,,,,,',
192
+ '107,,,,99,98,,,85,86,88,87,90,91,81,83,84,,,,,,82,100,101,102,97,92',
193
+ '104,,108,,103,262,263,93,95,94,96,,89,,,,,,,,,,,,,,107,,,,99,98,,,85',
194
+ '86,88,87,90,91,81,83,84,,,,,,82,100,101,102,97,92,104,,108,,103,,,93',
195
+ '95,94,96,,89,,,,,,,,,,,,,,107,,,,99,98,,,85,86,88,87,90,91,81,83,84',
196
+ ',,,,,82,100,101,102,97,92,104,,108,,103,,,93,95,94,96,,89,,,,,,,,,,',
197
+ ',,,107,,,,99,98,,,85,86,88,87,90,91,81,83,84,,,,,,82,100,101,102,97',
198
+ '92,104,,108,,103,,,93,95,94,96,,89,,,,,,,,,,,,,,107,,,,99,98,,,85,86',
199
+ '88,87,90,91,81,83,84,,,,,,82,100,101,102,97,92,104,,108,,103,,,93,95',
200
+ '94,96,,89,,,,,,,,,,,,,,107,,,,99,98,,,85,86,88,87,90,91,81,83,84,,,',
201
+ ',,82,100,101,102,97,92,104,,108,81,103,,81,93,95,94,96,,89,,,,,104,',
202
+ '108,104,103,108,,103,,107,,,,99,98,,,85,86,88,87,90,91,,83,84,107,,',
203
+ '107,,82,,,,,88,87,81,88,87,83,84,,83,84,,,82,89,,82,104,,108,,103,,',
204
+ ',,81,,,,,89,,,89,100,101,102,97,92,104,,108,107,103,,,93,95,94,96,85',
205
+ '86,88,87,,,,83,84,,,,,,82,107,,,,99,98,,,85,86,88,87,90,91,81,83,84',
206
+ '89,,,,,82,100,101,102,97,92,104,272,108,,103,,,93,95,94,96,,89,,,,,',
207
+ ',,,,,,,,107,,,,99,98,,,85,86,88,87,90,91,,83,84,,,,,81,82,105,,,,,,',
208
+ '100,101,102,97,92,104,,108,81,103,89,,93,95,94,96,,,,,,,104,,108,,103',
209
+ ',,,,107,,,,99,98,,,85,86,88,87,90,91,,83,84,107,,,81,,82,,,85,86,88',
210
+ '87,,,,83,84,104,,108,81,103,82,89,,,,,,,,,,,104,,108,,103,,89,,,107',
211
+ ',,,,,,,85,86,88,87,90,91,,83,84,107,,,,,82,,,85,86,88,87,90,91,81,83',
212
+ '84,,,,,,82,89,,,,92,104,,108,81,103,,,93,,,,,89,,,,92,104,,108,,103',
213
+ ',,93,,107,,,,,,,,85,86,88,87,90,91,,83,84,107,,,,,82,,,85,86,88,87,90',
214
+ '91,81,83,84,,,,,,82,89,,,,92,104,,108,81,103,,,93,,,,,89,,,,92,104,',
215
+ '108,,103,,,93,,107,,,,,,,,85,86,88,87,90,91,,83,84,107,,,,,82,,,85,86',
216
+ '88,87,90,91,81,83,84,,,,,,82,89,,,97,92,104,,108,,103,,81,93,95,94,96',
217
+ ',89,,,,,,97,92,104,,108,,103,,107,93,95,94,96,,,,85,86,88,87,90,91,',
218
+ '83,84,,,,107,,82,,,98,,,85,86,88,87,90,91,81,83,84,,,,89,,82,100,101',
219
+ '102,97,92,104,,108,,103,,,93,95,94,96,,89,,,,,,,,,,,,,,107,,,,99,98',
220
+ ',,85,86,88,87,90,91,81,83,84,,,268,,,82,100,101,102,97,92,104,,108,',
221
+ '103,,,93,95,94,96,,89,,,,,,,,,,,,,,107,,,,99,98,,,85,86,88,87,90,91',
222
+ '81,83,84,,,,,,82,100,101,102,97,92,104,,108,,103,,,93,95,94,96,,89,',
223
+ ',,,,,,,,,,,,107,,,,99,98,,,85,86,88,87,90,91,81,83,84,,,,,,82,100,101',
224
+ '102,97,92,104,,108,81,103,,81,93,95,94,96,,89,,,,,104,,108,104,103,108',
225
+ ',103,,107,,,,99,98,,81,85,86,88,87,90,91,,83,84,107,,,107,104,82,108',
226
+ ',103,,,,,,,83,84,,83,84,,,82,89,,82,,,,,107,,,,,,,,,,,,,,,83,84,,286',
227
+ '208,285,209,82,283,211,287,281,280,,282,284,,,,,,,212,207,288,286,208',
228
+ '285,209,,283,211,287,281,280,,282,284,,,210,289,,,212,207,288,286,208',
229
+ '285,209,,283,211,287,281,280,,282,284,,,210,289,,,212,207,288,,,,,,',
230
+ ',,,,,,,,,210,289' ]
231
+ racc_action_table = arr = ::Array.new(6523, nil)
225
232
  idx = 0
226
233
  clist.each do |str|
227
234
  str.split(',', -1).each do |i|
@@ -231,219 +238,227 @@ clist = [
231
238
  end
232
239
 
233
240
  clist = [
234
- '0,0,199,196,0,225,0,204,163,198,203,312,235,201,162,312,303,201,312',
235
- '225,151,235,163,0,163,303,163,310,162,0,162,0,162,0,0,123,0,0,0,129',
236
- '0,0,0,0,199,196,0,0,163,204,0,198,203,0,162,151,382,382,328,328,382',
237
- '0,382,382,129,114,142,0,139,142,163,0,0,139,0,0,0,263,137,382,121,161',
238
- '0,137,48,382,161,382,48,382,382,200,382,382,382,200,382,382,382,382',
239
- '114,237,382,382,240,240,382,128,121,382,5,5,121,267,5,108,5,382,109',
240
- '108,345,232,345,382,300,271,300,382,382,113,382,382,109,5,109,273,109',
241
- '155,382,5,224,5,240,5,5,240,5,5,5,5,5,5,5,5,222,45,5,5,109,277,5,149',
242
- '149,5,218,240,381,381,147,147,381,5,381,381,291,293,240,5,295,296,168',
243
- '5,5,45,5,5,104,45,299,381,131,301,5,302,168,381,168,381,168,381,381',
244
- '217,381,381,381,102,381,381,381,381,306,307,381,381,308,309,381,257',
245
- '215,381,168,314,379,379,73,71,379,381,379,379,61,60,327,381,233,168',
246
- '168,381,381,213,381,381,168,330,193,379,332,46,381,192,339,379,340,379',
247
- '40,379,379,236,379,379,379,39,379,379,379,379,348,349,379,379,351,352',
248
- '379,356,357,379,186,186,358,38,186,364,186,379,8,8,8,8,365,379,368,241',
249
- '6,379,379,1,379,379,386,186,390,238,238,392,379,186,394,186,,186,186',
250
- ',186,186,186,,186,186,,,,,186,186,,,186,,,186,12,12,,,12,,12,186,,238',
251
- ',,238,186,,,,186,186,,186,186,,12,,202,202,,186,12,,12,238,12,12,,12',
252
- '12,12,,12,12,,238,,,12,12,,,12,,,12,13,13,,,13,,13,12,,202,,,202,12',
253
- ',,,12,12,,12,12,,13,,49,49,,12,13,,13,202,13,13,,13,13,13,,13,13,,202',
254
- ',,13,13,,,13,,,13,14,14,,,14,,14,13,164,49,,,49,13,,,,13,13,,13,13,164',
255
- '14,164,,164,,13,14,,14,49,14,14,,14,14,14,,14,14,,49,,,14,14,164,,14',
256
- ',,14,360,360,,,360,,360,14,167,,,,,14,,,164,14,14,,14,14,167,360,167',
257
- ',167,,14,360,,360,,360,360,,360,360,360,,360,360,360,360,,,360,360,167',
258
- ',360,,,360,347,347,,,347,,347,360,169,167,167,,,360,,,167,360,360,,360',
259
- '360,169,347,169,,169,,360,347,,347,,347,347,,347,347,347,,347,347,,',
260
- ',,347,347,169,,347,,,347,189,189,,,189,,189,347,107,169,169,,,347,,',
261
- '169,347,347,,347,347,107,189,107,,107,,347,189,,189,,189,189,,189,189',
262
- '189,,189,189,,,,,189,189,107,,189,,,189,41,41,,,41,,41,189,,,,,,189',
263
- ',,,189,189,,189,189,,41,,,,,189,41,,41,,41,41,,41,41,41,,41,41,,,,,41',
264
- '41,,,41,,,41,42,42,,,42,,42,41,,,,,,41,,,,41,41,,41,41,,42,,,,,41,42',
265
- ',42,,42,42,,42,42,42,,42,42,,,,,42,42,,,42,,,42,43,43,,,43,,43,42,,',
266
- ',,,42,,,,42,42,,42,42,,43,,,,,42,43,,43,,43,43,,43,43,43,,43,43,,,,',
267
- '43,43,,,43,,,43,44,44,,,44,,44,43,,,,,,43,,,,43,43,,43,43,,44,,,,,43',
268
- '44,,44,,44,44,,44,44,44,,44,44,,,,,44,44,,,44,,,44,190,190,,,190,,190',
269
- '44,,,,,,44,,,,44,44,,44,44,,190,,,,,44,190,,190,,190,190,,190,190,190',
270
- ',190,190,,,,,190,190,,,190,,,190,191,191,,,191,,191,190,,,,,,190,,,',
271
- '190,190,,190,190,,191,,,,,190,191,,191,,191,191,,191,191,191,,191,191',
272
- ',,,,191,191,,,191,,,191,331,331,,,331,,331,191,,,,,,191,,,,191,191,',
273
- '191,191,,331,,,,,191,331,,331,,331,331,,331,331,331,,331,331,,,,,331',
274
- '331,,,331,,,331,,,220,220,,,220,331,220,220,,,,331,,,,331,331,,331,331',
275
- ',,,220,,,331,,,220,,220,,220,220,,220,220,220,,220,220,220,220,,,220',
276
- '220,,,220,,,220,51,51,,,51,51,51,220,,,,,,220,,,,220,220,,220,220,,51',
277
- ',,,,220,51,,51,,51,51,,51,51,51,,51,51,,,,,51,51,,,51,,,51,52,52,,,52',
278
- '52,52,51,,,,,,51,,,,51,51,,51,51,,52,,,,,51,52,,52,,52,52,,52,52,52',
279
- ',52,52,,,,,52,52,,,52,,,52,,,53,53,,,53,52,53,53,,,,52,,,,52,52,,52',
280
- '52,,,,53,,,52,,,53,,53,,53,53,,53,53,53,,53,53,,,,,53,53,,,53,,,53,58',
281
- '58,,,58,,58,53,,,,,,53,,,,53,53,,53,53,,58,,,,,53,58,,58,,58,58,,58',
282
- '58,58,,58,58,,,,,58,58,,,58,,,58,,,227,227,,,227,58,227,227,,,,58,,',
283
- ',58,58,,58,58,,,,227,,,58,,,227,,227,,227,227,,227,227,227,,227,227',
284
- '227,227,,,227,227,,,227,,,227,,,153,153,,,153,227,153,153,,,,227,,,',
285
- '227,227,,227,227,,,,153,,,227,,,153,,153,,153,153,,153,153,153,,153',
286
- '153,153,153,,,153,153,,,153,,,153,63,63,,,63,,63,153,,,,,,153,,,,153',
287
- '153,,153,153,,63,,,,,153,63,,63,,63,63,,63,63,63,,63,63,,,,,63,63,,',
288
- '63,,,63,,,316,316,,,316,63,316,316,,,,63,,,,63,63,,63,63,,,,316,,,63',
289
- ',,316,,316,,316,316,,316,316,316,,316,316,316,316,,,316,316,,,316,,',
290
- '316,72,72,,,72,,72,316,,,,,,316,,,,316,316,,316,316,,72,,,,,316,72,',
291
- '72,,72,72,,72,72,72,,72,72,72,72,,,72,72,,,72,,,72,315,315,,,315,,315',
292
- '72,,,,,,72,,,,72,72,,72,72,,315,,,,,72,315,,315,,315,315,,315,315,315',
293
- ',315,315,315,315,,,315,315,,,315,,,315,74,74,,,74,,74,315,,,,,,315,',
294
- ',,315,315,,315,315,,74,,,,,315,74,,74,,74,74,,74,74,74,,74,74,74,74',
295
- ',,74,74,,,74,,,74,75,75,,,75,,75,74,,,,,,74,,,,74,74,,74,74,,75,,,,',
296
- '74,75,,75,,75,75,,75,75,75,,75,75,75,75,,,75,75,,,75,,,75,76,76,,,76',
297
- ',76,75,,,,,,75,,,,75,75,,75,75,,76,,,,,75,76,,76,,76,76,,76,76,76,,76',
298
- '76,76,76,,,76,76,,,76,,,76,77,77,,,77,,77,76,,,,,,76,,,,76,76,,76,76',
299
- ',77,,,,,76,77,,77,,77,77,,77,77,77,,77,77,77,77,,,77,77,,,77,,,77,78',
300
- '78,,,78,,78,77,,,,,,77,,,,77,77,,77,77,,78,,,,,77,78,,78,,78,78,,78',
301
- '78,78,,78,78,78,78,,,78,78,,,78,,,78,79,79,,,79,,79,78,,,,,,78,,,,78',
302
- '78,,78,78,,79,,,,,78,79,,79,,79,79,,79,79,79,,79,79,,,,,79,79,,,79,',
303
- ',79,80,80,,,80,,80,79,,,,,,79,,,,79,79,,79,79,,80,,,,,79,80,,80,,80',
304
- '80,,80,80,80,,80,80,,,,,80,80,,,80,,,80,81,81,,,81,,81,80,,,,,,80,,',
305
- ',80,80,,80,80,,81,,,,,80,81,,81,,81,81,,81,81,81,,81,81,,,,,81,81,,',
306
- '81,,,81,82,82,,,82,,82,81,,,,,,81,,,,81,81,,81,81,,82,,,,,81,82,,82',
307
- ',82,82,,82,82,82,,82,82,,,,,82,82,,,82,,,82,83,83,,,83,,83,82,,,,,,82',
308
- ',,,82,82,,82,82,,83,,,,,82,83,,83,,83,83,,83,83,83,,83,83,,,,,83,83',
309
- ',,83,,,83,84,84,,,84,,84,83,,,,,,83,,,,83,83,,83,83,,84,,,,,83,84,,84',
310
- ',84,84,,84,84,84,,84,84,,,,,84,84,,,84,,,84,85,85,,,85,,85,84,,,,,,84',
311
- ',,,84,84,,84,84,,85,,,,,84,85,,85,,85,85,,85,85,85,,85,85,,,,,85,85',
312
- ',,85,,,85,86,86,,,86,,86,85,,,,,,85,,,,85,85,,85,85,,86,,,,,85,86,,86',
313
- ',86,86,,86,86,86,,86,86,,,,,86,86,,,86,,,86,87,87,,,87,,87,86,,,,,,86',
314
- ',,,86,86,,86,86,,87,,,,,86,87,,87,,87,87,,87,87,87,,87,87,,,,,87,87',
315
- ',,87,,,87,88,88,,,88,,88,87,,,,,,87,,,,87,87,,87,87,,88,,,,,87,88,,88',
316
- ',88,88,,88,88,88,,88,88,,,,,88,88,,,88,,,88,89,89,,,89,,89,88,,,,,,88',
317
- ',,,88,88,,88,88,,89,,,,,88,89,,89,,89,89,,89,89,89,,89,89,,,,,89,89',
318
- ',,89,,,89,90,90,,,90,,90,89,,,,,,89,,,,89,89,,89,89,,90,,,,,89,90,,90',
319
- ',90,90,,90,90,90,,90,90,,,,,90,90,,,90,,,90,91,91,,,91,,91,90,,,,,,90',
320
- ',,,90,90,,90,90,,91,,,,,90,91,,91,,91,91,,91,91,91,,91,91,,,,,91,91',
321
- ',,91,,,91,92,92,,,92,,92,91,,,,,,91,,,,91,91,,91,91,,92,,,,,91,92,,92',
322
- ',92,92,,92,92,92,,92,92,,,,,92,92,,,92,,,92,93,93,,,93,,93,92,,,,,,92',
323
- ',,,92,92,,92,92,,93,,,,,92,93,,93,,93,93,,93,93,93,,93,93,,,,,93,93',
324
- ',,93,,,93,94,94,,,94,,94,93,,,,,,93,,,,93,93,,93,93,,94,,,,,93,94,,94',
325
- ',94,94,,94,94,94,,94,94,,,,,94,94,,,94,,,94,95,95,,,95,,95,94,,,,,,94',
326
- ',,,94,94,,94,94,,95,,,,,94,95,,95,,95,95,,95,95,95,,95,95,,,,,95,95',
327
- ',,95,,,95,96,96,,,96,,96,95,,,,,,95,,,,95,95,,95,95,,96,,,,,95,96,,96',
328
- ',96,96,,96,96,96,,96,96,,,,,96,96,,,96,,,96,97,97,,,97,,97,96,,,,,,96',
329
- ',,,96,96,,96,96,,97,,,,,96,97,,97,,97,97,,97,97,97,,97,97,,,,,97,97',
330
- ',,97,,,97,98,98,,,98,,98,97,,,,,,97,,,,97,97,,97,97,,98,,,,,97,98,,98',
331
- ',98,98,,98,98,98,,98,98,,,,,98,98,,,98,,,98,99,99,,,99,,99,98,,,,,,98',
332
- ',,,98,98,,98,98,,99,,,,,98,99,,99,,99,99,,99,99,99,,99,99,,,,,99,99',
333
- ',,99,,,99,100,100,,,100,,100,99,,,,,,99,,,,99,99,,99,99,,100,,,,,99',
334
- '100,,100,,100,100,,100,100,100,,100,100,,,,,100,100,,,100,,,100,101',
335
- '101,,,101,,101,100,,,,,,100,,,,100,100,,100,100,,101,,,,,100,101,,101',
336
- ',101,101,,101,101,101,,101,101,,,,,101,101,,,101,,,101,,,304,304,,,304',
337
- '101,304,304,,,,101,,,101,101,101,,101,101,,,,304,,,101,,,304,,304,,304',
338
- '304,,304,304,304,,304,304,,,,,304,304,,,304,,,304,103,103,,,103,,103',
339
- '304,,,,,,304,,,,304,304,,304,304,,103,,,,,304,103,103,103,103,103,103',
340
- '103,103,103,103,,103,103,,,,,103,103,103,103,103,,,103,297,297,,,297',
341
- ',297,103,,,,,103,103,,,,103,103,,103,103,,297,,,,,103,297,,297,,297',
342
- '297,,297,297,297,,297,297,,,,,297,297,,,297,,,297,105,105,,,105,,105',
343
- '297,,,,,,297,,,,297,297,,297,297,,105,,,,,297,105,,105,,105,105,,105',
344
- '105,105,,105,105,,,,,105,105,,,105,,,105,106,106,,,106,,106,105,,,,',
345
- ',105,,,,105,105,,105,105,,106,,,,,105,106,,106,,106,106,,106,106,106',
346
- ',106,106,,,,,106,106,,,106,,,106,290,290,,,290,,290,106,,,,,,106,,,',
347
- '106,106,,106,106,,290,,,,,106,290,,290,,290,290,,290,290,290,,290,290',
348
- ',,,,290,290,,,290,,,290,276,276,,,276,,276,290,,,,,,290,,,,290,290,',
349
- '290,290,,276,,,,,290,276,,276,,276,276,,276,276,276,,276,276,,,,,276',
350
- '276,,,276,,,276,275,275,,,275,,275,276,,,,,,276,,,,276,276,,276,276',
351
- ',275,,,,,276,275,,275,,275,275,,275,275,275,,275,275,,,,,275,275,,,275',
352
- ',,275,,,228,228,,,228,275,228,228,,,,275,,,,275,275,,275,275,,,,228',
353
- ',,275,,,228,,228,,228,228,,228,228,228,,228,228,228,228,,,228,228,,',
354
- '228,,,228,111,111,,,111,,111,228,,,,,,228,,,,228,228,,228,228,,111,111',
355
- ',,,228,111,,111,,111,111,,111,111,111,,111,111,,,,,111,111,,,111,,,111',
356
- '272,272,,,272,,272,111,,,,,,111,,,,111,111,,111,111,,272,,,,,111,272',
357
- ',272,,272,272,,272,272,272,,272,272,,,,,272,272,,,272,,,272,266,266',
358
- ',,266,,266,272,,,,,,272,,,,272,272,,272,272,,266,,,,,272,266,,266,,266',
359
- '266,,266,266,266,,266,266,,,,,266,266,,,266,,,266,115,115,,,115,,115',
360
- '266,,,,,,266,,,,266,266,,266,266,,115,115,,,,266,115,,115,,115,115,',
361
- '115,115,115,,115,115,,,,,115,115,,,115,,,115,150,150,,,150,,150,115',
362
- ',,,,,115,,,,115,115,,115,115,,150,,,,,115,150,,150,,150,150,,150,150',
363
- '150,,150,150,150,150,,,150,150,,,150,,,150,229,229,,,229,,229,150,,',
364
- ',,,150,,,,150,150,,150,150,,229,,,,,150,229,,229,,229,229,,229,229,229',
365
- ',229,229,,,,,229,229,,,229,,,229,244,244,,,244,244,244,229,,,,,,229',
366
- ',,,229,229,,229,229,,244,,,,,229,244,,244,,244,244,,244,244,244,,244',
367
- '244,,,,,244,244,,,244,,,244,231,231,,,231,,231,244,,,,,,244,,,,244,244',
368
- ',244,244,,231,,,,,244,231,,231,,231,231,,231,231,231,,231,231,,,,,231',
369
- '231,,,231,,,231,265,265,,,265,,265,231,,,,,,231,,,,231,231,,231,231',
370
- ',265,,,,,231,265,,265,,265,265,,265,265,265,,265,265,,,,,265,265,,,265',
371
- ',,265,122,122,,,122,,122,265,,,,,,265,,,,265,265,,265,265,,122,,,,,265',
372
- '122,,122,,122,122,,122,122,122,,122,122,,,,,122,122,,,122,,,122,242',
373
- '242,,,242,242,242,122,,,,,,122,,,,122,122,,122,122,,242,,,,,122,242',
374
- ',242,,242,242,,242,242,242,,242,242,,,,,242,242,,,242,,,242,253,253',
375
- ',,253,,253,242,,,,,,242,,,,242,242,,242,242,,253,,,,,242,253,,253,,253',
376
- '253,,253,253,253,,253,253,,,,,253,253,,,253,,,253,,,248,248,,,248,253',
377
- '248,248,,,,253,,,,253,253,,253,253,,,,248,,,253,,,248,,248,,248,248',
378
- ',248,248,248,,248,248,,,,,248,248,,,248,,,248,246,246,,,246,,246,248',
379
- ',,,,,248,,,,248,248,,248,248,,246,,,,,248,246,,246,,246,246,,246,246',
380
- '246,,246,246,,,,,246,246,,,246,,,246,230,230,,,230,,230,246,,,,,,246',
381
- ',,,246,246,,246,246,,230,,,,,246,230,230,230,230,230,230,230,230,230',
382
- '230,,230,230,,,,,230,230,230,230,230,,,230,,,,,,,,230,,,,,230,230,,',
383
- ',230,230,,230,230,136,,,,,,230,,,136,136,136,136,136,136,,136,,136,',
384
- ',136,136,136,136,,,,,,,,,,,,,,,,136,,,,136,136,,,136,136,136,136,136',
385
- '136,,136,136,,,262,,262,136,,262,,,,262,262,262,262,262,262,,262,,262',
386
- ',136,262,262,262,262,,,,,,,,,,,,,,,,262,,,,262,262,,,262,262,262,262',
387
- '262,262,141,262,262,,,141,,,262,141,141,141,141,141,141,,141,,141,,',
388
- '141,141,141,141,262,,,,,,,,,,,,,,,141,,,,141,141,,,141,141,141,141,141',
389
- '141,,141,141,,,120,,120,141,,,,,,120,120,120,120,120,120,,120,,120,',
390
- '141,120,120,120,120,,,,,,,,,,,,,,,,120,,,,120,120,,,120,120,120,120',
391
- '120,120,145,120,120,,,,,,120,145,145,145,145,145,145,,145,,145,,,145',
392
- '145,145,145,120,,,,,,,,,,,,,,,145,,,,145,145,,,145,145,145,145,145,145',
393
- ',145,145,,,119,,119,145,,,,,,119,119,119,119,119,119,,119,,119,,145',
394
- '119,119,119,119,,,,,,,,,,,,,,,,119,,,,119,119,,,119,119,119,119,119',
395
- '119,,119,119,,,118,,118,119,,,,,,118,118,118,118,118,118,,118,,118,',
396
- '119,118,118,118,118,,,,,,,,,,,,,,,,118,,,,118,118,,,118,118,118,118',
397
- '118,118,,118,118,,,116,,116,118,,,,,,116,116,116,116,116,116,,116,,116',
398
- ',118,116,116,116,116,,,,,,,,,,,,,,,,116,,,,116,116,,,116,116,116,116',
399
- '116,116,110,116,116,,,,,,116,110,110,110,110,110,110,,110,,110,,110',
400
- '110,110,110,110,116,,,,,,,,,,,,,,,110,,,,110,110,,,110,110,110,110,110',
401
- '110,152,110,110,,,,,,110,152,152,152,152,152,152,,152,,152,,,152,152',
402
- '152,152,110,,,,,,,,,,,,,,,152,,,,152,152,,,152,152,152,152,152,152,320',
403
- '152,152,,,,,,152,320,320,320,320,320,320,,320,,320,152,152,320,320,320',
404
- '320,152,,,,,,,,,,,,,,,320,,,,320,320,,,320,320,320,320,320,320,323,320',
405
- '320,,,,,,320,323,323,323,323,323,323,,323,,323,,,323,323,323,323,320',
406
- ',,,,,,,,,,,,,,323,,,,323,323,,,323,323,323,323,323,323,329,323,323,',
407
- ',,,,323,329,329,329,329,329,329,,329,,329,,,329,329,329,329,323,,,,',
408
- ',,,,,,,,,,329,,,,329,329,,,329,329,329,329,329,329,212,329,329,,,,,',
409
- '329,212,212,212,212,212,212,,212,,212,,,212,212,212,212,329,,,,,,,,',
410
- ',,,,,,212,,,,212,212,,,212,212,212,212,212,212,337,212,212,,,,,,212',
411
- '337,337,337,337,337,337,,337,,337,,,337,337,337,337,212,,,,,,,,,,,,',
412
- ',,337,,,,337,337,,,337,337,337,337,337,337,338,337,337,,,,,,337,338',
413
- '338,338,338,338,338,,338,,338,165,,338,338,338,338,337,,,,,,,,165,,165',
414
- ',165,,,338,,,,338,338,,,338,338,338,338,338,338,,338,338,,,165,,,338',
415
- ',166,,,,,165,165,,,,165,165,,,166,338,166,165,166,,,,,,,,,,,,,,,,165',
416
- ',,,,,166,,,,,,,,,,166,166,,,344,166,166,,,,,,166,344,344,344,344,344',
417
- '344,,344,,344,,,344,344,344,344,166,,,,,,,,,,,,,,,344,,,,344,344,,,344',
418
- '344,344,344,344,344,188,344,344,,,,,,344,188,188,188,188,188,188,188',
419
- '188,,188,,,188,188,188,188,344,,,,,,,,,,,,,,,188,,,,188,188,,,188,188',
420
- '188,188,188,188,,188,188,,,11,,11,188,,,,,,11,11,11,11,11,11,,11,,11',
421
- '170,188,11,11,11,11,,,,,,,,,170,,170,,170,,,11,,,,11,11,,,11,11,11,11',
422
- '11,11,,11,11,,,170,,,11,,171,,,170,170,170,170,,,,170,170,,,171,11,171',
423
- '170,171,172,,,,,,,,,,,,,,172,170,172,,172,,,171,,,,,,,,171,171,171,171',
424
- ',,,171,171,,,172,,,171,,173,,,172,172,172,172,172,172,,172,172,,,173',
425
- '171,173,172,173,,,,,,,174,,,,,,,,,172,,,,174,174,173,174,,174,,175,174',
426
- ',173,173,173,173,173,173,,173,173,,175,175,,175,173,175,,174,175,,,',
427
- '176,,,174,174,174,174,174,174,173,174,174,,176,176,175,176,174,176,',
428
- ',176,,175,175,175,175,175,175,,175,175,,,174,,,175,,,176,,,,,177,,,176',
429
- '176,176,176,176,176,175,176,176,,177,177,,177,176,177,,,177,,,,,,,,',
430
- ',,,,176,,,,,,177,,,,,178,,,177,177,177,177,177,177,,177,177,178,178',
431
- '178,,178,177,178,,,178,178,178,178,,,,,,,,,,177,,,,,,178,,,,,179,,,178',
432
- '178,178,178,178,178,,178,178,179,179,179,,179,178,179,,,179,179,179',
433
- '179,,,,,,,,,,178,,,,,,179,,,,,179,,,179,179,179,179,179,179,180,179',
434
- '179,,,,,,179,180,180,180,180,180,180,,180,,180,,,180,180,180,180,179',
435
- ',,,,,,,,,,,,,,180,,,,180,180,,,180,180,180,180,180,180,183,180,180,',
436
- ',183,,,180,183,183,183,183,183,183,,183,,183,,,183,183,183,183,180,',
437
- ',,,,,,,,,,,,,183,,,,183,183,,,183,183,183,183,183,183,182,183,183,,',
438
- ',,,183,182,182,182,182,182,182,,182,,182,,,182,182,182,182,183,,,,,',
439
- ',,,,,,,,,182,,,,182,182,,,182,182,182,182,182,182,181,182,182,,,,,,182',
440
- '181,181,181,181,181,181,,181,,181,,,181,181,181,181,182,,,,,,,,,,,,',
441
- ',,181,,,,181,181,,,181,181,181,181,181,181,,181,181,,,,,,181,274,274',
442
- '274,274,,274,274,274,274,274,,274,274,,,,181,,,274,274,274,269,269,269',
443
- '269,,269,269,269,269,269,,269,269,,,274,274,,,269,269,269,211,211,211',
444
- '211,,211,211,211,211,211,,211,211,,,269,269,,,211,211,211,,,,,,,,,,',
445
- ',,,,,211,211' ]
446
- racc_action_check = arr = ::Array.new(6233, nil)
241
+ '0,0,201,198,0,131,0,206,227,200,205,312,237,153,141,305,242,242,125',
242
+ '141,116,237,227,0,305,240,240,139,123,0,131,0,139,0,0,203,0,0,0,203',
243
+ '0,0,0,0,201,198,0,0,153,206,0,200,205,0,242,116,123,242,384,384,123',
244
+ '0,384,240,384,384,240,0,163,330,330,0,0,163,0,0,0,242,46,0,49,384,144',
245
+ '0,49,144,240,384,242,384,265,384,384,239,384,384,384,240,384,384,384',
246
+ '384,130,202,384,384,46,202,384,110,46,384,269,110,314,234,5,5,314,384',
247
+ '5,314,5,273,165,384,347,115,347,384,384,275,384,384,302,157,302,384',
248
+ '165,5,165,384,165,151,151,5,226,5,224,5,5,279,5,5,5,5,5,5,5,5,149,149',
249
+ '5,5,165,220,5,293,295,5,8,8,8,8,383,383,297,5,383,298,383,383,166,5',
250
+ '106,301,165,5,5,133,5,5,303,304,219,5,166,383,166,5,166,104,308,383',
251
+ '309,383,310,383,383,311,383,383,383,259,383,383,383,383,217,316,383',
252
+ '383,166,75,383,73,63,383,62,329,235,215,381,381,332,383,381,195,381',
253
+ '381,164,383,334,47,166,383,383,194,383,383,341,342,41,383,164,381,164',
254
+ '383,164,238,40,381,350,381,351,381,381,353,381,381,381,354,381,381,381',
255
+ '381,358,359,381,381,164,360,381,39,366,381,367,370,243,6,188,188,1,381',
256
+ '188,388,188,392,111,381,394,396,,381,381,,381,381,,,,381,111,188,111',
257
+ '381,111,,,188,,188,,188,188,,188,188,188,,188,188,,,,,188,188,111,,188',
258
+ ',,188,,,,,12,12,,188,12,,12,,109,188,,,,188,188,,188,188,,,,188,109',
259
+ '12,109,188,109,,,12,,12,,12,12,,12,12,12,,12,12,,,,,12,12,109,,12,,',
260
+ '12,,,,,13,13,,12,13,,13,,,12,,,,12,12,,12,12,,,,12,,13,,12,,,,13,,13',
261
+ ',13,13,,13,13,13,,13,13,,,,,13,13,,,13,,,13,,,,,14,14,,13,14,,14,,,13',
262
+ ',,,13,13,,13,13,,,,13,,14,,13,,,,14,,14,,14,14,,14,14,14,,14,14,,,,',
263
+ '14,14,,,14,,,14,,,,,362,362,,14,362,,362,,,14,,,,14,14,,14,14,,,,14',
264
+ ',362,,14,,,,362,,362,,362,362,,362,362,362,,362,362,362,362,,,362,362',
265
+ ',,362,,,362,,,,,349,349,,362,349,,349,,,362,,,,362,362,,362,362,,,,362',
266
+ ',349,,362,,,,349,,349,,349,349,,349,349,349,,349,349,,,,,349,349,,,349',
267
+ ',,349,,,,,191,191,,349,191,,191,,,349,,,,349,349,,349,349,,,,349,,191',
268
+ ',349,,,,191,,191,,191,191,,191,191,191,,191,191,,,,,191,191,,,191,,',
269
+ '191,,,,,42,42,,191,42,,42,,,191,,,,191,191,,191,191,,,,191,,42,,191',
270
+ ',,,42,,42,,42,42,,42,42,42,,42,42,,,,,42,42,,,42,,,42,,,,,43,43,,42',
271
+ '43,,43,,,42,,,,42,42,,42,42,,,,42,,43,,42,,,,43,,43,,43,43,,43,43,43',
272
+ ',43,43,,,,,43,43,,,43,,,43,,,,,44,44,,43,44,,44,,,43,,,,43,43,,43,43',
273
+ ',,,43,,44,,43,,,,44,,44,,44,44,,44,44,44,,44,44,,,,,44,44,,,44,,,44',
274
+ ',,,,45,45,,44,45,,45,,,44,,,,44,44,,44,44,,,,44,,45,,44,,,,45,,45,,45',
275
+ '45,,45,45,45,,45,45,,,,,45,45,,,45,,,45,,,,,192,192,,45,192,,192,,,45',
276
+ ',,,45,45,,45,45,,,,45,,192,,45,,,,192,,192,,192,192,,192,192,192,,192',
277
+ '192,,,,,192,192,,,192,,,192,,,,,193,193,,192,193,,193,,,192,,,,192,192',
278
+ ',192,192,,,,192,,193,,192,,,,193,,193,,193,193,,193,193,193,,193,193',
279
+ ',,,,193,193,,,193,,,193,,,,,333,333,,193,333,,333,,,193,,,,193,193,',
280
+ '193,193,,,,193,,333,,193,,,,333,,333,,333,333,,333,333,333,,333,333',
281
+ ',,,,333,333,,,333,,,333,,,,,222,222,,333,222,,222,222,,333,,,,333,333',
282
+ ',333,333,,,,333,,222,,333,,,,222,,222,,222,222,,222,222,222,,222,222',
283
+ '222,222,,,222,222,,,222,,,222,,,,,53,53,,222,53,53,53,,,222,,,,222,222',
284
+ ',222,222,,,,222,,53,,222,,,,53,,53,,53,53,,53,53,53,,53,53,,,,,53,53',
285
+ ',,53,,,53,,,,,54,54,,53,54,54,54,,,53,,,,53,53,,53,53,,,,53,,54,,53',
286
+ ',,,54,,54,,54,54,,54,54,54,,54,54,,,,,54,54,,,54,,,54,,,,,55,55,,54',
287
+ '55,,55,55,,54,,,,54,54,,54,54,,,,54,,55,,54,,,,55,,55,,55,55,,55,55',
288
+ '55,,55,55,,,,,55,55,,,55,,,55,,,,,60,60,,55,60,,60,,,55,,,,55,55,,55',
289
+ '55,,,,55,,60,,55,,,,60,,60,,60,60,,60,60,60,,60,60,,,,,60,60,,,60,,',
290
+ '60,,,,,229,229,,60,229,,229,229,,60,,,,60,60,,60,60,,,,60,,229,,60,',
291
+ ',,229,,229,,229,229,,229,229,229,,229,229,229,229,,,229,229,,,229,,',
292
+ '229,,,,,155,155,,229,155,,155,155,,229,,,,229,229,,229,229,,,,229,,155',
293
+ ',229,,,,155,,155,,155,155,,155,155,155,,155,155,155,155,,,155,155,,',
294
+ '155,,,155,,,,,65,65,,155,65,,65,,,155,,,,155,155,,155,155,,,,155,,65',
295
+ ',155,,,,65,,65,,65,65,,65,65,65,,65,65,,,,,65,65,,,65,,,65,,,,,318,318',
296
+ ',65,318,,318,318,,65,,,,65,65,,65,65,,,,65,,318,,65,,,,318,,318,,318',
297
+ '318,,318,318,318,,318,318,318,318,,,318,318,,,318,,,318,,,,,74,74,,318',
298
+ '74,,74,,,318,,,,318,318,,318,318,,,,318,,74,,318,,,,74,,74,,74,74,,74',
299
+ '74,74,,74,74,74,74,,,74,74,,,74,,,74,,,,,317,317,,74,317,,317,,,74,',
300
+ ',,74,74,,74,74,,,,74,,317,,74,,,,317,,317,,317,317,,317,317,317,,317',
301
+ '317,317,317,,,317,317,,,317,,,317,,,,,76,76,,317,76,,76,,,317,,,,317',
302
+ '317,,317,317,,,,317,,76,,317,,,,76,,76,,76,76,,76,76,76,,76,76,76,76',
303
+ ',,76,76,,,76,,,76,,,,,77,77,,76,77,,77,,,76,,,,76,76,,76,76,,,,76,,77',
304
+ ',76,,,,77,,77,,77,77,,77,77,77,,77,77,77,77,,,77,77,,,77,,,77,,,,,78',
305
+ '78,,77,78,,78,,,77,,,,77,77,,77,77,,,,77,,78,,77,,,,78,,78,,78,78,,78',
306
+ '78,78,,78,78,78,78,,,78,78,,,78,,,78,,,,,79,79,,78,79,,79,,,78,,,,78',
307
+ '78,,78,78,,,,78,,79,,78,,,,79,,79,,79,79,,79,79,79,,79,79,79,79,,,79',
308
+ '79,,,79,,,79,,,,,80,80,,79,80,,80,,,79,,,,79,79,,79,79,,,,79,,80,,79',
309
+ ',,,80,,80,,80,80,,80,80,80,,80,80,80,80,,,80,80,,,80,,,80,,,,,81,81',
310
+ ',80,81,,81,,,80,,,,80,80,,80,80,,,,80,,81,,80,,,,81,,81,,81,81,,81,81',
311
+ '81,,81,81,,,,,81,81,,,81,,,81,,,,,82,82,,81,82,,82,,,81,,,,81,81,,81',
312
+ '81,,,,81,,82,,81,,,,82,,82,,82,82,,82,82,82,,82,82,,,,,82,82,,,82,,',
313
+ '82,,,,,83,83,,82,83,,83,,,82,,,,82,82,,82,82,,,,82,,83,,82,,,,83,,83',
314
+ ',83,83,,83,83,83,,83,83,,,,,83,83,,,83,,,83,,,,,84,84,,83,84,,84,,,83',
315
+ ',,,83,83,,83,83,,,,83,,84,,83,,,,84,,84,,84,84,,84,84,84,,84,84,,,,',
316
+ '84,84,,,84,,,84,,,,,85,85,,84,85,,85,,,84,,,,84,84,,84,84,,,,84,,85',
317
+ ',84,,,,85,,85,,85,85,,85,85,85,,85,85,,,,,85,85,,,85,,,85,,,,,86,86',
318
+ ',85,86,,86,,,85,,,,85,85,,85,85,,,,85,,86,,85,,,,86,,86,,86,86,,86,86',
319
+ '86,,86,86,,,,,86,86,,,86,,,86,,,,,87,87,,86,87,,87,,,86,,,,86,86,,86',
320
+ '86,,,,86,,87,,86,,,,87,,87,,87,87,,87,87,87,,87,87,,,,,87,87,,,87,,',
321
+ '87,,,,,88,88,,87,88,,88,,,87,,,,87,87,,87,87,,,,87,,88,,87,,,,88,,88',
322
+ ',88,88,,88,88,88,,88,88,,,,,88,88,,,88,,,88,,,,,89,89,,88,89,,89,,,88',
323
+ ',,,88,88,,88,88,,,,88,,89,,88,,,,89,,89,,89,89,,89,89,89,,89,89,,,,',
324
+ '89,89,,,89,,,89,,,,,90,90,,89,90,,90,,,89,,,,89,89,,89,89,,,,89,,90',
325
+ ',89,,,,90,,90,,90,90,,90,90,90,,90,90,,,,,90,90,,,90,,,90,,,,,91,91',
326
+ ',90,91,,91,,,90,,,,90,90,,90,90,,,,90,,91,,90,,,,91,,91,,91,91,,91,91',
327
+ '91,,91,91,,,,,91,91,,,91,,,91,,,,,92,92,,91,92,,92,,,91,,,,91,91,,91',
328
+ '91,,,,91,,92,,91,,,,92,,92,,92,92,,92,92,92,,92,92,,,,,92,92,,,92,,',
329
+ '92,,,,,93,93,,92,93,,93,,,92,,,,92,92,,92,92,,,,92,,93,,92,,,,93,,93',
330
+ ',93,93,,93,93,93,,93,93,,,,,93,93,,,93,,,93,,,,,94,94,,93,94,,94,,,93',
331
+ ',,,93,93,,93,93,,,,93,,94,,93,,,,94,,94,,94,94,,94,94,94,,94,94,,,,',
332
+ '94,94,,,94,,,94,,,,,95,95,,94,95,,95,,,94,,,,94,94,,94,94,,,,94,,95',
333
+ ',94,,,,95,,95,,95,95,,95,95,95,,95,95,,,,,95,95,,,95,,,95,,,,,96,96',
334
+ ',95,96,,96,,,95,,,,95,95,,95,95,,,,95,,96,,95,,,,96,,96,,96,96,,96,96',
335
+ '96,,96,96,,,,,96,96,,,96,,,96,,,,,97,97,,96,97,,97,,,96,,,,96,96,,96',
336
+ '96,,,,96,,97,,96,,,,97,,97,,97,97,,97,97,97,,97,97,,,,,97,97,,,97,,',
337
+ '97,,,,,98,98,,97,98,,98,,,97,,,,97,97,,97,97,,,,97,,98,,97,,,,98,,98',
338
+ ',98,98,,98,98,98,,98,98,,,,,98,98,,,98,,,98,,,,,99,99,,98,99,,99,,,98',
339
+ ',,,98,98,,98,98,,,,98,,99,,98,,,,99,,99,,99,99,,99,99,99,,99,99,,,,',
340
+ '99,99,,,99,,,99,,,,,100,100,,99,100,,100,,,99,,,,99,99,,99,99,,,,99',
341
+ ',100,,99,,,,100,,100,,100,100,,100,100,100,,100,100,,,,,100,100,,,100',
342
+ ',,100,,,,,101,101,,100,101,,101,,,100,,,,100,100,,100,100,,,,100,,101',
343
+ ',100,,,,101,,101,,101,101,,101,101,101,,101,101,,,,,101,101,,,101,,',
344
+ '101,,,,,102,102,,101,102,,102,,,101,,,,101,101,,101,101,,,,101,,102',
345
+ ',101,,,,102,,102,,102,102,,102,102,102,,102,102,,,,,102,102,,,102,,',
346
+ '102,,,,,103,103,,102,103,,103,,,102,,,,102,102,,102,102,,,,102,,103',
347
+ ',102,,,,103,,103,,103,103,,103,103,103,,103,103,,,,,103,103,,,103,,',
348
+ '103,,,,,306,306,,103,306,,306,306,,103,,,103,103,103,,103,103,,,,103',
349
+ ',306,,103,,,,306,,306,,306,306,,306,306,306,,306,306,,,,,306,306,,,306',
350
+ ',,306,,,,,105,105,,306,105,,105,,,306,,,,306,306,,306,306,,,,306,,105',
351
+ ',306,,,,105,105,105,105,105,105,105,105,105,105,,105,105,,,,,105,105',
352
+ '105,105,105,,,105,,,,,299,299,,105,299,,299,,105,105,,,,105,105,,105',
353
+ '105,,,,105,,299,,105,,,,299,,299,,299,299,,299,299,299,,299,299,,,,',
354
+ '299,299,,,299,,,299,,,,,107,107,,299,107,,107,,,299,,,,299,299,,299',
355
+ '299,,,,299,,107,,299,,,,107,,107,,107,107,,107,107,107,,107,107,,,,',
356
+ '107,107,,,107,,,107,,,,,108,108,,107,108,,108,,,107,,,,107,107,,107',
357
+ '107,,,,107,,108,,107,,,,108,,108,,108,108,,108,108,108,,108,108,,,,',
358
+ '108,108,,,108,,,108,,,,,292,292,,108,292,,292,,,108,,,,108,108,,108',
359
+ '108,,,,108,,292,,108,,,,292,,292,,292,292,,292,292,292,,292,292,,,,',
360
+ '292,292,,,292,,,292,,,,,278,278,,292,278,,278,,,292,,,,292,292,,292',
361
+ '292,,,,292,,278,,292,,,,278,,278,,278,278,,278,278,278,,278,278,,,,',
362
+ '278,278,,,278,,,278,,,,,277,277,,278,277,,277,,,278,,,,278,278,,278',
363
+ '278,,,,278,,277,,278,,,,277,,277,,277,277,,277,277,277,,277,277,,,,',
364
+ '277,277,,,277,,,277,,,,,230,230,,277,230,,230,230,,277,,,,277,277,,277',
365
+ '277,,,,277,,230,,277,,,,230,,230,,230,230,,230,230,230,,230,230,230',
366
+ '230,,,230,230,,,230,,,230,,,,,113,113,,230,113,,113,,,230,,,,230,230',
367
+ ',230,230,,,,230,,113,113,230,,,,113,,113,,113,113,,113,113,113,,113',
368
+ '113,,,,,113,113,,,113,,,113,,,,,274,274,,113,274,,274,,,113,,,,113,113',
369
+ ',113,113,,,,113,,274,,113,,,,274,,274,,274,274,,274,274,274,,274,274',
370
+ ',,,,274,274,,,274,,,274,,,,,268,268,,274,268,,268,,,274,,,,274,274,',
371
+ '274,274,,,,274,,268,,274,,,,268,,268,,268,268,,268,268,268,,268,268',
372
+ ',,,,268,268,,,268,,,268,,,,,117,117,,268,117,,117,,,268,,,,268,268,',
373
+ '268,268,,,,268,,117,117,268,,,,117,,117,,117,117,,117,117,117,,117,117',
374
+ ',,,,117,117,,,117,,,117,,,,,152,152,,117,152,,152,,,117,,,,117,117,',
375
+ '117,117,,,,117,,152,,117,,,,152,,152,,152,152,,152,152,152,,152,152',
376
+ '152,152,,,152,152,,,152,,,152,,,,,231,231,,152,231,,231,,,152,,,,152',
377
+ '152,,152,152,,,,152,,231,,152,,,,231,,231,,231,231,,231,231,231,,231',
378
+ '231,,,,,231,231,,,231,,,231,,,,,246,246,,231,246,246,246,,,231,,,,231',
379
+ '231,,231,231,,,,231,,246,,231,,,,246,,246,,246,246,,246,246,246,,246',
380
+ '246,,,,,246,246,,,246,,,246,,,,,233,233,,246,233,,233,,,246,,,,246,246',
381
+ ',246,246,,,,246,,233,,246,,,,233,,233,,233,233,,233,233,233,,233,233',
382
+ ',,,,233,233,,,233,,,233,,,,,267,267,,233,267,,267,,,233,,,,233,233,',
383
+ '233,233,,,,233,,267,,233,,,,267,,267,,267,267,,267,267,267,,267,267',
384
+ ',,,,267,267,,,267,,,267,,,,,124,124,,267,124,,124,,,267,,,,267,267,',
385
+ '267,267,,,,267,,124,,267,,,,124,,124,,124,124,,124,124,124,,124,124',
386
+ ',,,,124,124,,,124,,,124,,,,,244,244,,124,244,244,244,,,124,,,,124,124',
387
+ ',124,124,,,,124,,244,,124,,,,244,,244,,244,244,,244,244,244,,244,244',
388
+ ',,,,244,244,,,244,,,244,,,,,255,255,,244,255,,255,,,244,,,,244,244,',
389
+ '244,244,,,,244,,255,,244,,,,255,,255,,255,255,,255,255,255,,255,255',
390
+ ',,,,255,255,,,255,,,255,,,,,250,250,,255,250,,250,250,,255,,,,255,255',
391
+ ',255,255,,,,255,,250,,255,,,,250,,250,,250,250,,250,250,250,,250,250',
392
+ ',,,,250,250,,,250,,,250,,,,,248,248,,250,248,,248,,,250,,,,250,250,',
393
+ '250,250,,,,250,,248,,250,,,,248,,248,,248,248,,248,248,248,,248,248',
394
+ ',,,,248,248,,,248,,,248,,,,,232,232,,248,232,,232,,,248,,,,248,248,',
395
+ '248,248,,204,204,248,,232,,248,,,,232,232,232,232,232,232,232,232,232',
396
+ '232,,232,232,,50,50,,232,232,232,232,232,,,232,,,,204,,,204,232,,,,',
397
+ '232,232,,,,232,232,,232,232,138,,,232,204,50,,232,50,138,138,138,138',
398
+ '138,138,204,138,,138,,,138,138,138,138,,,,50,,,,,,,,,,,50,138,,,,138',
399
+ '138,,,138,138,138,138,138,138,,138,138,,,,,264,138,264,,,264,,,,264',
400
+ '264,264,264,264,264,,264,,264,138,,264,264,264,264,,,,,,,,,,,,,,,,264',
401
+ ',,,264,264,,,264,264,264,264,264,264,143,264,264,,,143,,,264,143,143',
402
+ '143,143,143,143,,143,,143,,,143,143,143,143,,264,,,,,,,,,,,,,,143,,',
403
+ ',143,143,,,143,143,143,143,143,143,,143,143,,,,,122,143,122,,,,,,,122',
404
+ '122,122,122,122,122,,122,,122,143,,122,122,122,122,,,,,,,,,,,,,,,,122',
405
+ ',,,122,122,,,122,122,122,122,122,122,147,122,122,,,,,,122,147,147,147',
406
+ '147,147,147,,147,,147,,,147,147,147,147,,122,,,,,,,,,,,,,,147,,,,147',
407
+ '147,,,147,147,147,147,147,147,,147,147,,,,,121,147,121,,,,,,,121,121',
408
+ '121,121,121,121,,121,,121,147,,121,121,121,121,,,,,,,,,,,,,,,,121,,',
409
+ ',121,121,,,121,121,121,121,121,121,,121,121,,,,,120,121,120,,,,,,,120',
410
+ '120,120,120,120,120,,120,,120,121,,120,120,120,120,,,,,,,,,,,,,,,,120',
411
+ ',,,120,120,,,120,120,120,120,120,120,,120,120,,,,,118,120,118,,,,,,',
412
+ '118,118,118,118,118,118,,118,,118,120,,118,118,118,118,,,,,,,,,,,,,',
413
+ ',,118,,,,118,118,,,118,118,118,118,118,118,112,118,118,,,,,,118,112',
414
+ '112,112,112,112,112,,112,,112,,112,112,112,112,112,,118,,,,,,,,,,,,',
415
+ ',112,,,,112,112,,,112,112,112,112,112,112,154,112,112,,,,,,112,154,154',
416
+ '154,154,154,154,,154,,154,,,154,154,154,154,,112,,,,,,,,,,,,,,154,,',
417
+ ',154,154,,,154,154,154,154,154,154,322,154,154,,,,,,154,322,322,322',
418
+ '322,322,322,,322,,322,154,154,322,322,322,322,,154,,,,,,,,,,,,,,322',
419
+ ',,,322,322,,,322,322,322,322,322,322,325,322,322,,,,,,322,325,325,325',
420
+ '325,325,325,,325,,325,,,325,325,325,325,,322,,,,,,,,,,,,,,325,,,,325',
421
+ '325,,,325,325,325,325,325,325,331,325,325,,,,,,325,331,331,331,331,331',
422
+ '331,,331,,331,,,331,331,331,331,,325,,,,,,,,,,,,,,331,,,,331,331,,,331',
423
+ '331,331,331,331,331,214,331,331,,,,,,331,214,214,214,214,214,214,,214',
424
+ ',214,,,214,214,214,214,,331,,,,,,,,,,,,,,214,,,,214,214,,,214,214,214',
425
+ '214,214,214,339,214,214,,,,,,214,339,339,339,339,339,339,,339,,339,',
426
+ ',339,339,339,339,,214,,,,,,,,,,,,,,339,,,,339,339,,,339,339,339,339',
427
+ '339,339,340,339,339,,,,,,339,340,340,340,340,340,340,,340,167,340,,168',
428
+ '340,340,340,340,,339,,,,,167,,167,168,167,168,,168,,340,,,,340,340,',
429
+ ',340,340,340,340,340,340,,340,340,167,,,168,,340,,,,,167,167,172,168',
430
+ '168,167,167,,168,168,,,167,340,,168,172,,172,,172,,,,,346,,,,,167,,',
431
+ '168,346,346,346,346,346,346,,346,172,346,,,346,346,346,346,172,172,172',
432
+ '172,,,,172,172,,,,,,172,346,,,,346,346,,,346,346,346,346,346,346,190',
433
+ '346,346,172,,,,,346,190,190,190,190,190,190,190,190,,190,,,190,190,190',
434
+ '190,,346,,,,,,,,,,,,,,190,,,,190,190,,,190,190,190,190,190,190,,190',
435
+ '190,,,,,11,190,11,,,,,,,11,11,11,11,11,11,,11,173,11,190,,11,11,11,11',
436
+ ',,,,,,173,,173,,173,,,,,11,,,,11,11,,,11,11,11,11,11,11,,11,11,173,',
437
+ ',174,,11,,,173,173,173,173,,,,173,173,174,,174,175,174,173,11,,,,,,',
438
+ ',,,,175,,175,,175,,173,,,174,,,,,,,,174,174,174,174,174,174,,174,174',
439
+ '175,,,,,174,,,175,175,175,175,175,175,176,175,175,,,,,,175,174,,,,176',
440
+ '176,,176,177,176,,,176,,,,,175,,,,177,177,,177,,177,,,177,,176,,,,,',
441
+ ',,176,176,176,176,176,176,,176,176,177,,,,,176,,,177,177,177,177,177',
442
+ '177,178,177,177,,,,,,177,176,,,,178,178,,178,179,178,,,178,,,,,177,',
443
+ ',,179,179,,179,,179,,,179,,178,,,,,,,,178,178,178,178,178,178,,178,178',
444
+ '179,,,,,178,,,179,179,179,179,179,179,180,179,179,,,,,,179,178,,,180',
445
+ '180,180,,180,,180,,181,180,180,180,180,,179,,,,,,181,181,181,,181,,181',
446
+ ',180,181,181,181,181,,,,180,180,180,180,180,180,,180,180,,,,181,,180',
447
+ ',,181,,,181,181,181,181,181,181,182,181,181,,,,180,,181,182,182,182',
448
+ '182,182,182,,182,,182,,,182,182,182,182,,181,,,,,,,,,,,,,,182,,,,182',
449
+ '182,,,182,182,182,182,182,182,185,182,182,,,185,,,182,185,185,185,185',
450
+ '185,185,,185,,185,,,185,185,185,185,,182,,,,,,,,,,,,,,185,,,,185,185',
451
+ ',,185,185,185,185,185,185,184,185,185,,,,,,185,184,184,184,184,184,184',
452
+ ',184,,184,,,184,184,184,184,,185,,,,,,,,,,,,,,184,,,,184,184,,,184,184',
453
+ '184,184,184,184,183,184,184,,,,,,184,183,183,183,183,183,183,,183,170',
454
+ '183,,169,183,183,183,183,,184,,,,,170,,170,169,170,169,,169,,183,,,',
455
+ '183,183,,171,183,183,183,183,183,183,,183,183,170,,,169,171,183,171',
456
+ ',171,,,,,,,170,170,,169,169,,,170,183,,169,,,,,171,,,,,,,,,,,,,,,171',
457
+ '171,,276,276,276,276,171,276,276,276,276,276,,276,276,,,,,,,276,276',
458
+ '276,271,271,271,271,,271,271,271,271,271,,271,271,,,276,276,,,271,271',
459
+ '271,213,213,213,213,,213,213,213,213,213,,213,213,,,271,271,,,213,213',
460
+ '213,,,,,,,,,,,,,,,,213,213' ]
461
+ racc_action_check = arr = ::Array.new(6523, nil)
447
462
  idx = 0
448
463
  clist.each do |str|
449
464
  str.split(',', -1).each do |i|
@@ -453,251 +468,242 @@ clist = [
453
468
  end
454
469
 
455
470
  racc_action_pointer = [
456
- -2, 295, nil, nil, nil, 108, 280, nil, 220, nil,
457
- nil, 5532, 328, 382, 436, nil, nil, nil, nil, nil,
471
+ -2, 292, nil, nil, nil, 114, 277, nil, 106, nil,
472
+ nil, 5820, 346, 404, 462, nil, nil, nil, nil, nil,
458
473
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
459
- nil, nil, nil, nil, nil, nil, nil, nil, 254, 191,
460
- 229, 652, 706, 760, 814, 147, 203, nil, 48, 407,
461
- nil, 1086, 1140, 1196, nil, nil, nil, nil, 1250, nil,
462
- 156, 160, nil, 1416, nil, nil, nil, nil, nil, nil,
463
- nil, 225, 1526, 212, 1634, 1688, 1742, 1796, 1850, 1904,
464
- 1958, 2012, 2066, 2120, 2174, 2228, 2282, 2336, 2390, 2444,
465
- 2498, 2552, 2606, 2660, 2714, 2768, 2822, 2876, 2930, 2984,
466
- 3038, 3092, 165, 3202, 178, 3310, 3364, 602, 79, 112,
467
- 4923, 3636, nil, 121, 30, 3798, 4869, nil, 4810, 4751,
468
- 4638, 72, 4122, 10, nil, nil, nil, nil, 82, 27,
469
- nil, 170, nil, nil, nil, nil, 4466, 71, nil, 61,
470
- nil, 4579, 57, nil, nil, 4692, nil, 164, nil, 159,
471
- 3852, -15, 4977, 1362, nil, 125, nil, nil, nil, nil,
472
- nil, 74, 8, 2, 440, 5320, 5365, 494, 174, 548,
473
- 5551, 5596, 5615, 5660, 5685, 5705, 5730, 5775, 5820, 5865,
474
- 5919, 6081, 6027, 5973, nil, nil, 274, nil, 5473, 598,
475
- 868, 922, 208, 232, nil, nil, -8, nil, -2, -9,
476
- 55, -23, 353, -1, -4, nil, nil, nil, nil, nil,
477
- nil, 6163, 5193, 192, nil, 195, nil, 189, 94, nil,
478
- 1032, nil, 142, nil, 125, -7, nil, 1306, 3582, 3906,
479
- 4394, 4014, 80, 197, nil, -14, 249, 93, 299, nil,
480
- 102, 251, 4176, nil, 3960, nil, 4340, nil, 4286, nil,
481
- nil, nil, nil, 4230, nil, nil, nil, 205, nil, nil,
482
- nil, nil, 4525, 68, nil, 4068, 3744, 101, nil, 6141,
483
- nil, 116, 3690, 126, 6119, 3526, 3472, 147, nil, nil,
474
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 258,
475
+ 190, 227, 694, 752, 810, 868, 70, 199, nil, 44,
476
+ 4739, nil, nil, 1158, 1216, 1274, nil, nil, nil, nil,
477
+ 1332, nil, 153, 156, nil, 1506, nil, nil, nil, nil,
478
+ nil, nil, nil, 225, 1622, 211, 1738, 1796, 1854, 1912,
479
+ 1970, 2028, 2086, 2144, 2202, 2260, 2318, 2376, 2434, 2492,
480
+ 2550, 2608, 2666, 2724, 2782, 2840, 2898, 2956, 3014, 3072,
481
+ 3130, 3188, 3246, 3304, 161, 3420, 176, 3536, 3594, 350,
482
+ 73, 292, 5235, 3884, nil, 119, -15, 4058, 5181, nil,
483
+ 5120, 5059, 4944, 20, 4406, -7, nil, nil, nil, nil,
484
+ 77, -7, nil, 169, nil, nil, nil, nil, 4768, 20,
485
+ nil, 7, nil, 4883, 73, nil, nil, 4998, nil, 156,
486
+ nil, 141, 4116, -22, 5289, 1448, nil, 123, nil, nil,
487
+ nil, nil, nil, 61, 234, 118, 176, 5630, 5633, 6349,
488
+ 6346, 6376, 5682, 5837, 5880, 5897, 5951, 5968, 6022, 6039,
489
+ 6093, 6113, 6167, 6329, 6275, 6221, nil, nil, 288, nil,
490
+ 5759, 636, 926, 984, 206, 225, nil, nil, -8, nil,
491
+ -2, -9, 67, -1, 4715, -1, -4, nil, nil, nil,
492
+ nil, nil, nil, 6453, 5505, 184, nil, 195, nil, 182,
493
+ 95, nil, 1100, nil, 136, nil, 131, -4, nil, 1390,
494
+ 3826, 4174, 4696, 4290, 74, 193, nil, -14, 251, 85,
495
+ 23, nil, 14, 248, 4464, nil, 4232, nil, 4638, nil,
496
+ 4580, nil, nil, nil, nil, 4522, nil, nil, nil, 201,
497
+ nil, nil, nil, nil, 4829, 81, nil, 4348, 4000, 100,
498
+ nil, 6431, nil, 114, 3942, 122, 6409, 3768, 3710, 139,
484
499
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
485
- 3418, 148, nil, 166, nil, 108, 144, 3256, nil, 179,
486
- 92, 182, 161, 4, 3148, nil, 169, 199, 173, 206,
487
- 19, nil, -25, nil, 209, 1580, 1472, nil, nil, nil,
488
- 5031, nil, nil, 5085, nil, nil, nil, 162, -21, 5139,
489
- 234, 976, 234, nil, nil, nil, nil, 5247, 5301, 241,
490
- 182, nil, nil, nil, 5419, 88, nil, 544, 258, 235,
491
- nil, 262, 263, nil, nil, nil, 264, 265, 269, nil,
492
- 490, nil, nil, nil, 255, 279, nil, nil, 281, nil,
493
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 220,
494
- nil, 164, 54, nil, nil, nil, 289, nil, nil, nil,
495
- 291, nil, 294, nil, 297, nil, nil, nil, nil, nil ]
500
+ nil, nil, 3652, 141, nil, 159, nil, 106, 144, 3478,
501
+ nil, 176, 102, 183, 161, 3, 3362, nil, 161, 192,
502
+ 165, 200, 3, nil, 78, nil, 207, 1680, 1564, nil,
503
+ nil, nil, 5343, nil, nil, 5397, nil, nil, nil, 159,
504
+ -10, 5451, 225, 1042, 230, nil, nil, nil, nil, 5559,
505
+ 5613, 241, 181, nil, nil, nil, 5705, 94, nil, 578,
506
+ 254, 232, nil, 259, 263, nil, nil, nil, 267, 268,
507
+ 272, nil, 520, nil, nil, nil, 258, 277, nil, nil,
508
+ 278, nil, nil, nil, nil, nil, nil, nil, nil, nil,
509
+ nil, 230, nil, 172, 56, nil, nil, nil, 286, nil,
510
+ nil, nil, 288, nil, 291, nil, 292, nil, nil, nil,
511
+ nil, nil ]
496
512
 
497
513
  racc_action_default = [
498
- -227, -228, -1, -2, -3, -4, -5, -8, -10, -11,
499
- -16, -107, -228, -228, -228, -45, -46, -47, -48, -49,
514
+ -229, -230, -1, -2, -3, -4, -5, -8, -10, -11,
515
+ -16, -108, -230, -230, -230, -45, -46, -47, -48, -49,
500
516
  -50, -51, -52, -53, -54, -55, -56, -57, -58, -59,
501
- -60, -61, -62, -63, -64, -65, -66, -67, -72, -73,
502
- -77, -228, -228, -228, -228, -228, -118, -120, -228, -228,
503
- -165, -228, -228, -228, -178, -179, -180, -181, -228, -183,
504
- -228, -194, -197, -228, -202, -203, -204, -205, -206, -207,
505
- -208, -228, -228, -7, -228, -228, -228, -228, -228, -228,
506
- -228, -228, -228, -228, -228, -228, -228, -228, -228, -228,
507
- -228, -228, -228, -228, -228, -228, -228, -228, -228, -228,
508
- -228, -228, -228, -127, -122, -227, -227, -28, -228, -35,
509
- -228, -228, -74, -228, -228, -228, -228, -84, -228, -228,
510
- -228, -228, -228, -227, -137, -156, -157, -119, -227, -227,
511
- -146, -148, -149, -150, -151, -152, -43, -228, -168, -228,
512
- -171, -228, -228, -174, -175, -187, -182, -228, -190, -228,
513
- -228, -228, -228, -228, 400, -6, -9, -12, -13, -14,
514
- -15, -228, -18, -19, -20, -21, -22, -23, -24, -25,
515
- -26, -27, -29, -30, -31, -32, -33, -34, -36, -37,
516
- -38, -39, -40, -228, -41, -102, -228, -78, -228, -220,
517
- -226, -214, -211, -209, -116, -128, -203, -131, -207, -228,
518
- -217, -215, -223, -205, -206, -213, -218, -219, -221, -222,
519
- -224, -127, -126, -228, -125, -228, -42, -209, -69, -79,
520
- -228, -82, -209, -161, -164, -228, -76, -228, -228, -228,
521
- -127, -228, -211, -227, -158, -228, -228, -228, -228, -154,
522
- -228, -228, -228, -166, -228, -169, -228, -172, -228, -184,
523
- -185, -186, -188, -228, -191, -192, -193, -209, -195, -198,
524
- -200, -201, -107, -228, -17, -228, -228, -209, -104, -127,
525
- -115, -228, -212, -228, -210, -228, -228, -209, -130, -132,
526
- -214, -215, -216, -217, -220, -223, -225, -226, -123, -124,
527
- -210, -228, -71, -228, -81, -228, -210, -228, -75, -228,
528
- -87, -228, -93, -228, -228, -97, -211, -209, -211, -228,
529
- -228, -140, -228, -159, -209, -227, -228, -147, -155, -153,
530
- -44, -167, -170, -177, -173, -176, -189, -228, -228, -106,
531
- -228, -210, -209, -110, -117, -111, -129, -133, -134, -228,
532
- -68, -80, -83, -162, -163, -87, -86, -228, -228, -93,
533
- -92, -228, -228, -101, -96, -98, -228, -228, -228, -113,
534
- -227, -141, -142, -143, -228, -228, -138, -139, -228, -145,
535
- -196, -199, -103, -105, -114, -121, -70, -85, -88, -228,
536
- -91, -228, -228, -108, -109, -112, -228, -160, -135, -144,
537
- -228, -90, -228, -95, -228, -100, -136, -89, -94, -99 ]
517
+ -60, -61, -62, -63, -64, -65, -66, -67, -68, -73,
518
+ -74, -78, -230, -230, -230, -230, -230, -119, -121, -230,
519
+ -230, -157, -167, -230, -230, -230, -180, -181, -182, -183,
520
+ -230, -185, -230, -196, -199, -230, -204, -205, -206, -207,
521
+ -208, -209, -210, -230, -230, -7, -230, -230, -230, -230,
522
+ -230, -230, -230, -230, -230, -230, -230, -230, -230, -230,
523
+ -230, -230, -230, -230, -230, -230, -230, -230, -230, -230,
524
+ -230, -230, -230, -230, -230, -128, -123, -229, -229, -28,
525
+ -230, -35, -230, -230, -75, -230, -230, -230, -230, -85,
526
+ -230, -230, -230, -230, -230, -229, -138, -158, -159, -120,
527
+ -229, -229, -147, -149, -150, -151, -152, -153, -43, -230,
528
+ -170, -230, -173, -230, -230, -176, -177, -189, -184, -230,
529
+ -192, -230, -230, -230, -230, -230, 402, -6, -9, -12,
530
+ -13, -14, -15, -230, -18, -19, -20, -21, -22, -23,
531
+ -24, -25, -26, -27, -29, -30, -31, -32, -33, -34,
532
+ -36, -37, -38, -39, -40, -230, -41, -103, -230, -79,
533
+ -230, -222, -228, -216, -213, -211, -117, -129, -205, -132,
534
+ -209, -230, -219, -217, -225, -207, -208, -215, -220, -221,
535
+ -223, -224, -226, -128, -127, -230, -126, -230, -42, -211,
536
+ -70, -80, -230, -83, -211, -163, -166, -230, -77, -230,
537
+ -230, -230, -128, -230, -213, -229, -160, -230, -230, -230,
538
+ -230, -155, -230, -230, -230, -168, -230, -171, -230, -174,
539
+ -230, -186, -187, -188, -190, -230, -193, -194, -195, -211,
540
+ -197, -200, -202, -203, -108, -230, -17, -230, -230, -211,
541
+ -105, -128, -116, -230, -214, -230, -212, -230, -230, -211,
542
+ -131, -133, -216, -217, -218, -219, -222, -225, -227, -228,
543
+ -124, -125, -212, -230, -72, -230, -82, -230, -212, -230,
544
+ -76, -230, -88, -230, -94, -230, -230, -98, -213, -211,
545
+ -213, -230, -230, -141, -230, -161, -211, -229, -230, -148,
546
+ -156, -154, -44, -169, -172, -179, -175, -178, -191, -230,
547
+ -230, -107, -230, -212, -211, -111, -118, -112, -130, -134,
548
+ -135, -230, -69, -81, -84, -164, -165, -88, -87, -230,
549
+ -230, -94, -93, -230, -230, -102, -97, -99, -230, -230,
550
+ -230, -114, -229, -142, -143, -144, -230, -230, -139, -140,
551
+ -230, -146, -198, -201, -104, -106, -115, -122, -71, -86,
552
+ -89, -230, -92, -230, -230, -109, -110, -113, -230, -162,
553
+ -136, -145, -230, -91, -230, -96, -230, -101, -137, -90,
554
+ -95, -100 ]
538
555
 
539
556
  racc_goto_table = [
540
- 2, 112, 4, 146, 107, 109, 110, 128, 134, 185,
541
- 259, 132, 222, 193, 365, 350, 184, 233, 346, 192,
542
- 156, 271, 236, 334, 305, 157, 158, 159, 160, 73,
543
- 317, 269, 318, 116, 118, 119, 120, 352, 232, 336,
544
- 137, 139, 267, 136, 136, 141, 213, 215, 304, 257,
545
- 145, 378, 310, 361, 237, 152, 219, 343, 325, 386,
546
- 254, 309, 380, 377, 255, 3, 252, 253, 161, 251,
547
- 148, 136, 162, 163, 164, 165, 166, 167, 168, 169,
557
+ 2, 114, 4, 130, 109, 111, 112, 148, 136, 134,
558
+ 261, 187, 195, 194, 224, 273, 352, 367, 186, 235,
559
+ 348, 215, 217, 307, 238, 159, 160, 161, 162, 319,
560
+ 158, 320, 234, 75, 118, 120, 121, 122, 336, 271,
561
+ 275, 354, 338, 139, 141, 138, 138, 143, 269, 306,
562
+ 380, 259, 147, 312, 363, 311, 239, 154, 221, 345,
563
+ 327, 256, 388, 382, 293, 379, 257, 3, 254, 297,
564
+ 255, 163, 253, 138, 164, 165, 166, 167, 168, 169,
548
565
  170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
549
- 180, 181, 182, 183, 268, 188, 155, 212, 212, 355,
550
- 217, 150, 1, 136, 225, nil, nil, 136, nil, nil,
551
- 273, nil, nil, nil, 188, nil, nil, nil, nil, nil,
552
- nil, 277, nil, nil, nil, 234, nil, nil, nil, nil,
553
- 234, 239, nil, 314, 291, 356, nil, 358, nil, 295,
554
- 307, nil, nil, nil, nil, 262, 306, 308, nil, nil,
555
- 256, nil, nil, 263, nil, nil, nil, nil, nil, 128,
556
- nil, 134, nil, nil, 132, nil, nil, nil, nil, nil,
557
- nil, nil, nil, nil, 327, nil, nil, nil, 183, 332,
558
- 292, 116, 118, 119, 330, nil, 371, nil, nil, nil,
559
- nil, nil, nil, nil, 339, nil, nil, 134, 326, 134,
560
- 132, nil, 132, nil, nil, nil, nil, nil, nil, nil,
566
+ 180, 181, 182, 183, 184, 185, 270, 190, 357, 214,
567
+ 214, 150, 157, 219, 329, 138, 152, 227, 1, 138,
568
+ nil, nil, nil, nil, 332, nil, 190, nil, nil, nil,
569
+ 279, nil, nil, nil, 341, nil, nil, 236, nil, 358,
570
+ nil, 360, 236, 241, nil, 316, nil, nil, nil, 309,
571
+ 308, 310, nil, nil, nil, nil, nil, 264, nil, nil,
572
+ nil, nil, 258, nil, 359, 265, 130, nil, nil, nil,
573
+ nil, 366, 136, 134, nil, nil, nil, nil, nil, nil,
574
+ nil, nil, nil, nil, nil, nil, nil, nil, 334, 376,
575
+ 185, 294, nil, 118, 120, 121, 373, nil, nil, nil,
576
+ nil, nil, nil, nil, nil, nil, nil, nil, 136, 134,
577
+ 136, 134, 328, nil, nil, nil, nil, nil, nil, nil,
561
578
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
562
- 293, 136, 188, 188, 357, nil, nil, 299, 301, nil,
563
- nil, 364, nil, nil, 320, 311, 320, nil, 323, 373,
564
- 141, nil, nil, nil, nil, 145, nil, nil, nil, 374,
565
- nil, nil, nil, nil, nil, nil, nil, 320, 329, nil,
566
- nil, nil, nil, nil, 188, nil, nil, 337, 338, nil,
567
- nil, 362, nil, nil, nil, nil, nil, nil, nil, nil,
568
- nil, nil, 320, nil, nil, nil, nil, nil, nil, 344,
569
- nil, nil, nil, nil, nil, nil, 136, nil, nil, nil,
570
- nil, nil, 376, nil, nil, nil, nil, nil, nil, nil,
571
- nil, nil, nil, nil, nil, nil, 368, 367, nil, nil,
572
- nil, nil, nil, 183, nil, nil, nil, nil, nil, nil,
573
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 116,
579
+ nil, nil, 295, 138, 190, 190, nil, nil, nil, 301,
580
+ 303, nil, nil, nil, nil, nil, 322, 313, 322, nil,
581
+ 325, 375, 143, nil, nil, nil, nil, 147, nil, nil,
582
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 322,
583
+ 331, nil, nil, nil, nil, nil, 190, nil, 364, 339,
584
+ 340, nil, nil, nil, nil, nil, nil, nil, nil, nil,
585
+ nil, nil, nil, nil, 322, nil, nil, nil, nil, nil,
586
+ nil, 346, nil, nil, nil, nil, nil, nil, 138, nil,
587
+ nil, nil, nil, 378, nil, nil, nil, nil, nil, nil,
588
+ nil, nil, nil, nil, nil, nil, nil, nil, 370, 369,
589
+ nil, nil, nil, nil, nil, 185, nil, nil, nil, nil,
574
590
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
591
+ nil, 118, nil, nil, nil, nil, nil, nil, nil, nil,
575
592
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
576
- nil, nil, 367, nil, nil, nil, nil, nil, nil, nil,
577
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 390,
578
- nil, 392, 394 ]
593
+ nil, nil, nil, nil, 369, nil, nil, nil, nil, nil,
594
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
595
+ nil, 392, nil, 394, 396 ]
579
596
 
580
597
  racc_goto_check = [
581
- 2, 39, 4, 81, 10, 10, 10, 64, 31, 51,
582
- 88, 37, 44, 56, 66, 47, 13, 65, 46, 54,
583
- 7, 55, 65, 57, 49, 8, 8, 8, 8, 6,
584
- 72, 58, 72, 10, 10, 10, 10, 50, 54, 61,
585
- 12, 12, 52, 10, 10, 10, 60, 60, 48, 44,
586
- 10, 45, 68, 69, 71, 10, 43, 74, 76, 66,
587
- 77, 55, 47, 46, 78, 3, 82, 83, 12, 85,
588
- 86, 10, 10, 10, 10, 10, 10, 10, 10, 10,
598
+ 2, 40, 4, 65, 10, 10, 10, 82, 32, 38,
599
+ 89, 52, 57, 55, 45, 56, 48, 67, 13, 66,
600
+ 47, 61, 61, 50, 66, 8, 8, 8, 8, 73,
601
+ 7, 73, 55, 6, 10, 10, 10, 10, 58, 59,
602
+ 39, 51, 62, 12, 12, 10, 10, 10, 53, 49,
603
+ 46, 45, 10, 69, 70, 56, 72, 10, 44, 75,
604
+ 77, 78, 67, 48, 39, 47, 79, 3, 83, 39,
605
+ 84, 12, 86, 10, 10, 10, 10, 10, 10, 10,
589
606
  10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
590
- 10, 10, 10, 10, 51, 10, 6, 10, 10, 49,
591
- 12, 87, 1, 10, 12, nil, nil, 10, nil, nil,
592
- 38, nil, nil, nil, 10, nil, nil, nil, nil, nil,
593
- nil, 56, nil, nil, nil, 4, nil, nil, nil, nil,
594
- 4, 4, nil, 44, 38, 55, nil, 55, nil, 38,
595
- 56, nil, nil, nil, nil, 10, 54, 54, nil, nil,
596
- 2, nil, nil, 2, nil, nil, nil, nil, nil, 64,
597
- nil, 31, nil, nil, 37, nil, nil, nil, nil, nil,
598
- nil, nil, nil, nil, 38, nil, nil, nil, 10, 56,
599
- 39, 10, 10, 10, 38, nil, 88, nil, nil, nil,
600
- nil, nil, nil, nil, 38, nil, nil, 31, 81, 31,
601
- 37, nil, 37, nil, nil, nil, nil, nil, nil, nil,
607
+ 10, 10, 10, 10, 10, 10, 52, 10, 50, 10,
608
+ 10, 87, 6, 12, 39, 10, 88, 12, 1, 10,
609
+ nil, nil, nil, nil, 39, nil, 10, nil, nil, nil,
610
+ 57, nil, nil, nil, 39, nil, nil, 4, nil, 56,
611
+ nil, 56, 4, 4, nil, 45, nil, nil, nil, 57,
612
+ 55, 55, nil, nil, nil, nil, nil, 10, nil, nil,
613
+ nil, nil, 2, nil, 39, 2, 65, nil, nil, nil,
614
+ nil, 39, 32, 38, nil, nil, nil, nil, nil, nil,
615
+ nil, nil, nil, nil, nil, nil, nil, nil, 57, 39,
616
+ 10, 40, nil, 10, 10, 10, 89, nil, nil, nil,
617
+ nil, nil, nil, nil, nil, nil, nil, nil, 32, 38,
618
+ 32, 38, 82, nil, nil, nil, nil, nil, nil, nil,
602
619
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
603
- 2, 10, 10, 10, 38, nil, nil, 2, 2, nil,
604
- nil, 38, nil, nil, 10, 4, 10, nil, 10, 51,
605
- 10, nil, nil, nil, nil, 10, nil, nil, nil, 38,
606
- nil, nil, nil, nil, nil, nil, nil, 10, 10, nil,
607
- nil, nil, nil, nil, 10, nil, nil, 10, 10, nil,
608
- nil, 64, nil, nil, nil, nil, nil, nil, nil, nil,
609
- nil, nil, 10, nil, nil, nil, nil, nil, nil, 10,
610
- nil, nil, nil, nil, nil, nil, 10, nil, nil, nil,
611
- nil, nil, 39, nil, nil, nil, nil, nil, nil, nil,
612
- nil, nil, nil, nil, nil, nil, 2, 4, nil, nil,
613
- nil, nil, nil, 10, nil, nil, nil, nil, nil, nil,
620
+ nil, nil, 2, 10, 10, 10, nil, nil, nil, 2,
621
+ 2, nil, nil, nil, nil, nil, 10, 4, 10, nil,
622
+ 10, 52, 10, nil, nil, nil, nil, 10, nil, nil,
614
623
  nil, nil, nil, nil, nil, nil, nil, nil, nil, 10,
624
+ 10, nil, nil, nil, nil, nil, 10, nil, 65, 10,
625
+ 10, nil, nil, nil, nil, nil, nil, nil, nil, nil,
626
+ nil, nil, nil, nil, 10, nil, nil, nil, nil, nil,
627
+ nil, 10, nil, nil, nil, nil, nil, nil, 10, nil,
628
+ nil, nil, nil, 40, nil, nil, nil, nil, nil, nil,
629
+ nil, nil, nil, nil, nil, nil, nil, nil, 2, 4,
630
+ nil, nil, nil, nil, nil, 10, nil, nil, nil, nil,
631
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
632
+ nil, 10, nil, nil, nil, nil, nil, nil, nil, nil,
615
633
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
634
+ nil, nil, nil, nil, 4, nil, nil, nil, nil, nil,
616
635
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
617
- nil, nil, 4, nil, nil, nil, nil, nil, nil, nil,
618
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 2,
619
- nil, 2, 2 ]
636
+ nil, 2, nil, 2, 2 ]
620
637
 
621
638
  racc_goto_pointer = [
622
- nil, 102, 0, 65, 2, nil, 24, -54, -50, nil,
623
- -8, nil, -11, -85, nil, nil, nil, nil, nil, nil,
639
+ nil, 108, 0, 67, 2, nil, 28, -46, -52, nil,
640
+ -8, nil, -10, -85, nil, nil, nil, nil, nil, nil,
624
641
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
625
- nil, -41, nil, nil, nil, nil, nil, -38, -83, -38,
626
- nil, nil, nil, -57, -102, -296, -282, -287, -181, -205,
627
- -266, -92, -144, nil, -84, -171, -90, -249, -157, nil,
628
- -59, -235, nil, nil, -41, -106, -301, nil, -181, -259,
629
- nil, -75, -208, nil, -239, nil, -190, -89, -85, nil,
630
- nil, -55, -81, -80, nil, -78, 10, 40, -142 ]
642
+ nil, nil, -42, nil, nil, nil, nil, nil, -41, -155,
643
+ -39, nil, nil, nil, -57, -102, -299, -282, -288, -182,
644
+ -208, -264, -92, -140, nil, -92, -179, -93, -236, -151,
645
+ nil, -86, -234, nil, nil, -46, -106, -300, nil, -182,
646
+ -260, nil, -75, -211, nil, -239, nil, -190, -90, -85,
647
+ nil, nil, -53, -81, -79, nil, -77, 39, 43, -144 ]
631
648
 
632
649
  racc_goto_default = [
633
- nil, nil, 366, nil, 214, 5, 6, 7, 8, 9,
634
- 11, 10, 303, nil, 15, 38, 16, 17, 18, 19,
650
+ nil, nil, 368, nil, 216, 5, 6, 7, 8, 9,
651
+ 11, 10, 305, nil, 15, 39, 16, 17, 18, 19,
635
652
  20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
636
- 30, 31, 32, 33, 34, 35, 36, 37, nil, nil,
637
- 39, 40, 113, nil, nil, 117, nil, nil, nil, nil,
638
- nil, nil, nil, 44, nil, nil, nil, 194, nil, 104,
639
- nil, 195, 199, 197, 124, nil, nil, 123, nil, nil,
640
- 129, nil, 130, 131, 223, 142, 144, 54, 55, 56,
641
- 58, nil, nil, nil, 147, nil, nil, nil, nil ]
653
+ 30, 31, 32, 33, 34, 35, 36, 37, 38, nil,
654
+ nil, 40, 41, 115, nil, nil, 119, nil, nil, nil,
655
+ nil, nil, nil, nil, 45, nil, nil, nil, 196, nil,
656
+ 106, nil, 197, 201, 199, 126, nil, nil, 125, nil,
657
+ nil, 131, nil, 132, 133, 225, 144, 146, 56, 57,
658
+ 58, 60, nil, nil, nil, 149, nil, nil, nil, nil ]
642
659
 
643
660
  racc_reduce_table = [
644
661
  0, 0, :racc_error,
645
- 1, 89, :_reduce_1,
646
- 1, 89, :_reduce_2,
647
- 1, 89, :_reduce_none,
648
- 1, 90, :_reduce_4,
649
- 1, 93, :_reduce_5,
650
- 3, 93, :_reduce_6,
651
- 2, 93, :_reduce_7,
652
- 1, 94, :_reduce_8,
653
- 3, 94, :_reduce_9,
654
- 1, 95, :_reduce_none,
655
- 1, 96, :_reduce_11,
656
- 3, 96, :_reduce_12,
657
- 3, 96, :_reduce_13,
658
- 3, 96, :_reduce_14,
659
- 3, 96, :_reduce_15,
660
- 1, 98, :_reduce_none,
661
- 4, 98, :_reduce_17,
662
- 3, 98, :_reduce_18,
663
- 3, 98, :_reduce_19,
664
- 3, 98, :_reduce_20,
665
- 3, 98, :_reduce_21,
666
- 3, 98, :_reduce_22,
667
- 3, 98, :_reduce_23,
668
- 3, 98, :_reduce_24,
669
- 3, 98, :_reduce_25,
670
- 3, 98, :_reduce_26,
671
- 3, 98, :_reduce_27,
672
- 2, 98, :_reduce_28,
673
- 3, 98, :_reduce_29,
674
- 3, 98, :_reduce_30,
675
- 3, 98, :_reduce_31,
676
- 3, 98, :_reduce_32,
677
- 3, 98, :_reduce_33,
678
- 3, 98, :_reduce_34,
679
- 2, 98, :_reduce_35,
680
- 3, 98, :_reduce_36,
681
- 3, 98, :_reduce_37,
682
- 3, 98, :_reduce_38,
683
- 3, 98, :_reduce_39,
684
- 3, 98, :_reduce_40,
685
- 3, 98, :_reduce_41,
686
- 3, 98, :_reduce_42,
687
- 1, 100, :_reduce_43,
688
- 3, 100, :_reduce_44,
662
+ 1, 90, :_reduce_1,
663
+ 1, 90, :_reduce_2,
664
+ 1, 90, :_reduce_none,
665
+ 1, 91, :_reduce_4,
666
+ 1, 94, :_reduce_5,
667
+ 3, 94, :_reduce_6,
668
+ 2, 94, :_reduce_7,
669
+ 1, 95, :_reduce_8,
670
+ 3, 95, :_reduce_9,
671
+ 1, 96, :_reduce_none,
672
+ 1, 97, :_reduce_11,
673
+ 3, 97, :_reduce_12,
674
+ 3, 97, :_reduce_13,
675
+ 3, 97, :_reduce_14,
676
+ 3, 97, :_reduce_15,
689
677
  1, 99, :_reduce_none,
690
- 1, 103, :_reduce_none,
691
- 1, 103, :_reduce_none,
692
- 1, 103, :_reduce_none,
693
- 1, 103, :_reduce_none,
694
- 1, 103, :_reduce_none,
695
- 1, 103, :_reduce_none,
696
- 1, 103, :_reduce_none,
697
- 1, 103, :_reduce_none,
698
- 1, 103, :_reduce_none,
699
- 1, 103, :_reduce_none,
700
- 1, 103, :_reduce_none,
678
+ 4, 99, :_reduce_17,
679
+ 3, 99, :_reduce_18,
680
+ 3, 99, :_reduce_19,
681
+ 3, 99, :_reduce_20,
682
+ 3, 99, :_reduce_21,
683
+ 3, 99, :_reduce_22,
684
+ 3, 99, :_reduce_23,
685
+ 3, 99, :_reduce_24,
686
+ 3, 99, :_reduce_25,
687
+ 3, 99, :_reduce_26,
688
+ 3, 99, :_reduce_27,
689
+ 2, 99, :_reduce_28,
690
+ 3, 99, :_reduce_29,
691
+ 3, 99, :_reduce_30,
692
+ 3, 99, :_reduce_31,
693
+ 3, 99, :_reduce_32,
694
+ 3, 99, :_reduce_33,
695
+ 3, 99, :_reduce_34,
696
+ 2, 99, :_reduce_35,
697
+ 3, 99, :_reduce_36,
698
+ 3, 99, :_reduce_37,
699
+ 3, 99, :_reduce_38,
700
+ 3, 99, :_reduce_39,
701
+ 3, 99, :_reduce_40,
702
+ 3, 99, :_reduce_41,
703
+ 3, 99, :_reduce_42,
704
+ 1, 101, :_reduce_43,
705
+ 3, 101, :_reduce_44,
706
+ 1, 100, :_reduce_none,
701
707
  1, 104, :_reduce_none,
702
708
  1, 104, :_reduce_none,
703
709
  1, 104, :_reduce_none,
@@ -707,172 +713,185 @@ racc_reduce_table = [
707
713
  1, 104, :_reduce_none,
708
714
  1, 104, :_reduce_none,
709
715
  1, 104, :_reduce_none,
710
- 1, 120, :_reduce_66,
711
- 1, 120, :_reduce_67,
712
- 5, 102, :_reduce_68,
713
- 3, 102, :_reduce_69,
714
- 6, 102, :_reduce_70,
715
- 4, 102, :_reduce_71,
716
- 1, 102, :_reduce_72,
717
- 1, 106, :_reduce_73,
718
- 2, 106, :_reduce_74,
719
- 4, 128, :_reduce_75,
720
- 3, 128, :_reduce_76,
721
- 1, 128, :_reduce_77,
722
- 3, 129, :_reduce_78,
723
- 2, 127, :_reduce_79,
724
- 3, 131, :_reduce_80,
725
- 2, 131, :_reduce_81,
726
- 2, 130, :_reduce_82,
727
- 4, 130, :_reduce_83,
728
- 2, 109, :_reduce_84,
729
- 5, 133, :_reduce_85,
730
- 4, 133, :_reduce_86,
731
- 0, 134, :_reduce_none,
732
- 2, 134, :_reduce_88,
733
- 4, 134, :_reduce_89,
734
- 3, 134, :_reduce_90,
735
- 6, 110, :_reduce_91,
736
- 5, 110, :_reduce_92,
737
- 0, 135, :_reduce_none,
738
- 4, 135, :_reduce_94,
739
- 3, 135, :_reduce_95,
740
- 5, 108, :_reduce_96,
741
- 1, 136, :_reduce_97,
742
- 2, 136, :_reduce_98,
743
- 5, 137, :_reduce_99,
744
- 4, 137, :_reduce_100,
745
- 1, 138, :_reduce_101,
746
- 1, 101, :_reduce_none,
747
- 4, 101, :_reduce_103,
748
- 1, 140, :_reduce_104,
749
- 3, 140, :_reduce_105,
750
- 3, 139, :_reduce_106,
751
- 1, 97, :_reduce_107,
752
- 6, 97, :_reduce_108,
753
- 6, 97, :_reduce_109,
754
- 5, 97, :_reduce_110,
755
- 5, 97, :_reduce_111,
756
- 6, 97, :_reduce_112,
757
- 5, 97, :_reduce_113,
758
- 4, 145, :_reduce_114,
759
- 1, 146, :_reduce_115,
760
- 1, 142, :_reduce_116,
761
- 3, 142, :_reduce_117,
762
- 1, 141, :_reduce_118,
763
- 2, 141, :_reduce_119,
764
- 1, 141, :_reduce_120,
765
- 6, 107, :_reduce_121,
766
- 2, 107, :_reduce_122,
767
- 3, 147, :_reduce_123,
768
- 3, 147, :_reduce_124,
769
- 1, 148, :_reduce_none,
770
- 1, 148, :_reduce_none,
771
- 0, 144, :_reduce_127,
772
- 1, 144, :_reduce_128,
773
- 3, 144, :_reduce_129,
774
- 1, 150, :_reduce_none,
716
+ 1, 104, :_reduce_none,
717
+ 1, 104, :_reduce_none,
718
+ 1, 104, :_reduce_none,
719
+ 1, 105, :_reduce_none,
720
+ 1, 105, :_reduce_none,
721
+ 1, 105, :_reduce_none,
722
+ 1, 105, :_reduce_none,
723
+ 1, 105, :_reduce_none,
724
+ 1, 105, :_reduce_none,
725
+ 1, 105, :_reduce_none,
726
+ 1, 105, :_reduce_none,
727
+ 1, 105, :_reduce_none,
728
+ 1, 122, :_reduce_67,
729
+ 1, 122, :_reduce_68,
730
+ 5, 103, :_reduce_69,
731
+ 3, 103, :_reduce_70,
732
+ 6, 103, :_reduce_71,
733
+ 4, 103, :_reduce_72,
734
+ 1, 103, :_reduce_73,
735
+ 1, 107, :_reduce_74,
736
+ 2, 107, :_reduce_75,
737
+ 4, 130, :_reduce_76,
738
+ 3, 130, :_reduce_77,
739
+ 1, 130, :_reduce_78,
740
+ 3, 131, :_reduce_79,
741
+ 2, 129, :_reduce_80,
742
+ 3, 133, :_reduce_81,
743
+ 2, 133, :_reduce_82,
744
+ 2, 132, :_reduce_83,
745
+ 4, 132, :_reduce_84,
746
+ 2, 110, :_reduce_85,
747
+ 5, 135, :_reduce_86,
748
+ 4, 135, :_reduce_87,
749
+ 0, 136, :_reduce_none,
750
+ 2, 136, :_reduce_89,
751
+ 4, 136, :_reduce_90,
752
+ 3, 136, :_reduce_91,
753
+ 6, 111, :_reduce_92,
754
+ 5, 111, :_reduce_93,
755
+ 0, 137, :_reduce_none,
756
+ 4, 137, :_reduce_95,
757
+ 3, 137, :_reduce_96,
758
+ 5, 109, :_reduce_97,
759
+ 1, 138, :_reduce_98,
760
+ 2, 138, :_reduce_99,
761
+ 5, 139, :_reduce_100,
762
+ 4, 139, :_reduce_101,
763
+ 1, 140, :_reduce_102,
764
+ 1, 102, :_reduce_none,
765
+ 4, 102, :_reduce_104,
766
+ 1, 142, :_reduce_105,
767
+ 3, 142, :_reduce_106,
768
+ 3, 141, :_reduce_107,
769
+ 1, 98, :_reduce_108,
770
+ 6, 98, :_reduce_109,
771
+ 6, 98, :_reduce_110,
772
+ 5, 98, :_reduce_111,
773
+ 5, 98, :_reduce_112,
774
+ 6, 98, :_reduce_113,
775
+ 5, 98, :_reduce_114,
776
+ 4, 147, :_reduce_115,
777
+ 1, 148, :_reduce_116,
778
+ 1, 144, :_reduce_117,
779
+ 3, 144, :_reduce_118,
780
+ 1, 143, :_reduce_119,
781
+ 2, 143, :_reduce_120,
782
+ 1, 143, :_reduce_121,
783
+ 6, 108, :_reduce_122,
784
+ 2, 108, :_reduce_123,
785
+ 3, 149, :_reduce_124,
786
+ 3, 149, :_reduce_125,
775
787
  1, 150, :_reduce_none,
776
788
  1, 150, :_reduce_none,
777
- 3, 149, :_reduce_133,
778
- 3, 149, :_reduce_134,
779
- 6, 111, :_reduce_135,
780
- 7, 112, :_reduce_136,
781
- 1, 155, :_reduce_137,
782
- 1, 154, :_reduce_none,
783
- 1, 154, :_reduce_none,
789
+ 0, 146, :_reduce_128,
790
+ 1, 146, :_reduce_129,
791
+ 3, 146, :_reduce_130,
792
+ 1, 152, :_reduce_none,
793
+ 1, 152, :_reduce_none,
794
+ 1, 152, :_reduce_none,
795
+ 3, 151, :_reduce_134,
796
+ 3, 151, :_reduce_135,
797
+ 6, 112, :_reduce_136,
798
+ 7, 113, :_reduce_137,
799
+ 1, 157, :_reduce_138,
784
800
  1, 156, :_reduce_none,
785
- 2, 156, :_reduce_141,
786
- 1, 157, :_reduce_none,
787
- 1, 157, :_reduce_none,
788
- 6, 113, :_reduce_144,
789
- 5, 113, :_reduce_145,
790
- 1, 158, :_reduce_146,
791
- 3, 158, :_reduce_147,
792
- 1, 160, :_reduce_148,
793
- 1, 160, :_reduce_149,
794
- 1, 160, :_reduce_150,
795
- 1, 160, :_reduce_none,
796
- 1, 161, :_reduce_152,
797
- 3, 161, :_reduce_153,
801
+ 1, 156, :_reduce_none,
802
+ 1, 158, :_reduce_none,
803
+ 2, 158, :_reduce_142,
804
+ 1, 159, :_reduce_none,
798
805
  1, 159, :_reduce_none,
799
- 2, 159, :_reduce_155,
800
- 1, 152, :_reduce_156,
801
- 1, 152, :_reduce_157,
802
- 1, 153, :_reduce_158,
803
- 2, 153, :_reduce_159,
804
- 4, 153, :_reduce_160,
805
- 1, 132, :_reduce_161,
806
- 3, 132, :_reduce_162,
807
- 3, 162, :_reduce_163,
808
- 1, 162, :_reduce_164,
809
- 1, 105, :_reduce_165,
810
- 3, 115, :_reduce_166,
811
- 4, 115, :_reduce_167,
812
- 2, 115, :_reduce_168,
813
- 3, 115, :_reduce_169,
814
- 4, 115, :_reduce_170,
815
- 2, 115, :_reduce_171,
816
- 3, 118, :_reduce_172,
817
- 4, 118, :_reduce_173,
818
- 2, 118, :_reduce_174,
819
- 1, 163, :_reduce_175,
820
- 3, 163, :_reduce_176,
821
- 3, 164, :_reduce_177,
822
- 1, 125, :_reduce_none,
823
- 1, 125, :_reduce_none,
824
- 1, 125, :_reduce_none,
825
- 1, 165, :_reduce_181,
826
- 2, 166, :_reduce_182,
827
- 1, 168, :_reduce_183,
828
- 1, 170, :_reduce_184,
829
- 1, 171, :_reduce_185,
830
- 2, 169, :_reduce_186,
831
- 1, 172, :_reduce_187,
832
- 1, 173, :_reduce_188,
833
- 2, 173, :_reduce_189,
834
- 2, 167, :_reduce_190,
835
- 2, 174, :_reduce_191,
836
- 2, 174, :_reduce_192,
837
- 3, 91, :_reduce_193,
838
- 0, 175, :_reduce_194,
839
- 2, 175, :_reduce_195,
840
- 4, 175, :_reduce_196,
841
- 1, 114, :_reduce_197,
842
- 3, 114, :_reduce_198,
843
- 5, 114, :_reduce_199,
844
- 1, 176, :_reduce_none,
845
- 1, 176, :_reduce_none,
846
- 1, 121, :_reduce_202,
847
- 1, 124, :_reduce_203,
848
- 1, 122, :_reduce_204,
849
- 1, 123, :_reduce_205,
850
- 1, 117, :_reduce_206,
851
- 1, 116, :_reduce_207,
806
+ 6, 114, :_reduce_145,
807
+ 5, 114, :_reduce_146,
808
+ 1, 160, :_reduce_147,
809
+ 3, 160, :_reduce_148,
810
+ 1, 162, :_reduce_149,
811
+ 1, 162, :_reduce_150,
812
+ 1, 162, :_reduce_151,
813
+ 1, 162, :_reduce_none,
814
+ 1, 163, :_reduce_153,
815
+ 3, 163, :_reduce_154,
816
+ 1, 161, :_reduce_none,
817
+ 2, 161, :_reduce_156,
818
+ 1, 116, :_reduce_157,
819
+ 1, 154, :_reduce_158,
820
+ 1, 154, :_reduce_159,
821
+ 1, 155, :_reduce_160,
822
+ 2, 155, :_reduce_161,
823
+ 4, 155, :_reduce_162,
824
+ 1, 134, :_reduce_163,
825
+ 3, 134, :_reduce_164,
826
+ 3, 164, :_reduce_165,
827
+ 1, 164, :_reduce_166,
828
+ 1, 106, :_reduce_167,
829
+ 3, 117, :_reduce_168,
830
+ 4, 117, :_reduce_169,
831
+ 2, 117, :_reduce_170,
832
+ 3, 117, :_reduce_171,
833
+ 4, 117, :_reduce_172,
834
+ 2, 117, :_reduce_173,
835
+ 3, 120, :_reduce_174,
836
+ 4, 120, :_reduce_175,
837
+ 2, 120, :_reduce_176,
838
+ 1, 165, :_reduce_177,
839
+ 3, 165, :_reduce_178,
840
+ 3, 166, :_reduce_179,
841
+ 1, 127, :_reduce_none,
842
+ 1, 127, :_reduce_none,
843
+ 1, 127, :_reduce_none,
844
+ 1, 167, :_reduce_183,
845
+ 2, 168, :_reduce_184,
846
+ 1, 170, :_reduce_185,
847
+ 1, 172, :_reduce_186,
848
+ 1, 173, :_reduce_187,
849
+ 2, 171, :_reduce_188,
850
+ 1, 174, :_reduce_189,
851
+ 1, 175, :_reduce_190,
852
+ 2, 175, :_reduce_191,
853
+ 2, 169, :_reduce_192,
854
+ 2, 176, :_reduce_193,
855
+ 2, 176, :_reduce_194,
856
+ 3, 92, :_reduce_195,
857
+ 0, 177, :_reduce_196,
858
+ 2, 177, :_reduce_197,
859
+ 4, 177, :_reduce_198,
860
+ 1, 115, :_reduce_199,
861
+ 3, 115, :_reduce_200,
862
+ 5, 115, :_reduce_201,
863
+ 1, 178, :_reduce_none,
864
+ 1, 178, :_reduce_none,
865
+ 1, 123, :_reduce_204,
866
+ 1, 126, :_reduce_205,
867
+ 1, 124, :_reduce_206,
868
+ 1, 125, :_reduce_207,
852
869
  1, 119, :_reduce_208,
853
- 0, 126, :_reduce_none,
854
- 1, 126, :_reduce_210,
855
- 0, 143, :_reduce_none,
856
- 1, 143, :_reduce_none,
857
- 1, 151, :_reduce_none,
858
- 1, 151, :_reduce_none,
859
- 1, 151, :_reduce_none,
860
- 1, 151, :_reduce_none,
861
- 1, 151, :_reduce_none,
862
- 1, 151, :_reduce_none,
863
- 1, 151, :_reduce_none,
864
- 1, 151, :_reduce_none,
865
- 1, 151, :_reduce_none,
866
- 1, 151, :_reduce_none,
867
- 1, 151, :_reduce_none,
868
- 1, 151, :_reduce_none,
869
- 1, 151, :_reduce_none,
870
- 1, 151, :_reduce_none,
871
- 0, 92, :_reduce_227 ]
872
-
873
- racc_reduce_n = 228
874
-
875
- racc_shift_n = 400
870
+ 1, 118, :_reduce_209,
871
+ 1, 121, :_reduce_210,
872
+ 0, 128, :_reduce_none,
873
+ 1, 128, :_reduce_212,
874
+ 0, 145, :_reduce_none,
875
+ 1, 145, :_reduce_none,
876
+ 1, 153, :_reduce_none,
877
+ 1, 153, :_reduce_none,
878
+ 1, 153, :_reduce_none,
879
+ 1, 153, :_reduce_none,
880
+ 1, 153, :_reduce_none,
881
+ 1, 153, :_reduce_none,
882
+ 1, 153, :_reduce_none,
883
+ 1, 153, :_reduce_none,
884
+ 1, 153, :_reduce_none,
885
+ 1, 153, :_reduce_none,
886
+ 1, 153, :_reduce_none,
887
+ 1, 153, :_reduce_none,
888
+ 1, 153, :_reduce_none,
889
+ 1, 153, :_reduce_none,
890
+ 0, 93, :_reduce_229 ]
891
+
892
+ racc_reduce_n = 230
893
+
894
+ racc_shift_n = 402
876
895
 
877
896
  racc_token_table = {
878
897
  false => 0,
@@ -956,15 +975,16 @@ racc_token_table = {
956
975
  :EPP_START => 78,
957
976
  :EPP_END => 79,
958
977
  :EPP_END_TRIM => 80,
959
- :LOW => 81,
960
- :HIGH => 82,
961
- :CALL => 83,
962
- :LISTSTART => 84,
963
- :MODULO => 85,
964
- :TITLE_COLON => 86,
965
- :CASE_COLON => 87 }
978
+ :FUNCTION => 81,
979
+ :LOW => 82,
980
+ :HIGH => 83,
981
+ :CALL => 84,
982
+ :LISTSTART => 85,
983
+ :MODULO => 86,
984
+ :TITLE_COLON => 87,
985
+ :CASE_COLON => 88 }
966
986
 
967
- racc_nt_base = 88
987
+ racc_nt_base = 89
968
988
 
969
989
  racc_use_result_var = true
970
990
 
@@ -1066,6 +1086,7 @@ Racc_token_to_s_table = [
1066
1086
  "EPP_START",
1067
1087
  "EPP_END",
1068
1088
  "EPP_END_TRIM",
1089
+ "FUNCTION",
1069
1090
  "LOW",
1070
1091
  "HIGH",
1071
1092
  "CALL",
@@ -1100,6 +1121,7 @@ Racc_token_to_s_table = [
1100
1121
  "hostclass_expression",
1101
1122
  "node_definition_expression",
1102
1123
  "epp_render_expression",
1124
+ "function_definition",
1103
1125
  "array",
1104
1126
  "boolean",
1105
1127
  "default",
@@ -1169,14 +1191,14 @@ Racc_debug_parser = false
1169
1191
 
1170
1192
  # reduce 0 omitted
1171
1193
 
1172
- module_eval(<<'.,.,', 'egrammar.ra', 64)
1194
+ module_eval(<<'.,.,', 'egrammar.ra', 65)
1173
1195
  def _reduce_1(val, _values, result)
1174
1196
  result = create_program(Factory.block_or_expression(*val[0]))
1175
1197
  result
1176
1198
  end
1177
1199
  .,.,
1178
1200
 
1179
- module_eval(<<'.,.,', 'egrammar.ra', 65)
1201
+ module_eval(<<'.,.,', 'egrammar.ra', 66)
1180
1202
  def _reduce_2(val, _values, result)
1181
1203
  result = create_program(Factory.block_or_expression(*val[0]))
1182
1204
  result
@@ -1185,42 +1207,42 @@ module_eval(<<'.,.,', 'egrammar.ra', 65)
1185
1207
 
1186
1208
  # reduce 3 omitted
1187
1209
 
1188
- module_eval(<<'.,.,', 'egrammar.ra', 70)
1210
+ module_eval(<<'.,.,', 'egrammar.ra', 71)
1189
1211
  def _reduce_4(val, _values, result)
1190
1212
  result = transform_calls(val[0])
1191
1213
  result
1192
1214
  end
1193
1215
  .,.,
1194
1216
 
1195
- module_eval(<<'.,.,', 'egrammar.ra', 76)
1217
+ module_eval(<<'.,.,', 'egrammar.ra', 77)
1196
1218
  def _reduce_5(val, _values, result)
1197
1219
  result = [val[0]]
1198
1220
  result
1199
1221
  end
1200
1222
  .,.,
1201
1223
 
1202
- module_eval(<<'.,.,', 'egrammar.ra', 77)
1224
+ module_eval(<<'.,.,', 'egrammar.ra', 78)
1203
1225
  def _reduce_6(val, _values, result)
1204
1226
  result = val[0].push val[2]
1205
1227
  result
1206
1228
  end
1207
1229
  .,.,
1208
1230
 
1209
- module_eval(<<'.,.,', 'egrammar.ra', 78)
1231
+ module_eval(<<'.,.,', 'egrammar.ra', 79)
1210
1232
  def _reduce_7(val, _values, result)
1211
1233
  result = val[0].push val[1]
1212
1234
  result
1213
1235
  end
1214
1236
  .,.,
1215
1237
 
1216
- module_eval(<<'.,.,', 'egrammar.ra', 82)
1238
+ module_eval(<<'.,.,', 'egrammar.ra', 83)
1217
1239
  def _reduce_8(val, _values, result)
1218
1240
  result = val[0]
1219
1241
  result
1220
1242
  end
1221
1243
  .,.,
1222
1244
 
1223
- module_eval(<<'.,.,', 'egrammar.ra', 83)
1245
+ module_eval(<<'.,.,', 'egrammar.ra', 84)
1224
1246
  def _reduce_9(val, _values, result)
1225
1247
  result = aryfy(val[0]).push val[2]
1226
1248
  result
@@ -1229,35 +1251,35 @@ module_eval(<<'.,.,', 'egrammar.ra', 83)
1229
1251
 
1230
1252
  # reduce 10 omitted
1231
1253
 
1232
- module_eval(<<'.,.,', 'egrammar.ra', 89)
1254
+ module_eval(<<'.,.,', 'egrammar.ra', 90)
1233
1255
  def _reduce_11(val, _values, result)
1234
1256
  result = val[0]
1235
1257
  result
1236
1258
  end
1237
1259
  .,.,
1238
1260
 
1239
- module_eval(<<'.,.,', 'egrammar.ra', 90)
1261
+ module_eval(<<'.,.,', 'egrammar.ra', 91)
1240
1262
  def _reduce_12(val, _values, result)
1241
1263
  result = val[0].relop(val[1][:value], val[2]); loc result, val[1]
1242
1264
  result
1243
1265
  end
1244
1266
  .,.,
1245
1267
 
1246
- module_eval(<<'.,.,', 'egrammar.ra', 91)
1268
+ module_eval(<<'.,.,', 'egrammar.ra', 92)
1247
1269
  def _reduce_13(val, _values, result)
1248
1270
  result = val[0].relop(val[1][:value], val[2]); loc result, val[1]
1249
1271
  result
1250
1272
  end
1251
1273
  .,.,
1252
1274
 
1253
- module_eval(<<'.,.,', 'egrammar.ra', 92)
1275
+ module_eval(<<'.,.,', 'egrammar.ra', 93)
1254
1276
  def _reduce_14(val, _values, result)
1255
1277
  result = val[0].relop(val[1][:value], val[2]); loc result, val[1]
1256
1278
  result
1257
1279
  end
1258
1280
  .,.,
1259
1281
 
1260
- module_eval(<<'.,.,', 'egrammar.ra', 93)
1282
+ module_eval(<<'.,.,', 'egrammar.ra', 94)
1261
1283
  def _reduce_15(val, _values, result)
1262
1284
  result = val[0].relop(val[1][:value], val[2]); loc result, val[1]
1263
1285
  result
@@ -1266,196 +1288,196 @@ module_eval(<<'.,.,', 'egrammar.ra', 93)
1266
1288
 
1267
1289
  # reduce 16 omitted
1268
1290
 
1269
- module_eval(<<'.,.,', 'egrammar.ra', 100)
1291
+ module_eval(<<'.,.,', 'egrammar.ra', 101)
1270
1292
  def _reduce_17(val, _values, result)
1271
1293
  result = val[0][*val[2]] ; loc result, val[0], val[3]
1272
1294
  result
1273
1295
  end
1274
1296
  .,.,
1275
1297
 
1276
- module_eval(<<'.,.,', 'egrammar.ra', 101)
1298
+ module_eval(<<'.,.,', 'egrammar.ra', 102)
1277
1299
  def _reduce_18(val, _values, result)
1278
1300
  result = val[0].in val[2] ; loc result, val[1]
1279
1301
  result
1280
1302
  end
1281
1303
  .,.,
1282
1304
 
1283
- module_eval(<<'.,.,', 'egrammar.ra', 102)
1305
+ module_eval(<<'.,.,', 'egrammar.ra', 103)
1284
1306
  def _reduce_19(val, _values, result)
1285
1307
  result = val[0] =~ val[2] ; loc result, val[1]
1286
1308
  result
1287
1309
  end
1288
1310
  .,.,
1289
1311
 
1290
- module_eval(<<'.,.,', 'egrammar.ra', 103)
1312
+ module_eval(<<'.,.,', 'egrammar.ra', 104)
1291
1313
  def _reduce_20(val, _values, result)
1292
1314
  result = val[0].mne val[2] ; loc result, val[1]
1293
1315
  result
1294
1316
  end
1295
1317
  .,.,
1296
1318
 
1297
- module_eval(<<'.,.,', 'egrammar.ra', 104)
1319
+ module_eval(<<'.,.,', 'egrammar.ra', 105)
1298
1320
  def _reduce_21(val, _values, result)
1299
1321
  result = val[0] + val[2] ; loc result, val[1]
1300
1322
  result
1301
1323
  end
1302
1324
  .,.,
1303
1325
 
1304
- module_eval(<<'.,.,', 'egrammar.ra', 105)
1326
+ module_eval(<<'.,.,', 'egrammar.ra', 106)
1305
1327
  def _reduce_22(val, _values, result)
1306
1328
  result = val[0] - val[2] ; loc result, val[1]
1307
1329
  result
1308
1330
  end
1309
1331
  .,.,
1310
1332
 
1311
- module_eval(<<'.,.,', 'egrammar.ra', 106)
1333
+ module_eval(<<'.,.,', 'egrammar.ra', 107)
1312
1334
  def _reduce_23(val, _values, result)
1313
1335
  result = val[0] / val[2] ; loc result, val[1]
1314
1336
  result
1315
1337
  end
1316
1338
  .,.,
1317
1339
 
1318
- module_eval(<<'.,.,', 'egrammar.ra', 107)
1340
+ module_eval(<<'.,.,', 'egrammar.ra', 108)
1319
1341
  def _reduce_24(val, _values, result)
1320
1342
  result = val[0] * val[2] ; loc result, val[1]
1321
1343
  result
1322
1344
  end
1323
1345
  .,.,
1324
1346
 
1325
- module_eval(<<'.,.,', 'egrammar.ra', 108)
1347
+ module_eval(<<'.,.,', 'egrammar.ra', 109)
1326
1348
  def _reduce_25(val, _values, result)
1327
1349
  result = val[0] % val[2] ; loc result, val[1]
1328
1350
  result
1329
1351
  end
1330
1352
  .,.,
1331
1353
 
1332
- module_eval(<<'.,.,', 'egrammar.ra', 109)
1354
+ module_eval(<<'.,.,', 'egrammar.ra', 110)
1333
1355
  def _reduce_26(val, _values, result)
1334
1356
  result = val[0] << val[2] ; loc result, val[1]
1335
1357
  result
1336
1358
  end
1337
1359
  .,.,
1338
1360
 
1339
- module_eval(<<'.,.,', 'egrammar.ra', 110)
1361
+ module_eval(<<'.,.,', 'egrammar.ra', 111)
1340
1362
  def _reduce_27(val, _values, result)
1341
1363
  result = val[0] >> val[2] ; loc result, val[1]
1342
1364
  result
1343
1365
  end
1344
1366
  .,.,
1345
1367
 
1346
- module_eval(<<'.,.,', 'egrammar.ra', 111)
1368
+ module_eval(<<'.,.,', 'egrammar.ra', 112)
1347
1369
  def _reduce_28(val, _values, result)
1348
1370
  result = val[1].minus() ; loc result, val[0]
1349
1371
  result
1350
1372
  end
1351
1373
  .,.,
1352
1374
 
1353
- module_eval(<<'.,.,', 'egrammar.ra', 112)
1375
+ module_eval(<<'.,.,', 'egrammar.ra', 113)
1354
1376
  def _reduce_29(val, _values, result)
1355
1377
  result = val[0].ne val[2] ; loc result, val[1]
1356
1378
  result
1357
1379
  end
1358
1380
  .,.,
1359
1381
 
1360
- module_eval(<<'.,.,', 'egrammar.ra', 113)
1382
+ module_eval(<<'.,.,', 'egrammar.ra', 114)
1361
1383
  def _reduce_30(val, _values, result)
1362
1384
  result = val[0] == val[2] ; loc result, val[1]
1363
1385
  result
1364
1386
  end
1365
1387
  .,.,
1366
1388
 
1367
- module_eval(<<'.,.,', 'egrammar.ra', 114)
1389
+ module_eval(<<'.,.,', 'egrammar.ra', 115)
1368
1390
  def _reduce_31(val, _values, result)
1369
1391
  result = val[0] > val[2] ; loc result, val[1]
1370
1392
  result
1371
1393
  end
1372
1394
  .,.,
1373
1395
 
1374
- module_eval(<<'.,.,', 'egrammar.ra', 115)
1396
+ module_eval(<<'.,.,', 'egrammar.ra', 116)
1375
1397
  def _reduce_32(val, _values, result)
1376
1398
  result = val[0] >= val[2] ; loc result, val[1]
1377
1399
  result
1378
1400
  end
1379
1401
  .,.,
1380
1402
 
1381
- module_eval(<<'.,.,', 'egrammar.ra', 116)
1403
+ module_eval(<<'.,.,', 'egrammar.ra', 117)
1382
1404
  def _reduce_33(val, _values, result)
1383
1405
  result = val[0] < val[2] ; loc result, val[1]
1384
1406
  result
1385
1407
  end
1386
1408
  .,.,
1387
1409
 
1388
- module_eval(<<'.,.,', 'egrammar.ra', 117)
1410
+ module_eval(<<'.,.,', 'egrammar.ra', 118)
1389
1411
  def _reduce_34(val, _values, result)
1390
1412
  result = val[0] <= val[2] ; loc result, val[1]
1391
1413
  result
1392
1414
  end
1393
1415
  .,.,
1394
1416
 
1395
- module_eval(<<'.,.,', 'egrammar.ra', 118)
1417
+ module_eval(<<'.,.,', 'egrammar.ra', 119)
1396
1418
  def _reduce_35(val, _values, result)
1397
1419
  result = val[1].not ; loc result, val[0]
1398
1420
  result
1399
1421
  end
1400
1422
  .,.,
1401
1423
 
1402
- module_eval(<<'.,.,', 'egrammar.ra', 119)
1424
+ module_eval(<<'.,.,', 'egrammar.ra', 120)
1403
1425
  def _reduce_36(val, _values, result)
1404
1426
  result = val[0].and val[2] ; loc result, val[1]
1405
1427
  result
1406
1428
  end
1407
1429
  .,.,
1408
1430
 
1409
- module_eval(<<'.,.,', 'egrammar.ra', 120)
1431
+ module_eval(<<'.,.,', 'egrammar.ra', 121)
1410
1432
  def _reduce_37(val, _values, result)
1411
1433
  result = val[0].or val[2] ; loc result, val[1]
1412
1434
  result
1413
1435
  end
1414
1436
  .,.,
1415
1437
 
1416
- module_eval(<<'.,.,', 'egrammar.ra', 121)
1438
+ module_eval(<<'.,.,', 'egrammar.ra', 122)
1417
1439
  def _reduce_38(val, _values, result)
1418
1440
  result = val[0].set(val[2]) ; loc result, val[1]
1419
1441
  result
1420
1442
  end
1421
1443
  .,.,
1422
1444
 
1423
- module_eval(<<'.,.,', 'egrammar.ra', 122)
1445
+ module_eval(<<'.,.,', 'egrammar.ra', 123)
1424
1446
  def _reduce_39(val, _values, result)
1425
1447
  result = val[0].plus_set(val[2]) ; loc result, val[1]
1426
1448
  result
1427
1449
  end
1428
1450
  .,.,
1429
1451
 
1430
- module_eval(<<'.,.,', 'egrammar.ra', 123)
1452
+ module_eval(<<'.,.,', 'egrammar.ra', 124)
1431
1453
  def _reduce_40(val, _values, result)
1432
1454
  result = val[0].minus_set(val[2]); loc result, val[1]
1433
1455
  result
1434
1456
  end
1435
1457
  .,.,
1436
1458
 
1437
- module_eval(<<'.,.,', 'egrammar.ra', 124)
1459
+ module_eval(<<'.,.,', 'egrammar.ra', 125)
1438
1460
  def _reduce_41(val, _values, result)
1439
1461
  result = val[0].select(*val[2]) ; loc result, val[0]
1440
1462
  result
1441
1463
  end
1442
1464
  .,.,
1443
1465
 
1444
- module_eval(<<'.,.,', 'egrammar.ra', 125)
1466
+ module_eval(<<'.,.,', 'egrammar.ra', 126)
1445
1467
  def _reduce_42(val, _values, result)
1446
1468
  result = val[1].paren() ; loc result, val[0]
1447
1469
  result
1448
1470
  end
1449
1471
  .,.,
1450
1472
 
1451
- module_eval(<<'.,.,', 'egrammar.ra', 133)
1473
+ module_eval(<<'.,.,', 'egrammar.ra', 134)
1452
1474
  def _reduce_43(val, _values, result)
1453
1475
  result = [val[0]]
1454
1476
  result
1455
1477
  end
1456
1478
  .,.,
1457
1479
 
1458
- module_eval(<<'.,.,', 'egrammar.ra', 134)
1480
+ module_eval(<<'.,.,', 'egrammar.ra', 135)
1459
1481
  def _reduce_44(val, _values, result)
1460
1482
  result = val[0].push(val[2])
1461
1483
  result
@@ -1504,22 +1526,24 @@ module_eval(<<'.,.,', 'egrammar.ra', 134)
1504
1526
 
1505
1527
  # reduce 65 omitted
1506
1528
 
1507
- module_eval(<<'.,.,', 'egrammar.ra', 166)
1508
- def _reduce_66(val, _values, result)
1529
+ # reduce 66 omitted
1530
+
1531
+ module_eval(<<'.,.,', 'egrammar.ra', 168)
1532
+ def _reduce_67(val, _values, result)
1509
1533
  result = val[0]
1510
1534
  result
1511
1535
  end
1512
1536
  .,.,
1513
1537
 
1514
- module_eval(<<'.,.,', 'egrammar.ra', 167)
1515
- def _reduce_67(val, _values, result)
1538
+ module_eval(<<'.,.,', 'egrammar.ra', 169)
1539
+ def _reduce_68(val, _values, result)
1516
1540
  result = val[0]
1517
1541
  result
1518
1542
  end
1519
1543
  .,.,
1520
1544
 
1521
- module_eval(<<'.,.,', 'egrammar.ra', 175)
1522
- def _reduce_68(val, _values, result)
1545
+ module_eval(<<'.,.,', 'egrammar.ra', 177)
1546
+ def _reduce_69(val, _values, result)
1523
1547
  result = Factory.CALL_NAMED(val[0], true, val[2])
1524
1548
  loc result, val[0], val[4]
1525
1549
 
@@ -1527,8 +1551,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 175)
1527
1551
  end
1528
1552
  .,.,
1529
1553
 
1530
- module_eval(<<'.,.,', 'egrammar.ra', 179)
1531
- def _reduce_69(val, _values, result)
1554
+ module_eval(<<'.,.,', 'egrammar.ra', 181)
1555
+ def _reduce_70(val, _values, result)
1532
1556
  result = Factory.CALL_NAMED(val[0], true, [])
1533
1557
  loc result, val[0], val[2]
1534
1558
 
@@ -1536,8 +1560,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 179)
1536
1560
  end
1537
1561
  .,.,
1538
1562
 
1539
- module_eval(<<'.,.,', 'egrammar.ra', 183)
1540
- def _reduce_70(val, _values, result)
1563
+ module_eval(<<'.,.,', 'egrammar.ra', 185)
1564
+ def _reduce_71(val, _values, result)
1541
1565
  result = Factory.CALL_NAMED(val[0], true, val[2])
1542
1566
  loc result, val[0], val[4]
1543
1567
  result.lambda = val[5]
@@ -1546,8 +1570,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 183)
1546
1570
  end
1547
1571
  .,.,
1548
1572
 
1549
- module_eval(<<'.,.,', 'egrammar.ra', 188)
1550
- def _reduce_71(val, _values, result)
1573
+ module_eval(<<'.,.,', 'egrammar.ra', 190)
1574
+ def _reduce_72(val, _values, result)
1551
1575
  result = Factory.CALL_NAMED(val[0], true, [])
1552
1576
  loc result, val[0], val[2]
1553
1577
  result.lambda = val[3]
@@ -1556,50 +1580,50 @@ module_eval(<<'.,.,', 'egrammar.ra', 188)
1556
1580
  end
1557
1581
  .,.,
1558
1582
 
1559
- module_eval(<<'.,.,', 'egrammar.ra', 192)
1560
- def _reduce_72(val, _values, result)
1583
+ module_eval(<<'.,.,', 'egrammar.ra', 194)
1584
+ def _reduce_73(val, _values, result)
1561
1585
  result = val[0]
1562
1586
  result
1563
1587
  end
1564
1588
  .,.,
1565
1589
 
1566
- module_eval(<<'.,.,', 'egrammar.ra', 197)
1567
- def _reduce_73(val, _values, result)
1590
+ module_eval(<<'.,.,', 'egrammar.ra', 199)
1591
+ def _reduce_74(val, _values, result)
1568
1592
  result = val[0]
1569
1593
  result
1570
1594
  end
1571
1595
  .,.,
1572
1596
 
1573
- module_eval(<<'.,.,', 'egrammar.ra', 198)
1574
- def _reduce_74(val, _values, result)
1597
+ module_eval(<<'.,.,', 'egrammar.ra', 200)
1598
+ def _reduce_75(val, _values, result)
1575
1599
  result = val[0]; val[0].lambda = val[1]
1576
1600
  result
1577
1601
  end
1578
1602
  .,.,
1579
1603
 
1580
- module_eval(<<'.,.,', 'egrammar.ra', 201)
1581
- def _reduce_75(val, _values, result)
1604
+ module_eval(<<'.,.,', 'egrammar.ra', 203)
1605
+ def _reduce_76(val, _values, result)
1582
1606
  result = Factory.CALL_METHOD(val[0], val[2]); loc result, val[1], val[3]
1583
1607
  result
1584
1608
  end
1585
1609
  .,.,
1586
1610
 
1587
- module_eval(<<'.,.,', 'egrammar.ra', 202)
1588
- def _reduce_76(val, _values, result)
1611
+ module_eval(<<'.,.,', 'egrammar.ra', 204)
1612
+ def _reduce_77(val, _values, result)
1589
1613
  result = Factory.CALL_METHOD(val[0], []); loc result, val[1], val[3]
1590
1614
  result
1591
1615
  end
1592
1616
  .,.,
1593
1617
 
1594
- module_eval(<<'.,.,', 'egrammar.ra', 203)
1595
- def _reduce_77(val, _values, result)
1618
+ module_eval(<<'.,.,', 'egrammar.ra', 205)
1619
+ def _reduce_78(val, _values, result)
1596
1620
  result = Factory.CALL_METHOD(val[0], []); loc result, val[0]
1597
1621
  result
1598
1622
  end
1599
1623
  .,.,
1600
1624
 
1601
- module_eval(<<'.,.,', 'egrammar.ra', 208)
1602
- def _reduce_78(val, _values, result)
1625
+ module_eval(<<'.,.,', 'egrammar.ra', 210)
1626
+ def _reduce_79(val, _values, result)
1603
1627
  result = val[0].dot(Factory.fqn(val[2][:value]))
1604
1628
  loc result, val[1], val[2]
1605
1629
 
@@ -1607,8 +1631,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 208)
1607
1631
  end
1608
1632
  .,.,
1609
1633
 
1610
- module_eval(<<'.,.,', 'egrammar.ra', 220)
1611
- def _reduce_79(val, _values, result)
1634
+ module_eval(<<'.,.,', 'egrammar.ra', 222)
1635
+ def _reduce_80(val, _values, result)
1612
1636
  result = Factory.LAMBDA(val[0], val[1])
1613
1637
  # loc result, val[1] # TODO
1614
1638
 
@@ -1616,36 +1640,36 @@ module_eval(<<'.,.,', 'egrammar.ra', 220)
1616
1640
  end
1617
1641
  .,.,
1618
1642
 
1619
- module_eval(<<'.,.,', 'egrammar.ra', 225)
1620
- def _reduce_80(val, _values, result)
1643
+ module_eval(<<'.,.,', 'egrammar.ra', 227)
1644
+ def _reduce_81(val, _values, result)
1621
1645
  result = val[1]
1622
1646
  result
1623
1647
  end
1624
1648
  .,.,
1625
1649
 
1626
- module_eval(<<'.,.,', 'egrammar.ra', 226)
1627
- def _reduce_81(val, _values, result)
1650
+ module_eval(<<'.,.,', 'egrammar.ra', 228)
1651
+ def _reduce_82(val, _values, result)
1628
1652
  result = nil
1629
1653
  result
1630
1654
  end
1631
1655
  .,.,
1632
1656
 
1633
- module_eval(<<'.,.,', 'egrammar.ra', 230)
1634
- def _reduce_82(val, _values, result)
1657
+ module_eval(<<'.,.,', 'egrammar.ra', 232)
1658
+ def _reduce_83(val, _values, result)
1635
1659
  result = []
1636
1660
  result
1637
1661
  end
1638
1662
  .,.,
1639
1663
 
1640
- module_eval(<<'.,.,', 'egrammar.ra', 231)
1641
- def _reduce_83(val, _values, result)
1664
+ module_eval(<<'.,.,', 'egrammar.ra', 233)
1665
+ def _reduce_84(val, _values, result)
1642
1666
  result = val[1]
1643
1667
  result
1644
1668
  end
1645
1669
  .,.,
1646
1670
 
1647
- module_eval(<<'.,.,', 'egrammar.ra', 241)
1648
- def _reduce_84(val, _values, result)
1671
+ module_eval(<<'.,.,', 'egrammar.ra', 243)
1672
+ def _reduce_85(val, _values, result)
1649
1673
  result = val[1]
1650
1674
  loc(result, val[0], val[1])
1651
1675
 
@@ -1653,8 +1677,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 241)
1653
1677
  end
1654
1678
  .,.,
1655
1679
 
1656
- module_eval(<<'.,.,', 'egrammar.ra', 248)
1657
- def _reduce_85(val, _values, result)
1680
+ module_eval(<<'.,.,', 'egrammar.ra', 250)
1681
+ def _reduce_86(val, _values, result)
1658
1682
  result = Factory.IF(val[0], Factory.block_or_expression(*val[2]), val[4])
1659
1683
  loc(result, val[0], (val[4] ? val[4] : val[3]))
1660
1684
 
@@ -1662,8 +1686,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 248)
1662
1686
  end
1663
1687
  .,.,
1664
1688
 
1665
- module_eval(<<'.,.,', 'egrammar.ra', 252)
1666
- def _reduce_86(val, _values, result)
1689
+ module_eval(<<'.,.,', 'egrammar.ra', 254)
1690
+ def _reduce_87(val, _values, result)
1667
1691
  result = Factory.IF(val[0], nil, val[3])
1668
1692
  loc(result, val[0], (val[3] ? val[3] : val[2]))
1669
1693
 
@@ -1671,10 +1695,10 @@ module_eval(<<'.,.,', 'egrammar.ra', 252)
1671
1695
  end
1672
1696
  .,.,
1673
1697
 
1674
- # reduce 87 omitted
1698
+ # reduce 88 omitted
1675
1699
 
1676
- module_eval(<<'.,.,', 'egrammar.ra', 260)
1677
- def _reduce_88(val, _values, result)
1700
+ module_eval(<<'.,.,', 'egrammar.ra', 262)
1701
+ def _reduce_89(val, _values, result)
1678
1702
  result = val[1]
1679
1703
  loc(result, val[0], val[1])
1680
1704
 
@@ -1682,8 +1706,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 260)
1682
1706
  end
1683
1707
  .,.,
1684
1708
 
1685
- module_eval(<<'.,.,', 'egrammar.ra', 264)
1686
- def _reduce_89(val, _values, result)
1709
+ module_eval(<<'.,.,', 'egrammar.ra', 266)
1710
+ def _reduce_90(val, _values, result)
1687
1711
  result = Factory.block_or_expression(*val[2])
1688
1712
  loc result, val[0], val[3]
1689
1713
 
@@ -1691,16 +1715,16 @@ module_eval(<<'.,.,', 'egrammar.ra', 264)
1691
1715
  end
1692
1716
  .,.,
1693
1717
 
1694
- module_eval(<<'.,.,', 'egrammar.ra', 268)
1695
- def _reduce_90(val, _values, result)
1718
+ module_eval(<<'.,.,', 'egrammar.ra', 270)
1719
+ def _reduce_91(val, _values, result)
1696
1720
  result = nil # don't think a nop is needed here either
1697
1721
 
1698
1722
  result
1699
1723
  end
1700
1724
  .,.,
1701
1725
 
1702
- module_eval(<<'.,.,', 'egrammar.ra', 277)
1703
- def _reduce_91(val, _values, result)
1726
+ module_eval(<<'.,.,', 'egrammar.ra', 279)
1727
+ def _reduce_92(val, _values, result)
1704
1728
  result = Factory.UNLESS(val[1], Factory.block_or_expression(*val[3]), val[5])
1705
1729
  loc result, val[0], val[4]
1706
1730
 
@@ -1708,8 +1732,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 277)
1708
1732
  end
1709
1733
  .,.,
1710
1734
 
1711
- module_eval(<<'.,.,', 'egrammar.ra', 281)
1712
- def _reduce_92(val, _values, result)
1735
+ module_eval(<<'.,.,', 'egrammar.ra', 283)
1736
+ def _reduce_93(val, _values, result)
1713
1737
  result = Factory.UNLESS(val[1], nil, nil)
1714
1738
  loc result, val[0], val[4]
1715
1739
 
@@ -1717,10 +1741,10 @@ module_eval(<<'.,.,', 'egrammar.ra', 281)
1717
1741
  end
1718
1742
  .,.,
1719
1743
 
1720
- # reduce 93 omitted
1744
+ # reduce 94 omitted
1721
1745
 
1722
- module_eval(<<'.,.,', 'egrammar.ra', 291)
1723
- def _reduce_94(val, _values, result)
1746
+ module_eval(<<'.,.,', 'egrammar.ra', 293)
1747
+ def _reduce_95(val, _values, result)
1724
1748
  result = Factory.block_or_expression(*val[2])
1725
1749
  loc result, val[0], val[3]
1726
1750
 
@@ -1728,16 +1752,16 @@ module_eval(<<'.,.,', 'egrammar.ra', 291)
1728
1752
  end
1729
1753
  .,.,
1730
1754
 
1731
- module_eval(<<'.,.,', 'egrammar.ra', 295)
1732
- def _reduce_95(val, _values, result)
1755
+ module_eval(<<'.,.,', 'egrammar.ra', 297)
1756
+ def _reduce_96(val, _values, result)
1733
1757
  result = nil # don't think a nop is needed here either
1734
1758
 
1735
1759
  result
1736
1760
  end
1737
1761
  .,.,
1738
1762
 
1739
- module_eval(<<'.,.,', 'egrammar.ra', 303)
1740
- def _reduce_96(val, _values, result)
1763
+ module_eval(<<'.,.,', 'egrammar.ra', 305)
1764
+ def _reduce_97(val, _values, result)
1741
1765
  result = Factory.CASE(val[1], *val[3])
1742
1766
  loc result, val[0], val[4]
1743
1767
 
@@ -1745,22 +1769,22 @@ module_eval(<<'.,.,', 'egrammar.ra', 303)
1745
1769
  end
1746
1770
  .,.,
1747
1771
 
1748
- module_eval(<<'.,.,', 'egrammar.ra', 309)
1749
- def _reduce_97(val, _values, result)
1772
+ module_eval(<<'.,.,', 'egrammar.ra', 311)
1773
+ def _reduce_98(val, _values, result)
1750
1774
  result = [val[0]]
1751
1775
  result
1752
1776
  end
1753
1777
  .,.,
1754
1778
 
1755
- module_eval(<<'.,.,', 'egrammar.ra', 310)
1756
- def _reduce_98(val, _values, result)
1779
+ module_eval(<<'.,.,', 'egrammar.ra', 312)
1780
+ def _reduce_99(val, _values, result)
1757
1781
  result = val[0].push val[1]
1758
1782
  result
1759
1783
  end
1760
1784
  .,.,
1761
1785
 
1762
- module_eval(<<'.,.,', 'egrammar.ra', 315)
1763
- def _reduce_99(val, _values, result)
1786
+ module_eval(<<'.,.,', 'egrammar.ra', 317)
1787
+ def _reduce_100(val, _values, result)
1764
1788
  result = Factory.WHEN(val[0], val[3])
1765
1789
  loc result, val[1], val[4]
1766
1790
 
@@ -1768,8 +1792,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 315)
1768
1792
  end
1769
1793
  .,.,
1770
1794
 
1771
- module_eval(<<'.,.,', 'egrammar.ra', 319)
1772
- def _reduce_100(val, _values, result)
1795
+ module_eval(<<'.,.,', 'egrammar.ra', 321)
1796
+ def _reduce_101(val, _values, result)
1773
1797
  result = Factory.WHEN(val[0], nil)
1774
1798
  loc result, val[1], val[3]
1775
1799
 
@@ -1777,54 +1801,54 @@ module_eval(<<'.,.,', 'egrammar.ra', 319)
1777
1801
  end
1778
1802
  .,.,
1779
1803
 
1780
- module_eval(<<'.,.,', 'egrammar.ra', 323)
1781
- def _reduce_101(val, _values, result)
1804
+ module_eval(<<'.,.,', 'egrammar.ra', 325)
1805
+ def _reduce_102(val, _values, result)
1782
1806
  result = val[0]
1783
1807
  result
1784
1808
  end
1785
1809
  .,.,
1786
1810
 
1787
- # reduce 102 omitted
1811
+ # reduce 103 omitted
1788
1812
 
1789
- module_eval(<<'.,.,', 'egrammar.ra', 334)
1790
- def _reduce_103(val, _values, result)
1813
+ module_eval(<<'.,.,', 'egrammar.ra', 336)
1814
+ def _reduce_104(val, _values, result)
1791
1815
  result = val[1]
1792
1816
 
1793
1817
  result
1794
1818
  end
1795
1819
  .,.,
1796
1820
 
1797
- module_eval(<<'.,.,', 'egrammar.ra', 339)
1798
- def _reduce_104(val, _values, result)
1821
+ module_eval(<<'.,.,', 'egrammar.ra', 341)
1822
+ def _reduce_105(val, _values, result)
1799
1823
  result = [val[0]]
1800
1824
  result
1801
1825
  end
1802
1826
  .,.,
1803
1827
 
1804
- module_eval(<<'.,.,', 'egrammar.ra', 340)
1805
- def _reduce_105(val, _values, result)
1828
+ module_eval(<<'.,.,', 'egrammar.ra', 342)
1829
+ def _reduce_106(val, _values, result)
1806
1830
  result = val[0].push val[2]
1807
1831
  result
1808
1832
  end
1809
1833
  .,.,
1810
1834
 
1811
- module_eval(<<'.,.,', 'egrammar.ra', 345)
1812
- def _reduce_106(val, _values, result)
1835
+ module_eval(<<'.,.,', 'egrammar.ra', 347)
1836
+ def _reduce_107(val, _values, result)
1813
1837
  result = Factory.MAP(val[0], val[2]) ; loc result, val[1]
1814
1838
  result
1815
1839
  end
1816
1840
  .,.,
1817
1841
 
1818
- module_eval(<<'.,.,', 'egrammar.ra', 357)
1819
- def _reduce_107(val, _values, result)
1842
+ module_eval(<<'.,.,', 'egrammar.ra', 359)
1843
+ def _reduce_108(val, _values, result)
1820
1844
  result = val[0]
1821
1845
 
1822
1846
  result
1823
1847
  end
1824
1848
  .,.,
1825
1849
 
1826
- module_eval(<<'.,.,', 'egrammar.ra', 360)
1827
- def _reduce_108(val, _values, result)
1850
+ module_eval(<<'.,.,', 'egrammar.ra', 362)
1851
+ def _reduce_109(val, _values, result)
1828
1852
  result = case Factory.resource_shape(val[1])
1829
1853
  when :resource, :class
1830
1854
  tmp = Factory.RESOURCE(Factory.fqn(token_text(val[1])), val[3])
@@ -1843,8 +1867,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 360)
1843
1867
  end
1844
1868
  .,.,
1845
1869
 
1846
- module_eval(<<'.,.,', 'egrammar.ra', 375)
1847
- def _reduce_109(val, _values, result)
1870
+ module_eval(<<'.,.,', 'egrammar.ra', 377)
1871
+ def _reduce_110(val, _values, result)
1848
1872
  result = case Factory.resource_shape(val[1])
1849
1873
  when :resource, :class, :defaults, :override
1850
1874
  error val[1], "Defaults are not virtualizable"
@@ -1856,8 +1880,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 375)
1856
1880
  end
1857
1881
  .,.,
1858
1882
 
1859
- module_eval(<<'.,.,', 'egrammar.ra', 383)
1860
- def _reduce_110(val, _values, result)
1883
+ module_eval(<<'.,.,', 'egrammar.ra', 385)
1884
+ def _reduce_111(val, _values, result)
1861
1885
  result = case Factory.resource_shape(val[0])
1862
1886
  when :resource, :class
1863
1887
  Factory.RESOURCE(Factory.fqn(token_text(val[0])), val[2])
@@ -1874,8 +1898,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 383)
1874
1898
  end
1875
1899
  .,.,
1876
1900
 
1877
- module_eval(<<'.,.,', 'egrammar.ra', 396)
1878
- def _reduce_111(val, _values, result)
1901
+ module_eval(<<'.,.,', 'egrammar.ra', 398)
1902
+ def _reduce_112(val, _values, result)
1879
1903
  result = case Factory.resource_shape(val[0])
1880
1904
  when :resource, :class
1881
1905
  # This catches deprecated syntax.
@@ -1900,8 +1924,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 396)
1900
1924
  end
1901
1925
  .,.,
1902
1926
 
1903
- module_eval(<<'.,.,', 'egrammar.ra', 417)
1904
- def _reduce_112(val, _values, result)
1927
+ module_eval(<<'.,.,', 'egrammar.ra', 419)
1928
+ def _reduce_113(val, _values, result)
1905
1929
  result = Factory.RESOURCE(Factory.fqn(token_text(val[1])), val[3])
1906
1930
  result.form = val[0]
1907
1931
  loc result, val[1], val[5]
@@ -1910,8 +1934,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 417)
1910
1934
  end
1911
1935
  .,.,
1912
1936
 
1913
- module_eval(<<'.,.,', 'egrammar.ra', 422)
1914
- def _reduce_113(val, _values, result)
1937
+ module_eval(<<'.,.,', 'egrammar.ra', 424)
1938
+ def _reduce_114(val, _values, result)
1915
1939
  result = Factory.RESOURCE(Factory.fqn(token_text(val[0])), val[2])
1916
1940
  loc result, val[0], val[4]
1917
1941
 
@@ -1919,57 +1943,57 @@ module_eval(<<'.,.,', 'egrammar.ra', 422)
1919
1943
  end
1920
1944
  .,.,
1921
1945
 
1922
- module_eval(<<'.,.,', 'egrammar.ra', 427)
1923
- def _reduce_114(val, _values, result)
1946
+ module_eval(<<'.,.,', 'egrammar.ra', 429)
1947
+ def _reduce_115(val, _values, result)
1924
1948
  result = Factory.RESOURCE_BODY(val[0], val[2])
1925
1949
  result
1926
1950
  end
1927
1951
  .,.,
1928
1952
 
1929
- module_eval(<<'.,.,', 'egrammar.ra', 429)
1930
- def _reduce_115(val, _values, result)
1953
+ module_eval(<<'.,.,', 'egrammar.ra', 431)
1954
+ def _reduce_116(val, _values, result)
1931
1955
  result = val[0]
1932
1956
  result
1933
1957
  end
1934
1958
  .,.,
1935
1959
 
1936
- module_eval(<<'.,.,', 'egrammar.ra', 432)
1937
- def _reduce_116(val, _values, result)
1960
+ module_eval(<<'.,.,', 'egrammar.ra', 434)
1961
+ def _reduce_117(val, _values, result)
1938
1962
  result = [val[0]]
1939
1963
  result
1940
1964
  end
1941
1965
  .,.,
1942
1966
 
1943
- module_eval(<<'.,.,', 'egrammar.ra', 433)
1944
- def _reduce_117(val, _values, result)
1967
+ module_eval(<<'.,.,', 'egrammar.ra', 435)
1968
+ def _reduce_118(val, _values, result)
1945
1969
  result = val[0].push val[2]
1946
1970
  result
1947
1971
  end
1948
1972
  .,.,
1949
1973
 
1950
- module_eval(<<'.,.,', 'egrammar.ra', 438)
1951
- def _reduce_118(val, _values, result)
1974
+ module_eval(<<'.,.,', 'egrammar.ra', 440)
1975
+ def _reduce_119(val, _values, result)
1952
1976
  result = :virtual
1953
1977
  result
1954
1978
  end
1955
1979
  .,.,
1956
1980
 
1957
- module_eval(<<'.,.,', 'egrammar.ra', 439)
1958
- def _reduce_119(val, _values, result)
1981
+ module_eval(<<'.,.,', 'egrammar.ra', 441)
1982
+ def _reduce_120(val, _values, result)
1959
1983
  result = :exported
1960
1984
  result
1961
1985
  end
1962
1986
  .,.,
1963
1987
 
1964
- module_eval(<<'.,.,', 'egrammar.ra', 440)
1965
- def _reduce_120(val, _values, result)
1988
+ module_eval(<<'.,.,', 'egrammar.ra', 442)
1989
+ def _reduce_121(val, _values, result)
1966
1990
  result = :exported
1967
1991
  result
1968
1992
  end
1969
1993
  .,.,
1970
1994
 
1971
- module_eval(<<'.,.,', 'egrammar.ra', 452)
1972
- def _reduce_121(val, _values, result)
1995
+ module_eval(<<'.,.,', 'egrammar.ra', 454)
1996
+ def _reduce_122(val, _values, result)
1973
1997
  result = Factory.COLLECT(val[0], val[1], val[3])
1974
1998
  loc result, val[0], val[5]
1975
1999
 
@@ -1977,8 +2001,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 452)
1977
2001
  end
1978
2002
  .,.,
1979
2003
 
1980
- module_eval(<<'.,.,', 'egrammar.ra', 456)
1981
- def _reduce_122(val, _values, result)
2004
+ module_eval(<<'.,.,', 'egrammar.ra', 458)
2005
+ def _reduce_123(val, _values, result)
1982
2006
  result = Factory.COLLECT(val[0], val[1], [])
1983
2007
  loc result, val[0], val[1]
1984
2008
 
@@ -1986,53 +2010,53 @@ module_eval(<<'.,.,', 'egrammar.ra', 456)
1986
2010
  end
1987
2011
  .,.,
1988
2012
 
1989
- module_eval(<<'.,.,', 'egrammar.ra', 461)
1990
- def _reduce_123(val, _values, result)
2013
+ module_eval(<<'.,.,', 'egrammar.ra', 463)
2014
+ def _reduce_124(val, _values, result)
1991
2015
  result = Factory.VIRTUAL_QUERY(val[1]) ; loc result, val[0], val[2]
1992
2016
  result
1993
2017
  end
1994
2018
  .,.,
1995
2019
 
1996
- module_eval(<<'.,.,', 'egrammar.ra', 462)
1997
- def _reduce_124(val, _values, result)
2020
+ module_eval(<<'.,.,', 'egrammar.ra', 464)
2021
+ def _reduce_125(val, _values, result)
1998
2022
  result = Factory.EXPORTED_QUERY(val[1]) ; loc result, val[0], val[2]
1999
2023
  result
2000
2024
  end
2001
2025
  .,.,
2002
2026
 
2003
- # reduce 125 omitted
2004
-
2005
2027
  # reduce 126 omitted
2006
2028
 
2007
- module_eval(<<'.,.,', 'egrammar.ra', 475)
2008
- def _reduce_127(val, _values, result)
2029
+ # reduce 127 omitted
2030
+
2031
+ module_eval(<<'.,.,', 'egrammar.ra', 477)
2032
+ def _reduce_128(val, _values, result)
2009
2033
  result = []
2010
2034
  result
2011
2035
  end
2012
2036
  .,.,
2013
2037
 
2014
- module_eval(<<'.,.,', 'egrammar.ra', 476)
2015
- def _reduce_128(val, _values, result)
2038
+ module_eval(<<'.,.,', 'egrammar.ra', 478)
2039
+ def _reduce_129(val, _values, result)
2016
2040
  result = [val[0]]
2017
2041
  result
2018
2042
  end
2019
2043
  .,.,
2020
2044
 
2021
- module_eval(<<'.,.,', 'egrammar.ra', 477)
2022
- def _reduce_129(val, _values, result)
2045
+ module_eval(<<'.,.,', 'egrammar.ra', 479)
2046
+ def _reduce_130(val, _values, result)
2023
2047
  result = val[0].push(val[2])
2024
2048
  result
2025
2049
  end
2026
2050
  .,.,
2027
2051
 
2028
- # reduce 130 omitted
2029
-
2030
2052
  # reduce 131 omitted
2031
2053
 
2032
2054
  # reduce 132 omitted
2033
2055
 
2034
- module_eval(<<'.,.,', 'egrammar.ra', 493)
2035
- def _reduce_133(val, _values, result)
2056
+ # reduce 133 omitted
2057
+
2058
+ module_eval(<<'.,.,', 'egrammar.ra', 495)
2059
+ def _reduce_134(val, _values, result)
2036
2060
  result = Factory.ATTRIBUTE_OP(val[0][:value], :'=>', val[2])
2037
2061
  loc result, val[0], val[2]
2038
2062
 
@@ -2040,8 +2064,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 493)
2040
2064
  end
2041
2065
  .,.,
2042
2066
 
2043
- module_eval(<<'.,.,', 'egrammar.ra', 497)
2044
- def _reduce_134(val, _values, result)
2067
+ module_eval(<<'.,.,', 'egrammar.ra', 499)
2068
+ def _reduce_135(val, _values, result)
2045
2069
  result = Factory.ATTRIBUTE_OP(val[0][:value], :'+>', val[2])
2046
2070
  loc result, val[0], val[2]
2047
2071
 
@@ -2049,8 +2073,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 497)
2049
2073
  end
2050
2074
  .,.,
2051
2075
 
2052
- module_eval(<<'.,.,', 'egrammar.ra', 507)
2053
- def _reduce_135(val, _values, result)
2076
+ module_eval(<<'.,.,', 'egrammar.ra', 509)
2077
+ def _reduce_136(val, _values, result)
2054
2078
  result = add_definition(Factory.DEFINITION(classname(val[1][:value]), val[2], val[4]))
2055
2079
  loc result, val[0], val[5]
2056
2080
  # New lexer does not keep track of this, this is done in validation
@@ -2062,8 +2086,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 507)
2062
2086
  end
2063
2087
  .,.,
2064
2088
 
2065
- module_eval(<<'.,.,', 'egrammar.ra', 521)
2066
- def _reduce_136(val, _values, result)
2089
+ module_eval(<<'.,.,', 'egrammar.ra', 523)
2090
+ def _reduce_137(val, _values, result)
2067
2091
  # Remove this class' name from the namestack as all nested classes have been parsed
2068
2092
  namepop
2069
2093
  result = add_definition(Factory.HOSTCLASS(classname(val[1][:value]), val[2], token_text(val[3]), val[5]))
@@ -2073,32 +2097,32 @@ module_eval(<<'.,.,', 'egrammar.ra', 521)
2073
2097
  end
2074
2098
  .,.,
2075
2099
 
2076
- module_eval(<<'.,.,', 'egrammar.ra', 531)
2077
- def _reduce_137(val, _values, result)
2100
+ module_eval(<<'.,.,', 'egrammar.ra', 533)
2101
+ def _reduce_138(val, _values, result)
2078
2102
  namestack(val[0][:value]) ; result = val[0]
2079
2103
  result
2080
2104
  end
2081
2105
  .,.,
2082
2106
 
2083
- # reduce 138 omitted
2084
-
2085
2107
  # reduce 139 omitted
2086
2108
 
2087
2109
  # reduce 140 omitted
2088
2110
 
2089
- module_eval(<<'.,.,', 'egrammar.ra', 540)
2090
- def _reduce_141(val, _values, result)
2111
+ # reduce 141 omitted
2112
+
2113
+ module_eval(<<'.,.,', 'egrammar.ra', 542)
2114
+ def _reduce_142(val, _values, result)
2091
2115
  result = val[1]
2092
2116
  result
2093
2117
  end
2094
2118
  .,.,
2095
2119
 
2096
- # reduce 142 omitted
2097
-
2098
2120
  # reduce 143 omitted
2099
2121
 
2100
- module_eval(<<'.,.,', 'egrammar.ra', 557)
2101
- def _reduce_144(val, _values, result)
2122
+ # reduce 144 omitted
2123
+
2124
+ module_eval(<<'.,.,', 'egrammar.ra', 559)
2125
+ def _reduce_145(val, _values, result)
2102
2126
  result = add_definition(Factory.NODE(val[1], val[2], val[4]))
2103
2127
  loc result, val[0], val[5]
2104
2128
 
@@ -2106,8 +2130,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 557)
2106
2130
  end
2107
2131
  .,.,
2108
2132
 
2109
- module_eval(<<'.,.,', 'egrammar.ra', 561)
2110
- def _reduce_145(val, _values, result)
2133
+ module_eval(<<'.,.,', 'egrammar.ra', 563)
2134
+ def _reduce_146(val, _values, result)
2111
2135
  result = add_definition(Factory.NODE(val[1], val[2], nil))
2112
2136
  loc result, val[0], val[4]
2113
2137
 
@@ -2115,425 +2139,428 @@ module_eval(<<'.,.,', 'egrammar.ra', 561)
2115
2139
  end
2116
2140
  .,.,
2117
2141
 
2118
- module_eval(<<'.,.,', 'egrammar.ra', 571)
2119
- def _reduce_146(val, _values, result)
2142
+ module_eval(<<'.,.,', 'egrammar.ra', 573)
2143
+ def _reduce_147(val, _values, result)
2120
2144
  result = [result]
2121
2145
  result
2122
2146
  end
2123
2147
  .,.,
2124
2148
 
2125
- module_eval(<<'.,.,', 'egrammar.ra', 572)
2126
- def _reduce_147(val, _values, result)
2149
+ module_eval(<<'.,.,', 'egrammar.ra', 574)
2150
+ def _reduce_148(val, _values, result)
2127
2151
  result = val[0].push(val[2])
2128
2152
  result
2129
2153
  end
2130
2154
  .,.,
2131
2155
 
2132
- module_eval(<<'.,.,', 'egrammar.ra', 577)
2133
- def _reduce_148(val, _values, result)
2156
+ module_eval(<<'.,.,', 'egrammar.ra', 579)
2157
+ def _reduce_149(val, _values, result)
2134
2158
  result = val[0]
2135
2159
  result
2136
2160
  end
2137
2161
  .,.,
2138
2162
 
2139
- module_eval(<<'.,.,', 'egrammar.ra', 578)
2140
- def _reduce_149(val, _values, result)
2163
+ module_eval(<<'.,.,', 'egrammar.ra', 580)
2164
+ def _reduce_150(val, _values, result)
2141
2165
  result = val[0]
2142
2166
  result
2143
2167
  end
2144
2168
  .,.,
2145
2169
 
2146
- module_eval(<<'.,.,', 'egrammar.ra', 579)
2147
- def _reduce_150(val, _values, result)
2170
+ module_eval(<<'.,.,', 'egrammar.ra', 581)
2171
+ def _reduce_151(val, _values, result)
2148
2172
  result = Factory.literal(:default); loc result, val[0]
2149
2173
  result
2150
2174
  end
2151
2175
  .,.,
2152
2176
 
2153
- # reduce 151 omitted
2177
+ # reduce 152 omitted
2154
2178
 
2155
- module_eval(<<'.,.,', 'egrammar.ra', 583)
2156
- def _reduce_152(val, _values, result)
2179
+ module_eval(<<'.,.,', 'egrammar.ra', 585)
2180
+ def _reduce_153(val, _values, result)
2157
2181
  result = Factory.literal(val[0][:value]); loc result, val[0]
2158
2182
  result
2159
2183
  end
2160
2184
  .,.,
2161
2185
 
2162
- module_eval(<<'.,.,', 'egrammar.ra', 584)
2163
- def _reduce_153(val, _values, result)
2186
+ module_eval(<<'.,.,', 'egrammar.ra', 586)
2187
+ def _reduce_154(val, _values, result)
2164
2188
  result = Factory.concat(val[0], '.', val[2][:value]); loc result, val[0], val[2]
2165
2189
  result
2166
2190
  end
2167
2191
  .,.,
2168
2192
 
2169
- # reduce 154 omitted
2193
+ # reduce 155 omitted
2170
2194
 
2171
- module_eval(<<'.,.,', 'egrammar.ra', 589)
2172
- def _reduce_155(val, _values, result)
2195
+ module_eval(<<'.,.,', 'egrammar.ra', 591)
2196
+ def _reduce_156(val, _values, result)
2173
2197
  result = val[1]
2174
2198
  result
2175
2199
  end
2176
2200
  .,.,
2177
2201
 
2178
- module_eval(<<'.,.,', 'egrammar.ra', 595)
2179
- def _reduce_156(val, _values, result)
2202
+ module_eval(<<'.,.,', 'egrammar.ra', 596)
2203
+ def _reduce_157(val, _values, result)
2204
+ result = Factory.QNAME(val[0][:value]) ; loc result, val[0]
2205
+ result
2206
+ end
2207
+ .,.,
2208
+
2209
+ module_eval(<<'.,.,', 'egrammar.ra', 608)
2210
+ def _reduce_158(val, _values, result)
2180
2211
  result = val[0]
2181
2212
  result
2182
2213
  end
2183
2214
  .,.,
2184
2215
 
2185
- module_eval(<<'.,.,', 'egrammar.ra', 596)
2186
- def _reduce_157(val, _values, result)
2216
+ module_eval(<<'.,.,', 'egrammar.ra', 609)
2217
+ def _reduce_159(val, _values, result)
2187
2218
  error val[0], "'class' is not a valid classname"
2188
2219
  result
2189
2220
  end
2190
2221
  .,.,
2191
2222
 
2192
- module_eval(<<'.,.,', 'egrammar.ra', 600)
2193
- def _reduce_158(val, _values, result)
2223
+ module_eval(<<'.,.,', 'egrammar.ra', 613)
2224
+ def _reduce_160(val, _values, result)
2194
2225
  result = []
2195
2226
  result
2196
2227
  end
2197
2228
  .,.,
2198
2229
 
2199
- module_eval(<<'.,.,', 'egrammar.ra', 601)
2200
- def _reduce_159(val, _values, result)
2230
+ module_eval(<<'.,.,', 'egrammar.ra', 614)
2231
+ def _reduce_161(val, _values, result)
2201
2232
  result = []
2202
2233
  result
2203
2234
  end
2204
2235
  .,.,
2205
2236
 
2206
- module_eval(<<'.,.,', 'egrammar.ra', 602)
2207
- def _reduce_160(val, _values, result)
2237
+ module_eval(<<'.,.,', 'egrammar.ra', 615)
2238
+ def _reduce_162(val, _values, result)
2208
2239
  result = val[1]
2209
2240
  result
2210
2241
  end
2211
2242
  .,.,
2212
2243
 
2213
- module_eval(<<'.,.,', 'egrammar.ra', 606)
2214
- def _reduce_161(val, _values, result)
2244
+ module_eval(<<'.,.,', 'egrammar.ra', 619)
2245
+ def _reduce_163(val, _values, result)
2215
2246
  result = [val[0]]
2216
2247
  result
2217
2248
  end
2218
2249
  .,.,
2219
2250
 
2220
- module_eval(<<'.,.,', 'egrammar.ra', 607)
2221
- def _reduce_162(val, _values, result)
2251
+ module_eval(<<'.,.,', 'egrammar.ra', 620)
2252
+ def _reduce_164(val, _values, result)
2222
2253
  result = val[0].push(val[2])
2223
2254
  result
2224
2255
  end
2225
2256
  .,.,
2226
2257
 
2227
- module_eval(<<'.,.,', 'egrammar.ra', 611)
2228
- def _reduce_163(val, _values, result)
2258
+ module_eval(<<'.,.,', 'egrammar.ra', 624)
2259
+ def _reduce_165(val, _values, result)
2229
2260
  result = Factory.PARAM(val[0][:value], val[2]) ; loc result, val[0]
2230
2261
  result
2231
2262
  end
2232
2263
  .,.,
2233
2264
 
2234
- module_eval(<<'.,.,', 'egrammar.ra', 612)
2235
- def _reduce_164(val, _values, result)
2265
+ module_eval(<<'.,.,', 'egrammar.ra', 625)
2266
+ def _reduce_166(val, _values, result)
2236
2267
  result = Factory.PARAM(val[0][:value]); loc result, val[0]
2237
2268
  result
2238
2269
  end
2239
2270
  .,.,
2240
2271
 
2241
- module_eval(<<'.,.,', 'egrammar.ra', 625)
2242
- def _reduce_165(val, _values, result)
2272
+ module_eval(<<'.,.,', 'egrammar.ra', 638)
2273
+ def _reduce_167(val, _values, result)
2243
2274
  result = Factory.fqn(val[0][:value]).var ; loc result, val[0]
2244
2275
  result
2245
2276
  end
2246
2277
  .,.,
2247
2278
 
2248
- module_eval(<<'.,.,', 'egrammar.ra', 631)
2249
- def _reduce_166(val, _values, result)
2279
+ module_eval(<<'.,.,', 'egrammar.ra', 644)
2280
+ def _reduce_168(val, _values, result)
2250
2281
  result = Factory.LIST(val[1]); loc result, val[0], val[2]
2251
2282
  result
2252
2283
  end
2253
2284
  .,.,
2254
2285
 
2255
- module_eval(<<'.,.,', 'egrammar.ra', 632)
2256
- def _reduce_167(val, _values, result)
2286
+ module_eval(<<'.,.,', 'egrammar.ra', 645)
2287
+ def _reduce_169(val, _values, result)
2257
2288
  result = Factory.LIST(val[1]); loc result, val[0], val[3]
2258
2289
  result
2259
2290
  end
2260
2291
  .,.,
2261
2292
 
2262
- module_eval(<<'.,.,', 'egrammar.ra', 633)
2263
- def _reduce_168(val, _values, result)
2293
+ module_eval(<<'.,.,', 'egrammar.ra', 646)
2294
+ def _reduce_170(val, _values, result)
2264
2295
  result = Factory.literal([]) ; loc result, val[0]
2265
2296
  result
2266
2297
  end
2267
2298
  .,.,
2268
2299
 
2269
- module_eval(<<'.,.,', 'egrammar.ra', 634)
2270
- def _reduce_169(val, _values, result)
2300
+ module_eval(<<'.,.,', 'egrammar.ra', 647)
2301
+ def _reduce_171(val, _values, result)
2271
2302
  result = Factory.LIST(val[1]); loc result, val[0], val[2]
2272
2303
  result
2273
2304
  end
2274
2305
  .,.,
2275
2306
 
2276
- module_eval(<<'.,.,', 'egrammar.ra', 635)
2277
- def _reduce_170(val, _values, result)
2307
+ module_eval(<<'.,.,', 'egrammar.ra', 648)
2308
+ def _reduce_172(val, _values, result)
2278
2309
  result = Factory.LIST(val[1]); loc result, val[0], val[3]
2279
2310
  result
2280
2311
  end
2281
2312
  .,.,
2282
2313
 
2283
- module_eval(<<'.,.,', 'egrammar.ra', 636)
2284
- def _reduce_171(val, _values, result)
2314
+ module_eval(<<'.,.,', 'egrammar.ra', 649)
2315
+ def _reduce_173(val, _values, result)
2285
2316
  result = Factory.literal([]) ; loc result, val[0]
2286
2317
  result
2287
2318
  end
2288
2319
  .,.,
2289
2320
 
2290
- module_eval(<<'.,.,', 'egrammar.ra', 639)
2291
- def _reduce_172(val, _values, result)
2321
+ module_eval(<<'.,.,', 'egrammar.ra', 652)
2322
+ def _reduce_174(val, _values, result)
2292
2323
  result = Factory.HASH(val[1]); loc result, val[0], val[2]
2293
2324
  result
2294
2325
  end
2295
2326
  .,.,
2296
2327
 
2297
- module_eval(<<'.,.,', 'egrammar.ra', 640)
2298
- def _reduce_173(val, _values, result)
2328
+ module_eval(<<'.,.,', 'egrammar.ra', 653)
2329
+ def _reduce_175(val, _values, result)
2299
2330
  result = Factory.HASH(val[1]); loc result, val[0], val[3]
2300
2331
  result
2301
2332
  end
2302
2333
  .,.,
2303
2334
 
2304
- module_eval(<<'.,.,', 'egrammar.ra', 641)
2305
- def _reduce_174(val, _values, result)
2335
+ module_eval(<<'.,.,', 'egrammar.ra', 654)
2336
+ def _reduce_176(val, _values, result)
2306
2337
  result = Factory.literal({}) ; loc result, val[0], val[3]
2307
2338
  result
2308
2339
  end
2309
2340
  .,.,
2310
2341
 
2311
- module_eval(<<'.,.,', 'egrammar.ra', 644)
2312
- def _reduce_175(val, _values, result)
2342
+ module_eval(<<'.,.,', 'egrammar.ra', 657)
2343
+ def _reduce_177(val, _values, result)
2313
2344
  result = [val[0]]
2314
2345
  result
2315
2346
  end
2316
2347
  .,.,
2317
2348
 
2318
- module_eval(<<'.,.,', 'egrammar.ra', 645)
2319
- def _reduce_176(val, _values, result)
2349
+ module_eval(<<'.,.,', 'egrammar.ra', 658)
2350
+ def _reduce_178(val, _values, result)
2320
2351
  result = val[0].push val[2]
2321
2352
  result
2322
2353
  end
2323
2354
  .,.,
2324
2355
 
2325
- module_eval(<<'.,.,', 'egrammar.ra', 648)
2326
- def _reduce_177(val, _values, result)
2356
+ module_eval(<<'.,.,', 'egrammar.ra', 661)
2357
+ def _reduce_179(val, _values, result)
2327
2358
  result = Factory.KEY_ENTRY(val[0], val[2]); loc result, val[1]
2328
2359
  result
2329
2360
  end
2330
2361
  .,.,
2331
2362
 
2332
- # reduce 178 omitted
2363
+ # reduce 180 omitted
2333
2364
 
2334
- # reduce 179 omitted
2365
+ # reduce 181 omitted
2335
2366
 
2336
- # reduce 180 omitted
2367
+ # reduce 182 omitted
2337
2368
 
2338
- module_eval(<<'.,.,', 'egrammar.ra', 655)
2339
- def _reduce_181(val, _values, result)
2369
+ module_eval(<<'.,.,', 'egrammar.ra', 668)
2370
+ def _reduce_183(val, _values, result)
2340
2371
  result = Factory.literal(val[0][:value]) ; loc result, val[0]
2341
2372
  result
2342
2373
  end
2343
2374
  .,.,
2344
2375
 
2345
- module_eval(<<'.,.,', 'egrammar.ra', 656)
2346
- def _reduce_182(val, _values, result)
2376
+ module_eval(<<'.,.,', 'egrammar.ra', 669)
2377
+ def _reduce_184(val, _values, result)
2347
2378
  result = Factory.string(val[0], *val[1]) ; loc result, val[0], val[1][-1]
2348
2379
  result
2349
2380
  end
2350
2381
  .,.,
2351
2382
 
2352
- module_eval(<<'.,.,', 'egrammar.ra', 657)
2353
- def _reduce_183(val, _values, result)
2383
+ module_eval(<<'.,.,', 'egrammar.ra', 670)
2384
+ def _reduce_185(val, _values, result)
2354
2385
  result = Factory.literal(val[0][:value]); loc result, val[0]
2355
2386
  result
2356
2387
  end
2357
2388
  .,.,
2358
2389
 
2359
- module_eval(<<'.,.,', 'egrammar.ra', 658)
2360
- def _reduce_184(val, _values, result)
2390
+ module_eval(<<'.,.,', 'egrammar.ra', 671)
2391
+ def _reduce_186(val, _values, result)
2361
2392
  result = Factory.literal(val[0][:value]); loc result, val[0]
2362
2393
  result
2363
2394
  end
2364
2395
  .,.,
2365
2396
 
2366
- module_eval(<<'.,.,', 'egrammar.ra', 659)
2367
- def _reduce_185(val, _values, result)
2397
+ module_eval(<<'.,.,', 'egrammar.ra', 672)
2398
+ def _reduce_187(val, _values, result)
2368
2399
  result = Factory.literal(val[0][:value]); loc result, val[0]
2369
2400
  result
2370
2401
  end
2371
2402
  .,.,
2372
2403
 
2373
- module_eval(<<'.,.,', 'egrammar.ra', 660)
2374
- def _reduce_186(val, _values, result)
2404
+ module_eval(<<'.,.,', 'egrammar.ra', 673)
2405
+ def _reduce_188(val, _values, result)
2375
2406
  result = [val[0]] + val[1]
2376
2407
  result
2377
2408
  end
2378
2409
  .,.,
2379
2410
 
2380
- module_eval(<<'.,.,', 'egrammar.ra', 661)
2381
- def _reduce_187(val, _values, result)
2411
+ module_eval(<<'.,.,', 'egrammar.ra', 674)
2412
+ def _reduce_189(val, _values, result)
2382
2413
  result = Factory.TEXT(val[0])
2383
2414
  result
2384
2415
  end
2385
2416
  .,.,
2386
2417
 
2387
- module_eval(<<'.,.,', 'egrammar.ra', 664)
2388
- def _reduce_188(val, _values, result)
2418
+ module_eval(<<'.,.,', 'egrammar.ra', 677)
2419
+ def _reduce_190(val, _values, result)
2389
2420
  result = [val[0]]
2390
2421
  result
2391
2422
  end
2392
2423
  .,.,
2393
2424
 
2394
- module_eval(<<'.,.,', 'egrammar.ra', 665)
2395
- def _reduce_189(val, _values, result)
2425
+ module_eval(<<'.,.,', 'egrammar.ra', 678)
2426
+ def _reduce_191(val, _values, result)
2396
2427
  result = [val[0]] + val[1]
2397
2428
  result
2398
2429
  end
2399
2430
  .,.,
2400
2431
 
2401
- module_eval(<<'.,.,', 'egrammar.ra', 668)
2402
- def _reduce_190(val, _values, result)
2432
+ module_eval(<<'.,.,', 'egrammar.ra', 681)
2433
+ def _reduce_192(val, _values, result)
2403
2434
  result = Factory.HEREDOC(val[0][:value], val[1]); loc result, val[0]
2404
2435
  result
2405
2436
  end
2406
2437
  .,.,
2407
2438
 
2408
- module_eval(<<'.,.,', 'egrammar.ra', 671)
2409
- def _reduce_191(val, _values, result)
2439
+ module_eval(<<'.,.,', 'egrammar.ra', 684)
2440
+ def _reduce_193(val, _values, result)
2410
2441
  result = Factory.SUBLOCATE(val[0], val[1]); loc result, val[0]
2411
2442
  result
2412
2443
  end
2413
2444
  .,.,
2414
2445
 
2415
- module_eval(<<'.,.,', 'egrammar.ra', 672)
2416
- def _reduce_192(val, _values, result)
2446
+ module_eval(<<'.,.,', 'egrammar.ra', 685)
2447
+ def _reduce_194(val, _values, result)
2417
2448
  result = Factory.SUBLOCATE(val[0], val[1]); loc result, val[0]
2418
2449
  result
2419
2450
  end
2420
2451
  .,.,
2421
2452
 
2422
- module_eval(<<'.,.,', 'egrammar.ra', 675)
2423
- def _reduce_193(val, _values, result)
2453
+ module_eval(<<'.,.,', 'egrammar.ra', 688)
2454
+ def _reduce_195(val, _values, result)
2424
2455
  result = Factory.EPP(val[1], val[2]); loc result, val[0]
2425
2456
  result
2426
2457
  end
2427
2458
  .,.,
2428
2459
 
2429
- module_eval(<<'.,.,', 'egrammar.ra', 678)
2430
- def _reduce_194(val, _values, result)
2460
+ module_eval(<<'.,.,', 'egrammar.ra', 691)
2461
+ def _reduce_196(val, _values, result)
2431
2462
  result = nil
2432
2463
  result
2433
2464
  end
2434
2465
  .,.,
2435
2466
 
2436
- module_eval(<<'.,.,', 'egrammar.ra', 679)
2437
- def _reduce_195(val, _values, result)
2467
+ module_eval(<<'.,.,', 'egrammar.ra', 692)
2468
+ def _reduce_197(val, _values, result)
2438
2469
  result = []
2439
2470
  result
2440
2471
  end
2441
2472
  .,.,
2442
2473
 
2443
- module_eval(<<'.,.,', 'egrammar.ra', 680)
2444
- def _reduce_196(val, _values, result)
2474
+ module_eval(<<'.,.,', 'egrammar.ra', 693)
2475
+ def _reduce_198(val, _values, result)
2445
2476
  result = val[1]
2446
2477
  result
2447
2478
  end
2448
2479
  .,.,
2449
2480
 
2450
- module_eval(<<'.,.,', 'egrammar.ra', 683)
2451
- def _reduce_197(val, _values, result)
2481
+ module_eval(<<'.,.,', 'egrammar.ra', 696)
2482
+ def _reduce_199(val, _values, result)
2452
2483
  result = Factory.RENDER_STRING(val[0][:value]); loc result, val[0]
2453
2484
  result
2454
2485
  end
2455
2486
  .,.,
2456
2487
 
2457
- module_eval(<<'.,.,', 'egrammar.ra', 684)
2458
- def _reduce_198(val, _values, result)
2488
+ module_eval(<<'.,.,', 'egrammar.ra', 697)
2489
+ def _reduce_200(val, _values, result)
2459
2490
  result = Factory.RENDER_EXPR(val[1]); loc result, val[0], val[2]
2460
2491
  result
2461
2492
  end
2462
2493
  .,.,
2463
2494
 
2464
- module_eval(<<'.,.,', 'egrammar.ra', 685)
2465
- def _reduce_199(val, _values, result)
2495
+ module_eval(<<'.,.,', 'egrammar.ra', 698)
2496
+ def _reduce_201(val, _values, result)
2466
2497
  result = Factory.RENDER_EXPR(Factory.block_or_expression(*val[2])); loc result, val[0], val[4]
2467
2498
  result
2468
2499
  end
2469
2500
  .,.,
2470
2501
 
2471
- # reduce 200 omitted
2502
+ # reduce 202 omitted
2472
2503
 
2473
- # reduce 201 omitted
2504
+ # reduce 203 omitted
2474
2505
 
2475
- module_eval(<<'.,.,', 'egrammar.ra', 691)
2476
- def _reduce_202(val, _values, result)
2506
+ module_eval(<<'.,.,', 'egrammar.ra', 704)
2507
+ def _reduce_204(val, _values, result)
2477
2508
  result = Factory.NUMBER(val[0][:value]) ; loc result, val[0]
2478
2509
  result
2479
2510
  end
2480
2511
  .,.,
2481
2512
 
2482
- module_eval(<<'.,.,', 'egrammar.ra', 692)
2483
- def _reduce_203(val, _values, result)
2513
+ module_eval(<<'.,.,', 'egrammar.ra', 705)
2514
+ def _reduce_205(val, _values, result)
2484
2515
  result = Factory.QNAME_OR_NUMBER(val[0][:value]) ; loc result, val[0]
2485
2516
  result
2486
2517
  end
2487
2518
  .,.,
2488
2519
 
2489
- module_eval(<<'.,.,', 'egrammar.ra', 693)
2490
- def _reduce_204(val, _values, result)
2520
+ module_eval(<<'.,.,', 'egrammar.ra', 706)
2521
+ def _reduce_206(val, _values, result)
2491
2522
  result = Factory.QREF(val[0][:value]) ; loc result, val[0]
2492
2523
  result
2493
2524
  end
2494
2525
  .,.,
2495
2526
 
2496
- module_eval(<<'.,.,', 'egrammar.ra', 694)
2497
- def _reduce_205(val, _values, result)
2527
+ module_eval(<<'.,.,', 'egrammar.ra', 707)
2528
+ def _reduce_207(val, _values, result)
2498
2529
  result = Factory.literal(:undef); loc result, val[0]
2499
2530
  result
2500
2531
  end
2501
2532
  .,.,
2502
2533
 
2503
- module_eval(<<'.,.,', 'egrammar.ra', 695)
2504
- def _reduce_206(val, _values, result)
2534
+ module_eval(<<'.,.,', 'egrammar.ra', 708)
2535
+ def _reduce_208(val, _values, result)
2505
2536
  result = Factory.literal(:default); loc result, val[0]
2506
2537
  result
2507
2538
  end
2508
2539
  .,.,
2509
2540
 
2510
- module_eval(<<'.,.,', 'egrammar.ra', 700)
2511
- def _reduce_207(val, _values, result)
2541
+ module_eval(<<'.,.,', 'egrammar.ra', 713)
2542
+ def _reduce_209(val, _values, result)
2512
2543
  result = Factory.literal(val[0][:value]) ; loc result, val[0]
2513
2544
  result
2514
2545
  end
2515
2546
  .,.,
2516
2547
 
2517
- module_eval(<<'.,.,', 'egrammar.ra', 703)
2518
- def _reduce_208(val, _values, result)
2548
+ module_eval(<<'.,.,', 'egrammar.ra', 716)
2549
+ def _reduce_210(val, _values, result)
2519
2550
  result = Factory.literal(val[0][:value]); loc result, val[0]
2520
2551
  result
2521
2552
  end
2522
2553
  .,.,
2523
2554
 
2524
- # reduce 209 omitted
2555
+ # reduce 211 omitted
2525
2556
 
2526
- module_eval(<<'.,.,', 'egrammar.ra', 709)
2527
- def _reduce_210(val, _values, result)
2557
+ module_eval(<<'.,.,', 'egrammar.ra', 722)
2558
+ def _reduce_212(val, _values, result)
2528
2559
  result = nil
2529
2560
  result
2530
2561
  end
2531
2562
  .,.,
2532
2563
 
2533
- # reduce 211 omitted
2534
-
2535
- # reduce 212 omitted
2536
-
2537
2564
  # reduce 213 omitted
2538
2565
 
2539
2566
  # reduce 214 omitted
@@ -2562,8 +2589,12 @@ module_eval(<<'.,.,', 'egrammar.ra', 709)
2562
2589
 
2563
2590
  # reduce 226 omitted
2564
2591
 
2565
- module_eval(<<'.,.,', 'egrammar.ra', 732)
2566
- def _reduce_227(val, _values, result)
2592
+ # reduce 227 omitted
2593
+
2594
+ # reduce 228 omitted
2595
+
2596
+ module_eval(<<'.,.,', 'egrammar.ra', 745)
2597
+ def _reduce_229(val, _values, result)
2567
2598
  result = nil
2568
2599
  result
2569
2600
  end