puppet 4.0.0 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2045) hide show
  1. data/COMMITTERS.md +2 -2
  2. data/CONTRIBUTING.md +51 -10
  3. data/Gemfile +27 -14
  4. data/LICENSE +3 -3
  5. data/MAINTAINERS +66 -0
  6. data/README.md +9 -11
  7. data/Rakefile +36 -0
  8. data/conf/auth.conf +23 -2
  9. data/conf/fileserver.conf +7 -12
  10. data/conf/hiera.yaml +11 -0
  11. data/conf/puppet.conf +1 -1
  12. data/ext/README.environment +1 -1
  13. data/ext/build_defaults.yaml +10 -37
  14. data/ext/debian/README.source +1 -1
  15. data/ext/debian/control +3 -5
  16. data/ext/debian/copyright +4 -4
  17. data/ext/debian/puppet-common.install +0 -1
  18. data/ext/debian/puppet-common.manpages +0 -2
  19. data/ext/debian/puppet.default +0 -5
  20. data/ext/debian/puppet.init +1 -16
  21. data/ext/debian/puppet.logrotate +14 -5
  22. data/ext/debian/puppetmaster.README.debian +11 -9
  23. data/ext/envpuppet +2 -2
  24. data/ext/hiera/hiera.yaml +15 -0
  25. data/ext/ips/puppetagent.xml +1 -1
  26. data/ext/ips/puppetmaster.xml +1 -1
  27. data/ext/logcheck/puppet +1 -1
  28. data/ext/osx/puppet.plist +30 -0
  29. data/ext/project_data.yaml +29 -16
  30. data/ext/puppet-test +3 -27
  31. data/ext/rack/config.ru +2 -2
  32. data/ext/rack/example-passenger-vhost.conf +1 -1
  33. data/ext/redhat/client.init +67 -17
  34. data/ext/redhat/client.sysconfig +1 -10
  35. data/ext/redhat/logrotate +15 -3
  36. data/ext/redhat/puppet.spec.erb +6 -14
  37. data/ext/redhat/server.init +1 -1
  38. data/ext/regexp_nodes/regexp_nodes.rb +1 -1
  39. data/ext/solaris/pkginfo +1 -1
  40. data/ext/solaris/smf/puppet +44 -0
  41. data/ext/solaris/smf/puppet.xml +44 -0
  42. data/ext/suse/client.init +30 -33
  43. data/ext/suse/puppet.spec +2 -2
  44. data/ext/suse/server.init +2 -2
  45. data/ext/systemd/puppet.service +13 -1
  46. data/ext/upload_facts.rb +1 -1
  47. data/ext/windows/puppet_interactive.bat +6 -0
  48. data/ext/windows/puppet_shell.bat +9 -0
  49. data/ext/windows/run_puppet_interactive.bat +9 -0
  50. data/ext/windows/service/daemon.rb +10 -15
  51. data/ext/yaml_nodes.rb +1 -1
  52. data/install.rb +99 -66
  53. data/lib/hiera/puppet_function.rb +28 -18
  54. data/lib/hiera/scope.rb +12 -14
  55. data/lib/hiera_puppet.rb +6 -14
  56. data/lib/puppet/agent/disabler.rb +3 -3
  57. data/lib/puppet/agent/locker.rb +12 -3
  58. data/lib/puppet/agent.rb +35 -39
  59. data/lib/puppet/application/agent.rb +53 -25
  60. data/lib/puppet/application/apply.rb +83 -28
  61. data/lib/puppet/application/ca.rb +1 -0
  62. data/lib/puppet/application/cert.rb +54 -5
  63. data/lib/puppet/application/describe.rb +2 -2
  64. data/lib/puppet/application/device.rb +80 -50
  65. data/lib/puppet/application/doc.rb +9 -9
  66. data/lib/puppet/application/face_base.rb +11 -12
  67. data/lib/puppet/application/filebucket.rb +84 -10
  68. data/lib/puppet/application/generate.rb +5 -0
  69. data/lib/puppet/application/lookup.rb +357 -0
  70. data/lib/puppet/application/master.rb +33 -26
  71. data/lib/puppet/application/resource.rb +22 -23
  72. data/lib/puppet/application.rb +31 -15
  73. data/lib/puppet/application_support.rb +1 -1
  74. data/lib/puppet/compilable_resource_type.rb +15 -0
  75. data/lib/puppet/configurer/downloader.rb +2 -2
  76. data/lib/puppet/configurer/fact_handler.rb +13 -4
  77. data/lib/puppet/configurer/plugin_handler.rb +7 -5
  78. data/lib/puppet/configurer.rb +198 -55
  79. data/lib/puppet/context/trusted_information.rb +22 -2
  80. data/lib/puppet/context.rb +20 -5
  81. data/lib/puppet/daemon.rb +17 -13
  82. data/lib/puppet/data_binding.rb +4 -2
  83. data/lib/puppet/defaults.rb +309 -123
  84. data/lib/puppet/environments.rb +105 -10
  85. data/lib/puppet/error.rb +32 -2
  86. data/lib/puppet/etc.rb +161 -0
  87. data/lib/puppet/external/dot.rb +1 -1
  88. data/lib/puppet/external/pson/common.rb +4 -0
  89. data/lib/puppet/face/ca.rb +56 -44
  90. data/lib/puppet/face/catalog/select.rb +4 -4
  91. data/lib/puppet/face/catalog.rb +3 -3
  92. data/lib/puppet/face/certificate.rb +28 -22
  93. data/lib/puppet/face/certificate_request.rb +3 -1
  94. data/lib/puppet/face/certificate_revocation_list.rb +3 -1
  95. data/lib/puppet/face/config.rb +12 -12
  96. data/lib/puppet/face/epp.rb +96 -50
  97. data/lib/puppet/face/facts.rb +5 -5
  98. data/lib/puppet/face/generate.rb +64 -0
  99. data/lib/puppet/face/help/face.erb +3 -0
  100. data/lib/puppet/face/help/man.erb +1 -1
  101. data/lib/puppet/face/help.rb +37 -29
  102. data/lib/puppet/face/key.rb +4 -3
  103. data/lib/puppet/face/man.rb +12 -10
  104. data/lib/puppet/face/module/build.rb +7 -7
  105. data/lib/puppet/face/module/changes.rb +8 -7
  106. data/lib/puppet/face/module/generate.rb +25 -25
  107. data/lib/puppet/face/module/install.rb +19 -15
  108. data/lib/puppet/face/module/list.rb +16 -12
  109. data/lib/puppet/face/module/search.rb +4 -4
  110. data/lib/puppet/face/module/uninstall.rb +13 -10
  111. data/lib/puppet/face/module/upgrade.rb +11 -7
  112. data/lib/puppet/face/module.rb +3 -3
  113. data/lib/puppet/face/node/clean.rb +8 -8
  114. data/lib/puppet/face/node.rb +6 -6
  115. data/lib/puppet/face/parser.rb +28 -25
  116. data/lib/puppet/face/plugin.rb +14 -21
  117. data/lib/puppet/face/report.rb +10 -10
  118. data/lib/puppet/face/resource.rb +13 -13
  119. data/lib/puppet/face/status.rb +9 -6
  120. data/lib/puppet/feature/base.rb +13 -5
  121. data/lib/puppet/feature/cfpropertylist.rb +3 -0
  122. data/lib/puppet/feature/eventlog.rb +1 -1
  123. data/lib/puppet/feature/hiera_eyaml.rb +3 -0
  124. data/lib/puppet/feature/hocon.rb +3 -0
  125. data/lib/puppet/feature/telnet.rb +9 -0
  126. data/lib/puppet/file_bucket/dipper.rb +62 -6
  127. data/lib/puppet/file_bucket/file.rb +4 -17
  128. data/lib/puppet/file_serving/base.rb +3 -3
  129. data/lib/puppet/file_serving/configuration/parser.rb +12 -12
  130. data/lib/puppet/file_serving/configuration.rb +3 -3
  131. data/lib/puppet/file_serving/content.rb +1 -1
  132. data/lib/puppet/file_serving/fileset.rb +7 -5
  133. data/lib/puppet/file_serving/http_metadata.rb +46 -0
  134. data/lib/puppet/file_serving/metadata.rb +33 -12
  135. data/lib/puppet/file_serving/mount/file.rb +6 -6
  136. data/lib/puppet/file_serving/mount/modules.rb +1 -1
  137. data/lib/puppet/file_serving/mount.rb +1 -1
  138. data/lib/puppet/file_serving/terminus_helper.rb +7 -8
  139. data/lib/puppet/file_serving/terminus_selector.rb +3 -1
  140. data/lib/puppet/file_system/file_impl.rb +13 -4
  141. data/lib/puppet/file_system/memory_impl.rb +10 -2
  142. data/lib/puppet/file_system/path_pattern.rb +7 -6
  143. data/lib/puppet/file_system/uniquefile.rb +5 -5
  144. data/lib/puppet/file_system/windows.rb +39 -16
  145. data/lib/puppet/file_system.rb +46 -5
  146. data/lib/puppet/forge/cache.rb +1 -0
  147. data/lib/puppet/forge/errors.rb +12 -12
  148. data/lib/puppet/forge/repository.rb +5 -36
  149. data/lib/puppet/forge.rb +17 -15
  150. data/lib/puppet/functions/alert.rb +14 -0
  151. data/lib/puppet/functions/annotate.rb +108 -0
  152. data/lib/puppet/functions/assert_type.rb +53 -19
  153. data/lib/puppet/functions/binary_file.rb +19 -0
  154. data/lib/puppet/functions/break.rb +22 -0
  155. data/lib/puppet/functions/call.rb +42 -0
  156. data/lib/puppet/functions/contain.rb +33 -0
  157. data/lib/puppet/functions/crit.rb +14 -0
  158. data/lib/puppet/functions/debug.rb +14 -0
  159. data/lib/puppet/functions/defined.rb +160 -0
  160. data/lib/puppet/functions/dig.rb +23 -0
  161. data/lib/puppet/functions/each.rb +89 -39
  162. data/lib/puppet/functions/emerg.rb +14 -0
  163. data/lib/puppet/functions/epp.rb +29 -37
  164. data/lib/puppet/functions/err.rb +14 -0
  165. data/lib/puppet/functions/eyaml_lookup_key.rb +94 -0
  166. data/lib/puppet/functions/filter.rb +64 -38
  167. data/lib/puppet/functions/find_file.rb +31 -0
  168. data/lib/puppet/functions/hiera.rb +83 -3
  169. data/lib/puppet/functions/hiera_array.rb +73 -4
  170. data/lib/puppet/functions/hiera_hash.rb +82 -2
  171. data/lib/puppet/functions/hiera_include.rb +93 -6
  172. data/lib/puppet/functions/hocon_data.rb +41 -0
  173. data/lib/puppet/functions/include.rb +21 -0
  174. data/lib/puppet/functions/info.rb +14 -0
  175. data/lib/puppet/functions/inline_epp.rb +44 -71
  176. data/lib/puppet/functions/json_data.rb +33 -0
  177. data/lib/puppet/functions/lest.rb +17 -0
  178. data/lib/puppet/functions/lookup.rb +172 -184
  179. data/lib/puppet/functions/map.rb +60 -33
  180. data/lib/puppet/functions/match.rb +32 -14
  181. data/lib/puppet/functions/new.rb +31 -0
  182. data/lib/puppet/functions/next.rb +23 -0
  183. data/lib/puppet/functions/notice.rb +14 -0
  184. data/lib/puppet/functions/reduce.rb +112 -71
  185. data/lib/puppet/functions/regsubst.rb +23 -26
  186. data/lib/puppet/functions/require.rb +37 -0
  187. data/lib/puppet/functions/return.rb +22 -0
  188. data/lib/puppet/functions/reverse_each.rb +25 -0
  189. data/lib/puppet/functions/scanf.rb +15 -18
  190. data/lib/puppet/functions/slice.rb +25 -39
  191. data/lib/puppet/functions/split.rb +3 -3
  192. data/lib/puppet/functions/step.rb +26 -0
  193. data/lib/puppet/functions/strftime.rb +43 -0
  194. data/lib/puppet/functions/then.rb +14 -0
  195. data/lib/puppet/functions/type.rb +31 -0
  196. data/lib/puppet/functions/unique.rb +132 -0
  197. data/lib/puppet/functions/unwrap.rb +40 -0
  198. data/lib/puppet/functions/versioncmp.rb +36 -0
  199. data/lib/puppet/functions/warning.rb +14 -0
  200. data/lib/puppet/functions/with.rb +15 -7
  201. data/lib/puppet/functions/yaml_data.rb +42 -0
  202. data/lib/puppet/functions.rb +226 -76
  203. data/lib/puppet/generate/models/type/property.rb +70 -0
  204. data/lib/puppet/generate/models/type/type.rb +62 -0
  205. data/lib/puppet/generate/templates/type/pcore.erb +42 -0
  206. data/lib/puppet/generate/type.rb +239 -0
  207. data/lib/puppet/graph/rb_tree_map.rb +1 -1
  208. data/lib/puppet/graph/relationship_graph.rb +4 -1
  209. data/lib/puppet/graph/simple_graph.rb +51 -74
  210. data/lib/puppet/indirector/catalog/compiler.rb +242 -38
  211. data/lib/puppet/indirector/catalog/json.rb +18 -0
  212. data/lib/puppet/indirector/certificate/disabled_ca.rb +1 -1
  213. data/lib/puppet/indirector/certificate_request/ca.rb +3 -3
  214. data/lib/puppet/indirector/certificate_request/disabled_ca.rb +1 -1
  215. data/lib/puppet/indirector/certificate_revocation_list/disabled_ca.rb +1 -1
  216. data/lib/puppet/indirector/certificate_status/file.rb +6 -6
  217. data/lib/puppet/indirector/data_binding/none.rb +4 -1
  218. data/lib/puppet/indirector/exec.rb +2 -2
  219. data/lib/puppet/indirector/face.rb +24 -19
  220. data/lib/puppet/indirector/facts/facter.rb +9 -1
  221. data/lib/puppet/indirector/file_bucket_file/file.rb +142 -29
  222. data/lib/puppet/indirector/file_content/http.rb +15 -0
  223. data/lib/puppet/indirector/file_metadata/http.rb +27 -0
  224. data/lib/puppet/indirector/file_server.rb +10 -2
  225. data/lib/puppet/indirector/generic_http.rb +16 -0
  226. data/lib/puppet/indirector/hiera.rb +12 -4
  227. data/lib/puppet/indirector/indirection.rb +25 -18
  228. data/lib/puppet/indirector/json.rb +11 -12
  229. data/lib/puppet/indirector/key/ca.rb +2 -2
  230. data/lib/puppet/indirector/key/disabled_ca.rb +1 -1
  231. data/lib/puppet/indirector/key/file.rb +4 -3
  232. data/lib/puppet/indirector/ldap.rb +6 -5
  233. data/lib/puppet/indirector/memory.rb +1 -1
  234. data/lib/puppet/indirector/msgpack.rb +9 -8
  235. data/lib/puppet/indirector/node/exec.rb +9 -7
  236. data/lib/puppet/indirector/node/ldap.rb +10 -8
  237. data/lib/puppet/indirector/node/plain.rb +2 -1
  238. data/lib/puppet/indirector/node/write_only_yaml.rb +6 -1
  239. data/lib/puppet/indirector/node/yaml.rb +0 -9
  240. data/lib/puppet/indirector/report/processor.rb +2 -2
  241. data/lib/puppet/indirector/report/rest.rb +13 -0
  242. data/lib/puppet/indirector/request.rb +40 -23
  243. data/lib/puppet/indirector/resource/ral.rb +1 -1
  244. data/lib/puppet/indirector/resource/validator.rb +1 -1
  245. data/lib/puppet/indirector/rest.rb +103 -10
  246. data/lib/puppet/indirector/ssl_file.rb +33 -12
  247. data/lib/puppet/indirector/terminus.rb +7 -7
  248. data/lib/puppet/indirector/yaml.rb +5 -5
  249. data/lib/puppet/indirector.rb +2 -2
  250. data/lib/puppet/info_service/class_information_service.rb +110 -0
  251. data/lib/puppet/info_service.rb +7 -0
  252. data/lib/puppet/interface/documentation.rb +1 -1
  253. data/lib/puppet/interface/face_collection.rb +7 -2
  254. data/lib/puppet/interface.rb +12 -4
  255. data/lib/puppet/loaders.rb +6 -0
  256. data/lib/puppet/metatype/manager.rb +25 -8
  257. data/lib/puppet/module.rb +73 -34
  258. data/lib/puppet/module_tool/applications/application.rb +8 -9
  259. data/lib/puppet/module_tool/applications/builder.rb +9 -9
  260. data/lib/puppet/module_tool/applications/checksummer.rb +2 -2
  261. data/lib/puppet/module_tool/applications/installer.rb +21 -20
  262. data/lib/puppet/module_tool/applications/searcher.rb +1 -1
  263. data/lib/puppet/module_tool/applications/uninstaller.rb +2 -1
  264. data/lib/puppet/module_tool/applications/unpacker.rb +4 -4
  265. data/lib/puppet/module_tool/applications/upgrader.rb +19 -18
  266. data/lib/puppet/module_tool/checksums.rb +1 -1
  267. data/lib/puppet/module_tool/contents_description.rb +1 -1
  268. data/lib/puppet/module_tool/dependency.rb +0 -1
  269. data/lib/puppet/module_tool/errors/installer.rb +23 -23
  270. data/lib/puppet/module_tool/errors/shared.rb +44 -42
  271. data/lib/puppet/module_tool/errors/uninstaller.rb +13 -9
  272. data/lib/puppet/module_tool/errors/upgrader.rb +11 -11
  273. data/lib/puppet/module_tool/install_directory.rb +1 -1
  274. data/lib/puppet/module_tool/installed_modules.rb +10 -10
  275. data/lib/puppet/module_tool/local_tarball.rb +7 -7
  276. data/lib/puppet/module_tool/metadata.rb +47 -21
  277. data/lib/puppet/module_tool/shared_behaviors.rb +6 -6
  278. data/lib/puppet/module_tool/skeleton/templates/generator/Gemfile +14 -3
  279. data/lib/puppet/module_tool/skeleton/templates/generator/README.md.erb +48 -38
  280. data/lib/puppet/module_tool/skeleton/templates/generator/Rakefile +19 -4
  281. data/lib/puppet/module_tool/skeleton/templates/generator/{tests → examples}/init.pp.erb +3 -3
  282. data/lib/puppet/module_tool/skeleton/templates/generator/manifests/init.pp.erb +25 -18
  283. data/lib/puppet/module_tool/skeleton/templates/generator/spec/classes/init_spec.rb.erb +1 -2
  284. data/lib/puppet/module_tool/tar/mini.rb +3 -3
  285. data/lib/puppet/module_tool/tar.rb +5 -4
  286. data/lib/puppet/module_tool.rb +11 -7
  287. data/lib/puppet/network/auth_config_parser.rb +13 -12
  288. data/lib/puppet/network/authconfig.rb +23 -3
  289. data/lib/puppet/network/authorization.rb +8 -1
  290. data/lib/puppet/network/authstore.rb +2 -2
  291. data/lib/puppet/network/format.rb +7 -7
  292. data/lib/puppet/network/format_handler.rb +12 -9
  293. data/lib/puppet/network/format_support.rb +11 -5
  294. data/lib/puppet/network/formats.rb +38 -27
  295. data/lib/puppet/network/http/api/indirected_routes.rb +86 -58
  296. data/lib/puppet/network/http/api/master/v3/environment.rb +82 -0
  297. data/lib/puppet/network/http/api/master/v3.rb +7 -1
  298. data/lib/puppet/network/http/compression.rb +12 -8
  299. data/lib/puppet/network/http/connection.rb +21 -15
  300. data/lib/puppet/network/http/error.rb +14 -10
  301. data/lib/puppet/network/http/factory.rb +8 -4
  302. data/lib/puppet/network/http/handler.rb +11 -6
  303. data/lib/puppet/network/http/issues.rb +1 -0
  304. data/lib/puppet/network/http/pool.rb +10 -1
  305. data/lib/puppet/network/http/rack/rest.rb +27 -3
  306. data/lib/puppet/network/http/rack.rb +2 -2
  307. data/lib/puppet/network/http/request.rb +34 -20
  308. data/lib/puppet/network/http/response.rb +13 -1
  309. data/lib/puppet/network/http/webrick/rest.rb +2 -2
  310. data/lib/puppet/network/http/webrick.rb +7 -6
  311. data/lib/puppet/network/rights.rb +7 -17
  312. data/lib/puppet/network/server.rb +2 -2
  313. data/lib/puppet/node/environment.rb +73 -17
  314. data/lib/puppet/node/facts.rb +1 -6
  315. data/lib/puppet/node.rb +61 -18
  316. data/lib/puppet/parameter/boolean.rb +1 -1
  317. data/lib/puppet/parameter/package_options.rb +1 -1
  318. data/lib/puppet/parameter/path.rb +3 -3
  319. data/lib/puppet/parameter/value.rb +1 -1
  320. data/lib/puppet/parameter/value_collection.rb +4 -4
  321. data/lib/puppet/parameter.rb +24 -29
  322. data/lib/puppet/parser/ast/node.rb +1 -1
  323. data/lib/puppet/parser/ast/pops_bridge.rb +103 -29
  324. data/lib/puppet/parser/ast/resource.rb +5 -0
  325. data/lib/puppet/parser/ast/resource_instance.rb +5 -1
  326. data/lib/puppet/parser/ast/resourceparam.rb +5 -0
  327. data/lib/puppet/parser/ast.rb +5 -0
  328. data/lib/puppet/parser/compiler/catalog_validator/env_relationship_validator.rb +64 -0
  329. data/lib/puppet/parser/compiler/catalog_validator/relationship_validator.rb +57 -0
  330. data/lib/puppet/parser/compiler/catalog_validator/site_validator.rb +20 -0
  331. data/lib/puppet/parser/compiler/catalog_validator.rb +33 -0
  332. data/lib/puppet/parser/compiler.rb +351 -128
  333. data/lib/puppet/parser/e4_parser_adapter.rb +14 -14
  334. data/lib/puppet/parser/environment_compiler.rb +199 -0
  335. data/lib/puppet/parser/functions/assert_type.rb +47 -17
  336. data/lib/puppet/parser/functions/binary_file.rb +24 -0
  337. data/lib/puppet/parser/functions/break.rb +39 -0
  338. data/lib/puppet/parser/functions/contain.rb +7 -15
  339. data/lib/puppet/parser/functions/create_resources.rb +49 -25
  340. data/lib/puppet/parser/functions/defined.rb +106 -69
  341. data/lib/puppet/parser/functions/dig.rb +29 -0
  342. data/lib/puppet/parser/functions/each.rb +86 -28
  343. data/lib/puppet/parser/functions/epp.rb +30 -38
  344. data/lib/puppet/parser/functions/file.rb +4 -2
  345. data/lib/puppet/parser/functions/filter.rb +60 -24
  346. data/lib/puppet/parser/functions/find_file.rb +28 -0
  347. data/lib/puppet/parser/functions/fqdn_rand.rb +3 -3
  348. data/lib/puppet/parser/functions/generate.rb +5 -4
  349. data/lib/puppet/parser/functions/hiera.rb +98 -28
  350. data/lib/puppet/parser/functions/hiera_array.rb +86 -29
  351. data/lib/puppet/parser/functions/hiera_hash.rb +96 -31
  352. data/lib/puppet/parser/functions/hiera_include.rb +96 -41
  353. data/lib/puppet/parser/functions/include.rb +5 -8
  354. data/lib/puppet/parser/functions/inline_epp.rb +36 -61
  355. data/lib/puppet/parser/functions/inline_template.rb +3 -3
  356. data/lib/puppet/parser/functions/lest.rb +49 -0
  357. data/lib/puppet/parser/functions/lookup.rb +129 -151
  358. data/lib/puppet/parser/functions/map.rb +56 -21
  359. data/lib/puppet/parser/functions/match.rb +29 -13
  360. data/lib/puppet/parser/functions/new.rb +939 -0
  361. data/lib/puppet/parser/functions/next.rb +38 -0
  362. data/lib/puppet/parser/functions/reduce.rb +98 -61
  363. data/lib/puppet/parser/functions/regsubst.rb +4 -2
  364. data/lib/puppet/parser/functions/require.rb +4 -27
  365. data/lib/puppet/parser/functions/return.rb +71 -0
  366. data/lib/puppet/parser/functions/reverse_each.rb +83 -0
  367. data/lib/puppet/parser/functions/scanf.rb +25 -31
  368. data/lib/puppet/parser/functions/slice.rb +18 -25
  369. data/lib/puppet/parser/functions/split.rb +2 -2
  370. data/lib/puppet/parser/functions/step.rb +84 -0
  371. data/lib/puppet/parser/functions/strftime.rb +185 -0
  372. data/lib/puppet/parser/functions/then.rb +73 -0
  373. data/lib/puppet/parser/functions/type.rb +53 -0
  374. data/lib/puppet/parser/functions/with.rb +17 -9
  375. data/lib/puppet/parser/functions.rb +39 -21
  376. data/lib/puppet/parser/parser_factory.rb +0 -30
  377. data/lib/puppet/parser/relationship.rb +49 -20
  378. data/lib/puppet/parser/resource/param.rb +0 -3
  379. data/lib/puppet/parser/resource.rb +165 -50
  380. data/lib/puppet/parser/scope.rb +419 -200
  381. data/lib/puppet/parser/templatewrapper.rb +4 -3
  382. data/lib/puppet/parser/type_loader.rb +2 -2
  383. data/lib/puppet/parser.rb +3 -1
  384. data/lib/puppet/plugins/configuration.rb +15 -58
  385. data/lib/puppet/plugins/syntax_checkers.rb +6 -11
  386. data/lib/puppet/pops/adaptable.rb +12 -7
  387. data/lib/puppet/pops/adapters.rb +102 -73
  388. data/lib/puppet/pops/evaluator/access_operator.rb +248 -158
  389. data/lib/puppet/pops/evaluator/callable_signature.rb +7 -0
  390. data/lib/puppet/pops/evaluator/closure.rb +251 -109
  391. data/lib/puppet/pops/evaluator/collector_transformer.rb +51 -37
  392. data/lib/puppet/pops/evaluator/collectors/abstract_collector.rb +1 -1
  393. data/lib/puppet/pops/evaluator/collectors/catalog_collector.rb +6 -2
  394. data/lib/puppet/pops/evaluator/collectors/exported_collector.rb +8 -5
  395. data/lib/puppet/pops/evaluator/compare_operator.rb +113 -13
  396. data/lib/puppet/pops/evaluator/epp_evaluator.rb +17 -11
  397. data/lib/puppet/pops/evaluator/evaluator_impl.rb +281 -151
  398. data/lib/puppet/pops/evaluator/external_syntax_support.rb +2 -9
  399. data/lib/puppet/pops/evaluator/json_strict_literal_evaluator.rb +82 -0
  400. data/lib/puppet/pops/evaluator/literal_evaluator.rb +87 -0
  401. data/lib/puppet/pops/evaluator/puppet_proc.rb +1 -1
  402. data/lib/puppet/pops/evaluator/relationship_operator.rb +44 -20
  403. data/lib/puppet/pops/evaluator/runtime3_converter.rb +74 -49
  404. data/lib/puppet/pops/evaluator/runtime3_resource_support.rb +117 -0
  405. data/lib/puppet/pops/evaluator/runtime3_support.rb +142 -91
  406. data/lib/puppet/pops/functions/dispatch.rb +34 -14
  407. data/lib/puppet/pops/functions/dispatcher.rb +17 -16
  408. data/lib/puppet/pops/functions/function.rb +30 -4
  409. data/lib/puppet/pops/issue_reporter.rb +49 -21
  410. data/lib/puppet/pops/issues.rb +404 -102
  411. data/lib/puppet/pops/label_provider.rb +18 -4
  412. data/lib/puppet/pops/loader/base_loader.rb +74 -20
  413. data/lib/puppet/pops/loader/dependency_loader.rb +27 -2
  414. data/lib/puppet/pops/loader/gem_support.rb +2 -2
  415. data/lib/puppet/pops/loader/loader.rb +57 -48
  416. data/lib/puppet/pops/loader/loader_paths.rb +113 -6
  417. data/lib/puppet/pops/loader/module_loaders.rb +128 -35
  418. data/lib/puppet/pops/loader/null_loader.rb +17 -1
  419. data/lib/puppet/pops/loader/predefined_loader.rb +24 -0
  420. data/lib/puppet/pops/loader/puppet_function_instantiator.rb +84 -0
  421. data/lib/puppet/pops/loader/puppet_resource_type_impl_instantiator.rb +79 -0
  422. data/lib/puppet/pops/loader/ruby_function_instantiator.rb +19 -7
  423. data/lib/puppet/pops/loader/runtime3_type_loader.rb +96 -0
  424. data/lib/puppet/pops/loader/static_loader.rb +111 -41
  425. data/lib/puppet/pops/loader/type_definition_instantiator.rb +93 -0
  426. data/lib/puppet/pops/loader/typed_name.rb +54 -0
  427. data/lib/puppet/pops/loaders.rb +213 -31
  428. data/lib/puppet/pops/lookup/configured_data_provider.rb +93 -0
  429. data/lib/puppet/pops/lookup/context.rb +200 -0
  430. data/lib/puppet/pops/lookup/data_adapter.rb +27 -0
  431. data/lib/puppet/pops/lookup/data_dig_function_provider.rb +145 -0
  432. data/lib/puppet/pops/lookup/data_hash_function_provider.rb +126 -0
  433. data/lib/puppet/pops/lookup/data_provider.rb +92 -0
  434. data/lib/puppet/pops/lookup/environment_data_provider.rb +35 -0
  435. data/lib/puppet/pops/lookup/explainer.rb +594 -0
  436. data/lib/puppet/pops/lookup/function_provider.rb +110 -0
  437. data/lib/puppet/pops/lookup/global_data_provider.rb +75 -0
  438. data/lib/puppet/pops/lookup/hiera_config.rb +761 -0
  439. data/lib/puppet/pops/lookup/interpolation.rb +154 -0
  440. data/lib/puppet/pops/lookup/invocation.rb +261 -0
  441. data/lib/puppet/pops/lookup/location_resolver.rb +99 -0
  442. data/lib/puppet/pops/lookup/lookup_adapter.rb +471 -0
  443. data/lib/puppet/pops/lookup/lookup_key.rb +99 -0
  444. data/lib/puppet/pops/lookup/lookup_key_function_provider.rb +92 -0
  445. data/lib/puppet/pops/lookup/module_data_provider.rb +89 -0
  446. data/lib/puppet/pops/lookup/sub_lookup.rb +92 -0
  447. data/lib/puppet/pops/lookup.rb +49 -49
  448. data/lib/puppet/pops/merge_strategy.rb +197 -46
  449. data/lib/puppet/pops/migration/migration_checker.rb +58 -0
  450. data/lib/puppet/pops/model/ast.pp +692 -0
  451. data/lib/puppet/pops/model/ast.rb +4833 -0
  452. data/lib/puppet/pops/model/ast_transformer.rb +15 -9
  453. data/lib/puppet/pops/model/factory.rb +550 -527
  454. data/lib/puppet/pops/model/model_label_provider.rb +33 -8
  455. data/lib/puppet/pops/model/model_tree_dumper.rb +52 -7
  456. data/lib/puppet/pops/parser/code_merger.rb +13 -1
  457. data/lib/puppet/pops/parser/egrammar.ra +190 -67
  458. data/lib/puppet/pops/parser/eparser.rb +1823 -1338
  459. data/lib/puppet/pops/parser/epp_support.rb +27 -12
  460. data/lib/puppet/pops/parser/evaluating_parser.rb +31 -17
  461. data/lib/puppet/pops/parser/heredoc_support.rb +20 -16
  462. data/lib/puppet/pops/parser/interpolation_support.rb +18 -5
  463. data/lib/puppet/pops/parser/lexer2.rb +460 -383
  464. data/lib/puppet/pops/parser/lexer_support.rb +132 -25
  465. data/lib/puppet/pops/parser/locator.rb +86 -9
  466. data/lib/puppet/pops/parser/parser_support.rb +59 -54
  467. data/lib/puppet/pops/parser/slurp_support.rb +37 -12
  468. data/lib/puppet/pops/patterns.rb +16 -1
  469. data/lib/puppet/pops/pcore.rb +103 -0
  470. data/lib/puppet/pops/puppet_stack.rb +43 -0
  471. data/lib/puppet/pops/resource/param.rb +55 -0
  472. data/lib/puppet/pops/resource/resource_type_impl.rb +314 -0
  473. data/lib/puppet/pops/resource/resource_type_set.pcore +22 -0
  474. data/lib/puppet/pops/semantic_error.rb +12 -0
  475. data/lib/puppet/pops/serialization/abstract_reader.rb +176 -0
  476. data/lib/puppet/pops/serialization/abstract_writer.rb +215 -0
  477. data/lib/puppet/pops/serialization/deserializer.rb +80 -0
  478. data/lib/puppet/pops/serialization/extension.rb +157 -0
  479. data/lib/puppet/pops/serialization/from_data_converter.rb +181 -0
  480. data/lib/puppet/pops/serialization/instance_reader.rb +19 -0
  481. data/lib/puppet/pops/serialization/instance_writer.rb +14 -0
  482. data/lib/puppet/pops/serialization/json.rb +297 -0
  483. data/lib/puppet/pops/serialization/json_path.rb +126 -0
  484. data/lib/puppet/pops/serialization/object.rb +71 -0
  485. data/lib/puppet/pops/serialization/serializer.rb +139 -0
  486. data/lib/puppet/pops/serialization/time_factory.rb +67 -0
  487. data/lib/puppet/pops/serialization/to_data_converter.rb +292 -0
  488. data/lib/puppet/pops/serialization.rb +41 -0
  489. data/lib/puppet/pops/time/timespan.rb +718 -0
  490. data/lib/puppet/pops/time/timestamp.rb +148 -0
  491. data/lib/puppet/pops/types/annotatable.rb +36 -0
  492. data/lib/puppet/pops/types/annotation.rb +71 -0
  493. data/lib/puppet/pops/types/class_loader.rb +29 -29
  494. data/lib/puppet/pops/types/enumeration.rb +9 -27
  495. data/lib/puppet/pops/types/implementation_registry.rb +141 -0
  496. data/lib/puppet/pops/types/iterable.rb +308 -0
  497. data/lib/puppet/pops/types/p_binary_type.rb +226 -0
  498. data/lib/puppet/pops/types/p_meta_type.rb +87 -0
  499. data/lib/puppet/pops/types/p_object_type.rb +925 -0
  500. data/lib/puppet/pops/types/p_runtime_type.rb +115 -0
  501. data/lib/puppet/pops/types/p_sem_ver_range_type.rb +191 -0
  502. data/lib/puppet/pops/types/p_sem_ver_type.rb +141 -0
  503. data/lib/puppet/pops/types/p_sensitive_type.rb +73 -0
  504. data/lib/puppet/pops/types/p_timespan_type.rb +192 -0
  505. data/lib/puppet/pops/types/p_timestamp_type.rb +69 -0
  506. data/lib/puppet/pops/types/p_type_set_type.rb +360 -0
  507. data/lib/puppet/pops/types/puppet_object.rb +26 -0
  508. data/lib/puppet/pops/types/recursion_guard.rb +136 -0
  509. data/lib/puppet/pops/types/ruby_generator.rb +439 -0
  510. data/lib/puppet/pops/types/ruby_method.rb +31 -0
  511. data/lib/puppet/pops/types/string_converter.rb +1099 -0
  512. data/lib/puppet/pops/types/type_acceptor.rb +25 -0
  513. data/lib/puppet/pops/types/type_asserter.rb +21 -19
  514. data/lib/puppet/pops/types/type_assertion_error.rb +1 -0
  515. data/lib/puppet/pops/types/type_calculator.rb +252 -1232
  516. data/lib/puppet/pops/types/type_conversion_error.rb +15 -0
  517. data/lib/puppet/pops/types/type_factory.rb +300 -166
  518. data/lib/puppet/pops/types/type_formatter.rb +734 -0
  519. data/lib/puppet/pops/types/type_mismatch_describer.rb +1106 -0
  520. data/lib/puppet/pops/types/type_parser.rb +382 -275
  521. data/lib/puppet/pops/types/type_set_reference.rb +59 -0
  522. data/lib/puppet/pops/types/types.rb +3287 -289
  523. data/lib/puppet/pops/utils.rb +7 -30
  524. data/lib/puppet/pops/validation/checker4_0.rb +353 -125
  525. data/lib/puppet/pops/validation/validator_factory_4_0.rb +13 -5
  526. data/lib/puppet/pops/validation.rb +50 -18
  527. data/lib/puppet/pops/visitor.rb +30 -6
  528. data/lib/puppet/pops.rb +46 -57
  529. data/lib/puppet/property/ensure.rb +4 -4
  530. data/lib/puppet/property/list.rb +1 -10
  531. data/lib/puppet/property.rb +84 -21
  532. data/lib/puppet/provider/aixobject.rb +11 -11
  533. data/lib/puppet/provider/augeas/augeas.rb +89 -34
  534. data/lib/puppet/provider/command.rb +1 -1
  535. data/lib/puppet/provider/cron/crontab.rb +3 -3
  536. data/lib/puppet/provider/exec/posix.rb +4 -4
  537. data/lib/puppet/provider/exec/windows.rb +4 -4
  538. data/lib/puppet/provider/exec.rb +14 -7
  539. data/lib/puppet/provider/file/posix.rb +5 -5
  540. data/lib/puppet/provider/file/windows.rb +4 -4
  541. data/lib/puppet/provider/group/aix.rb +6 -6
  542. data/lib/puppet/provider/group/directoryservice.rb +10 -0
  543. data/lib/puppet/provider/group/groupadd.rb +2 -2
  544. data/lib/puppet/provider/group/pw.rb +2 -1
  545. data/lib/puppet/provider/group/windows_adsi.rb +23 -7
  546. data/lib/puppet/provider/host/parsed.rb +1 -1
  547. data/lib/puppet/provider/macauthorization/macauthorization.rb +20 -19
  548. data/lib/puppet/provider/mailalias/aliases.rb +1 -1
  549. data/lib/puppet/provider/maillist/mailman.rb +2 -2
  550. data/lib/puppet/provider/mcx/mcxcontent.rb +6 -5
  551. data/lib/puppet/provider/mount/parsed.rb +162 -3
  552. data/lib/puppet/provider/mount.rb +2 -1
  553. data/lib/puppet/provider/naginator.rb +1 -1
  554. data/lib/puppet/provider/nameservice/directoryservice.rb +65 -72
  555. data/lib/puppet/provider/nameservice.rb +40 -17
  556. data/lib/puppet/provider/network_device.rb +2 -1
  557. data/lib/puppet/provider/package/aix.rb +5 -5
  558. data/lib/puppet/provider/package/appdmg.rb +7 -6
  559. data/lib/puppet/provider/package/apple.rb +2 -2
  560. data/lib/puppet/provider/package/apt.rb +5 -5
  561. data/lib/puppet/provider/package/aptitude.rb +1 -1
  562. data/lib/puppet/provider/package/aptrpm.rb +2 -2
  563. data/lib/puppet/provider/package/blastwave.rb +4 -4
  564. data/lib/puppet/provider/package/dnf.rb +46 -0
  565. data/lib/puppet/provider/package/dpkg.rb +3 -3
  566. data/lib/puppet/provider/package/fink.rb +3 -3
  567. data/lib/puppet/provider/package/freebsd.rb +1 -1
  568. data/lib/puppet/provider/package/gem.rb +35 -9
  569. data/lib/puppet/provider/package/hpux.rb +1 -1
  570. data/lib/puppet/provider/package/nim.rb +17 -14
  571. data/lib/puppet/provider/package/openbsd.rb +11 -11
  572. data/lib/puppet/provider/package/opkg.rb +1 -1
  573. data/lib/puppet/provider/package/pacman.rb +20 -19
  574. data/lib/puppet/provider/package/pip.rb +83 -22
  575. data/lib/puppet/provider/package/pip3.rb +20 -0
  576. data/lib/puppet/provider/package/pkg.rb +21 -17
  577. data/lib/puppet/provider/package/pkgdmg.rb +12 -9
  578. data/lib/puppet/provider/package/pkgin.rb +6 -6
  579. data/lib/puppet/provider/package/pkgng.rb +143 -0
  580. data/lib/puppet/provider/package/pkgutil.rb +7 -7
  581. data/lib/puppet/provider/package/portage.rb +183 -35
  582. data/lib/puppet/provider/package/ports.rb +3 -6
  583. data/lib/puppet/provider/package/portupgrade.rb +4 -4
  584. data/lib/puppet/provider/package/puppet_gem.rb +0 -0
  585. data/lib/puppet/provider/package/rpm.rb +130 -21
  586. data/lib/puppet/provider/package/rug.rb +1 -1
  587. data/lib/puppet/provider/package/sun.rb +4 -3
  588. data/lib/puppet/provider/package/tdnf.rb +28 -0
  589. data/lib/puppet/provider/package/up2date.rb +1 -1
  590. data/lib/puppet/provider/package/urpmi.rb +1 -1
  591. data/lib/puppet/provider/package/windows/exe_package.rb +10 -9
  592. data/lib/puppet/provider/package/windows/msi_package.rb +4 -4
  593. data/lib/puppet/provider/package/windows/package.rb +12 -4
  594. data/lib/puppet/provider/package/windows.rb +5 -5
  595. data/lib/puppet/provider/package/yum.rb +73 -94
  596. data/lib/puppet/provider/package/zypper.rb +70 -16
  597. data/lib/puppet/provider/package.rb +6 -2
  598. data/lib/puppet/provider/parsedfile.rb +3 -3
  599. data/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +39 -7
  600. data/lib/puppet/provider/selmodule/semodule.rb +20 -16
  601. data/lib/puppet/provider/service/base.rb +4 -3
  602. data/lib/puppet/provider/service/bsd.rb +9 -9
  603. data/lib/puppet/provider/service/daemontools.rb +5 -5
  604. data/lib/puppet/provider/service/debian.rb +14 -5
  605. data/lib/puppet/provider/service/freebsd.rb +1 -1
  606. data/lib/puppet/provider/service/init.rb +27 -3
  607. data/lib/puppet/provider/service/launchd.rb +57 -19
  608. data/lib/puppet/provider/service/rcng.rb +51 -0
  609. data/lib/puppet/provider/service/redhat.rb +2 -1
  610. data/lib/puppet/provider/service/runit.rb +4 -4
  611. data/lib/puppet/provider/service/smf.rb +59 -8
  612. data/lib/puppet/provider/service/src.rb +66 -39
  613. data/lib/puppet/provider/service/systemd.rb +141 -22
  614. data/lib/puppet/provider/service/upstart.rb +1 -3
  615. data/lib/puppet/provider/ssh_authorized_key/parsed.rb +1 -1
  616. data/lib/puppet/provider/sshkey/parsed.rb +20 -10
  617. data/lib/puppet/provider/user/aix.rb +12 -6
  618. data/lib/puppet/provider/user/directoryservice.rb +43 -66
  619. data/lib/puppet/provider/user/hpux.rb +1 -1
  620. data/lib/puppet/provider/user/ldap.rb +1 -1
  621. data/lib/puppet/provider/user/openbsd.rb +1 -0
  622. data/lib/puppet/provider/user/pw.rb +1 -0
  623. data/lib/puppet/provider/user/user_role_add.rb +19 -2
  624. data/lib/puppet/provider/user/useradd.rb +1 -1
  625. data/lib/puppet/provider/user/windows_adsi.rb +51 -2
  626. data/lib/puppet/provider/yumrepo/inifile.rb +12 -9
  627. data/lib/puppet/provider/zfs/zfs.rb +2 -2
  628. data/lib/puppet/provider/zone/solaris.rb +6 -3
  629. data/lib/puppet/provider/zpool/zpool.rb +2 -2
  630. data/lib/puppet/provider.rb +11 -7
  631. data/lib/puppet/reference/configuration.rb +13 -5
  632. data/lib/puppet/reference/indirection.rb +3 -3
  633. data/lib/puppet/reference/metaparameter.rb +1 -1
  634. data/lib/puppet/reference/providers.rb +8 -9
  635. data/lib/puppet/reference/report.rb +9 -12
  636. data/lib/puppet/reference/type.rb +3 -3
  637. data/lib/puppet/relationship.rb +7 -9
  638. data/lib/puppet/reports/http.rb +6 -2
  639. data/lib/puppet/reports.rb +5 -1
  640. data/lib/puppet/resource/capability_finder.rb +128 -0
  641. data/lib/puppet/resource/catalog.rb +163 -51
  642. data/lib/puppet/resource/status.rb +34 -20
  643. data/lib/puppet/resource/type.rb +246 -97
  644. data/lib/puppet/resource/type_collection.rb +97 -17
  645. data/lib/puppet/resource.rb +242 -199
  646. data/lib/puppet/settings/array_setting.rb +1 -1
  647. data/lib/puppet/settings/autosign_setting.rb +1 -1
  648. data/lib/puppet/settings/base_setting.rb +9 -3
  649. data/lib/puppet/settings/boolean_setting.rb +1 -1
  650. data/lib/puppet/settings/config_file.rb +4 -3
  651. data/lib/puppet/settings/directory_setting.rb +6 -0
  652. data/lib/puppet/settings/duration_setting.rb +1 -1
  653. data/lib/puppet/settings/enum_setting.rb +1 -1
  654. data/lib/puppet/settings/environment_conf.rb +28 -8
  655. data/lib/puppet/settings/file_or_directory_setting.rb +6 -0
  656. data/lib/puppet/settings/file_setting.rb +22 -11
  657. data/lib/puppet/settings/ini_file.rb +2 -2
  658. data/lib/puppet/settings/priority_setting.rb +1 -1
  659. data/lib/puppet/settings/server_list_setting.rb +20 -0
  660. data/lib/puppet/settings/symbolic_enum_setting.rb +17 -0
  661. data/lib/puppet/settings/terminus_setting.rb +1 -1
  662. data/lib/puppet/settings/ttl_setting.rb +2 -2
  663. data/lib/puppet/settings.rb +118 -46
  664. data/lib/puppet/ssl/base.rb +16 -3
  665. data/lib/puppet/ssl/certificate.rb +1 -1
  666. data/lib/puppet/ssl/certificate_authority/interface.rb +172 -32
  667. data/lib/puppet/ssl/certificate_authority.rb +67 -31
  668. data/lib/puppet/ssl/certificate_factory.rb +5 -5
  669. data/lib/puppet/ssl/certificate_request.rb +19 -19
  670. data/lib/puppet/ssl/certificate_request_attributes.rb +3 -3
  671. data/lib/puppet/ssl/certificate_revocation_list.rb +3 -3
  672. data/lib/puppet/ssl/certificate_signer.rb +1 -1
  673. data/lib/puppet/ssl/configuration.rb +4 -1
  674. data/lib/puppet/ssl/host.rb +47 -25
  675. data/lib/puppet/ssl/inventory.rb +11 -4
  676. data/lib/puppet/ssl/key.rb +8 -4
  677. data/lib/puppet/ssl/oids.rb +48 -8
  678. data/lib/puppet/ssl/validator/default_validator.rb +6 -7
  679. data/lib/puppet/syntax_checkers/base64.rb +41 -0
  680. data/lib/puppet/syntax_checkers/json.rb +5 -7
  681. data/lib/puppet/test/test_helper.rb +21 -11
  682. data/lib/puppet/transaction/additional_resource_generator.rb +105 -11
  683. data/lib/puppet/transaction/event.rb +45 -7
  684. data/lib/puppet/transaction/event_manager.rb +7 -7
  685. data/lib/puppet/transaction/persistence.rb +84 -0
  686. data/lib/puppet/transaction/report.rb +113 -37
  687. data/lib/puppet/transaction/resource_harness.rb +99 -37
  688. data/lib/puppet/transaction.rb +100 -54
  689. data/lib/puppet/type/augeas.rb +15 -6
  690. data/lib/puppet/type/component.rb +11 -0
  691. data/lib/puppet/type/cron.rb +27 -44
  692. data/lib/puppet/type/exec.rb +82 -52
  693. data/lib/puppet/type/file/checksum.rb +1 -0
  694. data/lib/puppet/type/file/checksum_value.rb +53 -0
  695. data/lib/puppet/type/file/content.rb +37 -122
  696. data/lib/puppet/type/file/data_sync.rb +92 -0
  697. data/lib/puppet/type/file/ensure.rb +22 -19
  698. data/lib/puppet/type/file/group.rb +3 -3
  699. data/lib/puppet/type/file/mode.rb +10 -6
  700. data/lib/puppet/type/file/owner.rb +3 -3
  701. data/lib/puppet/type/file/selcontext.rb +19 -2
  702. data/lib/puppet/type/file/source.rb +134 -37
  703. data/lib/puppet/type/file/target.rb +2 -2
  704. data/lib/puppet/type/file.rb +160 -61
  705. data/lib/puppet/type/filebucket.rb +3 -8
  706. data/lib/puppet/type/group.rb +28 -10
  707. data/lib/puppet/type/host.rb +7 -7
  708. data/lib/puppet/type/interface.rb +9 -4
  709. data/lib/puppet/type/k5login.rb +1 -1
  710. data/lib/puppet/type/macauthorization.rb +2 -2
  711. data/lib/puppet/type/mailalias.rb +2 -18
  712. data/lib/puppet/type/maillist.rb +1 -1
  713. data/lib/puppet/type/mount.rb +31 -8
  714. data/lib/puppet/type/notify.rb +3 -1
  715. data/lib/puppet/type/package.rb +37 -17
  716. data/lib/puppet/type/resources.rb +7 -7
  717. data/lib/puppet/type/schedule.rb +14 -14
  718. data/lib/puppet/type/scheduled_task.rb +18 -5
  719. data/lib/puppet/type/service.rb +25 -1
  720. data/lib/puppet/type/ssh_authorized_key.rb +20 -30
  721. data/lib/puppet/type/sshkey.rb +9 -7
  722. data/lib/puppet/type/stage.rb +1 -1
  723. data/lib/puppet/type/tidy.rb +24 -15
  724. data/lib/puppet/type/user.rb +112 -53
  725. data/lib/puppet/type/yumrepo.rb +36 -16
  726. data/lib/puppet/type/zone.rb +13 -13
  727. data/lib/puppet/type/zpool.rb +3 -3
  728. data/lib/puppet/type.rb +175 -47
  729. data/lib/puppet/util/at_fork/noop.rb +18 -0
  730. data/lib/puppet/util/at_fork/solaris.rb +158 -0
  731. data/lib/puppet/util/at_fork.rb +35 -0
  732. data/lib/puppet/util/autoload.rb +18 -13
  733. data/lib/puppet/util/backups.rb +6 -6
  734. data/lib/puppet/util/character_encoding.rb +98 -0
  735. data/lib/puppet/util/checksums.rb +74 -31
  736. data/lib/puppet/util/classgen.rb +5 -5
  737. data/lib/puppet/util/command_line/puppet_option_parser.rb +3 -3
  738. data/lib/puppet/util/command_line/trollop.rb +32 -32
  739. data/lib/puppet/util/command_line.rb +14 -6
  740. data/lib/puppet/util/diff.rb +1 -1
  741. data/lib/puppet/util/errors.rb +4 -4
  742. data/lib/puppet/util/execution.rb +42 -23
  743. data/lib/puppet/util/feature.rb +5 -5
  744. data/lib/puppet/util/fileparsing.rb +8 -8
  745. data/lib/puppet/util/filetype.rb +26 -20
  746. data/lib/puppet/util/http_proxy.rb +132 -0
  747. data/lib/puppet/util/inifile.rb +5 -5
  748. data/lib/puppet/util/instance_loader.rb +2 -2
  749. data/lib/puppet/util/json_lockfile.rb +4 -4
  750. data/lib/puppet/util/ldap/connection.rb +2 -2
  751. data/lib/puppet/util/ldap/manager.rb +2 -2
  752. data/lib/puppet/util/limits.rb +1 -1
  753. data/lib/puppet/util/log/destinations.rb +33 -18
  754. data/lib/puppet/util/log.rb +92 -16
  755. data/lib/puppet/util/logging.rb +88 -6
  756. data/lib/puppet/util/metric.rb +9 -6
  757. data/lib/puppet/util/monkey_patches.rb +41 -65
  758. data/lib/puppet/util/multi_match.rb +51 -0
  759. data/lib/puppet/util/network_device/cisco/device.rb +29 -11
  760. data/lib/puppet/util/network_device/cisco/interface.rb +21 -9
  761. data/lib/puppet/util/network_device/config.rb +7 -7
  762. data/lib/puppet/util/network_device/transport/ssh.rb +13 -9
  763. data/lib/puppet/util/network_device/transport/telnet.rb +39 -36
  764. data/lib/puppet/util/network_device.rb +1 -1
  765. data/lib/puppet/util/plist.rb +153 -0
  766. data/lib/puppet/util/posix.rb +5 -5
  767. data/lib/puppet/util/profiler/aggregate.rb +1 -1
  768. data/lib/puppet/util/profiler/around_profiler.rb +1 -1
  769. data/lib/puppet/util/profiler/wall_clock.rb +1 -1
  770. data/lib/puppet/util/profiler.rb +1 -1
  771. data/lib/puppet/util/provider_features.rb +1 -1
  772. data/lib/puppet/util/psych_support.rb +4 -12
  773. data/lib/puppet/util/rdoc/generators/puppet_generator.rb +3 -3
  774. data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +2 -1
  775. data/lib/puppet/util/rdoc.rb +6 -6
  776. data/lib/puppet/util/reference.rb +9 -7
  777. data/lib/puppet/util/resource_template.rb +2 -2
  778. data/lib/puppet/util/retry_action.rb +2 -2
  779. data/lib/puppet/util/rubygems.rb +1 -1
  780. data/lib/puppet/util/run_mode.rb +3 -16
  781. data/lib/puppet/util/selinux.rb +54 -12
  782. data/lib/puppet/util/skip_tags.rb +9 -0
  783. data/lib/puppet/util/splayer.rb +18 -0
  784. data/lib/puppet/util/storage.rb +5 -5
  785. data/lib/puppet/util/suidmanager.rb +4 -4
  786. data/lib/puppet/util/symbolic_file_mode.rb +9 -9
  787. data/lib/puppet/util/tag_set.rb +1 -4
  788. data/lib/puppet/util/tagging.rb +9 -3
  789. data/lib/puppet/util/watcher/periodic_watcher.rb +2 -2
  790. data/lib/puppet/util/windows/access_control_entry.rb +2 -2
  791. data/lib/puppet/util/windows/access_control_list.rb +3 -3
  792. data/lib/puppet/util/windows/adsi.rb +222 -85
  793. data/lib/puppet/util/windows/api_types.rb +28 -19
  794. data/lib/puppet/util/windows/com.rb +7 -7
  795. data/lib/puppet/util/windows/error.rb +3 -3
  796. data/lib/puppet/util/windows/eventlog.rb +192 -0
  797. data/lib/puppet/util/windows/file.rb +115 -22
  798. data/lib/puppet/util/windows/principal.rb +191 -0
  799. data/lib/puppet/util/windows/process.rb +90 -13
  800. data/lib/puppet/util/windows/registry.rb +31 -25
  801. data/lib/puppet/util/windows/root_certs.rb +6 -6
  802. data/lib/puppet/util/windows/security.rb +52 -51
  803. data/lib/puppet/util/windows/security_descriptor.rb +1 -1
  804. data/lib/puppet/util/windows/sid.rb +89 -20
  805. data/lib/puppet/util/windows/taskscheduler.rb +154 -98
  806. data/lib/puppet/util/windows/user.rb +38 -20
  807. data/lib/puppet/util/windows.rb +7 -0
  808. data/lib/puppet/util/yaml.rb +15 -3
  809. data/lib/puppet/util.rb +259 -33
  810. data/lib/puppet/vendor/deep_merge/deep_merge.gemspec +1 -1
  811. data/lib/puppet/vendor/deep_merge/test/test_deep_merge.rb +1 -1
  812. data/lib/puppet/vendor/load_semantic_puppet.rb +1 -0
  813. data/lib/puppet/vendor/pathspec/LICENSE +2 -2
  814. data/lib/puppet/vendor/pathspec/README.md +1 -1
  815. data/lib/puppet/vendor/pathspec/lib/pathspec.rb +2 -1
  816. data/lib/puppet/vendor/require_vendored.rb +0 -1
  817. data/lib/puppet/vendor/semantic/lib/semantic.rb +4 -6
  818. data/lib/puppet/vendor/{semantic/lib/semantic → semantic_puppet/lib/semantic_puppet}/dependency/graph.rb +2 -2
  819. data/lib/puppet/vendor/{semantic/lib/semantic → semantic_puppet/lib/semantic_puppet}/dependency/graph_node.rb +2 -2
  820. data/lib/puppet/vendor/{semantic/lib/semantic → semantic_puppet/lib/semantic_puppet}/dependency/module_release.rb +17 -5
  821. data/lib/puppet/vendor/{semantic/lib/semantic → semantic_puppet/lib/semantic_puppet}/dependency/source.rb +2 -2
  822. data/lib/puppet/vendor/{semantic/lib/semantic → semantic_puppet/lib/semantic_puppet}/dependency/unsatisfiable_graph.rb +2 -2
  823. data/lib/puppet/vendor/{semantic/lib/semantic → semantic_puppet/lib/semantic_puppet}/dependency.rb +7 -7
  824. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/gem_version.rb +3 -0
  825. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version.rb +203 -0
  826. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version_range.rb +758 -0
  827. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet.rb +9 -0
  828. data/lib/puppet/vendor/semantic_puppet/locales/config.yaml +21 -0
  829. data/lib/puppet/version.rb +7 -3
  830. data/lib/puppet.rb +104 -6
  831. data/lib/puppet_x.rb +7 -1
  832. data/locales/config.yaml +29 -0
  833. data/locales/puppet.pot +7995 -0
  834. data/man/man5/puppet.conf.5 +61 -41
  835. data/man/man8/puppet-agent.8 +6 -3
  836. data/man/man8/puppet-apply.8 +6 -3
  837. data/man/man8/puppet-ca.8 +3 -3
  838. data/man/man8/puppet-catalog.8 +3 -3
  839. data/man/man8/puppet-cert.8 +3 -3
  840. data/man/man8/puppet-certificate.8 +3 -3
  841. data/man/man8/puppet-certificate_request.8 +3 -3
  842. data/man/man8/puppet-certificate_revocation_list.8 +3 -3
  843. data/man/man8/puppet-config.8 +4 -4
  844. data/man/man8/puppet-describe.8 +2 -2
  845. data/man/man8/puppet-device.8 +7 -4
  846. data/man/man8/puppet-doc.8 +2 -2
  847. data/man/man8/puppet-epp.8 +3 -3
  848. data/man/man8/puppet-facts.8 +3 -3
  849. data/man/man8/puppet-filebucket.8 +3 -3
  850. data/man/man8/puppet-help.8 +3 -3
  851. data/man/man8/puppet-inspect.8 +3 -3
  852. data/man/man8/puppet-key.8 +3 -3
  853. data/man/man8/puppet-man.8 +3 -3
  854. data/man/man8/puppet-master.8 +6 -3
  855. data/man/man8/puppet-module.8 +10 -10
  856. data/man/man8/puppet-node.8 +3 -3
  857. data/man/man8/puppet-parser.8 +3 -3
  858. data/man/man8/puppet-plugin.8 +3 -3
  859. data/man/man8/puppet-report.8 +3 -3
  860. data/man/man8/puppet-resource.8 +3 -3
  861. data/man/man8/puppet-status.8 +4 -4
  862. data/man/man8/puppet.8 +2 -2
  863. data/spec/fixtures/module.tar.gz +0 -0
  864. data/spec/fixtures/unit/application/environments/production/data/common.yaml +22 -0
  865. data/spec/fixtures/unit/application/environments/production/environment.conf +1 -0
  866. data/spec/fixtures/unit/application/environments/production/manifests/site.pp +1 -0
  867. data/spec/fixtures/unit/application/environments/puppet_func_provider/environment.conf +1 -0
  868. data/spec/fixtures/unit/application/environments/puppet_func_provider/functions/environment/data.pp +10 -0
  869. data/spec/fixtures/unit/application/environments/puppet_func_provider/manifests/site.pp +1 -0
  870. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/data/bad.json +3 -0
  871. data/spec/fixtures/unit/data_providers/environments/{sample → hiera_bad_syntax_json}/environment.conf +1 -1
  872. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/hiera.yaml +5 -0
  873. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/manifests/site.pp +5 -0
  874. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/data/bad.yaml +3 -0
  875. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/environment.conf +2 -0
  876. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/hiera.yaml +5 -0
  877. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/manifests/site.pp +5 -0
  878. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/data/common.yaml +2 -0
  879. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/environment.conf +2 -0
  880. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/manifests/site.pp +1 -0
  881. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/data/common.yaml +2 -0
  882. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/manifests/init.pp +5 -0
  883. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/metadata.json +9 -0
  884. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/first.json +3 -0
  885. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/name.yaml +2 -0
  886. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/second.json +3 -0
  887. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/single.yaml +2 -0
  888. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/third_utf8.json +3 -0
  889. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/utf8.yaml +3 -0
  890. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data2/single.yaml +2 -0
  891. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/environment.conf +2 -0
  892. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/hiera.yaml +22 -0
  893. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/manifests/site.pp +5 -0
  894. data/spec/fixtures/unit/data_providers/environments/hiera_misc/data/common.yaml +48 -0
  895. data/spec/fixtures/unit/data_providers/environments/hiera_misc/environment.conf +2 -0
  896. data/spec/fixtures/unit/data_providers/environments/hiera_misc/manifests/site.pp +1 -0
  897. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/data/common.yaml +30 -0
  898. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/manifests/init.pp +13 -0
  899. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/metadata.json +9 -0
  900. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/data/common.yaml +4 -0
  901. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/data/specific.yaml +4 -0
  902. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/environment.conf +2 -0
  903. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/hiera.yaml +7 -0
  904. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/manifests/site.pp +1 -0
  905. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/first.json +3 -0
  906. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/name.yaml +2 -0
  907. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/second.json +3 -0
  908. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/server1.yaml +1 -0
  909. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/server2.yaml +1 -0
  910. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/single.yaml +2 -0
  911. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data2/single.yaml +2 -0
  912. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/hiera.yaml +20 -0
  913. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/manifests/init.pp +5 -0
  914. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/metadata.json +9 -0
  915. data/spec/fixtures/unit/data_providers/environments/hiera_modules/data/common.yaml +4 -0
  916. data/spec/fixtures/unit/data_providers/environments/hiera_modules/data/specific.yaml +4 -0
  917. data/spec/fixtures/unit/data_providers/environments/hiera_modules/environment.conf +2 -0
  918. data/spec/fixtures/unit/data_providers/environments/hiera_modules/hiera.yaml +7 -0
  919. data/spec/fixtures/unit/data_providers/environments/hiera_modules/manifests/site.pp +1 -0
  920. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/data/common.yaml +6 -0
  921. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/hiera.yaml +5 -0
  922. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/manifests/init.pp +2 -0
  923. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/metadata.json +9 -0
  924. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/data/common.yaml +4 -0
  925. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/hiera.yaml +5 -0
  926. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/manifests/init.pp +3 -0
  927. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/metadata.json +9 -0
  928. data/spec/fixtures/unit/data_providers/environments/production/lib/puppet/functions/environment/data.rb +3 -1
  929. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/lib/puppet/functions/abc/data.rb +2 -1
  930. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/manifests/init.pp +2 -1
  931. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/metadata.json +9 -0
  932. data/spec/fixtures/unit/data_providers/environments/production/modules/xyz/functions/data.pp +6 -0
  933. data/spec/fixtures/unit/data_providers/environments/production/modules/xyz/manifests/init.pp +9 -0
  934. data/spec/fixtures/unit/data_providers/environments/production/modules/xyz/metadata.json +9 -0
  935. data/spec/fixtures/unit/functions/lookup/data/common.yaml +19 -0
  936. data/spec/fixtures/unit/functions/lookup_fixture/data/common.yaml +19 -0
  937. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/abc/metadata.json +9 -0
  938. data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/modules/bad_data/lib/puppet/functions/bad_data/data.rb +1 -0
  939. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bad_data/manifests/init.pp +2 -0
  940. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bad_data/metadata.json +9 -0
  941. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bca/metadata.json +9 -0
  942. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/data/empty.json +0 -0
  943. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/hiera.yaml +5 -0
  944. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/manifests/init.pp +2 -0
  945. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/metadata.json +9 -0
  946. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/data/empty_key.json +1 -0
  947. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/hiera.yaml +5 -0
  948. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/manifests/init.pp +2 -0
  949. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/metadata.json +9 -0
  950. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/data/empty_key.yaml +1 -0
  951. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/hiera.yaml +5 -0
  952. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/manifests/init.pp +2 -0
  953. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/metadata.json +9 -0
  954. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/data/empty.yaml +2 -0
  955. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/hiera.yaml +5 -0
  956. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/manifests/init.pp +2 -0
  957. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/metadata.json +9 -0
  958. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/data/first.json +4 -0
  959. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/hiera.yaml +8 -0
  960. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/manifests/init.pp +5 -0
  961. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/metadata.json +9 -0
  962. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/lib/puppet/functions/meta/data.rb +9 -0
  963. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/manifests/init.pp +3 -0
  964. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/metadata.json +9 -0
  965. data/spec/fixtures/unit/module/trailing-comma.json +1 -1
  966. data/spec/fixtures/unit/parser/lexer/subclass_name_duplication.pp +0 -0
  967. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/functions/usee_puppet.pp +3 -0
  968. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/functions/usee/usee_ruby.rb +6 -0
  969. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/type/usee_type.rb +5 -0
  970. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/manifests/init.pp +8 -0
  971. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/types/zero.pp +1 -0
  972. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee2/lib/puppet/functions/usee2/callee.rb +5 -0
  973. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_puppet.pp +5 -0
  974. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_puppet_init.pp +5 -0
  975. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_ruby.pp +5 -0
  976. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/caller2.rb +5 -0
  977. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_puppet.rb +5 -0
  978. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_puppet_init.rb +5 -0
  979. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_ruby.rb +5 -0
  980. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/manifests/init.pp +87 -0
  981. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/{user → modules/user}/metadata.json +2 -1
  982. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/types/withuseeone.pp +1 -0
  983. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/types/withuseezero.pp +1 -0
  984. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcalled.pp +3 -0
  985. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcaller.pp +3 -0
  986. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcaller4.pp +3 -0
  987. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/lib/puppet/functions/user/callingpuppet.rb +5 -0
  988. data/spec/fixtures/unit/pops/loaders/loaders/module_no_lib/modules/modulea/functions/hello.pp +3 -0
  989. data/spec/fixtures/unit/pops/loaders/loaders/module_no_lib/modules/modulea/manifests/init.pp +3 -0
  990. data/spec/fixtures/unit/pops/loaders/loaders/module_no_lib/modules/modulea/metadata.json +10 -0
  991. data/spec/fixtures/unit/pops/loaders/loaders/no_modules/manifests/site.pp +10 -0
  992. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/functions/hello.pp +3 -0
  993. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/functions/subspace/hello.pp +3 -0
  994. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/metadata.json +1 -10
  995. data/spec/fixtures/unit/pops/parser/lexer/subclass_name_duplication.pp +0 -0
  996. data/spec/fixtures/unit/provider/mount/parsed/aix.filesystems +93 -85
  997. data/spec/fixtures/unit/provider/mount/parsed/aix.mount +11 -7
  998. data/spec/fixtures/unit/provider/package/pkgng/pkg.info +8 -0
  999. data/spec/fixtures/unit/provider/package/pkgng/pkg.query +1 -0
  1000. data/spec/fixtures/unit/provider/package/pkgng/pkg.query_absent +1 -0
  1001. data/spec/fixtures/unit/provider/package/pkgng/pkg.version +3 -0
  1002. data/spec/fixtures/unit/provider/package/yum/yum-check-update-broken-notices.txt +187 -0
  1003. data/spec/fixtures/unit/provider/package/yum/yum-check-update-obsoletes.txt +195 -0
  1004. data/spec/fixtures/unit/provider/package/yum/yum-check-update-security.txt +184 -0
  1005. data/spec/fixtures/unit/provider/package/zypper/zypper-list-updates-empty.out +3 -0
  1006. data/spec/fixtures/unit/provider/service/smf/svcs.out +4 -3
  1007. data/spec/fixtures/unit/provider/sshkey/parsed/sample_with_blank_lines +8 -0
  1008. data/spec/fixtures/vcr/cassettes/Puppet_Network_HTTP_Connection/when_handling_requests/_request_get/should_yield_to_the_block.yml +24 -0
  1009. data/spec/fixtures/vcr/cassettes/Puppet_Network_HTTP_Connection/when_handling_requests/_request_head/should_yield_to_the_block.yml +24 -0
  1010. data/spec/fixtures/vcr/cassettes/Puppet_Network_HTTP_Connection/when_handling_requests/_request_post/should_yield_to_the_block.yml +24 -0
  1011. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_md5/should_fetch_if_not_on_the_local_disk.yml +205 -0
  1012. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_md5/should_not_update_if_content_on_disk_is_up-to-date.yml +213 -0
  1013. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_md5/should_update_if_content_differs_on_disk.yml +213 -0
  1014. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_mtime/should_fetch_if_mtime_is_older_on_disk.yml +205 -0
  1015. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_mtime/should_fetch_if_no_header_specified.yml +197 -0
  1016. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_mtime/should_fetch_if_not_on_the_local_disk.yml +205 -0
  1017. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_mtime/should_not_update_if_mtime_is_newer_on_disk.yml +205 -0
  1018. data/spec/integration/agent/logging_spec.rb +15 -14
  1019. data/spec/integration/application/apply_spec.rb +442 -32
  1020. data/spec/integration/application/doc_spec.rb +0 -0
  1021. data/spec/integration/application/lookup_spec.rb +155 -0
  1022. data/spec/integration/configurer_spec.rb +1 -1
  1023. data/spec/integration/data_binding_spec.rb +195 -0
  1024. data/spec/integration/defaults_spec.rb +29 -4
  1025. data/spec/integration/directory_environments_spec.rb +16 -0
  1026. data/spec/integration/environments/default_manifest_spec.rb +16 -16
  1027. data/spec/integration/environments/setting_hooks_spec.rb +1 -1
  1028. data/spec/integration/environments/settings_spec.rb +32 -4
  1029. data/spec/integration/faces/ca_spec.rb +0 -0
  1030. data/spec/integration/faces/config_spec.rb +80 -0
  1031. data/spec/integration/faces/documentation_spec.rb +2 -2
  1032. data/spec/integration/faces/plugin_spec.rb +0 -4
  1033. data/spec/integration/file_bucket/file_spec.rb +2 -2
  1034. data/spec/integration/file_serving/fileset_spec.rb +0 -0
  1035. data/spec/integration/file_serving/terminus_helper_spec.rb +0 -0
  1036. data/spec/integration/file_system/uniquefile_spec.rb +29 -0
  1037. data/spec/integration/indirector/catalog/compiler_spec.rb +0 -0
  1038. data/spec/integration/indirector/direct_file_server_spec.rb +0 -0
  1039. data/spec/integration/indirector/facts/facter_spec.rb +97 -0
  1040. data/spec/integration/indirector/file_content/file_server_spec.rb +1 -0
  1041. data/spec/integration/indirector/file_metadata/file_server_spec.rb +1 -0
  1042. data/spec/integration/indirector/node/ldap_spec.rb +0 -0
  1043. data/spec/integration/module_tool/tar/mini_spec.rb +28 -0
  1044. data/spec/integration/network/formats_spec.rb +0 -0
  1045. data/spec/integration/network/http/api/indirected_routes_spec.rb +33 -0
  1046. data/spec/integration/node/environment_spec.rb +34 -0
  1047. data/spec/integration/node/facts_spec.rb +0 -0
  1048. data/spec/integration/node_spec.rb +0 -0
  1049. data/spec/integration/parser/catalog_spec.rb +15 -3
  1050. data/spec/integration/parser/class_spec.rb +6 -6
  1051. data/spec/integration/parser/collection_spec.rb +18 -0
  1052. data/spec/integration/parser/compiler_spec.rb +911 -658
  1053. data/spec/integration/parser/dynamic_scoping_spec.rb +66 -0
  1054. data/spec/integration/parser/parameter_defaults_spec.rb +358 -0
  1055. data/spec/integration/parser/pcore_resource_spec.rb +260 -0
  1056. data/spec/integration/parser/resource_expressions_spec.rb +10 -5
  1057. data/spec/integration/parser/scope_spec.rb +99 -11
  1058. data/spec/integration/parser/undef_param_spec.rb +9 -1
  1059. data/spec/integration/provider/mailalias/aliases_spec.rb +0 -0
  1060. data/spec/integration/provider/mount_spec.rb +23 -36
  1061. data/spec/integration/provider/service/init_spec.rb +0 -0
  1062. data/spec/integration/provider/service/windows_spec.rb +3 -2
  1063. data/spec/integration/provider/ssh_authorized_key_spec.rb +0 -0
  1064. data/spec/integration/provider/yumrepo_spec.rb +4 -1
  1065. data/spec/integration/reference/providers_spec.rb +0 -0
  1066. data/spec/integration/reports_spec.rb +0 -0
  1067. data/spec/integration/resource/catalog_spec.rb +1 -5
  1068. data/spec/integration/resource/type_collection_spec.rb +14 -0
  1069. data/spec/integration/ssl/autosign_spec.rb +18 -3
  1070. data/spec/integration/ssl/certificate_authority_spec.rb +0 -1
  1071. data/spec/integration/ssl/certificate_request_spec.rb +0 -1
  1072. data/spec/integration/ssl/certificate_revocation_list_spec.rb +0 -1
  1073. data/spec/integration/ssl/host_spec.rb +0 -1
  1074. data/spec/integration/ssl/key_spec.rb +104 -0
  1075. data/spec/integration/test/test_helper_spec.rb +32 -0
  1076. data/spec/integration/transaction/report_spec.rb +683 -1
  1077. data/spec/integration/transaction_spec.rb +128 -4
  1078. data/spec/integration/type/exec_spec.rb +0 -0
  1079. data/spec/integration/type/file_spec.rb +582 -51
  1080. data/spec/integration/type/package_spec.rb +79 -2
  1081. data/spec/integration/type/tidy_spec.rb +21 -9
  1082. data/spec/integration/type/user_spec.rb +13 -6
  1083. data/spec/integration/type_spec.rb +0 -0
  1084. data/spec/integration/util/autoload_spec.rb +0 -0
  1085. data/spec/integration/util/execution_spec.rb +30 -0
  1086. data/spec/integration/util/rdoc/parser_spec.rb +1 -1
  1087. data/spec/integration/util/settings_spec.rb +26 -0
  1088. data/spec/integration/util/windows/adsi_spec.rb +99 -0
  1089. data/spec/integration/util/windows/principal_spec.rb +250 -0
  1090. data/spec/integration/util/windows/process_spec.rb +35 -2
  1091. data/spec/{unit → integration}/util/windows/registry_spec.rb +92 -2
  1092. data/spec/integration/util/windows/security_spec.rb +75 -21
  1093. data/spec/integration/util/windows/user_spec.rb +27 -5
  1094. data/spec/integration/util_spec.rb +49 -27
  1095. data/spec/lib/matchers/include_in_order.rb +2 -3
  1096. data/spec/lib/matchers/json.rb +3 -3
  1097. data/spec/lib/matchers/resource.rb +22 -1
  1098. data/spec/lib/puppet/face/1.0.0/huzzah.rb +1 -1
  1099. data/spec/lib/puppet/face/basetest.rb +1 -1
  1100. data/spec/lib/puppet/face/huzzah.rb +1 -1
  1101. data/spec/lib/puppet/face/version_matching.rb +1 -1
  1102. data/spec/lib/puppet/indirector_testing.rb +4 -0
  1103. data/spec/lib/puppet_spec/character_encoding.rb +12 -0
  1104. data/spec/lib/puppet_spec/compiler.rb +40 -4
  1105. data/spec/lib/puppet_spec/files.rb +16 -2
  1106. data/spec/lib/puppet_spec/fixtures.rb +0 -0
  1107. data/spec/lib/puppet_spec/language.rb +3 -1
  1108. data/spec/lib/puppet_spec/matchers.rb +6 -4
  1109. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +2 -2
  1110. data/spec/lib/puppet_spec/module_tool/stub_source.rb +1 -1
  1111. data/spec/lib/puppet_spec/modules.rb +2 -2
  1112. data/spec/lib/puppet_spec/network.rb +22 -14
  1113. data/spec/lib/puppet_spec/pops.rb +13 -0
  1114. data/spec/lib/puppet_spec/unindent.rb +5 -0
  1115. data/spec/lib/puppet_spec/verbose.rb +0 -0
  1116. data/spec/shared_behaviours/all_parsedfile_providers.rb +0 -0
  1117. data/spec/shared_behaviours/file_server_terminus.rb +0 -0
  1118. data/spec/shared_behaviours/file_serving.rb +0 -0
  1119. data/spec/shared_behaviours/iterative_functions.rb +9 -9
  1120. data/spec/shared_behaviours/memory_terminus.rb +0 -0
  1121. data/spec/shared_behaviours/path_parameters.rb +0 -0
  1122. data/spec/shared_behaviours/things_that_declare_options.rb +0 -0
  1123. data/spec/shared_contexts/types_setup.rb +143 -0
  1124. data/spec/shared_examples/rhel_package_provider.rb +356 -0
  1125. data/spec/spec_helper.rb +23 -13
  1126. data/spec/unit/agent/locker_spec.rb +4 -4
  1127. data/spec/unit/agent_spec.rb +23 -46
  1128. data/spec/unit/application/agent_spec.rb +22 -0
  1129. data/spec/unit/application/apply_spec.rb +59 -14
  1130. data/spec/unit/application/cert_spec.rb +20 -0
  1131. data/spec/unit/application/certificate_spec.rb +0 -0
  1132. data/spec/unit/application/config_spec.rb +0 -0
  1133. data/spec/unit/application/describe_spec.rb +19 -0
  1134. data/spec/unit/application/device_spec.rb +41 -2
  1135. data/spec/unit/application/doc_spec.rb +0 -0
  1136. data/spec/unit/application/face_base_spec.rb +22 -6
  1137. data/spec/unit/application/facts_spec.rb +0 -0
  1138. data/spec/unit/application/filebucket_spec.rb +88 -2
  1139. data/spec/unit/application/indirection_base_spec.rb +0 -0
  1140. data/spec/unit/application/lookup_spec.rb +532 -0
  1141. data/spec/unit/application/master_spec.rb +53 -11
  1142. data/spec/unit/application/resource_spec.rb +39 -1
  1143. data/spec/unit/application_spec.rb +3 -9
  1144. data/spec/unit/capability_spec.rb +412 -0
  1145. data/spec/unit/configurer/downloader_factory_spec.rb +0 -0
  1146. data/spec/unit/configurer/downloader_spec.rb +5 -5
  1147. data/spec/unit/configurer/fact_handler_spec.rb +76 -20
  1148. data/spec/unit/configurer/plugin_handler_spec.rb +5 -8
  1149. data/spec/unit/configurer_spec.rb +372 -58
  1150. data/spec/unit/confine/exists_spec.rb +0 -0
  1151. data/spec/unit/confine/false_spec.rb +0 -0
  1152. data/spec/unit/confine/feature_spec.rb +0 -0
  1153. data/spec/unit/confine/true_spec.rb +0 -0
  1154. data/spec/unit/confine/variable_spec.rb +0 -0
  1155. data/spec/unit/confine_collection_spec.rb +0 -0
  1156. data/spec/unit/confine_spec.rb +0 -0
  1157. data/spec/unit/confiner_spec.rb +0 -0
  1158. data/spec/unit/context/trusted_information_spec.rb +24 -1
  1159. data/spec/unit/daemon_spec.rb +18 -8
  1160. data/spec/unit/data_providers/function_data_provider_spec.rb +30 -3
  1161. data/spec/unit/data_providers/hiera_data_provider_spec.rb +361 -0
  1162. data/spec/unit/defaults_spec.rb +34 -17
  1163. data/spec/unit/environments_spec.rb +26 -4
  1164. data/spec/unit/etc_spec.rb +442 -0
  1165. data/spec/unit/external/pson_spec.rb +0 -0
  1166. data/spec/unit/face/ca_spec.rb +10 -0
  1167. data/spec/unit/face/catalog_spec.rb +0 -0
  1168. data/spec/unit/face/certificate_request_spec.rb +10 -0
  1169. data/spec/unit/face/certificate_revocation_list_spec.rb +10 -0
  1170. data/spec/unit/face/certificate_spec.rb +10 -2
  1171. data/spec/unit/face/config_spec.rb +47 -0
  1172. data/spec/unit/face/epp_face_spec.rb +24 -5
  1173. data/spec/unit/face/facts_spec.rb +0 -0
  1174. data/spec/unit/face/generate_spec.rb +230 -0
  1175. data/spec/unit/face/help_spec.rb +70 -0
  1176. data/spec/unit/face/key_spec.rb +10 -0
  1177. data/spec/unit/face/module/list_spec.rb +60 -0
  1178. data/spec/unit/face/module/search_spec.rb +1 -1
  1179. data/spec/unit/face/node_spec.rb +1 -1
  1180. data/spec/unit/face/parser_spec.rb +49 -2
  1181. data/spec/unit/face/plugin_spec.rb +29 -4
  1182. data/spec/unit/face/status_spec.rb +10 -0
  1183. data/spec/unit/face_spec.rb +0 -0
  1184. data/spec/unit/file_bucket/dipper_spec.rb +210 -1
  1185. data/spec/unit/file_bucket/file_spec.rb +3 -3
  1186. data/spec/unit/file_serving/base_spec.rb +0 -0
  1187. data/spec/unit/file_serving/configuration/parser_spec.rb +25 -30
  1188. data/spec/unit/file_serving/configuration_spec.rb +1 -1
  1189. data/spec/unit/file_serving/content_spec.rb +0 -0
  1190. data/spec/unit/file_serving/fileset_spec.rb +0 -0
  1191. data/spec/unit/file_serving/http_metadata_spec.rb +85 -0
  1192. data/spec/unit/file_serving/metadata_spec.rb +85 -9
  1193. data/spec/unit/file_serving/mount/file_spec.rb +0 -0
  1194. data/spec/unit/file_serving/mount/modules_spec.rb +0 -0
  1195. data/spec/unit/file_serving/mount/pluginfacts_spec.rb +0 -0
  1196. data/spec/unit/file_serving/mount/plugins_spec.rb +0 -0
  1197. data/spec/unit/file_serving/mount_spec.rb +0 -0
  1198. data/spec/unit/file_serving/terminus_helper_spec.rb +2 -3
  1199. data/spec/unit/file_serving/terminus_selector_spec.rb +12 -2
  1200. data/spec/unit/file_system/uniquefile_spec.rb +20 -0
  1201. data/spec/unit/file_system_spec.rb +373 -6
  1202. data/spec/unit/forge/forge_spec.rb +112 -0
  1203. data/spec/unit/forge/repository_spec.rb +31 -4
  1204. data/spec/unit/functions/annotate_spec.rb +175 -0
  1205. data/spec/unit/functions/assert_type_spec.rb +48 -8
  1206. data/spec/unit/functions/binary_file_spec.rb +46 -0
  1207. data/spec/unit/functions/break_spec.rb +117 -0
  1208. data/spec/unit/functions/call_spec.rb +77 -0
  1209. data/spec/unit/{parser/functions → functions}/contain_spec.rb +69 -4
  1210. data/spec/unit/functions/defined_spec.rb +289 -0
  1211. data/spec/unit/functions/dig_spec.rb +58 -0
  1212. data/spec/unit/functions/epp_spec.rb +17 -9
  1213. data/spec/unit/functions/filter_spec.rb +18 -0
  1214. data/spec/unit/functions/find_file_spec.rb +69 -0
  1215. data/spec/unit/functions/hiera_spec.rb +451 -49
  1216. data/spec/unit/functions/include_spec.rb +175 -0
  1217. data/spec/unit/functions/inline_epp_spec.rb +4 -4
  1218. data/spec/unit/functions/lest_spec.rb +34 -0
  1219. data/spec/unit/functions/logging_spec.rb +54 -0
  1220. data/spec/unit/functions/lookup_fixture_spec.rb +688 -0
  1221. data/spec/unit/functions/lookup_spec.rb +3108 -264
  1222. data/spec/unit/functions/match_spec.rb +2 -2
  1223. data/spec/unit/functions/new_spec.rb +694 -0
  1224. data/spec/unit/functions/next_spec.rb +93 -0
  1225. data/spec/unit/functions/regsubst_spec.rb +30 -9
  1226. data/spec/unit/functions/require_spec.rb +83 -0
  1227. data/spec/unit/functions/return_spec.rb +105 -0
  1228. data/spec/unit/functions/reverse_each_spec.rb +108 -0
  1229. data/spec/unit/functions/scanf_spec.rb +1 -1
  1230. data/spec/unit/{parser/functions → functions}/shared.rb +15 -12
  1231. data/spec/unit/functions/split_spec.rb +11 -3
  1232. data/spec/unit/functions/step_spec.rb +113 -0
  1233. data/spec/unit/functions/strftime_spec.rb +152 -0
  1234. data/spec/unit/functions/then_spec.rb +40 -0
  1235. data/spec/unit/functions/type_spec.rb +35 -0
  1236. data/spec/unit/functions/unique_spec.rb +111 -0
  1237. data/spec/unit/functions/unwrap_spec.rb +29 -0
  1238. data/spec/unit/functions/versioncmp_spec.rb +36 -0
  1239. data/spec/unit/functions4_spec.rb +352 -107
  1240. data/spec/unit/graph/rb_tree_map_spec.rb +1 -1
  1241. data/spec/unit/graph/relationship_graph_spec.rb +0 -0
  1242. data/spec/unit/graph/sequential_prioritizer_spec.rb +1 -1
  1243. data/spec/unit/graph/simple_graph_spec.rb +59 -56
  1244. data/spec/unit/hiera/scope_spec.rb +6 -3
  1245. data/spec/unit/hiera_puppet_spec.rb +49 -8
  1246. data/spec/unit/indirector/catalog/compiler_spec.rb +887 -83
  1247. data/spec/unit/indirector/catalog/json_spec.rb +50 -1
  1248. data/spec/unit/indirector/catalog/msgpack_spec.rb +0 -0
  1249. data/spec/unit/indirector/catalog/rest_spec.rb +0 -0
  1250. data/spec/unit/indirector/catalog/store_configs_spec.rb +0 -0
  1251. data/spec/unit/indirector/catalog/yaml_spec.rb +0 -0
  1252. data/spec/unit/indirector/certificate/ca_spec.rb +0 -0
  1253. data/spec/unit/indirector/certificate/disabled_ca_spec.rb +0 -0
  1254. data/spec/unit/indirector/certificate/file_spec.rb +0 -0
  1255. data/spec/unit/indirector/certificate/rest_spec.rb +0 -0
  1256. data/spec/unit/indirector/certificate_request/ca_spec.rb +0 -0
  1257. data/spec/unit/indirector/certificate_request/disabled_ca_spec.rb +0 -0
  1258. data/spec/unit/indirector/certificate_request/file_spec.rb +0 -0
  1259. data/spec/unit/indirector/certificate_request/rest_spec.rb +0 -0
  1260. data/spec/unit/indirector/certificate_revocation_list/ca_spec.rb +0 -0
  1261. data/spec/unit/indirector/certificate_revocation_list/disabled_ca_spec.rb +0 -0
  1262. data/spec/unit/indirector/certificate_revocation_list/file_spec.rb +0 -0
  1263. data/spec/unit/indirector/certificate_revocation_list/rest_spec.rb +0 -0
  1264. data/spec/unit/indirector/certificate_status/file_spec.rb +0 -0
  1265. data/spec/unit/indirector/certificate_status/rest_spec.rb +0 -0
  1266. data/spec/unit/indirector/code_spec.rb +0 -0
  1267. data/spec/unit/indirector/data_binding/none_spec.rb +2 -2
  1268. data/spec/unit/indirector/direct_file_server_spec.rb +0 -0
  1269. data/spec/unit/indirector/envelope_spec.rb +0 -0
  1270. data/spec/unit/indirector/exec_spec.rb +0 -0
  1271. data/spec/unit/indirector/face_spec.rb +10 -2
  1272. data/spec/unit/indirector/facts/facter_spec.rb +6 -7
  1273. data/spec/unit/indirector/facts/network_device_spec.rb +0 -0
  1274. data/spec/unit/indirector/facts/store_configs_spec.rb +0 -0
  1275. data/spec/unit/indirector/facts/yaml_spec.rb +0 -0
  1276. data/spec/unit/indirector/file_bucket_file/file_spec.rb +86 -4
  1277. data/spec/unit/indirector/file_bucket_file/rest_spec.rb +0 -0
  1278. data/spec/unit/indirector/file_content/file_server_spec.rb +0 -0
  1279. data/spec/unit/indirector/file_content/file_spec.rb +0 -0
  1280. data/spec/unit/indirector/file_content/rest_spec.rb +0 -0
  1281. data/spec/unit/indirector/file_metadata/file_server_spec.rb +0 -0
  1282. data/spec/unit/indirector/file_metadata/file_spec.rb +0 -0
  1283. data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -0
  1284. data/spec/unit/indirector/file_server_spec.rb +17 -2
  1285. data/spec/unit/indirector/indirection_spec.rb +14 -38
  1286. data/spec/unit/indirector/json_spec.rb +27 -6
  1287. data/spec/unit/indirector/key/ca_spec.rb +0 -0
  1288. data/spec/unit/indirector/key/disabled_ca_spec.rb +0 -0
  1289. data/spec/unit/indirector/key/file_spec.rb +1 -1
  1290. data/spec/unit/indirector/ldap_spec.rb +0 -0
  1291. data/spec/unit/indirector/memory_spec.rb +0 -0
  1292. data/spec/unit/indirector/msgpack_spec.rb +11 -1
  1293. data/spec/unit/indirector/node/exec_spec.rb +12 -12
  1294. data/spec/unit/indirector/node/ldap_spec.rb +29 -8
  1295. data/spec/unit/indirector/node/memory_spec.rb +0 -0
  1296. data/spec/unit/indirector/node/msgpack_spec.rb +0 -0
  1297. data/spec/unit/indirector/node/plain_spec.rb +16 -6
  1298. data/spec/unit/indirector/node/rest_spec.rb +0 -0
  1299. data/spec/unit/indirector/node/store_configs_spec.rb +0 -0
  1300. data/spec/unit/indirector/node/write_only_yaml_spec.rb +12 -0
  1301. data/spec/unit/indirector/node/yaml_spec.rb +0 -0
  1302. data/spec/unit/indirector/plain_spec.rb +0 -0
  1303. data/spec/unit/indirector/report/msgpack_spec.rb +0 -0
  1304. data/spec/unit/indirector/report/processor_spec.rb +2 -2
  1305. data/spec/unit/indirector/report/rest_spec.rb +29 -3
  1306. data/spec/unit/indirector/report/yaml_spec.rb +0 -0
  1307. data/spec/unit/indirector/request_spec.rb +32 -12
  1308. data/spec/unit/indirector/resource/ral_spec.rb +0 -0
  1309. data/spec/unit/indirector/resource/store_configs_spec.rb +0 -0
  1310. data/spec/unit/indirector/rest_spec.rb +158 -18
  1311. data/spec/unit/indirector/ssl_file_spec.rb +4 -4
  1312. data/spec/unit/indirector/status/rest_spec.rb +0 -0
  1313. data/spec/unit/indirector/store_configs_spec.rb +0 -0
  1314. data/spec/unit/indirector/terminus_spec.rb +0 -0
  1315. data/spec/unit/indirector/yaml_spec.rb +1 -1
  1316. data/spec/unit/indirector_spec.rb +0 -0
  1317. data/spec/unit/info_service_spec.rb +298 -0
  1318. data/spec/unit/interface/action_builder_spec.rb +0 -0
  1319. data/spec/unit/interface/action_manager_spec.rb +0 -0
  1320. data/spec/unit/interface/action_spec.rb +0 -0
  1321. data/spec/unit/interface/documentation_spec.rb +0 -0
  1322. data/spec/unit/interface/face_collection_spec.rb +7 -7
  1323. data/spec/unit/interface/option_builder_spec.rb +0 -0
  1324. data/spec/unit/interface/option_spec.rb +0 -0
  1325. data/spec/unit/interface_spec.rb +27 -0
  1326. data/spec/unit/man_spec.rb +1 -1
  1327. data/spec/unit/module_spec.rb +126 -74
  1328. data/spec/unit/module_tool/application_spec.rb +1 -1
  1329. data/spec/unit/module_tool/applications/builder_spec.rb +44 -9
  1330. data/spec/unit/module_tool/applications/installer_spec.rb +11 -3
  1331. data/spec/unit/module_tool/applications/unpacker_spec.rb +2 -1
  1332. data/spec/unit/module_tool/applications/upgrader_spec.rb +9 -2
  1333. data/spec/unit/module_tool/installed_modules_spec.rb +6 -6
  1334. data/spec/unit/module_tool/metadata_spec.rb +31 -2
  1335. data/spec/unit/module_tool/tar/mini_spec.rb +3 -3
  1336. data/spec/unit/module_tool/tar_spec.rb +16 -10
  1337. data/spec/unit/module_tool_spec.rb +3 -3
  1338. data/spec/unit/network/auth_config_parser_spec.rb +16 -0
  1339. data/spec/unit/network/authconfig_spec.rb +62 -32
  1340. data/spec/unit/network/authorization_spec.rb +30 -2
  1341. data/spec/unit/network/authstore_spec.rb +2 -2
  1342. data/spec/unit/network/format_handler_spec.rb +11 -11
  1343. data/spec/unit/network/format_spec.rb +9 -0
  1344. data/spec/unit/network/formats_spec.rb +322 -138
  1345. data/spec/unit/network/http/api/indirected_routes_spec.rb +125 -116
  1346. data/spec/unit/network/http/api/master/v3/environment_spec.rb +186 -0
  1347. data/spec/unit/network/http/api/master/v3_spec.rb +23 -5
  1348. data/spec/unit/network/http/api_spec.rb +1 -1
  1349. data/spec/unit/network/http/compression_spec.rb +132 -84
  1350. data/spec/unit/network/http/connection_spec.rb +25 -19
  1351. data/spec/unit/network/http/error_spec.rb +1 -1
  1352. data/spec/unit/network/http/factory_spec.rb +18 -0
  1353. data/spec/unit/network/http/handler_spec.rb +17 -18
  1354. data/spec/unit/network/http/nocache_pool_spec.rb +0 -0
  1355. data/spec/unit/network/http/pool_spec.rb +30 -0
  1356. data/spec/unit/network/http/rack/rest_spec.rb +9 -2
  1357. data/spec/unit/network/http/rack_spec.rb +0 -0
  1358. data/spec/unit/network/http/request_spec.rb +110 -0
  1359. data/spec/unit/network/http/response_spec.rb +108 -0
  1360. data/spec/unit/network/http/session_spec.rb +0 -0
  1361. data/spec/unit/network/http/site_spec.rb +0 -0
  1362. data/spec/unit/network/http/webrick/rest_spec.rb +0 -0
  1363. data/spec/unit/network/http/webrick_spec.rb +1 -1
  1364. data/spec/unit/network/http_pool_spec.rb +0 -0
  1365. data/spec/unit/network/http_spec.rb +0 -0
  1366. data/spec/unit/network/resolver_spec.rb +0 -0
  1367. data/spec/unit/network/rights_spec.rb +4 -4
  1368. data/spec/unit/network/server_spec.rb +0 -0
  1369. data/spec/unit/node/environment_spec.rb +10 -0
  1370. data/spec/unit/node/facts_spec.rb +13 -13
  1371. data/spec/unit/node_spec.rb +74 -10
  1372. data/spec/unit/other/selinux_spec.rb +0 -0
  1373. data/spec/unit/parameter/path_spec.rb +0 -0
  1374. data/spec/unit/parameter/value_collection_spec.rb +0 -0
  1375. data/spec/unit/parameter/value_spec.rb +0 -0
  1376. data/spec/unit/parameter_spec.rb +84 -5
  1377. data/spec/unit/parser/ast/leaf_spec.rb +1 -1
  1378. data/spec/unit/parser/compiler_spec.rb +135 -34
  1379. data/spec/unit/parser/environment_compiler_spec.rb +686 -0
  1380. data/spec/unit/parser/files_spec.rb +0 -0
  1381. data/spec/unit/parser/functions/create_resources_spec.rb +132 -10
  1382. data/spec/unit/parser/functions/digest_spec.rb +0 -0
  1383. data/spec/unit/parser/functions/fail_spec.rb +0 -0
  1384. data/spec/unit/parser/functions/file_spec.rb +7 -1
  1385. data/spec/unit/parser/functions/fqdn_rand_spec.rb +6 -2
  1386. data/spec/unit/parser/functions/generate_spec.rb +3 -12
  1387. data/spec/unit/parser/functions/hiera_array_spec.rb +1 -1
  1388. data/spec/unit/parser/functions/hiera_hash_spec.rb +1 -1
  1389. data/spec/unit/parser/functions/hiera_include_spec.rb +1 -1
  1390. data/spec/unit/parser/functions/hiera_spec.rb +1 -1
  1391. data/spec/unit/parser/functions/inline_template_spec.rb +0 -0
  1392. data/spec/unit/parser/functions/lookup_spec.rb +1 -1
  1393. data/spec/unit/parser/functions/realize_spec.rb +0 -0
  1394. data/spec/unit/parser/functions/regsubst_spec.rb +1 -1
  1395. data/spec/unit/parser/functions/scanf_spec.rb +0 -0
  1396. data/spec/unit/parser/functions/shellquote_spec.rb +0 -0
  1397. data/spec/unit/parser/functions/split_spec.rb +1 -1
  1398. data/spec/unit/parser/functions/sprintf_spec.rb +0 -0
  1399. data/spec/unit/parser/functions/tag_spec.rb +0 -0
  1400. data/spec/unit/parser/functions/template_spec.rb +1 -1
  1401. data/spec/unit/parser/functions/versioncmp_spec.rb +0 -0
  1402. data/spec/unit/parser/functions_spec.rb +0 -0
  1403. data/spec/unit/parser/relationship_spec.rb +0 -0
  1404. data/spec/unit/parser/resource/param_spec.rb +0 -0
  1405. data/spec/unit/parser/resource_spec.rb +115 -54
  1406. data/spec/unit/parser/scope_spec.rb +84 -86
  1407. data/spec/unit/parser/templatewrapper_spec.rb +1 -1
  1408. data/spec/unit/parser/type_loader_spec.rb +0 -0
  1409. data/spec/unit/pops/benchmark_spec.rb +8 -26
  1410. data/spec/unit/pops/containment_spec.rb +0 -26
  1411. data/spec/unit/pops/evaluator/access_ops_spec.rb +214 -99
  1412. data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +223 -0
  1413. data/spec/unit/pops/evaluator/basic_expressions_spec.rb +5 -6
  1414. data/spec/unit/pops/evaluator/comparison_ops_spec.rb +29 -26
  1415. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +218 -47
  1416. data/spec/unit/pops/evaluator/evaluator_rspec_helper.rb +29 -25
  1417. data/spec/unit/pops/evaluator/json_strict_literal_evaluator_spec.rb +63 -0
  1418. data/spec/unit/pops/evaluator/literal_evaluator_spec.rb +43 -0
  1419. data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +168 -0
  1420. data/spec/unit/pops/evaluator/string_interpolation_spec.rb +10 -10
  1421. data/spec/unit/pops/evaluator/variables_spec.rb +2 -2
  1422. data/spec/unit/pops/factory_rspec_helper.rb +0 -4
  1423. data/spec/unit/pops/factory_spec.rb +83 -83
  1424. data/spec/unit/pops/issues_spec.rb +16 -16
  1425. data/spec/unit/pops/label_provider_spec.rb +5 -1
  1426. data/spec/unit/pops/loaders/dependency_loader_spec.rb +66 -1
  1427. data/spec/unit/pops/loaders/environment_loader_spec.rb +172 -0
  1428. data/spec/unit/pops/loaders/loader_paths_spec.rb +1 -1
  1429. data/spec/unit/pops/loaders/loaders_spec.rb +541 -57
  1430. data/spec/unit/pops/loaders/module_loaders_spec.rb +63 -2
  1431. data/spec/unit/pops/loaders/static_loader_spec.rb +80 -19
  1432. data/spec/unit/pops/lookup/context_spec.rb +334 -0
  1433. data/spec/unit/pops/lookup/interpolation_spec.rb +373 -0
  1434. data/spec/unit/pops/lookup/lookup_spec.rb +294 -0
  1435. data/spec/unit/pops/merge_strategy_spec.rb +18 -0
  1436. data/spec/unit/pops/migration_spec.rb +53 -0
  1437. data/spec/unit/pops/model/model_spec.rb +10 -10
  1438. data/spec/unit/pops/parser/epp_parser_spec.rb +1 -1
  1439. data/spec/unit/pops/parser/lexer2_spec.rb +380 -10
  1440. data/spec/unit/pops/parser/locator_spec.rb +24 -0
  1441. data/spec/unit/pops/parser/parse_application_spec.rb +32 -0
  1442. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +35 -4
  1443. data/spec/unit/pops/parser/parse_calls_spec.rb +25 -0
  1444. data/spec/unit/pops/parser/parse_capabilities_spec.rb +37 -0
  1445. data/spec/unit/pops/parser/parse_containers_spec.rb +17 -19
  1446. data/spec/unit/pops/parser/parse_functions_spec.rb +19 -0
  1447. data/spec/unit/pops/parser/parse_heredoc_spec.rb +26 -0
  1448. data/spec/unit/pops/parser/parse_lambda_spec.rb +19 -0
  1449. data/spec/unit/pops/parser/parse_site_spec.rb +48 -0
  1450. data/spec/unit/pops/parser/parser_rspec_helper.rb +6 -0
  1451. data/spec/unit/pops/parser/parser_spec.rb +32 -6
  1452. data/spec/unit/pops/puppet_stack_spec.rb +79 -0
  1453. data/spec/unit/pops/resource/resource_type_impl_spec.rb +109 -0
  1454. data/spec/unit/pops/serialization/packer_spec.rb +154 -0
  1455. data/spec/unit/pops/serialization/serialization_spec.rb +426 -0
  1456. data/spec/unit/pops/serialization/to_from_hr_spec.rb +494 -0
  1457. data/spec/unit/pops/time/timespan_spec.rb +121 -0
  1458. data/spec/unit/pops/time/timestamp_spec.rb +13 -0
  1459. data/spec/unit/pops/types/enumeration_spec.rb +13 -12
  1460. data/spec/unit/pops/types/iterable_spec.rb +262 -0
  1461. data/spec/unit/pops/types/p_binary_type_spec.rb +243 -0
  1462. data/spec/unit/pops/types/p_object_type_spec.rb +1253 -0
  1463. data/spec/unit/pops/types/p_sem_ver_type_spec.rb +322 -0
  1464. data/spec/unit/pops/types/p_sensitive_type_spec.rb +169 -0
  1465. data/spec/unit/pops/types/p_timespan_type_spec.rb +273 -0
  1466. data/spec/unit/pops/types/p_timestamp_type_spec.rb +311 -0
  1467. data/spec/unit/pops/types/p_type_set_type_spec.rb +445 -0
  1468. data/spec/unit/pops/types/recursion_guard_spec.rb +93 -0
  1469. data/spec/unit/pops/types/ruby_generator_spec.rb +662 -0
  1470. data/spec/unit/pops/types/string_converter_spec.rb +1132 -0
  1471. data/spec/unit/pops/types/type_acceptor_spec.rb +106 -0
  1472. data/spec/unit/pops/types/type_asserter_spec.rb +43 -0
  1473. data/spec/unit/pops/types/type_calculator_spec.rb +1249 -901
  1474. data/spec/unit/pops/types/type_factory_spec.rb +137 -96
  1475. data/spec/unit/pops/types/type_formatter_spec.rb +409 -0
  1476. data/spec/unit/pops/types/type_mismatch_describer_spec.rb +228 -0
  1477. data/spec/unit/pops/types/type_parser_spec.rb +207 -40
  1478. data/spec/unit/pops/types/types_spec.rb +650 -0
  1479. data/spec/unit/pops/validation_spec.rb +66 -0
  1480. data/spec/unit/pops/validator/validator_spec.rb +395 -21
  1481. data/spec/unit/pops/visitor_spec.rb +1 -1
  1482. data/spec/unit/property/ensure_spec.rb +0 -0
  1483. data/spec/unit/property/keyvalue_spec.rb +0 -0
  1484. data/spec/unit/property/list_spec.rb +2 -2
  1485. data/spec/unit/property/ordered_list_spec.rb +0 -0
  1486. data/spec/unit/property_spec.rb +49 -12
  1487. data/spec/unit/provider/augeas/augeas_spec.rb +60 -1
  1488. data/spec/unit/provider/cisco_spec.rb +0 -0
  1489. data/spec/unit/provider/command_spec.rb +0 -0
  1490. data/spec/unit/provider/cron/crontab_spec.rb +0 -0
  1491. data/spec/unit/provider/cron/parsed_spec.rb +1 -0
  1492. data/spec/unit/provider/exec/posix_spec.rb +0 -0
  1493. data/spec/unit/provider/exec/shell_spec.rb +0 -0
  1494. data/spec/unit/provider/exec/windows_spec.rb +0 -0
  1495. data/spec/unit/provider/exec_spec.rb +0 -0
  1496. data/spec/unit/provider/file/posix_spec.rb +0 -0
  1497. data/spec/unit/provider/file/windows_spec.rb +0 -0
  1498. data/spec/unit/provider/group/directoryservice_spec.rb +33 -0
  1499. data/spec/unit/provider/group/groupadd_spec.rb +0 -0
  1500. data/spec/unit/provider/group/ldap_spec.rb +0 -0
  1501. data/spec/unit/provider/group/pw_spec.rb +0 -0
  1502. data/spec/unit/provider/group/windows_adsi_spec.rb +88 -18
  1503. data/spec/unit/provider/host/parsed_spec.rb +0 -0
  1504. data/spec/unit/provider/interface/cisco_spec.rb +0 -0
  1505. data/spec/unit/provider/ldap_spec.rb +0 -0
  1506. data/spec/unit/provider/macauthorization_spec.rb +5 -2
  1507. data/spec/unit/provider/mcx/mcxcontent_spec.rb +0 -0
  1508. data/spec/unit/provider/mount/parsed_spec.rb +31 -5
  1509. data/spec/unit/provider/mount_spec.rb +0 -0
  1510. data/spec/unit/provider/naginator_spec.rb +0 -0
  1511. data/spec/unit/provider/nameservice/directoryservice_spec.rb +16 -19
  1512. data/spec/unit/provider/nameservice_spec.rb +167 -15
  1513. data/spec/unit/provider/network_device_spec.rb +0 -0
  1514. data/spec/unit/provider/package/aix_spec.rb +0 -0
  1515. data/spec/unit/provider/package/appdmg_spec.rb +3 -3
  1516. data/spec/unit/provider/package/apt_spec.rb +5 -0
  1517. data/spec/unit/provider/package/aptitude_spec.rb +0 -0
  1518. data/spec/unit/provider/package/aptrpm_spec.rb +3 -3
  1519. data/spec/unit/provider/package/base_spec.rb +18 -0
  1520. data/spec/unit/provider/package/dnf_spec.rb +30 -0
  1521. data/spec/unit/provider/package/dpkg_spec.rb +0 -0
  1522. data/spec/unit/provider/package/freebsd_spec.rb +0 -0
  1523. data/spec/unit/provider/package/gem_spec.rb +77 -0
  1524. data/spec/unit/provider/package/hpux_spec.rb +0 -0
  1525. data/spec/unit/provider/package/macports_spec.rb +0 -0
  1526. data/spec/unit/provider/package/nim_spec.rb +6 -6
  1527. data/spec/unit/provider/package/openbsd_spec.rb +0 -0
  1528. data/spec/unit/provider/package/opkg_spec.rb +0 -0
  1529. data/spec/unit/provider/package/pacman_spec.rb +55 -0
  1530. data/spec/unit/provider/package/pip3_spec.rb +22 -0
  1531. data/spec/unit/provider/package/pip_spec.rb +173 -46
  1532. data/spec/unit/provider/package/pkg_spec.rb +139 -99
  1533. data/spec/unit/provider/package/pkgdmg_spec.rb +32 -8
  1534. data/spec/unit/provider/package/pkgin_spec.rb +23 -13
  1535. data/spec/unit/provider/package/pkgng_spec.rb +186 -0
  1536. data/spec/unit/provider/package/pkgutil_spec.rb +0 -0
  1537. data/spec/unit/provider/package/portage_spec.rb +150 -8
  1538. data/spec/unit/provider/package/puppet_gem_spec.rb +0 -0
  1539. data/spec/unit/provider/package/rpm_spec.rb +183 -12
  1540. data/spec/unit/provider/package/sun_spec.rb +0 -0
  1541. data/spec/unit/provider/package/tdnf_spec.rb +18 -0
  1542. data/spec/unit/provider/package/windows/exe_package_spec.rb +0 -1
  1543. data/spec/unit/provider/package/windows/msi_package_spec.rb +0 -1
  1544. data/spec/unit/provider/package/windows/package_spec.rb +45 -1
  1545. data/spec/unit/provider/package/windows_spec.rb +8 -2
  1546. data/spec/unit/provider/package/yum_spec.rb +29 -466
  1547. data/spec/unit/provider/package/zypper_spec.rb +64 -19
  1548. data/spec/unit/provider/parsedfile_spec.rb +0 -0
  1549. data/spec/unit/provider/scheduled_task/win32_taskscheduler_spec.rb +523 -70
  1550. data/spec/unit/provider/selboolean_spec.rb +0 -0
  1551. data/spec/unit/provider/selmodule_spec.rb +0 -0
  1552. data/spec/unit/provider/service/base_spec.rb +44 -27
  1553. data/spec/unit/provider/service/bsd_spec.rb +130 -0
  1554. data/spec/unit/provider/service/daemontools_spec.rb +0 -0
  1555. data/spec/unit/provider/service/debian_spec.rb +38 -0
  1556. data/spec/unit/provider/service/freebsd_spec.rb +17 -0
  1557. data/spec/unit/provider/service/gentoo_spec.rb +8 -0
  1558. data/spec/unit/provider/service/init_spec.rb +42 -1
  1559. data/spec/unit/provider/service/launchd_spec.rb +124 -25
  1560. data/spec/unit/provider/service/openbsd_spec.rb +1 -0
  1561. data/spec/unit/provider/service/openrc_spec.rb +7 -0
  1562. data/spec/unit/provider/service/openwrt_spec.rb +0 -0
  1563. data/spec/unit/provider/service/rcng_spec.rb +41 -0
  1564. data/spec/unit/provider/service/redhat_spec.rb +9 -1
  1565. data/spec/unit/provider/service/runit_spec.rb +0 -0
  1566. data/spec/unit/provider/service/smf_spec.rb +77 -13
  1567. data/spec/unit/provider/service/src_spec.rb +31 -4
  1568. data/spec/unit/provider/service/systemd_spec.rb +228 -39
  1569. data/spec/unit/provider/service/upstart_spec.rb +64 -0
  1570. data/spec/unit/provider/service/windows_spec.rb +0 -0
  1571. data/spec/unit/provider/ssh_authorized_key/parsed_spec.rb +2 -1
  1572. data/spec/unit/provider/sshkey/parsed_spec.rb +42 -18
  1573. data/spec/unit/provider/user/aix_spec.rb +7 -0
  1574. data/spec/unit/provider/user/directoryservice_spec.rb +171 -90
  1575. data/spec/unit/provider/user/hpux_spec.rb +0 -0
  1576. data/spec/unit/provider/user/ldap_spec.rb +0 -0
  1577. data/spec/unit/provider/user/openbsd_spec.rb +0 -0
  1578. data/spec/unit/provider/user/pw_spec.rb +0 -0
  1579. data/spec/unit/provider/user/user_role_add_spec.rb +0 -0
  1580. data/spec/unit/provider/user/useradd_spec.rb +14 -0
  1581. data/spec/unit/provider/user/windows_adsi_spec.rb +160 -7
  1582. data/spec/unit/provider/vlan/cisco_spec.rb +0 -0
  1583. data/spec/unit/provider/yumrepo/inifile_spec.rb +16 -0
  1584. data/spec/unit/provider/zfs/zfs_spec.rb +0 -0
  1585. data/spec/unit/provider/zone/solaris_spec.rb +64 -12
  1586. data/spec/unit/provider/zpool/zpool_spec.rb +0 -0
  1587. data/spec/unit/provider_spec.rb +0 -0
  1588. data/spec/unit/puppet_spec.rb +16 -3
  1589. data/spec/unit/relationship_spec.rb +15 -36
  1590. data/spec/unit/reports/http_spec.rb +11 -8
  1591. data/spec/unit/reports/store_spec.rb +0 -0
  1592. data/spec/unit/reports_spec.rb +10 -0
  1593. data/spec/unit/resource/capability_finder_spec.rb +147 -0
  1594. data/spec/unit/resource/catalog_spec.rb +294 -41
  1595. data/spec/unit/resource/status_spec.rb +114 -103
  1596. data/spec/unit/resource/type_collection_spec.rb +28 -7
  1597. data/spec/unit/resource/type_spec.rb +172 -82
  1598. data/spec/unit/resource_spec.rb +161 -76
  1599. data/spec/unit/settings/directory_setting_spec.rb +0 -0
  1600. data/spec/unit/settings/duration_setting_spec.rb +0 -0
  1601. data/spec/unit/settings/environment_conf_spec.rb +18 -1
  1602. data/spec/unit/settings/file_setting_spec.rb +37 -0
  1603. data/spec/unit/settings/ini_file_spec.rb +58 -1
  1604. data/spec/unit/settings/path_setting_spec.rb +0 -0
  1605. data/spec/unit/settings/priority_setting_spec.rb +0 -0
  1606. data/spec/unit/settings_spec.rb +120 -5
  1607. data/spec/unit/ssl/base_spec.rb +9 -0
  1608. data/spec/unit/ssl/certificate_authority/interface_spec.rb +180 -13
  1609. data/spec/unit/ssl/certificate_authority_spec.rb +82 -28
  1610. data/spec/unit/ssl/certificate_factory_spec.rb +2 -2
  1611. data/spec/unit/ssl/certificate_request_attributes_spec.rb +6 -0
  1612. data/spec/unit/ssl/certificate_request_spec.rb +4 -5
  1613. data/spec/unit/ssl/certificate_revocation_list_spec.rb +3 -3
  1614. data/spec/unit/ssl/certificate_spec.rb +1 -1
  1615. data/spec/unit/ssl/configuration_spec.rb +11 -2
  1616. data/spec/unit/ssl/host_spec.rb +37 -37
  1617. data/spec/unit/ssl/inventory_spec.rb +27 -3
  1618. data/spec/unit/ssl/key_spec.rb +7 -7
  1619. data/spec/unit/ssl/oids_spec.rb +24 -13
  1620. data/spec/unit/status_spec.rb +7 -7
  1621. data/spec/unit/transaction/additional_resource_generator_spec.rb +160 -31
  1622. data/spec/unit/transaction/event_manager_spec.rb +0 -0
  1623. data/spec/unit/transaction/event_spec.rb +18 -13
  1624. data/spec/unit/transaction/persistence_spec.rb +178 -0
  1625. data/spec/unit/transaction/report_spec.rb +214 -40
  1626. data/spec/unit/transaction/resource_harness_spec.rb +84 -40
  1627. data/spec/unit/transaction_spec.rb +102 -7
  1628. data/spec/unit/type/augeas_spec.rb +0 -0
  1629. data/spec/unit/type/component_spec.rb +0 -0
  1630. data/spec/unit/type/computer_spec.rb +0 -0
  1631. data/spec/unit/type/cron_spec.rb +0 -0
  1632. data/spec/unit/type/exec_spec.rb +57 -12
  1633. data/spec/unit/type/file/checksum_spec.rb +6 -0
  1634. data/spec/unit/type/file/checksum_value_spec.rb +286 -0
  1635. data/spec/unit/type/file/content_spec.rb +59 -208
  1636. data/spec/unit/type/file/ctime_spec.rb +0 -0
  1637. data/spec/unit/type/file/ensure_spec.rb +0 -0
  1638. data/spec/unit/type/file/group_spec.rb +2 -2
  1639. data/spec/unit/type/file/mode_spec.rb +9 -9
  1640. data/spec/unit/type/file/mtime_spec.rb +0 -0
  1641. data/spec/unit/type/file/owner_spec.rb +2 -2
  1642. data/spec/unit/type/file/selinux_spec.rb +2 -0
  1643. data/spec/unit/type/file/source_spec.rb +224 -119
  1644. data/spec/unit/type/file/type_spec.rb +0 -0
  1645. data/spec/unit/type/file_spec.rb +211 -35
  1646. data/spec/unit/type/filebucket_spec.rb +0 -0
  1647. data/spec/unit/type/group_spec.rb +0 -0
  1648. data/spec/unit/type/host_spec.rb +4 -4
  1649. data/spec/unit/type/interface_spec.rb +32 -0
  1650. data/spec/unit/type/k5login_spec.rb +0 -0
  1651. data/spec/unit/type/macauthorization_spec.rb +4 -1
  1652. data/spec/unit/type/mailalias_spec.rb +0 -0
  1653. data/spec/unit/type/maillist_spec.rb +0 -0
  1654. data/spec/unit/type/mcx_spec.rb +0 -0
  1655. data/spec/unit/type/mount_spec.rb +50 -8
  1656. data/spec/unit/type/nagios_spec.rb +0 -0
  1657. data/spec/unit/type/noop_metaparam_spec.rb +0 -0
  1658. data/spec/unit/type/package/package_settings_spec.rb +0 -0
  1659. data/spec/unit/type/package_spec.rb +1 -0
  1660. data/spec/unit/type/resources_spec.rb +0 -0
  1661. data/spec/unit/type/schedule_spec.rb +0 -0
  1662. data/spec/unit/type/selboolean_spec.rb +0 -0
  1663. data/spec/unit/type/selmodule_spec.rb +0 -0
  1664. data/spec/unit/type/service_spec.rb +21 -0
  1665. data/spec/unit/type/ssh_authorized_key_spec.rb +2 -2
  1666. data/spec/unit/type/sshkey_spec.rb +0 -0
  1667. data/spec/unit/type/stage_spec.rb +0 -0
  1668. data/spec/unit/type/tidy_spec.rb +4 -4
  1669. data/spec/unit/type/user_spec.rb +38 -7
  1670. data/spec/unit/type/vlan_spec.rb +1 -1
  1671. data/spec/unit/type/whit_spec.rb +0 -0
  1672. data/spec/unit/type/yumrepo_spec.rb +3 -7
  1673. data/spec/unit/type/zfs_spec.rb +0 -0
  1674. data/spec/unit/type/zone_spec.rb +0 -0
  1675. data/spec/unit/type/zpool_spec.rb +0 -0
  1676. data/spec/unit/type_spec.rb +119 -1
  1677. data/spec/unit/util/at_fork_spec.rb +150 -0
  1678. data/spec/unit/util/autoload_spec.rb +0 -0
  1679. data/spec/unit/util/backups_spec.rb +0 -0
  1680. data/spec/unit/util/character_encoding_spec.rb +229 -0
  1681. data/spec/unit/util/checksums_spec.rb +0 -0
  1682. data/spec/unit/util/colors_spec.rb +0 -0
  1683. data/spec/unit/util/command_line_spec.rb +11 -0
  1684. data/spec/unit/util/constant_inflector_spec.rb +0 -0
  1685. data/spec/unit/util/diff_spec.rb +0 -0
  1686. data/spec/unit/util/errors_spec.rb +0 -0
  1687. data/spec/unit/util/execution_spec.rb +44 -3
  1688. data/spec/unit/util/execution_stub_spec.rb +0 -0
  1689. data/spec/unit/util/feature_spec.rb +1 -1
  1690. data/spec/unit/util/filetype_spec.rb +4 -4
  1691. data/spec/unit/util/http_proxy_spec.rb +91 -0
  1692. data/spec/unit/util/ldap/connection_spec.rb +0 -0
  1693. data/spec/unit/util/ldap/generator_spec.rb +1 -1
  1694. data/spec/unit/util/ldap/manager_spec.rb +0 -0
  1695. data/spec/unit/util/log/destinations_spec.rb +5 -8
  1696. data/spec/unit/util/log_spec.rb +187 -18
  1697. data/spec/unit/util/logging_spec.rb +69 -0
  1698. data/spec/unit/util/metric_spec.rb +9 -2
  1699. data/spec/unit/util/monkey_patches_spec.rb +37 -127
  1700. data/spec/unit/util/multi_match_spec.rb +39 -0
  1701. data/spec/unit/util/nagios_maker_spec.rb +0 -0
  1702. data/spec/unit/util/network_device/cisco/device_spec.rb +253 -216
  1703. data/spec/unit/util/network_device/cisco/facts_spec.rb +0 -0
  1704. data/spec/unit/util/network_device/cisco/interface_spec.rb +0 -0
  1705. data/spec/unit/util/network_device/config_spec.rb +0 -0
  1706. data/spec/unit/util/network_device/ipcalc_spec.rb +0 -0
  1707. data/spec/unit/util/network_device/transport/base_spec.rb +0 -0
  1708. data/spec/unit/util/network_device/transport/ssh_spec.rb +1 -1
  1709. data/spec/unit/util/network_device/transport/telnet_spec.rb +60 -58
  1710. data/spec/unit/util/network_device_spec.rb +1 -1
  1711. data/spec/unit/util/package_spec.rb +0 -0
  1712. data/spec/unit/util/plist_spec.rb +135 -0
  1713. data/spec/unit/util/posix_spec.rb +0 -0
  1714. data/spec/unit/util/rdoc_spec.rb +0 -0
  1715. data/spec/unit/util/resource_template_spec.rb +2 -2
  1716. data/spec/unit/util/retry_action_spec.rb +0 -0
  1717. data/spec/unit/util/run_mode_spec.rb +44 -13
  1718. data/spec/unit/util/selinux_spec.rb +0 -0
  1719. data/spec/unit/util/splayer_spec.rb +45 -0
  1720. data/spec/unit/util/storage_spec.rb +8 -1
  1721. data/spec/unit/util/suidmanager_spec.rb +0 -0
  1722. data/spec/unit/util/symbolic_file_mode_spec.rb +0 -0
  1723. data/spec/unit/util/tag_set_spec.rb +2 -2
  1724. data/spec/unit/util/tagging_spec.rb +59 -0
  1725. data/spec/unit/util/user_attr_spec.rb +0 -0
  1726. data/spec/unit/util/warnings_spec.rb +0 -0
  1727. data/spec/unit/util/windows/adsi_spec.rb +196 -60
  1728. data/spec/unit/util/windows/api_types_spec.rb +42 -0
  1729. data/spec/unit/util/windows/eventlog_spec.rb +123 -0
  1730. data/spec/unit/util/windows/file_spec.rb +89 -0
  1731. data/spec/unit/util/windows/root_certs_spec.rb +0 -0
  1732. data/spec/unit/util/windows/security_descriptor_spec.rb +3 -3
  1733. data/spec/unit/util/windows/sid_spec.rb +76 -24
  1734. data/spec/unit/util/yaml_spec.rb +13 -1
  1735. data/spec/unit/util_spec.rb +456 -17
  1736. data/spec/unit/version_spec.rb +19 -0
  1737. data/spec/watchr.rb +0 -0
  1738. data/tasks/benchmark.rake +3 -3
  1739. data/tasks/cfpropertylist.rake +15 -0
  1740. data/tasks/generate_ast_model.rake +78 -0
  1741. metadata +3474 -3068
  1742. checksums.yaml +0 -7
  1743. data/bin/extlookup2hiera +0 -56
  1744. data/ext/emacs/puppet-mode-init.el +0 -6
  1745. data/ext/emacs/puppet-mode.el +0 -433
  1746. data/ext/puppet-nm-dispatcher +0 -13
  1747. data/ext/puppetlisten/puppetlisten.rb +0 -77
  1748. data/ext/puppetlisten/puppetrun.rb +0 -38
  1749. data/ext/systemd/puppetmaster.service +0 -11
  1750. data/ext/vim/README +0 -3
  1751. data/ext/vim/ftdetect/puppet.vim +0 -2
  1752. data/ext/vim/ftplugin/puppet.vim +0 -94
  1753. data/ext/vim/indent/puppet.vim +0 -76
  1754. data/ext/vim/syntax/puppet.vim +0 -115
  1755. data/lib/puppet/application/file.rb +0 -4
  1756. data/lib/puppet/application/inspect.rb +0 -179
  1757. data/lib/puppet/application/resource_type.rb +0 -7
  1758. data/lib/puppet/data_providers/data_adapter.rb +0 -91
  1759. data/lib/puppet/data_providers/data_function_support.rb +0 -45
  1760. data/lib/puppet/data_providers/function_env_data_provider.rb +0 -28
  1761. data/lib/puppet/data_providers/function_module_data_provider.rb +0 -39
  1762. data/lib/puppet/data_providers.rb +0 -31
  1763. data/lib/puppet/face/file/download.rb +0 -56
  1764. data/lib/puppet/face/file/store.rb +0 -21
  1765. data/lib/puppet/face/file.rb +0 -47
  1766. data/lib/puppet/face/resource_type.rb +0 -84
  1767. data/lib/puppet/feature/cfacter.rb +0 -14
  1768. data/lib/puppet/feature/external_facts.rb +0 -5
  1769. data/lib/puppet/indirector/catalog/static_compiler.rb +0 -213
  1770. data/lib/puppet/indirector/resource_type/parser.rb +0 -101
  1771. data/lib/puppet/indirector/resource_type/rest.rb +0 -7
  1772. data/lib/puppet/indirector/resource_type.rb +0 -5
  1773. data/lib/puppet/parser/yaml_trimmer.rb +0 -7
  1774. data/lib/puppet/plugins/binding_schemes.rb +0 -140
  1775. data/lib/puppet/plugins/data_providers.rb +0 -90
  1776. data/lib/puppet/pops/binder/binder.rb +0 -394
  1777. data/lib/puppet/pops/binder/binder_issues.rb +0 -122
  1778. data/lib/puppet/pops/binder/bindings_checker.rb +0 -197
  1779. data/lib/puppet/pops/binder/bindings_composer.rb +0 -177
  1780. data/lib/puppet/pops/binder/bindings_factory.rb +0 -809
  1781. data/lib/puppet/pops/binder/bindings_label_provider.rb +0 -43
  1782. data/lib/puppet/pops/binder/bindings_loader.rb +0 -83
  1783. data/lib/puppet/pops/binder/bindings_model.rb +0 -68
  1784. data/lib/puppet/pops/binder/bindings_model_dumper.rb +0 -215
  1785. data/lib/puppet/pops/binder/bindings_model_meta.rb +0 -215
  1786. data/lib/puppet/pops/binder/bindings_validator_factory.rb +0 -28
  1787. data/lib/puppet/pops/binder/config/binder_config.rb +0 -107
  1788. data/lib/puppet/pops/binder/config/binder_config_checker.rb +0 -142
  1789. data/lib/puppet/pops/binder/config/diagnostic_producer.rb +0 -32
  1790. data/lib/puppet/pops/binder/config/issues.rb +0 -90
  1791. data/lib/puppet/pops/binder/injector.rb +0 -766
  1792. data/lib/puppet/pops/binder/injector_entry.rb +0 -57
  1793. data/lib/puppet/pops/binder/key_factory.rb +0 -67
  1794. data/lib/puppet/pops/binder/producers.rb +0 -826
  1795. data/lib/puppet/pops/binder/scheme_handler/confdir_scheme.rb +0 -34
  1796. data/lib/puppet/pops/binder/scheme_handler/module_scheme.rb +0 -84
  1797. data/lib/puppet/pops/binder/scheme_handler/symbolic_scheme.rb +0 -53
  1798. data/lib/puppet/pops/binder/system_bindings.rb +0 -60
  1799. data/lib/puppet/pops/containment.rb +0 -104
  1800. data/lib/puppet/pops/evaluator/callable_mismatch_describer.rb +0 -175
  1801. data/lib/puppet/pops/model/model.rb +0 -114
  1802. data/lib/puppet/pops/model/model_meta.rb +0 -582
  1803. data/lib/puppet/pops/types/types_meta.rb +0 -223
  1804. data/lib/puppet/resource/type_collection_helper.rb +0 -7
  1805. data/lib/puppet/vendor/load_plist.rb +0 -1
  1806. data/lib/puppet/vendor/load_rgen.rb +0 -2
  1807. data/lib/puppet/vendor/plist/CHANGELOG +0 -82
  1808. data/lib/puppet/vendor/plist/MIT-LICENSE +0 -21
  1809. data/lib/puppet/vendor/plist/PUPPET_README.md +0 -6
  1810. data/lib/puppet/vendor/plist/README +0 -36
  1811. data/lib/puppet/vendor/plist/Rakefile +0 -144
  1812. data/lib/puppet/vendor/plist/docs/USAGE +0 -104
  1813. data/lib/puppet/vendor/plist/docs/jamis-template.rb +0 -591
  1814. data/lib/puppet/vendor/plist/lib/plist/generator.rb +0 -224
  1815. data/lib/puppet/vendor/plist/lib/plist/parser.rb +0 -225
  1816. data/lib/puppet/vendor/plist/lib/plist.rb +0 -22
  1817. data/lib/puppet/vendor/plist/test/assets/AlbumData.xml +0 -203
  1818. data/lib/puppet/vendor/plist/test/assets/Cookies.plist +0 -104
  1819. data/lib/puppet/vendor/plist/test/assets/commented.plist +0 -9
  1820. data/lib/puppet/vendor/plist/test/assets/example_data.bin +0 -0
  1821. data/lib/puppet/vendor/plist/test/assets/example_data.jpg +0 -0
  1822. data/lib/puppet/vendor/plist/test/assets/example_data.plist +0 -259
  1823. data/lib/puppet/vendor/plist/test/assets/test_data_elements.plist +0 -24
  1824. data/lib/puppet/vendor/plist/test/assets/test_empty_key.plist +0 -13
  1825. data/lib/puppet/vendor/plist/test/test_data_elements.rb +0 -115
  1826. data/lib/puppet/vendor/plist/test/test_generator.rb +0 -59
  1827. data/lib/puppet/vendor/plist/test/test_generator_basic_types.rb +0 -58
  1828. data/lib/puppet/vendor/plist/test/test_generator_collections.rb +0 -82
  1829. data/lib/puppet/vendor/plist/test/test_parser.rb +0 -90
  1830. data/lib/puppet/vendor/rgen/CHANGELOG +0 -197
  1831. data/lib/puppet/vendor/rgen/MIT-LICENSE +0 -20
  1832. data/lib/puppet/vendor/rgen/PUPPET_README.md +0 -6
  1833. data/lib/puppet/vendor/rgen/README.rdoc +0 -78
  1834. data/lib/puppet/vendor/rgen/Rakefile +0 -41
  1835. data/lib/puppet/vendor/rgen/TODO +0 -41
  1836. data/lib/puppet/vendor/rgen/anounce.txt +0 -61
  1837. data/lib/puppet/vendor/rgen/design_rationale.txt +0 -71
  1838. data/lib/puppet/vendor/rgen/lib/ea_support/ea_support.rb +0 -54
  1839. data/lib/puppet/vendor/rgen/lib/ea_support/id_store.rb +0 -32
  1840. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_ea_metamodel.rb +0 -562
  1841. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_ea_metamodel_ext.rb +0 -45
  1842. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_ea_metamodel_generator.rb +0 -43
  1843. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_ea_to_uml13.rb +0 -103
  1844. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_to_uml13_ea.rb +0 -89
  1845. data/lib/puppet/vendor/rgen/lib/metamodels/uml13_metamodel.rb +0 -559
  1846. data/lib/puppet/vendor/rgen/lib/metamodels/uml13_metamodel_ext.rb +0 -26
  1847. data/lib/puppet/vendor/rgen/lib/mmgen/metamodel_generator.rb +0 -20
  1848. data/lib/puppet/vendor/rgen/lib/mmgen/mm_ext/ecore_mmgen_ext.rb +0 -91
  1849. data/lib/puppet/vendor/rgen/lib/mmgen/mmgen.rb +0 -28
  1850. data/lib/puppet/vendor/rgen/lib/mmgen/templates/annotations.tpl +0 -37
  1851. data/lib/puppet/vendor/rgen/lib/mmgen/templates/metamodel_generator.tpl +0 -172
  1852. data/lib/puppet/vendor/rgen/lib/rgen/array_extensions.rb +0 -45
  1853. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore.rb +0 -218
  1854. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore_builder_methods.rb +0 -81
  1855. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore_ext.rb +0 -69
  1856. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore_interface.rb +0 -47
  1857. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore_to_ruby.rb +0 -167
  1858. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ruby_to_ecore.rb +0 -91
  1859. data/lib/puppet/vendor/rgen/lib/rgen/environment.rb +0 -129
  1860. data/lib/puppet/vendor/rgen/lib/rgen/fragment/dump_file_cache.rb +0 -63
  1861. data/lib/puppet/vendor/rgen/lib/rgen/fragment/fragmented_model.rb +0 -140
  1862. data/lib/puppet/vendor/rgen/lib/rgen/fragment/model_fragment.rb +0 -289
  1863. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/abstract_instantiator.rb +0 -66
  1864. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/abstract_xml_instantiator.rb +0 -66
  1865. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/default_xml_instantiator.rb +0 -117
  1866. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/ecore_xml_instantiator.rb +0 -169
  1867. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/json_instantiator.rb +0 -126
  1868. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/json_parser.rb +0 -331
  1869. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/json_parser.y +0 -94
  1870. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/nodebased_xml_instantiator.rb +0 -137
  1871. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/qualified_name_resolver.rb +0 -97
  1872. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/reference_resolver.rb +0 -128
  1873. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/resolution_helper.rb +0 -47
  1874. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/xmi11_instantiator.rb +0 -168
  1875. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/builder_extensions.rb +0 -556
  1876. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/builder_runtime.rb +0 -174
  1877. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/constant_order_helper.rb +0 -89
  1878. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/data_types.rb +0 -77
  1879. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/intermediate/annotation.rb +0 -30
  1880. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/intermediate/feature.rb +0 -168
  1881. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/mm_multiple.rb +0 -23
  1882. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/module_extension.rb +0 -42
  1883. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder.rb +0 -224
  1884. data/lib/puppet/vendor/rgen/lib/rgen/model_builder/builder_context.rb +0 -334
  1885. data/lib/puppet/vendor/rgen/lib/rgen/model_builder/model_serializer.rb +0 -225
  1886. data/lib/puppet/vendor/rgen/lib/rgen/model_builder/reference_resolver.rb +0 -156
  1887. data/lib/puppet/vendor/rgen/lib/rgen/model_builder.rb +0 -32
  1888. data/lib/puppet/vendor/rgen/lib/rgen/serializer/json_serializer.rb +0 -121
  1889. data/lib/puppet/vendor/rgen/lib/rgen/serializer/opposite_reference_filter.rb +0 -18
  1890. data/lib/puppet/vendor/rgen/lib/rgen/serializer/qualified_name_provider.rb +0 -47
  1891. data/lib/puppet/vendor/rgen/lib/rgen/serializer/xmi11_serializer.rb +0 -116
  1892. data/lib/puppet/vendor/rgen/lib/rgen/serializer/xmi20_serializer.rb +0 -71
  1893. data/lib/puppet/vendor/rgen/lib/rgen/serializer/xml_serializer.rb +0 -98
  1894. data/lib/puppet/vendor/rgen/lib/rgen/template_language/directory_template_container.rb +0 -83
  1895. data/lib/puppet/vendor/rgen/lib/rgen/template_language/output_handler.rb +0 -87
  1896. data/lib/puppet/vendor/rgen/lib/rgen/template_language/template_container.rb +0 -234
  1897. data/lib/puppet/vendor/rgen/lib/rgen/template_language/template_helper.rb +0 -26
  1898. data/lib/puppet/vendor/rgen/lib/rgen/template_language.rb +0 -297
  1899. data/lib/puppet/vendor/rgen/lib/rgen/transformer.rb +0 -475
  1900. data/lib/puppet/vendor/rgen/lib/rgen/util/auto_class_creator.rb +0 -61
  1901. data/lib/puppet/vendor/rgen/lib/rgen/util/cached_glob.rb +0 -67
  1902. data/lib/puppet/vendor/rgen/lib/rgen/util/file_cache_map.rb +0 -124
  1903. data/lib/puppet/vendor/rgen/lib/rgen/util/file_change_detector.rb +0 -84
  1904. data/lib/puppet/vendor/rgen/lib/rgen/util/method_delegation.rb +0 -114
  1905. data/lib/puppet/vendor/rgen/lib/rgen/util/model_comparator.rb +0 -68
  1906. data/lib/puppet/vendor/rgen/lib/rgen/util/model_comparator_base.rb +0 -142
  1907. data/lib/puppet/vendor/rgen/lib/rgen/util/model_dumper.rb +0 -29
  1908. data/lib/puppet/vendor/rgen/lib/rgen/util/name_helper.rb +0 -42
  1909. data/lib/puppet/vendor/rgen/lib/rgen/util/pattern_matcher.rb +0 -329
  1910. data/lib/puppet/vendor/rgen/lib/transformers/ecore_to_uml13.rb +0 -79
  1911. data/lib/puppet/vendor/rgen/lib/transformers/uml13_to_ecore.rb +0 -127
  1912. data/lib/puppet/vendor/rgen/test/array_extensions_test.rb +0 -64
  1913. data/lib/puppet/vendor/rgen/test/ea_instantiator_test.rb +0 -35
  1914. data/lib/puppet/vendor/rgen/test/ea_serializer_test.rb +0 -23
  1915. data/lib/puppet/vendor/rgen/test/ecore_self_test.rb +0 -54
  1916. data/lib/puppet/vendor/rgen/test/environment_test.rb +0 -90
  1917. data/lib/puppet/vendor/rgen/test/json_test.rb +0 -171
  1918. data/lib/puppet/vendor/rgen/test/metamodel_builder_test.rb +0 -1482
  1919. data/lib/puppet/vendor/rgen/test/metamodel_from_ecore_test.rb +0 -57
  1920. data/lib/puppet/vendor/rgen/test/metamodel_order_test.rb +0 -131
  1921. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test/TestModel.rb +0 -70
  1922. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test/houseMetamodel.ecore +0 -42
  1923. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test/houseMetamodel_from_ecore.rb +0 -44
  1924. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test/using_builtin_types.ecore +0 -9
  1925. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test.rb +0 -98
  1926. data/lib/puppet/vendor/rgen/test/method_delegation_test.rb +0 -178
  1927. data/lib/puppet/vendor/rgen/test/model_builder/builder_context_test.rb +0 -59
  1928. data/lib/puppet/vendor/rgen/test/model_builder/builder_test.rb +0 -242
  1929. data/lib/puppet/vendor/rgen/test/model_builder/ecore_original.rb +0 -163
  1930. data/lib/puppet/vendor/rgen/test/model_builder/ecore_original_regenerated.rb +0 -163
  1931. data/lib/puppet/vendor/rgen/test/model_builder/reference_resolver_test.rb +0 -156
  1932. data/lib/puppet/vendor/rgen/test/model_builder/serializer_test.rb +0 -94
  1933. data/lib/puppet/vendor/rgen/test/model_builder/statemachine_metamodel.rb +0 -42
  1934. data/lib/puppet/vendor/rgen/test/model_builder/test_model/statemachine1.rb +0 -23
  1935. data/lib/puppet/vendor/rgen/test/model_builder_test.rb +0 -6
  1936. data/lib/puppet/vendor/rgen/test/model_fragment_test.rb +0 -30
  1937. data/lib/puppet/vendor/rgen/test/output_handler_test.rb +0 -58
  1938. data/lib/puppet/vendor/rgen/test/qualified_name_provider_test.rb +0 -48
  1939. data/lib/puppet/vendor/rgen/test/qualified_name_resolver_test.rb +0 -102
  1940. data/lib/puppet/vendor/rgen/test/reference_resolver_test.rb +0 -117
  1941. data/lib/puppet/vendor/rgen/test/rgen_test.rb +0 -26
  1942. data/lib/puppet/vendor/rgen/test/template_language_test/expected_result1.txt +0 -29
  1943. data/lib/puppet/vendor/rgen/test/template_language_test/expected_result2.txt +0 -9
  1944. data/lib/puppet/vendor/rgen/test/template_language_test/expected_result3.txt +0 -4
  1945. data/lib/puppet/vendor/rgen/test/template_language_test/indentStringTestDefaultIndent.out +0 -1
  1946. data/lib/puppet/vendor/rgen/test/template_language_test/indentStringTestTabIndent.out +0 -1
  1947. data/lib/puppet/vendor/rgen/test/template_language_test/templates/callback_indent_test/a.tpl +0 -12
  1948. data/lib/puppet/vendor/rgen/test/template_language_test/templates/callback_indent_test/b.tpl +0 -5
  1949. data/lib/puppet/vendor/rgen/test/template_language_test/templates/code/array.tpl +0 -11
  1950. data/lib/puppet/vendor/rgen/test/template_language_test/templates/content/author.tpl +0 -7
  1951. data/lib/puppet/vendor/rgen/test/template_language_test/templates/content/chapter.tpl +0 -5
  1952. data/lib/puppet/vendor/rgen/test/template_language_test/templates/define_local_test/local.tpl +0 -8
  1953. data/lib/puppet/vendor/rgen/test/template_language_test/templates/define_local_test/test.tpl +0 -8
  1954. data/lib/puppet/vendor/rgen/test/template_language_test/templates/evaluate_test/test.tpl +0 -7
  1955. data/lib/puppet/vendor/rgen/test/template_language_test/templates/indent_string_test.tpl +0 -12
  1956. data/lib/puppet/vendor/rgen/test/template_language_test/templates/index/c/cmod.tpl +0 -1
  1957. data/lib/puppet/vendor/rgen/test/template_language_test/templates/index/chapter.tpl +0 -3
  1958. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_backslash_r_test.tpl +0 -5
  1959. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/no_indent.tpl +0 -3
  1960. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/sub1/no_indent.tpl +0 -3
  1961. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/test.tpl +0 -24
  1962. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/test2.tpl +0 -13
  1963. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/test3.tpl +0 -10
  1964. data/lib/puppet/vendor/rgen/test/template_language_test/templates/null_context_test.tpl +0 -17
  1965. data/lib/puppet/vendor/rgen/test/template_language_test/templates/root.tpl +0 -31
  1966. data/lib/puppet/vendor/rgen/test/template_language_test/templates/template_resolution_test/sub1/sub1.tpl +0 -3
  1967. data/lib/puppet/vendor/rgen/test/template_language_test/templates/template_resolution_test/sub1.tpl +0 -9
  1968. data/lib/puppet/vendor/rgen/test/template_language_test/templates/template_resolution_test/test.tpl +0 -4
  1969. data/lib/puppet/vendor/rgen/test/template_language_test/testout.txt +0 -29
  1970. data/lib/puppet/vendor/rgen/test/template_language_test.rb +0 -163
  1971. data/lib/puppet/vendor/rgen/test/testmodel/class_model_checker.rb +0 -119
  1972. data/lib/puppet/vendor/rgen/test/testmodel/ea_testmodel.eap +0 -0
  1973. data/lib/puppet/vendor/rgen/test/testmodel/ea_testmodel.xml +0 -1029
  1974. data/lib/puppet/vendor/rgen/test/testmodel/ea_testmodel_partial.xml +0 -317
  1975. data/lib/puppet/vendor/rgen/test/testmodel/ecore_model_checker.rb +0 -101
  1976. data/lib/puppet/vendor/rgen/test/testmodel/manual_testmodel.xml +0 -22
  1977. data/lib/puppet/vendor/rgen/test/testmodel/object_model_checker.rb +0 -67
  1978. data/lib/puppet/vendor/rgen/test/transformer_test.rb +0 -254
  1979. data/lib/puppet/vendor/rgen/test/util/file_cache_map_test.rb +0 -99
  1980. data/lib/puppet/vendor/rgen/test/util/pattern_matcher_test.rb +0 -97
  1981. data/lib/puppet/vendor/rgen/test/util_test.rb +0 -5
  1982. data/lib/puppet/vendor/rgen/test/xml_instantiator_test/simple_ecore_model_checker.rb +0 -94
  1983. data/lib/puppet/vendor/rgen/test/xml_instantiator_test/simple_xmi_ecore_instantiator.rb +0 -53
  1984. data/lib/puppet/vendor/rgen/test/xml_instantiator_test/simple_xmi_metamodel.rb +0 -49
  1985. data/lib/puppet/vendor/rgen/test/xml_instantiator_test/simple_xmi_to_ecore.rb +0 -75
  1986. data/lib/puppet/vendor/rgen/test/xml_instantiator_test.rb +0 -160
  1987. data/lib/puppet/vendor/rgen_patch.rb +0 -132
  1988. data/lib/puppet/vendor/semantic/Gemfile +0 -20
  1989. data/lib/puppet/vendor/semantic/PUPPET_README.md +0 -6
  1990. data/lib/puppet/vendor/semantic/Rakefile +0 -69
  1991. data/lib/puppet/vendor/semantic/lib/semantic/version.rb +0 -168
  1992. data/lib/puppet/vendor/semantic/lib/semantic/version_range.rb +0 -424
  1993. data/lib/puppet/vendor/semantic/spec/spec_helper.rb +0 -24
  1994. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/graph_node_spec.rb +0 -141
  1995. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/graph_spec.rb +0 -162
  1996. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/module_release_spec.rb +0 -143
  1997. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/source_spec.rb +0 -5
  1998. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/unsatisfiable_graph_spec.rb +0 -44
  1999. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency_spec.rb +0 -383
  2000. data/lib/puppet/vendor/semantic/spec/unit/semantic/version_range_spec.rb +0 -307
  2001. data/lib/puppet/vendor/semantic/spec/unit/semantic/version_spec.rb +0 -608
  2002. data/lib/semver.rb +0 -123
  2003. data/man/man8/extlookup2hiera.8 +0 -10
  2004. data/man/man8/puppet-file.8 +0 -189
  2005. data/man/man8/puppet-resource_type.8 +0 -188
  2006. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/lib/puppet/bindings/abc/default.rb +0 -9
  2007. data/spec/fixtures/unit/data_providers/environments/sample/manifests/site.pp +0 -6
  2008. data/spec/fixtures/unit/data_providers/environments/sample/modules/dataprovider/lib/puppet/bindings/dataprovider/default.rb +0 -54
  2009. data/spec/fixtures/unit/data_providers/environments/sample/modules/dataprovider/lib/puppet_x/helindbe/sample_env_data.rb +0 -31
  2010. data/spec/fixtures/unit/data_providers/environments/sample/modules/dataprovider/lib/puppet_x/helindbe/sample_module_data.rb +0 -32
  2011. data/spec/fixtures/unit/data_providers/environments/sample/modules/dataprovider/manifests/init.pp +0 -5
  2012. data/spec/fixtures/unit/functions/lookup/environments/production/modules/abc/lib/puppet/bindings/abc/default.rb +0 -9
  2013. data/spec/fixtures/unit/functions/lookup/environments/production/modules/bad_data/lib/puppet/bindings/bad_data/default.rb +0 -9
  2014. data/spec/fixtures/unit/functions/lookup/environments/production/modules/bad_data/manifests/init.pp +0 -3
  2015. data/spec/fixtures/unit/functions/lookup/environments/production/modules/bca/lib/puppet/bindings/bca/default.rb +0 -9
  2016. data/spec/integration/data_binding.rb +0 -104
  2017. data/spec/integration/parser/functions/require_spec.rb +0 -43
  2018. data/spec/integration/provider/package_spec.rb +0 -33
  2019. data/spec/unit/application/inspect_spec.rb +0 -287
  2020. data/spec/unit/data_providers/sample_data_provider_spec.rb +0 -52
  2021. data/spec/unit/face/file_spec.rb +0 -10
  2022. data/spec/unit/indirector/catalog/static_compiler_spec.rb +0 -237
  2023. data/spec/unit/indirector/resource_type/parser_spec.rb +0 -254
  2024. data/spec/unit/indirector/resource_type/rest_spec.rb +0 -14
  2025. data/spec/unit/parser/functions/defined_spec.rb +0 -120
  2026. data/spec/unit/parser/functions/include_spec.rb +0 -55
  2027. data/spec/unit/parser/functions/require_spec.rb +0 -68
  2028. data/spec/unit/pops/binder/binder_spec.rb +0 -43
  2029. data/spec/unit/pops/binder/bindings_checker_spec.rb +0 -155
  2030. data/spec/unit/pops/binder/bindings_composer_spec.rb +0 -64
  2031. data/spec/unit/pops/binder/bindings_validator_factory_spec.rb +0 -18
  2032. data/spec/unit/pops/binder/config/binder_config_spec.rb +0 -42
  2033. data/spec/unit/pops/binder/injector_spec.rb +0 -768
  2034. data/spec/unit/pops/parser/rgen_sanitycheck_spec.rb +0 -23
  2035. data/spec/unit/resource/type_collection_helper_spec.rb +0 -24
  2036. data/spec/unit/semver_spec.rb +0 -305
  2037. /data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/environment.conf +0 -0
  2038. /data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/lib/puppet/functions/environment/data.rb +0 -0
  2039. /data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/modules/abc/lib/puppet/functions/abc/data.rb +0 -0
  2040. /data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/modules/abc/manifests/init.pp +0 -0
  2041. /data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/modules/bca/lib/puppet/functions/bca/data.rb +0 -0
  2042. /data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/modules/bca/manifests/init.pp +0 -0
  2043. /data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/modules/no_provider/manifests/init.pp +0 -0
  2044. /data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/{usee → modules/usee}/lib/puppet/functions/usee/callee.rb +0 -0
  2045. /data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/{user → modules/user}/lib/puppet/functions/user/caller.rb +0 -0
@@ -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', 755)
23
+ module_eval(<<'...end egrammar.ra/module_eval...', 'egrammar.ra', 878)
24
24
 
25
25
  # Make emacs happy
26
26
  # Local Variables:
@@ -30,220 +30,298 @@ module_eval(<<'...end egrammar.ra/module_eval...', 'egrammar.ra', 755)
30
30
  ##### State transition tables begin ###
31
31
 
32
32
  clist = [
33
- '58,61,319,-238,59,53,155,54,238,80,-239,-227,335,280,-129,111,320,277',
34
- '371,336,370,-241,375,101,18,104,394,99,100,239,42,280,45,135,47,12,-240',
35
- '46,36,39,251,44,37,10,11,-238,113,66,17,103,110,38,-239,-227,15,16,-129',
36
- '301,112,278,58,61,67,-241,59,53,136,54,43,111,275,81,35,62,111,64,65',
37
- '63,-240,314,48,49,51,50,18,256,52,-236,111,342,42,107,45,254,47,115',
38
- '255,46,36,39,113,44,37,79,110,113,344,66,17,110,79,38,112,279,15,16',
39
- '79,112,280,113,58,61,67,110,59,53,238,54,43,-236,79,112,35,62,111,64',
40
- '65,269,270,66,48,49,51,50,18,71,52,239,331,371,42,370,45,328,47,12,352',
41
- '46,36,39,69,44,37,10,11,113,353,66,17,110,275,38,58,61,15,16,59,112',
42
- '258,257,58,61,67,276,59,53,355,54,43,72,73,74,35,62,111,64,65,256,302',
43
- '358,48,49,51,50,18,251,52,314,363,364,42,304,45,251,47,12,250,46,36',
44
- '39,249,44,37,10,11,113,368,66,17,110,308,38,361,372,15,16,374,112,75',
45
- '77,76,78,67,318,227,230,238,381,43,228,383,238,35,62,275,64,65,238,227',
46
- '66,48,49,51,50,58,61,52,239,59,53,66,54,324,79,79,217,216,387,239,71',
47
- '121,231,390,275,121,393,152,315,18,58,61,309,267,59,42,314,45,150,47',
48
- '12,238,46,36,39,397,44,37,10,11,374,399,66,17,66,400,38,401,122,15,16',
49
- '404,239,405,406,121,79,67,71,135,414,68,132,43,416,417,418,35,62,304',
50
- '64,65,,,,48,49,51,50,58,61,52,67,59,53,,54,410,80,,,,136,62,,,,,,,,',
51
- '101,18,104,,99,100,,42,,45,,47,12,,46,36,39,,44,37,10,11,,,66,17,103',
52
- ',38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,81,35,62,,64,65,,,,48,49,51',
53
- '50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16',
54
- ',,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,',
55
- '42,,45,,47,12,,46,36,39,,44,37,10,11,,,66,17,,,38,,,15,16,,,,,58,61',
56
- '67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47',
57
- '12,,46,36,39,,44,37,10,11,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,',
58
- '54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,12,,46,36',
59
- '39,,44,37,10,11,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35',
60
- '62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,',
61
- ',,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,',
62
- '48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38',
63
- ',,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18',
64
- ',52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58',
65
- '61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45',
66
- ',47,12,,46,36,39,,44,37,10,11,,,66,17,,,38,,,15,16,,,,,,,67,,,,,,43',
67
- ',,,35,62,,64,65,,,,48,49,51,50,58,61,52,,59,53,,54,408,,,,,,,,,,,,,',
68
- ',,18,58,61,,,59,42,,45,,47,12,,46,36,39,,44,37,10,11,,,66,17,,,38,,',
69
- '15,16,,,,,,,67,,135,,,132,43,,,,35,62,,64,65,,,,48,49,51,50,58,61,52',
70
- '67,59,53,,54,403,80,,,,136,62,,,,,,,,,101,18,104,,99,100,,42,,45,,47',
71
- '12,,46,36,39,,44,37,10,11,,,66,17,103,,38,,,15,16,,,,,58,61,67,,59,53',
72
- ',54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36',
73
- '39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62',
74
- ',64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,',
75
- '66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48',
76
- '49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,',
77
- '15,16,,,,,,,67,,,,,,43,,,,35,62,,64,65,,,,48,49,51,50,58,61,52,,59,53',
78
- ',54,337,80,,,,,,,,,,,,,,101,18,104,,99,100,,42,,45,,47,12,,46,36,39',
79
- ',44,37,10,11,,,66,17,103,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35',
80
- '62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,',
81
- ',,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,139,54,43,,,,35,62,,64,65',
82
- ',,,48,49,51,50,18,,52,,,,42,,45,,47,12,,46,36,39,,44,37,10,11,,,66,17',
83
- ',,38,,,15,16,,,,,58,61,67,,59,53,141,54,43,,,,35,62,,64,65,,,,48,49',
84
- '51,50,18,,52,,,,42,,45,,47,12,,46,36,39,,44,37,10,11,,,66,17,,,38,,',
85
- '15,16,,,,,,,67,,,,,,43,,,,35,62,,64,65,,,,48,49,51,50,58,61,52,,59,53',
86
- ',54,143,80,,,,,,,,,,,,,,101,18,104,,99,100,,42,,45,,47,12,,46,36,39',
87
- ',44,37,10,11,,,66,17,103,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35',
88
- '62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,12,,46,36,39,,44,37,10',
89
- '11,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,',
90
- ',,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,',
91
- '38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50',
92
- '18,,52,,,,42,,45,,47,12,,46,36,39,,44,37,10,11,,,66,17,,,38,,,15,16',
93
- ',,,,58,61,67,,59,53,,154,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,',
94
- ',42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67',
95
- ',59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,12',
96
- ',46,36,39,,44,37,10,11,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54',
97
- '43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,12,,46,36,39',
98
- ',44,37,10,11,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62',
99
- ',64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,',
100
- '66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48',
101
- '49,51,50,18,,52,,,,42,,45,,47,12,,46,36,39,,44,37,10,11,,,66,17,,,38',
102
- ',,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18',
103
- ',52,,,,42,,45,,47,12,,46,36,39,,44,37,10,11,,,66,17,,,38,,,15,16,,,',
104
- ',58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42',
105
- ',45,,47,12,,46,36,39,,44,37,10,11,,,66,17,,,38,,,15,16,,,,,58,61,67',
106
- ',59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,12',
107
- ',46,36,39,,44,37,10,11,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54',
108
- '43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,12,,46,36,39',
109
- ',44,37,10,11,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62',
110
- ',64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,12,,46,36,39,,44,37,10,11',
111
- ',,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48',
112
- '49,51,50,18,,52,,,,42,,45,,47,12,,46,36,39,,44,37,10,11,,,66,17,,,38',
113
- ',,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18',
114
- ',52,,,,42,,45,,47,12,,46,36,39,,44,37,10,11,,,66,17,,,38,,,15,16,,,',
115
- ',58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,171',
116
- '185,177,186,47,178,188,179,36,170,,173,168,,,,,66,17,189,184,169,,,15',
117
- '167,,,,,,,67,,,,,187,172,,,,35,62,,64,65,,,,180,181,183,182,58,61,52',
118
- '80,59,53,,54,,,,,,,,,,101,,104,,99,100,,18,,,,,,42,,45,,47,115,,46,36',
119
- '39,,44,37,103,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35',
120
- '62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,',
121
- ',,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,',
122
- '48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38',
123
- ',,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18',
124
- ',52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58',
125
- '61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45',
126
- ',47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53',
127
- ',54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36',
128
- '39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62',
129
- ',64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,',
130
- '66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48',
131
- '49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,',
132
- '15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,',
133
- '52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58',
134
- '61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45',
135
- ',47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53',
136
- ',54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36',
137
- '39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62',
138
- ',64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,',
139
- '66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48',
140
- '49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,',
141
- '15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,',
142
- '52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58',
143
- '61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45',
144
- ',47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53',
145
- ',54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36',
146
- '39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62',
147
- ',64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,',
148
- '66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48',
149
- '49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,',
150
- '15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,',
151
- '52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58',
152
- '61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45',
153
- ',47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53',
154
- ',54,43,,,213,35,62,,64,65,,,,48,49,51,50,18,215,52,,,,42,,45,,47,12',
155
- ',46,36,39,,44,37,10,11,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54',
156
- '43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39',
157
- ',44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64',
158
- '65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17',
159
- ',,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51',
160
- '50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16',
161
- ',,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,',
162
- '42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67',
163
- ',59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115',
164
- ',46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,',
165
- '276,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39',
166
- ',44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64',
167
- '65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17',
168
- ',,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51',
169
- '50,18,,52,,,,42,,45,,47,12,,46,36,39,,44,37,10,11,,,66,17,,,38,,,15',
170
- '16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52',
171
- ',,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61',
172
- '67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47',
173
- '115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54',
174
- '43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39',
175
- ',44,37,,,,,66,17,,,38,,,15,16,,,,,,,67,,,,,,43,,,,35,62,,64,65,,,,48',
176
- '49,51,50,58,61,52,,59,53,,54,143,,,,,,,,,,,,,,,,18,,,,,,42,,45,,47,12',
177
- ',46,36,39,,44,37,10,11,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54',
178
- '43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39',
179
- ',44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64',
180
- '65,,,,48,49,51,50,18,,52,,,,42,,45,,47,12,,46,36,39,,44,37,10,11,,,66',
181
- '17,,,38,,,15,16,,,,,,,67,,,,,,43,,,,35,62,,64,65,,,,48,49,51,50,58,61',
182
- '52,,59,53,,54,312,,,,,,,,,,,,,,,,18,,,,,,42,,45,,47,12,,46,36,39,,44',
183
- '37,10,11,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64',
184
- '65,,,,48,49,51,50,18,243,52,,,,42,,45,,47,12,,46,36,39,,44,37,10,11',
185
- ',,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48',
186
- '49,51,50,18,,52,,,,42,,45,,47,12,,46,36,39,,44,37,10,11,,,66,17,,,38',
187
- ',,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18',
188
- ',52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58',
189
- '61,67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45',
190
- ',47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,,,67,,,,,,43,,,',
191
- '35,62,,64,65,,,,48,49,51,50,58,61,52,,59,53,,54,376,,,,,,,,,,,,,,,,18',
192
- ',,,,,42,,45,,47,115,,46,36,39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61',
193
- '67,,59,53,,54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47',
194
- '12,,46,36,39,,44,37,10,11,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,',
195
- '54,43,,,,35,62,,64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36',
196
- '39,,44,37,,,,,66,17,,,38,,,15,16,,,,,58,61,67,,59,53,,54,43,,,,35,62',
197
- ',64,65,,,,48,49,51,50,18,,52,,,,42,,45,,47,115,,46,36,39,,44,37,,,,',
198
- '66,17,,,38,,,15,16,,,,,,,67,,,,,,43,,,,35,62,,64,65,,,,48,49,51,50,58',
199
- '61,52,,59,53,,54,322,,,,,,,,,,,,,,,,18,,,,,,42,,45,,47,12,,46,36,39',
200
- ',44,37,10,11,80,,66,17,,,38,,,15,16,,,91,101,,104,67,99,100,,92,,43',
201
- ',,,35,62,,64,65,,,,48,49,51,50,,103,52,,,,80,,,84,85,87,86,89,90,,82',
202
- '83,96,91,101,305,104,81,99,100,,92,94,93,95,,58,61,,,59,,,,,,,,88,,103',
203
- ',,,98,97,,,84,85,87,86,89,90,,82,83,80,,246,,,81,,,135,,,132,96,91,101',
204
- ',104,,99,100,,92,94,93,95,,88,,,,,67,,,,,,,,,103,136,62,,98,97,,,84',
205
- '85,87,86,89,90,,82,83,80,,245,,,81,,,,,,,96,91,101,,104,,99,100,,92',
206
- '94,93,95,,88,,,,,,,,,,,,,,103,,,,98,97,,,84,85,87,86,89,90,,82,83,80',
207
- ',244,,,81,,,,,,,96,91,101,,104,80,99,100,,92,94,93,95,,88,,,,,101,,104',
208
- ',99,100,,,,103,,,,98,97,,80,84,85,87,86,89,90,,82,83,103,,96,91,101',
209
- '81,104,,99,100,,92,94,93,95,82,83,,,,,,81,,,,88,,,,103,,,,98,97,,80',
210
- '84,85,87,86,89,90,,82,83,,,96,91,101,81,104,,99,100,,92,94,93,95,,,',
211
- ',,,,,,,,88,,,,103,,,,98,97,,80,84,85,87,86,89,90,,82,83,,,96,91,101',
212
- '81,104,,99,100,,92,94,93,95,,269,270,,,,,,,,,88,,,,103,,58,61,98,97',
213
- '59,80,84,85,87,86,89,90,,82,83,,,96,91,101,81,104,,99,100,,92,94,93',
214
- '95,,,,,,,,,,135,,88,132,,,103,,,,98,97,,80,84,85,87,86,89,90,,82,83',
215
- '67,,,,101,81,104,,99,100,136,62,,,,80,,,,,281,,,,,,88,96,91,101,103',
216
- '104,,99,100,,92,94,93,95,87,86,,,,82,83,,,,,,81,,,103,,,,98,97,,80,84',
217
- '85,87,86,89,90,,82,83,,88,96,91,101,81,104,,99,100,,92,94,93,95,,,,',
218
- ',,,,,,,88,,,,103,,,,,97,,80,84,85,87,86,89,90,,82,83,,,96,91,101,81',
219
- '104,,99,100,,92,94,93,95,80,,,,,,,,,,,88,,,101,103,104,,99,100,80,,',
220
- '84,85,87,86,89,90,,82,83,96,91,101,273,104,81,99,100,103,92,94,93,95',
221
- ',,,,,,,,,,82,83,,88,,103,,81,,98,97,,80,84,85,87,86,89,90,,82,83,,,96',
222
- '91,101,81,104,,99,100,,92,94,93,95,,,,,,,,,,,,88,,,,103,,,,98,97,,80',
223
- '84,85,87,86,89,90,,82,83,,,,,101,81,104,,99,100,,,,,,80,,,,,,,,,,,88',
224
- ',91,101,103,104,,99,100,80,92,,84,85,87,86,,,,82,83,,91,101,,104,81',
225
- '99,100,103,92,,,,80,,,84,85,87,86,89,90,,82,83,,88,101,103,104,81,99',
226
- '100,,,,84,85,87,86,89,90,80,82,83,,,,,,81,88,,103,96,91,101,,104,,99',
227
- '100,,92,94,93,95,,82,83,,88,,,,81,,,,,,,103,,,,98,97,,80,84,85,87,86',
228
- '89,90,,82,83,,,96,91,101,81,104,,99,100,,92,94,93,95,,,,,,,,,,,,88,',
229
- ',,103,,,,98,97,,80,84,85,87,86,89,90,,82,83,,,96,91,101,81,104,,99,100',
230
- ',92,94,93,95,,,,,,,,,,,,88,,,,103,,,,98,97,,80,84,85,87,86,89,90,,82',
231
- '83,,,96,91,101,81,104,,99,100,,92,94,93,95,,,,,,,,,,,,88,,,,103,,,,98',
232
- '97,,80,84,85,87,86,89,90,,82,83,,,,91,101,81,104,,99,100,,92,,80,,,',
233
- ',,,,,,,,,88,101,,104,103,99,100,,,,,,84,85,87,86,89,90,,82,83,,,,,,81',
234
- '103,,,,,80,,,84,85,87,86,89,90,,82,83,,,101,88,104,81,99,100,,,,80,',
235
- ',,,,,,,,,,,,101,88,104,103,99,100,,,,,,84,85,87,86,89,90,,82,83,,,,',
236
- ',81,103,,,,,80,,,,,87,86,,,,82,83,,,101,88,104,81,99,100,,,,80,,,,,',
237
- ',,,,,,96,91,101,88,104,103,99,100,,92,94,93,95,84,85,87,86,,,,82,83',
238
- ',,,,,81,103,,,,98,97,,,84,85,87,86,89,90,,82,83,,,,88,,81,,,293,185',
239
- '292,186,,290,188,294,,287,,289,291,,,,,,88,189,184,295,,,,288,,,,,,',
240
- ',,,,,187,296,,,,,,,,,,,,299,300,298,297,293,185,292,186,,290,188,294',
241
- ',287,,289,291,,,,,,,189,184,295,,,,288,,,,,,,,,,,,187,296,,,,,,,,,,',
242
- ',299,300,298,297,293,185,292,186,,290,188,294,,287,,289,291,,,,,,,189',
243
- '184,295,,,,288,,,,,,,,,,,,187,296,,,,,,,,,,,,299,300,298,297,293,185',
244
- '292,186,,290,188,294,,287,,289,291,,,,,,,189,184,295,,,,288,,,,,,,,',
245
- ',,,187,296,,,,,,,,,,,,299,300,298,297' ]
246
- racc_action_table = arr = ::Array.new(6785, nil)
33
+ '63,74,385,-140,61,68,80,69,84,85,86,278,111,290,126,256,311,386,123',
34
+ '312,83,119,-263,-272,21,20,113,334,116,-277,110,52,112,55,291,64,12',
35
+ '91,59,44,47,279,54,45,10,11,-140,145,62,19,125,146,46,115,122,17,18',
36
+ '257,87,89,88,90,124,79,126,-263,-272,-275,123,53,335,154,-277,43,75',
37
+ '92,77,78,76,-179,-179,60,49,65,66,56,366,437,58,63,74,67,436,61,68,290',
38
+ '69,436,128,129,125,111,496,162,122,290,453,436,293,449,-275,448,124',
39
+ '21,20,113,291,116,293,110,52,112,55,139,64,12,291,59,44,47,81,54,45',
40
+ '10,11,111,163,62,19,188,283,46,115,190,17,18,142,193,449,113,448,116',
41
+ '79,110,83,112,258,126,53,368,91,123,43,75,92,77,78,-262,290,91,60,49',
42
+ '65,66,56,271,115,58,63,74,67,293,61,68,272,69,273,290,145,291,276,93',
43
+ '94,125,290,126,139,122,92,123,293,277,21,20,281,124,305,293,291,52,-262',
44
+ '55,306,64,12,291,59,44,47,142,54,45,10,11,111,139,62,19,154,324,46,125',
45
+ '309,17,18,122,-179,-179,113,309,116,79,110,124,112,313,126,53,142,126',
46
+ '123,43,75,123,77,78,128,129,83,60,49,65,66,56,91,115,58,63,74,67,91',
47
+ '61,68,91,69,164,74,-180,-180,165,93,94,125,91,126,125,122,92,123,122',
48
+ '332,21,20,154,124,-181,-181,124,52,340,55,358,64,12,359,59,44,47,361',
49
+ '54,45,10,11,111,365,62,19,-183,-183,46,125,370,17,18,122,269,268,113',
50
+ '372,116,79,110,124,112,376,126,53,378,126,123,43,75,123,77,78,269,268',
51
+ '293,60,49,65,66,56,381,115,58,63,74,67,382,61,68,290,69,98,97,269,268',
52
+ '394,93,94,125,395,126,125,122,92,123,122,396,21,20,397,124,269,268,124',
53
+ '52,400,55,281,64,131,404,59,44,47,406,54,45,381,99,111,-217,62,19,315',
54
+ '314,46,125,412,17,18,122,326,327,113,414,116,79,110,124,112,421,126',
55
+ '53,422,126,123,43,75,123,77,78,332,333,425,60,49,65,66,56,428,115,58',
56
+ '63,74,67,381,61,68,381,69,98,97,145,438,439,93,94,125,442,126,125,122',
57
+ '92,123,122,443,21,20,446,124,450,452,124,52,461,55,463,64,131,464,59',
58
+ '44,47,332,54,45,468,99,470,332,62,19,473,474,46,125,332,17,18,122,477',
59
+ '481,164,74,126,79,165,124,123,452,483,53,484,485,486,43,75,332,77,78',
60
+ '491,492,493,60,49,65,66,56,494,495,58,63,74,67,504,61,68,505,69,506',
61
+ '125,508,162,111,122,159,509,431,510,361,,,124,,,21,20,113,,116,,110',
62
+ '52,112,55,79,64,131,,59,44,47,,54,45,163,75,111,,62,19,,,46,115,,17',
63
+ '18,,,,113,,116,79,110,,112,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,115',
64
+ '58,63,74,67,,61,68,,69,,,,,111,93,94,,,,,,92,,,,21,20,113,,116,,110',
65
+ '52,112,55,,64,12,,59,44,47,,54,45,10,11,111,,62,19,,,46,115,,17,18,',
66
+ ',,113,,116,79,110,,112,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,115,58',
67
+ '63,74,67,,61,68,,69,,,,,111,,,,,,,,,,,,21,20,113,,116,,110,52,112,55',
68
+ ',64,12,,59,44,47,,54,45,10,11,,,62,19,,,46,115,,17,18,,,,,,,79,,,,,',
69
+ '53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,',
70
+ ',,,,,,,,,,21,20,138,,,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62,19',
71
+ ',,46,,,17,18,,,,164,74,,79,165,,,,,53,,,,43,75,,77,78,,,,60,49,65,66',
72
+ '56,,,58,63,74,67,,61,68,,69,,,,162,,,159,,,,,,,,,,21,20,,,,,,52,,55',
73
+ '79,64,131,,59,44,47,,54,45,163,75,,,62,19,,,46,,,17,18,,,,164,74,,79',
74
+ '165,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69',
75
+ ',,,162,,,159,,,,,,,,,,21,20,,,,,,52,,55,79,64,131,,59,44,47,,54,45,163',
76
+ '75,,,62,19,,,46,,,17,18,,,,164,74,,79,165,,,,,53,,,,43,75,,77,78,,,',
77
+ '60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,162,,,159,,,,,,,,,,21,20',
78
+ ',,,,,52,,55,79,64,131,,59,44,47,,54,45,163,75,,,62,19,,,46,,,17,18,',
79
+ ',,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61',
80
+ '68,172,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59,44,47,,54,45',
81
+ '10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,170,167',
82
+ '65,66,168,177,176,169,63,74,67,,61,68,179,69,,,,,,,,,,,,,,,,,21,20,',
83
+ ',,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,,,,,',
84
+ '79,,,,,,53,,,,43,75,,77,78,,,,170,167,65,66,168,177,176,169,63,74,67',
85
+ ',61,68,,69,181,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59,44,47,,54',
86
+ '45,10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,170',
87
+ '167,65,66,168,177,176,169,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20',
88
+ ',,,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,,,,',
89
+ ',79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,',
90
+ '192,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62',
91
+ '19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,',
92
+ ',58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59',
93
+ '44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77',
94
+ '78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20',
95
+ ',,,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,,,,',
96
+ ',79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,',
97
+ '69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10,11,',
98
+ ',62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66',
99
+ '56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12',
100
+ ',59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75',
101
+ ',77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21',
102
+ '20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,',
103
+ ',,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68',
104
+ ',69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10,11',
105
+ ',,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66',
106
+ '56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12',
107
+ ',59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75',
108
+ ',77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21',
109
+ '20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,',
110
+ ',,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68',
111
+ ',69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10,11',
112
+ ',,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66',
113
+ '56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,210,225,216,226',
114
+ '64,218,228,220,44,208,,212,206,,,,,62,19,229,224,207,,,17,205,,,,,,',
115
+ '79,,,,,227,211,,,,43,75,,77,78,,,,221,209,222,223,217,231,230,219,63',
116
+ '74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47',
117
+ ',54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60',
118
+ '49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,',
119
+ '55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53',
120
+ ',,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,',
121
+ ',,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17',
122
+ '18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67',
123
+ ',61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45',
124
+ ',,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65',
125
+ '66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64',
126
+ '131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75',
127
+ ',77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21',
128
+ '20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,',
129
+ ',79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,',
130
+ '69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62',
131
+ '19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,',
132
+ ',58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59',
133
+ '44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78',
134
+ ',,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,',
135
+ ',,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,',
136
+ ',,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,',
137
+ ',,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,',
138
+ '46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63',
139
+ '74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47',
140
+ ',54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60',
141
+ '49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,',
142
+ '55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53',
143
+ ',,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,',
144
+ ',,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17',
145
+ '18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67',
146
+ ',61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45',
147
+ ',,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65',
148
+ '66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64',
149
+ '131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75',
150
+ ',77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21',
151
+ '20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,',
152
+ ',79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,',
153
+ '69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62',
154
+ '19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,',
155
+ ',58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59',
156
+ '44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78',
157
+ ',,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,',
158
+ ',,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,',
159
+ ',,,53,,,253,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69',
160
+ ',,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19',
161
+ ',,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58',
162
+ '63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44',
163
+ '47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,',
164
+ ',60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,',
165
+ '52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,',
166
+ ',53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,',
167
+ ',,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46',
168
+ ',,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74',
169
+ '67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,295,,,,,52,,55,,64,12,,59,44,47',
170
+ ',54,45,10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,',
171
+ ',,60,49,65,66,56,,,58,63,74,67,,61,68,,69,303,,,,,,,,,,,,,,,,21,20,',
172
+ ',,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,,,,,',
173
+ '79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69',
174
+ ',,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62',
175
+ '19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,',
176
+ ',58,63,74,67,,61,68,,69,181,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12',
177
+ ',59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75',
178
+ ',77,78,,,,170,167,65,66,168,177,176,169,63,74,67,,61,68,,69,,,333,,',
179
+ ',,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46',
180
+ ',,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74',
181
+ '67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54',
182
+ '45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49',
183
+ '65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55',
184
+ ',64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,',
185
+ '43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,',
186
+ ',,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18',
187
+ ',,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61',
188
+ '68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,',
189
+ ',,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66',
190
+ '56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12',
191
+ ',59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75',
192
+ ',77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21',
193
+ '20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,',
194
+ ',79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,',
195
+ '69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62',
196
+ '19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,',
197
+ ',58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59',
198
+ '44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77',
199
+ '78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,388,,,,,,,,,,,,,,,,21',
200
+ '20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,',
201
+ ',,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68',
202
+ ',69,390,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10',
203
+ '11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65',
204
+ '66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64',
205
+ '131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75',
206
+ ',77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21',
207
+ '20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,',
208
+ ',,,,79,,,,,,53,,,,43,75,,77,78,,,,170,167,65,66,168,177,176,169,63,74',
209
+ '67,,61,68,,69,407,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59,44,47',
210
+ ',54,45,10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,',
211
+ ',,170,167,65,66,168,177,176,169,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,',
212
+ '21,20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18',
213
+ ',,,,,,79,,,,,,53,,,,43,75,,77,78,,,,170,167,65,66,168,177,176,169,63',
214
+ '74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59,44,47',
215
+ ',54,45,10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,',
216
+ ',,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,',
217
+ ',52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,',
218
+ ',,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,',
219
+ ',,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46',
220
+ ',,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74',
221
+ '67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54',
222
+ '45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49',
223
+ '65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55',
224
+ ',64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,',
225
+ '43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,',
226
+ ',,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18',
227
+ ',,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61',
228
+ '68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,',
229
+ ',,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66',
230
+ '56,,,58,63,74,67,,61,68,,69,441,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64',
231
+ '12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43',
232
+ '75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,',
233
+ ',21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,',
234
+ ',,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61',
235
+ '68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10',
236
+ '11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65',
237
+ '66,56,,,58,63,74,67,,61,68,,69,454,,,,,,,,,,,,,,,,21,20,,,,,,52,,55',
238
+ ',64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,',
239
+ '43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,',
240
+ ',,,,21,20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17',
241
+ '18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67',
242
+ ',61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59,44,47,,54,45',
243
+ '10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49',
244
+ '65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55',
245
+ ',64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,',
246
+ '43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,',
247
+ ',,,,21,20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17',
248
+ '18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67',
249
+ ',61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45',
250
+ ',,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65',
251
+ '66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64',
252
+ '12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43',
253
+ '75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,',
254
+ ',21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,,,,62,19,,,46,,,17,18,',
255
+ ',,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61',
256
+ '68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47,,54,45,,',
257
+ ',,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66',
258
+ '56,,,58,63,74,67,,61,68,,69,489,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64',
259
+ '12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43',
260
+ '75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,,,,,,,,,,',
261
+ ',21,20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18',
262
+ ',,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61',
263
+ '68,,69,498,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59,44,47,,54,45',
264
+ '10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49',
265
+ '65,66,56,,,58,63,74,67,,61,68,,69,500,,,,,,,,,,,,,,,,21,20,,,,,,52,',
266
+ '55,,64,12,,59,44,47,,54,45,10,11,,,62,19,,,46,,,17,18,,,,,,,79,,,,,',
267
+ '53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63,74,67,,61,68,,69,,,,,,',
268
+ ',,,,,,,,,,21,20,,,,,,52,,55,,64,12,,59,44,47,,54,45,10,11,,,62,19,,',
269
+ '46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,,60,49,65,66,56,,,58,63',
270
+ '74,67,,61,68,,69,,,,,,,,,,,,,,,,,21,20,,,,,,52,,55,,64,131,,59,44,47',
271
+ ',54,45,,,,,62,19,,,46,,,17,18,,,,,,,79,,,,,,53,,,,43,75,,77,78,,,111',
272
+ '60,49,65,66,56,,,58,,,67,107,102,113,,116,,110,,112,,103,105,104,106',
273
+ ',,,,,,,,,,,,,,,115,,,,109,108,,,95,96,98,97,100,101,,93,94,111,,296',
274
+ ',,92,,,,,,,107,102,113,,116,,110,,112,,103,105,104,106,,,,,99,,,,,,',
275
+ ',,,,115,,,,109,108,,,95,96,98,97,100,101,,93,94,111,,297,,,92,,,,,,',
276
+ '107,102,113,,116,,110,,112,,103,105,104,106,,,,,99,,,,,,,,,,,115,,,',
277
+ '109,108,,,95,96,98,97,100,101,,93,94,111,,298,,,92,,,,,,,107,102,113',
278
+ ',116,,110,,112,,103,105,104,106,,,,,99,,,,,,,,,,,115,,,,109,108,,111',
279
+ '95,96,98,97,100,101,,93,94,,,107,102,113,92,116,,110,,112,,103,105,104',
280
+ '106,,,,,,,,,,,,,,,99,115,,,,109,108,,,95,96,98,97,100,101,,93,94,,,',
281
+ ',,92,,,,111,,,,,,,326,327,,,,107,102,113,330,116,111,110,,112,99,103',
282
+ '105,104,106,,,,,,113,,116,,110,,112,,,,115,,,,109,108,,,95,96,98,97',
283
+ '100,101,,93,94,115,,,111,,92,,,95,96,98,97,,,,93,94,113,,116,111,110',
284
+ '92,112,,,,,,,99,,,,113,,116,,110,,112,,,,115,,,99,,,,,95,96,98,97,,',
285
+ ',93,94,115,,,111,,92,,,95,96,98,97,100,101,,93,94,113,,116,111,110,92',
286
+ '112,,,,,,,99,,,102,113,,116,,110,,112,,103,,115,,,99,,,,,95,96,98,97',
287
+ '100,101,,93,94,115,,,,,92,,111,95,96,98,97,100,101,,93,94,,,,102,113',
288
+ '92,116,111,110,,112,,103,99,,,,,,,102,113,,116,,110,,112,,103,99,115',
289
+ ',,,,,,,95,96,98,97,100,101,,93,94,115,,,,,92,,111,95,96,98,97,100,101',
290
+ ',93,94,,,,102,113,92,116,,110,,112,,103,99,,,,,,,,,,,,,,,,,99,115,,',
291
+ ',,111,,,95,96,98,97,100,101,,93,94,107,102,113,,116,92,110,,112,,103',
292
+ '105,104,106,,,,,,,,,,,,,,,,115,99,,,,111,,,95,96,98,97,100,101,,93,94',
293
+ '107,102,113,,116,92,110,,112,,103,105,104,106,,,,,,,,,,,,,,,,115,99',
294
+ ',,,108,,,95,96,98,97,100,101,111,93,94,,,336,,,92,,,,107,102,113,,116',
295
+ ',110,,112,,103,105,104,106,,,,,,,,99,,,,,,,,115,,,,109,108,,111,95,96',
296
+ '98,97,100,101,,93,94,,,107,102,113,92,116,,110,,112,,103,105,104,106',
297
+ ',,,,,,,,,,,,,,99,115,,,,109,108,,111,95,96,98,97,100,101,,93,94,,,107',
298
+ '102,113,92,116,,110,,112,,103,105,104,106,,,,,,,,,,,,,,,99,115,,,,109',
299
+ '108,,,95,96,98,97,100,101,111,93,94,,,,,,92,,,,107,102,113,362,116,',
300
+ '110,,112,,103,105,104,106,,,,,,,,99,,,,,,,,115,,,,109,108,,111,95,96',
301
+ '98,97,100,101,,93,94,,,107,102,113,92,116,,110,,112,,103,105,104,106',
302
+ ',,,,,,,,,,,,,,99,115,,,,109,108,,111,95,96,98,97,100,101,,93,94,,,107',
303
+ '102,113,92,116,,110,,112,,103,105,104,106,,,,,,,,,,,,,,,99,115,,,,109',
304
+ '108,,111,95,96,98,97,100,101,,93,94,,,107,102,113,92,116,,110,,112,',
305
+ '103,105,104,106,,,,,,,,,,,,,,,99,115,,,,109,108,,111,95,96,98,97,100',
306
+ '101,,93,94,,,107,102,113,92,116,,110,,112,,103,105,104,106,,,,,,,,,',
307
+ ',,,,,99,115,,,,109,108,,111,95,96,98,97,100,101,,93,94,,,107,102,113',
308
+ '92,116,,110,,112,,103,105,104,106,,,,,,,,,,,,,,,99,115,,,,109,108,,111',
309
+ '95,96,98,97,100,101,,93,94,,,107,102,113,92,116,,110,,112,,103,105,104',
310
+ '106,,,,,,,,,,,,,,,99,115,,,,109,108,,111,95,96,98,97,100,101,,93,94',
311
+ ',,107,102,113,92,116,,110,,112,,103,105,104,106,,,,,,,,,,,,,,,99,115',
312
+ ',,,109,108,,,95,96,98,97,100,101,,93,94,,348,225,347,226,92,345,228',
313
+ '349,,342,,344,346,,,,,,,229,224,350,,,,343,,,,99,,,,,,,,227,351,,,,',
314
+ ',,,,,,,354,352,355,353,356,231,230,357,348,225,347,226,,345,228,349',
315
+ ',342,,344,346,,,,,,,229,224,350,,,,343,,,,,,,,,,,,227,351,,,,,,,,,,',
316
+ ',354,352,355,353,356,231,230,357,348,225,347,226,,345,228,349,,342,',
317
+ '344,346,,,,,,,229,224,350,,,,343,,,,,,,,,,,,227,351,,,,,,,,,,,,354,352',
318
+ '355,353,356,231,230,357,348,225,347,226,,345,228,349,,342,,344,346,',
319
+ ',,,,,229,224,350,,,,343,,,,,,,,,,,,227,351,,,,,,,,,,,,354,352,355,353',
320
+ '356,231,230,357,348,225,347,226,,345,228,349,,342,,344,346,,,,,,,229',
321
+ '224,350,,,,343,,,,,,,,,,,,227,351,,,,,,,,,,,,354,352,355,353,356,231',
322
+ '230,357,348,225,347,226,,345,228,349,,342,,344,346,,,,,,,229,224,350',
323
+ ',,,343,,,,,,,,,,,,227,351,,,,,,,,,,,,354,352,355,353,356,231,230,357' ]
324
+ racc_action_table = arr = ::Array.new(10028, nil)
247
325
  idx = 0
248
326
  clist.each do |str|
249
327
  str.split(',', -1).each do |i|
@@ -253,241 +331,327 @@ clist = [
253
331
  end
254
332
 
255
333
  clist = [
256
- '0,0,242,182,0,0,68,0,240,193,183,168,252,325,170,45,242,176,368,253',
257
- '368,181,325,193,0,193,367,193,193,240,0,367,0,250,0,0,180,0,0,0,214',
258
- '0,0,0,0,182,45,0,0,193,45,0,183,168,0,0,170,219,45,176,405,405,0,181',
259
- '405,405,250,405,0,178,166,193,0,0,115,0,0,0,180,266,0,0,0,0,405,271',
260
- '0,169,12,272,405,12,405,142,405,405,142,405,405,405,178,405,405,164',
261
- '178,115,274,405,405,115,163,405,178,191,405,405,162,115,191,12,4,4,405',
262
- '12,4,4,314,4,405,169,161,12,405,405,177,405,405,342,342,314,405,405',
263
- '405,405,4,156,405,314,248,322,4,322,4,247,4,4,282,4,4,4,4,4,4,4,4,177',
264
- '284,4,4,177,286,4,150,150,4,4,150,177,147,147,400,400,4,288,400,400',
265
- '303,400,4,7,7,7,4,4,308,4,4,145,221,306,4,4,4,4,400,140,4,310,311,313',
266
- '400,222,400,138,400,400,130,400,400,400,128,400,400,400,400,308,321',
267
- '400,400,308,225,400,308,323,400,400,324,308,7,7,7,7,400,241,127,120',
268
- '121,329,400,118,341,239,400,400,343,400,400,152,108,121,400,400,400',
269
- '400,245,245,400,121,245,245,152,245,245,106,105,102,101,351,152,70,353',
270
- '121,354,357,215,362,63,238,245,179,179,227,152,179,245,232,245,62,245',
271
- '245,227,245,245,245,371,245,245,245,245,372,374,245,245,227,375,245',
272
- '378,41,245,245,385,227,386,392,40,8,245,5,179,402,1,179,245,407,409',
273
- '411,245,245,415,245,245,,,,245,245,245,245,399,399,245,179,399,399,',
274
- '399,399,194,,,,179,179,,,,,,,,,194,399,194,,194,194,,399,,399,,399,399',
275
- ',399,399,399,,399,399,399,399,,,399,399,194,,399,,,399,399,,,,,246,246',
276
- '399,,246,246,,246,399,,,194,399,399,,399,399,,,,399,399,399,399,246',
277
- ',399,,,,246,,246,,246,246,,246,246,246,,246,246,,,,,246,246,,,246,,',
278
- '246,246,,,,,10,10,246,,10,10,,10,246,,,,246,246,,246,246,,,,246,246',
279
- '246,246,10,,246,,,,10,,10,,10,10,,10,10,10,,10,10,10,10,,,10,10,,,10',
280
- ',,10,10,,,,,11,11,10,,11,11,,11,10,,,,10,10,,10,10,,,,10,10,10,10,11',
281
- ',10,,,,11,,11,,11,11,,11,11,11,,11,11,11,11,,,11,11,,,11,,,11,11,,,',
282
- ',251,251,11,,251,251,,251,11,,,,11,11,,11,11,,,,11,11,11,11,251,,11',
283
- ',,,251,,251,,251,251,,251,251,251,,251,251,251,251,,,251,251,,,251,',
284
- ',251,251,,,,,15,15,251,,15,15,,15,251,,,,251,251,,251,251,,,,251,251',
285
- '251,251,15,,251,,,,15,,15,,15,15,,15,15,15,,15,15,,,,,15,15,,,15,,,15',
286
- '15,,,,,16,16,15,,16,16,,16,15,,,,15,15,,15,15,,,,15,15,15,15,16,,15',
287
- ',,,16,,16,,16,16,,16,16,16,,16,16,,,,,16,16,,,16,,,16,16,,,,,17,17,16',
288
- ',17,17,,17,16,,,,16,16,,16,16,,,,16,16,16,16,17,,16,,,,17,,17,,17,17',
289
- ',17,17,17,,17,17,,,,,17,17,,,17,,,17,17,,,,,18,18,17,,18,18,,18,17,',
290
- ',,17,17,,17,17,,,,17,17,17,17,18,,17,,,,18,,18,,18,18,,18,18,18,,18',
291
- '18,18,18,,,18,18,,,18,,,18,18,,,,,,,18,,,,,,18,,,,18,18,,18,18,,,,18',
292
- '18,18,18,397,397,18,,397,397,,397,397,,,,,,,,,,,,,,,,397,46,46,,,46',
293
- '397,,397,,397,397,,397,397,397,,397,397,397,397,,,397,397,,,397,,,397',
294
- '397,,,,,,,397,,46,,,46,397,,,,397,397,,397,397,,,,397,397,397,397,381',
295
- '381,397,46,381,381,,381,381,117,,,,46,46,,,,,,,,,117,381,117,,117,117',
296
- ',381,,381,,381,381,,381,381,381,,381,381,381,381,,,381,381,117,,381',
297
- ',,381,381,,,,,42,42,381,,42,42,,42,381,,,,381,381,,381,381,,,,381,381',
298
- '381,381,42,,381,,,,42,,42,,42,42,,42,42,42,,42,42,,,,,42,42,,,42,,,42',
299
- '42,,,,,43,43,42,,43,43,,43,42,,,,42,42,,42,42,,,,42,42,42,42,43,,42',
300
- ',,,43,,43,,43,43,,43,43,43,,43,43,,,,,43,43,,,43,,,43,43,,,,,44,44,43',
301
- ',44,44,,44,43,,,,43,43,,43,43,,,,43,43,43,43,44,,43,,,,44,,44,,44,44',
302
- ',44,44,44,,44,44,,,,,44,44,,,44,,,44,44,,,,,,,44,,,,,,44,,,,44,44,,44',
303
- '44,,,,44,44,44,44,255,255,44,,255,255,,255,255,192,,,,,,,,,,,,,,192',
304
- '255,192,,192,192,,255,,255,,255,255,,255,255,255,,255,255,255,255,,',
305
- '255,255,192,,255,,,255,255,,,,,213,213,255,,213,213,,213,255,,,,255',
306
- '255,,255,255,,,,255,255,255,255,213,,255,,,,213,,213,,213,213,,213,213',
307
- '213,,213,213,,,,,213,213,,,213,,,213,213,,,,,52,52,213,,52,52,52,52',
308
- '213,,,,213,213,,213,213,,,,213,213,213,213,52,,213,,,,52,,52,,52,52',
309
- ',52,52,52,,52,52,52,52,,,52,52,,,52,,,52,52,,,,,53,53,52,,53,53,53,53',
310
- '52,,,,52,52,,52,52,,,,52,52,52,52,53,,52,,,,53,,53,,53,53,,53,53,53',
311
- ',53,53,53,53,,,53,53,,,53,,,53,53,,,,,,,53,,,,,,53,,,,53,53,,53,53,',
312
- ',,53,53,53,53,54,54,53,,54,54,,54,54,114,,,,,,,,,,,,,,114,54,114,,114',
313
- '114,,54,,54,,54,54,,54,54,54,,54,54,54,54,,,54,54,114,,54,,,54,54,,',
314
- ',,60,60,54,,60,60,,60,54,,,,54,54,,54,54,,,,54,54,54,54,60,,54,,,,60',
315
- ',60,,60,60,,60,60,60,,60,60,60,60,,,60,60,,,60,,,60,60,,,,,370,370,60',
316
- ',370,370,,370,60,,,,60,60,,60,60,,,,60,60,60,60,370,,60,,,,370,,370',
317
- ',370,370,,370,370,370,,370,370,,,,,370,370,,,370,,,370,370,,,,,256,256',
318
- '370,,256,256,,256,370,,,,370,370,,370,370,,,,370,370,370,370,256,,370',
319
- ',,,256,,256,,256,256,,256,256,256,,256,256,256,256,,,256,256,,,256,',
320
- ',256,256,,,,,65,65,256,,65,65,,65,256,,,,256,256,,256,256,,,,256,256',
321
- '256,256,65,,256,,,,65,,65,,65,65,,65,65,65,,65,65,,,,,65,65,,,65,,,65',
322
- '65,,,,,358,358,65,,358,358,,358,65,,,,65,65,,65,65,,,,65,65,65,65,358',
323
- ',65,,,,358,,358,,358,358,,358,358,358,,358,358,358,358,,,358,358,,,358',
324
- ',,358,358,,,,,69,69,358,,69,69,,69,358,,,,358,358,,358,358,,,,358,358',
325
- '358,358,69,,358,,,,69,,69,,69,69,,69,69,69,,69,69,69,69,,,69,69,,,69',
326
- ',,69,69,,,,,352,352,69,,352,352,,352,69,,,,69,69,,69,69,,,,69,69,69',
327
- '69,352,,69,,,,352,,352,,352,352,,352,352,352,,352,352,,,,,352,352,,',
328
- '352,,,352,352,,,,,71,71,352,,71,71,,71,352,,,,352,352,,352,352,,,,352',
329
- '352,352,352,71,,352,,,,71,,71,,71,71,,71,71,71,,71,71,71,71,,,71,71',
330
- ',,71,,,71,71,,,,,72,72,71,,72,72,,72,71,,,,71,71,,71,71,,,,71,71,71',
331
- '71,72,,71,,,,72,,72,,72,72,,72,72,72,,72,72,72,72,,,72,72,,,72,,,72',
332
- '72,,,,,73,73,72,,73,73,,73,72,,,,72,72,,72,72,,,,72,72,72,72,73,,72',
333
- ',,,73,,73,,73,73,,73,73,73,,73,73,73,73,,,73,73,,,73,,,73,73,,,,,74',
334
- '74,73,,74,74,,74,73,,,,73,73,,73,73,,,,73,73,73,73,74,,73,,,,74,,74',
335
- ',74,74,,74,74,74,,74,74,74,74,,,74,74,,,74,,,74,74,,,,,75,75,74,,75',
336
- '75,,75,74,,,,74,74,,74,74,,,,74,74,74,74,75,,74,,,,75,,75,,75,75,,75',
337
- '75,75,,75,75,75,75,,,75,75,,,75,,,75,75,,,,,76,76,75,,76,76,,76,75,',
338
- ',,75,75,,75,75,,,,75,75,75,75,76,,75,,,,76,,76,,76,76,,76,76,76,,76',
339
- '76,76,76,,,76,76,,,76,,,76,76,,,,,77,77,76,,77,77,,77,76,,,,76,76,,76',
340
- '76,,,,76,76,76,76,77,,76,,,,77,,77,,77,77,,77,77,77,,77,77,77,77,,,77',
341
- '77,,,77,,,77,77,,,,,78,78,77,,78,78,,78,77,,,,77,77,,77,77,,,,77,77',
342
- '77,77,78,,77,,,,78,,78,,78,78,,78,78,78,,78,78,78,78,,,78,78,,,78,,',
343
- '78,78,,,,,79,79,78,,79,79,,79,78,,,,78,78,,78,78,,,,78,78,78,78,79,',
344
- '78,,,,79,79,79,79,79,79,79,79,79,79,,79,79,,,,,79,79,79,79,79,,,79,79',
345
- ',,,,,,79,,,,,79,79,,,,79,79,,79,79,,,,79,79,79,79,80,80,79,116,80,80',
346
- ',80,,,,,,,,,,116,,116,,116,116,,80,,,,,,80,,80,,80,80,,80,80,80,,80',
347
- '80,116,,,,80,80,,,80,,,80,80,,,,,81,81,80,,81,81,,81,80,,,,80,80,,80',
348
- '80,,,,80,80,80,80,81,,80,,,,81,,81,,81,81,,81,81,81,,81,81,,,,,81,81',
349
- ',,81,,,81,81,,,,,82,82,81,,82,82,,82,81,,,,81,81,,81,81,,,,81,81,81',
350
- '81,82,,81,,,,82,,82,,82,82,,82,82,82,,82,82,,,,,82,82,,,82,,,82,82,',
351
- ',,,83,83,82,,83,83,,83,82,,,,82,82,,82,82,,,,82,82,82,82,83,,82,,,,83',
352
- ',83,,83,83,,83,83,83,,83,83,,,,,83,83,,,83,,,83,83,,,,,84,84,83,,84',
353
- '84,,84,83,,,,83,83,,83,83,,,,83,83,83,83,84,,83,,,,84,,84,,84,84,,84',
354
- '84,84,,84,84,,,,,84,84,,,84,,,84,84,,,,,85,85,84,,85,85,,85,84,,,,84',
355
- '84,,84,84,,,,84,84,84,84,85,,84,,,,85,,85,,85,85,,85,85,85,,85,85,,',
356
- ',,85,85,,,85,,,85,85,,,,,86,86,85,,86,86,,86,85,,,,85,85,,85,85,,,,85',
357
- '85,85,85,86,,85,,,,86,,86,,86,86,,86,86,86,,86,86,,,,,86,86,,,86,,,86',
358
- '86,,,,,87,87,86,,87,87,,87,86,,,,86,86,,86,86,,,,86,86,86,86,87,,86',
359
- ',,,87,,87,,87,87,,87,87,87,,87,87,,,,,87,87,,,87,,,87,87,,,,,88,88,87',
360
- ',88,88,,88,87,,,,87,87,,87,87,,,,87,87,87,87,88,,87,,,,88,,88,,88,88',
361
- ',88,88,88,,88,88,,,,,88,88,,,88,,,88,88,,,,,89,89,88,,89,89,,89,88,',
362
- ',,88,88,,88,88,,,,88,88,88,88,89,,88,,,,89,,89,,89,89,,89,89,89,,89',
363
- '89,,,,,89,89,,,89,,,89,89,,,,,90,90,89,,90,90,,90,89,,,,89,89,,89,89',
364
- ',,,89,89,89,89,90,,89,,,,90,,90,,90,90,,90,90,90,,90,90,,,,,90,90,,',
365
- '90,,,90,90,,,,,91,91,90,,91,91,,91,90,,,,90,90,,90,90,,,,90,90,90,90',
366
- '91,,90,,,,91,,91,,91,91,,91,91,91,,91,91,,,,,91,91,,,91,,,91,91,,,,',
367
- '92,92,91,,92,92,,92,91,,,,91,91,,91,91,,,,91,91,91,91,92,,91,,,,92,',
368
- '92,,92,92,,92,92,92,,92,92,,,,,92,92,,,92,,,92,92,,,,,93,93,92,,93,93',
369
- ',93,92,,,,92,92,,92,92,,,,92,92,92,92,93,,92,,,,93,,93,,93,93,,93,93',
370
- '93,,93,93,,,,,93,93,,,93,,,93,93,,,,,94,94,93,,94,94,,94,93,,,,93,93',
371
- ',93,93,,,,93,93,93,93,94,,93,,,,94,,94,,94,94,,94,94,94,,94,94,,,,,94',
372
- '94,,,94,,,94,94,,,,,95,95,94,,95,95,,95,94,,,,94,94,,94,94,,,,94,94',
373
- '94,94,95,,94,,,,95,,95,,95,95,,95,95,95,,95,95,,,,,95,95,,,95,,,95,95',
374
- ',,,,96,96,95,,96,96,,96,95,,,,95,95,,95,95,,,,95,95,95,95,96,,95,,,',
375
- '96,,96,,96,96,,96,96,96,,96,96,,,,,96,96,,,96,,,96,96,,,,,97,97,96,',
376
- '97,97,,97,96,,,,96,96,,96,96,,,,96,96,96,96,97,,96,,,,97,,97,,97,97',
377
- ',97,97,97,,97,97,,,,,97,97,,,97,,,97,97,,,,,98,98,97,,98,98,,98,97,',
378
- ',,97,97,,97,97,,,,97,97,97,97,98,,97,,,,98,,98,,98,98,,98,98,98,,98',
379
- '98,,,,,98,98,,,98,,,98,98,,,,,99,99,98,,99,99,,99,98,,,,98,98,,98,98',
380
- ',,,98,98,98,98,99,,98,,,,99,,99,,99,99,,99,99,99,,99,99,,,,,99,99,,',
381
- '99,,,99,99,,,,,100,100,99,,100,100,,100,99,,,99,99,99,,99,99,,,,99,99',
382
- '99,99,100,100,99,,,,100,,100,,100,100,,100,100,100,,100,100,100,100',
383
- ',,100,100,,,100,,,100,100,,,,,173,173,100,,173,173,,173,100,,,,100,100',
384
- ',100,100,,,,100,100,100,100,173,,100,,,,173,,173,,173,173,,173,173,173',
385
- ',173,173,,,,,173,173,,,173,,,173,173,,,,,172,172,173,,172,172,,172,173',
386
- ',,,173,173,,173,173,,,,173,173,173,173,172,,173,,,,172,,172,,172,172',
387
- ',172,172,172,,172,172,,,,,172,172,,,172,,,172,172,,,,,103,103,172,,103',
388
- '103,,103,172,,,,172,172,,172,172,,,,172,172,172,172,103,,172,,,,103',
389
- ',103,,103,103,,103,103,103,,103,103,,,,,103,103,,,103,,,103,103,,,,',
390
- '104,104,103,,104,104,,104,103,,,,103,103,,103,103,,,,103,103,103,103',
391
- '104,,103,,,,104,,104,,104,104,,104,104,104,,104,104,,,,,104,104,,,104',
392
- ',,104,104,,,,,171,171,104,,171,171,,171,104,,,,104,104,,104,104,,,,104',
393
- '104,104,104,171,,104,,,,171,,171,,171,171,,171,171,171,,171,171,,,,',
394
- '171,171,,,171,,,171,171,,,,,167,167,171,,167,167,,167,171,,167,,171',
395
- '171,,171,171,,,,171,171,171,171,167,,171,,,,167,,167,,167,167,,167,167',
396
- '167,,167,167,,,,,167,167,,,167,,,167,167,,,,,107,107,167,,107,107,,107',
397
- '167,,,,167,167,,167,167,,,,167,167,167,167,107,,167,,,,107,,107,,107',
398
- '107,,107,107,107,,107,107,,,,,107,107,,,107,,,107,107,,,,,261,261,107',
399
- ',261,261,,261,107,,,,107,107,,107,107,,,,107,107,107,107,261,,107,,',
400
- ',261,,261,,261,261,,261,261,261,,261,261,261,261,,,261,261,,,261,,,261',
401
- '261,,,,,276,276,261,,276,276,,276,261,,,,261,261,,261,261,,,,261,261',
402
- '261,261,276,,261,,,,276,,276,,276,276,,276,276,276,,276,276,,,,,276',
403
- '276,,,276,,,276,276,,,,,277,277,276,,277,277,,277,276,,,,276,276,,276',
404
- '276,,,,276,276,276,276,277,,276,,,,277,,277,,277,277,,277,277,277,,277',
405
- '277,,,,,277,277,,,277,,,277,277,,,,,278,278,277,,278,278,,278,277,,',
406
- ',277,277,,277,277,,,,277,277,277,277,278,,277,,,,278,,278,,278,278,',
407
- '278,278,278,,278,278,,,,,278,278,,,278,,,278,278,,,,,,,278,,,,,,278',
408
- ',,,278,278,,278,278,,,,278,278,278,278,154,154,278,,154,154,,154,154',
409
- ',,,,,,,,,,,,,,,154,,,,,,154,,154,,154,154,,154,154,154,,154,154,154',
410
- '154,,,154,154,,,154,,,154,154,,,,,304,304,154,,304,304,,304,154,,,,154',
411
- '154,,154,154,,,,154,154,154,154,304,,154,,,,304,,304,,304,304,,304,304',
412
- '304,,304,304,,,,,304,304,,,304,,,304,304,,,,,328,328,304,,328,328,,328',
413
- '304,,,,304,304,,304,304,,,,304,304,304,304,328,,304,,,,328,,328,,328',
414
- '328,,328,328,328,,328,328,328,328,,,328,328,,,328,,,328,328,,,,,,,328',
415
- ',,,,,328,,,,328,328,,328,328,,,,328,328,328,328,230,230,328,,230,230',
416
- ',230,230,,,,,,,,,,,,,,,,230,,,,,,230,,230,,230,230,,230,230,230,,230',
417
- '230,230,230,,,230,230,,,230,,,230,230,,,,,122,122,230,,122,122,,122',
418
- '230,,,,230,230,,230,230,,,,230,230,230,230,122,122,230,,,,122,,122,',
419
- '122,122,,122,122,122,,122,122,122,122,,,122,122,,,122,,,122,122,,,,',
420
- '151,151,122,,151,151,,151,122,,,,122,122,,122,122,,,,122,122,122,122',
421
- '151,,122,,,,151,,151,,151,151,,151,151,151,,151,151,151,151,,,151,151',
422
- ',,151,,,151,151,,,,,280,280,151,,280,280,,280,151,,,,151,151,,151,151',
423
- ',,,151,151,151,151,280,,151,,,,280,,280,,280,280,,280,280,280,,280,280',
424
- ',,,,280,280,,,280,,,280,280,,,,,281,281,280,,281,281,,281,280,,,,280',
425
- '280,,280,280,,,,280,280,280,280,281,,280,,,,281,,281,,281,281,,281,281',
426
- '281,,281,281,,,,,281,281,,,281,,,281,281,,,,,,,281,,,,,,281,,,,281,281',
427
- ',281,281,,,,281,281,281,281,326,326,281,,326,326,,326,326,,,,,,,,,,',
428
- ',,,,,326,,,,,,326,,326,,326,326,,326,326,326,,326,326,,,,,326,326,,',
429
- '326,,,326,326,,,,,319,319,326,,319,319,,319,326,,,,326,326,,326,326',
430
- ',,,326,326,326,326,319,,326,,,,319,,319,,319,319,,319,319,319,,319,319',
431
- '319,319,,,319,319,,,319,,,319,319,,,,,318,318,319,,318,318,,318,319',
432
- ',,,319,319,,319,319,,,,319,319,319,319,318,,319,,,,318,,318,,318,318',
433
- ',318,318,318,,318,318,,,,,318,318,,,318,,,318,318,,,,,315,315,318,,315',
434
- '315,,315,318,,,,318,318,,318,318,,,,318,318,318,318,315,,318,,,,315',
435
- ',315,,315,315,,315,315,315,,315,315,,,,,315,315,,,315,,,315,315,,,,',
436
- ',,315,,,,,,315,,,,315,315,,315,315,,,,315,315,315,315,244,244,315,,244',
437
- '244,,244,244,,,,,,,,,,,,,,,,244,,,,,,244,,244,,244,244,,244,244,244',
438
- ',244,244,244,244,205,,244,244,,,244,,,244,244,,,205,205,,205,244,205',
439
- '205,,205,,244,,,,244,244,,244,244,,,,244,244,244,244,,205,244,,,,223',
440
- ',,205,205,205,205,205,205,,205,205,223,223,223,223,223,205,223,223,',
441
- '223,223,223,223,,249,249,,,249,,,,,,,,205,,223,,,,223,223,,,223,223',
442
- '223,223,223,223,,223,223,126,,126,,,223,,,249,,,249,126,126,126,,126',
443
- ',126,126,,126,126,126,126,,223,,,,,249,,,,,,,,,126,249,249,,126,126',
444
- ',,126,126,126,126,126,126,,126,126,125,,125,,,126,,,,,,,125,125,125',
445
- ',125,,125,125,,125,125,125,125,,126,,,,,,,,,,,,,,125,,,,125,125,,,125',
446
- '125,125,125,125,125,,125,125,123,,123,,,125,,,,,,,123,123,123,,123,199',
447
- '123,123,,123,123,123,123,,125,,,,,199,,199,,199,199,,,,123,,,,123,123',
448
- ',9,123,123,123,123,123,123,,123,123,199,,9,9,9,123,9,,9,9,,9,9,9,9,199',
449
- '199,,,,,,199,,,,123,,,,9,,,,9,9,,153,9,9,9,9,9,9,,9,9,,,153,153,153',
450
- '9,153,,153,153,,153,153,153,153,,,,,,,,,,,,9,,,,153,,,,153,153,,190',
451
- '153,153,153,153,153,153,,153,153,,,190,190,190,153,190,,190,190,,190',
452
- '190,190,190,,153,153,,,,,,,,,153,,,,190,,331,331,190,190,331,218,190',
453
- '190,190,190,190,190,,190,190,,,218,218,218,190,218,,218,218,,218,218',
454
- '218,218,,,,,,,,,,331,,190,331,,,218,,,,218,218,,195,218,218,218,218',
455
- '218,218,,218,218,331,,,,195,218,195,,195,195,331,331,,,,210,,,,,210',
456
- ',,,,,218,210,210,210,195,210,,210,210,,210,210,210,210,195,195,,,,195',
457
- '195,,,,,,195,,,210,,,,210,210,,209,210,210,210,210,210,210,,210,210',
458
- ',195,209,209,209,210,209,,209,209,,209,209,209,209,,,,,,,,,,,,210,,',
459
- ',209,,,,,209,,208,209,209,209,209,209,209,,209,209,,,208,208,208,209',
460
- '208,,208,208,,208,208,208,208,198,,,,,,,,,,,209,,,198,208,198,,198,198',
461
- '165,,,208,208,208,208,208,208,,208,208,165,165,165,165,165,208,165,165',
462
- '198,165,165,165,165,,,,,,,,,,,198,198,,208,,165,,198,,165,165,,346,165',
463
- '165,165,165,165,165,,165,165,,,346,346,346,165,346,,346,346,,346,346',
464
- '346,346,,,,,,,,,,,,165,,,,346,,,,346,346,,200,346,346,346,346,346,346',
465
- ',346,346,,,,,200,346,200,,200,200,,,,,,207,,,,,,,,,,,346,,207,207,200',
466
- '207,,207,207,206,207,,200,200,200,200,,,,200,200,,206,206,,206,200,206',
467
- '206,207,206,,,,197,,,207,207,207,207,207,207,,207,207,,200,197,206,197',
468
- '207,197,197,,,,206,206,206,206,206,206,366,206,206,,,,,,206,207,,197',
469
- '366,366,366,,366,,366,366,,366,366,366,366,,197,197,,206,,,,197,,,,',
470
- ',,366,,,,366,366,,348,366,366,366,366,366,366,,366,366,,,348,348,348',
471
- '366,348,,348,348,,348,348,348,348,,,,,,,,,,,,366,,,,348,,,,348,348,',
472
- '349,348,348,348,348,348,348,,348,348,,,349,349,349,348,349,,349,349',
473
- ',349,349,349,349,,,,,,,,,,,,348,,,,349,,,,349,349,,350,349,349,349,349',
474
- '349,349,,349,349,,,350,350,350,349,350,,350,350,,350,350,350,350,,,',
475
- ',,,,,,,,349,,,,350,,,,350,350,,204,350,350,350,350,350,350,,350,350',
476
- ',,,204,204,350,204,,204,204,,204,,203,,,,,,,,,,,,,350,203,,203,204,203',
477
- '203,,,,,,204,204,204,204,204,204,,204,204,,,,,,204,203,,,,,202,,,203',
478
- '203,203,203,203,203,,203,203,,,202,204,202,203,202,202,,,,196,,,,,,',
479
- ',,,,,,,196,203,196,202,196,196,,,,,,202,202,202,202,202,202,,202,202',
480
- ',,,,,202,196,,,,,201,,,,,196,196,,,,196,196,,,201,202,201,196,201,201',
481
- ',,,347,,,,,,,,,,,,347,347,347,196,347,201,347,347,,347,347,347,347,201',
482
- '201,201,201,,,,201,201,,,,,,201,347,,,,347,347,,,347,347,347,347,347',
483
- '347,,347,347,,,,201,,347,,,273,273,273,273,,273,273,273,,273,,273,273',
484
- ',,,,,347,273,273,273,,,,273,,,,,,,,,,,,273,273,,,,,,,,,,,,273,273,273',
485
- '273,275,275,275,275,,275,275,275,,275,,275,275,,,,,,,275,275,275,,,',
486
- '275,,,,,,,,,,,,275,275,,,,,,,,,,,,275,275,275,275,305,305,305,305,,305',
487
- '305,305,,305,,305,305,,,,,,,305,305,305,,,,305,,,,,,,,,,,,305,305,,',
488
- ',,,,,,,,,305,305,305,305,217,217,217,217,,217,217,217,,217,,217,217',
489
- ',,,,,,217,217,217,,,,217,,,,,,,,,,,,217,217,,,,,,,,,,,,217,217,217,217' ]
490
- racc_action_check = arr = ::Array.new(6785, nil)
334
+ '0,0,294,208,0,0,1,0,7,7,7,142,233,292,12,113,180,294,12,180,5,12,206',
335
+ '207,0,0,233,215,233,222,233,0,233,0,292,0,0,8,0,0,0,142,0,0,0,0,208',
336
+ '50,0,0,12,51,0,233,12,0,0,113,7,7,7,7,12,0,55,206,207,223,55,0,215,58',
337
+ '222,0,0,233,0,0,0,208,208,0,0,0,0,0,268,373,0,4,4,0,373,4,4,268,4,391',
338
+ '16,16,55,234,478,306,55,145,391,478,268,388,223,388,55,4,4,234,268,234',
339
+ '145,234,4,234,4,49,4,4,145,4,4,4,4,4,4,4,4,237,306,4,4,75,145,4,234',
340
+ '76,4,4,49,80,446,237,446,237,4,237,82,237,114,218,4,269,117,218,4,4',
341
+ '234,4,4,218,269,118,4,4,4,4,4,134,237,4,10,10,4,269,10,10,135,10,137',
342
+ '381,138,269,140,237,237,218,190,56,167,218,237,56,381,141,10,10,144',
343
+ '218,155,190,381,10,218,10,157,10,10,190,10,10,10,167,10,10,10,10,238',
344
+ '209,10,10,169,190,10,56,171,10,10,56,47,47,238,178,238,10,238,56,238',
345
+ '183,60,10,209,127,60,10,10,127,10,10,57,57,194,10,10,10,10,10,199,238',
346
+ '10,11,11,10,200,11,11,201,11,188,188,61,61,188,238,238,60,202,131,127',
347
+ '60,238,131,127,204,11,11,219,60,62,62,127,11,255,11,260,11,11,262,11',
348
+ '11,11,263,11,11,11,11,235,266,11,11,63,63,11,131,270,11,11,131,120,120',
349
+ '235,274,235,11,235,131,235,279,153,11,280,168,153,11,11,168,11,11,151',
350
+ '151,281,11,11,11,11,11,284,235,11,17,17,11,290,17,17,291,17,235,235',
351
+ '152,152,299,235,235,153,300,170,168,153,235,170,168,301,17,17,302,153',
352
+ '166,166,168,17,304,17,307,17,17,308,17,17,17,310,17,17,323,235,236,328',
353
+ '17,17,185,185,17,170,329,17,17,170,412,412,236,331,236,17,236,170,236',
354
+ '337,216,17,339,217,216,17,17,217,17,17,341,343,360,17,17,17,17,17,363',
355
+ '236,17,18,18,17,367,18,18,369,18,236,236,372,375,376,236,236,216,379',
356
+ '221,217,216,236,221,217,380,18,18,387,216,389,390,217,18,398,18,403',
357
+ '18,18,411,18,18,18,413,18,18,420,236,424,427,18,18,432,433,18,221,434',
358
+ '18,18,221,440,449,59,59,365,18,59,221,365,450,452,18,453,456,459,18',
359
+ '18,460,18,18,466,467,472,18,18,18,18,18,475,476,18,19,19,18,487,19,19',
360
+ '488,19,490,365,497,59,130,365,59,499,365,501,507,,,365,,,19,19,130,',
361
+ '130,,130,19,130,19,59,19,19,,19,19,19,,19,19,59,59,239,,19,19,,,19,130',
362
+ ',19,19,,,,239,,239,19,239,,239,,,19,,,,19,19,,19,19,,,,19,19,19,19,19',
363
+ ',239,19,20,20,19,,20,20,,20,,,,,132,239,239,,,,,,239,,,,20,20,132,,132',
364
+ ',132,20,132,20,,20,20,,20,20,20,,20,20,20,20,133,,20,20,,,20,132,,20',
365
+ '20,,,,133,,133,20,133,,133,,,20,,,,20,20,,20,20,,,,20,20,20,20,20,,133',
366
+ '20,21,21,20,,21,21,,21,,,,,232,,,,,,,,,,,,21,21,232,,232,,232,21,232',
367
+ '21,,21,21,,21,21,21,,21,21,21,21,,,21,21,,,21,232,,21,21,,,,,,,21,,',
368
+ ',,,21,,,,21,21,,21,21,,,,21,21,21,21,21,,,21,48,48,21,,48,48,,48,,,',
369
+ ',,,,,,,,,,,,,48,48,48,,,,,48,,48,,48,48,,48,48,48,,48,48,48,48,,,48',
370
+ '48,,,48,,,48,48,,,,220,220,,48,220,,,,,48,,,,48,48,,48,48,,,,48,48,48',
371
+ '48,48,,,48,52,52,48,,52,52,,52,,,,220,,,220,,,,,,,,,,52,52,,,,,,52,',
372
+ '52,220,52,52,,52,52,52,,52,52,220,220,,,52,52,,,52,,,52,52,,,,305,305',
373
+ ',52,305,,,,,52,,,,52,52,,52,52,,,,52,52,52,52,52,,,52,53,53,52,,53,53',
374
+ ',53,,,,305,,,305,,,,,,,,,,53,53,,,,,,53,,53,305,53,53,,53,53,53,,53',
375
+ '53,305,305,,,53,53,,,53,,,53,53,,,,400,400,,53,400,,,,,53,,,,53,53,',
376
+ '53,53,,,,53,53,53,53,53,,,53,54,54,53,,54,54,,54,,,,400,,,400,,,,,,',
377
+ ',,,54,54,,,,,,54,,54,400,54,54,,54,54,54,,54,54,400,400,,,54,54,,,54',
378
+ ',,54,54,,,,,,,54,,,,,,54,,,,54,54,,54,54,,,,54,54,54,54,54,,,54,67,67',
379
+ '54,,67,67,67,67,,,,,,,,,,,,,,,,,67,67,,,,,,67,,67,,67,67,,67,67,67,',
380
+ '67,67,67,67,,,67,67,,,67,,,67,67,,,,,,,67,,,,,,67,,,,67,67,,67,67,,',
381
+ ',67,67,67,67,67,67,67,67,68,68,67,,68,68,68,68,,,,,,,,,,,,,,,,,68,68',
382
+ ',,,,,68,,68,,68,68,,68,68,68,,68,68,68,68,,,68,68,,,68,,,68,68,,,,,',
383
+ ',68,,,,,,68,,,,68,68,,68,68,,,,68,68,68,68,68,68,68,68,69,69,68,,69',
384
+ '69,,69,69,,,,,,,,,,,,,,,,69,69,,,,,,69,,69,,69,69,,69,69,69,,69,69,69',
385
+ '69,,,69,69,,,69,,,69,69,,,,,,,69,,,,,,69,,,,69,69,,69,69,,,,69,69,69',
386
+ '69,69,69,69,69,73,73,69,,73,73,,73,,,,,,,,,,,,,,,,,73,73,,,,,,73,,73',
387
+ ',73,73,,73,73,73,,73,73,73,73,,,73,73,,,73,,,73,73,,,,,,,73,,,,,,73',
388
+ ',,,73,73,,73,73,,,,73,73,73,73,73,,,73,78,78,73,,78,78,,78,,,,,,,,,',
389
+ ',,,,,,,78,78,,,,,,78,,78,,78,78,,78,78,78,,78,78,,,,,78,78,,,78,,,78',
390
+ '78,,,,,,,78,,,,,,78,,,,78,78,,78,78,,,,78,78,78,78,78,,,78,81,81,78',
391
+ ',81,81,,81,,,,,,,,,,,,,,,,,81,81,,,,,,81,,81,,81,81,,81,81,81,,81,81',
392
+ '81,81,,,81,81,,,81,,,81,81,,,,,,,81,,,,,,81,,,,81,81,,81,81,,,,81,81',
393
+ '81,81,81,,,81,83,83,81,,83,83,,83,,,,,,,,,,,,,,,,,83,83,,,,,,83,,83',
394
+ ',83,83,,83,83,83,,83,83,83,83,,,83,83,,,83,,,83,83,,,,,,,83,,,,,,83',
395
+ ',,,83,83,,83,83,,,,83,83,83,83,83,,,83,84,84,83,,84,84,,84,,,,,,,,,',
396
+ ',,,,,,,84,84,,,,,,84,,84,,84,84,,84,84,84,,84,84,84,84,,,84,84,,,84',
397
+ ',,84,84,,,,,,,84,,,,,,84,,,,84,84,,84,84,,,,84,84,84,84,84,,,84,85,85',
398
+ '84,,85,85,,85,,,,,,,,,,,,,,,,,85,85,,,,,,85,,85,,85,85,,85,85,85,,85',
399
+ '85,85,85,,,85,85,,,85,,,85,85,,,,,,,85,,,,,,85,,,,85,85,,85,85,,,,85',
400
+ '85,85,85,85,,,85,86,86,85,,86,86,,86,,,,,,,,,,,,,,,,,86,86,,,,,,86,',
401
+ '86,,86,86,,86,86,86,,86,86,86,86,,,86,86,,,86,,,86,86,,,,,,,86,,,,,',
402
+ '86,,,,86,86,,86,86,,,,86,86,86,86,86,,,86,87,87,86,,87,87,,87,,,,,,',
403
+ ',,,,,,,,,,87,87,,,,,,87,,87,,87,87,,87,87,87,,87,87,87,87,,,87,87,,',
404
+ '87,,,87,87,,,,,,,87,,,,,,87,,,,87,87,,87,87,,,,87,87,87,87,87,,,87,88',
405
+ '88,87,,88,88,,88,,,,,,,,,,,,,,,,,88,88,,,,,,88,,88,,88,88,,88,88,88',
406
+ ',88,88,88,88,,,88,88,,,88,,,88,88,,,,,,,88,,,,,,88,,,,88,88,,88,88,',
407
+ ',,88,88,88,88,88,,,88,89,89,88,,89,89,,89,,,,,,,,,,,,,,,,,89,89,,,,',
408
+ ',89,,89,,89,89,,89,89,89,,89,89,89,89,,,89,89,,,89,,,89,89,,,,,,,89',
409
+ ',,,,,89,,,,89,89,,89,89,,,,89,89,89,89,89,,,89,90,90,89,,90,90,,90,',
410
+ ',,,,,,,,,,,,,,,90,90,,,,,,90,,90,,90,90,,90,90,90,,90,90,90,90,,,90',
411
+ '90,,,90,,,90,90,,,,,,,90,,,,,,90,,,,90,90,,90,90,,,,90,90,90,90,90,',
412
+ ',90,91,91,90,,91,91,,91,,,,,,,,,,,,,,,,,91,91,,,,,,91,91,91,91,91,91',
413
+ '91,91,91,91,,91,91,,,,,91,91,91,91,91,,,91,91,,,,,,,91,,,,,91,91,,,',
414
+ '91,91,,91,91,,,,91,91,91,91,91,91,91,91,92,92,91,,92,92,,92,,,,,,,,',
415
+ ',,,,,,,,92,92,,,,,,92,,92,,92,92,,92,92,92,,92,92,,,,,92,92,,,92,,,92',
416
+ '92,,,,,,,92,,,,,,92,,,,92,92,,92,92,,,,92,92,92,92,92,,,92,93,93,92',
417
+ ',93,93,,93,,,,,,,,,,,,,,,,,93,93,,,,,,93,,93,,93,93,,93,93,93,,93,93',
418
+ ',,,,93,93,,,93,,,93,93,,,,,,,93,,,,,,93,,,,93,93,,93,93,,,,93,93,93',
419
+ '93,93,,,93,94,94,93,,94,94,,94,,,,,,,,,,,,,,,,,94,94,,,,,,94,,94,,94',
420
+ '94,,94,94,94,,94,94,,,,,94,94,,,94,,,94,94,,,,,,,94,,,,,,94,,,,94,94',
421
+ ',94,94,,,,94,94,94,94,94,,,94,95,95,94,,95,95,,95,,,,,,,,,,,,,,,,,95',
422
+ '95,,,,,,95,,95,,95,95,,95,95,95,,95,95,,,,,95,95,,,95,,,95,95,,,,,,',
423
+ '95,,,,,,95,,,,95,95,,95,95,,,,95,95,95,95,95,,,95,96,96,95,,96,96,,96',
424
+ ',,,,,,,,,,,,,,,,96,96,,,,,,96,,96,,96,96,,96,96,96,,96,96,,,,,96,96',
425
+ ',,96,,,96,96,,,,,,,96,,,,,,96,,,,96,96,,96,96,,,,96,96,96,96,96,,,96',
426
+ '97,97,96,,97,97,,97,,,,,,,,,,,,,,,,,97,97,,,,,,97,,97,,97,97,,97,97',
427
+ '97,,97,97,,,,,97,97,,,97,,,97,97,,,,,,,97,,,,,,97,,,,97,97,,97,97,,',
428
+ ',97,97,97,97,97,,,97,98,98,97,,98,98,,98,,,,,,,,,,,,,,,,,98,98,,,,,',
429
+ '98,,98,,98,98,,98,98,98,,98,98,,,,,98,98,,,98,,,98,98,,,,,,,98,,,,,',
430
+ '98,,,,98,98,,98,98,,,,98,98,98,98,98,,,98,99,99,98,,99,99,,99,,,,,,',
431
+ ',,,,,,,,,,99,99,,,,,,99,,99,,99,99,,99,99,99,,99,99,,,,,99,99,,,99,',
432
+ ',99,99,,,,,,,99,,,,,,99,,,,99,99,,99,99,,,,99,99,99,99,99,,,99,100,100',
433
+ '99,,100,100,,100,,,,,,,,,,,,,,,,,100,100,,,,,,100,,100,,100,100,,100',
434
+ '100,100,,100,100,,,,,100,100,,,100,,,100,100,,,,,,,100,,,,,,100,,,,100',
435
+ '100,,100,100,,,,100,100,100,100,100,,,100,101,101,100,,101,101,,101',
436
+ ',,,,,,,,,,,,,,,,101,101,,,,,,101,,101,,101,101,,101,101,101,,101,101',
437
+ ',,,,101,101,,,101,,,101,101,,,,,,,101,,,,,,101,,,,101,101,,101,101,',
438
+ ',,101,101,101,101,101,,,101,102,102,101,,102,102,,102,,,,,,,,,,,,,,',
439
+ ',,102,102,,,,,,102,,102,,102,102,,102,102,102,,102,102,,,,,102,102,',
440
+ ',102,,,102,102,,,,,,,102,,,,,,102,,,,102,102,,102,102,,,,102,102,102',
441
+ '102,102,,,102,103,103,102,,103,103,,103,,,,,,,,,,,,,,,,,103,103,,,,',
442
+ ',103,,103,,103,103,,103,103,103,,103,103,,,,,103,103,,,103,,,103,103',
443
+ ',,,,,,103,,,,,,103,,,,103,103,,103,103,,,,103,103,103,103,103,,,103',
444
+ '104,104,103,,104,104,,104,,,,,,,,,,,,,,,,,104,104,,,,,,104,,104,,104',
445
+ '104,,104,104,104,,104,104,,,,,104,104,,,104,,,104,104,,,,,,,104,,,,',
446
+ ',104,,,,104,104,,104,104,,,,104,104,104,104,104,,,104,105,105,104,,105',
447
+ '105,,105,,,,,,,,,,,,,,,,,105,105,,,,,,105,,105,,105,105,,105,105,105',
448
+ ',105,105,,,,,105,105,,,105,,,105,105,,,,,,,105,,,,,,105,,,,105,105,',
449
+ '105,105,,,,105,105,105,105,105,,,105,106,106,105,,106,106,,106,,,,,',
450
+ ',,,,,,,,,,,106,106,,,,,,106,,106,,106,106,,106,106,106,,106,106,,,,',
451
+ '106,106,,,106,,,106,106,,,,,,,106,,,,,,106,,,,106,106,,106,106,,,,106',
452
+ '106,106,106,106,,,106,107,107,106,,107,107,,107,,,,,,,,,,,,,,,,,107',
453
+ '107,,,,,,107,,107,,107,107,,107,107,107,,107,107,,,,,107,107,,,107,',
454
+ ',107,107,,,,,,,107,,,,,,107,,,,107,107,,107,107,,,,107,107,107,107,107',
455
+ ',,107,108,108,107,,108,108,,108,,,,,,,,,,,,,,,,,108,108,,,,,,108,,108',
456
+ ',108,108,,108,108,108,,108,108,,,,,108,108,,,108,,,108,108,,,,,,,108',
457
+ ',,,,,108,,,,108,108,,108,108,,,,108,108,108,108,108,,,108,109,109,108',
458
+ ',109,109,,109,,,,,,,,,,,,,,,,,109,109,,,,,,109,,109,,109,109,,109,109',
459
+ '109,,109,109,,,,,109,109,,,109,,,109,109,,,,,,,109,,,,,,109,,,,109,109',
460
+ ',109,109,,,,109,109,109,109,109,,,109,110,110,109,,110,110,,110,,,,',
461
+ ',,,,,,,,,,,,110,110,,,,,,110,,110,,110,110,,110,110,110,,110,110,,,',
462
+ ',110,110,,,110,,,110,110,,,,,,,110,,,,,,110,,,110,110,110,,110,110,',
463
+ ',,110,110,110,110,110,,,110,111,111,110,,111,111,,111,,,,,,,,,,,,,,',
464
+ ',,111,111,,,,,,111,,111,,111,111,,111,111,111,,111,111,,,,,111,111,',
465
+ ',111,,,111,111,,,,,,,111,,,,,,111,,,,111,111,,111,111,,,,111,111,111',
466
+ '111,111,,,111,115,115,111,,115,115,,115,,,,,,,,,,,,,,,,,115,115,,,,',
467
+ ',115,,115,,115,115,,115,115,115,,115,115,,,,,115,115,,,115,,,115,115',
468
+ ',,,,,,115,,,,,,115,,,,115,115,,115,115,,,,115,115,115,115,115,,,115',
469
+ '116,116,115,,116,116,,116,,,,,,,,,,,,,,,,,116,116,,,,,,116,,116,,116',
470
+ '116,,116,116,116,,116,116,,,,,116,116,,,116,,,116,116,,,,,,,116,,,,',
471
+ ',116,,,,116,116,,116,116,,,,116,116,116,116,116,,,116,119,119,116,,119',
472
+ '119,,119,,,,,,,,,,,,,,,,,119,119,,,,,,119,,119,,119,119,,119,119,119',
473
+ ',119,119,,,,,119,119,,,119,,,119,119,,,,,,,119,,,,,,119,,,,119,119,',
474
+ '119,119,,,,119,119,119,119,119,,,119,146,146,119,,146,146,,146,,,,,',
475
+ ',,,,,,,,,,,146,146,146,,,,,146,,146,,146,146,,146,146,146,,146,146,146',
476
+ '146,,,146,146,,,146,,,146,146,,,,,,,146,,,,,,146,,,,146,146,,146,146',
477
+ ',,,146,146,146,146,146,,,146,154,154,146,,154,154,,154,154,,,,,,,,,',
478
+ ',,,,,,154,154,,,,,,154,,154,,154,154,,154,154,154,,154,154,154,154,',
479
+ ',154,154,,,154,,,154,154,,,,,,,154,,,,,,154,,,,154,154,,154,154,,,,154',
480
+ '154,154,154,154,,,154,189,189,154,,189,189,,189,,,,,,,,,,,,,,,,,189',
481
+ '189,,,,,,189,,189,,189,189,,189,189,189,,189,189,189,189,,,189,189,',
482
+ ',189,,,189,189,,,,,,,189,,,,,,189,,,,189,189,,189,189,,,,189,189,189',
483
+ '189,189,,,189,192,192,189,,192,192,,192,192,,,,,,,,,,,,,,,,192,192,',
484
+ ',,,,192,,192,,192,192,,192,192,192,,192,192,192,192,,,192,192,,,192',
485
+ ',,192,192,,,,,,,192,,,,,,192,,,,192,192,,192,192,,,,192,192,192,192',
486
+ '192,192,192,192,205,205,192,,205,205,,205,,,205,,,,,,,,,,,,,,205,205',
487
+ ',,,,,205,,205,,205,205,,205,205,205,,205,205,,,,,205,205,,,205,,,205',
488
+ '205,,,,,,,205,,,,,,205,,,,205,205,,205,205,,,,205,205,205,205,205,,',
489
+ '205,210,210,205,,210,210,,210,,,,,,,,,,,,,,,,,210,210,,,,,,210,,210',
490
+ ',210,210,,210,210,210,,210,210,,,,,210,210,,,210,,,210,210,,,,,,,210',
491
+ ',,,,,210,,,,210,210,,210,210,,,,210,210,210,210,210,,,210,211,211,210',
492
+ ',211,211,,211,,,,,,,,,,,,,,,,,211,211,,,,,,211,,211,,211,211,,211,211',
493
+ '211,,211,211,,,,,211,211,,,211,,,211,211,,,,,,,211,,,,,,211,,,,211,211',
494
+ ',211,211,,,,211,211,211,211,211,,,211,212,212,211,,212,212,,212,,,,',
495
+ ',,,,,,,,,,,,212,212,,,,,,212,,212,,212,212,,212,212,212,,212,212,,,',
496
+ ',212,212,,,212,,,212,212,,,,,,,212,,,,,,212,,,,212,212,,212,212,,,,212',
497
+ '212,212,212,212,,,212,253,253,212,,253,253,,253,,,,,,,,,,,,,,,,,253',
498
+ '253,,,,,,253,,253,,253,253,,253,253,253,,253,253,,,,,253,253,,,253,',
499
+ ',253,253,,,,,,,253,,,,,,253,,,,253,253,,253,253,,,,253,253,253,253,253',
500
+ ',,253,273,273,253,,273,273,,273,,,,,,,,,,,,,,,,,273,273,,,,,,273,,273',
501
+ ',273,273,,273,273,273,,273,273,273,273,,,273,273,,,273,,,273,273,,,',
502
+ ',,,273,,,,,,273,,,,273,273,,273,273,,,,273,273,273,273,273,,,273,276',
503
+ '276,273,,276,276,,276,,,,,,,,,,,,,,,,,276,276,,,,,,276,,276,,276,276',
504
+ ',276,276,276,,276,276,,,,,276,276,,,276,,,276,276,,,,,,,276,,,,,,276',
505
+ ',,,276,276,,276,276,,,,276,276,276,276,276,,,276,277,277,276,,277,277',
506
+ ',277,,,,,,,,,,,,,,,,,277,277,,,,,,277,,277,,277,277,,277,277,277,,277',
507
+ '277,,,,,277,277,,,277,,,277,277,,,,,,,277,,,,,,277,,,,277,277,,277,277',
508
+ ',,,277,277,277,277,277,,,277,278,278,277,,278,278,,278,,,,,,,,,,,,,',
509
+ ',,,278,278,,,,,,278,,278,,278,278,,278,278,278,,278,278,278,278,,,278',
510
+ '278,,,278,,,278,278,,,,,,,278,,,,,,278,,,,278,278,,278,278,,,,278,278',
511
+ '278,278,278,,,278,296,296,278,,296,296,,296,296,,,,,,,,,,,,,,,,296,296',
512
+ ',,,,,296,,296,,296,296,,296,296,296,,296,296,296,296,,,296,296,,,296',
513
+ ',,296,296,,,,,,,296,,,,,,296,,,,296,296,,296,296,,,,296,296,296,296',
514
+ '296,,,296,297,297,296,,297,297,,297,297,,,,,,,,,,,,,,,,297,297,,,,,',
515
+ '297,,297,,297,297,,297,297,297,,297,297,297,297,,,297,297,,,297,,,297',
516
+ '297,,,,,,,297,,,,,,297,,,,297,297,,297,297,,,,297,297,297,297,297,,',
517
+ '297,298,298,297,,298,298,,298,,,,,,,,,,,,,,,,,298,298,,,,,,298,,298',
518
+ ',298,298,,298,298,298,,298,298,,,,,298,298,,,298,,,298,298,,,,,,,298',
519
+ ',,,,,298,,,,298,298,,298,298,,,,298,298,298,298,298,,,298,309,309,298',
520
+ ',309,309,,309,,,,,,,,,,,,,,,,,309,309,,,,,,309,,309,,309,309,,309,309',
521
+ '309,,309,309,309,309,,,309,309,,,309,,,309,309,,,,,,,309,,,,,,309,,',
522
+ ',309,309,,309,309,,,,309,309,309,309,309,309,309,309,312,312,309,,312',
523
+ '312,,312,312,,,,,,,,,,,,,,,,312,312,,,,,,312,,312,,312,312,,312,312',
524
+ '312,,312,312,312,312,,,312,312,,,312,,,312,312,,,,,,,312,,,,,,312,,',
525
+ ',312,312,,312,312,,,,312,312,312,312,312,312,312,312,313,313,312,,313',
526
+ '313,,313,,,,,,,,,,,,,,,,,313,313,,,,,,313,,313,,313,313,,313,313,313',
527
+ ',313,313,313,313,,,313,313,,,313,,,313,313,,,,,,,313,,,,,,313,,,,313',
528
+ '313,,313,313,,,,313,313,313,313,313,313,313,313,318,318,313,,318,318',
529
+ ',318,,,,,,,,,,,,,,,,,318,318,,,,,,318,,318,,318,318,,318,318,318,,318',
530
+ '318,318,318,,,318,318,,,318,,,318,318,,,,,,,318,,,,,,318,,,,318,318',
531
+ ',318,318,,,,318,318,318,318,318,,,318,333,333,318,,333,333,,333,,,,',
532
+ ',,,,,,,,,,,,333,333,,,,,,333,,333,,333,333,,333,333,333,,333,333,,,',
533
+ ',333,333,,,333,,,333,333,,,,,,,333,,,,,,333,,,,333,333,,333,333,,,,333',
534
+ '333,333,333,333,,,333,334,334,333,,334,334,,334,,,,,,,,,,,,,,,,,334',
535
+ '334,,,,,,334,,334,,334,334,,334,334,334,,334,334,,,,,334,334,,,334,',
536
+ ',334,334,,,,,,,334,,,,,,334,,,,334,334,,334,334,,,,334,334,334,334,334',
537
+ ',,334,335,335,334,,335,335,,335,,,,,,,,,,,,,,,,,335,335,,,,,,335,,335',
538
+ ',335,335,,335,335,335,,335,335,,,,,335,335,,,335,,,335,335,,,,,,,335',
539
+ ',,,,,335,,,,335,335,,335,335,,,,335,335,335,335,335,,,335,336,336,335',
540
+ ',336,336,,336,,,,,,,,,,,,,,,,,336,336,,,,,,336,,336,,336,336,,336,336',
541
+ '336,,336,336,,,,,336,336,,,336,,,336,336,,,,,,,336,,,,,,336,,,,336,336',
542
+ ',336,336,,,,336,336,336,336,336,,,336,340,340,336,,340,340,,340,,,,',
543
+ ',,,,,,,,,,,,340,340,,,,,,340,,340,,340,340,,340,340,340,,340,340,,,',
544
+ ',340,340,,,340,,,340,340,,,,,,,340,,,,,,340,,,,340,340,,340,340,,,,340',
545
+ '340,340,340,340,,,340,361,361,340,,361,361,,361,,,,,,,,,,,,,,,,,361',
546
+ '361,,,,,,361,,361,,361,361,,361,361,361,,361,361,,,,,361,361,,,361,',
547
+ ',361,361,,,,,,,361,,,,,,361,,,,361,361,,361,361,,,,361,361,361,361,361',
548
+ ',,361,378,378,361,,378,378,,378,378,,,,,,,,,,,,,,,,378,378,,,,,,378',
549
+ ',378,,378,378,,378,378,378,,378,378,378,378,,,378,378,,,378,,,378,378',
550
+ ',,,,,,378,,,,,,378,,,,378,378,,378,378,,,,378,378,378,378,378,,,378',
551
+ '382,382,378,,382,382,,382,,,,,,,,,,,,,,,,,382,382,,,,,,382,,382,,382',
552
+ '382,,382,382,382,,382,382,,,,,382,382,,,382,,,382,382,,,,,,,382,,,,',
553
+ ',382,,,,382,382,,382,382,,,,382,382,382,382,382,,,382,385,385,382,,385',
554
+ '385,,385,,,,,,,,,,,,,,,,,385,385,,,,,,385,,385,,385,385,,385,385,385',
555
+ ',385,385,385,385,,,385,385,,,385,,,385,385,,,,,,,385,,,,,,385,,,,385',
556
+ '385,,385,385,,,,385,385,385,385,385,,,385,392,392,385,,392,392,,392',
557
+ '392,,,,,,,,,,,,,,,,392,392,,,,,,392,,392,,392,392,,392,392,392,,392',
558
+ '392,,,,,392,392,,,392,,,392,392,,,,,,,392,,,,,,392,,,,392,392,,392,392',
559
+ ',,,392,392,392,392,392,,,392,394,394,392,,394,394,,394,,,,,,,,,,,,,',
560
+ ',,,394,394,,,,,,394,,394,,394,394,,394,394,394,,394,394,394,394,,,394',
561
+ '394,,,394,,,394,394,,,,,,,394,,,,,,394,,,,394,394,,394,394,,,,394,394',
562
+ '394,394,394,,,394,395,395,394,,395,395,,395,,,,,,,,,,,,,,,,,395,395',
563
+ ',,,,,395,,395,,395,395,,395,395,395,,395,395,395,395,,,395,395,,,395',
564
+ ',,395,395,,,,,,,395,,,,,,395,,,,395,395,,395,395,,,,395,395,395,395',
565
+ '395,,,395,421,421,395,,421,421,,421,,,,,,,,,,,,,,,,,421,421,,,,,,421',
566
+ ',421,,421,421,,421,421,421,,421,421,,,,,421,421,,,421,,,421,421,,,,',
567
+ ',,421,,,,,,421,,,,421,421,,421,421,,,,421,421,421,421,421,,,421,428',
568
+ '428,421,,428,428,,428,,,,,,,,,,,,,,,,,428,428,,,,,,428,,428,,428,428',
569
+ ',428,428,428,,428,428,428,428,,,428,428,,,428,,,428,428,,,,,,,428,,',
570
+ ',,,428,,,,428,428,,428,428,,,,428,428,428,428,428,,,428,436,436,428',
571
+ ',436,436,,436,,,,,,,,,,,,,,,,,436,436,,,,,,436,,436,,436,436,,436,436',
572
+ '436,,436,436,,,,,436,436,,,436,,,436,436,,,,,,,436,,,,,,436,,,,436,436',
573
+ ',436,436,,,,436,436,436,436,436,,,436,439,439,436,,439,439,,439,,,,',
574
+ ',,,,,,,,,,,,439,439,,,,,,439,,439,,439,439,,439,439,439,,439,439,439',
575
+ '439,,,439,439,,,439,,,439,439,,,,,,,439,,,,,,439,,,,439,439,,439,439',
576
+ ',,,439,439,439,439,439,,,439,442,442,439,,442,442,,442,,,,,,,,,,,,,',
577
+ ',,,442,442,,,,,,442,,442,,442,442,,442,442,442,,442,442,,,,,442,442',
578
+ ',,442,,,442,442,,,,,,,442,,,,,,442,,,,442,442,,442,442,,,,442,442,442',
579
+ '442,442,,,442,448,448,442,,448,448,,448,,,,,,,,,,,,,,,,,448,448,,,,',
580
+ ',448,,448,,448,448,,448,448,448,,448,448,,,,,448,448,,,448,,,448,448',
581
+ ',,,,,,448,,,,,,448,,,,448,448,,448,448,,,,448,448,448,448,448,,,448',
582
+ '461,461,448,,461,461,,461,461,,,,,,,,,,,,,,,,461,461,,,,,,461,,461,',
583
+ '461,461,,461,461,461,,461,461,461,461,,,461,461,,,461,,,461,461,,,,',
584
+ ',,461,,,,,,461,,,,461,461,,461,461,,,,461,461,461,461,461,,,461,463',
585
+ '463,461,,463,463,,463,,,,,,,,,,,,,,,,,463,463,,,,,,463,,463,,463,463',
586
+ ',463,463,463,,463,463,463,463,,,463,463,,,463,,,463,463,,,,,,,463,,',
587
+ ',,,463,,,,463,463,,463,463,,,,463,463,463,463,463,,,463,481,481,463',
588
+ ',481,481,,481,481,,,,,,,,,,,,,,,,481,481,,,,,,481,,481,,481,481,,481',
589
+ '481,481,,481,481,481,481,,,481,481,,,481,,,481,481,,,,,,,481,,,,,,481',
590
+ ',,,481,481,,481,481,,,,481,481,481,481,481,,,481,483,483,481,,483,483',
591
+ ',483,483,,,,,,,,,,,,,,,,483,483,,,,,,483,,483,,483,483,,483,483,483',
592
+ ',483,483,483,483,,,483,483,,,483,,,483,483,,,,,,,483,,,,,,483,,,,483',
593
+ '483,,483,483,,,,483,483,483,483,483,,,483,484,484,483,,484,484,,484',
594
+ ',,,,,,,,,,,,,,,,484,484,,,,,,484,,484,,484,484,,484,484,484,,484,484',
595
+ '484,484,,,484,484,,,484,,,484,484,,,,,,,484,,,,,,484,,,,484,484,,484',
596
+ '484,,,,484,484,484,484,484,,,484,492,492,484,,492,492,,492,,,,,,,,,',
597
+ ',,,,,,,492,492,,,,,,492,,492,,492,492,,492,492,492,,492,492,,,,,492',
598
+ '492,,,492,,,492,492,,,,,,,492,,,,,,492,,,,492,492,,492,492,,,9,492,492',
599
+ '492,492,492,,,492,,,492,9,9,9,,9,,9,,9,,9,9,9,9,,,,,,,,,,,,,,,,9,,,',
600
+ '9,9,,,9,9,9,9,9,9,,9,9,147,,147,,,9,,,,,,,147,147,147,,147,,147,,147',
601
+ ',147,147,147,147,,,,,9,,,,,,,,,,,147,,,,147,147,,,147,147,147,147,147',
602
+ '147,,147,147,149,,149,,,147,,,,,,,149,149,149,,149,,149,,149,,149,149',
603
+ '149,149,,,,,147,,,,,,,,,,,149,,,,149,149,,,149,149,149,149,149,149,',
604
+ '149,149,150,,150,,,149,,,,,,,150,150,150,,150,,150,,150,,150,150,150',
605
+ '150,,,,,149,,,,,,,,,,,150,,,,150,150,,191,150,150,150,150,150,150,,150',
606
+ '150,,,191,191,191,150,191,,191,,191,,191,191,191,191,,,,,,,,,,,,,,,150',
607
+ '191,,,,191,191,,,191,191,191,191,191,191,,191,191,,,,,,191,,,,203,,',
608
+ ',,,,191,191,,,,203,203,203,203,203,240,203,,203,191,203,203,203,203',
609
+ ',,,,,240,,240,,240,,240,,,,203,,,,203,203,,,203,203,203,203,203,203',
610
+ ',203,203,240,,,241,,203,,,240,240,240,240,,,,240,240,241,,241,242,241',
611
+ '240,241,,,,,,,203,,,,242,,242,,242,,242,,,,241,,,240,,,,,241,241,241',
612
+ '241,,,,241,241,242,,,243,,241,,,242,242,242,242,242,242,,242,242,243',
613
+ ',243,244,243,242,243,,,,,,,241,,,244,244,,244,,244,,244,,244,,243,,',
614
+ '242,,,,,243,243,243,243,243,243,,243,243,244,,,,,243,,245,244,244,244',
615
+ '244,244,244,,244,244,,,,245,245,244,245,246,245,,245,,245,243,,,,,,',
616
+ '246,246,,246,,246,,246,,246,244,245,,,,,,,,245,245,245,245,245,245,',
617
+ '245,245,246,,,,,245,,247,246,246,246,246,246,246,,246,246,,,,247,247',
618
+ '246,247,,247,,247,,247,245,,,,,,,,,,,,,,,,,246,247,,,,,248,,,247,247',
619
+ '247,247,247,247,,247,247,248,248,248,,248,247,248,,248,,248,248,248',
620
+ '248,,,,,,,,,,,,,,,,248,247,,,,249,,,248,248,248,248,248,248,,248,248',
621
+ '249,249,249,,249,248,249,,249,,249,249,249,249,,,,,,,,,,,,,,,,249,248',
622
+ ',,,249,,,249,249,249,249,249,249,250,249,249,,,250,,,249,,,,250,250',
623
+ '250,,250,,250,,250,,250,250,250,250,,,,,,,,249,,,,,,,,250,,,,250,250',
624
+ ',254,250,250,250,250,250,250,,250,250,,,254,254,254,250,254,,254,,254',
625
+ ',254,254,254,254,,,,,,,,,,,,,,,250,254,,,,254,254,,259,254,254,254,254',
626
+ '254,254,,254,254,,,259,259,259,254,259,,259,,259,,259,259,259,259,,',
627
+ ',,,,,,,,,,,,254,259,,,,259,259,,,259,259,259,259,259,259,264,259,259',
628
+ ',,,,,259,,,,264,264,264,264,264,,264,,264,,264,264,264,264,,,,,,,,259',
629
+ ',,,,,,,264,,,,264,264,,374,264,264,264,264,264,264,,264,264,,,374,374',
630
+ '374,264,374,,374,,374,,374,374,374,374,,,,,,,,,,,,,,,264,374,,,,374',
631
+ '374,,416,374,374,374,374,374,374,,374,374,,,416,416,416,374,416,,416',
632
+ ',416,,416,416,416,416,,,,,,,,,,,,,,,374,416,,,,416,416,,417,416,416',
633
+ '416,416,416,416,,416,416,,,417,417,417,416,417,,417,,417,,417,417,417',
634
+ '417,,,,,,,,,,,,,,,416,417,,,,417,417,,418,417,417,417,417,417,417,,417',
635
+ '417,,,418,418,418,417,418,,418,,418,,418,418,418,418,,,,,,,,,,,,,,,417',
636
+ '418,,,,418,418,,419,418,418,418,418,418,418,,418,418,,,419,419,419,418',
637
+ '419,,419,,419,,419,419,419,419,,,,,,,,,,,,,,,418,419,,,,419,419,,423',
638
+ '419,419,419,419,419,419,,419,419,,,423,423,423,419,423,,423,,423,,423',
639
+ '423,423,423,,,,,,,,,,,,,,,419,423,,,,423,423,,445,423,423,423,423,423',
640
+ '423,,423,423,,,445,445,445,423,445,,445,,445,,445,445,445,445,,,,,,',
641
+ ',,,,,,,,423,445,,,,445,445,,,445,445,445,445,445,445,,445,445,,258,258',
642
+ '258,258,445,258,258,258,,258,,258,258,,,,,,,258,258,258,,,,258,,,,445',
643
+ ',,,,,,,258,258,,,,,,,,,,,,258,258,258,258,258,258,258,258,330,330,330',
644
+ '330,,330,330,330,,330,,330,330,,,,,,,330,330,330,,,,330,,,,,,,,,,,,330',
645
+ '330,,,,,,,,,,,,330,330,330,330,330,330,330,330,332,332,332,332,,332',
646
+ '332,332,,332,,332,332,,,,,,,332,332,332,,,,332,,,,,,,,,,,,332,332,,',
647
+ ',,,,,,,,,332,332,332,332,332,332,332,332,362,362,362,362,,362,362,362',
648
+ ',362,,362,362,,,,,,,362,362,362,,,,362,,,,,,,,,,,,362,362,,,,,,,,,,',
649
+ ',362,362,362,362,362,362,362,362,370,370,370,370,,370,370,370,,370,',
650
+ '370,370,,,,,,,370,370,370,,,,370,,,,,,,,,,,,370,370,,,,,,,,,,,,370,370',
651
+ '370,370,370,370,370,370,396,396,396,396,,396,396,396,,396,,396,396,',
652
+ ',,,,,396,396,396,,,,396,,,,,,,,,,,,396,396,,,,,,,,,,,,396,396,396,396',
653
+ '396,396,396,396' ]
654
+ racc_action_check = arr = ::Array.new(10028, nil)
491
655
  idx = 0
492
656
  clist.each do |str|
493
657
  str.split(',', -1).each do |i|
@@ -497,449 +661,529 @@ clist = [
497
661
  end
498
662
 
499
663
  racc_action_pointer = [
500
- -2, 330, nil, nil, 118, 314, nil, 173, 316, 5605,
501
- 466, 526, 82, nil, nil, 646, 706, 766, 826, nil,
664
+ -2, 6, nil, nil, 87, 7, nil, -8, 28, 8439,
665
+ 176, 265, 12, nil, nil, nil, 10, 354, 443, 532,
666
+ 621, 710, nil, nil, nil, nil, nil, nil, nil, nil,
502
667
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
668
+ nil, nil, nil, nil, nil, nil, nil, 148, 799, 96,
669
+ -25, 24, 888, 977, 1066, 62, 193, 168, 62, 503,
670
+ 244, 189, 207, 229, nil, nil, nil, 1155, 1244, 1333,
671
+ nil, nil, nil, 1422, nil, 62, 71, nil, 1511, nil,
672
+ 147, 1600, 141, 1689, 1778, 1867, 1956, 2045, 2134, 2223,
673
+ 2312, 2401, 2490, 2579, 2668, 2757, 2846, 2935, 3024, 3113,
674
+ 3202, 3291, 3380, 3469, 3558, 3647, 3736, 3825, 3914, 4003,
675
+ 4092, 4181, nil, -27, 147, 4270, 4359, 151, 160, 4448,
676
+ 299, nil, nil, nil, nil, nil, nil, 247, nil, nil,
677
+ 539, 282, 628, 662, 147, 156, nil, 173, 116, nil,
678
+ 183, 185, 2, nil, 143, 68, 4537, 8497, nil, 8555,
679
+ 8613, 319, 340, 333, 4626, 193, nil, 191, nil, nil,
680
+ nil, nil, nil, nil, nil, nil, 358, 169, 336, 219,
681
+ 371, 219, nil, nil, nil, nil, nil, nil, 226, nil,
682
+ 6, nil, nil, 233, nil, 402, nil, nil, 273, 4715,
683
+ 157, 8661, 4804, nil, 245, nil, nil, nil, nil, 255,
684
+ 261, 264, 274, 8728, 277, 4893, 10, 11, -9, 198,
685
+ 4982, 5071, 5160, nil, nil, 15, 422, 425, 155, 284,
686
+ 859, 460, 17, 55, nil, nil, nil, nil, nil, nil,
687
+ nil, nil, 717, 5, 94, 306, 395, 128, 217, 573,
688
+ 8745, 8789, 8806, 8850, 8867, 8915, 8932, 8980, 9026, 9072,
689
+ 9127, nil, nil, 5249, 9175, 286, nil, nil, 9647, 9223,
690
+ 252, nil, 280, 265, 9278, nil, 275, nil, 58, 131,
691
+ 312, nil, nil, 5338, 300, nil, 5427, 5516, 5605, 284,
692
+ 328, 297, nil, nil, 340, nil, nil, nil, nil, nil,
693
+ 343, 325, -24, nil, -11, nil, 5694, 5783, 5872, 359,
694
+ 363, 370, 372, nil, 349, 948, 61, 329, 385, 5961,
695
+ 389, nil, 6050, 6139, nil, nil, nil, nil, 6228, nil,
696
+ nil, nil, nil, 387, nil, nil, nil, nil, 391, 400,
697
+ 9705, 407, 9763, 6317, 6406, 6495, 6584, 410, nil, 418,
698
+ 6673, 421, nil, 423, nil, nil, nil, nil, nil, nil,
503
699
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
504
- 253, 291, 1054, 1114, 1174, 9, 935, nil, nil, nil,
505
- nil, nil, 1378, 1438, 1522, nil, nil, nil, nil, nil,
506
- 1582, nil, 221, 215, nil, 1762, nil, nil, 6, 1882,
507
- 266, 2002, 2062, 2122, 2182, 2242, 2302, 2362, 2422, 2482,
508
- 2566, 2626, 2686, 2746, 2806, 2866, 2926, 2986, 3046, 3106,
509
- 3166, 3226, 3286, 3346, 3406, 3466, 3526, 3586, 3646, 3706,
510
- 3766, 235, 266, 3946, 4006, 265, 264, 4186, 232, nil,
511
- nil, nil, nil, nil, 1526, 68, 2564, 998, 222, nil,
512
- 236, 210, 4774, 5558, nil, 5501, 5444, 218, 207, nil,
513
- 195, nil, nil, nil, nil, nil, nil, nil, 200, nil,
514
- 192, nil, 83, nil, nil, 185, nil, 174, nil, nil,
515
- 170, 4834, 221, 5652, 4510, nil, 132, nil, nil, nil,
516
- nil, 121, 107, 101, 94, 5957, 57, 4126, -1, 75,
517
- 2, 4066, 3886, 3826, nil, nil, 5, 128, 63, 287,
518
- 24, 9, -9, -2, nil, nil, nil, nil, nil, nil,
519
- 5699, 105, 1262, 2, 350, 5793, 6429, 6121, 5937, 5575,
520
- 6051, 6474, 6406, 6361, 6338, 5342, 6096, 6076, 5912, 5865,
521
- 5818, nil, nil, 1318, 27, 213, nil, 6699, 5746, 9,
522
- nil, 174, 169, 5387, nil, 192, nil, 264, nil, nil,
523
- 4714, nil, 282, nil, nil, nil, nil, nil, 271, 215,
524
- -28, 236, -11, nil, 5302, 262, 406, 144, 110, 5418,
525
- -8, 586, 4, 11, nil, 1258, 1702, nil, nil, nil,
526
- nil, 4246, nil, nil, nil, nil, 66, nil, nil, nil,
527
- nil, 73, 79, 6537, 96, 6591, 4306, 4366, 4426, nil,
528
- 4894, 4954, 143, nil, 139, nil, 157, nil, 171, nil,
529
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
530
- nil, nil, nil, 176, 4570, 6645, 190, nil, 188, nil,
531
- 194, 198, nil, 138, 90, 5218, nil, nil, 5158, 5098,
532
- nil, 216, 116, 223, 203, 0, 5038, nil, 4630, 238,
533
- nil, 5746, nil, nil, nil, nil, nil, nil, nil, nil,
534
- nil, 179, 57, 241, nil, nil, 6004, 6497, 6197, 6244,
535
- 6291, 267, 1942, 209, 272, nil, nil, 270, 1822, nil,
536
- nil, nil, 258, nil, nil, nil, 6150, 18, -15, nil,
537
- 1642, 295, 276, nil, 301, 305, nil, nil, 306, nil,
538
- nil, 994, nil, nil, nil, 310, 280, nil, nil, nil,
539
- nil, nil, 313, nil, nil, nil, nil, 910, nil, 346,
540
- 178, nil, 319, nil, nil, 58, nil, 323, nil, 324,
541
- nil, 325, nil, nil, nil, 296, nil, nil, nil, nil ]
700
+ 426, 6762, 9821, 433, nil, 505, nil, 435, nil, 438,
701
+ 9879, nil, 383, 79, 9326, 446, 448, nil, 6851, 454,
702
+ 396, 150, 6940, nil, nil, 7029, nil, 461, 75, 463,
703
+ 440, 84, 7118, nil, 7207, 7296, 9937, nil, 468, nil,
704
+ 1037, nil, nil, 470, nil, nil, nil, nil, nil, nil,
705
+ nil, 410, 333, 473, nil, nil, 9374, 9422, 9470, 9518,
706
+ 479, 7385, nil, 9566, 481, nil, nil, 479, 7474, nil,
707
+ nil, nil, 467, 468, 486, nil, 7563, nil, nil, 7652,
708
+ 493, nil, 7741, nil, nil, 9614, 114, nil, 7830, 495,
709
+ 478, nil, 504, 506, nil, nil, 506, nil, nil, 507,
710
+ 507, 7919, nil, 8008, nil, nil, 513, 481, nil, nil,
711
+ nil, nil, 515, nil, nil, 521, 522, nil, 94, nil,
712
+ nil, 8097, nil, 8186, 8275, nil, nil, 527, 530, nil,
713
+ 532, nil, 8364, nil, nil, nil, nil, 534, nil, 539,
714
+ nil, 541, nil, nil, nil, nil, nil, 509, nil, nil,
715
+ nil, nil ]
542
716
 
543
717
  racc_action_default = [
544
- -3, -243, -1, -2, -4, -5, -8, -10, -16, -21,
545
- -243, -243, -243, -33, -34, -243, -243, -243, -243, -61,
546
- -62, -63, -64, -65, -66, -67, -68, -69, -70, -71,
718
+ -3, -283, -1, -2, -4, -5, -8, -10, -16, -21,
719
+ -283, -283, -182, -33, -34, -35, -36, -283, -283, -283,
720
+ -283, -283, -64, -65, -66, -67, -68, -69, -70, -71,
547
721
  -72, -73, -74, -75, -76, -77, -78, -79, -80, -81,
548
- -86, -90, -243, -243, -243, -243, -243, -176, -177, -178,
549
- -179, -180, -243, -243, -243, -191, -192, -193, -194, -195,
550
- -243, -197, -243, -210, -213, -243, -218, -219, -243, -243,
551
- -7, -243, -243, -243, -243, -243, -243, -243, -243, -126,
552
- -243, -243, -243, -243, -243, -243, -243, -243, -243, -243,
553
- -243, -243, -243, -243, -243, -243, -243, -243, -243, -243,
554
- -243, -243, -121, -242, -242, -22, -23, -243, -242, -136,
555
- -157, -158, -159, -160, -46, -243, -47, -54, -243, -87,
556
- -243, -243, -243, -243, -97, -243, -243, -242, -220, -145,
557
- -147, -148, -149, -150, -151, -153, -154, -14, -220, -182,
558
- -220, -184, -243, -187, -188, -243, -196, -243, -201, -204,
559
- -243, -208, -243, -243, -243, 420, -6, -9, -11, -12,
560
- -13, -17, -18, -19, -20, -243, -220, -243, -79, -80,
561
- -81, -231, -237, -225, -127, -130, -243, -228, -226, -234,
562
- -177, -178, -179, -180, -224, -229, -230, -232, -233, -235,
563
- -59, -243, -36, -37, -38, -39, -40, -41, -42, -43,
564
- -44, -45, -48, -49, -50, -51, -52, -53, -55, -56,
565
- -243, -57, -115, -243, -220, -83, -91, -126, -125, -243,
566
- -124, -243, -222, -243, -28, -242, -161, -243, -58, -92,
567
- -243, -95, -220, -164, -166, -167, -168, -169, -171, -243,
568
- -243, -174, -243, -89, -243, -243, -243, -243, -242, -221,
569
- -243, -221, -243, -243, -185, -243, -243, -198, -199, -200,
570
- -202, -243, -205, -206, -207, -209, -220, -211, -214, -216,
571
- -217, -8, -243, -126, -243, -221, -243, -243, -243, -35,
572
- -243, -243, -220, -117, -243, -85, -220, -129, -243, -225,
573
- -226, -227, -228, -231, -234, -236, -237, -238, -239, -240,
574
- -241, -122, -123, -243, -223, -126, -243, -139, -243, -162,
575
- -220, -243, -94, -243, -221, -243, -172, -173, -243, -243,
576
- -88, -243, -100, -243, -106, -243, -243, -110, -242, -243,
577
- -155, -243, -146, -152, -15, -181, -183, -186, -189, -190,
578
- -203, -243, -243, -220, -26, -128, -133, -131, -132, -60,
579
- -119, -243, -221, -82, -243, -25, -29, -220, -242, -140,
580
- -141, -142, -243, -93, -96, -165, -170, -243, -100, -99,
581
- -243, -243, -106, -105, -243, -243, -109, -111, -243, -137,
582
- -138, -243, -156, -212, -215, -243, -30, -116, -118, -84,
583
- -120, -27, -243, -163, -175, -98, -101, -243, -104, -243,
584
- -242, -134, -243, -144, -24, -31, -135, -243, -103, -243,
585
- -108, -243, -113, -114, -143, -222, -102, -107, -112, -32 ]
722
+ -82, -83, -84, -85, -86, -87, -88, -89, -283, -283,
723
+ -96, -100, -283, -283, -283, -283, -283, -283, -283, -283,
724
+ -283, -231, -254, -230, -204, -205, -206, -283, -283, -283,
725
+ -227, -228, -229, -283, -233, -283, -246, -249, -283, -255,
726
+ -283, -283, -7, -283, -283, -283, -283, -283, -283, -283,
727
+ -283, -137, -283, -283, -283, -283, -283, -283, -283, -283,
728
+ -283, -283, -283, -283, -283, -283, -283, -283, -283, -283,
729
+ -283, -283, -94, -283, -132, -282, -282, -22, -23, -283,
730
+ -282, -152, -179, -180, -181, -182, -183, -283, -149, -150,
731
+ -47, -182, -48, -55, -283, -283, -14, -256, -91, -95,
732
+ -199, -283, -254, -97, -282, -283, -283, -283, -108, -283,
733
+ -283, -282, -282, -283, -283, -256, -163, -165, -166, -167,
734
+ -168, -169, -171, -172, -230, -231, -282, -221, -223, -226,
735
+ -222, -256, -208, -217, -218, -219, -224, -225, -256, -210,
736
+ -283, -213, -214, -283, -232, -283, -237, -240, -283, -244,
737
+ -283, -283, -283, 512, -6, -9, -11, -12, -13, -17,
738
+ -18, -19, -20, -283, -256, -283, -87, -88, -89, -274,
739
+ -267, -273, -261, -138, -141, -283, -264, -278, -182, -281,
740
+ -270, -276, -205, -206, -260, -265, -266, -268, -269, -271,
741
+ -279, -280, -37, -38, -39, -40, -41, -42, -43, -44,
742
+ -45, -46, -49, -50, -51, -52, -53, -54, -56, -57,
743
+ -283, -58, -126, -283, -62, -256, -101, -102, -137, -136,
744
+ -283, -135, -283, -258, -283, -28, -282, -184, -283, -283,
745
+ -283, -59, -60, -257, -283, -93, -283, -283, -244, -283,
746
+ -283, -283, -178, -106, -256, -189, -191, -192, -193, -194,
747
+ -196, -283, -283, -254, -283, -99, -283, -283, -283, -283,
748
+ -283, -283, -283, -160, -282, -257, -283, -282, -283, -257,
749
+ -283, -211, -283, -283, -234, -235, -236, -238, -283, -241,
750
+ -242, -243, -245, -256, -247, -250, -252, -253, -8, -283,
751
+ -137, -283, -257, -283, -283, -283, -283, -256, -128, -283,
752
+ -257, -256, -140, -283, -261, -262, -263, -264, -267, -270,
753
+ -272, -273, -274, -275, -276, -277, -278, -281, -133, -134,
754
+ -283, -259, -137, -283, -155, -283, -185, -256, -186, -256,
755
+ -137, -15, -90, -283, -201, -283, -283, -103, -283, -176,
756
+ -283, -257, -283, -197, -198, -283, -98, -283, -111, -283,
757
+ -117, -283, -283, -121, -282, -282, -137, -159, -283, -173,
758
+ -283, -164, -170, -283, -207, -220, -209, -212, -215, -216,
759
+ -239, -283, -283, -256, -26, -139, -144, -142, -143, -130,
760
+ -283, -257, -61, -63, -283, -25, -29, -256, -282, -156,
761
+ -157, -158, -283, -283, -256, -92, -283, -200, -202, -244,
762
+ -283, -105, -283, -107, -190, -195, -111, -110, -283, -283,
763
+ -117, -116, -283, -283, -120, -122, -283, -153, -154, -283,
764
+ -256, -283, -174, -282, -248, -251, -283, -30, -127, -129,
765
+ -131, -27, -283, -187, -188, -283, -283, -104, -283, -109,
766
+ -112, -283, -115, -283, -282, -145, -146, -283, -283, -162,
767
+ -283, -24, -31, -151, -148, -203, -177, -283, -114, -283,
768
+ -119, -283, -124, -125, -147, -161, -175, -258, -113, -118,
769
+ -123, -32 ]
586
770
 
587
771
  racc_goto_table = [
588
- 2, 114, 116, 117, 119, 118, 226, 222, 127, 131,
589
- 133, 191, 212, 146, 166, 268, 303, 332, 241, 232,
590
- 327, 70, 378, 411, 248, 226, 225, 326, 123, 125,
591
- 126, 219, 221, 282, 252, 396, 253, 105, 106, 137,
592
- 137, 145, 369, 138, 140, 247, 373, 148, 345, 241,
593
- 266, 153, 392, 229, 211, 356, 306, 359, 157, 158,
594
- 159, 160, 274, 329, 385, 165, 190, 192, 193, 194,
595
- 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
596
- 205, 206, 207, 208, 209, 210, 156, 137, 395, 218,
597
- 218, 214, 333, 223, 398, 365, 317, 316, 338, 382,
598
- 377, 262, 161, 162, 163, 164, 263, 3, 260, 137,
599
- 284, 261, 259, 242, 149, 151, 264, 1, nil, nil,
600
- nil, nil, nil, 307, 241, 310, 283, nil, 313, nil,
601
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
602
- 127, 271, 131, 133, nil, nil, 330, nil, nil, nil,
603
- nil, 265, 286, 116, 272, nil, nil, 123, 125, 126,
604
- nil, nil, 341, nil, nil, nil, nil, nil, nil, nil,
605
- nil, nil, nil, nil, nil, nil, nil, nil, 351, 285,
606
- nil, nil, 354, nil, nil, nil, nil, nil, nil, nil,
607
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 210,
608
- nil, nil, nil, nil, 384, nil, 362, nil, 343, 419,
609
- nil, 241, 131, 133, 340, nil, nil, nil, nil, nil,
610
- nil, nil, nil, nil, nil, nil, 380, nil, nil, nil,
611
- 311, nil, 190, nil, nil, nil, nil, nil, 334, 386,
612
- 357, nil, 145, 339, 321, 323, nil, nil, 148, 367,
613
- nil, nil, nil, 391, nil, nil, 380, nil, nil, nil,
614
- nil, nil, 346, 347, 348, 388, 349, 350, nil, nil,
615
- nil, 360, nil, nil, nil, nil, nil, nil, nil, nil,
616
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
617
- 223, nil, nil, nil, 131, 133, nil, nil, 412, nil,
618
- nil, 366, nil, nil, 190, 415, 334, nil, nil, nil,
619
- nil, nil, 190, nil, nil, nil, nil, 389, nil, nil,
620
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
621
- nil, nil, nil, nil, nil, nil, nil, nil, 210, nil,
772
+ 2, 263, 130, 132, 133, 252, 134, 135, 121, 160,
773
+ 158, 261, 261, 321, 255, 140, 325, 143, 175, 175,
774
+ 184, 280, 360, 141, 137, 401, 82, 393, 284, 266,
775
+ 117, 118, 204, 127, 136, 260, 262, 147, 149, 150,
776
+ 282, 171, 178, 1, 3, 466, 426, 251, 377, 480,
777
+ 392, 151, 152, 173, 173, 173, 166, 451, 447, 186,
778
+ 299, 300, 501, 191, 337, 456, 459, 415, 363, 195,
779
+ 196, 197, 198, 323, 153, 307, 203, 232, 233, 234,
780
+ 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
781
+ 245, 246, 247, 248, 249, 250, 254, 429, 398, 472,
782
+ 259, 259, 375, 194, 264, 275, 274, 199, 200, 201,
783
+ 202, 140, 402, 444, 384, 383, 479, 482, 408, 319,
784
+ 462, 455, 294, 270, 304, 320, 317, 121, 318, 316,
785
+ 187, 189, 136, 140, 490, nil, nil, nil, nil, nil,
786
+ 308, 141, nil, nil, nil, nil, nil, 310, 338, 301,
787
+ nil, 367, 369, nil, 302, nil, 140, nil, nil, nil,
788
+ nil, nil, 364, nil, 152, nil, 166, nil, nil, nil,
789
+ 160, 158, nil, 331, nil, 140, nil, nil, 328, 373,
790
+ nil, nil, nil, 141, 403, nil, nil, nil, nil, 322,
791
+ 132, nil, 329, nil, nil, 147, 149, 150, nil, 341,
792
+ 399, nil, nil, 282, nil, nil, nil, nil, nil, nil,
793
+ nil, nil, 151, 152, 121, nil, nil, 166, nil, nil,
794
+ nil, nil, nil, nil, 339, nil, nil, nil, nil, nil,
795
+ nil, nil, nil, nil, 140, 140, nil, 465, 250, nil,
796
+ nil, nil, nil, nil, nil, nil, nil, 379, nil, nil,
797
+ nil, nil, nil, 380, nil, 160, 158, nil, nil, 371,
798
+ 405, 254, 374, 476, 409, 410, 511, nil, nil, nil,
799
+ nil, 413, nil, nil, nil, nil, nil, nil, 322, nil,
800
+ nil, nil, nil, 254, nil, nil, nil, nil, nil, nil,
801
+ 458, 458, 411, nil, nil, 173, 387, 389, 173, 173,
802
+ nil, nil, nil, 427, 186, nil, 420, nil, nil, nil,
803
+ 424, 434, nil, nil, nil, nil, 469, nil, 416, 417,
804
+ 418, 419, nil, nil, 458, 423, nil, nil, nil, nil,
805
+ nil, nil, nil, nil, nil, nil, 432, 460, 433, 435,
806
+ nil, nil, nil, nil, nil, 478, 264, 140, nil, nil,
807
+ 160, 158, nil, nil, nil, nil, nil, nil, nil, 458,
808
+ nil, 430, nil, nil, nil, nil, nil, 445, nil, nil,
809
+ nil, 371, nil, nil, 507, nil, nil, 254, 440, nil,
810
+ 502, nil, 467, nil, nil, nil, nil, nil, nil, nil,
811
+ nil, nil, nil, nil, nil, nil, 471, nil, nil, nil,
812
+ nil, nil, nil, 475, nil, nil, 250, nil, nil, nil,
622
813
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
623
- nil, nil, nil, nil, nil, nil, 123, nil, nil, nil,
814
+ nil, 423, nil, nil, nil, nil, nil, 254, nil, 487,
815
+ nil, nil, nil, 147, nil, nil, nil, nil, nil, 322,
624
816
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
625
817
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
626
- nil, 402, nil, nil, nil, nil, nil, nil, nil, nil,
627
- nil, 223, nil, nil, nil, nil, nil, 407, nil, 409,
628
- 413 ]
818
+ nil, 488, nil, nil, nil, nil, nil, nil, nil, nil,
819
+ nil, nil, nil, nil, nil, nil, nil, 264, nil, nil,
820
+ nil, 497, nil, 499, 503 ]
629
821
 
630
822
  racc_goto_check = [
631
- 2, 10, 10, 10, 37, 6, 49, 13, 57, 35,
632
- 34, 19, 50, 80, 11, 88, 14, 65, 36, 42,
633
- 47, 5, 59, 48, 15, 49, 58, 46, 10, 10,
634
- 10, 53, 53, 51, 15, 43, 15, 9, 9, 6,
635
- 6, 6, 44, 8, 8, 58, 45, 6, 54, 36,
636
- 42, 10, 59, 41, 20, 16, 61, 62, 6, 6,
637
- 6, 6, 15, 64, 12, 10, 10, 10, 10, 10,
823
+ 2, 13, 10, 10, 10, 59, 6, 6, 66, 41,
824
+ 42, 58, 58, 84, 22, 43, 101, 45, 88, 88,
825
+ 94, 49, 14, 83, 8, 75, 5, 56, 51, 67,
826
+ 9, 9, 11, 69, 6, 62, 62, 10, 10, 10,
827
+ 58, 85, 85, 1, 3, 12, 16, 21, 50, 52,
828
+ 55, 66, 66, 6, 6, 6, 66, 54, 53, 6,
829
+ 67, 67, 57, 10, 60, 68, 68, 63, 71, 6,
830
+ 6, 6, 6, 51, 69, 67, 10, 10, 10, 10,
638
831
  10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
639
- 10, 10, 10, 10, 10, 10, 5, 6, 44, 10,
640
- 10, 8, 67, 10, 45, 68, 69, 71, 75, 65,
641
- 47, 76, 9, 9, 9, 9, 77, 3, 81, 6,
642
- 15, 82, 84, 8, 85, 86, 87, 1, nil, nil,
643
- nil, nil, nil, 49, 36, 42, 50, nil, 15, nil,
832
+ 10, 10, 10, 10, 10, 10, 10, 72, 74, 68,
833
+ 10, 10, 84, 5, 10, 45, 15, 9, 9, 9,
834
+ 9, 43, 77, 78, 79, 81, 53, 54, 87, 90,
835
+ 75, 56, 8, 66, 15, 91, 95, 66, 96, 98,
836
+ 99, 100, 6, 43, 68, nil, nil, nil, nil, nil,
837
+ 15, 83, nil, nil, nil, nil, nil, 15, 59, 66,
838
+ nil, 51, 51, nil, 2, nil, 43, nil, nil, nil,
839
+ nil, nil, 58, nil, 66, nil, 66, nil, nil, nil,
840
+ 41, 42, nil, 15, nil, 43, nil, nil, 6, 22,
841
+ nil, nil, nil, 83, 49, nil, nil, nil, nil, 2,
842
+ 10, nil, 2, nil, nil, 10, 10, 10, nil, 11,
843
+ 58, nil, nil, 58, nil, nil, nil, nil, nil, nil,
844
+ nil, nil, 66, 66, 66, nil, nil, 66, nil, nil,
845
+ nil, nil, nil, nil, 15, nil, nil, nil, nil, nil,
846
+ nil, nil, nil, nil, 43, 43, nil, 101, 10, nil,
847
+ nil, nil, nil, nil, nil, nil, nil, 43, nil, nil,
848
+ nil, nil, nil, 15, nil, 41, 42, nil, nil, 6,
849
+ 88, 10, 10, 84, 88, 94, 14, nil, nil, nil,
850
+ nil, 11, nil, nil, nil, nil, nil, nil, 2, nil,
851
+ nil, nil, nil, 10, nil, nil, nil, nil, nil, nil,
852
+ 58, 58, 15, nil, nil, 6, 2, 2, 6, 6,
853
+ nil, nil, nil, 11, 6, nil, 15, nil, nil, nil,
854
+ 15, 11, nil, nil, nil, nil, 59, nil, 10, 10,
855
+ 10, 10, nil, nil, 58, 10, nil, nil, nil, nil,
856
+ nil, nil, nil, nil, nil, nil, 15, 11, 15, 45,
857
+ nil, nil, nil, nil, nil, 22, 10, 43, nil, nil,
858
+ 41, 42, nil, nil, nil, nil, nil, nil, nil, 58,
859
+ nil, 66, nil, nil, nil, nil, nil, 10, nil, nil,
860
+ nil, 6, nil, nil, 13, nil, nil, 10, 2, nil,
861
+ 58, nil, 15, nil, nil, nil, nil, nil, nil, nil,
862
+ nil, nil, nil, nil, nil, nil, 15, nil, nil, nil,
863
+ nil, nil, nil, 15, nil, nil, 10, nil, nil, nil,
644
864
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
645
- 57, 6, 35, 34, nil, nil, 49, nil, nil, nil,
646
- nil, 2, 11, 10, 2, nil, nil, 10, 10, 10,
647
- nil, nil, 15, nil, nil, nil, nil, nil, nil, nil,
648
- nil, nil, nil, nil, nil, nil, nil, nil, 15, 37,
649
- nil, nil, 15, nil, nil, nil, nil, nil, nil, nil,
650
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 10,
651
- nil, nil, nil, nil, 88, nil, 15, nil, 11, 14,
652
- nil, 36, 35, 34, 80, nil, nil, nil, nil, nil,
653
- nil, nil, nil, nil, nil, nil, 49, nil, nil, nil,
654
- 2, nil, 10, nil, nil, nil, nil, nil, 6, 15,
655
- 11, nil, 6, 6, 2, 2, nil, nil, 6, 19,
656
- nil, nil, nil, 15, nil, nil, 49, nil, nil, nil,
657
- nil, nil, 10, 10, 10, 50, 10, 10, nil, nil,
658
- nil, 57, nil, nil, nil, nil, nil, nil, nil, nil,
659
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
660
- 10, nil, nil, nil, 35, 34, nil, nil, 49, nil,
661
- nil, 10, nil, nil, 10, 13, 6, nil, nil, nil,
662
- nil, nil, 10, nil, nil, nil, nil, 37, nil, nil,
663
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
664
- nil, nil, nil, nil, nil, nil, nil, nil, 10, nil,
665
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
666
- nil, nil, nil, nil, nil, nil, 10, nil, nil, nil,
865
+ nil, 10, nil, nil, nil, nil, nil, 10, nil, 15,
866
+ nil, nil, nil, 10, nil, nil, nil, nil, nil, 2,
667
867
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
668
868
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
669
869
  nil, 2, nil, nil, nil, nil, nil, nil, nil, nil,
670
- nil, 10, nil, nil, nil, nil, nil, 2, nil, 2,
671
- 2 ]
870
+ nil, nil, nil, nil, nil, nil, nil, 10, nil, nil,
871
+ nil, 2, nil, 2, 2 ]
672
872
 
673
873
  racc_goto_pointer = [
674
- nil, 117, 0, 107, nil, 17, -13, nil, -9, 27,
675
- -14, -65, -279, -100, -206, -104, -249, nil, nil, -69,
676
- -45, nil, nil, nil, nil, nil, nil, nil, nil, nil,
677
- nil, nil, nil, nil, -36, -37, -103, -36, nil, nil,
678
- nil, -67, -102, -335, -280, -278, -219, -226, -377, -102,
679
- -87, -180, nil, -72, -227, nil, nil, -37, -82, -306,
680
- nil, -169, -251, nil, -185, -232, nil, -158, -219, -144,
681
- nil, -142, nil, nil, nil, -157, -49, -44, nil, nil,
682
- -47, -39, -36, nil, -35, 52, 52, -35, -138 ]
874
+ nil, 43, 0, 44, nil, 22, -14, nil, -24, 20,
875
+ -15, -59, -368, -118, -241, -31, -315, nil, nil, nil,
876
+ nil, -63, -97, nil, nil, nil, nil, nil, nil, nil,
877
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
878
+ nil, -50, -49, -34, nil, -33, nil, nil, nil, -123,
879
+ -232, -117, -399, -330, -333, -248, -271, -422, -104, -105,
880
+ -189, nil, -80, -265, nil, nil, -4, -91, -329, 17,
881
+ nil, -198, -268, nil, -206, -280, nil, -194, -268, -178,
882
+ nil, -176, nil, -26, -176, -26, nil, -194, -49, nil,
883
+ -69, -63, nil, nil, -53, -59, -57, nil, -56, 55,
884
+ 55, -175 ]
683
885
 
684
886
  racc_goto_default = [
685
- nil, nil, 379, nil, 4, 5, 6, 7, nil, 8,
686
- 9, nil, nil, nil, nil, nil, 224, 13, 14, 325,
687
- nil, 19, 20, 21, 22, 23, 24, 25, 26, 27,
688
- 28, 29, 30, 31, 32, 33, 34, nil, 40, 41,
689
- 120, nil, nil, 124, nil, nil, nil, nil, nil, 220,
690
- nil, nil, 102, nil, 174, 176, 175, 109, nil, nil,
691
- 108, nil, nil, 128, nil, 129, 130, 134, 233, 234,
692
- 235, 236, 237, 240, 142, 144, 55, 56, 57, 60,
693
- nil, nil, nil, 147, nil, nil, nil, nil, nil ]
887
+ nil, nil, 457, nil, 4, 5, 6, 7, nil, 8,
888
+ 9, nil, nil, nil, nil, nil, 265, 13, 14, 15,
889
+ 16, nil, 391, 22, 23, 24, 25, 26, 27, 28,
890
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
891
+ 39, 40, 41, 42, 48, nil, 50, 51, 144, nil,
892
+ nil, nil, 148, nil, nil, nil, nil, nil, 267, nil,
893
+ nil, 114, nil, 213, 215, 214, 57, nil, nil, nil,
894
+ 120, nil, nil, 155, nil, 156, 157, 161, 285, 286,
895
+ 287, 288, 289, 292, nil, nil, 180, 182, 183, 174,
896
+ 70, 71, 72, 73, nil, nil, nil, 185, nil, nil,
897
+ nil, nil ]
694
898
 
695
899
  racc_reduce_table = [
696
900
  0, 0, :racc_error,
697
- 1, 92, :_reduce_1,
698
- 1, 92, :_reduce_2,
699
- 0, 92, :_reduce_3,
700
- 1, 93, :_reduce_4,
701
- 1, 95, :_reduce_5,
702
- 3, 95, :_reduce_6,
703
- 2, 95, :_reduce_7,
704
- 1, 96, :_reduce_8,
705
- 3, 96, :_reduce_9,
706
- 1, 97, :_reduce_none,
707
- 3, 97, :_reduce_11,
708
- 3, 97, :_reduce_12,
709
- 3, 97, :_reduce_13,
710
- 1, 99, :_reduce_14,
711
- 3, 99, :_reduce_15,
712
- 1, 98, :_reduce_none,
713
- 3, 98, :_reduce_17,
714
- 3, 98, :_reduce_18,
715
- 3, 98, :_reduce_19,
716
- 3, 98, :_reduce_20,
717
- 1, 100, :_reduce_none,
718
- 2, 100, :_reduce_22,
719
- 2, 100, :_reduce_23,
720
- 7, 100, :_reduce_24,
721
- 5, 100, :_reduce_25,
722
- 5, 100, :_reduce_26,
723
- 4, 107, :_reduce_27,
724
- 1, 104, :_reduce_28,
725
- 3, 104, :_reduce_29,
726
- 1, 103, :_reduce_30,
727
- 2, 103, :_reduce_31,
728
- 4, 103, :_reduce_32,
729
- 1, 101, :_reduce_none,
730
- 1, 101, :_reduce_none,
731
- 4, 101, :_reduce_35,
732
- 3, 101, :_reduce_36,
733
- 3, 101, :_reduce_37,
734
- 3, 101, :_reduce_38,
735
- 3, 101, :_reduce_39,
736
- 3, 101, :_reduce_40,
737
- 3, 101, :_reduce_41,
738
- 3, 101, :_reduce_42,
739
- 3, 101, :_reduce_43,
740
- 3, 101, :_reduce_44,
741
- 3, 101, :_reduce_45,
742
- 2, 101, :_reduce_46,
743
- 2, 101, :_reduce_47,
744
- 3, 101, :_reduce_48,
745
- 3, 101, :_reduce_49,
746
- 3, 101, :_reduce_50,
747
- 3, 101, :_reduce_51,
748
- 3, 101, :_reduce_52,
749
- 3, 101, :_reduce_53,
750
- 2, 101, :_reduce_54,
751
- 3, 101, :_reduce_55,
752
- 3, 101, :_reduce_56,
753
- 3, 101, :_reduce_57,
754
- 3, 101, :_reduce_58,
755
- 1, 110, :_reduce_59,
756
- 3, 110, :_reduce_60,
757
- 1, 108, :_reduce_none,
758
- 1, 108, :_reduce_none,
759
- 1, 108, :_reduce_none,
760
- 1, 108, :_reduce_none,
761
- 1, 108, :_reduce_none,
762
- 1, 108, :_reduce_none,
763
- 1, 108, :_reduce_none,
764
- 1, 108, :_reduce_none,
765
- 1, 108, :_reduce_none,
766
- 1, 108, :_reduce_none,
767
- 1, 108, :_reduce_none,
768
- 1, 108, :_reduce_none,
769
- 1, 108, :_reduce_none,
770
- 1, 108, :_reduce_none,
771
- 1, 108, :_reduce_none,
772
- 1, 108, :_reduce_none,
773
- 1, 108, :_reduce_77,
774
- 1, 108, :_reduce_78,
775
- 1, 108, :_reduce_79,
776
- 1, 108, :_reduce_80,
777
- 1, 108, :_reduce_81,
778
- 5, 109, :_reduce_82,
779
- 3, 109, :_reduce_83,
780
- 6, 109, :_reduce_84,
781
- 4, 109, :_reduce_85,
901
+ 1, 97, :_reduce_1,
902
+ 1, 97, :_reduce_2,
903
+ 0, 97, :_reduce_3,
904
+ 1, 98, :_reduce_4,
905
+ 1, 100, :_reduce_5,
906
+ 3, 100, :_reduce_6,
907
+ 2, 100, :_reduce_7,
908
+ 1, 101, :_reduce_8,
909
+ 3, 101, :_reduce_9,
910
+ 1, 102, :_reduce_none,
911
+ 3, 102, :_reduce_11,
912
+ 3, 102, :_reduce_12,
913
+ 3, 102, :_reduce_13,
914
+ 1, 104, :_reduce_14,
915
+ 3, 104, :_reduce_15,
916
+ 1, 103, :_reduce_none,
917
+ 3, 103, :_reduce_17,
918
+ 3, 103, :_reduce_18,
919
+ 3, 103, :_reduce_19,
920
+ 3, 103, :_reduce_20,
921
+ 1, 105, :_reduce_none,
922
+ 2, 105, :_reduce_22,
923
+ 2, 105, :_reduce_23,
924
+ 7, 105, :_reduce_24,
925
+ 5, 105, :_reduce_25,
926
+ 5, 105, :_reduce_26,
927
+ 4, 112, :_reduce_27,
928
+ 1, 109, :_reduce_28,
929
+ 3, 109, :_reduce_29,
930
+ 1, 108, :_reduce_30,
931
+ 2, 108, :_reduce_31,
932
+ 4, 108, :_reduce_32,
933
+ 1, 106, :_reduce_none,
934
+ 1, 106, :_reduce_none,
935
+ 1, 106, :_reduce_none,
936
+ 1, 106, :_reduce_none,
937
+ 3, 106, :_reduce_37,
938
+ 3, 106, :_reduce_38,
939
+ 3, 106, :_reduce_39,
940
+ 3, 106, :_reduce_40,
941
+ 3, 106, :_reduce_41,
942
+ 3, 106, :_reduce_42,
943
+ 3, 106, :_reduce_43,
944
+ 3, 106, :_reduce_44,
945
+ 3, 106, :_reduce_45,
946
+ 3, 106, :_reduce_46,
947
+ 2, 106, :_reduce_47,
948
+ 2, 106, :_reduce_48,
949
+ 3, 106, :_reduce_49,
950
+ 3, 106, :_reduce_50,
951
+ 3, 106, :_reduce_51,
952
+ 3, 106, :_reduce_52,
953
+ 3, 106, :_reduce_53,
954
+ 3, 106, :_reduce_54,
955
+ 2, 106, :_reduce_55,
956
+ 3, 106, :_reduce_56,
957
+ 3, 106, :_reduce_57,
958
+ 3, 106, :_reduce_58,
959
+ 3, 106, :_reduce_59,
960
+ 3, 106, :_reduce_60,
961
+ 5, 116, :_reduce_61,
962
+ 1, 118, :_reduce_62,
963
+ 3, 118, :_reduce_63,
964
+ 1, 113, :_reduce_none,
965
+ 1, 113, :_reduce_none,
966
+ 1, 113, :_reduce_none,
967
+ 1, 113, :_reduce_none,
968
+ 1, 113, :_reduce_none,
969
+ 1, 113, :_reduce_none,
970
+ 1, 113, :_reduce_none,
971
+ 1, 113, :_reduce_none,
972
+ 1, 113, :_reduce_none,
973
+ 1, 113, :_reduce_none,
974
+ 1, 113, :_reduce_none,
975
+ 1, 113, :_reduce_none,
976
+ 1, 113, :_reduce_none,
977
+ 1, 113, :_reduce_none,
978
+ 1, 113, :_reduce_none,
979
+ 1, 113, :_reduce_none,
980
+ 1, 113, :_reduce_none,
981
+ 1, 113, :_reduce_none,
982
+ 1, 113, :_reduce_none,
983
+ 1, 113, :_reduce_none,
984
+ 1, 113, :_reduce_none,
985
+ 1, 113, :_reduce_85,
782
986
  1, 113, :_reduce_86,
783
- 2, 113, :_reduce_87,
784
- 4, 129, :_reduce_88,
785
- 3, 129, :_reduce_89,
786
- 1, 129, :_reduce_90,
787
- 3, 130, :_reduce_91,
788
- 2, 128, :_reduce_92,
789
- 3, 132, :_reduce_93,
790
- 2, 132, :_reduce_94,
791
- 2, 131, :_reduce_95,
792
- 4, 131, :_reduce_96,
793
- 2, 116, :_reduce_97,
794
- 5, 134, :_reduce_98,
795
- 4, 134, :_reduce_99,
796
- 0, 135, :_reduce_none,
797
- 2, 135, :_reduce_101,
798
- 4, 135, :_reduce_102,
799
- 3, 135, :_reduce_103,
800
- 6, 117, :_reduce_104,
801
- 5, 117, :_reduce_105,
802
- 0, 136, :_reduce_none,
803
- 4, 136, :_reduce_107,
804
- 3, 136, :_reduce_108,
805
- 5, 115, :_reduce_109,
806
- 1, 137, :_reduce_110,
807
- 2, 137, :_reduce_111,
808
- 5, 138, :_reduce_112,
809
- 1, 139, :_reduce_none,
810
- 1, 139, :_reduce_none,
811
- 1, 111, :_reduce_none,
812
- 4, 111, :_reduce_116,
813
- 1, 142, :_reduce_117,
814
- 3, 142, :_reduce_118,
815
- 3, 141, :_reduce_119,
816
- 6, 114, :_reduce_120,
817
- 2, 114, :_reduce_121,
818
- 3, 143, :_reduce_122,
819
- 3, 143, :_reduce_123,
820
- 1, 144, :_reduce_none,
821
- 1, 144, :_reduce_none,
822
- 0, 102, :_reduce_126,
823
- 1, 102, :_reduce_127,
824
- 3, 102, :_reduce_128,
825
- 1, 146, :_reduce_none,
826
- 1, 146, :_reduce_none,
827
- 3, 145, :_reduce_131,
828
- 3, 145, :_reduce_132,
829
- 3, 145, :_reduce_133,
830
- 6, 118, :_reduce_134,
831
- 7, 119, :_reduce_135,
832
- 1, 151, :_reduce_136,
833
- 1, 150, :_reduce_none,
834
- 1, 150, :_reduce_none,
835
- 1, 152, :_reduce_none,
836
- 2, 152, :_reduce_140,
987
+ 1, 113, :_reduce_87,
988
+ 1, 113, :_reduce_88,
989
+ 1, 113, :_reduce_89,
990
+ 4, 115, :_reduce_90,
991
+ 2, 115, :_reduce_91,
992
+ 5, 115, :_reduce_92,
993
+ 3, 115, :_reduce_93,
994
+ 2, 140, :_reduce_94,
995
+ 2, 140, :_reduce_95,
996
+ 1, 120, :_reduce_96,
997
+ 2, 120, :_reduce_97,
998
+ 4, 142, :_reduce_98,
999
+ 3, 142, :_reduce_99,
1000
+ 1, 142, :_reduce_100,
1001
+ 3, 143, :_reduce_101,
1002
+ 3, 143, :_reduce_102,
1003
+ 3, 141, :_reduce_103,
1004
+ 3, 146, :_reduce_104,
1005
+ 2, 146, :_reduce_105,
1006
+ 2, 144, :_reduce_106,
1007
+ 4, 144, :_reduce_107,
1008
+ 2, 123, :_reduce_108,
1009
+ 5, 148, :_reduce_109,
1010
+ 4, 148, :_reduce_110,
1011
+ 0, 149, :_reduce_none,
1012
+ 2, 149, :_reduce_112,
1013
+ 4, 149, :_reduce_113,
1014
+ 3, 149, :_reduce_114,
1015
+ 6, 124, :_reduce_115,
1016
+ 5, 124, :_reduce_116,
1017
+ 0, 150, :_reduce_none,
1018
+ 4, 150, :_reduce_118,
1019
+ 3, 150, :_reduce_119,
1020
+ 5, 122, :_reduce_120,
1021
+ 1, 151, :_reduce_121,
1022
+ 2, 151, :_reduce_122,
1023
+ 5, 152, :_reduce_123,
837
1024
  1, 153, :_reduce_none,
838
1025
  1, 153, :_reduce_none,
839
- 7, 120, :_reduce_143,
840
- 6, 120, :_reduce_144,
841
- 1, 154, :_reduce_145,
842
- 3, 154, :_reduce_146,
843
- 1, 156, :_reduce_none,
844
- 1, 156, :_reduce_none,
845
- 1, 156, :_reduce_149,
846
- 1, 156, :_reduce_none,
847
- 1, 157, :_reduce_151,
848
- 3, 157, :_reduce_152,
1026
+ 1, 117, :_reduce_none,
1027
+ 4, 117, :_reduce_127,
1028
+ 1, 156, :_reduce_128,
1029
+ 3, 156, :_reduce_129,
1030
+ 3, 155, :_reduce_130,
1031
+ 6, 121, :_reduce_131,
1032
+ 2, 121, :_reduce_132,
1033
+ 3, 157, :_reduce_133,
1034
+ 3, 157, :_reduce_134,
849
1035
  1, 158, :_reduce_none,
850
1036
  1, 158, :_reduce_none,
851
- 1, 155, :_reduce_none,
852
- 2, 155, :_reduce_156,
853
- 1, 148, :_reduce_none,
854
- 1, 148, :_reduce_none,
855
- 1, 148, :_reduce_none,
856
- 1, 148, :_reduce_160,
857
- 1, 149, :_reduce_161,
858
- 2, 149, :_reduce_162,
859
- 4, 149, :_reduce_163,
860
- 1, 133, :_reduce_164,
861
- 3, 133, :_reduce_165,
862
- 1, 159, :_reduce_none,
863
- 1, 159, :_reduce_none,
1037
+ 0, 107, :_reduce_137,
1038
+ 1, 107, :_reduce_138,
1039
+ 3, 107, :_reduce_139,
864
1040
  1, 160, :_reduce_none,
865
1041
  1, 160, :_reduce_none,
866
- 3, 162, :_reduce_170,
867
- 1, 162, :_reduce_171,
868
- 2, 163, :_reduce_172,
869
- 2, 161, :_reduce_173,
870
- 1, 164, :_reduce_174,
871
- 4, 164, :_reduce_175,
872
- 1, 112, :_reduce_176,
873
- 1, 122, :_reduce_177,
874
- 1, 122, :_reduce_178,
875
- 1, 122, :_reduce_179,
876
- 1, 122, :_reduce_180,
877
- 4, 123, :_reduce_181,
878
- 2, 123, :_reduce_182,
879
- 4, 123, :_reduce_183,
880
- 2, 123, :_reduce_184,
881
- 3, 124, :_reduce_185,
882
- 4, 124, :_reduce_186,
883
- 2, 124, :_reduce_187,
884
- 1, 165, :_reduce_188,
885
- 3, 165, :_reduce_189,
886
- 3, 166, :_reduce_190,
887
- 1, 126, :_reduce_none,
888
- 1, 126, :_reduce_none,
889
- 1, 126, :_reduce_none,
890
- 1, 167, :_reduce_194,
891
- 1, 167, :_reduce_195,
892
- 2, 168, :_reduce_196,
893
- 1, 170, :_reduce_197,
894
- 1, 172, :_reduce_198,
895
- 1, 173, :_reduce_199,
896
- 2, 171, :_reduce_200,
897
- 1, 174, :_reduce_201,
898
- 1, 175, :_reduce_202,
899
- 2, 175, :_reduce_203,
900
- 2, 169, :_reduce_204,
901
- 2, 176, :_reduce_205,
902
- 2, 176, :_reduce_206,
903
- 3, 94, :_reduce_207,
904
- 0, 178, :_reduce_none,
905
- 1, 178, :_reduce_none,
906
- 0, 177, :_reduce_210,
907
- 2, 177, :_reduce_211,
908
- 4, 177, :_reduce_212,
909
- 1, 121, :_reduce_213,
910
- 3, 121, :_reduce_214,
911
- 5, 121, :_reduce_215,
912
- 1, 179, :_reduce_none,
913
- 1, 179, :_reduce_none,
914
- 1, 127, :_reduce_218,
915
- 1, 125, :_reduce_219,
916
- 0, 106, :_reduce_none,
917
- 1, 106, :_reduce_221,
918
- 0, 105, :_reduce_none,
919
- 1, 105, :_reduce_none,
920
- 1, 147, :_reduce_none,
921
- 1, 147, :_reduce_none,
922
- 1, 147, :_reduce_none,
923
- 1, 147, :_reduce_none,
924
- 1, 147, :_reduce_none,
925
- 1, 147, :_reduce_none,
926
- 1, 147, :_reduce_none,
927
- 1, 147, :_reduce_none,
928
- 1, 147, :_reduce_none,
929
- 1, 147, :_reduce_none,
930
- 1, 147, :_reduce_none,
931
- 1, 147, :_reduce_none,
932
- 1, 147, :_reduce_none,
933
- 1, 147, :_reduce_none,
934
- 1, 147, :_reduce_none,
935
- 1, 147, :_reduce_none,
936
- 1, 147, :_reduce_none,
937
- 1, 147, :_reduce_none,
938
- 0, 140, :_reduce_242 ]
939
-
940
- racc_reduce_n = 243
941
-
942
- racc_shift_n = 420
1042
+ 3, 159, :_reduce_142,
1043
+ 3, 159, :_reduce_143,
1044
+ 3, 159, :_reduce_144,
1045
+ 6, 125, :_reduce_145,
1046
+ 6, 126, :_reduce_146,
1047
+ 7, 114, :_reduce_147,
1048
+ 7, 114, :_reduce_148,
1049
+ 1, 165, :_reduce_none,
1050
+ 1, 165, :_reduce_none,
1051
+ 7, 127, :_reduce_151,
1052
+ 1, 166, :_reduce_152,
1053
+ 1, 164, :_reduce_none,
1054
+ 1, 164, :_reduce_none,
1055
+ 1, 167, :_reduce_none,
1056
+ 2, 167, :_reduce_156,
1057
+ 1, 168, :_reduce_none,
1058
+ 1, 168, :_reduce_none,
1059
+ 4, 129, :_reduce_159,
1060
+ 3, 129, :_reduce_160,
1061
+ 7, 128, :_reduce_161,
1062
+ 6, 128, :_reduce_162,
1063
+ 1, 169, :_reduce_163,
1064
+ 3, 169, :_reduce_164,
1065
+ 1, 171, :_reduce_none,
1066
+ 1, 171, :_reduce_none,
1067
+ 1, 171, :_reduce_167,
1068
+ 1, 171, :_reduce_none,
1069
+ 1, 172, :_reduce_169,
1070
+ 3, 172, :_reduce_170,
1071
+ 1, 173, :_reduce_none,
1072
+ 1, 173, :_reduce_none,
1073
+ 1, 170, :_reduce_none,
1074
+ 2, 170, :_reduce_174,
1075
+ 7, 131, :_reduce_175,
1076
+ 2, 145, :_reduce_176,
1077
+ 5, 145, :_reduce_177,
1078
+ 1, 145, :_reduce_none,
1079
+ 1, 162, :_reduce_none,
1080
+ 1, 162, :_reduce_none,
1081
+ 1, 162, :_reduce_none,
1082
+ 1, 162, :_reduce_182,
1083
+ 1, 162, :_reduce_183,
1084
+ 1, 163, :_reduce_184,
1085
+ 2, 163, :_reduce_185,
1086
+ 2, 163, :_reduce_186,
1087
+ 4, 163, :_reduce_187,
1088
+ 4, 163, :_reduce_188,
1089
+ 1, 147, :_reduce_189,
1090
+ 3, 147, :_reduce_190,
1091
+ 1, 174, :_reduce_none,
1092
+ 1, 174, :_reduce_none,
1093
+ 1, 175, :_reduce_none,
1094
+ 1, 175, :_reduce_none,
1095
+ 3, 177, :_reduce_195,
1096
+ 1, 177, :_reduce_196,
1097
+ 2, 178, :_reduce_197,
1098
+ 2, 176, :_reduce_198,
1099
+ 1, 179, :_reduce_199,
1100
+ 4, 179, :_reduce_200,
1101
+ 4, 132, :_reduce_201,
1102
+ 5, 133, :_reduce_202,
1103
+ 7, 133, :_reduce_203,
1104
+ 1, 119, :_reduce_204,
1105
+ 1, 134, :_reduce_205,
1106
+ 1, 134, :_reduce_206,
1107
+ 4, 135, :_reduce_207,
1108
+ 2, 135, :_reduce_208,
1109
+ 4, 135, :_reduce_209,
1110
+ 2, 135, :_reduce_210,
1111
+ 3, 136, :_reduce_211,
1112
+ 4, 136, :_reduce_212,
1113
+ 2, 136, :_reduce_213,
1114
+ 1, 182, :_reduce_214,
1115
+ 3, 182, :_reduce_215,
1116
+ 3, 183, :_reduce_216,
1117
+ 1, 184, :_reduce_none,
1118
+ 1, 184, :_reduce_218,
1119
+ 1, 181, :_reduce_219,
1120
+ 3, 181, :_reduce_220,
1121
+ 1, 185, :_reduce_none,
1122
+ 1, 185, :_reduce_none,
1123
+ 1, 185, :_reduce_none,
1124
+ 1, 185, :_reduce_none,
1125
+ 1, 185, :_reduce_none,
1126
+ 1, 185, :_reduce_none,
1127
+ 1, 138, :_reduce_none,
1128
+ 1, 138, :_reduce_none,
1129
+ 1, 138, :_reduce_none,
1130
+ 1, 186, :_reduce_230,
1131
+ 1, 186, :_reduce_231,
1132
+ 2, 187, :_reduce_232,
1133
+ 1, 189, :_reduce_233,
1134
+ 1, 191, :_reduce_234,
1135
+ 1, 192, :_reduce_235,
1136
+ 2, 190, :_reduce_236,
1137
+ 1, 193, :_reduce_237,
1138
+ 1, 194, :_reduce_238,
1139
+ 2, 194, :_reduce_239,
1140
+ 2, 188, :_reduce_240,
1141
+ 2, 195, :_reduce_241,
1142
+ 2, 195, :_reduce_242,
1143
+ 3, 99, :_reduce_243,
1144
+ 0, 180, :_reduce_none,
1145
+ 1, 180, :_reduce_none,
1146
+ 0, 196, :_reduce_246,
1147
+ 2, 196, :_reduce_247,
1148
+ 4, 196, :_reduce_248,
1149
+ 1, 130, :_reduce_249,
1150
+ 3, 130, :_reduce_250,
1151
+ 5, 130, :_reduce_251,
1152
+ 1, 197, :_reduce_none,
1153
+ 1, 197, :_reduce_none,
1154
+ 1, 139, :_reduce_254,
1155
+ 1, 137, :_reduce_255,
1156
+ 0, 111, :_reduce_none,
1157
+ 1, 111, :_reduce_257,
1158
+ 0, 110, :_reduce_none,
1159
+ 1, 110, :_reduce_none,
1160
+ 1, 161, :_reduce_none,
1161
+ 1, 161, :_reduce_none,
1162
+ 1, 161, :_reduce_none,
1163
+ 1, 161, :_reduce_none,
1164
+ 1, 161, :_reduce_none,
1165
+ 1, 161, :_reduce_none,
1166
+ 1, 161, :_reduce_none,
1167
+ 1, 161, :_reduce_none,
1168
+ 1, 161, :_reduce_none,
1169
+ 1, 161, :_reduce_none,
1170
+ 1, 161, :_reduce_none,
1171
+ 1, 161, :_reduce_none,
1172
+ 1, 161, :_reduce_none,
1173
+ 1, 161, :_reduce_none,
1174
+ 1, 161, :_reduce_none,
1175
+ 1, 161, :_reduce_none,
1176
+ 1, 161, :_reduce_none,
1177
+ 1, 161, :_reduce_none,
1178
+ 1, 161, :_reduce_none,
1179
+ 1, 161, :_reduce_none,
1180
+ 1, 161, :_reduce_none,
1181
+ 1, 161, :_reduce_none,
1182
+ 0, 154, :_reduce_282 ]
1183
+
1184
+ racc_reduce_n = 283
1185
+
1186
+ racc_shift_n = 512
943
1187
 
944
1188
  racc_token_table = {
945
1189
  false => 0,
@@ -968,73 +1212,78 @@ racc_token_table = {
968
1212
  :LLCOLLECT => 23,
969
1213
  :RRCOLLECT => 24,
970
1214
  :QMARK => 25,
971
- :LPAREN => 26,
972
- :RPAREN => 27,
973
- :ISEQUAL => 28,
974
- :GREATEREQUAL => 29,
975
- :GREATERTHAN => 30,
976
- :LESSTHAN => 31,
977
- :IF => 32,
978
- :ELSE => 33,
979
- :DEFINE => 34,
980
- :ELSIF => 35,
981
- :VARIABLE => 36,
982
- :CLASS => 37,
983
- :INHERITS => 38,
984
- :NODE => 39,
985
- :BOOLEAN => 40,
986
- :NAME => 41,
987
- :SEMIC => 42,
988
- :CASE => 43,
989
- :DEFAULT => 44,
990
- :AT => 45,
991
- :ATAT => 46,
992
- :LCOLLECT => 47,
993
- :RCOLLECT => 48,
994
- :CLASSREF => 49,
995
- :NOT => 50,
996
- :OR => 51,
997
- :AND => 52,
998
- :UNDEF => 53,
999
- :PARROW => 54,
1000
- :PLUS => 55,
1001
- :MINUS => 56,
1002
- :TIMES => 57,
1003
- :DIV => 58,
1004
- :LSHIFT => 59,
1005
- :RSHIFT => 60,
1006
- :UMINUS => 61,
1007
- :MATCH => 62,
1008
- :NOMATCH => 63,
1009
- :REGEX => 64,
1010
- :IN_EDGE => 65,
1011
- :OUT_EDGE => 66,
1012
- :IN_EDGE_SUB => 67,
1013
- :OUT_EDGE_SUB => 68,
1014
- :IN => 69,
1015
- :UNLESS => 70,
1016
- :PIPE => 71,
1017
- :LAMBDA => 72,
1018
- :SELBRACE => 73,
1019
- :NUMBER => 74,
1020
- :HEREDOC => 75,
1021
- :SUBLOCATE => 76,
1022
- :RENDER_STRING => 77,
1023
- :RENDER_EXPR => 78,
1024
- :EPP_START => 79,
1025
- :EPP_END => 80,
1026
- :EPP_END_TRIM => 81,
1027
- :FUNCTION => 82,
1028
- :PRIVATE => 83,
1029
- :ATTR => 84,
1030
- :TYPE => 85,
1031
- :LOW => 86,
1032
- :HIGH => 87,
1033
- :LISTSTART => 88,
1034
- :SPLAT => 89,
1035
- :MODULO => 90 }
1036
-
1037
- racc_nt_base = 91
1215
+ :WSLPAREN => 26,
1216
+ :LPAREN => 27,
1217
+ :RPAREN => 28,
1218
+ :ISEQUAL => 29,
1219
+ :GREATEREQUAL => 30,
1220
+ :GREATERTHAN => 31,
1221
+ :LESSTHAN => 32,
1222
+ :IF => 33,
1223
+ :ELSE => 34,
1224
+ :DEFINE => 35,
1225
+ :ELSIF => 36,
1226
+ :VARIABLE => 37,
1227
+ :CLASS => 38,
1228
+ :INHERITS => 39,
1229
+ :NODE => 40,
1230
+ :BOOLEAN => 41,
1231
+ :NAME => 42,
1232
+ :SEMIC => 43,
1233
+ :CASE => 44,
1234
+ :DEFAULT => 45,
1235
+ :AT => 46,
1236
+ :ATAT => 47,
1237
+ :LCOLLECT => 48,
1238
+ :RCOLLECT => 49,
1239
+ :CLASSREF => 50,
1240
+ :NOT => 51,
1241
+ :OR => 52,
1242
+ :AND => 53,
1243
+ :UNDEF => 54,
1244
+ :PARROW => 55,
1245
+ :PLUS => 56,
1246
+ :MINUS => 57,
1247
+ :TIMES => 58,
1248
+ :DIV => 59,
1249
+ :LSHIFT => 60,
1250
+ :RSHIFT => 61,
1251
+ :UMINUS => 62,
1252
+ :MATCH => 63,
1253
+ :NOMATCH => 64,
1254
+ :REGEX => 65,
1255
+ :IN_EDGE => 66,
1256
+ :OUT_EDGE => 67,
1257
+ :IN_EDGE_SUB => 68,
1258
+ :OUT_EDGE_SUB => 69,
1259
+ :IN => 70,
1260
+ :UNLESS => 71,
1261
+ :PIPE => 72,
1262
+ :LAMBDA => 73,
1263
+ :SELBRACE => 74,
1264
+ :NUMBER => 75,
1265
+ :HEREDOC => 76,
1266
+ :SUBLOCATE => 77,
1267
+ :RENDER_STRING => 78,
1268
+ :RENDER_EXPR => 79,
1269
+ :EPP_START => 80,
1270
+ :EPP_END => 81,
1271
+ :EPP_END_TRIM => 82,
1272
+ :FUNCTION => 83,
1273
+ :TYPE => 84,
1274
+ :PRIVATE => 85,
1275
+ :ATTR => 86,
1276
+ :APPLICATION => 87,
1277
+ :PRODUCES => 88,
1278
+ :CONSUMES => 89,
1279
+ :SITE => 90,
1280
+ :LOW => 91,
1281
+ :HIGH => 92,
1282
+ :LISTSTART => 93,
1283
+ :SPLAT => 94,
1284
+ :MODULO => 95 }
1285
+
1286
+ racc_nt_base = 96
1038
1287
 
1039
1288
  racc_use_result_var = true
1040
1289
 
@@ -1081,6 +1330,7 @@ Racc_token_to_s_table = [
1081
1330
  "LLCOLLECT",
1082
1331
  "RRCOLLECT",
1083
1332
  "QMARK",
1333
+ "WSLPAREN",
1084
1334
  "LPAREN",
1085
1335
  "RPAREN",
1086
1336
  "ISEQUAL",
@@ -1138,9 +1388,13 @@ Racc_token_to_s_table = [
1138
1388
  "EPP_END",
1139
1389
  "EPP_END_TRIM",
1140
1390
  "FUNCTION",
1391
+ "TYPE",
1141
1392
  "PRIVATE",
1142
1393
  "ATTR",
1143
- "TYPE",
1394
+ "APPLICATION",
1395
+ "PRODUCES",
1396
+ "CONSUMES",
1397
+ "SITE",
1144
1398
  "LOW",
1145
1399
  "HIGH",
1146
1400
  "LISTSTART",
@@ -1164,9 +1418,11 @@ Racc_token_to_s_table = [
1164
1418
  "endcomma",
1165
1419
  "resource_body",
1166
1420
  "primary_expression",
1421
+ "capability_mapping",
1167
1422
  "call_function_expression",
1168
- "expressions",
1423
+ "bracketed_expression",
1169
1424
  "selector_entries",
1425
+ "expressions",
1170
1426
  "variable",
1171
1427
  "call_method_with_lambda_expression",
1172
1428
  "collection_expression",
@@ -1174,19 +1430,26 @@ Racc_token_to_s_table = [
1174
1430
  "if_expression",
1175
1431
  "unless_expression",
1176
1432
  "definition_expression",
1433
+ "application_expression",
1177
1434
  "hostclass_expression",
1178
1435
  "node_definition_expression",
1436
+ "site_definition_expression",
1179
1437
  "epp_render_expression",
1438
+ "function_definition",
1439
+ "type_alias",
1440
+ "type_definition",
1180
1441
  "reserved_word",
1181
1442
  "array",
1182
1443
  "hash",
1183
1444
  "regex",
1184
1445
  "quotedtext",
1185
1446
  "type",
1447
+ "call_function_start",
1186
1448
  "lambda",
1187
1449
  "call_method_expression",
1188
1450
  "named_access",
1189
1451
  "lambda_parameter_list",
1452
+ "opt_return_type",
1190
1453
  "lambda_rest",
1191
1454
  "parameters",
1192
1455
  "if_part",
@@ -1206,6 +1469,7 @@ Racc_token_to_s_table = [
1206
1469
  "classname",
1207
1470
  "parameter_list",
1208
1471
  "opt_statements",
1472
+ "capability_kw",
1209
1473
  "stacked_classname",
1210
1474
  "classparent",
1211
1475
  "classnameordefault",
@@ -1220,8 +1484,12 @@ Racc_token_to_s_table = [
1220
1484
  "regular_parameter",
1221
1485
  "splat_parameter",
1222
1486
  "parameter_type",
1487
+ "optional_statements",
1488
+ "collection_entries",
1223
1489
  "hashpairs",
1224
1490
  "hashpair",
1491
+ "collection_entry",
1492
+ "collection_entry_keyword",
1225
1493
  "string",
1226
1494
  "dq_string",
1227
1495
  "heredoc",
@@ -1233,7 +1501,6 @@ Racc_token_to_s_table = [
1233
1501
  "dqtail",
1234
1502
  "sublocated_text",
1235
1503
  "epp_parameters_list",
1236
- "optional_statements",
1237
1504
  "epp_end" ]
1238
1505
 
1239
1506
  Racc_debug_parser = false
@@ -1242,63 +1509,63 @@ Racc_debug_parser = false
1242
1509
 
1243
1510
  # reduce 0 omitted
1244
1511
 
1245
- module_eval(<<'.,.,', 'egrammar.ra', 65)
1512
+ module_eval(<<'.,.,', 'egrammar.ra', 67)
1246
1513
  def _reduce_1(val, _values, result)
1247
- result = create_program(Factory.block_or_expression(*val[0]))
1514
+ result = create_program(Factory.block_or_expression(val[0]))
1248
1515
  result
1249
1516
  end
1250
1517
  .,.,
1251
1518
 
1252
- module_eval(<<'.,.,', 'egrammar.ra', 66)
1519
+ module_eval(<<'.,.,', 'egrammar.ra', 68)
1253
1520
  def _reduce_2(val, _values, result)
1254
- result = create_program(Factory.block_or_expression(*val[0]))
1521
+ result = create_program(val[0])
1255
1522
  result
1256
1523
  end
1257
1524
  .,.,
1258
1525
 
1259
- module_eval(<<'.,.,', 'egrammar.ra', 67)
1526
+ module_eval(<<'.,.,', 'egrammar.ra', 69)
1260
1527
  def _reduce_3(val, _values, result)
1261
- result = create_empty_program()
1528
+ result = create_empty_program
1262
1529
  result
1263
1530
  end
1264
1531
  .,.,
1265
1532
 
1266
- module_eval(<<'.,.,', 'egrammar.ra', 71)
1533
+ module_eval(<<'.,.,', 'egrammar.ra', 73)
1267
1534
  def _reduce_4(val, _values, result)
1268
1535
  result = transform_calls(val[0])
1269
1536
  result
1270
1537
  end
1271
1538
  .,.,
1272
1539
 
1273
- module_eval(<<'.,.,', 'egrammar.ra', 78)
1540
+ module_eval(<<'.,.,', 'egrammar.ra', 80)
1274
1541
  def _reduce_5(val, _values, result)
1275
1542
  result = [val[0]]
1276
1543
  result
1277
1544
  end
1278
1545
  .,.,
1279
1546
 
1280
- module_eval(<<'.,.,', 'egrammar.ra', 79)
1547
+ module_eval(<<'.,.,', 'egrammar.ra', 81)
1281
1548
  def _reduce_6(val, _values, result)
1282
1549
  result = val[0].push val[2]
1283
1550
  result
1284
1551
  end
1285
1552
  .,.,
1286
1553
 
1287
- module_eval(<<'.,.,', 'egrammar.ra', 80)
1554
+ module_eval(<<'.,.,', 'egrammar.ra', 82)
1288
1555
  def _reduce_7(val, _values, result)
1289
1556
  result = val[0].push val[1]
1290
1557
  result
1291
1558
  end
1292
1559
  .,.,
1293
1560
 
1294
- module_eval(<<'.,.,', 'egrammar.ra', 87)
1561
+ module_eval(<<'.,.,', 'egrammar.ra', 89)
1295
1562
  def _reduce_8(val, _values, result)
1296
1563
  result = val[0]
1297
1564
  result
1298
1565
  end
1299
1566
  .,.,
1300
1567
 
1301
- module_eval(<<'.,.,', 'egrammar.ra', 88)
1568
+ module_eval(<<'.,.,', 'egrammar.ra', 90)
1302
1569
  def _reduce_9(val, _values, result)
1303
1570
  result = aryfy(val[0]).push(val[1]).push(val[2])
1304
1571
  result
@@ -1307,35 +1574,35 @@ module_eval(<<'.,.,', 'egrammar.ra', 88)
1307
1574
 
1308
1575
  # reduce 10 omitted
1309
1576
 
1310
- module_eval(<<'.,.,', 'egrammar.ra', 93)
1577
+ module_eval(<<'.,.,', 'egrammar.ra', 95)
1311
1578
  def _reduce_11(val, _values, result)
1312
1579
  result = val[0].set(val[2]) ; loc result, val[1]
1313
1580
  result
1314
1581
  end
1315
1582
  .,.,
1316
1583
 
1317
- module_eval(<<'.,.,', 'egrammar.ra', 94)
1584
+ module_eval(<<'.,.,', 'egrammar.ra', 96)
1318
1585
  def _reduce_12(val, _values, result)
1319
1586
  result = val[0].plus_set(val[2]) ; loc result, val[1]
1320
1587
  result
1321
1588
  end
1322
1589
  .,.,
1323
1590
 
1324
- module_eval(<<'.,.,', 'egrammar.ra', 95)
1591
+ module_eval(<<'.,.,', 'egrammar.ra', 97)
1325
1592
  def _reduce_13(val, _values, result)
1326
1593
  result = val[0].minus_set(val[2]); loc result, val[1]
1327
1594
  result
1328
1595
  end
1329
1596
  .,.,
1330
1597
 
1331
- module_eval(<<'.,.,', 'egrammar.ra', 98)
1598
+ module_eval(<<'.,.,', 'egrammar.ra', 100)
1332
1599
  def _reduce_14(val, _values, result)
1333
1600
  result = [val[0]]
1334
1601
  result
1335
1602
  end
1336
1603
  .,.,
1337
1604
 
1338
- module_eval(<<'.,.,', 'egrammar.ra', 99)
1605
+ module_eval(<<'.,.,', 'egrammar.ra', 101)
1339
1606
  def _reduce_15(val, _values, result)
1340
1607
  result = val[0].push(val[2])
1341
1608
  result
@@ -1344,28 +1611,28 @@ module_eval(<<'.,.,', 'egrammar.ra', 99)
1344
1611
 
1345
1612
  # reduce 16 omitted
1346
1613
 
1347
- module_eval(<<'.,.,', 'egrammar.ra', 103)
1614
+ module_eval(<<'.,.,', 'egrammar.ra', 105)
1348
1615
  def _reduce_17(val, _values, result)
1349
1616
  result = val[0].relop(val[1][:value], val[2]); loc result, val[1]
1350
1617
  result
1351
1618
  end
1352
1619
  .,.,
1353
1620
 
1354
- module_eval(<<'.,.,', 'egrammar.ra', 104)
1621
+ module_eval(<<'.,.,', 'egrammar.ra', 106)
1355
1622
  def _reduce_18(val, _values, result)
1356
1623
  result = val[0].relop(val[1][:value], val[2]); loc result, val[1]
1357
1624
  result
1358
1625
  end
1359
1626
  .,.,
1360
1627
 
1361
- module_eval(<<'.,.,', 'egrammar.ra', 105)
1628
+ module_eval(<<'.,.,', 'egrammar.ra', 107)
1362
1629
  def _reduce_19(val, _values, result)
1363
1630
  result = val[0].relop(val[1][:value], val[2]); loc result, val[1]
1364
1631
  result
1365
1632
  end
1366
1633
  .,.,
1367
1634
 
1368
- module_eval(<<'.,.,', 'egrammar.ra', 106)
1635
+ module_eval(<<'.,.,', 'egrammar.ra', 108)
1369
1636
  def _reduce_20(val, _values, result)
1370
1637
  result = val[0].relop(val[1][:value], val[2]); loc result, val[1]
1371
1638
  result
@@ -1374,10 +1641,10 @@ module_eval(<<'.,.,', 'egrammar.ra', 106)
1374
1641
 
1375
1642
  # reduce 21 omitted
1376
1643
 
1377
- module_eval(<<'.,.,', 'egrammar.ra', 115)
1644
+ module_eval(<<'.,.,', 'egrammar.ra', 117)
1378
1645
  def _reduce_22(val, _values, result)
1379
1646
  result = val[1]
1380
- unless Factory.set_resource_form(result, :virtual)
1647
+ unless Factory.set_resource_form(result, 'virtual')
1381
1648
  # This is equivalent to a syntax error - additional semantic restrictions apply
1382
1649
  error val[0], "Virtual (@) can only be applied to a Resource Expression"
1383
1650
  end
@@ -1388,10 +1655,10 @@ module_eval(<<'.,.,', 'egrammar.ra', 115)
1388
1655
  end
1389
1656
  .,.,
1390
1657
 
1391
- module_eval(<<'.,.,', 'egrammar.ra', 126)
1658
+ module_eval(<<'.,.,', 'egrammar.ra', 128)
1392
1659
  def _reduce_23(val, _values, result)
1393
1660
  result = val[1]
1394
- unless Factory.set_resource_form(result, :exported)
1661
+ unless Factory.set_resource_form(result, 'exported')
1395
1662
  # This is equivalent to a syntax error - additional semantic restrictions apply
1396
1663
  error val[0], "Exported (@@) can only be applied to a Resource Expression"
1397
1664
  end
@@ -1402,7 +1669,7 @@ module_eval(<<'.,.,', 'egrammar.ra', 126)
1402
1669
  end
1403
1670
  .,.,
1404
1671
 
1405
- module_eval(<<'.,.,', 'egrammar.ra', 137)
1672
+ module_eval(<<'.,.,', 'egrammar.ra', 139)
1406
1673
  def _reduce_24(val, _values, result)
1407
1674
  bodies = [Factory.RESOURCE_BODY(val[2], val[4])] + val[5]
1408
1675
  result = Factory.RESOURCE(val[0], bodies)
@@ -1412,7 +1679,7 @@ module_eval(<<'.,.,', 'egrammar.ra', 137)
1412
1679
  end
1413
1680
  .,.,
1414
1681
 
1415
- module_eval(<<'.,.,', 'egrammar.ra', 144)
1682
+ module_eval(<<'.,.,', 'egrammar.ra', 146)
1416
1683
  def _reduce_25(val, _values, result)
1417
1684
  result = Factory.RESOURCE(Factory.fqn(token_text(val[0])), val[2])
1418
1685
  loc result, val[0], val[4]
@@ -1421,7 +1688,7 @@ module_eval(<<'.,.,', 'egrammar.ra', 144)
1421
1688
  end
1422
1689
  .,.,
1423
1690
 
1424
- module_eval(<<'.,.,', 'egrammar.ra', 153)
1691
+ module_eval(<<'.,.,', 'egrammar.ra', 155)
1425
1692
  def _reduce_26(val, _values, result)
1426
1693
  result = case Factory.resource_shape(val[0])
1427
1694
  when :resource, :class
@@ -1429,7 +1696,7 @@ module_eval(<<'.,.,', 'egrammar.ra', 153)
1429
1696
  # If the attribute operations does not include +>, then the found expression
1430
1697
  # is actually a LEFT followed by LITERAL_HASH
1431
1698
  #
1432
- unless tmp = transform_resource_wo_title(val[0], val[2])
1699
+ unless tmp = transform_resource_wo_title(val[0], val[2], val[1], val[4])
1433
1700
  error val[1], "Syntax error resource body without title or hash with +>"
1434
1701
  end
1435
1702
  tmp
@@ -1447,42 +1714,42 @@ module_eval(<<'.,.,', 'egrammar.ra', 153)
1447
1714
  end
1448
1715
  .,.,
1449
1716
 
1450
- module_eval(<<'.,.,', 'egrammar.ra', 175)
1717
+ module_eval(<<'.,.,', 'egrammar.ra', 177)
1451
1718
  def _reduce_27(val, _values, result)
1452
1719
  result = Factory.RESOURCE_BODY(val[0], val[2])
1453
1720
  result
1454
1721
  end
1455
1722
  .,.,
1456
1723
 
1457
- module_eval(<<'.,.,', 'egrammar.ra', 178)
1724
+ module_eval(<<'.,.,', 'egrammar.ra', 180)
1458
1725
  def _reduce_28(val, _values, result)
1459
1726
  result = [val[0]]
1460
1727
  result
1461
1728
  end
1462
1729
  .,.,
1463
1730
 
1464
- module_eval(<<'.,.,', 'egrammar.ra', 179)
1731
+ module_eval(<<'.,.,', 'egrammar.ra', 181)
1465
1732
  def _reduce_29(val, _values, result)
1466
1733
  result = val[0].push val[2]
1467
1734
  result
1468
1735
  end
1469
1736
  .,.,
1470
1737
 
1471
- module_eval(<<'.,.,', 'egrammar.ra', 185)
1738
+ module_eval(<<'.,.,', 'egrammar.ra', 187)
1472
1739
  def _reduce_30(val, _values, result)
1473
1740
  result = []
1474
1741
  result
1475
1742
  end
1476
1743
  .,.,
1477
1744
 
1478
- module_eval(<<'.,.,', 'egrammar.ra', 186)
1745
+ module_eval(<<'.,.,', 'egrammar.ra', 188)
1479
1746
  def _reduce_31(val, _values, result)
1480
1747
  result = []
1481
1748
  result
1482
1749
  end
1483
1750
  .,.,
1484
1751
 
1485
- module_eval(<<'.,.,', 'egrammar.ra', 187)
1752
+ module_eval(<<'.,.,', 'egrammar.ra', 189)
1486
1753
  def _reduce_32(val, _values, result)
1487
1754
  result = val[2]
1488
1755
  result
@@ -1493,193 +1760,198 @@ module_eval(<<'.,.,', 'egrammar.ra', 187)
1493
1760
 
1494
1761
  # reduce 34 omitted
1495
1762
 
1496
- module_eval(<<'.,.,', 'egrammar.ra', 194)
1497
- def _reduce_35(val, _values, result)
1498
- result = val[0][*val[2]] ; loc result, val[0], val[3]
1499
- result
1500
- end
1501
- .,.,
1763
+ # reduce 35 omitted
1502
1764
 
1503
- module_eval(<<'.,.,', 'egrammar.ra', 195)
1504
- def _reduce_36(val, _values, result)
1505
- result = val[0].in val[2] ; loc result, val[1]
1506
- result
1507
- end
1508
- .,.,
1765
+ # reduce 36 omitted
1509
1766
 
1510
- module_eval(<<'.,.,', 'egrammar.ra', 196)
1767
+ module_eval(<<'.,.,', 'egrammar.ra', 198)
1511
1768
  def _reduce_37(val, _values, result)
1512
- result = val[0] =~ val[2] ; loc result, val[1]
1769
+ result = val[0].in val[2] ; loc result, val[1]
1513
1770
  result
1514
1771
  end
1515
1772
  .,.,
1516
1773
 
1517
- module_eval(<<'.,.,', 'egrammar.ra', 197)
1774
+ module_eval(<<'.,.,', 'egrammar.ra', 199)
1518
1775
  def _reduce_38(val, _values, result)
1519
- result = val[0].mne val[2] ; loc result, val[1]
1776
+ result = val[0] =~ val[2] ; loc result, val[1]
1520
1777
  result
1521
1778
  end
1522
1779
  .,.,
1523
1780
 
1524
- module_eval(<<'.,.,', 'egrammar.ra', 198)
1781
+ module_eval(<<'.,.,', 'egrammar.ra', 200)
1525
1782
  def _reduce_39(val, _values, result)
1526
- result = val[0] + val[2] ; loc result, val[1]
1783
+ result = val[0].mne val[2] ; loc result, val[1]
1527
1784
  result
1528
1785
  end
1529
1786
  .,.,
1530
1787
 
1531
- module_eval(<<'.,.,', 'egrammar.ra', 199)
1788
+ module_eval(<<'.,.,', 'egrammar.ra', 201)
1532
1789
  def _reduce_40(val, _values, result)
1533
- result = val[0] - val[2] ; loc result, val[1]
1790
+ result = val[0] + val[2] ; loc result, val[1]
1534
1791
  result
1535
1792
  end
1536
1793
  .,.,
1537
1794
 
1538
- module_eval(<<'.,.,', 'egrammar.ra', 200)
1795
+ module_eval(<<'.,.,', 'egrammar.ra', 202)
1539
1796
  def _reduce_41(val, _values, result)
1540
- result = val[0] / val[2] ; loc result, val[1]
1797
+ result = val[0] - val[2] ; loc result, val[1]
1541
1798
  result
1542
1799
  end
1543
1800
  .,.,
1544
1801
 
1545
- module_eval(<<'.,.,', 'egrammar.ra', 201)
1802
+ module_eval(<<'.,.,', 'egrammar.ra', 203)
1546
1803
  def _reduce_42(val, _values, result)
1547
- result = val[0] * val[2] ; loc result, val[1]
1804
+ result = val[0] / val[2] ; loc result, val[1]
1548
1805
  result
1549
1806
  end
1550
1807
  .,.,
1551
1808
 
1552
- module_eval(<<'.,.,', 'egrammar.ra', 202)
1809
+ module_eval(<<'.,.,', 'egrammar.ra', 204)
1553
1810
  def _reduce_43(val, _values, result)
1554
- result = val[0] % val[2] ; loc result, val[1]
1811
+ result = val[0] * val[2] ; loc result, val[1]
1555
1812
  result
1556
1813
  end
1557
1814
  .,.,
1558
1815
 
1559
- module_eval(<<'.,.,', 'egrammar.ra', 203)
1816
+ module_eval(<<'.,.,', 'egrammar.ra', 205)
1560
1817
  def _reduce_44(val, _values, result)
1561
- result = val[0] << val[2] ; loc result, val[1]
1818
+ result = val[0] % val[2] ; loc result, val[1]
1562
1819
  result
1563
1820
  end
1564
1821
  .,.,
1565
1822
 
1566
- module_eval(<<'.,.,', 'egrammar.ra', 204)
1823
+ module_eval(<<'.,.,', 'egrammar.ra', 206)
1567
1824
  def _reduce_45(val, _values, result)
1568
- result = val[0] >> val[2] ; loc result, val[1]
1825
+ result = val[0] << val[2] ; loc result, val[1]
1569
1826
  result
1570
1827
  end
1571
1828
  .,.,
1572
1829
 
1573
- module_eval(<<'.,.,', 'egrammar.ra', 205)
1830
+ module_eval(<<'.,.,', 'egrammar.ra', 207)
1574
1831
  def _reduce_46(val, _values, result)
1575
- result = val[1].minus() ; loc result, val[0]
1832
+ result = val[0] >> val[2] ; loc result, val[1]
1576
1833
  result
1577
1834
  end
1578
1835
  .,.,
1579
1836
 
1580
- module_eval(<<'.,.,', 'egrammar.ra', 206)
1837
+ module_eval(<<'.,.,', 'egrammar.ra', 208)
1581
1838
  def _reduce_47(val, _values, result)
1582
- result = val[1].unfold() ; loc result, val[0]
1839
+ result = val[1].minus ; loc result, val[0]
1583
1840
  result
1584
1841
  end
1585
1842
  .,.,
1586
1843
 
1587
- module_eval(<<'.,.,', 'egrammar.ra', 207)
1844
+ module_eval(<<'.,.,', 'egrammar.ra', 209)
1588
1845
  def _reduce_48(val, _values, result)
1589
- result = val[0].ne val[2] ; loc result, val[1]
1846
+ result = val[1].unfold ; loc result, val[0]
1590
1847
  result
1591
1848
  end
1592
1849
  .,.,
1593
1850
 
1594
- module_eval(<<'.,.,', 'egrammar.ra', 208)
1851
+ module_eval(<<'.,.,', 'egrammar.ra', 210)
1595
1852
  def _reduce_49(val, _values, result)
1596
- result = val[0] == val[2] ; loc result, val[1]
1853
+ result = val[0].ne val[2] ; loc result, val[1]
1597
1854
  result
1598
1855
  end
1599
1856
  .,.,
1600
1857
 
1601
- module_eval(<<'.,.,', 'egrammar.ra', 209)
1858
+ module_eval(<<'.,.,', 'egrammar.ra', 211)
1602
1859
  def _reduce_50(val, _values, result)
1603
- result = val[0] > val[2] ; loc result, val[1]
1860
+ result = val[0].eq val[2] ; loc result, val[1]
1604
1861
  result
1605
1862
  end
1606
1863
  .,.,
1607
1864
 
1608
- module_eval(<<'.,.,', 'egrammar.ra', 210)
1865
+ module_eval(<<'.,.,', 'egrammar.ra', 212)
1609
1866
  def _reduce_51(val, _values, result)
1610
- result = val[0] >= val[2] ; loc result, val[1]
1867
+ result = val[0] > val[2] ; loc result, val[1]
1611
1868
  result
1612
1869
  end
1613
1870
  .,.,
1614
1871
 
1615
- module_eval(<<'.,.,', 'egrammar.ra', 211)
1872
+ module_eval(<<'.,.,', 'egrammar.ra', 213)
1616
1873
  def _reduce_52(val, _values, result)
1617
- result = val[0] < val[2] ; loc result, val[1]
1874
+ result = val[0] >= val[2] ; loc result, val[1]
1618
1875
  result
1619
1876
  end
1620
1877
  .,.,
1621
1878
 
1622
- module_eval(<<'.,.,', 'egrammar.ra', 212)
1879
+ module_eval(<<'.,.,', 'egrammar.ra', 214)
1623
1880
  def _reduce_53(val, _values, result)
1624
- result = val[0] <= val[2] ; loc result, val[1]
1881
+ result = val[0] < val[2] ; loc result, val[1]
1625
1882
  result
1626
1883
  end
1627
1884
  .,.,
1628
1885
 
1629
- module_eval(<<'.,.,', 'egrammar.ra', 213)
1886
+ module_eval(<<'.,.,', 'egrammar.ra', 215)
1630
1887
  def _reduce_54(val, _values, result)
1631
- result = val[1].not ; loc result, val[0]
1888
+ result = val[0] <= val[2] ; loc result, val[1]
1632
1889
  result
1633
1890
  end
1634
1891
  .,.,
1635
1892
 
1636
- module_eval(<<'.,.,', 'egrammar.ra', 214)
1893
+ module_eval(<<'.,.,', 'egrammar.ra', 216)
1637
1894
  def _reduce_55(val, _values, result)
1638
- result = val[0].and val[2] ; loc result, val[1]
1895
+ result = val[1].not ; loc result, val[0]
1639
1896
  result
1640
1897
  end
1641
1898
  .,.,
1642
1899
 
1643
- module_eval(<<'.,.,', 'egrammar.ra', 215)
1900
+ module_eval(<<'.,.,', 'egrammar.ra', 217)
1644
1901
  def _reduce_56(val, _values, result)
1645
- result = val[0].or val[2] ; loc result, val[1]
1902
+ result = val[0].and val[2] ; loc result, val[1]
1646
1903
  result
1647
1904
  end
1648
1905
  .,.,
1649
1906
 
1650
- module_eval(<<'.,.,', 'egrammar.ra', 216)
1907
+ module_eval(<<'.,.,', 'egrammar.ra', 218)
1651
1908
  def _reduce_57(val, _values, result)
1652
- result = val[0].select(*val[2]) ; loc result, val[0]
1909
+ result = val[0].or val[2] ; loc result, val[1]
1653
1910
  result
1654
1911
  end
1655
1912
  .,.,
1656
1913
 
1657
- module_eval(<<'.,.,', 'egrammar.ra', 217)
1914
+ module_eval(<<'.,.,', 'egrammar.ra', 219)
1658
1915
  def _reduce_58(val, _values, result)
1659
- result = val[1].paren() ; loc result, val[0]
1916
+ result = val[0].select(*val[2]) ; loc result, val[0]
1660
1917
  result
1661
1918
  end
1662
1919
  .,.,
1663
1920
 
1664
- module_eval(<<'.,.,', 'egrammar.ra', 227)
1921
+ module_eval(<<'.,.,', 'egrammar.ra', 220)
1665
1922
  def _reduce_59(val, _values, result)
1666
- result = [val[0]]
1923
+ result = val[1].paren ; loc result, val[0]
1667
1924
  result
1668
1925
  end
1669
1926
  .,.,
1670
1927
 
1671
- module_eval(<<'.,.,', 'egrammar.ra', 228)
1928
+ module_eval(<<'.,.,', 'egrammar.ra', 221)
1672
1929
  def _reduce_60(val, _values, result)
1673
- result = val[0].push(val[2])
1930
+ result = val[1].paren ; loc result, val[0]
1674
1931
  result
1675
1932
  end
1676
1933
  .,.,
1677
1934
 
1678
- # reduce 61 omitted
1935
+ module_eval(<<'.,.,', 'egrammar.ra', 224)
1936
+ def _reduce_61(val, _values, result)
1937
+ result = val[0].access(val[2]) ; loc result, val[0], val[4]
1938
+ result
1939
+ end
1940
+ .,.,
1679
1941
 
1680
- # reduce 62 omitted
1942
+ module_eval(<<'.,.,', 'egrammar.ra', 233)
1943
+ def _reduce_62(val, _values, result)
1944
+ result = [val[0]]
1945
+ result
1946
+ end
1947
+ .,.,
1681
1948
 
1682
- # reduce 63 omitted
1949
+ module_eval(<<'.,.,', 'egrammar.ra', 234)
1950
+ def _reduce_63(val, _values, result)
1951
+ result = val[0].push(val[2])
1952
+ result
1953
+ end
1954
+ .,.,
1683
1955
 
1684
1956
  # reduce 64 omitted
1685
1957
 
@@ -1707,116 +1979,146 @@ module_eval(<<'.,.,', 'egrammar.ra', 228)
1707
1979
 
1708
1980
  # reduce 76 omitted
1709
1981
 
1710
- module_eval(<<'.,.,', 'egrammar.ra', 247)
1711
- def _reduce_77(val, _values, result)
1982
+ # reduce 77 omitted
1983
+
1984
+ # reduce 78 omitted
1985
+
1986
+ # reduce 79 omitted
1987
+
1988
+ # reduce 80 omitted
1989
+
1990
+ # reduce 81 omitted
1991
+
1992
+ # reduce 82 omitted
1993
+
1994
+ # reduce 83 omitted
1995
+
1996
+ # reduce 84 omitted
1997
+
1998
+ module_eval(<<'.,.,', 'egrammar.ra', 260)
1999
+ def _reduce_85(val, _values, result)
1712
2000
  result = Factory.NUMBER(val[0][:value]) ; loc result, val[0]
1713
2001
  result
1714
2002
  end
1715
2003
  .,.,
1716
2004
 
1717
- module_eval(<<'.,.,', 'egrammar.ra', 248)
1718
- def _reduce_78(val, _values, result)
2005
+ module_eval(<<'.,.,', 'egrammar.ra', 261)
2006
+ def _reduce_86(val, _values, result)
1719
2007
  result = Factory.literal(val[0][:value]) ; loc result, val[0]
1720
2008
  result
1721
2009
  end
1722
2010
  .,.,
1723
2011
 
1724
- module_eval(<<'.,.,', 'egrammar.ra', 249)
1725
- def _reduce_79(val, _values, result)
2012
+ module_eval(<<'.,.,', 'egrammar.ra', 262)
2013
+ def _reduce_87(val, _values, result)
1726
2014
  result = Factory.literal(:default) ; loc result, val[0]
1727
2015
  result
1728
2016
  end
1729
2017
  .,.,
1730
2018
 
1731
- module_eval(<<'.,.,', 'egrammar.ra', 250)
1732
- def _reduce_80(val, _values, result)
2019
+ module_eval(<<'.,.,', 'egrammar.ra', 263)
2020
+ def _reduce_88(val, _values, result)
1733
2021
  result = Factory.literal(:undef) ; loc result, val[0]
1734
2022
  result
1735
2023
  end
1736
2024
  .,.,
1737
2025
 
1738
- module_eval(<<'.,.,', 'egrammar.ra', 251)
1739
- def _reduce_81(val, _values, result)
2026
+ module_eval(<<'.,.,', 'egrammar.ra', 264)
2027
+ def _reduce_89(val, _values, result)
1740
2028
  result = Factory.QNAME_OR_NUMBER(val[0][:value]) ; loc result, val[0]
1741
2029
  result
1742
2030
  end
1743
2031
  .,.,
1744
2032
 
1745
- module_eval(<<'.,.,', 'egrammar.ra', 260)
1746
- def _reduce_82(val, _values, result)
1747
- result = Factory.CALL_NAMED(val[0], true, val[2])
1748
- loc result, val[0], val[4]
2033
+ module_eval(<<'.,.,', 'egrammar.ra', 273)
2034
+ def _reduce_90(val, _values, result)
2035
+ result = Factory.CALL_NAMED(val[0], true, val[1])
2036
+ loc result, val[0], val[3]
1749
2037
 
1750
2038
  result
1751
2039
  end
1752
2040
  .,.,
1753
2041
 
1754
- module_eval(<<'.,.,', 'egrammar.ra', 264)
1755
- def _reduce_83(val, _values, result)
2042
+ module_eval(<<'.,.,', 'egrammar.ra', 277)
2043
+ def _reduce_91(val, _values, result)
1756
2044
  result = Factory.CALL_NAMED(val[0], true, [])
1757
- loc result, val[0], val[2]
2045
+ loc result, val[0], val[1]
1758
2046
 
1759
2047
  result
1760
2048
  end
1761
2049
  .,.,
1762
2050
 
1763
- module_eval(<<'.,.,', 'egrammar.ra', 268)
1764
- def _reduce_84(val, _values, result)
1765
- result = Factory.CALL_NAMED(val[0], true, val[2])
2051
+ module_eval(<<'.,.,', 'egrammar.ra', 281)
2052
+ def _reduce_92(val, _values, result)
2053
+ result = Factory.CALL_NAMED(val[0], true, val[1])
1766
2054
  loc result, val[0], val[4]
1767
- result.lambda = val[5]
2055
+ result.lambda = val[4]
1768
2056
 
1769
2057
  result
1770
2058
  end
1771
2059
  .,.,
1772
2060
 
1773
- module_eval(<<'.,.,', 'egrammar.ra', 273)
1774
- def _reduce_85(val, _values, result)
2061
+ module_eval(<<'.,.,', 'egrammar.ra', 286)
2062
+ def _reduce_93(val, _values, result)
1775
2063
  result = Factory.CALL_NAMED(val[0], true, [])
1776
2064
  loc result, val[0], val[2]
1777
- result.lambda = val[3]
2065
+ result.lambda = val[2]
1778
2066
 
1779
2067
  result
1780
2068
  end
1781
2069
  .,.,
1782
2070
 
1783
- module_eval(<<'.,.,', 'egrammar.ra', 281)
1784
- def _reduce_86(val, _values, result)
2071
+ module_eval(<<'.,.,', 'egrammar.ra', 292)
2072
+ def _reduce_94(val, _values, result)
1785
2073
  result = val[0]
1786
2074
  result
1787
2075
  end
1788
2076
  .,.,
1789
2077
 
1790
- module_eval(<<'.,.,', 'egrammar.ra', 282)
1791
- def _reduce_87(val, _values, result)
2078
+ module_eval(<<'.,.,', 'egrammar.ra', 293)
2079
+ def _reduce_95(val, _values, result)
2080
+ result = Factory.QNAME(val[0][:value]); loc result, val[0]
2081
+ result
2082
+ end
2083
+ .,.,
2084
+
2085
+ module_eval(<<'.,.,', 'egrammar.ra', 298)
2086
+ def _reduce_96(val, _values, result)
2087
+ result = val[0]
2088
+ result
2089
+ end
2090
+ .,.,
2091
+
2092
+ module_eval(<<'.,.,', 'egrammar.ra', 299)
2093
+ def _reduce_97(val, _values, result)
1792
2094
  result = val[0]; val[0].lambda = val[1]
1793
2095
  result
1794
2096
  end
1795
2097
  .,.,
1796
2098
 
1797
- module_eval(<<'.,.,', 'egrammar.ra', 285)
1798
- def _reduce_88(val, _values, result)
2099
+ module_eval(<<'.,.,', 'egrammar.ra', 302)
2100
+ def _reduce_98(val, _values, result)
1799
2101
  result = Factory.CALL_METHOD(val[0], val[2]); loc result, val[1], val[3]
1800
2102
  result
1801
2103
  end
1802
2104
  .,.,
1803
2105
 
1804
- module_eval(<<'.,.,', 'egrammar.ra', 286)
1805
- def _reduce_89(val, _values, result)
2106
+ module_eval(<<'.,.,', 'egrammar.ra', 303)
2107
+ def _reduce_99(val, _values, result)
1806
2108
  result = Factory.CALL_METHOD(val[0], []); loc result, val[1], val[3]
1807
2109
  result
1808
2110
  end
1809
2111
  .,.,
1810
2112
 
1811
- module_eval(<<'.,.,', 'egrammar.ra', 287)
1812
- def _reduce_90(val, _values, result)
2113
+ module_eval(<<'.,.,', 'egrammar.ra', 304)
2114
+ def _reduce_100(val, _values, result)
1813
2115
  result = Factory.CALL_METHOD(val[0], []); loc result, val[0]
1814
2116
  result
1815
2117
  end
1816
2118
  .,.,
1817
2119
 
1818
- module_eval(<<'.,.,', 'egrammar.ra', 291)
1819
- def _reduce_91(val, _values, result)
2120
+ module_eval(<<'.,.,', 'egrammar.ra', 308)
2121
+ def _reduce_101(val, _values, result)
1820
2122
  result = val[0].dot(Factory.fqn(val[2][:value]))
1821
2123
  loc result, val[1], val[2]
1822
2124
 
@@ -1824,45 +2126,54 @@ module_eval(<<'.,.,', 'egrammar.ra', 291)
1824
2126
  end
1825
2127
  .,.,
1826
2128
 
1827
- module_eval(<<'.,.,', 'egrammar.ra', 299)
1828
- def _reduce_92(val, _values, result)
1829
- result = Factory.LAMBDA(val[0][:value], val[1][:value])
1830
- loc result, val[0][:start], val[1][:end]
2129
+ module_eval(<<'.,.,', 'egrammar.ra', 312)
2130
+ def _reduce_102(val, _values, result)
2131
+ result = val[0].dot(Factory.fqn(val[2][:value]))
2132
+ loc result, val[1], val[2]
2133
+
2134
+ result
2135
+ end
2136
+ .,.,
2137
+
2138
+ module_eval(<<'.,.,', 'egrammar.ra', 320)
2139
+ def _reduce_103(val, _values, result)
2140
+ result = Factory.LAMBDA(val[0][:value], val[2][:value], val[1])
2141
+ loc result, val[0][:start], val[2][:end]
1831
2142
 
1832
2143
  result
1833
2144
  end
1834
2145
  .,.,
1835
2146
 
1836
- module_eval(<<'.,.,', 'egrammar.ra', 304)
1837
- def _reduce_93(val, _values, result)
2147
+ module_eval(<<'.,.,', 'egrammar.ra', 325)
2148
+ def _reduce_104(val, _values, result)
1838
2149
  result = {:end => val[2], :value =>val[1] }
1839
2150
  result
1840
2151
  end
1841
2152
  .,.,
1842
2153
 
1843
- module_eval(<<'.,.,', 'egrammar.ra', 305)
1844
- def _reduce_94(val, _values, result)
2154
+ module_eval(<<'.,.,', 'egrammar.ra', 326)
2155
+ def _reduce_105(val, _values, result)
1845
2156
  result = {:end => val[1], :value => nil }
1846
2157
  result
1847
2158
  end
1848
2159
  .,.,
1849
2160
 
1850
- module_eval(<<'.,.,', 'egrammar.ra', 309)
1851
- def _reduce_95(val, _values, result)
2161
+ module_eval(<<'.,.,', 'egrammar.ra', 330)
2162
+ def _reduce_106(val, _values, result)
1852
2163
  result = {:start => val[0], :value => [] }
1853
2164
  result
1854
2165
  end
1855
2166
  .,.,
1856
2167
 
1857
- module_eval(<<'.,.,', 'egrammar.ra', 310)
1858
- def _reduce_96(val, _values, result)
2168
+ module_eval(<<'.,.,', 'egrammar.ra', 331)
2169
+ def _reduce_107(val, _values, result)
1859
2170
  result = {:start => val[0], :value => val[1] }
1860
2171
  result
1861
2172
  end
1862
2173
  .,.,
1863
2174
 
1864
- module_eval(<<'.,.,', 'egrammar.ra', 318)
1865
- def _reduce_97(val, _values, result)
2175
+ module_eval(<<'.,.,', 'egrammar.ra', 339)
2176
+ def _reduce_108(val, _values, result)
1866
2177
  result = val[1]
1867
2178
  loc(result, val[0], val[1])
1868
2179
 
@@ -1870,17 +2181,17 @@ module_eval(<<'.,.,', 'egrammar.ra', 318)
1870
2181
  end
1871
2182
  .,.,
1872
2183
 
1873
- module_eval(<<'.,.,', 'egrammar.ra', 325)
1874
- def _reduce_98(val, _values, result)
1875
- result = Factory.IF(val[0], Factory.block_or_expression(*val[2]), val[4])
2184
+ module_eval(<<'.,.,', 'egrammar.ra', 346)
2185
+ def _reduce_109(val, _values, result)
2186
+ result = Factory.IF(val[0], Factory.block_or_expression(val[2]), val[4])
1876
2187
  loc(result, val[0], (val[4] ? val[4] : val[3]))
1877
2188
 
1878
2189
  result
1879
2190
  end
1880
2191
  .,.,
1881
2192
 
1882
- module_eval(<<'.,.,', 'egrammar.ra', 329)
1883
- def _reduce_99(val, _values, result)
2193
+ module_eval(<<'.,.,', 'egrammar.ra', 350)
2194
+ def _reduce_110(val, _values, result)
1884
2195
  result = Factory.IF(val[0], nil, val[3])
1885
2196
  loc(result, val[0], (val[3] ? val[3] : val[2]))
1886
2197
 
@@ -1888,10 +2199,10 @@ module_eval(<<'.,.,', 'egrammar.ra', 329)
1888
2199
  end
1889
2200
  .,.,
1890
2201
 
1891
- # reduce 100 omitted
2202
+ # reduce 111 omitted
1892
2203
 
1893
- module_eval(<<'.,.,', 'egrammar.ra', 337)
1894
- def _reduce_101(val, _values, result)
2204
+ module_eval(<<'.,.,', 'egrammar.ra', 358)
2205
+ def _reduce_112(val, _values, result)
1895
2206
  result = val[1]
1896
2207
  loc(result, val[0], val[1])
1897
2208
 
@@ -1899,62 +2210,62 @@ module_eval(<<'.,.,', 'egrammar.ra', 337)
1899
2210
  end
1900
2211
  .,.,
1901
2212
 
1902
- module_eval(<<'.,.,', 'egrammar.ra', 341)
1903
- def _reduce_102(val, _values, result)
1904
- result = Factory.block_or_expression(*val[2])
2213
+ module_eval(<<'.,.,', 'egrammar.ra', 362)
2214
+ def _reduce_113(val, _values, result)
2215
+ result = Factory.block_or_expression(val[2])
1905
2216
  loc result, val[0], val[3]
1906
2217
 
1907
2218
  result
1908
2219
  end
1909
2220
  .,.,
1910
2221
 
1911
- module_eval(<<'.,.,', 'egrammar.ra', 345)
1912
- def _reduce_103(val, _values, result)
2222
+ module_eval(<<'.,.,', 'egrammar.ra', 366)
2223
+ def _reduce_114(val, _values, result)
1913
2224
  result = nil # don't think a nop is needed here either
1914
2225
 
1915
2226
  result
1916
2227
  end
1917
2228
  .,.,
1918
2229
 
1919
- module_eval(<<'.,.,', 'egrammar.ra', 352)
1920
- def _reduce_104(val, _values, result)
1921
- result = Factory.UNLESS(val[1], Factory.block_or_expression(*val[3]), val[5])
2230
+ module_eval(<<'.,.,', 'egrammar.ra', 373)
2231
+ def _reduce_115(val, _values, result)
2232
+ result = Factory.UNLESS(val[1], Factory.block_or_expression(val[3]), val[5])
1922
2233
  loc result, val[0], val[4]
1923
2234
 
1924
2235
  result
1925
2236
  end
1926
2237
  .,.,
1927
2238
 
1928
- module_eval(<<'.,.,', 'egrammar.ra', 356)
1929
- def _reduce_105(val, _values, result)
1930
- result = Factory.UNLESS(val[1], nil, nil)
2239
+ module_eval(<<'.,.,', 'egrammar.ra', 377)
2240
+ def _reduce_116(val, _values, result)
2241
+ result = Factory.UNLESS(val[1], nil, val[4])
1931
2242
  loc result, val[0], val[4]
1932
2243
 
1933
2244
  result
1934
2245
  end
1935
2246
  .,.,
1936
2247
 
1937
- # reduce 106 omitted
2248
+ # reduce 117 omitted
1938
2249
 
1939
- module_eval(<<'.,.,', 'egrammar.ra', 366)
1940
- def _reduce_107(val, _values, result)
1941
- result = Factory.block_or_expression(*val[2])
2250
+ module_eval(<<'.,.,', 'egrammar.ra', 387)
2251
+ def _reduce_118(val, _values, result)
2252
+ result = Factory.block_or_expression(val[2])
1942
2253
  loc result, val[0], val[3]
1943
2254
 
1944
2255
  result
1945
2256
  end
1946
2257
  .,.,
1947
2258
 
1948
- module_eval(<<'.,.,', 'egrammar.ra', 370)
1949
- def _reduce_108(val, _values, result)
2259
+ module_eval(<<'.,.,', 'egrammar.ra', 391)
2260
+ def _reduce_119(val, _values, result)
1950
2261
  result = nil # don't think a nop is needed here either
1951
2262
 
1952
2263
  result
1953
2264
  end
1954
2265
  .,.,
1955
2266
 
1956
- module_eval(<<'.,.,', 'egrammar.ra', 377)
1957
- def _reduce_109(val, _values, result)
2267
+ module_eval(<<'.,.,', 'egrammar.ra', 398)
2268
+ def _reduce_120(val, _values, result)
1958
2269
  result = Factory.CASE(val[1], *val[3])
1959
2270
  loc result, val[0], val[4]
1960
2271
 
@@ -1962,65 +2273,65 @@ module_eval(<<'.,.,', 'egrammar.ra', 377)
1962
2273
  end
1963
2274
  .,.,
1964
2275
 
1965
- module_eval(<<'.,.,', 'egrammar.ra', 383)
1966
- def _reduce_110(val, _values, result)
2276
+ module_eval(<<'.,.,', 'egrammar.ra', 404)
2277
+ def _reduce_121(val, _values, result)
1967
2278
  result = [val[0]]
1968
2279
  result
1969
2280
  end
1970
2281
  .,.,
1971
2282
 
1972
- module_eval(<<'.,.,', 'egrammar.ra', 384)
1973
- def _reduce_111(val, _values, result)
2283
+ module_eval(<<'.,.,', 'egrammar.ra', 405)
2284
+ def _reduce_122(val, _values, result)
1974
2285
  result = val[0].push val[1]
1975
2286
  result
1976
2287
  end
1977
2288
  .,.,
1978
2289
 
1979
- module_eval(<<'.,.,', 'egrammar.ra', 389)
1980
- def _reduce_112(val, _values, result)
2290
+ module_eval(<<'.,.,', 'egrammar.ra', 410)
2291
+ def _reduce_123(val, _values, result)
1981
2292
  result = Factory.WHEN(val[0], val[3]); loc result, val[1], val[4]
1982
2293
 
1983
2294
  result
1984
2295
  end
1985
2296
  .,.,
1986
2297
 
1987
- # reduce 113 omitted
2298
+ # reduce 124 omitted
1988
2299
 
1989
- # reduce 114 omitted
2300
+ # reduce 125 omitted
1990
2301
 
1991
- # reduce 115 omitted
2302
+ # reduce 126 omitted
1992
2303
 
1993
- module_eval(<<'.,.,', 'egrammar.ra', 405)
1994
- def _reduce_116(val, _values, result)
2304
+ module_eval(<<'.,.,', 'egrammar.ra', 426)
2305
+ def _reduce_127(val, _values, result)
1995
2306
  result = val[1]
1996
2307
 
1997
2308
  result
1998
2309
  end
1999
2310
  .,.,
2000
2311
 
2001
- module_eval(<<'.,.,', 'egrammar.ra', 410)
2002
- def _reduce_117(val, _values, result)
2312
+ module_eval(<<'.,.,', 'egrammar.ra', 431)
2313
+ def _reduce_128(val, _values, result)
2003
2314
  result = [val[0]]
2004
2315
  result
2005
2316
  end
2006
2317
  .,.,
2007
2318
 
2008
- module_eval(<<'.,.,', 'egrammar.ra', 411)
2009
- def _reduce_118(val, _values, result)
2319
+ module_eval(<<'.,.,', 'egrammar.ra', 432)
2320
+ def _reduce_129(val, _values, result)
2010
2321
  result = val[0].push val[2]
2011
2322
  result
2012
2323
  end
2013
2324
  .,.,
2014
2325
 
2015
- module_eval(<<'.,.,', 'egrammar.ra', 416)
2016
- def _reduce_119(val, _values, result)
2326
+ module_eval(<<'.,.,', 'egrammar.ra', 437)
2327
+ def _reduce_130(val, _values, result)
2017
2328
  result = Factory.MAP(val[0], val[2]) ; loc result, val[1]
2018
2329
  result
2019
2330
  end
2020
2331
  .,.,
2021
2332
 
2022
- module_eval(<<'.,.,', 'egrammar.ra', 426)
2023
- def _reduce_120(val, _values, result)
2333
+ module_eval(<<'.,.,', 'egrammar.ra', 447)
2334
+ def _reduce_131(val, _values, result)
2024
2335
  result = Factory.COLLECT(val[0], val[1], val[3])
2025
2336
  loc result, val[0], val[5]
2026
2337
 
@@ -2028,8 +2339,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 426)
2028
2339
  end
2029
2340
  .,.,
2030
2341
 
2031
- module_eval(<<'.,.,', 'egrammar.ra', 430)
2032
- def _reduce_121(val, _values, result)
2342
+ module_eval(<<'.,.,', 'egrammar.ra', 451)
2343
+ def _reduce_132(val, _values, result)
2033
2344
  result = Factory.COLLECT(val[0], val[1], [])
2034
2345
  loc result, val[0], val[1]
2035
2346
 
@@ -2037,79 +2348,80 @@ module_eval(<<'.,.,', 'egrammar.ra', 430)
2037
2348
  end
2038
2349
  .,.,
2039
2350
 
2040
- module_eval(<<'.,.,', 'egrammar.ra', 435)
2041
- def _reduce_122(val, _values, result)
2351
+ module_eval(<<'.,.,', 'egrammar.ra', 456)
2352
+ def _reduce_133(val, _values, result)
2042
2353
  result = Factory.VIRTUAL_QUERY(val[1]) ; loc result, val[0], val[2]
2043
2354
  result
2044
2355
  end
2045
2356
  .,.,
2046
2357
 
2047
- module_eval(<<'.,.,', 'egrammar.ra', 436)
2048
- def _reduce_123(val, _values, result)
2358
+ module_eval(<<'.,.,', 'egrammar.ra', 457)
2359
+ def _reduce_134(val, _values, result)
2049
2360
  result = Factory.EXPORTED_QUERY(val[1]) ; loc result, val[0], val[2]
2050
2361
  result
2051
2362
  end
2052
2363
  .,.,
2053
2364
 
2054
- # reduce 124 omitted
2365
+ # reduce 135 omitted
2055
2366
 
2056
- # reduce 125 omitted
2367
+ # reduce 136 omitted
2057
2368
 
2058
- module_eval(<<'.,.,', 'egrammar.ra', 445)
2059
- def _reduce_126(val, _values, result)
2369
+ module_eval(<<'.,.,', 'egrammar.ra', 466)
2370
+ def _reduce_137(val, _values, result)
2060
2371
  result = []
2061
2372
  result
2062
2373
  end
2063
2374
  .,.,
2064
2375
 
2065
- module_eval(<<'.,.,', 'egrammar.ra', 446)
2066
- def _reduce_127(val, _values, result)
2376
+ module_eval(<<'.,.,', 'egrammar.ra', 467)
2377
+ def _reduce_138(val, _values, result)
2067
2378
  result = [val[0]]
2068
2379
  result
2069
2380
  end
2070
2381
  .,.,
2071
2382
 
2072
- module_eval(<<'.,.,', 'egrammar.ra', 447)
2073
- def _reduce_128(val, _values, result)
2383
+ module_eval(<<'.,.,', 'egrammar.ra', 468)
2384
+ def _reduce_139(val, _values, result)
2074
2385
  result = val[0].push(val[2])
2075
2386
  result
2076
2387
  end
2077
2388
  .,.,
2078
2389
 
2079
- # reduce 129 omitted
2390
+ # reduce 140 omitted
2080
2391
 
2081
- # reduce 130 omitted
2392
+ # reduce 141 omitted
2082
2393
 
2083
- module_eval(<<'.,.,', 'egrammar.ra', 463)
2084
- def _reduce_131(val, _values, result)
2085
- result = Factory.ATTRIBUTE_OP(val[0][:value], :'=>', val[2])
2394
+ module_eval(<<'.,.,', 'egrammar.ra', 483)
2395
+ def _reduce_142(val, _values, result)
2396
+ result = Factory.ATTRIBUTE_OP(val[0][:value], '=>', val[2])
2086
2397
  loc result, val[0], val[2]
2087
2398
 
2088
2399
  result
2089
2400
  end
2090
2401
  .,.,
2091
2402
 
2092
- module_eval(<<'.,.,', 'egrammar.ra', 467)
2093
- def _reduce_132(val, _values, result)
2094
- result = Factory.ATTRIBUTE_OP(val[0][:value], :'+>', val[2])
2403
+ module_eval(<<'.,.,', 'egrammar.ra', 487)
2404
+ def _reduce_143(val, _values, result)
2405
+ result = Factory.ATTRIBUTE_OP(val[0][:value], '+>', val[2])
2095
2406
  loc result, val[0], val[2]
2096
2407
 
2097
2408
  result
2098
2409
  end
2099
2410
  .,.,
2100
2411
 
2101
- module_eval(<<'.,.,', 'egrammar.ra', 471)
2102
- def _reduce_133(val, _values, result)
2412
+ module_eval(<<'.,.,', 'egrammar.ra', 491)
2413
+ def _reduce_144(val, _values, result)
2103
2414
  result = Factory.ATTRIBUTES_OP(val[2]) ; loc result, val[0], val[2]
2104
2415
 
2105
2416
  result
2106
2417
  end
2107
2418
  .,.,
2108
2419
 
2109
- module_eval(<<'.,.,', 'egrammar.ra', 480)
2110
- def _reduce_134(val, _values, result)
2111
- result = add_definition(Factory.DEFINITION(classname(val[1][:value]), val[2], val[4]))
2112
- loc result, val[0], val[5]
2420
+ module_eval(<<'.,.,', 'egrammar.ra', 500)
2421
+ def _reduce_145(val, _values, result)
2422
+ definition = Factory.DEFINITION(classname(val[1][:value]), val[2], val[4])
2423
+ loc(definition, val[0], val[5])
2424
+ result = add_definition(definition)
2113
2425
  # New lexer does not keep track of this, this is done in validation
2114
2426
  if @lexer.respond_to?(:'indefine=')
2115
2427
  @lexer.indefine = false
@@ -2119,535 +2431,708 @@ module_eval(<<'.,.,', 'egrammar.ra', 480)
2119
2431
  end
2120
2432
  .,.,
2121
2433
 
2122
- module_eval(<<'.,.,', 'egrammar.ra', 494)
2123
- def _reduce_135(val, _values, result)
2434
+ module_eval(<<'.,.,', 'egrammar.ra', 512)
2435
+ def _reduce_146(val, _values, result)
2436
+ definition = Factory.APPLICATION(classname(val[1][:value]), val[2], val[4])
2437
+ loc(definition, val[0], val[5])
2438
+ result = add_definition(definition)
2439
+
2440
+ result
2441
+ end
2442
+ .,.,
2443
+
2444
+ module_eval(<<'.,.,', 'egrammar.ra', 519)
2445
+ def _reduce_147(val, _values, result)
2446
+ result = Factory.CAPABILITY_MAPPING(val[1][:value],
2447
+ Factory.QNAME(classname(val[0][:value])),
2448
+ classname(val[2][:value]), val[4])
2449
+ loc result, val[0], val[6]
2450
+ add_mapping(result)
2451
+
2452
+ result
2453
+ end
2454
+ .,.,
2455
+
2456
+ module_eval(<<'.,.,', 'egrammar.ra', 526)
2457
+ def _reduce_148(val, _values, result)
2458
+ result = Factory.CAPABILITY_MAPPING(val[1][:value],
2459
+ val[0],
2460
+ classname(val[2][:value]), val[4])
2461
+ loc result, val[0], val[6]
2462
+ add_mapping(result)
2463
+
2464
+ result
2465
+ end
2466
+ .,.,
2467
+
2468
+ # reduce 149 omitted
2469
+
2470
+ # reduce 150 omitted
2471
+
2472
+ module_eval(<<'.,.,', 'egrammar.ra', 543)
2473
+ def _reduce_151(val, _values, result)
2124
2474
  # Remove this class' name from the namestack as all nested classes have been parsed
2125
2475
  namepop
2126
- result = add_definition(Factory.HOSTCLASS(classname(val[1][:value]), val[2], token_text(val[3]), val[5]))
2127
- loc result, val[0], val[6]
2476
+ definition = Factory.HOSTCLASS(classname(val[1][:value]), val[2], token_text(val[3]), val[5])
2477
+ loc(definition, val[0], val[6])
2478
+ result = add_definition(definition)
2128
2479
 
2129
2480
  result
2130
2481
  end
2131
2482
  .,.,
2132
2483
 
2133
- module_eval(<<'.,.,', 'egrammar.ra', 504)
2134
- def _reduce_136(val, _values, result)
2484
+ module_eval(<<'.,.,', 'egrammar.ra', 554)
2485
+ def _reduce_152(val, _values, result)
2135
2486
  namestack(val[0][:value]) ; result = val[0]
2136
2487
  result
2137
2488
  end
2138
2489
  .,.,
2139
2490
 
2140
- # reduce 137 omitted
2491
+ # reduce 153 omitted
2141
2492
 
2142
- # reduce 138 omitted
2493
+ # reduce 154 omitted
2143
2494
 
2144
- # reduce 139 omitted
2495
+ # reduce 155 omitted
2145
2496
 
2146
- module_eval(<<'.,.,', 'egrammar.ra', 513)
2147
- def _reduce_140(val, _values, result)
2497
+ module_eval(<<'.,.,', 'egrammar.ra', 563)
2498
+ def _reduce_156(val, _values, result)
2148
2499
  result = val[1]
2149
2500
  result
2150
2501
  end
2151
2502
  .,.,
2152
2503
 
2153
- # reduce 141 omitted
2504
+ # reduce 157 omitted
2154
2505
 
2155
- # reduce 142 omitted
2506
+ # reduce 158 omitted
2156
2507
 
2157
- module_eval(<<'.,.,', 'egrammar.ra', 530)
2158
- def _reduce_143(val, _values, result)
2159
- result = add_definition(Factory.NODE(val[1], val[3], val[5]))
2160
- loc result, val[0], val[6]
2508
+ module_eval(<<'.,.,', 'egrammar.ra', 580)
2509
+ def _reduce_159(val, _values, result)
2510
+ definition = Factory.SITE(val[2])
2511
+ loc(definition, val[0], val[3])
2512
+ result = add_definition(definition)
2161
2513
 
2162
2514
  result
2163
2515
  end
2164
2516
  .,.,
2165
2517
 
2166
- module_eval(<<'.,.,', 'egrammar.ra', 534)
2167
- def _reduce_144(val, _values, result)
2168
- result = add_definition(Factory.NODE(val[1], val[3], nil))
2169
- loc result, val[0], val[5]
2518
+ module_eval(<<'.,.,', 'egrammar.ra', 585)
2519
+ def _reduce_160(val, _values, result)
2520
+ definition = Factory.SITE(nil)
2521
+ loc(definition, val[0], val[2])
2522
+ result = add_definition(definition)
2170
2523
 
2171
2524
  result
2172
2525
  end
2173
2526
  .,.,
2174
2527
 
2175
- module_eval(<<'.,.,', 'egrammar.ra', 544)
2176
- def _reduce_145(val, _values, result)
2528
+ module_eval(<<'.,.,', 'egrammar.ra', 596)
2529
+ def _reduce_161(val, _values, result)
2530
+ definition = Factory.NODE(val[1], val[3], val[5])
2531
+ loc(definition, val[0], val[6])
2532
+ result = add_definition(definition)
2533
+
2534
+ result
2535
+ end
2536
+ .,.,
2537
+
2538
+ module_eval(<<'.,.,', 'egrammar.ra', 601)
2539
+ def _reduce_162(val, _values, result)
2540
+ definition = Factory.NODE(val[1], val[3], nil)
2541
+ loc(definition, val[0], val[5])
2542
+ result = add_definition(definition)
2543
+
2544
+ result
2545
+ end
2546
+ .,.,
2547
+
2548
+ module_eval(<<'.,.,', 'egrammar.ra', 612)
2549
+ def _reduce_163(val, _values, result)
2177
2550
  result = [result]
2178
2551
  result
2179
2552
  end
2180
2553
  .,.,
2181
2554
 
2182
- module_eval(<<'.,.,', 'egrammar.ra', 545)
2183
- def _reduce_146(val, _values, result)
2555
+ module_eval(<<'.,.,', 'egrammar.ra', 613)
2556
+ def _reduce_164(val, _values, result)
2184
2557
  result = val[0].push(val[2])
2185
2558
  result
2186
2559
  end
2187
2560
  .,.,
2188
2561
 
2189
- # reduce 147 omitted
2562
+ # reduce 165 omitted
2190
2563
 
2191
- # reduce 148 omitted
2564
+ # reduce 166 omitted
2192
2565
 
2193
- module_eval(<<'.,.,', 'egrammar.ra', 552)
2194
- def _reduce_149(val, _values, result)
2566
+ module_eval(<<'.,.,', 'egrammar.ra', 620)
2567
+ def _reduce_167(val, _values, result)
2195
2568
  result = Factory.literal(:default); loc result, val[0]
2196
2569
  result
2197
2570
  end
2198
2571
  .,.,
2199
2572
 
2200
- # reduce 150 omitted
2573
+ # reduce 168 omitted
2201
2574
 
2202
- module_eval(<<'.,.,', 'egrammar.ra', 556)
2203
- def _reduce_151(val, _values, result)
2575
+ module_eval(<<'.,.,', 'egrammar.ra', 624)
2576
+ def _reduce_169(val, _values, result)
2204
2577
  result = Factory.literal(val[0][:value]); loc result, val[0]
2205
2578
  result
2206
2579
  end
2207
2580
  .,.,
2208
2581
 
2209
- module_eval(<<'.,.,', 'egrammar.ra', 557)
2210
- def _reduce_152(val, _values, result)
2582
+ module_eval(<<'.,.,', 'egrammar.ra', 625)
2583
+ def _reduce_170(val, _values, result)
2211
2584
  result = Factory.concat(val[0], '.', val[2][:value]); loc result, val[0], val[2]
2212
2585
  result
2213
2586
  end
2214
2587
  .,.,
2215
2588
 
2216
- # reduce 153 omitted
2589
+ # reduce 171 omitted
2217
2590
 
2218
- # reduce 154 omitted
2591
+ # reduce 172 omitted
2219
2592
 
2220
- # reduce 155 omitted
2593
+ # reduce 173 omitted
2221
2594
 
2222
- module_eval(<<'.,.,', 'egrammar.ra', 566)
2223
- def _reduce_156(val, _values, result)
2595
+ module_eval(<<'.,.,', 'egrammar.ra', 634)
2596
+ def _reduce_174(val, _values, result)
2224
2597
  result = val[1]
2225
2598
  result
2226
2599
  end
2227
2600
  .,.,
2228
2601
 
2229
- # reduce 157 omitted
2602
+ module_eval(<<'.,.,', 'egrammar.ra', 640)
2603
+ def _reduce_175(val, _values, result)
2604
+ definition = Factory.FUNCTION(val[1][:value], val[2], val[5], val[3])
2605
+ loc(definition, val[0], val[6])
2606
+ result = add_definition(definition)
2607
+
2608
+ result
2609
+ end
2610
+ .,.,
2230
2611
 
2231
- # reduce 158 omitted
2612
+ module_eval(<<'.,.,', 'egrammar.ra', 646)
2613
+ def _reduce_176(val, _values, result)
2614
+ result = val[1]
2615
+ result
2616
+ end
2617
+ .,.,
2618
+
2619
+ module_eval(<<'.,.,', 'egrammar.ra', 647)
2620
+ def _reduce_177(val, _values, result)
2621
+ result = val[1].access(val[3]) ; loc result, val[1], val[4]
2622
+ result
2623
+ end
2624
+ .,.,
2232
2625
 
2233
- # reduce 159 omitted
2626
+ # reduce 178 omitted
2234
2627
 
2235
- module_eval(<<'.,.,', 'egrammar.ra', 585)
2236
- def _reduce_160(val, _values, result)
2237
- error val[0], "'class' is not a valid classname"
2628
+ # reduce 179 omitted
2629
+
2630
+ # reduce 180 omitted
2631
+
2632
+ # reduce 181 omitted
2633
+
2634
+ module_eval(<<'.,.,', 'egrammar.ra', 657)
2635
+ def _reduce_182(val, _values, result)
2636
+ error val[0], "'class' keyword not allowed at this location"
2238
2637
  result
2239
2638
  end
2240
2639
  .,.,
2241
2640
 
2242
- module_eval(<<'.,.,', 'egrammar.ra', 589)
2243
- def _reduce_161(val, _values, result)
2641
+ module_eval(<<'.,.,', 'egrammar.ra', 658)
2642
+ def _reduce_183(val, _values, result)
2643
+ error val[0], "A quoted string is not valid as a name here"
2644
+ result
2645
+ end
2646
+ .,.,
2647
+
2648
+ module_eval(<<'.,.,', 'egrammar.ra', 662)
2649
+ def _reduce_184(val, _values, result)
2244
2650
  result = []
2245
2651
  result
2246
2652
  end
2247
2653
  .,.,
2248
2654
 
2249
- module_eval(<<'.,.,', 'egrammar.ra', 590)
2250
- def _reduce_162(val, _values, result)
2655
+ module_eval(<<'.,.,', 'egrammar.ra', 663)
2656
+ def _reduce_185(val, _values, result)
2251
2657
  result = []
2252
2658
  result
2253
2659
  end
2254
2660
  .,.,
2255
2661
 
2256
- module_eval(<<'.,.,', 'egrammar.ra', 591)
2257
- def _reduce_163(val, _values, result)
2662
+ module_eval(<<'.,.,', 'egrammar.ra', 664)
2663
+ def _reduce_186(val, _values, result)
2664
+ result = []
2665
+ result
2666
+ end
2667
+ .,.,
2668
+
2669
+ module_eval(<<'.,.,', 'egrammar.ra', 665)
2670
+ def _reduce_187(val, _values, result)
2258
2671
  result = val[1]
2259
2672
  result
2260
2673
  end
2261
2674
  .,.,
2262
2675
 
2263
- module_eval(<<'.,.,', 'egrammar.ra', 595)
2264
- def _reduce_164(val, _values, result)
2676
+ module_eval(<<'.,.,', 'egrammar.ra', 666)
2677
+ def _reduce_188(val, _values, result)
2678
+ result = val[1]
2679
+ result
2680
+ end
2681
+ .,.,
2682
+
2683
+ module_eval(<<'.,.,', 'egrammar.ra', 670)
2684
+ def _reduce_189(val, _values, result)
2265
2685
  result = [val[0]]
2266
2686
  result
2267
2687
  end
2268
2688
  .,.,
2269
2689
 
2270
- module_eval(<<'.,.,', 'egrammar.ra', 596)
2271
- def _reduce_165(val, _values, result)
2690
+ module_eval(<<'.,.,', 'egrammar.ra', 671)
2691
+ def _reduce_190(val, _values, result)
2272
2692
  result = val[0].push(val[2])
2273
2693
  result
2274
2694
  end
2275
2695
  .,.,
2276
2696
 
2277
- # reduce 166 omitted
2697
+ # reduce 191 omitted
2278
2698
 
2279
- # reduce 167 omitted
2699
+ # reduce 192 omitted
2280
2700
 
2281
- # reduce 168 omitted
2701
+ # reduce 193 omitted
2282
2702
 
2283
- # reduce 169 omitted
2703
+ # reduce 194 omitted
2284
2704
 
2285
- module_eval(<<'.,.,', 'egrammar.ra', 608)
2286
- def _reduce_170(val, _values, result)
2705
+ module_eval(<<'.,.,', 'egrammar.ra', 683)
2706
+ def _reduce_195(val, _values, result)
2287
2707
  result = Factory.PARAM(val[0][:value], val[2]) ; loc result, val[0]
2288
2708
  result
2289
2709
  end
2290
2710
  .,.,
2291
2711
 
2292
- module_eval(<<'.,.,', 'egrammar.ra', 609)
2293
- def _reduce_171(val, _values, result)
2712
+ module_eval(<<'.,.,', 'egrammar.ra', 684)
2713
+ def _reduce_196(val, _values, result)
2294
2714
  result = Factory.PARAM(val[0][:value]); loc result, val[0]
2295
2715
  result
2296
2716
  end
2297
2717
  .,.,
2298
2718
 
2299
- module_eval(<<'.,.,', 'egrammar.ra', 612)
2300
- def _reduce_172(val, _values, result)
2301
- result = val[1]; val[1].captures_rest()
2719
+ module_eval(<<'.,.,', 'egrammar.ra', 687)
2720
+ def _reduce_197(val, _values, result)
2721
+ result = val[1]; val[1].captures_rest
2302
2722
  result
2303
2723
  end
2304
2724
  .,.,
2305
2725
 
2306
- module_eval(<<'.,.,', 'egrammar.ra', 615)
2307
- def _reduce_173(val, _values, result)
2726
+ module_eval(<<'.,.,', 'egrammar.ra', 690)
2727
+ def _reduce_198(val, _values, result)
2308
2728
  val[1].type_expr(val[0]) ; result = val[1]
2309
2729
  result
2310
2730
  end
2311
2731
  .,.,
2312
2732
 
2313
- module_eval(<<'.,.,', 'egrammar.ra', 618)
2314
- def _reduce_174(val, _values, result)
2733
+ module_eval(<<'.,.,', 'egrammar.ra', 693)
2734
+ def _reduce_199(val, _values, result)
2315
2735
  result = val[0]
2316
2736
  result
2317
2737
  end
2318
2738
  .,.,
2319
2739
 
2320
- module_eval(<<'.,.,', 'egrammar.ra', 619)
2321
- def _reduce_175(val, _values, result)
2322
- result = val[0][*val[2]] ; loc result, val[0], val[3]
2740
+ module_eval(<<'.,.,', 'egrammar.ra', 694)
2741
+ def _reduce_200(val, _values, result)
2742
+ result = val[0].access(val[2]) ; loc result, val[0], val[3]
2323
2743
  result
2324
2744
  end
2325
2745
  .,.,
2326
2746
 
2327
- module_eval(<<'.,.,', 'egrammar.ra', 624)
2328
- def _reduce_176(val, _values, result)
2329
- result = Factory.fqn(val[0][:value]).var ; loc result, val[0]
2747
+ module_eval(<<'.,.,', 'egrammar.ra', 699)
2748
+ def _reduce_201(val, _values, result)
2749
+ definition = Factory.TYPE_ASSIGNMENT(val[1], val[3])
2750
+ loc(definition, val[0], val[3])
2751
+ result = add_definition(definition)
2752
+
2330
2753
  result
2331
2754
  end
2332
2755
  .,.,
2333
2756
 
2334
- module_eval(<<'.,.,', 'egrammar.ra', 629)
2335
- def _reduce_177(val, _values, result)
2336
- result = Factory.RESERVED(val[0][:value]) ; loc result, val[0]
2757
+ module_eval(<<'.,.,', 'egrammar.ra', 708)
2758
+ def _reduce_202(val, _values, result)
2759
+ definition = Factory.TYPE_DEFINITION(val[1][:value], nil, val[3])
2760
+ loc(definition, val[0], val[4])
2761
+ result = add_definition(definition)
2762
+
2337
2763
  result
2338
2764
  end
2339
2765
  .,.,
2340
2766
 
2341
- module_eval(<<'.,.,', 'egrammar.ra', 630)
2342
- def _reduce_178(val, _values, result)
2343
- result = Factory.RESERVED(val[0][:value]) ; loc result, val[0]
2767
+ module_eval(<<'.,.,', 'egrammar.ra', 713)
2768
+ def _reduce_203(val, _values, result)
2769
+ definition = Factory.TYPE_DEFINITION(val[1][:value], val[3][:value], val[5])
2770
+ loc(definition, val[0], val[6])
2771
+ result = add_definition(definition)
2772
+
2773
+ result
2774
+ end
2775
+ .,.,
2776
+
2777
+ module_eval(<<'.,.,', 'egrammar.ra', 722)
2778
+ def _reduce_204(val, _values, result)
2779
+ fqn = Factory.fqn(val[0][:value])
2780
+ loc(fqn, val[0])
2781
+ fqn['offset'] += 1
2782
+ fqn['length'] -= 1
2783
+ result = fqn.var
2784
+ loc(result, val[0])
2785
+
2344
2786
  result
2345
2787
  end
2346
2788
  .,.,
2347
2789
 
2348
- module_eval(<<'.,.,', 'egrammar.ra', 631)
2349
- def _reduce_179(val, _values, result)
2790
+ module_eval(<<'.,.,', 'egrammar.ra', 733)
2791
+ def _reduce_205(val, _values, result)
2350
2792
  result = Factory.RESERVED(val[0][:value]) ; loc result, val[0]
2351
2793
  result
2352
2794
  end
2353
2795
  .,.,
2354
2796
 
2355
- module_eval(<<'.,.,', 'egrammar.ra', 632)
2356
- def _reduce_180(val, _values, result)
2797
+ module_eval(<<'.,.,', 'egrammar.ra', 734)
2798
+ def _reduce_206(val, _values, result)
2357
2799
  result = Factory.RESERVED(val[0][:value]) ; loc result, val[0]
2358
2800
  result
2359
2801
  end
2360
2802
  .,.,
2361
2803
 
2362
- module_eval(<<'.,.,', 'egrammar.ra', 638)
2363
- def _reduce_181(val, _values, result)
2804
+ module_eval(<<'.,.,', 'egrammar.ra', 740)
2805
+ def _reduce_207(val, _values, result)
2364
2806
  result = Factory.LIST(val[1]); loc result, val[0], val[3]
2365
2807
  result
2366
2808
  end
2367
2809
  .,.,
2368
2810
 
2369
- module_eval(<<'.,.,', 'egrammar.ra', 639)
2370
- def _reduce_182(val, _values, result)
2811
+ module_eval(<<'.,.,', 'egrammar.ra', 741)
2812
+ def _reduce_208(val, _values, result)
2371
2813
  result = Factory.literal([]) ; loc result, val[0], val[1]
2372
2814
  result
2373
2815
  end
2374
2816
  .,.,
2375
2817
 
2376
- module_eval(<<'.,.,', 'egrammar.ra', 640)
2377
- def _reduce_183(val, _values, result)
2818
+ module_eval(<<'.,.,', 'egrammar.ra', 742)
2819
+ def _reduce_209(val, _values, result)
2378
2820
  result = Factory.LIST(val[1]); loc result, val[0], val[3]
2379
2821
  result
2380
2822
  end
2381
2823
  .,.,
2382
2824
 
2383
- module_eval(<<'.,.,', 'egrammar.ra', 641)
2384
- def _reduce_184(val, _values, result)
2825
+ module_eval(<<'.,.,', 'egrammar.ra', 743)
2826
+ def _reduce_210(val, _values, result)
2385
2827
  result = Factory.literal([]) ; loc result, val[0], val[1]
2386
2828
  result
2387
2829
  end
2388
2830
  .,.,
2389
2831
 
2390
- module_eval(<<'.,.,', 'egrammar.ra', 644)
2391
- def _reduce_185(val, _values, result)
2832
+ module_eval(<<'.,.,', 'egrammar.ra', 746)
2833
+ def _reduce_211(val, _values, result)
2392
2834
  result = Factory.HASH(val[1]); loc result, val[0], val[2]
2393
2835
  result
2394
2836
  end
2395
2837
  .,.,
2396
2838
 
2397
- module_eval(<<'.,.,', 'egrammar.ra', 645)
2398
- def _reduce_186(val, _values, result)
2839
+ module_eval(<<'.,.,', 'egrammar.ra', 747)
2840
+ def _reduce_212(val, _values, result)
2399
2841
  result = Factory.HASH(val[1]); loc result, val[0], val[3]
2400
2842
  result
2401
2843
  end
2402
2844
  .,.,
2403
2845
 
2404
- module_eval(<<'.,.,', 'egrammar.ra', 646)
2405
- def _reduce_187(val, _values, result)
2846
+ module_eval(<<'.,.,', 'egrammar.ra', 748)
2847
+ def _reduce_213(val, _values, result)
2406
2848
  result = Factory.literal({}) ; loc result, val[0], val[1]
2407
2849
  result
2408
2850
  end
2409
2851
  .,.,
2410
2852
 
2411
- module_eval(<<'.,.,', 'egrammar.ra', 649)
2412
- def _reduce_188(val, _values, result)
2853
+ module_eval(<<'.,.,', 'egrammar.ra', 751)
2854
+ def _reduce_214(val, _values, result)
2413
2855
  result = [val[0]]
2414
2856
  result
2415
2857
  end
2416
2858
  .,.,
2417
2859
 
2418
- module_eval(<<'.,.,', 'egrammar.ra', 650)
2419
- def _reduce_189(val, _values, result)
2860
+ module_eval(<<'.,.,', 'egrammar.ra', 752)
2861
+ def _reduce_215(val, _values, result)
2420
2862
  result = val[0].push val[2]
2421
2863
  result
2422
2864
  end
2423
2865
  .,.,
2424
2866
 
2425
- module_eval(<<'.,.,', 'egrammar.ra', 653)
2426
- def _reduce_190(val, _values, result)
2867
+ module_eval(<<'.,.,', 'egrammar.ra', 755)
2868
+ def _reduce_216(val, _values, result)
2427
2869
  result = Factory.KEY_ENTRY(val[0], val[2]); loc result, val[1]
2428
2870
  result
2429
2871
  end
2430
2872
  .,.,
2431
2873
 
2432
- # reduce 191 omitted
2874
+ # reduce 217 omitted
2433
2875
 
2434
- # reduce 192 omitted
2876
+ module_eval(<<'.,.,', 'egrammar.ra', 759)
2877
+ def _reduce_218(val, _values, result)
2878
+ result = Factory.literal(val[0][:value]) ; loc result, val[0]
2879
+ result
2880
+ end
2881
+ .,.,
2435
2882
 
2436
- # reduce 193 omitted
2883
+ module_eval(<<'.,.,', 'egrammar.ra', 762)
2884
+ def _reduce_219(val, _values, result)
2885
+ result = [val[0]]
2886
+ result
2887
+ end
2888
+ .,.,
2889
+
2890
+ module_eval(<<'.,.,', 'egrammar.ra', 763)
2891
+ def _reduce_220(val, _values, result)
2892
+ result = val[0].push(val[2])
2893
+ result
2894
+ end
2895
+ .,.,
2896
+
2897
+ # reduce 221 omitted
2898
+
2899
+ # reduce 222 omitted
2900
+
2901
+ # reduce 223 omitted
2902
+
2903
+ # reduce 224 omitted
2904
+
2905
+ # reduce 225 omitted
2906
+
2907
+ # reduce 226 omitted
2437
2908
 
2438
- module_eval(<<'.,.,', 'egrammar.ra', 661)
2439
- def _reduce_194(val, _values, result)
2909
+ # reduce 227 omitted
2910
+
2911
+ # reduce 228 omitted
2912
+
2913
+ # reduce 229 omitted
2914
+
2915
+ module_eval(<<'.,.,', 'egrammar.ra', 780)
2916
+ def _reduce_230(val, _values, result)
2440
2917
  result = Factory.literal(val[0][:value]) ; loc result, val[0]
2441
2918
  result
2442
2919
  end
2443
2920
  .,.,
2444
2921
 
2445
- module_eval(<<'.,.,', 'egrammar.ra', 662)
2446
- def _reduce_195(val, _values, result)
2922
+ module_eval(<<'.,.,', 'egrammar.ra', 781)
2923
+ def _reduce_231(val, _values, result)
2447
2924
  result = Factory.literal(val[0][:value]) ; loc result, val[0]
2448
2925
  result
2449
2926
  end
2450
2927
  .,.,
2451
2928
 
2452
- module_eval(<<'.,.,', 'egrammar.ra', 664)
2453
- def _reduce_196(val, _values, result)
2454
- result = Factory.string(val[0], *val[1]) ; loc result, val[0], val[1][-1]
2929
+ module_eval(<<'.,.,', 'egrammar.ra', 783)
2930
+ def _reduce_232(val, _values, result)
2931
+ result = Factory.STRING(val[0], *val[1]) ; loc result, val[0], val[1][-1]
2455
2932
  result
2456
2933
  end
2457
2934
  .,.,
2458
2935
 
2459
- module_eval(<<'.,.,', 'egrammar.ra', 665)
2460
- def _reduce_197(val, _values, result)
2936
+ module_eval(<<'.,.,', 'egrammar.ra', 784)
2937
+ def _reduce_233(val, _values, result)
2461
2938
  result = Factory.literal(val[0][:value]); loc result, val[0]
2462
2939
  result
2463
2940
  end
2464
2941
  .,.,
2465
2942
 
2466
- module_eval(<<'.,.,', 'egrammar.ra', 666)
2467
- def _reduce_198(val, _values, result)
2943
+ module_eval(<<'.,.,', 'egrammar.ra', 785)
2944
+ def _reduce_234(val, _values, result)
2468
2945
  result = Factory.literal(val[0][:value]); loc result, val[0]
2469
2946
  result
2470
2947
  end
2471
2948
  .,.,
2472
2949
 
2473
- module_eval(<<'.,.,', 'egrammar.ra', 667)
2474
- def _reduce_199(val, _values, result)
2950
+ module_eval(<<'.,.,', 'egrammar.ra', 786)
2951
+ def _reduce_235(val, _values, result)
2475
2952
  result = Factory.literal(val[0][:value]); loc result, val[0]
2476
2953
  result
2477
2954
  end
2478
2955
  .,.,
2479
2956
 
2480
- module_eval(<<'.,.,', 'egrammar.ra', 668)
2481
- def _reduce_200(val, _values, result)
2957
+ module_eval(<<'.,.,', 'egrammar.ra', 787)
2958
+ def _reduce_236(val, _values, result)
2482
2959
  result = [val[0]] + val[1]
2483
2960
  result
2484
2961
  end
2485
2962
  .,.,
2486
2963
 
2487
- module_eval(<<'.,.,', 'egrammar.ra', 669)
2488
- def _reduce_201(val, _values, result)
2964
+ module_eval(<<'.,.,', 'egrammar.ra', 788)
2965
+ def _reduce_237(val, _values, result)
2489
2966
  result = Factory.TEXT(val[0])
2490
2967
  result
2491
2968
  end
2492
2969
  .,.,
2493
2970
 
2494
- module_eval(<<'.,.,', 'egrammar.ra', 672)
2495
- def _reduce_202(val, _values, result)
2971
+ module_eval(<<'.,.,', 'egrammar.ra', 791)
2972
+ def _reduce_238(val, _values, result)
2496
2973
  result = [val[0]]
2497
2974
  result
2498
2975
  end
2499
2976
  .,.,
2500
2977
 
2501
- module_eval(<<'.,.,', 'egrammar.ra', 673)
2502
- def _reduce_203(val, _values, result)
2978
+ module_eval(<<'.,.,', 'egrammar.ra', 792)
2979
+ def _reduce_239(val, _values, result)
2503
2980
  result = [val[0]] + val[1]
2504
2981
  result
2505
2982
  end
2506
2983
  .,.,
2507
2984
 
2508
- module_eval(<<'.,.,', 'egrammar.ra', 676)
2509
- def _reduce_204(val, _values, result)
2985
+ module_eval(<<'.,.,', 'egrammar.ra', 795)
2986
+ def _reduce_240(val, _values, result)
2510
2987
  result = Factory.HEREDOC(val[0][:value], val[1]); loc result, val[0]
2511
2988
  result
2512
2989
  end
2513
2990
  .,.,
2514
2991
 
2515
- module_eval(<<'.,.,', 'egrammar.ra', 679)
2516
- def _reduce_205(val, _values, result)
2992
+ module_eval(<<'.,.,', 'egrammar.ra', 798)
2993
+ def _reduce_241(val, _values, result)
2517
2994
  result = Factory.SUBLOCATE(val[0], val[1]); loc result, val[0]
2518
2995
  result
2519
2996
  end
2520
2997
  .,.,
2521
2998
 
2522
- module_eval(<<'.,.,', 'egrammar.ra', 680)
2523
- def _reduce_206(val, _values, result)
2999
+ module_eval(<<'.,.,', 'egrammar.ra', 799)
3000
+ def _reduce_242(val, _values, result)
2524
3001
  result = Factory.SUBLOCATE(val[0], val[1]); loc result, val[0]
2525
3002
  result
2526
3003
  end
2527
3004
  .,.,
2528
3005
 
2529
- module_eval(<<'.,.,', 'egrammar.ra', 683)
2530
- def _reduce_207(val, _values, result)
3006
+ module_eval(<<'.,.,', 'egrammar.ra', 802)
3007
+ def _reduce_243(val, _values, result)
2531
3008
  result = Factory.EPP(val[1], val[2]); loc result, val[0]
2532
3009
  result
2533
3010
  end
2534
3011
  .,.,
2535
3012
 
2536
- # reduce 208 omitted
3013
+ # reduce 244 omitted
2537
3014
 
2538
- # reduce 209 omitted
3015
+ # reduce 245 omitted
2539
3016
 
2540
- module_eval(<<'.,.,', 'egrammar.ra', 690)
2541
- def _reduce_210(val, _values, result)
3017
+ module_eval(<<'.,.,', 'egrammar.ra', 809)
3018
+ def _reduce_246(val, _values, result)
2542
3019
  result = nil
2543
3020
  result
2544
3021
  end
2545
3022
  .,.,
2546
3023
 
2547
- module_eval(<<'.,.,', 'egrammar.ra', 691)
2548
- def _reduce_211(val, _values, result)
3024
+ module_eval(<<'.,.,', 'egrammar.ra', 810)
3025
+ def _reduce_247(val, _values, result)
2549
3026
  result = []
2550
3027
  result
2551
3028
  end
2552
3029
  .,.,
2553
3030
 
2554
- module_eval(<<'.,.,', 'egrammar.ra', 692)
2555
- def _reduce_212(val, _values, result)
3031
+ module_eval(<<'.,.,', 'egrammar.ra', 811)
3032
+ def _reduce_248(val, _values, result)
2556
3033
  result = val[1]
2557
3034
  result
2558
3035
  end
2559
3036
  .,.,
2560
3037
 
2561
- module_eval(<<'.,.,', 'egrammar.ra', 695)
2562
- def _reduce_213(val, _values, result)
3038
+ module_eval(<<'.,.,', 'egrammar.ra', 814)
3039
+ def _reduce_249(val, _values, result)
2563
3040
  result = Factory.RENDER_STRING(val[0][:value]); loc result, val[0]
2564
3041
  result
2565
3042
  end
2566
3043
  .,.,
2567
3044
 
2568
- module_eval(<<'.,.,', 'egrammar.ra', 696)
2569
- def _reduce_214(val, _values, result)
3045
+ module_eval(<<'.,.,', 'egrammar.ra', 815)
3046
+ def _reduce_250(val, _values, result)
2570
3047
  result = Factory.RENDER_EXPR(val[1]); loc result, val[0], val[2]
2571
3048
  result
2572
3049
  end
2573
3050
  .,.,
2574
3051
 
2575
- module_eval(<<'.,.,', 'egrammar.ra', 697)
2576
- def _reduce_215(val, _values, result)
2577
- result = Factory.RENDER_EXPR(Factory.block_or_expression(*val[2])); loc result, val[0], val[4]
3052
+ module_eval(<<'.,.,', 'egrammar.ra', 816)
3053
+ def _reduce_251(val, _values, result)
3054
+ result = Factory.RENDER_EXPR(Factory.block_or_expression(val[2])); loc result, val[0], val[4]
2578
3055
  result
2579
3056
  end
2580
3057
  .,.,
2581
3058
 
2582
- # reduce 216 omitted
3059
+ # reduce 252 omitted
2583
3060
 
2584
- # reduce 217 omitted
3061
+ # reduce 253 omitted
2585
3062
 
2586
- module_eval(<<'.,.,', 'egrammar.ra', 703)
2587
- def _reduce_218(val, _values, result)
3063
+ module_eval(<<'.,.,', 'egrammar.ra', 822)
3064
+ def _reduce_254(val, _values, result)
2588
3065
  result = Factory.QREF(val[0][:value]) ; loc result, val[0]
2589
3066
  result
2590
3067
  end
2591
3068
  .,.,
2592
3069
 
2593
- module_eval(<<'.,.,', 'egrammar.ra', 706)
2594
- def _reduce_219(val, _values, result)
3070
+ module_eval(<<'.,.,', 'egrammar.ra', 825)
3071
+ def _reduce_255(val, _values, result)
2595
3072
  result = Factory.literal(val[0][:value]); loc result, val[0]
2596
3073
  result
2597
3074
  end
2598
3075
  .,.,
2599
3076
 
2600
- # reduce 220 omitted
3077
+ # reduce 256 omitted
2601
3078
 
2602
- module_eval(<<'.,.,', 'egrammar.ra', 712)
2603
- def _reduce_221(val, _values, result)
3079
+ module_eval(<<'.,.,', 'egrammar.ra', 831)
3080
+ def _reduce_257(val, _values, result)
2604
3081
  result = nil
2605
3082
  result
2606
3083
  end
2607
3084
  .,.,
2608
3085
 
2609
- # reduce 222 omitted
3086
+ # reduce 258 omitted
2610
3087
 
2611
- # reduce 223 omitted
3088
+ # reduce 259 omitted
2612
3089
 
2613
- # reduce 224 omitted
3090
+ # reduce 260 omitted
2614
3091
 
2615
- # reduce 225 omitted
3092
+ # reduce 261 omitted
2616
3093
 
2617
- # reduce 226 omitted
3094
+ # reduce 262 omitted
2618
3095
 
2619
- # reduce 227 omitted
3096
+ # reduce 263 omitted
2620
3097
 
2621
- # reduce 228 omitted
3098
+ # reduce 264 omitted
2622
3099
 
2623
- # reduce 229 omitted
3100
+ # reduce 265 omitted
2624
3101
 
2625
- # reduce 230 omitted
3102
+ # reduce 266 omitted
2626
3103
 
2627
- # reduce 231 omitted
3104
+ # reduce 267 omitted
2628
3105
 
2629
- # reduce 232 omitted
3106
+ # reduce 268 omitted
2630
3107
 
2631
- # reduce 233 omitted
3108
+ # reduce 269 omitted
2632
3109
 
2633
- # reduce 234 omitted
3110
+ # reduce 270 omitted
2634
3111
 
2635
- # reduce 235 omitted
3112
+ # reduce 271 omitted
2636
3113
 
2637
- # reduce 236 omitted
3114
+ # reduce 272 omitted
2638
3115
 
2639
- # reduce 237 omitted
3116
+ # reduce 273 omitted
2640
3117
 
2641
- # reduce 238 omitted
3118
+ # reduce 274 omitted
2642
3119
 
2643
- # reduce 239 omitted
3120
+ # reduce 275 omitted
2644
3121
 
2645
- # reduce 240 omitted
3122
+ # reduce 276 omitted
2646
3123
 
2647
- # reduce 241 omitted
3124
+ # reduce 277 omitted
2648
3125
 
2649
- module_eval(<<'.,.,', 'egrammar.ra', 739)
2650
- def _reduce_242(val, _values, result)
3126
+ # reduce 278 omitted
3127
+
3128
+ # reduce 279 omitted
3129
+
3130
+ # reduce 280 omitted
3131
+
3132
+ # reduce 281 omitted
3133
+
3134
+ module_eval(<<'.,.,', 'egrammar.ra', 862)
3135
+ def _reduce_282(val, _values, result)
2651
3136
  result = nil
2652
3137
  result
2653
3138
  end