puppet 4.1.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 (2014) 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 +2 -2
  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.init +0 -1
  20. data/ext/debian/puppet.logrotate +14 -5
  21. data/ext/debian/puppetmaster.README.debian +11 -9
  22. data/ext/envpuppet +2 -2
  23. data/ext/hiera/hiera.yaml +15 -0
  24. data/ext/ips/puppetagent.xml +1 -1
  25. data/ext/ips/puppetmaster.xml +1 -1
  26. data/ext/logcheck/puppet +1 -1
  27. data/ext/osx/puppet.plist +30 -0
  28. data/ext/project_data.yaml +29 -16
  29. data/ext/puppet-test +3 -27
  30. data/ext/rack/config.ru +2 -2
  31. data/ext/rack/example-passenger-vhost.conf +1 -1
  32. data/ext/redhat/client.init +67 -17
  33. data/ext/redhat/client.sysconfig +1 -10
  34. data/ext/redhat/logrotate +15 -3
  35. data/ext/redhat/puppet.spec.erb +6 -14
  36. data/ext/redhat/server.init +1 -1
  37. data/ext/regexp_nodes/regexp_nodes.rb +1 -1
  38. data/ext/solaris/pkginfo +1 -1
  39. data/ext/solaris/smf/puppet +44 -0
  40. data/ext/solaris/smf/puppet.xml +44 -0
  41. data/ext/suse/client.init +30 -33
  42. data/ext/suse/puppet.spec +2 -2
  43. data/ext/suse/server.init +2 -2
  44. data/ext/systemd/puppet.service +13 -1
  45. data/ext/upload_facts.rb +1 -1
  46. data/ext/windows/puppet_interactive.bat +6 -0
  47. data/ext/windows/puppet_shell.bat +9 -0
  48. data/ext/windows/run_puppet_interactive.bat +9 -0
  49. data/ext/windows/service/daemon.rb +10 -15
  50. data/ext/yaml_nodes.rb +1 -1
  51. data/install.rb +99 -66
  52. data/lib/hiera/puppet_function.rb +17 -18
  53. data/lib/hiera/scope.rb +12 -14
  54. data/lib/hiera_puppet.rb +6 -14
  55. data/lib/puppet/agent/disabler.rb +3 -3
  56. data/lib/puppet/agent/locker.rb +12 -3
  57. data/lib/puppet/agent.rb +35 -39
  58. data/lib/puppet/application/agent.rb +48 -25
  59. data/lib/puppet/application/apply.rb +63 -29
  60. data/lib/puppet/application/ca.rb +1 -0
  61. data/lib/puppet/application/cert.rb +54 -5
  62. data/lib/puppet/application/describe.rb +2 -2
  63. data/lib/puppet/application/device.rb +72 -47
  64. data/lib/puppet/application/doc.rb +9 -9
  65. data/lib/puppet/application/face_base.rb +11 -12
  66. data/lib/puppet/application/filebucket.rb +84 -10
  67. data/lib/puppet/application/generate.rb +5 -0
  68. data/lib/puppet/application/lookup.rb +357 -0
  69. data/lib/puppet/application/master.rb +21 -25
  70. data/lib/puppet/application/resource.rb +22 -23
  71. data/lib/puppet/application.rb +31 -15
  72. data/lib/puppet/application_support.rb +1 -1
  73. data/lib/puppet/compilable_resource_type.rb +15 -0
  74. data/lib/puppet/configurer/downloader.rb +2 -2
  75. data/lib/puppet/configurer/fact_handler.rb +13 -4
  76. data/lib/puppet/configurer/plugin_handler.rb +7 -5
  77. data/lib/puppet/configurer.rb +192 -51
  78. data/lib/puppet/context/trusted_information.rb +22 -2
  79. data/lib/puppet/context.rb +20 -5
  80. data/lib/puppet/daemon.rb +17 -13
  81. data/lib/puppet/data_binding.rb +4 -2
  82. data/lib/puppet/defaults.rb +298 -130
  83. data/lib/puppet/environments.rb +104 -9
  84. data/lib/puppet/error.rb +5 -1
  85. data/lib/puppet/etc.rb +161 -0
  86. data/lib/puppet/external/dot.rb +1 -1
  87. data/lib/puppet/external/pson/common.rb +4 -0
  88. data/lib/puppet/face/ca.rb +56 -44
  89. data/lib/puppet/face/catalog/select.rb +4 -4
  90. data/lib/puppet/face/catalog.rb +3 -3
  91. data/lib/puppet/face/certificate.rb +28 -22
  92. data/lib/puppet/face/certificate_request.rb +3 -1
  93. data/lib/puppet/face/certificate_revocation_list.rb +3 -1
  94. data/lib/puppet/face/config.rb +12 -12
  95. data/lib/puppet/face/epp.rb +96 -50
  96. data/lib/puppet/face/facts.rb +5 -5
  97. data/lib/puppet/face/generate.rb +64 -0
  98. data/lib/puppet/face/help/face.erb +3 -0
  99. data/lib/puppet/face/help/man.erb +1 -1
  100. data/lib/puppet/face/help.rb +37 -29
  101. data/lib/puppet/face/key.rb +4 -3
  102. data/lib/puppet/face/man.rb +12 -10
  103. data/lib/puppet/face/module/build.rb +7 -7
  104. data/lib/puppet/face/module/changes.rb +8 -7
  105. data/lib/puppet/face/module/generate.rb +25 -25
  106. data/lib/puppet/face/module/install.rb +19 -15
  107. data/lib/puppet/face/module/list.rb +16 -12
  108. data/lib/puppet/face/module/search.rb +4 -4
  109. data/lib/puppet/face/module/uninstall.rb +13 -10
  110. data/lib/puppet/face/module/upgrade.rb +11 -7
  111. data/lib/puppet/face/module.rb +3 -3
  112. data/lib/puppet/face/node/clean.rb +8 -8
  113. data/lib/puppet/face/node.rb +6 -6
  114. data/lib/puppet/face/parser.rb +28 -25
  115. data/lib/puppet/face/plugin.rb +14 -21
  116. data/lib/puppet/face/report.rb +10 -10
  117. data/lib/puppet/face/resource.rb +13 -13
  118. data/lib/puppet/face/status.rb +9 -6
  119. data/lib/puppet/feature/base.rb +13 -5
  120. data/lib/puppet/feature/cfpropertylist.rb +3 -0
  121. data/lib/puppet/feature/eventlog.rb +1 -1
  122. data/lib/puppet/feature/hiera_eyaml.rb +3 -0
  123. data/lib/puppet/feature/hocon.rb +3 -0
  124. data/lib/puppet/feature/telnet.rb +9 -0
  125. data/lib/puppet/file_bucket/dipper.rb +62 -6
  126. data/lib/puppet/file_bucket/file.rb +4 -17
  127. data/lib/puppet/file_serving/base.rb +3 -3
  128. data/lib/puppet/file_serving/configuration/parser.rb +12 -12
  129. data/lib/puppet/file_serving/configuration.rb +3 -3
  130. data/lib/puppet/file_serving/content.rb +1 -1
  131. data/lib/puppet/file_serving/fileset.rb +7 -5
  132. data/lib/puppet/file_serving/http_metadata.rb +46 -0
  133. data/lib/puppet/file_serving/metadata.rb +22 -6
  134. data/lib/puppet/file_serving/mount/file.rb +6 -6
  135. data/lib/puppet/file_serving/mount/modules.rb +1 -1
  136. data/lib/puppet/file_serving/mount.rb +1 -1
  137. data/lib/puppet/file_serving/terminus_selector.rb +3 -1
  138. data/lib/puppet/file_system/file_impl.rb +9 -4
  139. data/lib/puppet/file_system/memory_impl.rb +6 -2
  140. data/lib/puppet/file_system/path_pattern.rb +7 -6
  141. data/lib/puppet/file_system/uniquefile.rb +5 -5
  142. data/lib/puppet/file_system/windows.rb +31 -16
  143. data/lib/puppet/file_system.rb +33 -5
  144. data/lib/puppet/forge/cache.rb +1 -0
  145. data/lib/puppet/forge/errors.rb +12 -12
  146. data/lib/puppet/forge/repository.rb +5 -36
  147. data/lib/puppet/forge.rb +17 -15
  148. data/lib/puppet/functions/alert.rb +14 -0
  149. data/lib/puppet/functions/annotate.rb +108 -0
  150. data/lib/puppet/functions/assert_type.rb +53 -19
  151. data/lib/puppet/functions/binary_file.rb +19 -0
  152. data/lib/puppet/functions/break.rb +22 -0
  153. data/lib/puppet/functions/call.rb +42 -0
  154. data/lib/puppet/functions/contain.rb +33 -0
  155. data/lib/puppet/functions/crit.rb +14 -0
  156. data/lib/puppet/functions/debug.rb +14 -0
  157. data/lib/puppet/functions/defined.rb +92 -62
  158. data/lib/puppet/functions/dig.rb +23 -0
  159. data/lib/puppet/functions/each.rb +89 -39
  160. data/lib/puppet/functions/emerg.rb +14 -0
  161. data/lib/puppet/functions/epp.rb +29 -37
  162. data/lib/puppet/functions/err.rb +14 -0
  163. data/lib/puppet/functions/eyaml_lookup_key.rb +94 -0
  164. data/lib/puppet/functions/filter.rb +64 -38
  165. data/lib/puppet/functions/find_file.rb +31 -0
  166. data/lib/puppet/functions/hiera.rb +83 -3
  167. data/lib/puppet/functions/hiera_array.rb +73 -4
  168. data/lib/puppet/functions/hiera_hash.rb +82 -2
  169. data/lib/puppet/functions/hiera_include.rb +93 -6
  170. data/lib/puppet/functions/hocon_data.rb +41 -0
  171. data/lib/puppet/functions/include.rb +21 -0
  172. data/lib/puppet/functions/info.rb +14 -0
  173. data/lib/puppet/functions/inline_epp.rb +44 -71
  174. data/lib/puppet/functions/json_data.rb +33 -0
  175. data/lib/puppet/functions/lest.rb +17 -0
  176. data/lib/puppet/functions/lookup.rb +172 -184
  177. data/lib/puppet/functions/map.rb +60 -33
  178. data/lib/puppet/functions/match.rb +32 -14
  179. data/lib/puppet/functions/new.rb +31 -0
  180. data/lib/puppet/functions/next.rb +23 -0
  181. data/lib/puppet/functions/notice.rb +14 -0
  182. data/lib/puppet/functions/reduce.rb +112 -71
  183. data/lib/puppet/functions/regsubst.rb +22 -25
  184. data/lib/puppet/functions/require.rb +37 -0
  185. data/lib/puppet/functions/return.rb +22 -0
  186. data/lib/puppet/functions/reverse_each.rb +25 -0
  187. data/lib/puppet/functions/scanf.rb +15 -18
  188. data/lib/puppet/functions/slice.rb +25 -39
  189. data/lib/puppet/functions/split.rb +2 -2
  190. data/lib/puppet/functions/step.rb +26 -0
  191. data/lib/puppet/functions/strftime.rb +43 -0
  192. data/lib/puppet/functions/then.rb +14 -0
  193. data/lib/puppet/functions/type.rb +31 -0
  194. data/lib/puppet/functions/unique.rb +132 -0
  195. data/lib/puppet/functions/unwrap.rb +40 -0
  196. data/lib/puppet/functions/versioncmp.rb +36 -0
  197. data/lib/puppet/functions/warning.rb +14 -0
  198. data/lib/puppet/functions/with.rb +15 -7
  199. data/lib/puppet/functions/yaml_data.rb +42 -0
  200. data/lib/puppet/functions.rb +194 -74
  201. data/lib/puppet/generate/models/type/property.rb +70 -0
  202. data/lib/puppet/generate/models/type/type.rb +62 -0
  203. data/lib/puppet/generate/templates/type/pcore.erb +42 -0
  204. data/lib/puppet/generate/type.rb +239 -0
  205. data/lib/puppet/graph/rb_tree_map.rb +1 -1
  206. data/lib/puppet/graph/relationship_graph.rb +4 -1
  207. data/lib/puppet/graph/simple_graph.rb +51 -74
  208. data/lib/puppet/indirector/catalog/compiler.rb +241 -37
  209. data/lib/puppet/indirector/catalog/json.rb +18 -0
  210. data/lib/puppet/indirector/certificate/disabled_ca.rb +1 -1
  211. data/lib/puppet/indirector/certificate_request/ca.rb +3 -3
  212. data/lib/puppet/indirector/certificate_request/disabled_ca.rb +1 -1
  213. data/lib/puppet/indirector/certificate_revocation_list/disabled_ca.rb +1 -1
  214. data/lib/puppet/indirector/certificate_status/file.rb +6 -6
  215. data/lib/puppet/indirector/data_binding/none.rb +4 -1
  216. data/lib/puppet/indirector/exec.rb +2 -2
  217. data/lib/puppet/indirector/face.rb +24 -19
  218. data/lib/puppet/indirector/facts/facter.rb +3 -6
  219. data/lib/puppet/indirector/file_bucket_file/file.rb +142 -29
  220. data/lib/puppet/indirector/file_content/http.rb +15 -0
  221. data/lib/puppet/indirector/file_metadata/http.rb +27 -0
  222. data/lib/puppet/indirector/file_server.rb +10 -2
  223. data/lib/puppet/indirector/generic_http.rb +16 -0
  224. data/lib/puppet/indirector/hiera.rb +12 -4
  225. data/lib/puppet/indirector/indirection.rb +25 -18
  226. data/lib/puppet/indirector/json.rb +11 -12
  227. data/lib/puppet/indirector/key/ca.rb +2 -2
  228. data/lib/puppet/indirector/key/disabled_ca.rb +1 -1
  229. data/lib/puppet/indirector/key/file.rb +4 -3
  230. data/lib/puppet/indirector/ldap.rb +6 -5
  231. data/lib/puppet/indirector/memory.rb +1 -1
  232. data/lib/puppet/indirector/msgpack.rb +9 -8
  233. data/lib/puppet/indirector/node/exec.rb +9 -7
  234. data/lib/puppet/indirector/node/ldap.rb +10 -8
  235. data/lib/puppet/indirector/node/plain.rb +2 -1
  236. data/lib/puppet/indirector/node/write_only_yaml.rb +6 -1
  237. data/lib/puppet/indirector/node/yaml.rb +0 -9
  238. data/lib/puppet/indirector/report/processor.rb +2 -2
  239. data/lib/puppet/indirector/report/rest.rb +13 -0
  240. data/lib/puppet/indirector/request.rb +40 -23
  241. data/lib/puppet/indirector/resource/ral.rb +1 -1
  242. data/lib/puppet/indirector/resource/validator.rb +1 -1
  243. data/lib/puppet/indirector/rest.rb +103 -10
  244. data/lib/puppet/indirector/ssl_file.rb +33 -12
  245. data/lib/puppet/indirector/terminus.rb +7 -7
  246. data/lib/puppet/indirector/yaml.rb +5 -5
  247. data/lib/puppet/indirector.rb +2 -2
  248. data/lib/puppet/info_service/class_information_service.rb +110 -0
  249. data/lib/puppet/info_service.rb +7 -0
  250. data/lib/puppet/interface/documentation.rb +1 -1
  251. data/lib/puppet/interface/face_collection.rb +7 -2
  252. data/lib/puppet/interface.rb +12 -4
  253. data/lib/puppet/loaders.rb +5 -0
  254. data/lib/puppet/metatype/manager.rb +25 -8
  255. data/lib/puppet/module.rb +73 -34
  256. data/lib/puppet/module_tool/applications/application.rb +8 -9
  257. data/lib/puppet/module_tool/applications/builder.rb +9 -9
  258. data/lib/puppet/module_tool/applications/checksummer.rb +2 -2
  259. data/lib/puppet/module_tool/applications/installer.rb +21 -20
  260. data/lib/puppet/module_tool/applications/searcher.rb +1 -1
  261. data/lib/puppet/module_tool/applications/uninstaller.rb +2 -1
  262. data/lib/puppet/module_tool/applications/unpacker.rb +4 -4
  263. data/lib/puppet/module_tool/applications/upgrader.rb +19 -18
  264. data/lib/puppet/module_tool/checksums.rb +1 -1
  265. data/lib/puppet/module_tool/contents_description.rb +1 -1
  266. data/lib/puppet/module_tool/dependency.rb +0 -1
  267. data/lib/puppet/module_tool/errors/installer.rb +23 -23
  268. data/lib/puppet/module_tool/errors/shared.rb +44 -42
  269. data/lib/puppet/module_tool/errors/uninstaller.rb +13 -9
  270. data/lib/puppet/module_tool/errors/upgrader.rb +11 -11
  271. data/lib/puppet/module_tool/install_directory.rb +1 -1
  272. data/lib/puppet/module_tool/installed_modules.rb +10 -10
  273. data/lib/puppet/module_tool/local_tarball.rb +7 -7
  274. data/lib/puppet/module_tool/metadata.rb +47 -21
  275. data/lib/puppet/module_tool/shared_behaviors.rb +6 -6
  276. data/lib/puppet/module_tool/skeleton/templates/generator/Gemfile +14 -3
  277. data/lib/puppet/module_tool/skeleton/templates/generator/README.md.erb +48 -38
  278. data/lib/puppet/module_tool/skeleton/templates/generator/Rakefile +19 -4
  279. data/lib/puppet/module_tool/skeleton/templates/generator/{tests → examples}/init.pp.erb +3 -3
  280. data/lib/puppet/module_tool/skeleton/templates/generator/manifests/init.pp.erb +25 -18
  281. data/lib/puppet/module_tool/skeleton/templates/generator/spec/classes/init_spec.rb.erb +1 -2
  282. data/lib/puppet/module_tool/tar/mini.rb +3 -3
  283. data/lib/puppet/module_tool/tar.rb +5 -4
  284. data/lib/puppet/module_tool.rb +11 -7
  285. data/lib/puppet/network/auth_config_parser.rb +13 -12
  286. data/lib/puppet/network/authconfig.rb +23 -3
  287. data/lib/puppet/network/authorization.rb +8 -1
  288. data/lib/puppet/network/authstore.rb +2 -2
  289. data/lib/puppet/network/format.rb +7 -7
  290. data/lib/puppet/network/format_handler.rb +12 -9
  291. data/lib/puppet/network/format_support.rb +11 -5
  292. data/lib/puppet/network/formats.rb +38 -27
  293. data/lib/puppet/network/http/api/indirected_routes.rb +86 -58
  294. data/lib/puppet/network/http/api/master/v3/environment.rb +82 -0
  295. data/lib/puppet/network/http/api/master/v3.rb +7 -1
  296. data/lib/puppet/network/http/compression.rb +12 -8
  297. data/lib/puppet/network/http/connection.rb +21 -15
  298. data/lib/puppet/network/http/error.rb +14 -10
  299. data/lib/puppet/network/http/factory.rb +8 -4
  300. data/lib/puppet/network/http/handler.rb +11 -6
  301. data/lib/puppet/network/http/issues.rb +1 -0
  302. data/lib/puppet/network/http/pool.rb +10 -1
  303. data/lib/puppet/network/http/rack/rest.rb +27 -3
  304. data/lib/puppet/network/http/rack.rb +2 -2
  305. data/lib/puppet/network/http/request.rb +34 -20
  306. data/lib/puppet/network/http/response.rb +13 -1
  307. data/lib/puppet/network/http/webrick/rest.rb +2 -2
  308. data/lib/puppet/network/http/webrick.rb +7 -6
  309. data/lib/puppet/network/rights.rb +7 -17
  310. data/lib/puppet/network/server.rb +2 -2
  311. data/lib/puppet/node/environment.rb +69 -17
  312. data/lib/puppet/node/facts.rb +1 -6
  313. data/lib/puppet/node.rb +45 -18
  314. data/lib/puppet/parameter/boolean.rb +1 -1
  315. data/lib/puppet/parameter/package_options.rb +1 -1
  316. data/lib/puppet/parameter/path.rb +3 -3
  317. data/lib/puppet/parameter/value.rb +1 -1
  318. data/lib/puppet/parameter/value_collection.rb +4 -4
  319. data/lib/puppet/parameter.rb +24 -29
  320. data/lib/puppet/parser/ast/node.rb +1 -1
  321. data/lib/puppet/parser/ast/pops_bridge.rb +99 -29
  322. data/lib/puppet/parser/ast/resource.rb +5 -0
  323. data/lib/puppet/parser/ast/resource_instance.rb +5 -1
  324. data/lib/puppet/parser/ast/resourceparam.rb +5 -0
  325. data/lib/puppet/parser/ast.rb +5 -0
  326. data/lib/puppet/parser/compiler/catalog_validator/env_relationship_validator.rb +64 -0
  327. data/lib/puppet/parser/compiler/catalog_validator/relationship_validator.rb +57 -0
  328. data/lib/puppet/parser/compiler/catalog_validator/site_validator.rb +20 -0
  329. data/lib/puppet/parser/compiler/catalog_validator.rb +33 -0
  330. data/lib/puppet/parser/compiler.rb +345 -131
  331. data/lib/puppet/parser/e4_parser_adapter.rb +14 -14
  332. data/lib/puppet/parser/environment_compiler.rb +199 -0
  333. data/lib/puppet/parser/functions/assert_type.rb +47 -17
  334. data/lib/puppet/parser/functions/binary_file.rb +24 -0
  335. data/lib/puppet/parser/functions/break.rb +39 -0
  336. data/lib/puppet/parser/functions/contain.rb +7 -15
  337. data/lib/puppet/parser/functions/create_resources.rb +49 -25
  338. data/lib/puppet/parser/functions/defined.rb +106 -93
  339. data/lib/puppet/parser/functions/dig.rb +29 -0
  340. data/lib/puppet/parser/functions/each.rb +86 -28
  341. data/lib/puppet/parser/functions/epp.rb +30 -38
  342. data/lib/puppet/parser/functions/file.rb +1 -1
  343. data/lib/puppet/parser/functions/filter.rb +60 -24
  344. data/lib/puppet/parser/functions/find_file.rb +28 -0
  345. data/lib/puppet/parser/functions/fqdn_rand.rb +3 -3
  346. data/lib/puppet/parser/functions/generate.rb +5 -4
  347. data/lib/puppet/parser/functions/hiera.rb +98 -28
  348. data/lib/puppet/parser/functions/hiera_array.rb +86 -29
  349. data/lib/puppet/parser/functions/hiera_hash.rb +96 -31
  350. data/lib/puppet/parser/functions/hiera_include.rb +96 -41
  351. data/lib/puppet/parser/functions/include.rb +5 -8
  352. data/lib/puppet/parser/functions/inline_epp.rb +36 -61
  353. data/lib/puppet/parser/functions/inline_template.rb +3 -3
  354. data/lib/puppet/parser/functions/lest.rb +49 -0
  355. data/lib/puppet/parser/functions/lookup.rb +129 -151
  356. data/lib/puppet/parser/functions/map.rb +56 -21
  357. data/lib/puppet/parser/functions/match.rb +29 -13
  358. data/lib/puppet/parser/functions/new.rb +939 -0
  359. data/lib/puppet/parser/functions/next.rb +38 -0
  360. data/lib/puppet/parser/functions/reduce.rb +98 -61
  361. data/lib/puppet/parser/functions/regsubst.rb +4 -2
  362. data/lib/puppet/parser/functions/require.rb +4 -27
  363. data/lib/puppet/parser/functions/return.rb +71 -0
  364. data/lib/puppet/parser/functions/reverse_each.rb +83 -0
  365. data/lib/puppet/parser/functions/scanf.rb +25 -31
  366. data/lib/puppet/parser/functions/slice.rb +18 -25
  367. data/lib/puppet/parser/functions/split.rb +2 -2
  368. data/lib/puppet/parser/functions/step.rb +84 -0
  369. data/lib/puppet/parser/functions/strftime.rb +185 -0
  370. data/lib/puppet/parser/functions/then.rb +73 -0
  371. data/lib/puppet/parser/functions/type.rb +53 -0
  372. data/lib/puppet/parser/functions/with.rb +17 -9
  373. data/lib/puppet/parser/functions.rb +39 -21
  374. data/lib/puppet/parser/parser_factory.rb +0 -30
  375. data/lib/puppet/parser/relationship.rb +49 -20
  376. data/lib/puppet/parser/resource/param.rb +0 -3
  377. data/lib/puppet/parser/resource.rb +165 -50
  378. data/lib/puppet/parser/scope.rb +412 -202
  379. data/lib/puppet/parser/templatewrapper.rb +2 -2
  380. data/lib/puppet/parser/type_loader.rb +2 -2
  381. data/lib/puppet/parser.rb +3 -1
  382. data/lib/puppet/plugins/configuration.rb +15 -58
  383. data/lib/puppet/plugins/syntax_checkers.rb +6 -11
  384. data/lib/puppet/pops/adaptable.rb +12 -7
  385. data/lib/puppet/pops/adapters.rb +102 -73
  386. data/lib/puppet/pops/evaluator/access_operator.rb +233 -163
  387. data/lib/puppet/pops/evaluator/callable_signature.rb +7 -0
  388. data/lib/puppet/pops/evaluator/closure.rb +231 -115
  389. data/lib/puppet/pops/evaluator/collector_transformer.rb +50 -26
  390. data/lib/puppet/pops/evaluator/collectors/abstract_collector.rb +1 -1
  391. data/lib/puppet/pops/evaluator/collectors/catalog_collector.rb +2 -2
  392. data/lib/puppet/pops/evaluator/collectors/exported_collector.rb +4 -5
  393. data/lib/puppet/pops/evaluator/compare_operator.rb +72 -15
  394. data/lib/puppet/pops/evaluator/epp_evaluator.rb +10 -9
  395. data/lib/puppet/pops/evaluator/evaluator_impl.rb +236 -140
  396. data/lib/puppet/pops/evaluator/external_syntax_support.rb +2 -9
  397. data/lib/puppet/pops/evaluator/json_strict_literal_evaluator.rb +82 -0
  398. data/lib/puppet/pops/evaluator/literal_evaluator.rb +87 -0
  399. data/lib/puppet/pops/evaluator/puppet_proc.rb +1 -1
  400. data/lib/puppet/pops/evaluator/relationship_operator.rb +44 -20
  401. data/lib/puppet/pops/evaluator/runtime3_converter.rb +74 -49
  402. data/lib/puppet/pops/evaluator/runtime3_resource_support.rb +117 -0
  403. data/lib/puppet/pops/evaluator/runtime3_support.rb +134 -88
  404. data/lib/puppet/pops/functions/dispatch.rb +28 -13
  405. data/lib/puppet/pops/functions/dispatcher.rb +15 -20
  406. data/lib/puppet/pops/functions/function.rb +30 -4
  407. data/lib/puppet/pops/issue_reporter.rb +7 -5
  408. data/lib/puppet/pops/issues.rb +319 -131
  409. data/lib/puppet/pops/label_provider.rb +18 -4
  410. data/lib/puppet/pops/loader/base_loader.rb +74 -20
  411. data/lib/puppet/pops/loader/dependency_loader.rb +27 -2
  412. data/lib/puppet/pops/loader/gem_support.rb +2 -2
  413. data/lib/puppet/pops/loader/loader.rb +47 -49
  414. data/lib/puppet/pops/loader/loader_paths.rb +48 -2
  415. data/lib/puppet/pops/loader/module_loaders.rb +109 -27
  416. data/lib/puppet/pops/loader/null_loader.rb +17 -1
  417. data/lib/puppet/pops/loader/predefined_loader.rb +24 -0
  418. data/lib/puppet/pops/loader/puppet_function_instantiator.rb +34 -28
  419. data/lib/puppet/pops/loader/puppet_resource_type_impl_instantiator.rb +79 -0
  420. data/lib/puppet/pops/loader/ruby_function_instantiator.rb +19 -7
  421. data/lib/puppet/pops/loader/runtime3_type_loader.rb +96 -0
  422. data/lib/puppet/pops/loader/static_loader.rb +111 -41
  423. data/lib/puppet/pops/loader/type_definition_instantiator.rb +93 -0
  424. data/lib/puppet/pops/loader/typed_name.rb +54 -0
  425. data/lib/puppet/pops/loaders.rb +208 -28
  426. data/lib/puppet/pops/lookup/configured_data_provider.rb +93 -0
  427. data/lib/puppet/pops/lookup/context.rb +200 -0
  428. data/lib/puppet/pops/lookup/data_adapter.rb +27 -0
  429. data/lib/puppet/pops/lookup/data_dig_function_provider.rb +145 -0
  430. data/lib/puppet/pops/lookup/data_hash_function_provider.rb +126 -0
  431. data/lib/puppet/pops/lookup/data_provider.rb +92 -0
  432. data/lib/puppet/pops/lookup/environment_data_provider.rb +35 -0
  433. data/lib/puppet/pops/lookup/explainer.rb +594 -0
  434. data/lib/puppet/pops/lookup/function_provider.rb +110 -0
  435. data/lib/puppet/pops/lookup/global_data_provider.rb +75 -0
  436. data/lib/puppet/pops/lookup/hiera_config.rb +761 -0
  437. data/lib/puppet/pops/lookup/interpolation.rb +154 -0
  438. data/lib/puppet/pops/lookup/invocation.rb +261 -0
  439. data/lib/puppet/pops/lookup/location_resolver.rb +99 -0
  440. data/lib/puppet/pops/lookup/lookup_adapter.rb +471 -0
  441. data/lib/puppet/pops/lookup/lookup_key.rb +99 -0
  442. data/lib/puppet/pops/lookup/lookup_key_function_provider.rb +92 -0
  443. data/lib/puppet/pops/lookup/module_data_provider.rb +89 -0
  444. data/lib/puppet/pops/lookup/sub_lookup.rb +92 -0
  445. data/lib/puppet/pops/lookup.rb +49 -49
  446. data/lib/puppet/pops/merge_strategy.rb +197 -46
  447. data/lib/puppet/pops/migration/migration_checker.rb +4 -0
  448. data/lib/puppet/pops/model/ast.pp +692 -0
  449. data/lib/puppet/pops/model/ast.rb +4833 -0
  450. data/lib/puppet/pops/model/ast_transformer.rb +15 -9
  451. data/lib/puppet/pops/model/factory.rb +547 -528
  452. data/lib/puppet/pops/model/model_label_provider.rb +31 -8
  453. data/lib/puppet/pops/model/model_tree_dumper.rb +52 -7
  454. data/lib/puppet/pops/parser/code_merger.rb +13 -1
  455. data/lib/puppet/pops/parser/egrammar.ra +185 -61
  456. data/lib/puppet/pops/parser/eparser.rb +1819 -1348
  457. data/lib/puppet/pops/parser/epp_support.rb +15 -9
  458. data/lib/puppet/pops/parser/evaluating_parser.rb +25 -17
  459. data/lib/puppet/pops/parser/heredoc_support.rb +16 -13
  460. data/lib/puppet/pops/parser/interpolation_support.rb +11 -4
  461. data/lib/puppet/pops/parser/lexer2.rb +459 -399
  462. data/lib/puppet/pops/parser/lexer_support.rb +85 -7
  463. data/lib/puppet/pops/parser/locator.rb +86 -9
  464. data/lib/puppet/pops/parser/parser_support.rb +50 -42
  465. data/lib/puppet/pops/parser/slurp_support.rb +23 -14
  466. data/lib/puppet/pops/patterns.rb +16 -1
  467. data/lib/puppet/pops/pcore.rb +103 -0
  468. data/lib/puppet/pops/puppet_stack.rb +43 -0
  469. data/lib/puppet/pops/resource/param.rb +55 -0
  470. data/lib/puppet/pops/resource/resource_type_impl.rb +314 -0
  471. data/lib/puppet/pops/resource/resource_type_set.pcore +22 -0
  472. data/lib/puppet/pops/semantic_error.rb +12 -0
  473. data/lib/puppet/pops/serialization/abstract_reader.rb +176 -0
  474. data/lib/puppet/pops/serialization/abstract_writer.rb +215 -0
  475. data/lib/puppet/pops/serialization/deserializer.rb +80 -0
  476. data/lib/puppet/pops/serialization/extension.rb +157 -0
  477. data/lib/puppet/pops/serialization/from_data_converter.rb +181 -0
  478. data/lib/puppet/pops/serialization/instance_reader.rb +19 -0
  479. data/lib/puppet/pops/serialization/instance_writer.rb +14 -0
  480. data/lib/puppet/pops/serialization/json.rb +297 -0
  481. data/lib/puppet/pops/serialization/json_path.rb +126 -0
  482. data/lib/puppet/pops/serialization/object.rb +71 -0
  483. data/lib/puppet/pops/serialization/serializer.rb +139 -0
  484. data/lib/puppet/pops/serialization/time_factory.rb +67 -0
  485. data/lib/puppet/pops/serialization/to_data_converter.rb +292 -0
  486. data/lib/puppet/pops/serialization.rb +41 -0
  487. data/lib/puppet/pops/time/timespan.rb +718 -0
  488. data/lib/puppet/pops/time/timestamp.rb +148 -0
  489. data/lib/puppet/pops/types/annotatable.rb +36 -0
  490. data/lib/puppet/pops/types/annotation.rb +71 -0
  491. data/lib/puppet/pops/types/class_loader.rb +29 -29
  492. data/lib/puppet/pops/types/enumeration.rb +9 -27
  493. data/lib/puppet/pops/types/implementation_registry.rb +141 -0
  494. data/lib/puppet/pops/types/iterable.rb +308 -0
  495. data/lib/puppet/pops/types/p_binary_type.rb +226 -0
  496. data/lib/puppet/pops/types/p_meta_type.rb +87 -0
  497. data/lib/puppet/pops/types/p_object_type.rb +925 -0
  498. data/lib/puppet/pops/types/p_runtime_type.rb +115 -0
  499. data/lib/puppet/pops/types/p_sem_ver_range_type.rb +191 -0
  500. data/lib/puppet/pops/types/p_sem_ver_type.rb +141 -0
  501. data/lib/puppet/pops/types/p_sensitive_type.rb +73 -0
  502. data/lib/puppet/pops/types/p_timespan_type.rb +192 -0
  503. data/lib/puppet/pops/types/p_timestamp_type.rb +69 -0
  504. data/lib/puppet/pops/types/p_type_set_type.rb +360 -0
  505. data/lib/puppet/pops/types/puppet_object.rb +26 -0
  506. data/lib/puppet/pops/types/recursion_guard.rb +136 -0
  507. data/lib/puppet/pops/types/ruby_generator.rb +439 -0
  508. data/lib/puppet/pops/types/ruby_method.rb +31 -0
  509. data/lib/puppet/pops/types/string_converter.rb +1099 -0
  510. data/lib/puppet/pops/types/type_acceptor.rb +25 -0
  511. data/lib/puppet/pops/types/type_asserter.rb +21 -19
  512. data/lib/puppet/pops/types/type_assertion_error.rb +1 -0
  513. data/lib/puppet/pops/types/type_calculator.rb +251 -1332
  514. data/lib/puppet/pops/types/type_conversion_error.rb +15 -0
  515. data/lib/puppet/pops/types/type_factory.rb +252 -171
  516. data/lib/puppet/pops/types/type_formatter.rb +734 -0
  517. data/lib/puppet/pops/types/type_mismatch_describer.rb +1106 -0
  518. data/lib/puppet/pops/types/type_parser.rb +374 -276
  519. data/lib/puppet/pops/types/type_set_reference.rb +59 -0
  520. data/lib/puppet/pops/types/types.rb +3286 -307
  521. data/lib/puppet/pops/utils.rb +7 -30
  522. data/lib/puppet/pops/validation/checker4_0.rb +305 -109
  523. data/lib/puppet/pops/validation/validator_factory_4_0.rb +13 -5
  524. data/lib/puppet/pops/validation.rb +25 -16
  525. data/lib/puppet/pops/visitor.rb +30 -6
  526. data/lib/puppet/pops.rb +42 -57
  527. data/lib/puppet/property/ensure.rb +4 -4
  528. data/lib/puppet/property/list.rb +1 -10
  529. data/lib/puppet/property.rb +84 -21
  530. data/lib/puppet/provider/aixobject.rb +11 -11
  531. data/lib/puppet/provider/augeas/augeas.rb +89 -34
  532. data/lib/puppet/provider/command.rb +1 -1
  533. data/lib/puppet/provider/cron/crontab.rb +3 -3
  534. data/lib/puppet/provider/exec/posix.rb +4 -4
  535. data/lib/puppet/provider/exec/windows.rb +4 -4
  536. data/lib/puppet/provider/exec.rb +14 -7
  537. data/lib/puppet/provider/file/posix.rb +5 -5
  538. data/lib/puppet/provider/file/windows.rb +4 -4
  539. data/lib/puppet/provider/group/aix.rb +6 -6
  540. data/lib/puppet/provider/group/directoryservice.rb +10 -0
  541. data/lib/puppet/provider/group/groupadd.rb +2 -2
  542. data/lib/puppet/provider/group/pw.rb +2 -1
  543. data/lib/puppet/provider/group/windows_adsi.rb +15 -3
  544. data/lib/puppet/provider/host/parsed.rb +1 -1
  545. data/lib/puppet/provider/macauthorization/macauthorization.rb +20 -19
  546. data/lib/puppet/provider/mailalias/aliases.rb +1 -1
  547. data/lib/puppet/provider/maillist/mailman.rb +2 -2
  548. data/lib/puppet/provider/mcx/mcxcontent.rb +6 -5
  549. data/lib/puppet/provider/mount/parsed.rb +24 -8
  550. data/lib/puppet/provider/mount.rb +2 -1
  551. data/lib/puppet/provider/naginator.rb +1 -1
  552. data/lib/puppet/provider/nameservice/directoryservice.rb +65 -72
  553. data/lib/puppet/provider/nameservice.rb +40 -17
  554. data/lib/puppet/provider/network_device.rb +2 -1
  555. data/lib/puppet/provider/package/aix.rb +5 -5
  556. data/lib/puppet/provider/package/appdmg.rb +7 -6
  557. data/lib/puppet/provider/package/apple.rb +2 -2
  558. data/lib/puppet/provider/package/apt.rb +4 -4
  559. data/lib/puppet/provider/package/aptitude.rb +1 -1
  560. data/lib/puppet/provider/package/aptrpm.rb +2 -2
  561. data/lib/puppet/provider/package/blastwave.rb +4 -4
  562. data/lib/puppet/provider/package/dnf.rb +46 -0
  563. data/lib/puppet/provider/package/dpkg.rb +3 -3
  564. data/lib/puppet/provider/package/fink.rb +3 -3
  565. data/lib/puppet/provider/package/freebsd.rb +1 -1
  566. data/lib/puppet/provider/package/gem.rb +35 -9
  567. data/lib/puppet/provider/package/hpux.rb +1 -1
  568. data/lib/puppet/provider/package/nim.rb +17 -14
  569. data/lib/puppet/provider/package/openbsd.rb +11 -11
  570. data/lib/puppet/provider/package/opkg.rb +1 -1
  571. data/lib/puppet/provider/package/pacman.rb +20 -19
  572. data/lib/puppet/provider/package/pip.rb +72 -20
  573. data/lib/puppet/provider/package/pip3.rb +20 -0
  574. data/lib/puppet/provider/package/pkg.rb +21 -17
  575. data/lib/puppet/provider/package/pkgdmg.rb +12 -9
  576. data/lib/puppet/provider/package/pkgin.rb +6 -6
  577. data/lib/puppet/provider/package/pkgng.rb +16 -7
  578. data/lib/puppet/provider/package/pkgutil.rb +7 -7
  579. data/lib/puppet/provider/package/portage.rb +183 -35
  580. data/lib/puppet/provider/package/ports.rb +3 -3
  581. data/lib/puppet/provider/package/portupgrade.rb +4 -4
  582. data/lib/puppet/provider/package/puppet_gem.rb +0 -0
  583. data/lib/puppet/provider/package/rpm.rb +130 -21
  584. data/lib/puppet/provider/package/rug.rb +1 -1
  585. data/lib/puppet/provider/package/sun.rb +4 -3
  586. data/lib/puppet/provider/package/tdnf.rb +28 -0
  587. data/lib/puppet/provider/package/up2date.rb +1 -1
  588. data/lib/puppet/provider/package/urpmi.rb +1 -1
  589. data/lib/puppet/provider/package/windows/exe_package.rb +10 -8
  590. data/lib/puppet/provider/package/windows/msi_package.rb +4 -3
  591. data/lib/puppet/provider/package/windows/package.rb +12 -4
  592. data/lib/puppet/provider/package/windows.rb +5 -5
  593. data/lib/puppet/provider/package/yum.rb +73 -94
  594. data/lib/puppet/provider/package/zypper.rb +20 -1
  595. data/lib/puppet/provider/package.rb +6 -2
  596. data/lib/puppet/provider/parsedfile.rb +3 -3
  597. data/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +7 -0
  598. data/lib/puppet/provider/selmodule/semodule.rb +20 -16
  599. data/lib/puppet/provider/service/base.rb +4 -3
  600. data/lib/puppet/provider/service/bsd.rb +9 -9
  601. data/lib/puppet/provider/service/daemontools.rb +5 -5
  602. data/lib/puppet/provider/service/debian.rb +14 -5
  603. data/lib/puppet/provider/service/freebsd.rb +1 -1
  604. data/lib/puppet/provider/service/init.rb +20 -3
  605. data/lib/puppet/provider/service/launchd.rb +57 -19
  606. data/lib/puppet/provider/service/rcng.rb +51 -0
  607. data/lib/puppet/provider/service/redhat.rb +2 -1
  608. data/lib/puppet/provider/service/runit.rb +4 -4
  609. data/lib/puppet/provider/service/smf.rb +59 -8
  610. data/lib/puppet/provider/service/src.rb +66 -39
  611. data/lib/puppet/provider/service/systemd.rb +141 -22
  612. data/lib/puppet/provider/service/upstart.rb +1 -3
  613. data/lib/puppet/provider/ssh_authorized_key/parsed.rb +1 -1
  614. data/lib/puppet/provider/sshkey/parsed.rb +20 -10
  615. data/lib/puppet/provider/user/aix.rb +12 -6
  616. data/lib/puppet/provider/user/directoryservice.rb +43 -66
  617. data/lib/puppet/provider/user/hpux.rb +1 -1
  618. data/lib/puppet/provider/user/ldap.rb +1 -1
  619. data/lib/puppet/provider/user/pw.rb +1 -0
  620. data/lib/puppet/provider/user/user_role_add.rb +19 -2
  621. data/lib/puppet/provider/user/useradd.rb +1 -1
  622. data/lib/puppet/provider/user/windows_adsi.rb +11 -5
  623. data/lib/puppet/provider/yumrepo/inifile.rb +12 -9
  624. data/lib/puppet/provider/zfs/zfs.rb +2 -2
  625. data/lib/puppet/provider/zone/solaris.rb +6 -3
  626. data/lib/puppet/provider/zpool/zpool.rb +2 -2
  627. data/lib/puppet/provider.rb +11 -7
  628. data/lib/puppet/reference/configuration.rb +13 -5
  629. data/lib/puppet/reference/indirection.rb +2 -2
  630. data/lib/puppet/reference/metaparameter.rb +1 -1
  631. data/lib/puppet/reference/providers.rb +8 -9
  632. data/lib/puppet/reference/report.rb +9 -12
  633. data/lib/puppet/reference/type.rb +3 -3
  634. data/lib/puppet/relationship.rb +7 -9
  635. data/lib/puppet/reports/http.rb +6 -2
  636. data/lib/puppet/reports.rb +5 -1
  637. data/lib/puppet/resource/capability_finder.rb +128 -0
  638. data/lib/puppet/resource/catalog.rb +163 -47
  639. data/lib/puppet/resource/status.rb +34 -20
  640. data/lib/puppet/resource/type.rb +246 -97
  641. data/lib/puppet/resource/type_collection.rb +97 -17
  642. data/lib/puppet/resource.rb +241 -198
  643. data/lib/puppet/settings/array_setting.rb +1 -1
  644. data/lib/puppet/settings/autosign_setting.rb +1 -1
  645. data/lib/puppet/settings/base_setting.rb +9 -3
  646. data/lib/puppet/settings/boolean_setting.rb +1 -1
  647. data/lib/puppet/settings/config_file.rb +4 -3
  648. data/lib/puppet/settings/directory_setting.rb +6 -0
  649. data/lib/puppet/settings/duration_setting.rb +1 -1
  650. data/lib/puppet/settings/enum_setting.rb +1 -1
  651. data/lib/puppet/settings/environment_conf.rb +28 -8
  652. data/lib/puppet/settings/file_or_directory_setting.rb +6 -0
  653. data/lib/puppet/settings/file_setting.rb +22 -11
  654. data/lib/puppet/settings/ini_file.rb +2 -2
  655. data/lib/puppet/settings/priority_setting.rb +1 -1
  656. data/lib/puppet/settings/server_list_setting.rb +20 -0
  657. data/lib/puppet/settings/symbolic_enum_setting.rb +17 -0
  658. data/lib/puppet/settings/terminus_setting.rb +1 -1
  659. data/lib/puppet/settings/ttl_setting.rb +2 -2
  660. data/lib/puppet/settings.rb +99 -46
  661. data/lib/puppet/ssl/base.rb +16 -3
  662. data/lib/puppet/ssl/certificate.rb +1 -1
  663. data/lib/puppet/ssl/certificate_authority/interface.rb +172 -32
  664. data/lib/puppet/ssl/certificate_authority.rb +67 -31
  665. data/lib/puppet/ssl/certificate_factory.rb +5 -5
  666. data/lib/puppet/ssl/certificate_request.rb +19 -19
  667. data/lib/puppet/ssl/certificate_request_attributes.rb +3 -3
  668. data/lib/puppet/ssl/certificate_revocation_list.rb +3 -3
  669. data/lib/puppet/ssl/certificate_signer.rb +1 -1
  670. data/lib/puppet/ssl/configuration.rb +4 -1
  671. data/lib/puppet/ssl/host.rb +47 -25
  672. data/lib/puppet/ssl/inventory.rb +11 -4
  673. data/lib/puppet/ssl/key.rb +8 -4
  674. data/lib/puppet/ssl/oids.rb +48 -8
  675. data/lib/puppet/ssl/validator/default_validator.rb +6 -7
  676. data/lib/puppet/syntax_checkers/base64.rb +41 -0
  677. data/lib/puppet/syntax_checkers/json.rb +5 -7
  678. data/lib/puppet/test/test_helper.rb +21 -11
  679. data/lib/puppet/transaction/additional_resource_generator.rb +105 -11
  680. data/lib/puppet/transaction/event.rb +45 -7
  681. data/lib/puppet/transaction/event_manager.rb +7 -7
  682. data/lib/puppet/transaction/persistence.rb +84 -0
  683. data/lib/puppet/transaction/report.rb +113 -37
  684. data/lib/puppet/transaction/resource_harness.rb +99 -37
  685. data/lib/puppet/transaction.rb +100 -54
  686. data/lib/puppet/type/augeas.rb +15 -6
  687. data/lib/puppet/type/component.rb +11 -0
  688. data/lib/puppet/type/cron.rb +27 -44
  689. data/lib/puppet/type/exec.rb +82 -52
  690. data/lib/puppet/type/file/checksum.rb +1 -0
  691. data/lib/puppet/type/file/checksum_value.rb +53 -0
  692. data/lib/puppet/type/file/content.rb +37 -122
  693. data/lib/puppet/type/file/data_sync.rb +92 -0
  694. data/lib/puppet/type/file/ensure.rb +21 -18
  695. data/lib/puppet/type/file/group.rb +3 -3
  696. data/lib/puppet/type/file/mode.rb +10 -6
  697. data/lib/puppet/type/file/owner.rb +3 -3
  698. data/lib/puppet/type/file/selcontext.rb +19 -2
  699. data/lib/puppet/type/file/source.rb +134 -37
  700. data/lib/puppet/type/file/target.rb +2 -2
  701. data/lib/puppet/type/file.rb +159 -61
  702. data/lib/puppet/type/filebucket.rb +3 -8
  703. data/lib/puppet/type/group.rb +28 -10
  704. data/lib/puppet/type/host.rb +7 -7
  705. data/lib/puppet/type/interface.rb +9 -4
  706. data/lib/puppet/type/k5login.rb +1 -1
  707. data/lib/puppet/type/macauthorization.rb +2 -2
  708. data/lib/puppet/type/mailalias.rb +2 -18
  709. data/lib/puppet/type/maillist.rb +1 -1
  710. data/lib/puppet/type/mount.rb +22 -7
  711. data/lib/puppet/type/notify.rb +3 -1
  712. data/lib/puppet/type/package.rb +37 -17
  713. data/lib/puppet/type/resources.rb +7 -7
  714. data/lib/puppet/type/schedule.rb +14 -14
  715. data/lib/puppet/type/scheduled_task.rb +5 -5
  716. data/lib/puppet/type/service.rb +25 -1
  717. data/lib/puppet/type/ssh_authorized_key.rb +20 -30
  718. data/lib/puppet/type/sshkey.rb +9 -7
  719. data/lib/puppet/type/stage.rb +1 -1
  720. data/lib/puppet/type/tidy.rb +22 -15
  721. data/lib/puppet/type/user.rb +80 -53
  722. data/lib/puppet/type/yumrepo.rb +31 -11
  723. data/lib/puppet/type/zone.rb +13 -13
  724. data/lib/puppet/type/zpool.rb +3 -3
  725. data/lib/puppet/type.rb +175 -47
  726. data/lib/puppet/util/at_fork/noop.rb +18 -0
  727. data/lib/puppet/util/at_fork/solaris.rb +158 -0
  728. data/lib/puppet/util/at_fork.rb +35 -0
  729. data/lib/puppet/util/autoload.rb +18 -13
  730. data/lib/puppet/util/backups.rb +6 -6
  731. data/lib/puppet/util/character_encoding.rb +98 -0
  732. data/lib/puppet/util/checksums.rb +74 -31
  733. data/lib/puppet/util/classgen.rb +5 -5
  734. data/lib/puppet/util/command_line/puppet_option_parser.rb +3 -3
  735. data/lib/puppet/util/command_line/trollop.rb +32 -32
  736. data/lib/puppet/util/command_line.rb +14 -6
  737. data/lib/puppet/util/diff.rb +1 -1
  738. data/lib/puppet/util/errors.rb +4 -4
  739. data/lib/puppet/util/execution.rb +42 -23
  740. data/lib/puppet/util/feature.rb +5 -5
  741. data/lib/puppet/util/fileparsing.rb +8 -8
  742. data/lib/puppet/util/filetype.rb +26 -20
  743. data/lib/puppet/util/http_proxy.rb +132 -0
  744. data/lib/puppet/util/inifile.rb +5 -5
  745. data/lib/puppet/util/instance_loader.rb +2 -2
  746. data/lib/puppet/util/json_lockfile.rb +4 -4
  747. data/lib/puppet/util/ldap/connection.rb +2 -2
  748. data/lib/puppet/util/ldap/manager.rb +2 -2
  749. data/lib/puppet/util/limits.rb +1 -1
  750. data/lib/puppet/util/log/destinations.rb +10 -16
  751. data/lib/puppet/util/log.rb +51 -17
  752. data/lib/puppet/util/logging.rb +53 -7
  753. data/lib/puppet/util/metric.rb +9 -6
  754. data/lib/puppet/util/monkey_patches.rb +41 -65
  755. data/lib/puppet/util/multi_match.rb +51 -0
  756. data/lib/puppet/util/network_device/cisco/device.rb +29 -11
  757. data/lib/puppet/util/network_device/cisco/interface.rb +21 -9
  758. data/lib/puppet/util/network_device/config.rb +7 -7
  759. data/lib/puppet/util/network_device/transport/ssh.rb +13 -9
  760. data/lib/puppet/util/network_device/transport/telnet.rb +39 -36
  761. data/lib/puppet/util/network_device.rb +1 -1
  762. data/lib/puppet/util/plist.rb +153 -0
  763. data/lib/puppet/util/posix.rb +5 -5
  764. data/lib/puppet/util/profiler/aggregate.rb +1 -1
  765. data/lib/puppet/util/profiler/around_profiler.rb +1 -1
  766. data/lib/puppet/util/profiler/wall_clock.rb +1 -1
  767. data/lib/puppet/util/profiler.rb +1 -1
  768. data/lib/puppet/util/provider_features.rb +1 -1
  769. data/lib/puppet/util/psych_support.rb +4 -12
  770. data/lib/puppet/util/rdoc/generators/puppet_generator.rb +3 -3
  771. data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +2 -1
  772. data/lib/puppet/util/rdoc.rb +6 -6
  773. data/lib/puppet/util/reference.rb +9 -7
  774. data/lib/puppet/util/resource_template.rb +2 -2
  775. data/lib/puppet/util/retry_action.rb +2 -2
  776. data/lib/puppet/util/rubygems.rb +1 -1
  777. data/lib/puppet/util/run_mode.rb +2 -2
  778. data/lib/puppet/util/selinux.rb +54 -12
  779. data/lib/puppet/util/skip_tags.rb +9 -0
  780. data/lib/puppet/util/splayer.rb +18 -0
  781. data/lib/puppet/util/storage.rb +5 -5
  782. data/lib/puppet/util/suidmanager.rb +4 -4
  783. data/lib/puppet/util/symbolic_file_mode.rb +9 -9
  784. data/lib/puppet/util/tag_set.rb +1 -4
  785. data/lib/puppet/util/tagging.rb +9 -3
  786. data/lib/puppet/util/watcher/periodic_watcher.rb +2 -2
  787. data/lib/puppet/util/windows/access_control_entry.rb +2 -2
  788. data/lib/puppet/util/windows/access_control_list.rb +3 -3
  789. data/lib/puppet/util/windows/adsi.rb +110 -45
  790. data/lib/puppet/util/windows/api_types.rb +28 -19
  791. data/lib/puppet/util/windows/com.rb +7 -7
  792. data/lib/puppet/util/windows/error.rb +3 -3
  793. data/lib/puppet/util/windows/eventlog.rb +192 -0
  794. data/lib/puppet/util/windows/file.rb +115 -22
  795. data/lib/puppet/util/windows/principal.rb +191 -0
  796. data/lib/puppet/util/windows/process.rb +90 -13
  797. data/lib/puppet/util/windows/registry.rb +31 -25
  798. data/lib/puppet/util/windows/root_certs.rb +6 -6
  799. data/lib/puppet/util/windows/security.rb +52 -51
  800. data/lib/puppet/util/windows/security_descriptor.rb +1 -1
  801. data/lib/puppet/util/windows/sid.rb +89 -20
  802. data/lib/puppet/util/windows/taskscheduler.rb +154 -98
  803. data/lib/puppet/util/windows/user.rb +38 -20
  804. data/lib/puppet/util/windows.rb +7 -0
  805. data/lib/puppet/util/yaml.rb +15 -3
  806. data/lib/puppet/util.rb +259 -33
  807. data/lib/puppet/vendor/deep_merge/deep_merge.gemspec +1 -1
  808. data/lib/puppet/vendor/deep_merge/test/test_deep_merge.rb +1 -1
  809. data/lib/puppet/vendor/load_semantic_puppet.rb +1 -0
  810. data/lib/puppet/vendor/pathspec/LICENSE +2 -2
  811. data/lib/puppet/vendor/pathspec/README.md +1 -1
  812. data/lib/puppet/vendor/pathspec/lib/pathspec.rb +2 -1
  813. data/lib/puppet/vendor/require_vendored.rb +0 -1
  814. data/lib/puppet/vendor/semantic/lib/semantic.rb +4 -6
  815. data/lib/puppet/vendor/{semantic/lib/semantic → semantic_puppet/lib/semantic_puppet}/dependency/graph.rb +2 -2
  816. data/lib/puppet/vendor/{semantic/lib/semantic → semantic_puppet/lib/semantic_puppet}/dependency/graph_node.rb +2 -2
  817. data/lib/puppet/vendor/{semantic/lib/semantic → semantic_puppet/lib/semantic_puppet}/dependency/module_release.rb +17 -5
  818. data/lib/puppet/vendor/{semantic/lib/semantic → semantic_puppet/lib/semantic_puppet}/dependency/source.rb +2 -2
  819. data/lib/puppet/vendor/{semantic/lib/semantic → semantic_puppet/lib/semantic_puppet}/dependency/unsatisfiable_graph.rb +2 -2
  820. data/lib/puppet/vendor/{semantic/lib/semantic → semantic_puppet/lib/semantic_puppet}/dependency.rb +7 -7
  821. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/gem_version.rb +3 -0
  822. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version.rb +203 -0
  823. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version_range.rb +758 -0
  824. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet.rb +9 -0
  825. data/lib/puppet/vendor/semantic_puppet/locales/config.yaml +21 -0
  826. data/lib/puppet/version.rb +7 -3
  827. data/lib/puppet.rb +104 -6
  828. data/lib/puppet_x.rb +7 -1
  829. data/locales/config.yaml +29 -0
  830. data/locales/puppet.pot +7995 -0
  831. data/man/man5/puppet.conf.5 +13 -35
  832. data/man/man8/puppet-agent.8 +2 -2
  833. data/man/man8/puppet-apply.8 +2 -2
  834. data/man/man8/puppet-ca.8 +2 -2
  835. data/man/man8/puppet-catalog.8 +2 -2
  836. data/man/man8/puppet-cert.8 +2 -2
  837. data/man/man8/puppet-certificate.8 +2 -2
  838. data/man/man8/puppet-certificate_request.8 +2 -2
  839. data/man/man8/puppet-certificate_revocation_list.8 +2 -2
  840. data/man/man8/puppet-config.8 +3 -3
  841. data/man/man8/puppet-describe.8 +1 -1
  842. data/man/man8/puppet-device.8 +1 -1
  843. data/man/man8/puppet-doc.8 +1 -1
  844. data/man/man8/puppet-epp.8 +2 -2
  845. data/man/man8/puppet-facts.8 +2 -2
  846. data/man/man8/puppet-filebucket.8 +2 -2
  847. data/man/man8/puppet-help.8 +2 -2
  848. data/man/man8/puppet-inspect.8 +2 -2
  849. data/man/man8/puppet-key.8 +2 -2
  850. data/man/man8/puppet-man.8 +2 -2
  851. data/man/man8/puppet-master.8 +2 -2
  852. data/man/man8/puppet-module.8 +9 -9
  853. data/man/man8/puppet-node.8 +2 -2
  854. data/man/man8/puppet-parser.8 +2 -2
  855. data/man/man8/puppet-plugin.8 +2 -2
  856. data/man/man8/puppet-report.8 +2 -2
  857. data/man/man8/puppet-resource.8 +2 -2
  858. data/man/man8/puppet-status.8 +3 -3
  859. data/man/man8/puppet.8 +1 -1
  860. data/spec/fixtures/module.tar.gz +0 -0
  861. data/spec/fixtures/unit/application/environments/production/data/common.yaml +22 -0
  862. data/spec/fixtures/unit/application/environments/production/environment.conf +1 -0
  863. data/spec/fixtures/unit/application/environments/production/manifests/site.pp +1 -0
  864. data/spec/fixtures/unit/application/environments/puppet_func_provider/environment.conf +1 -0
  865. data/spec/fixtures/unit/application/environments/puppet_func_provider/functions/environment/data.pp +10 -0
  866. data/spec/fixtures/unit/application/environments/puppet_func_provider/manifests/site.pp +1 -0
  867. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/data/bad.json +3 -0
  868. data/spec/fixtures/unit/data_providers/environments/{sample → hiera_bad_syntax_json}/environment.conf +1 -1
  869. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/hiera.yaml +5 -0
  870. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/manifests/site.pp +5 -0
  871. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/data/bad.yaml +3 -0
  872. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/environment.conf +2 -0
  873. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/hiera.yaml +5 -0
  874. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/manifests/site.pp +5 -0
  875. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/data/common.yaml +2 -0
  876. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/environment.conf +2 -0
  877. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/manifests/site.pp +1 -0
  878. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/data/common.yaml +2 -0
  879. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/manifests/init.pp +5 -0
  880. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/metadata.json +9 -0
  881. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/first.json +3 -0
  882. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/name.yaml +2 -0
  883. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/second.json +3 -0
  884. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/single.yaml +2 -0
  885. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/third_utf8.json +3 -0
  886. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/utf8.yaml +3 -0
  887. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data2/single.yaml +2 -0
  888. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/environment.conf +2 -0
  889. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/hiera.yaml +22 -0
  890. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/manifests/site.pp +5 -0
  891. data/spec/fixtures/unit/data_providers/environments/hiera_misc/data/common.yaml +48 -0
  892. data/spec/fixtures/unit/data_providers/environments/hiera_misc/environment.conf +2 -0
  893. data/spec/fixtures/unit/data_providers/environments/hiera_misc/manifests/site.pp +1 -0
  894. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/data/common.yaml +30 -0
  895. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/manifests/init.pp +13 -0
  896. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/metadata.json +9 -0
  897. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/data/common.yaml +4 -0
  898. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/data/specific.yaml +4 -0
  899. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/environment.conf +2 -0
  900. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/hiera.yaml +7 -0
  901. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/manifests/site.pp +1 -0
  902. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/first.json +3 -0
  903. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/name.yaml +2 -0
  904. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/second.json +3 -0
  905. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/server1.yaml +1 -0
  906. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/server2.yaml +1 -0
  907. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/single.yaml +2 -0
  908. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data2/single.yaml +2 -0
  909. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/hiera.yaml +20 -0
  910. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/manifests/init.pp +5 -0
  911. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/metadata.json +9 -0
  912. data/spec/fixtures/unit/data_providers/environments/hiera_modules/data/common.yaml +4 -0
  913. data/spec/fixtures/unit/data_providers/environments/hiera_modules/data/specific.yaml +4 -0
  914. data/spec/fixtures/unit/data_providers/environments/hiera_modules/environment.conf +2 -0
  915. data/spec/fixtures/unit/data_providers/environments/hiera_modules/hiera.yaml +7 -0
  916. data/spec/fixtures/unit/data_providers/environments/hiera_modules/manifests/site.pp +1 -0
  917. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/data/common.yaml +6 -0
  918. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/hiera.yaml +5 -0
  919. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/manifests/init.pp +2 -0
  920. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/metadata.json +9 -0
  921. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/data/common.yaml +4 -0
  922. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/hiera.yaml +5 -0
  923. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/manifests/init.pp +3 -0
  924. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/metadata.json +9 -0
  925. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/lib/puppet/functions/abc/data.rb +2 -1
  926. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/manifests/init.pp +2 -1
  927. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/metadata.json +9 -0
  928. data/spec/fixtures/unit/data_providers/environments/production/modules/xyz/metadata.json +9 -0
  929. data/spec/fixtures/unit/functions/lookup/data/common.yaml +19 -0
  930. data/spec/fixtures/unit/functions/lookup_fixture/data/common.yaml +19 -0
  931. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/abc/metadata.json +9 -0
  932. data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/modules/bad_data/lib/puppet/functions/bad_data/data.rb +1 -0
  933. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bad_data/manifests/init.pp +2 -0
  934. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bad_data/metadata.json +9 -0
  935. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bca/metadata.json +9 -0
  936. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/data/empty.json +0 -0
  937. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/hiera.yaml +5 -0
  938. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/manifests/init.pp +2 -0
  939. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/metadata.json +9 -0
  940. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/data/empty_key.json +1 -0
  941. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/hiera.yaml +5 -0
  942. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/manifests/init.pp +2 -0
  943. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/metadata.json +9 -0
  944. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/data/empty_key.yaml +1 -0
  945. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/hiera.yaml +5 -0
  946. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/manifests/init.pp +2 -0
  947. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/metadata.json +9 -0
  948. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/data/empty.yaml +2 -0
  949. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/hiera.yaml +5 -0
  950. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/manifests/init.pp +2 -0
  951. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/metadata.json +9 -0
  952. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/data/first.json +4 -0
  953. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/hiera.yaml +8 -0
  954. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/manifests/init.pp +5 -0
  955. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/metadata.json +9 -0
  956. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/lib/puppet/functions/meta/data.rb +9 -0
  957. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/manifests/init.pp +3 -0
  958. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/metadata.json +9 -0
  959. data/spec/fixtures/unit/module/trailing-comma.json +1 -1
  960. data/spec/fixtures/unit/parser/lexer/subclass_name_duplication.pp +0 -0
  961. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/functions/usee_puppet.pp +3 -0
  962. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/functions/usee/usee_ruby.rb +6 -0
  963. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/type/usee_type.rb +5 -0
  964. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/manifests/init.pp +8 -0
  965. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/types/zero.pp +1 -0
  966. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee2/lib/puppet/functions/usee2/callee.rb +5 -0
  967. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_puppet.pp +5 -0
  968. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_puppet_init.pp +5 -0
  969. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_ruby.pp +5 -0
  970. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/caller2.rb +5 -0
  971. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_puppet.rb +5 -0
  972. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_puppet_init.rb +5 -0
  973. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_ruby.rb +5 -0
  974. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/manifests/init.pp +87 -0
  975. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/{user → modules/user}/metadata.json +2 -1
  976. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/types/withuseeone.pp +1 -0
  977. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/types/withuseezero.pp +1 -0
  978. data/spec/fixtures/unit/pops/loaders/loaders/no_modules/manifests/site.pp +10 -0
  979. data/spec/fixtures/unit/pops/parser/lexer/subclass_name_duplication.pp +0 -0
  980. data/spec/fixtures/unit/provider/package/yum/yum-check-update-broken-notices.txt +187 -0
  981. data/spec/fixtures/unit/provider/package/yum/yum-check-update-obsoletes.txt +195 -0
  982. data/spec/fixtures/unit/provider/package/yum/yum-check-update-security.txt +184 -0
  983. data/spec/fixtures/unit/provider/service/smf/svcs.out +4 -3
  984. data/spec/fixtures/unit/provider/sshkey/parsed/sample_with_blank_lines +8 -0
  985. data/spec/fixtures/vcr/cassettes/Puppet_Network_HTTP_Connection/when_handling_requests/_request_get/should_yield_to_the_block.yml +24 -0
  986. data/spec/fixtures/vcr/cassettes/Puppet_Network_HTTP_Connection/when_handling_requests/_request_head/should_yield_to_the_block.yml +24 -0
  987. data/spec/fixtures/vcr/cassettes/Puppet_Network_HTTP_Connection/when_handling_requests/_request_post/should_yield_to_the_block.yml +24 -0
  988. 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
  989. 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
  990. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_md5/should_update_if_content_differs_on_disk.yml +213 -0
  991. 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
  992. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_mtime/should_fetch_if_no_header_specified.yml +197 -0
  993. 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
  994. 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
  995. data/spec/integration/agent/logging_spec.rb +15 -14
  996. data/spec/integration/application/apply_spec.rb +395 -34
  997. data/spec/integration/application/doc_spec.rb +0 -0
  998. data/spec/integration/application/lookup_spec.rb +155 -0
  999. data/spec/integration/configurer_spec.rb +1 -1
  1000. data/spec/integration/data_binding_spec.rb +195 -0
  1001. data/spec/integration/defaults_spec.rb +29 -4
  1002. data/spec/integration/directory_environments_spec.rb +16 -0
  1003. data/spec/integration/environments/default_manifest_spec.rb +16 -16
  1004. data/spec/integration/environments/setting_hooks_spec.rb +1 -1
  1005. data/spec/integration/environments/settings_spec.rb +32 -4
  1006. data/spec/integration/faces/ca_spec.rb +0 -0
  1007. data/spec/integration/faces/config_spec.rb +80 -0
  1008. data/spec/integration/faces/documentation_spec.rb +2 -2
  1009. data/spec/integration/file_bucket/file_spec.rb +2 -2
  1010. data/spec/integration/file_serving/fileset_spec.rb +0 -0
  1011. data/spec/integration/file_serving/terminus_helper_spec.rb +0 -0
  1012. data/spec/integration/file_system/uniquefile_spec.rb +29 -0
  1013. data/spec/integration/indirector/catalog/compiler_spec.rb +0 -0
  1014. data/spec/integration/indirector/direct_file_server_spec.rb +0 -0
  1015. data/spec/integration/indirector/facts/facter_spec.rb +38 -0
  1016. data/spec/integration/indirector/file_content/file_server_spec.rb +1 -0
  1017. data/spec/integration/indirector/file_metadata/file_server_spec.rb +1 -0
  1018. data/spec/integration/indirector/node/ldap_spec.rb +0 -0
  1019. data/spec/integration/module_tool/tar/mini_spec.rb +28 -0
  1020. data/spec/integration/network/formats_spec.rb +0 -0
  1021. data/spec/integration/network/http/api/indirected_routes_spec.rb +33 -0
  1022. data/spec/integration/node/environment_spec.rb +34 -0
  1023. data/spec/integration/node/facts_spec.rb +0 -0
  1024. data/spec/integration/node_spec.rb +0 -0
  1025. data/spec/integration/parser/catalog_spec.rb +15 -3
  1026. data/spec/integration/parser/class_spec.rb +6 -6
  1027. data/spec/integration/parser/collection_spec.rb +18 -0
  1028. data/spec/integration/parser/compiler_spec.rb +323 -920
  1029. data/spec/integration/parser/dynamic_scoping_spec.rb +66 -0
  1030. data/spec/integration/parser/parameter_defaults_spec.rb +358 -0
  1031. data/spec/integration/parser/pcore_resource_spec.rb +260 -0
  1032. data/spec/integration/parser/resource_expressions_spec.rb +9 -7
  1033. data/spec/integration/parser/scope_spec.rb +73 -6
  1034. data/spec/integration/parser/undef_param_spec.rb +9 -1
  1035. data/spec/integration/provider/mailalias/aliases_spec.rb +0 -0
  1036. data/spec/integration/provider/mount_spec.rb +23 -36
  1037. data/spec/integration/provider/service/init_spec.rb +0 -0
  1038. data/spec/integration/provider/service/windows_spec.rb +3 -2
  1039. data/spec/integration/provider/ssh_authorized_key_spec.rb +0 -0
  1040. data/spec/integration/provider/yumrepo_spec.rb +4 -1
  1041. data/spec/integration/reference/providers_spec.rb +0 -0
  1042. data/spec/integration/reports_spec.rb +0 -0
  1043. data/spec/integration/resource/catalog_spec.rb +1 -5
  1044. data/spec/integration/resource/type_collection_spec.rb +14 -0
  1045. data/spec/integration/ssl/autosign_spec.rb +18 -3
  1046. data/spec/integration/ssl/certificate_authority_spec.rb +0 -1
  1047. data/spec/integration/ssl/certificate_request_spec.rb +0 -1
  1048. data/spec/integration/ssl/certificate_revocation_list_spec.rb +0 -1
  1049. data/spec/integration/ssl/host_spec.rb +0 -1
  1050. data/spec/integration/ssl/key_spec.rb +104 -0
  1051. data/spec/integration/test/test_helper_spec.rb +32 -0
  1052. data/spec/integration/transaction/report_spec.rb +683 -1
  1053. data/spec/integration/transaction_spec.rb +127 -3
  1054. data/spec/integration/type/exec_spec.rb +0 -0
  1055. data/spec/integration/type/file_spec.rb +266 -12
  1056. data/spec/integration/type/package_spec.rb +79 -2
  1057. data/spec/integration/type/tidy_spec.rb +21 -9
  1058. data/spec/integration/type/user_spec.rb +13 -6
  1059. data/spec/integration/type_spec.rb +0 -0
  1060. data/spec/integration/util/autoload_spec.rb +0 -0
  1061. data/spec/integration/util/execution_spec.rb +30 -0
  1062. data/spec/integration/util/rdoc/parser_spec.rb +1 -1
  1063. data/spec/integration/util/settings_spec.rb +26 -0
  1064. data/spec/integration/util/windows/adsi_spec.rb +99 -0
  1065. data/spec/integration/util/windows/principal_spec.rb +250 -0
  1066. data/spec/integration/util/windows/process_spec.rb +35 -2
  1067. data/spec/{unit → integration}/util/windows/registry_spec.rb +92 -2
  1068. data/spec/integration/util/windows/security_spec.rb +61 -16
  1069. data/spec/integration/util/windows/user_spec.rb +27 -5
  1070. data/spec/integration/util_spec.rb +49 -27
  1071. data/spec/lib/matchers/include_in_order.rb +2 -3
  1072. data/spec/lib/matchers/json.rb +3 -3
  1073. data/spec/lib/puppet/face/1.0.0/huzzah.rb +1 -1
  1074. data/spec/lib/puppet/face/basetest.rb +1 -1
  1075. data/spec/lib/puppet/face/huzzah.rb +1 -1
  1076. data/spec/lib/puppet/face/version_matching.rb +1 -1
  1077. data/spec/lib/puppet/indirector_testing.rb +4 -0
  1078. data/spec/lib/puppet_spec/character_encoding.rb +12 -0
  1079. data/spec/lib/puppet_spec/compiler.rb +40 -4
  1080. data/spec/lib/puppet_spec/files.rb +16 -2
  1081. data/spec/lib/puppet_spec/fixtures.rb +0 -0
  1082. data/spec/lib/puppet_spec/language.rb +3 -1
  1083. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +2 -2
  1084. data/spec/lib/puppet_spec/module_tool/stub_source.rb +1 -1
  1085. data/spec/lib/puppet_spec/modules.rb +2 -2
  1086. data/spec/lib/puppet_spec/network.rb +22 -14
  1087. data/spec/lib/puppet_spec/pops.rb +13 -0
  1088. data/spec/lib/puppet_spec/unindent.rb +5 -0
  1089. data/spec/lib/puppet_spec/verbose.rb +0 -0
  1090. data/spec/shared_behaviours/all_parsedfile_providers.rb +0 -0
  1091. data/spec/shared_behaviours/file_server_terminus.rb +0 -0
  1092. data/spec/shared_behaviours/file_serving.rb +0 -0
  1093. data/spec/shared_behaviours/iterative_functions.rb +9 -9
  1094. data/spec/shared_behaviours/memory_terminus.rb +0 -0
  1095. data/spec/shared_behaviours/path_parameters.rb +0 -0
  1096. data/spec/shared_behaviours/things_that_declare_options.rb +0 -0
  1097. data/spec/shared_contexts/types_setup.rb +143 -0
  1098. data/spec/shared_examples/rhel_package_provider.rb +356 -0
  1099. data/spec/spec_helper.rb +23 -13
  1100. data/spec/unit/agent/locker_spec.rb +4 -4
  1101. data/spec/unit/agent_spec.rb +23 -46
  1102. data/spec/unit/application/agent_spec.rb +22 -0
  1103. data/spec/unit/application/apply_spec.rb +59 -14
  1104. data/spec/unit/application/cert_spec.rb +20 -0
  1105. data/spec/unit/application/certificate_spec.rb +0 -0
  1106. data/spec/unit/application/config_spec.rb +0 -0
  1107. data/spec/unit/application/describe_spec.rb +19 -0
  1108. data/spec/unit/application/device_spec.rb +41 -2
  1109. data/spec/unit/application/doc_spec.rb +0 -0
  1110. data/spec/unit/application/face_base_spec.rb +22 -6
  1111. data/spec/unit/application/facts_spec.rb +0 -0
  1112. data/spec/unit/application/filebucket_spec.rb +88 -2
  1113. data/spec/unit/application/indirection_base_spec.rb +0 -0
  1114. data/spec/unit/application/lookup_spec.rb +532 -0
  1115. data/spec/unit/application/master_spec.rb +24 -8
  1116. data/spec/unit/application/resource_spec.rb +39 -1
  1117. data/spec/unit/application_spec.rb +3 -9
  1118. data/spec/unit/capability_spec.rb +412 -0
  1119. data/spec/unit/configurer/downloader_factory_spec.rb +0 -0
  1120. data/spec/unit/configurer/downloader_spec.rb +5 -5
  1121. data/spec/unit/configurer/fact_handler_spec.rb +76 -20
  1122. data/spec/unit/configurer/plugin_handler_spec.rb +5 -8
  1123. data/spec/unit/configurer_spec.rb +372 -58
  1124. data/spec/unit/confine/exists_spec.rb +0 -0
  1125. data/spec/unit/confine/false_spec.rb +0 -0
  1126. data/spec/unit/confine/feature_spec.rb +0 -0
  1127. data/spec/unit/confine/true_spec.rb +0 -0
  1128. data/spec/unit/confine/variable_spec.rb +0 -0
  1129. data/spec/unit/confine_collection_spec.rb +0 -0
  1130. data/spec/unit/confine_spec.rb +0 -0
  1131. data/spec/unit/confiner_spec.rb +0 -0
  1132. data/spec/unit/context/trusted_information_spec.rb +24 -1
  1133. data/spec/unit/daemon_spec.rb +18 -8
  1134. data/spec/unit/data_providers/function_data_provider_spec.rb +21 -3
  1135. data/spec/unit/data_providers/hiera_data_provider_spec.rb +361 -0
  1136. data/spec/unit/defaults_spec.rb +34 -17
  1137. data/spec/unit/environments_spec.rb +26 -4
  1138. data/spec/unit/etc_spec.rb +442 -0
  1139. data/spec/unit/external/pson_spec.rb +0 -0
  1140. data/spec/unit/face/ca_spec.rb +10 -0
  1141. data/spec/unit/face/catalog_spec.rb +0 -0
  1142. data/spec/unit/face/certificate_request_spec.rb +10 -0
  1143. data/spec/unit/face/certificate_revocation_list_spec.rb +10 -0
  1144. data/spec/unit/face/certificate_spec.rb +10 -2
  1145. data/spec/unit/face/config_spec.rb +47 -0
  1146. data/spec/unit/face/epp_face_spec.rb +24 -5
  1147. data/spec/unit/face/facts_spec.rb +0 -0
  1148. data/spec/unit/face/generate_spec.rb +230 -0
  1149. data/spec/unit/face/help_spec.rb +70 -0
  1150. data/spec/unit/face/key_spec.rb +10 -0
  1151. data/spec/unit/face/module/list_spec.rb +60 -0
  1152. data/spec/unit/face/module/search_spec.rb +1 -1
  1153. data/spec/unit/face/node_spec.rb +1 -1
  1154. data/spec/unit/face/parser_spec.rb +49 -2
  1155. data/spec/unit/face/plugin_spec.rb +29 -4
  1156. data/spec/unit/face/status_spec.rb +10 -0
  1157. data/spec/unit/face_spec.rb +0 -0
  1158. data/spec/unit/file_bucket/dipper_spec.rb +210 -1
  1159. data/spec/unit/file_bucket/file_spec.rb +3 -3
  1160. data/spec/unit/file_serving/base_spec.rb +0 -0
  1161. data/spec/unit/file_serving/configuration/parser_spec.rb +25 -30
  1162. data/spec/unit/file_serving/configuration_spec.rb +1 -1
  1163. data/spec/unit/file_serving/content_spec.rb +0 -0
  1164. data/spec/unit/file_serving/fileset_spec.rb +0 -0
  1165. data/spec/unit/file_serving/http_metadata_spec.rb +85 -0
  1166. data/spec/unit/file_serving/metadata_spec.rb +84 -8
  1167. data/spec/unit/file_serving/mount/file_spec.rb +0 -0
  1168. data/spec/unit/file_serving/mount/modules_spec.rb +0 -0
  1169. data/spec/unit/file_serving/mount/pluginfacts_spec.rb +0 -0
  1170. data/spec/unit/file_serving/mount/plugins_spec.rb +0 -0
  1171. data/spec/unit/file_serving/mount_spec.rb +0 -0
  1172. data/spec/unit/file_serving/terminus_helper_spec.rb +0 -0
  1173. data/spec/unit/file_serving/terminus_selector_spec.rb +12 -2
  1174. data/spec/unit/file_system/uniquefile_spec.rb +20 -0
  1175. data/spec/unit/file_system_spec.rb +335 -6
  1176. data/spec/unit/forge/forge_spec.rb +112 -0
  1177. data/spec/unit/forge/repository_spec.rb +31 -4
  1178. data/spec/unit/functions/annotate_spec.rb +175 -0
  1179. data/spec/unit/functions/assert_type_spec.rb +48 -8
  1180. data/spec/unit/functions/binary_file_spec.rb +46 -0
  1181. data/spec/unit/functions/break_spec.rb +117 -0
  1182. data/spec/unit/functions/call_spec.rb +77 -0
  1183. data/spec/unit/{parser/functions → functions}/contain_spec.rb +69 -4
  1184. data/spec/unit/functions/defined_spec.rb +2 -2
  1185. data/spec/unit/functions/dig_spec.rb +58 -0
  1186. data/spec/unit/functions/epp_spec.rb +17 -9
  1187. data/spec/unit/functions/filter_spec.rb +18 -0
  1188. data/spec/unit/functions/find_file_spec.rb +69 -0
  1189. data/spec/unit/functions/hiera_spec.rb +447 -47
  1190. data/spec/unit/functions/include_spec.rb +175 -0
  1191. data/spec/unit/functions/inline_epp_spec.rb +4 -4
  1192. data/spec/unit/functions/lest_spec.rb +34 -0
  1193. data/spec/unit/functions/logging_spec.rb +54 -0
  1194. data/spec/unit/functions/lookup_fixture_spec.rb +688 -0
  1195. data/spec/unit/functions/lookup_spec.rb +3108 -264
  1196. data/spec/unit/functions/match_spec.rb +2 -2
  1197. data/spec/unit/functions/new_spec.rb +694 -0
  1198. data/spec/unit/functions/next_spec.rb +93 -0
  1199. data/spec/unit/functions/regsubst_spec.rb +26 -9
  1200. data/spec/unit/functions/require_spec.rb +83 -0
  1201. data/spec/unit/functions/return_spec.rb +105 -0
  1202. data/spec/unit/functions/reverse_each_spec.rb +108 -0
  1203. data/spec/unit/functions/scanf_spec.rb +1 -1
  1204. data/spec/unit/{parser/functions → functions}/shared.rb +15 -12
  1205. data/spec/unit/functions/split_spec.rb +3 -3
  1206. data/spec/unit/functions/step_spec.rb +113 -0
  1207. data/spec/unit/functions/strftime_spec.rb +152 -0
  1208. data/spec/unit/functions/then_spec.rb +40 -0
  1209. data/spec/unit/functions/type_spec.rb +35 -0
  1210. data/spec/unit/functions/unique_spec.rb +111 -0
  1211. data/spec/unit/functions/unwrap_spec.rb +29 -0
  1212. data/spec/unit/functions/versioncmp_spec.rb +36 -0
  1213. data/spec/unit/functions4_spec.rb +265 -115
  1214. data/spec/unit/graph/rb_tree_map_spec.rb +1 -1
  1215. data/spec/unit/graph/relationship_graph_spec.rb +0 -0
  1216. data/spec/unit/graph/sequential_prioritizer_spec.rb +1 -1
  1217. data/spec/unit/graph/simple_graph_spec.rb +59 -56
  1218. data/spec/unit/hiera/scope_spec.rb +6 -3
  1219. data/spec/unit/hiera_puppet_spec.rb +49 -8
  1220. data/spec/unit/indirector/catalog/compiler_spec.rb +887 -83
  1221. data/spec/unit/indirector/catalog/json_spec.rb +50 -1
  1222. data/spec/unit/indirector/catalog/msgpack_spec.rb +0 -0
  1223. data/spec/unit/indirector/catalog/rest_spec.rb +0 -0
  1224. data/spec/unit/indirector/catalog/store_configs_spec.rb +0 -0
  1225. data/spec/unit/indirector/catalog/yaml_spec.rb +0 -0
  1226. data/spec/unit/indirector/certificate/ca_spec.rb +0 -0
  1227. data/spec/unit/indirector/certificate/disabled_ca_spec.rb +0 -0
  1228. data/spec/unit/indirector/certificate/file_spec.rb +0 -0
  1229. data/spec/unit/indirector/certificate/rest_spec.rb +0 -0
  1230. data/spec/unit/indirector/certificate_request/ca_spec.rb +0 -0
  1231. data/spec/unit/indirector/certificate_request/disabled_ca_spec.rb +0 -0
  1232. data/spec/unit/indirector/certificate_request/file_spec.rb +0 -0
  1233. data/spec/unit/indirector/certificate_request/rest_spec.rb +0 -0
  1234. data/spec/unit/indirector/certificate_revocation_list/ca_spec.rb +0 -0
  1235. data/spec/unit/indirector/certificate_revocation_list/disabled_ca_spec.rb +0 -0
  1236. data/spec/unit/indirector/certificate_revocation_list/file_spec.rb +0 -0
  1237. data/spec/unit/indirector/certificate_revocation_list/rest_spec.rb +0 -0
  1238. data/spec/unit/indirector/certificate_status/file_spec.rb +0 -0
  1239. data/spec/unit/indirector/certificate_status/rest_spec.rb +0 -0
  1240. data/spec/unit/indirector/code_spec.rb +0 -0
  1241. data/spec/unit/indirector/data_binding/none_spec.rb +2 -2
  1242. data/spec/unit/indirector/direct_file_server_spec.rb +0 -0
  1243. data/spec/unit/indirector/envelope_spec.rb +0 -0
  1244. data/spec/unit/indirector/exec_spec.rb +0 -0
  1245. data/spec/unit/indirector/face_spec.rb +10 -2
  1246. data/spec/unit/indirector/facts/facter_spec.rb +4 -12
  1247. data/spec/unit/indirector/facts/network_device_spec.rb +0 -0
  1248. data/spec/unit/indirector/facts/store_configs_spec.rb +0 -0
  1249. data/spec/unit/indirector/facts/yaml_spec.rb +0 -0
  1250. data/spec/unit/indirector/file_bucket_file/file_spec.rb +86 -4
  1251. data/spec/unit/indirector/file_bucket_file/rest_spec.rb +0 -0
  1252. data/spec/unit/indirector/file_content/file_server_spec.rb +0 -0
  1253. data/spec/unit/indirector/file_content/file_spec.rb +0 -0
  1254. data/spec/unit/indirector/file_content/rest_spec.rb +0 -0
  1255. data/spec/unit/indirector/file_metadata/file_server_spec.rb +0 -0
  1256. data/spec/unit/indirector/file_metadata/file_spec.rb +0 -0
  1257. data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -0
  1258. data/spec/unit/indirector/file_server_spec.rb +17 -2
  1259. data/spec/unit/indirector/indirection_spec.rb +14 -38
  1260. data/spec/unit/indirector/json_spec.rb +27 -6
  1261. data/spec/unit/indirector/key/ca_spec.rb +0 -0
  1262. data/spec/unit/indirector/key/disabled_ca_spec.rb +0 -0
  1263. data/spec/unit/indirector/key/file_spec.rb +1 -1
  1264. data/spec/unit/indirector/ldap_spec.rb +0 -0
  1265. data/spec/unit/indirector/memory_spec.rb +0 -0
  1266. data/spec/unit/indirector/msgpack_spec.rb +11 -1
  1267. data/spec/unit/indirector/node/exec_spec.rb +12 -12
  1268. data/spec/unit/indirector/node/ldap_spec.rb +29 -8
  1269. data/spec/unit/indirector/node/memory_spec.rb +0 -0
  1270. data/spec/unit/indirector/node/msgpack_spec.rb +0 -0
  1271. data/spec/unit/indirector/node/plain_spec.rb +16 -6
  1272. data/spec/unit/indirector/node/rest_spec.rb +0 -0
  1273. data/spec/unit/indirector/node/store_configs_spec.rb +0 -0
  1274. data/spec/unit/indirector/node/write_only_yaml_spec.rb +12 -0
  1275. data/spec/unit/indirector/node/yaml_spec.rb +0 -0
  1276. data/spec/unit/indirector/plain_spec.rb +0 -0
  1277. data/spec/unit/indirector/report/msgpack_spec.rb +0 -0
  1278. data/spec/unit/indirector/report/processor_spec.rb +2 -2
  1279. data/spec/unit/indirector/report/rest_spec.rb +29 -3
  1280. data/spec/unit/indirector/report/yaml_spec.rb +0 -0
  1281. data/spec/unit/indirector/request_spec.rb +32 -12
  1282. data/spec/unit/indirector/resource/ral_spec.rb +0 -0
  1283. data/spec/unit/indirector/resource/store_configs_spec.rb +0 -0
  1284. data/spec/unit/indirector/rest_spec.rb +158 -18
  1285. data/spec/unit/indirector/ssl_file_spec.rb +4 -4
  1286. data/spec/unit/indirector/status/rest_spec.rb +0 -0
  1287. data/spec/unit/indirector/store_configs_spec.rb +0 -0
  1288. data/spec/unit/indirector/terminus_spec.rb +0 -0
  1289. data/spec/unit/indirector/yaml_spec.rb +1 -1
  1290. data/spec/unit/indirector_spec.rb +0 -0
  1291. data/spec/unit/info_service_spec.rb +298 -0
  1292. data/spec/unit/interface/action_builder_spec.rb +0 -0
  1293. data/spec/unit/interface/action_manager_spec.rb +0 -0
  1294. data/spec/unit/interface/action_spec.rb +0 -0
  1295. data/spec/unit/interface/documentation_spec.rb +0 -0
  1296. data/spec/unit/interface/face_collection_spec.rb +7 -7
  1297. data/spec/unit/interface/option_builder_spec.rb +0 -0
  1298. data/spec/unit/interface/option_spec.rb +0 -0
  1299. data/spec/unit/interface_spec.rb +27 -0
  1300. data/spec/unit/man_spec.rb +1 -1
  1301. data/spec/unit/module_spec.rb +126 -74
  1302. data/spec/unit/module_tool/application_spec.rb +1 -1
  1303. data/spec/unit/module_tool/applications/builder_spec.rb +44 -9
  1304. data/spec/unit/module_tool/applications/installer_spec.rb +11 -3
  1305. data/spec/unit/module_tool/applications/unpacker_spec.rb +2 -1
  1306. data/spec/unit/module_tool/applications/upgrader_spec.rb +9 -2
  1307. data/spec/unit/module_tool/installed_modules_spec.rb +6 -6
  1308. data/spec/unit/module_tool/metadata_spec.rb +31 -2
  1309. data/spec/unit/module_tool/tar/mini_spec.rb +3 -3
  1310. data/spec/unit/module_tool/tar_spec.rb +16 -10
  1311. data/spec/unit/module_tool_spec.rb +3 -3
  1312. data/spec/unit/network/auth_config_parser_spec.rb +16 -0
  1313. data/spec/unit/network/authconfig_spec.rb +62 -32
  1314. data/spec/unit/network/authorization_spec.rb +30 -2
  1315. data/spec/unit/network/authstore_spec.rb +2 -2
  1316. data/spec/unit/network/format_handler_spec.rb +11 -11
  1317. data/spec/unit/network/format_spec.rb +9 -0
  1318. data/spec/unit/network/formats_spec.rb +322 -138
  1319. data/spec/unit/network/http/api/indirected_routes_spec.rb +125 -116
  1320. data/spec/unit/network/http/api/master/v3/environment_spec.rb +186 -0
  1321. data/spec/unit/network/http/api/master/v3_spec.rb +23 -5
  1322. data/spec/unit/network/http/api_spec.rb +1 -1
  1323. data/spec/unit/network/http/compression_spec.rb +132 -84
  1324. data/spec/unit/network/http/connection_spec.rb +25 -19
  1325. data/spec/unit/network/http/error_spec.rb +1 -1
  1326. data/spec/unit/network/http/factory_spec.rb +18 -0
  1327. data/spec/unit/network/http/handler_spec.rb +17 -18
  1328. data/spec/unit/network/http/nocache_pool_spec.rb +0 -0
  1329. data/spec/unit/network/http/pool_spec.rb +30 -0
  1330. data/spec/unit/network/http/rack/rest_spec.rb +9 -2
  1331. data/spec/unit/network/http/rack_spec.rb +0 -0
  1332. data/spec/unit/network/http/request_spec.rb +110 -0
  1333. data/spec/unit/network/http/response_spec.rb +108 -0
  1334. data/spec/unit/network/http/session_spec.rb +0 -0
  1335. data/spec/unit/network/http/site_spec.rb +0 -0
  1336. data/spec/unit/network/http/webrick/rest_spec.rb +0 -0
  1337. data/spec/unit/network/http/webrick_spec.rb +1 -1
  1338. data/spec/unit/network/http_pool_spec.rb +0 -0
  1339. data/spec/unit/network/http_spec.rb +0 -0
  1340. data/spec/unit/network/resolver_spec.rb +0 -0
  1341. data/spec/unit/network/rights_spec.rb +4 -4
  1342. data/spec/unit/network/server_spec.rb +0 -0
  1343. data/spec/unit/node/environment_spec.rb +10 -0
  1344. data/spec/unit/node/facts_spec.rb +13 -13
  1345. data/spec/unit/node_spec.rb +68 -10
  1346. data/spec/unit/other/selinux_spec.rb +0 -0
  1347. data/spec/unit/parameter/path_spec.rb +0 -0
  1348. data/spec/unit/parameter/value_collection_spec.rb +0 -0
  1349. data/spec/unit/parameter/value_spec.rb +0 -0
  1350. data/spec/unit/parameter_spec.rb +84 -5
  1351. data/spec/unit/parser/ast/leaf_spec.rb +1 -1
  1352. data/spec/unit/parser/compiler_spec.rb +135 -34
  1353. data/spec/unit/parser/environment_compiler_spec.rb +686 -0
  1354. data/spec/unit/parser/files_spec.rb +0 -0
  1355. data/spec/unit/parser/functions/create_resources_spec.rb +132 -10
  1356. data/spec/unit/parser/functions/digest_spec.rb +0 -0
  1357. data/spec/unit/parser/functions/fail_spec.rb +0 -0
  1358. data/spec/unit/parser/functions/file_spec.rb +0 -0
  1359. data/spec/unit/parser/functions/fqdn_rand_spec.rb +6 -2
  1360. data/spec/unit/parser/functions/generate_spec.rb +3 -12
  1361. data/spec/unit/parser/functions/hiera_array_spec.rb +1 -1
  1362. data/spec/unit/parser/functions/hiera_hash_spec.rb +1 -1
  1363. data/spec/unit/parser/functions/hiera_include_spec.rb +1 -1
  1364. data/spec/unit/parser/functions/hiera_spec.rb +1 -1
  1365. data/spec/unit/parser/functions/inline_template_spec.rb +0 -0
  1366. data/spec/unit/parser/functions/lookup_spec.rb +1 -1
  1367. data/spec/unit/parser/functions/realize_spec.rb +0 -0
  1368. data/spec/unit/parser/functions/regsubst_spec.rb +1 -1
  1369. data/spec/unit/parser/functions/scanf_spec.rb +0 -0
  1370. data/spec/unit/parser/functions/shellquote_spec.rb +0 -0
  1371. data/spec/unit/parser/functions/split_spec.rb +1 -1
  1372. data/spec/unit/parser/functions/sprintf_spec.rb +0 -0
  1373. data/spec/unit/parser/functions/tag_spec.rb +0 -0
  1374. data/spec/unit/parser/functions/template_spec.rb +0 -0
  1375. data/spec/unit/parser/functions/versioncmp_spec.rb +0 -0
  1376. data/spec/unit/parser/functions_spec.rb +0 -0
  1377. data/spec/unit/parser/relationship_spec.rb +0 -0
  1378. data/spec/unit/parser/resource/param_spec.rb +0 -0
  1379. data/spec/unit/parser/resource_spec.rb +115 -54
  1380. data/spec/unit/parser/scope_spec.rb +83 -85
  1381. data/spec/unit/parser/templatewrapper_spec.rb +0 -0
  1382. data/spec/unit/parser/type_loader_spec.rb +0 -0
  1383. data/spec/unit/pops/benchmark_spec.rb +8 -26
  1384. data/spec/unit/pops/containment_spec.rb +0 -26
  1385. data/spec/unit/pops/evaluator/access_ops_spec.rb +198 -102
  1386. data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +223 -0
  1387. data/spec/unit/pops/evaluator/basic_expressions_spec.rb +5 -6
  1388. data/spec/unit/pops/evaluator/comparison_ops_spec.rb +29 -26
  1389. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +135 -30
  1390. data/spec/unit/pops/evaluator/evaluator_rspec_helper.rb +29 -25
  1391. data/spec/unit/pops/evaluator/json_strict_literal_evaluator_spec.rb +63 -0
  1392. data/spec/unit/pops/evaluator/literal_evaluator_spec.rb +43 -0
  1393. data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +168 -0
  1394. data/spec/unit/pops/evaluator/string_interpolation_spec.rb +10 -10
  1395. data/spec/unit/pops/evaluator/variables_spec.rb +2 -2
  1396. data/spec/unit/pops/factory_rspec_helper.rb +0 -4
  1397. data/spec/unit/pops/factory_spec.rb +83 -83
  1398. data/spec/unit/pops/label_provider_spec.rb +5 -1
  1399. data/spec/unit/pops/loaders/dependency_loader_spec.rb +66 -1
  1400. data/spec/unit/pops/loaders/environment_loader_spec.rb +172 -0
  1401. data/spec/unit/pops/loaders/loader_paths_spec.rb +1 -1
  1402. data/spec/unit/pops/loaders/loaders_spec.rb +454 -28
  1403. data/spec/unit/pops/loaders/module_loaders_spec.rb +63 -2
  1404. data/spec/unit/pops/loaders/static_loader_spec.rb +80 -19
  1405. data/spec/unit/pops/lookup/context_spec.rb +334 -0
  1406. data/spec/unit/pops/lookup/interpolation_spec.rb +373 -0
  1407. data/spec/unit/pops/lookup/lookup_spec.rb +294 -0
  1408. data/spec/unit/pops/merge_strategy_spec.rb +18 -0
  1409. data/spec/unit/pops/model/model_spec.rb +10 -10
  1410. data/spec/unit/pops/parser/epp_parser_spec.rb +1 -1
  1411. data/spec/unit/pops/parser/lexer2_spec.rb +239 -10
  1412. data/spec/unit/pops/parser/locator_spec.rb +24 -0
  1413. data/spec/unit/pops/parser/parse_application_spec.rb +32 -0
  1414. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +35 -4
  1415. data/spec/unit/pops/parser/parse_calls_spec.rb +25 -0
  1416. data/spec/unit/pops/parser/parse_capabilities_spec.rb +37 -0
  1417. data/spec/unit/pops/parser/parse_containers_spec.rb +17 -19
  1418. data/spec/unit/pops/parser/parse_functions_spec.rb +19 -0
  1419. data/spec/unit/pops/parser/parse_lambda_spec.rb +19 -0
  1420. data/spec/unit/pops/parser/parse_site_spec.rb +48 -0
  1421. data/spec/unit/pops/parser/parser_rspec_helper.rb +6 -0
  1422. data/spec/unit/pops/parser/parser_spec.rb +32 -6
  1423. data/spec/unit/pops/puppet_stack_spec.rb +79 -0
  1424. data/spec/unit/pops/resource/resource_type_impl_spec.rb +109 -0
  1425. data/spec/unit/pops/serialization/packer_spec.rb +154 -0
  1426. data/spec/unit/pops/serialization/serialization_spec.rb +426 -0
  1427. data/spec/unit/pops/serialization/to_from_hr_spec.rb +494 -0
  1428. data/spec/unit/pops/time/timespan_spec.rb +121 -0
  1429. data/spec/unit/pops/time/timestamp_spec.rb +13 -0
  1430. data/spec/unit/pops/types/enumeration_spec.rb +13 -12
  1431. data/spec/unit/pops/types/iterable_spec.rb +262 -0
  1432. data/spec/unit/pops/types/p_binary_type_spec.rb +243 -0
  1433. data/spec/unit/pops/types/p_object_type_spec.rb +1253 -0
  1434. data/spec/unit/pops/types/p_sem_ver_type_spec.rb +322 -0
  1435. data/spec/unit/pops/types/p_sensitive_type_spec.rb +169 -0
  1436. data/spec/unit/pops/types/p_timespan_type_spec.rb +273 -0
  1437. data/spec/unit/pops/types/p_timestamp_type_spec.rb +311 -0
  1438. data/spec/unit/pops/types/p_type_set_type_spec.rb +445 -0
  1439. data/spec/unit/pops/types/recursion_guard_spec.rb +93 -0
  1440. data/spec/unit/pops/types/ruby_generator_spec.rb +662 -0
  1441. data/spec/unit/pops/types/string_converter_spec.rb +1132 -0
  1442. data/spec/unit/pops/types/type_acceptor_spec.rb +106 -0
  1443. data/spec/unit/pops/types/type_asserter_spec.rb +43 -0
  1444. data/spec/unit/pops/types/type_calculator_spec.rb +1122 -967
  1445. data/spec/unit/pops/types/type_factory_spec.rb +137 -96
  1446. data/spec/unit/pops/types/type_formatter_spec.rb +409 -0
  1447. data/spec/unit/pops/types/type_mismatch_describer_spec.rb +228 -0
  1448. data/spec/unit/pops/types/type_parser_spec.rb +207 -40
  1449. data/spec/unit/pops/types/types_spec.rb +650 -0
  1450. data/spec/unit/pops/validator/validator_spec.rb +395 -21
  1451. data/spec/unit/pops/visitor_spec.rb +1 -1
  1452. data/spec/unit/property/ensure_spec.rb +0 -0
  1453. data/spec/unit/property/keyvalue_spec.rb +0 -0
  1454. data/spec/unit/property/list_spec.rb +2 -2
  1455. data/spec/unit/property/ordered_list_spec.rb +0 -0
  1456. data/spec/unit/property_spec.rb +49 -12
  1457. data/spec/unit/provider/augeas/augeas_spec.rb +60 -1
  1458. data/spec/unit/provider/cisco_spec.rb +0 -0
  1459. data/spec/unit/provider/command_spec.rb +0 -0
  1460. data/spec/unit/provider/cron/crontab_spec.rb +0 -0
  1461. data/spec/unit/provider/cron/parsed_spec.rb +1 -0
  1462. data/spec/unit/provider/exec/posix_spec.rb +0 -0
  1463. data/spec/unit/provider/exec/shell_spec.rb +0 -0
  1464. data/spec/unit/provider/exec/windows_spec.rb +0 -0
  1465. data/spec/unit/provider/exec_spec.rb +0 -0
  1466. data/spec/unit/provider/file/posix_spec.rb +0 -0
  1467. data/spec/unit/provider/file/windows_spec.rb +0 -0
  1468. data/spec/unit/provider/group/directoryservice_spec.rb +33 -0
  1469. data/spec/unit/provider/group/groupadd_spec.rb +0 -0
  1470. data/spec/unit/provider/group/ldap_spec.rb +0 -0
  1471. data/spec/unit/provider/group/pw_spec.rb +0 -0
  1472. data/spec/unit/provider/group/windows_adsi_spec.rb +31 -9
  1473. data/spec/unit/provider/host/parsed_spec.rb +0 -0
  1474. data/spec/unit/provider/interface/cisco_spec.rb +0 -0
  1475. data/spec/unit/provider/ldap_spec.rb +0 -0
  1476. data/spec/unit/provider/macauthorization_spec.rb +5 -2
  1477. data/spec/unit/provider/mcx/mcxcontent_spec.rb +0 -0
  1478. data/spec/unit/provider/mount/parsed_spec.rb +0 -0
  1479. data/spec/unit/provider/mount_spec.rb +0 -0
  1480. data/spec/unit/provider/naginator_spec.rb +0 -0
  1481. data/spec/unit/provider/nameservice/directoryservice_spec.rb +16 -19
  1482. data/spec/unit/provider/nameservice_spec.rb +167 -15
  1483. data/spec/unit/provider/network_device_spec.rb +0 -0
  1484. data/spec/unit/provider/package/aix_spec.rb +0 -0
  1485. data/spec/unit/provider/package/appdmg_spec.rb +3 -3
  1486. data/spec/unit/provider/package/apt_spec.rb +0 -0
  1487. data/spec/unit/provider/package/aptitude_spec.rb +0 -0
  1488. data/spec/unit/provider/package/aptrpm_spec.rb +3 -3
  1489. data/spec/unit/provider/package/base_spec.rb +18 -0
  1490. data/spec/unit/provider/package/dnf_spec.rb +30 -0
  1491. data/spec/unit/provider/package/dpkg_spec.rb +0 -0
  1492. data/spec/unit/provider/package/freebsd_spec.rb +0 -0
  1493. data/spec/unit/provider/package/gem_spec.rb +77 -0
  1494. data/spec/unit/provider/package/hpux_spec.rb +0 -0
  1495. data/spec/unit/provider/package/macports_spec.rb +0 -0
  1496. data/spec/unit/provider/package/nim_spec.rb +6 -6
  1497. data/spec/unit/provider/package/openbsd_spec.rb +0 -0
  1498. data/spec/unit/provider/package/opkg_spec.rb +0 -0
  1499. data/spec/unit/provider/package/pacman_spec.rb +55 -0
  1500. data/spec/unit/provider/package/pip3_spec.rb +22 -0
  1501. data/spec/unit/provider/package/pip_spec.rb +164 -46
  1502. data/spec/unit/provider/package/pkg_spec.rb +139 -99
  1503. data/spec/unit/provider/package/pkgdmg_spec.rb +32 -8
  1504. data/spec/unit/provider/package/pkgin_spec.rb +23 -13
  1505. data/spec/unit/provider/package/pkgng_spec.rb +16 -2
  1506. data/spec/unit/provider/package/pkgutil_spec.rb +0 -0
  1507. data/spec/unit/provider/package/portage_spec.rb +150 -8
  1508. data/spec/unit/provider/package/puppet_gem_spec.rb +0 -0
  1509. data/spec/unit/provider/package/rpm_spec.rb +183 -12
  1510. data/spec/unit/provider/package/sun_spec.rb +0 -0
  1511. data/spec/unit/provider/package/tdnf_spec.rb +18 -0
  1512. data/spec/unit/provider/package/windows/package_spec.rb +45 -1
  1513. data/spec/unit/provider/package/windows_spec.rb +8 -2
  1514. data/spec/unit/provider/package/yum_spec.rb +29 -466
  1515. data/spec/unit/provider/package/zypper_spec.rb +14 -0
  1516. data/spec/unit/provider/parsedfile_spec.rb +0 -0
  1517. data/spec/unit/provider/scheduled_task/win32_taskscheduler_spec.rb +211 -0
  1518. data/spec/unit/provider/selboolean_spec.rb +0 -0
  1519. data/spec/unit/provider/selmodule_spec.rb +0 -0
  1520. data/spec/unit/provider/service/base_spec.rb +6 -0
  1521. data/spec/unit/provider/service/bsd_spec.rb +130 -0
  1522. data/spec/unit/provider/service/daemontools_spec.rb +0 -0
  1523. data/spec/unit/provider/service/debian_spec.rb +34 -4
  1524. data/spec/unit/provider/service/freebsd_spec.rb +16 -0
  1525. data/spec/unit/provider/service/gentoo_spec.rb +7 -0
  1526. data/spec/unit/provider/service/init_spec.rb +24 -1
  1527. data/spec/unit/provider/service/launchd_spec.rb +124 -25
  1528. data/spec/unit/provider/service/openbsd_spec.rb +0 -0
  1529. data/spec/unit/provider/service/openrc_spec.rb +7 -0
  1530. data/spec/unit/provider/service/openwrt_spec.rb +0 -0
  1531. data/spec/unit/provider/service/rcng_spec.rb +41 -0
  1532. data/spec/unit/provider/service/redhat_spec.rb +8 -1
  1533. data/spec/unit/provider/service/runit_spec.rb +0 -0
  1534. data/spec/unit/provider/service/smf_spec.rb +77 -13
  1535. data/spec/unit/provider/service/src_spec.rb +31 -4
  1536. data/spec/unit/provider/service/systemd_spec.rb +228 -39
  1537. data/spec/unit/provider/service/upstart_spec.rb +64 -0
  1538. data/spec/unit/provider/service/windows_spec.rb +0 -0
  1539. data/spec/unit/provider/ssh_authorized_key/parsed_spec.rb +2 -1
  1540. data/spec/unit/provider/sshkey/parsed_spec.rb +42 -18
  1541. data/spec/unit/provider/user/aix_spec.rb +7 -0
  1542. data/spec/unit/provider/user/directoryservice_spec.rb +171 -90
  1543. data/spec/unit/provider/user/hpux_spec.rb +0 -0
  1544. data/spec/unit/provider/user/ldap_spec.rb +0 -0
  1545. data/spec/unit/provider/user/openbsd_spec.rb +0 -0
  1546. data/spec/unit/provider/user/pw_spec.rb +0 -0
  1547. data/spec/unit/provider/user/user_role_add_spec.rb +0 -0
  1548. data/spec/unit/provider/user/useradd_spec.rb +14 -0
  1549. data/spec/unit/provider/user/windows_adsi_spec.rb +30 -6
  1550. data/spec/unit/provider/vlan/cisco_spec.rb +0 -0
  1551. data/spec/unit/provider/yumrepo/inifile_spec.rb +16 -0
  1552. data/spec/unit/provider/zfs/zfs_spec.rb +0 -0
  1553. data/spec/unit/provider/zone/solaris_spec.rb +64 -12
  1554. data/spec/unit/provider/zpool/zpool_spec.rb +0 -0
  1555. data/spec/unit/provider_spec.rb +0 -0
  1556. data/spec/unit/puppet_spec.rb +16 -3
  1557. data/spec/unit/relationship_spec.rb +15 -36
  1558. data/spec/unit/reports/http_spec.rb +11 -8
  1559. data/spec/unit/reports/store_spec.rb +0 -0
  1560. data/spec/unit/reports_spec.rb +10 -0
  1561. data/spec/unit/resource/capability_finder_spec.rb +147 -0
  1562. data/spec/unit/resource/catalog_spec.rb +294 -41
  1563. data/spec/unit/resource/status_spec.rb +114 -103
  1564. data/spec/unit/resource/type_collection_spec.rb +28 -7
  1565. data/spec/unit/resource/type_spec.rb +172 -82
  1566. data/spec/unit/resource_spec.rb +161 -76
  1567. data/spec/unit/settings/directory_setting_spec.rb +0 -0
  1568. data/spec/unit/settings/duration_setting_spec.rb +0 -0
  1569. data/spec/unit/settings/environment_conf_spec.rb +18 -1
  1570. data/spec/unit/settings/file_setting_spec.rb +37 -0
  1571. data/spec/unit/settings/ini_file_spec.rb +58 -1
  1572. data/spec/unit/settings/path_setting_spec.rb +0 -0
  1573. data/spec/unit/settings/priority_setting_spec.rb +0 -0
  1574. data/spec/unit/settings_spec.rb +109 -5
  1575. data/spec/unit/ssl/base_spec.rb +9 -0
  1576. data/spec/unit/ssl/certificate_authority/interface_spec.rb +180 -13
  1577. data/spec/unit/ssl/certificate_authority_spec.rb +82 -28
  1578. data/spec/unit/ssl/certificate_factory_spec.rb +2 -2
  1579. data/spec/unit/ssl/certificate_request_attributes_spec.rb +6 -0
  1580. data/spec/unit/ssl/certificate_request_spec.rb +4 -5
  1581. data/spec/unit/ssl/certificate_revocation_list_spec.rb +3 -3
  1582. data/spec/unit/ssl/certificate_spec.rb +1 -1
  1583. data/spec/unit/ssl/configuration_spec.rb +11 -2
  1584. data/spec/unit/ssl/host_spec.rb +37 -37
  1585. data/spec/unit/ssl/inventory_spec.rb +27 -3
  1586. data/spec/unit/ssl/key_spec.rb +7 -7
  1587. data/spec/unit/ssl/oids_spec.rb +24 -13
  1588. data/spec/unit/status_spec.rb +7 -7
  1589. data/spec/unit/transaction/additional_resource_generator_spec.rb +160 -31
  1590. data/spec/unit/transaction/event_manager_spec.rb +0 -0
  1591. data/spec/unit/transaction/event_spec.rb +18 -13
  1592. data/spec/unit/transaction/persistence_spec.rb +178 -0
  1593. data/spec/unit/transaction/report_spec.rb +214 -40
  1594. data/spec/unit/transaction/resource_harness_spec.rb +84 -40
  1595. data/spec/unit/transaction_spec.rb +102 -7
  1596. data/spec/unit/type/augeas_spec.rb +0 -0
  1597. data/spec/unit/type/component_spec.rb +0 -0
  1598. data/spec/unit/type/computer_spec.rb +0 -0
  1599. data/spec/unit/type/cron_spec.rb +0 -0
  1600. data/spec/unit/type/exec_spec.rb +57 -12
  1601. data/spec/unit/type/file/checksum_spec.rb +6 -0
  1602. data/spec/unit/type/file/checksum_value_spec.rb +286 -0
  1603. data/spec/unit/type/file/content_spec.rb +59 -208
  1604. data/spec/unit/type/file/ctime_spec.rb +0 -0
  1605. data/spec/unit/type/file/ensure_spec.rb +0 -0
  1606. data/spec/unit/type/file/group_spec.rb +2 -2
  1607. data/spec/unit/type/file/mode_spec.rb +9 -9
  1608. data/spec/unit/type/file/mtime_spec.rb +0 -0
  1609. data/spec/unit/type/file/owner_spec.rb +2 -2
  1610. data/spec/unit/type/file/selinux_spec.rb +2 -0
  1611. data/spec/unit/type/file/source_spec.rb +224 -119
  1612. data/spec/unit/type/file/type_spec.rb +0 -0
  1613. data/spec/unit/type/file_spec.rb +211 -35
  1614. data/spec/unit/type/filebucket_spec.rb +0 -0
  1615. data/spec/unit/type/group_spec.rb +0 -0
  1616. data/spec/unit/type/host_spec.rb +4 -4
  1617. data/spec/unit/type/interface_spec.rb +32 -0
  1618. data/spec/unit/type/k5login_spec.rb +0 -0
  1619. data/spec/unit/type/macauthorization_spec.rb +4 -1
  1620. data/spec/unit/type/mailalias_spec.rb +0 -0
  1621. data/spec/unit/type/maillist_spec.rb +0 -0
  1622. data/spec/unit/type/mcx_spec.rb +0 -0
  1623. data/spec/unit/type/mount_spec.rb +50 -8
  1624. data/spec/unit/type/nagios_spec.rb +0 -0
  1625. data/spec/unit/type/noop_metaparam_spec.rb +0 -0
  1626. data/spec/unit/type/package/package_settings_spec.rb +0 -0
  1627. data/spec/unit/type/package_spec.rb +1 -0
  1628. data/spec/unit/type/resources_spec.rb +0 -0
  1629. data/spec/unit/type/schedule_spec.rb +0 -0
  1630. data/spec/unit/type/selboolean_spec.rb +0 -0
  1631. data/spec/unit/type/selmodule_spec.rb +0 -0
  1632. data/spec/unit/type/service_spec.rb +21 -0
  1633. data/spec/unit/type/ssh_authorized_key_spec.rb +2 -2
  1634. data/spec/unit/type/sshkey_spec.rb +0 -0
  1635. data/spec/unit/type/stage_spec.rb +0 -0
  1636. data/spec/unit/type/tidy_spec.rb +4 -4
  1637. data/spec/unit/type/user_spec.rb +38 -7
  1638. data/spec/unit/type/vlan_spec.rb +1 -1
  1639. data/spec/unit/type/whit_spec.rb +0 -0
  1640. data/spec/unit/type/yumrepo_spec.rb +3 -7
  1641. data/spec/unit/type/zfs_spec.rb +0 -0
  1642. data/spec/unit/type/zone_spec.rb +0 -0
  1643. data/spec/unit/type/zpool_spec.rb +0 -0
  1644. data/spec/unit/type_spec.rb +119 -1
  1645. data/spec/unit/util/at_fork_spec.rb +150 -0
  1646. data/spec/unit/util/autoload_spec.rb +0 -0
  1647. data/spec/unit/util/backups_spec.rb +0 -0
  1648. data/spec/unit/util/character_encoding_spec.rb +229 -0
  1649. data/spec/unit/util/checksums_spec.rb +0 -0
  1650. data/spec/unit/util/colors_spec.rb +0 -0
  1651. data/spec/unit/util/command_line_spec.rb +11 -0
  1652. data/spec/unit/util/constant_inflector_spec.rb +0 -0
  1653. data/spec/unit/util/diff_spec.rb +0 -0
  1654. data/spec/unit/util/errors_spec.rb +0 -0
  1655. data/spec/unit/util/execution_spec.rb +44 -3
  1656. data/spec/unit/util/execution_stub_spec.rb +0 -0
  1657. data/spec/unit/util/feature_spec.rb +1 -1
  1658. data/spec/unit/util/filetype_spec.rb +4 -4
  1659. data/spec/unit/util/http_proxy_spec.rb +91 -0
  1660. data/spec/unit/util/ldap/connection_spec.rb +0 -0
  1661. data/spec/unit/util/ldap/generator_spec.rb +1 -1
  1662. data/spec/unit/util/ldap/manager_spec.rb +0 -0
  1663. data/spec/unit/util/log/destinations_spec.rb +5 -8
  1664. data/spec/unit/util/log_spec.rb +74 -18
  1665. data/spec/unit/util/logging_spec.rb +69 -0
  1666. data/spec/unit/util/metric_spec.rb +9 -2
  1667. data/spec/unit/util/monkey_patches_spec.rb +37 -127
  1668. data/spec/unit/util/multi_match_spec.rb +39 -0
  1669. data/spec/unit/util/nagios_maker_spec.rb +0 -0
  1670. data/spec/unit/util/network_device/cisco/device_spec.rb +253 -216
  1671. data/spec/unit/util/network_device/cisco/facts_spec.rb +0 -0
  1672. data/spec/unit/util/network_device/cisco/interface_spec.rb +0 -0
  1673. data/spec/unit/util/network_device/config_spec.rb +0 -0
  1674. data/spec/unit/util/network_device/ipcalc_spec.rb +0 -0
  1675. data/spec/unit/util/network_device/transport/base_spec.rb +0 -0
  1676. data/spec/unit/util/network_device/transport/ssh_spec.rb +1 -1
  1677. data/spec/unit/util/network_device/transport/telnet_spec.rb +60 -58
  1678. data/spec/unit/util/network_device_spec.rb +1 -1
  1679. data/spec/unit/util/package_spec.rb +0 -0
  1680. data/spec/unit/util/plist_spec.rb +135 -0
  1681. data/spec/unit/util/posix_spec.rb +0 -0
  1682. data/spec/unit/util/rdoc_spec.rb +0 -0
  1683. data/spec/unit/util/resource_template_spec.rb +2 -2
  1684. data/spec/unit/util/retry_action_spec.rb +0 -0
  1685. data/spec/unit/util/run_mode_spec.rb +44 -13
  1686. data/spec/unit/util/selinux_spec.rb +0 -0
  1687. data/spec/unit/util/splayer_spec.rb +45 -0
  1688. data/spec/unit/util/storage_spec.rb +8 -1
  1689. data/spec/unit/util/suidmanager_spec.rb +0 -0
  1690. data/spec/unit/util/symbolic_file_mode_spec.rb +0 -0
  1691. data/spec/unit/util/tag_set_spec.rb +2 -2
  1692. data/spec/unit/util/tagging_spec.rb +59 -0
  1693. data/spec/unit/util/user_attr_spec.rb +0 -0
  1694. data/spec/unit/util/warnings_spec.rb +0 -0
  1695. data/spec/unit/util/windows/adsi_spec.rb +82 -40
  1696. data/spec/unit/util/windows/api_types_spec.rb +42 -0
  1697. data/spec/unit/util/windows/eventlog_spec.rb +123 -0
  1698. data/spec/unit/util/windows/file_spec.rb +89 -0
  1699. data/spec/unit/util/windows/root_certs_spec.rb +0 -0
  1700. data/spec/unit/util/windows/security_descriptor_spec.rb +3 -3
  1701. data/spec/unit/util/windows/sid_spec.rb +76 -14
  1702. data/spec/unit/util/yaml_spec.rb +13 -1
  1703. data/spec/unit/util_spec.rb +456 -17
  1704. data/spec/unit/version_spec.rb +19 -0
  1705. data/spec/watchr.rb +0 -0
  1706. data/tasks/benchmark.rake +3 -3
  1707. data/tasks/cfpropertylist.rake +15 -0
  1708. data/tasks/generate_ast_model.rake +78 -0
  1709. metadata +3441 -3081
  1710. checksums.yaml +0 -7
  1711. data/bin/extlookup2hiera +0 -56
  1712. data/ext/emacs/puppet-mode-init.el +0 -6
  1713. data/ext/emacs/puppet-mode.el +0 -433
  1714. data/ext/puppet-nm-dispatcher +0 -13
  1715. data/ext/puppetlisten/puppetlisten.rb +0 -77
  1716. data/ext/puppetlisten/puppetrun.rb +0 -38
  1717. data/ext/systemd/puppetmaster.service +0 -11
  1718. data/ext/vim/README +0 -3
  1719. data/ext/vim/ftdetect/puppet.vim +0 -2
  1720. data/ext/vim/ftplugin/puppet.vim +0 -94
  1721. data/ext/vim/indent/puppet.vim +0 -76
  1722. data/ext/vim/syntax/puppet.vim +0 -115
  1723. data/lib/puppet/application/file.rb +0 -4
  1724. data/lib/puppet/application/inspect.rb +0 -179
  1725. data/lib/puppet/application/resource_type.rb +0 -7
  1726. data/lib/puppet/data_providers/data_adapter.rb +0 -91
  1727. data/lib/puppet/data_providers/data_function_support.rb +0 -45
  1728. data/lib/puppet/data_providers/function_env_data_provider.rb +0 -28
  1729. data/lib/puppet/data_providers/function_module_data_provider.rb +0 -39
  1730. data/lib/puppet/data_providers.rb +0 -31
  1731. data/lib/puppet/face/file/download.rb +0 -56
  1732. data/lib/puppet/face/file/store.rb +0 -21
  1733. data/lib/puppet/face/file.rb +0 -47
  1734. data/lib/puppet/face/resource_type.rb +0 -84
  1735. data/lib/puppet/feature/cfacter.rb +0 -14
  1736. data/lib/puppet/feature/external_facts.rb +0 -5
  1737. data/lib/puppet/indirector/catalog/static_compiler.rb +0 -213
  1738. data/lib/puppet/indirector/resource_type/parser.rb +0 -101
  1739. data/lib/puppet/indirector/resource_type/rest.rb +0 -7
  1740. data/lib/puppet/indirector/resource_type.rb +0 -5
  1741. data/lib/puppet/parser/yaml_trimmer.rb +0 -7
  1742. data/lib/puppet/plugins/binding_schemes.rb +0 -140
  1743. data/lib/puppet/plugins/data_providers.rb +0 -90
  1744. data/lib/puppet/pops/binder/binder.rb +0 -394
  1745. data/lib/puppet/pops/binder/binder_issues.rb +0 -122
  1746. data/lib/puppet/pops/binder/bindings_checker.rb +0 -197
  1747. data/lib/puppet/pops/binder/bindings_composer.rb +0 -177
  1748. data/lib/puppet/pops/binder/bindings_factory.rb +0 -809
  1749. data/lib/puppet/pops/binder/bindings_label_provider.rb +0 -43
  1750. data/lib/puppet/pops/binder/bindings_loader.rb +0 -83
  1751. data/lib/puppet/pops/binder/bindings_model.rb +0 -68
  1752. data/lib/puppet/pops/binder/bindings_model_dumper.rb +0 -215
  1753. data/lib/puppet/pops/binder/bindings_model_meta.rb +0 -215
  1754. data/lib/puppet/pops/binder/bindings_validator_factory.rb +0 -28
  1755. data/lib/puppet/pops/binder/config/binder_config.rb +0 -107
  1756. data/lib/puppet/pops/binder/config/binder_config_checker.rb +0 -142
  1757. data/lib/puppet/pops/binder/config/diagnostic_producer.rb +0 -32
  1758. data/lib/puppet/pops/binder/config/issues.rb +0 -90
  1759. data/lib/puppet/pops/binder/injector.rb +0 -766
  1760. data/lib/puppet/pops/binder/injector_entry.rb +0 -57
  1761. data/lib/puppet/pops/binder/key_factory.rb +0 -67
  1762. data/lib/puppet/pops/binder/producers.rb +0 -826
  1763. data/lib/puppet/pops/binder/scheme_handler/confdir_scheme.rb +0 -34
  1764. data/lib/puppet/pops/binder/scheme_handler/module_scheme.rb +0 -84
  1765. data/lib/puppet/pops/binder/scheme_handler/symbolic_scheme.rb +0 -53
  1766. data/lib/puppet/pops/binder/system_bindings.rb +0 -60
  1767. data/lib/puppet/pops/containment.rb +0 -104
  1768. data/lib/puppet/pops/evaluator/callable_mismatch_describer.rb +0 -175
  1769. data/lib/puppet/pops/model/model.rb +0 -114
  1770. data/lib/puppet/pops/model/model_meta.rb +0 -586
  1771. data/lib/puppet/pops/types/types_meta.rb +0 -234
  1772. data/lib/puppet/resource/type_collection_helper.rb +0 -7
  1773. data/lib/puppet/vendor/load_plist.rb +0 -1
  1774. data/lib/puppet/vendor/load_rgen.rb +0 -2
  1775. data/lib/puppet/vendor/plist/CHANGELOG +0 -82
  1776. data/lib/puppet/vendor/plist/MIT-LICENSE +0 -21
  1777. data/lib/puppet/vendor/plist/PUPPET_README.md +0 -6
  1778. data/lib/puppet/vendor/plist/README +0 -36
  1779. data/lib/puppet/vendor/plist/Rakefile +0 -144
  1780. data/lib/puppet/vendor/plist/docs/USAGE +0 -104
  1781. data/lib/puppet/vendor/plist/docs/jamis-template.rb +0 -591
  1782. data/lib/puppet/vendor/plist/lib/plist/generator.rb +0 -224
  1783. data/lib/puppet/vendor/plist/lib/plist/parser.rb +0 -225
  1784. data/lib/puppet/vendor/plist/lib/plist.rb +0 -22
  1785. data/lib/puppet/vendor/plist/test/assets/AlbumData.xml +0 -203
  1786. data/lib/puppet/vendor/plist/test/assets/Cookies.plist +0 -104
  1787. data/lib/puppet/vendor/plist/test/assets/commented.plist +0 -9
  1788. data/lib/puppet/vendor/plist/test/assets/example_data.bin +0 -0
  1789. data/lib/puppet/vendor/plist/test/assets/example_data.jpg +0 -0
  1790. data/lib/puppet/vendor/plist/test/assets/example_data.plist +0 -259
  1791. data/lib/puppet/vendor/plist/test/assets/test_data_elements.plist +0 -24
  1792. data/lib/puppet/vendor/plist/test/assets/test_empty_key.plist +0 -13
  1793. data/lib/puppet/vendor/plist/test/test_data_elements.rb +0 -115
  1794. data/lib/puppet/vendor/plist/test/test_generator.rb +0 -59
  1795. data/lib/puppet/vendor/plist/test/test_generator_basic_types.rb +0 -58
  1796. data/lib/puppet/vendor/plist/test/test_generator_collections.rb +0 -82
  1797. data/lib/puppet/vendor/plist/test/test_parser.rb +0 -90
  1798. data/lib/puppet/vendor/rgen/CHANGELOG +0 -197
  1799. data/lib/puppet/vendor/rgen/MIT-LICENSE +0 -20
  1800. data/lib/puppet/vendor/rgen/PUPPET_README.md +0 -6
  1801. data/lib/puppet/vendor/rgen/README.rdoc +0 -78
  1802. data/lib/puppet/vendor/rgen/Rakefile +0 -41
  1803. data/lib/puppet/vendor/rgen/TODO +0 -41
  1804. data/lib/puppet/vendor/rgen/anounce.txt +0 -61
  1805. data/lib/puppet/vendor/rgen/design_rationale.txt +0 -71
  1806. data/lib/puppet/vendor/rgen/lib/ea_support/ea_support.rb +0 -54
  1807. data/lib/puppet/vendor/rgen/lib/ea_support/id_store.rb +0 -32
  1808. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_ea_metamodel.rb +0 -562
  1809. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_ea_metamodel_ext.rb +0 -45
  1810. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_ea_metamodel_generator.rb +0 -43
  1811. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_ea_to_uml13.rb +0 -103
  1812. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_to_uml13_ea.rb +0 -89
  1813. data/lib/puppet/vendor/rgen/lib/metamodels/uml13_metamodel.rb +0 -559
  1814. data/lib/puppet/vendor/rgen/lib/metamodels/uml13_metamodel_ext.rb +0 -26
  1815. data/lib/puppet/vendor/rgen/lib/mmgen/metamodel_generator.rb +0 -20
  1816. data/lib/puppet/vendor/rgen/lib/mmgen/mm_ext/ecore_mmgen_ext.rb +0 -91
  1817. data/lib/puppet/vendor/rgen/lib/mmgen/mmgen.rb +0 -28
  1818. data/lib/puppet/vendor/rgen/lib/mmgen/templates/annotations.tpl +0 -37
  1819. data/lib/puppet/vendor/rgen/lib/mmgen/templates/metamodel_generator.tpl +0 -172
  1820. data/lib/puppet/vendor/rgen/lib/rgen/array_extensions.rb +0 -45
  1821. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore.rb +0 -218
  1822. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore_builder_methods.rb +0 -81
  1823. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore_ext.rb +0 -69
  1824. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore_interface.rb +0 -47
  1825. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore_to_ruby.rb +0 -167
  1826. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ruby_to_ecore.rb +0 -91
  1827. data/lib/puppet/vendor/rgen/lib/rgen/environment.rb +0 -129
  1828. data/lib/puppet/vendor/rgen/lib/rgen/fragment/dump_file_cache.rb +0 -63
  1829. data/lib/puppet/vendor/rgen/lib/rgen/fragment/fragmented_model.rb +0 -140
  1830. data/lib/puppet/vendor/rgen/lib/rgen/fragment/model_fragment.rb +0 -289
  1831. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/abstract_instantiator.rb +0 -66
  1832. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/abstract_xml_instantiator.rb +0 -66
  1833. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/default_xml_instantiator.rb +0 -117
  1834. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/ecore_xml_instantiator.rb +0 -169
  1835. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/json_instantiator.rb +0 -126
  1836. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/json_parser.rb +0 -331
  1837. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/json_parser.y +0 -94
  1838. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/nodebased_xml_instantiator.rb +0 -137
  1839. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/qualified_name_resolver.rb +0 -97
  1840. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/reference_resolver.rb +0 -128
  1841. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/resolution_helper.rb +0 -47
  1842. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/xmi11_instantiator.rb +0 -168
  1843. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/builder_extensions.rb +0 -556
  1844. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/builder_runtime.rb +0 -174
  1845. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/constant_order_helper.rb +0 -89
  1846. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/data_types.rb +0 -77
  1847. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/intermediate/annotation.rb +0 -30
  1848. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/intermediate/feature.rb +0 -168
  1849. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/mm_multiple.rb +0 -23
  1850. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/module_extension.rb +0 -42
  1851. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder.rb +0 -224
  1852. data/lib/puppet/vendor/rgen/lib/rgen/model_builder/builder_context.rb +0 -334
  1853. data/lib/puppet/vendor/rgen/lib/rgen/model_builder/model_serializer.rb +0 -225
  1854. data/lib/puppet/vendor/rgen/lib/rgen/model_builder/reference_resolver.rb +0 -156
  1855. data/lib/puppet/vendor/rgen/lib/rgen/model_builder.rb +0 -32
  1856. data/lib/puppet/vendor/rgen/lib/rgen/serializer/json_serializer.rb +0 -121
  1857. data/lib/puppet/vendor/rgen/lib/rgen/serializer/opposite_reference_filter.rb +0 -18
  1858. data/lib/puppet/vendor/rgen/lib/rgen/serializer/qualified_name_provider.rb +0 -47
  1859. data/lib/puppet/vendor/rgen/lib/rgen/serializer/xmi11_serializer.rb +0 -116
  1860. data/lib/puppet/vendor/rgen/lib/rgen/serializer/xmi20_serializer.rb +0 -71
  1861. data/lib/puppet/vendor/rgen/lib/rgen/serializer/xml_serializer.rb +0 -98
  1862. data/lib/puppet/vendor/rgen/lib/rgen/template_language/directory_template_container.rb +0 -83
  1863. data/lib/puppet/vendor/rgen/lib/rgen/template_language/output_handler.rb +0 -87
  1864. data/lib/puppet/vendor/rgen/lib/rgen/template_language/template_container.rb +0 -234
  1865. data/lib/puppet/vendor/rgen/lib/rgen/template_language/template_helper.rb +0 -26
  1866. data/lib/puppet/vendor/rgen/lib/rgen/template_language.rb +0 -297
  1867. data/lib/puppet/vendor/rgen/lib/rgen/transformer.rb +0 -475
  1868. data/lib/puppet/vendor/rgen/lib/rgen/util/auto_class_creator.rb +0 -61
  1869. data/lib/puppet/vendor/rgen/lib/rgen/util/cached_glob.rb +0 -67
  1870. data/lib/puppet/vendor/rgen/lib/rgen/util/file_cache_map.rb +0 -124
  1871. data/lib/puppet/vendor/rgen/lib/rgen/util/file_change_detector.rb +0 -84
  1872. data/lib/puppet/vendor/rgen/lib/rgen/util/method_delegation.rb +0 -114
  1873. data/lib/puppet/vendor/rgen/lib/rgen/util/model_comparator.rb +0 -68
  1874. data/lib/puppet/vendor/rgen/lib/rgen/util/model_comparator_base.rb +0 -142
  1875. data/lib/puppet/vendor/rgen/lib/rgen/util/model_dumper.rb +0 -29
  1876. data/lib/puppet/vendor/rgen/lib/rgen/util/name_helper.rb +0 -42
  1877. data/lib/puppet/vendor/rgen/lib/rgen/util/pattern_matcher.rb +0 -329
  1878. data/lib/puppet/vendor/rgen/lib/transformers/ecore_to_uml13.rb +0 -79
  1879. data/lib/puppet/vendor/rgen/lib/transformers/uml13_to_ecore.rb +0 -127
  1880. data/lib/puppet/vendor/rgen/test/array_extensions_test.rb +0 -64
  1881. data/lib/puppet/vendor/rgen/test/ea_instantiator_test.rb +0 -35
  1882. data/lib/puppet/vendor/rgen/test/ea_serializer_test.rb +0 -23
  1883. data/lib/puppet/vendor/rgen/test/ecore_self_test.rb +0 -54
  1884. data/lib/puppet/vendor/rgen/test/environment_test.rb +0 -90
  1885. data/lib/puppet/vendor/rgen/test/json_test.rb +0 -171
  1886. data/lib/puppet/vendor/rgen/test/metamodel_builder_test.rb +0 -1482
  1887. data/lib/puppet/vendor/rgen/test/metamodel_from_ecore_test.rb +0 -57
  1888. data/lib/puppet/vendor/rgen/test/metamodel_order_test.rb +0 -131
  1889. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test/TestModel.rb +0 -70
  1890. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test/houseMetamodel.ecore +0 -42
  1891. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test/houseMetamodel_from_ecore.rb +0 -44
  1892. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test/using_builtin_types.ecore +0 -9
  1893. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test.rb +0 -98
  1894. data/lib/puppet/vendor/rgen/test/method_delegation_test.rb +0 -178
  1895. data/lib/puppet/vendor/rgen/test/model_builder/builder_context_test.rb +0 -59
  1896. data/lib/puppet/vendor/rgen/test/model_builder/builder_test.rb +0 -242
  1897. data/lib/puppet/vendor/rgen/test/model_builder/ecore_original.rb +0 -163
  1898. data/lib/puppet/vendor/rgen/test/model_builder/ecore_original_regenerated.rb +0 -163
  1899. data/lib/puppet/vendor/rgen/test/model_builder/reference_resolver_test.rb +0 -156
  1900. data/lib/puppet/vendor/rgen/test/model_builder/serializer_test.rb +0 -94
  1901. data/lib/puppet/vendor/rgen/test/model_builder/statemachine_metamodel.rb +0 -42
  1902. data/lib/puppet/vendor/rgen/test/model_builder/test_model/statemachine1.rb +0 -23
  1903. data/lib/puppet/vendor/rgen/test/model_builder_test.rb +0 -6
  1904. data/lib/puppet/vendor/rgen/test/model_fragment_test.rb +0 -30
  1905. data/lib/puppet/vendor/rgen/test/output_handler_test.rb +0 -58
  1906. data/lib/puppet/vendor/rgen/test/qualified_name_provider_test.rb +0 -48
  1907. data/lib/puppet/vendor/rgen/test/qualified_name_resolver_test.rb +0 -102
  1908. data/lib/puppet/vendor/rgen/test/reference_resolver_test.rb +0 -117
  1909. data/lib/puppet/vendor/rgen/test/rgen_test.rb +0 -26
  1910. data/lib/puppet/vendor/rgen/test/template_language_test/expected_result1.txt +0 -29
  1911. data/lib/puppet/vendor/rgen/test/template_language_test/expected_result2.txt +0 -9
  1912. data/lib/puppet/vendor/rgen/test/template_language_test/expected_result3.txt +0 -4
  1913. data/lib/puppet/vendor/rgen/test/template_language_test/indentStringTestDefaultIndent.out +0 -1
  1914. data/lib/puppet/vendor/rgen/test/template_language_test/indentStringTestTabIndent.out +0 -1
  1915. data/lib/puppet/vendor/rgen/test/template_language_test/templates/callback_indent_test/a.tpl +0 -12
  1916. data/lib/puppet/vendor/rgen/test/template_language_test/templates/callback_indent_test/b.tpl +0 -5
  1917. data/lib/puppet/vendor/rgen/test/template_language_test/templates/code/array.tpl +0 -11
  1918. data/lib/puppet/vendor/rgen/test/template_language_test/templates/content/author.tpl +0 -7
  1919. data/lib/puppet/vendor/rgen/test/template_language_test/templates/content/chapter.tpl +0 -5
  1920. data/lib/puppet/vendor/rgen/test/template_language_test/templates/define_local_test/local.tpl +0 -8
  1921. data/lib/puppet/vendor/rgen/test/template_language_test/templates/define_local_test/test.tpl +0 -8
  1922. data/lib/puppet/vendor/rgen/test/template_language_test/templates/evaluate_test/test.tpl +0 -7
  1923. data/lib/puppet/vendor/rgen/test/template_language_test/templates/indent_string_test.tpl +0 -12
  1924. data/lib/puppet/vendor/rgen/test/template_language_test/templates/index/c/cmod.tpl +0 -1
  1925. data/lib/puppet/vendor/rgen/test/template_language_test/templates/index/chapter.tpl +0 -3
  1926. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_backslash_r_test.tpl +0 -5
  1927. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/no_indent.tpl +0 -3
  1928. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/sub1/no_indent.tpl +0 -3
  1929. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/test.tpl +0 -24
  1930. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/test2.tpl +0 -13
  1931. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/test3.tpl +0 -10
  1932. data/lib/puppet/vendor/rgen/test/template_language_test/templates/null_context_test.tpl +0 -17
  1933. data/lib/puppet/vendor/rgen/test/template_language_test/templates/root.tpl +0 -31
  1934. data/lib/puppet/vendor/rgen/test/template_language_test/templates/template_resolution_test/sub1/sub1.tpl +0 -3
  1935. data/lib/puppet/vendor/rgen/test/template_language_test/templates/template_resolution_test/sub1.tpl +0 -9
  1936. data/lib/puppet/vendor/rgen/test/template_language_test/templates/template_resolution_test/test.tpl +0 -4
  1937. data/lib/puppet/vendor/rgen/test/template_language_test/testout.txt +0 -29
  1938. data/lib/puppet/vendor/rgen/test/template_language_test.rb +0 -163
  1939. data/lib/puppet/vendor/rgen/test/testmodel/class_model_checker.rb +0 -119
  1940. data/lib/puppet/vendor/rgen/test/testmodel/ea_testmodel.eap +0 -0
  1941. data/lib/puppet/vendor/rgen/test/testmodel/ea_testmodel.xml +0 -1029
  1942. data/lib/puppet/vendor/rgen/test/testmodel/ea_testmodel_partial.xml +0 -317
  1943. data/lib/puppet/vendor/rgen/test/testmodel/ecore_model_checker.rb +0 -101
  1944. data/lib/puppet/vendor/rgen/test/testmodel/manual_testmodel.xml +0 -22
  1945. data/lib/puppet/vendor/rgen/test/testmodel/object_model_checker.rb +0 -67
  1946. data/lib/puppet/vendor/rgen/test/transformer_test.rb +0 -254
  1947. data/lib/puppet/vendor/rgen/test/util/file_cache_map_test.rb +0 -99
  1948. data/lib/puppet/vendor/rgen/test/util/pattern_matcher_test.rb +0 -97
  1949. data/lib/puppet/vendor/rgen/test/util_test.rb +0 -5
  1950. data/lib/puppet/vendor/rgen/test/xml_instantiator_test/simple_ecore_model_checker.rb +0 -94
  1951. data/lib/puppet/vendor/rgen/test/xml_instantiator_test/simple_xmi_ecore_instantiator.rb +0 -53
  1952. data/lib/puppet/vendor/rgen/test/xml_instantiator_test/simple_xmi_metamodel.rb +0 -49
  1953. data/lib/puppet/vendor/rgen/test/xml_instantiator_test/simple_xmi_to_ecore.rb +0 -75
  1954. data/lib/puppet/vendor/rgen/test/xml_instantiator_test.rb +0 -160
  1955. data/lib/puppet/vendor/rgen_patch.rb +0 -132
  1956. data/lib/puppet/vendor/semantic/Gemfile +0 -20
  1957. data/lib/puppet/vendor/semantic/PUPPET_README.md +0 -6
  1958. data/lib/puppet/vendor/semantic/Rakefile +0 -69
  1959. data/lib/puppet/vendor/semantic/lib/semantic/version.rb +0 -168
  1960. data/lib/puppet/vendor/semantic/lib/semantic/version_range.rb +0 -424
  1961. data/lib/puppet/vendor/semantic/spec/spec_helper.rb +0 -24
  1962. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/graph_node_spec.rb +0 -141
  1963. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/graph_spec.rb +0 -162
  1964. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/module_release_spec.rb +0 -143
  1965. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/source_spec.rb +0 -5
  1966. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency/unsatisfiable_graph_spec.rb +0 -44
  1967. data/lib/puppet/vendor/semantic/spec/unit/semantic/dependency_spec.rb +0 -383
  1968. data/lib/puppet/vendor/semantic/spec/unit/semantic/version_range_spec.rb +0 -307
  1969. data/lib/puppet/vendor/semantic/spec/unit/semantic/version_spec.rb +0 -608
  1970. data/lib/semver.rb +0 -123
  1971. data/man/man8/extlookup2hiera.8 +0 -10
  1972. data/man/man8/puppet-file.8 +0 -189
  1973. data/man/man8/puppet-resource_type.8 +0 -188
  1974. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/lib/puppet/bindings/abc/default.rb +0 -9
  1975. data/spec/fixtures/unit/data_providers/environments/production/modules/xyz/lib/puppet/bindings/xyz/default.rb +0 -9
  1976. data/spec/fixtures/unit/data_providers/environments/sample/manifests/site.pp +0 -6
  1977. data/spec/fixtures/unit/data_providers/environments/sample/modules/dataprovider/lib/puppet/bindings/dataprovider/default.rb +0 -54
  1978. data/spec/fixtures/unit/data_providers/environments/sample/modules/dataprovider/lib/puppet_x/helindbe/sample_env_data.rb +0 -31
  1979. data/spec/fixtures/unit/data_providers/environments/sample/modules/dataprovider/lib/puppet_x/helindbe/sample_module_data.rb +0 -32
  1980. data/spec/fixtures/unit/data_providers/environments/sample/modules/dataprovider/manifests/init.pp +0 -5
  1981. data/spec/fixtures/unit/functions/lookup/environments/production/modules/abc/lib/puppet/bindings/abc/default.rb +0 -9
  1982. data/spec/fixtures/unit/functions/lookup/environments/production/modules/bad_data/lib/puppet/bindings/bad_data/default.rb +0 -9
  1983. data/spec/fixtures/unit/functions/lookup/environments/production/modules/bad_data/manifests/init.pp +0 -3
  1984. data/spec/fixtures/unit/functions/lookup/environments/production/modules/bca/lib/puppet/bindings/bca/default.rb +0 -9
  1985. data/spec/integration/data_binding.rb +0 -104
  1986. data/spec/integration/parser/functions/require_spec.rb +0 -43
  1987. data/spec/integration/provider/package_spec.rb +0 -33
  1988. data/spec/unit/application/inspect_spec.rb +0 -287
  1989. data/spec/unit/data_providers/sample_data_provider_spec.rb +0 -52
  1990. data/spec/unit/face/file_spec.rb +0 -10
  1991. data/spec/unit/indirector/catalog/static_compiler_spec.rb +0 -237
  1992. data/spec/unit/indirector/resource_type/parser_spec.rb +0 -254
  1993. data/spec/unit/indirector/resource_type/rest_spec.rb +0 -14
  1994. data/spec/unit/parser/functions/defined_spec.rb +0 -120
  1995. data/spec/unit/parser/functions/include_spec.rb +0 -55
  1996. data/spec/unit/parser/functions/require_spec.rb +0 -68
  1997. data/spec/unit/pops/binder/binder_spec.rb +0 -43
  1998. data/spec/unit/pops/binder/bindings_checker_spec.rb +0 -155
  1999. data/spec/unit/pops/binder/bindings_composer_spec.rb +0 -64
  2000. data/spec/unit/pops/binder/bindings_validator_factory_spec.rb +0 -18
  2001. data/spec/unit/pops/binder/config/binder_config_spec.rb +0 -42
  2002. data/spec/unit/pops/binder/injector_spec.rb +0 -768
  2003. data/spec/unit/pops/parser/rgen_sanitycheck_spec.rb +0 -23
  2004. data/spec/unit/resource/type_collection_helper_spec.rb +0 -24
  2005. data/spec/unit/semver_spec.rb +0 -305
  2006. /data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/environment.conf +0 -0
  2007. /data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/lib/puppet/functions/environment/data.rb +0 -0
  2008. /data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/modules/abc/lib/puppet/functions/abc/data.rb +0 -0
  2009. /data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/modules/abc/manifests/init.pp +0 -0
  2010. /data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/modules/bca/lib/puppet/functions/bca/data.rb +0 -0
  2011. /data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/modules/bca/manifests/init.pp +0 -0
  2012. /data/spec/fixtures/unit/functions/{lookup → lookup_fixture}/environments/production/modules/no_provider/manifests/init.pp +0 -0
  2013. /data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/{usee → modules/usee}/lib/puppet/functions/usee/callee.rb +0 -0
  2014. /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', 754)
23
+ module_eval(<<'...end egrammar.ra/module_eval...', 'egrammar.ra', 878)
24
24
 
25
25
  # Make emacs happy
26
26
  # Local Variables:
@@ -30,222 +30,298 @@ module_eval(<<'...end egrammar.ra/module_eval...', 'egrammar.ra', 754)
30
30
  ##### State transition tables begin ###
31
31
 
32
32
  clist = [
33
- '59,62,322,-228,60,54,337,55,240,81,-240,-239,229,283,-237,112,323,-130',
34
- '375,339,374,280,379,102,18,105,399,100,101,241,43,283,46,136,49,12,-242',
35
- '47,37,40,340,45,38,10,11,-228,114,67,17,104,111,39,-240,-239,15,16,-237',
36
- '252,113,-130,59,62,68,281,60,54,137,55,44,272,273,82,36,63,112,65,66',
37
- '64,-242,251,48,50,52,51,18,375,53,374,112,229,43,282,46,317,49,116,283',
38
- '47,37,40,257,45,38,258,259,114,346,67,17,111,334,39,365,348,15,16,240',
39
- '113,331,114,59,62,68,111,60,54,240,55,44,67,254,113,36,63,112,65,66',
40
- '241,232,67,48,50,52,51,18,230,53,241,261,260,43,270,46,254,49,12,321',
41
- '47,37,40,70,45,38,10,11,114,356,67,17,111,357,39,59,62,15,16,60,113',
42
- '278,279,59,62,68,359,60,54,240,55,44,73,74,75,36,63,112,65,66,318,362',
43
- '317,48,50,52,51,18,317,53,367,368,259,43,311,46,229,49,12,112,47,37',
44
- '40,80,45,38,10,11,114,372,67,17,111,307,39,376,378,15,16,305,113,76',
45
- '78,77,79,68,112,112,80,108,114,44,219,385,111,36,63,304,65,66,218,388',
46
- '113,48,50,52,51,59,62,53,122,60,54,278,55,416,72,114,114,157,154,111',
47
- '111,152,254,392,72,122,395,113,113,18,59,62,278,80,60,43,312,46,398',
48
- '49,12,240,47,37,40,240,45,38,10,11,123,80,67,17,67,80,39,122,67,15,16',
49
- '402,241,378,404,405,241,68,406,136,80,409,133,44,410,411,233,36,63,412',
50
- '65,66,80,278,72,48,50,52,51,59,62,53,68,60,54,420,55,414,81,69,422,423',
51
- '137,63,424,307,,,,,,,102,18,105,,100,101,,43,,46,,49,12,,47,37,40,,45',
52
- '38,10,11,,,67,17,104,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,82,36',
53
- '63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,',
54
- ',,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,',
55
- '48,50,52,51,18,,53,,,,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67,17,',
56
- ',39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51',
57
- '18,,53,,,,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67,17,,,39,,,15,16',
58
- ',,,,,,68,,,,,,44,,,,36,63,,65,66,,,,48,50,52,51,59,62,53,,60,54,,55',
59
- '408,81,,,,,,,,,,,,,,102,18,105,,100,101,,43,,46,,49,12,,47,37,40,,45',
60
- '38,10,11,,,67,17,104,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63',
61
- ',65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,',
62
- '67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48',
63
- '50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,',
64
- '15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,',
65
- '53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59',
66
- '62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46',
67
- ',49,12,,47,37,40,,45,38,10,11,,,67,17,,,39,,,15,16,,,,,59,62,68,,60',
68
- '54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47',
69
- '37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36',
70
- '63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,',
71
- ',,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,',
72
- '48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39',
73
- ',,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18',
74
- ',53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59',
75
- '62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46',
76
- ',49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54',
77
- ',55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,12,,47,37',
78
- '40,,45,38,10,11,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36',
79
- '63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,',
80
- ',,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,',
81
- '48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39',
82
- ',,15,16,,,,,59,62,68,,60,54,141,55,44,,,,36,63,,65,66,,,,48,50,52,51',
83
- '18,,53,,,,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67,17,,,39,,,15,16',
84
- ',,,,59,62,68,,60,54,143,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53',
85
- ',,,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67,17,,,39,,,15,16,,,,,,,68',
86
- ',,,,,44,,,,36,63,,65,66,,,,48,50,52,51,59,62,53,,60,54,,55,145,81,,',
87
- ',,,,,,,,,,,102,18,105,,100,101,,43,,46,,49,12,,47,37,40,,45,38,10,11',
88
- ',,67,17,104,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,',
89
- ',,48,50,52,51,18,,53,,,,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67,17',
90
- ',,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,279,,36,63,,65,66,,,,48,50',
91
- '52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15',
92
- '16,,,,,,,68,,,,,,44,,,,36,63,,65,66,,,,48,50,52,51,59,62,53,,60,54,',
93
- '55,145,81,,,,,,,,,,,,,,102,18,105,,100,101,,43,,46,,49,12,,47,37,40',
94
- ',45,38,10,11,,,67,17,104,,39,,,15,16,,,,,59,62,68,,60,54,,156,44,,,',
95
- '36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38',
96
- ',,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,',
97
- ',48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39',
98
- ',,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18',
99
- ',53,,,,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67,17,,,39,,,15,16,,,',
100
- ',59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43',
101
- ',46,,49,12,,47,37,40,,45,38,10,11,,,67,17,,,39,,,15,16,,,,,59,62,68',
102
- ',60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,12',
103
- ',47,37,40,,45,38,10,11,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55',
104
- '44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,12,,47,37,40',
105
- ',45,38,10,11,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63',
106
- ',65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,12,,47,37,40,,45,38,10,11',
107
- ',,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48',
108
- '50,52,51,18,,53,,,,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67,17,,,39',
109
- ',,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18',
110
- ',53,,,,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67,17,,,39,,,15,16,,,',
111
- ',59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43',
112
- ',46,,49,12,,47,37,40,,45,38,10,11,,,67,17,,,39,,,15,16,,,,,59,62,68',
113
- ',60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,12',
114
- ',47,37,40,,45,38,10,11,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55',
115
- '44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,12,,47,37,40',
116
- ',45,38,10,11,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63',
117
- ',65,66,,,,48,50,52,51,18,,53,,,,173,187,179,188,49,180,190,181,37,172',
118
- ',175,170,,,,,67,17,191,186,171,,,15,169,,,,,,,68,,,,,189,174,,,,36,63',
119
- ',65,66,,,,182,183,185,184,59,62,53,81,60,54,,55,,,,,,,,,,102,,105,,100',
120
- '101,,18,,,,,,43,,46,,49,116,,47,37,40,,45,38,104,,,,67,17,,,39,,,15',
121
- '16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53',
122
- ',,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62',
123
- '68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49',
124
- '116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55',
125
- '44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40',
126
- ',45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65',
127
- '66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17',
128
- ',,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52',
129
- '51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16',
130
- ',,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,',
131
- '43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68',
132
- ',60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116',
133
- ',47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,',
134
- ',,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45',
135
- '38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66',
136
- ',,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,',
137
- ',39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51',
138
- '18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,',
139
- ',59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43',
140
- ',46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60',
141
- '54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47',
142
- '37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36',
143
- '63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,',
144
- ',,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,',
145
- '48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39',
146
- ',,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18',
147
- ',53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59',
148
- '62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46',
149
- ',49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54',
150
- ',55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37',
151
- '40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63',
152
- ',65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,',
153
- '67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48',
154
- '50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,',
155
- '15,16,,,,,59,62,68,,60,54,,55,44,,,215,36,63,,65,66,,,,48,50,52,51,18',
156
- '217,53,,,,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67,17,,,39,,,15,16',
157
- ',,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,',
158
- '43,,46,,49,12,,47,37,40,,45,38,10,11,,,67,17,,,39,,,15,16,,,,,59,62',
159
- '68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49',
160
- '12,,47,37,40,,45,38,10,11,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,',
161
- '55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37',
162
- '40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63',
163
- ',65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,',
164
- '67,17,,,39,,,15,16,,,,,,,68,,,,,,44,,,,36,63,,65,66,,,,48,50,52,51,59',
165
- '62,53,,60,54,,55,380,,,,,,,,,,,,,,,,18,,,,,,43,,46,,49,116,,47,37,40',
166
- ',45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65',
167
- '66,,,,48,50,52,51,18,,53,,,,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67',
168
- '17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50',
169
- '52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15',
170
- '16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53',
171
- ',,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62',
172
- '68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49',
173
- '116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55',
174
- '44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40',
175
- ',45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65',
176
- '66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17',
177
- ',,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52',
178
- '51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16',
179
- ',,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,',
180
- '43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68',
181
- ',60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116',
182
- ',47,37,40,,45,38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,',
183
- ',,36,63,,65,66,,,,48,50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45',
184
- '38,,,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66',
185
- ',,,48,50,52,51,18,245,53,,,,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67',
186
- '17,,,39,,,15,16,,,,,,,68,,,,,,44,,,,36,63,,65,66,,,,48,50,52,51,59,62',
187
- '53,,60,54,,55,315,,,,,,,,,,,,,,,,18,59,62,,,60,43,,46,,49,12,,47,37',
188
- '40,,45,38,10,11,,,67,17,,,39,,,15,16,,,,,,,68,,136,,,133,44,,,,36,63',
189
- ',65,66,,,,48,50,52,51,59,62,53,68,60,54,,55,325,,,,,137,63,,,,,,,,,',
190
- '18,59,62,,,60,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67,17,,,39,,,15',
191
- '16,,,,,,,68,,136,,,133,44,,,,36,63,,65,66,,,,48,50,52,51,59,62,53,68',
192
- '60,54,,55,327,,,,,137,63,,,,,,,,,,18,,,,,,43,,46,,49,12,,47,37,40,,45',
193
- '38,10,11,,,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65',
194
- '66,,,,48,50,52,51,18,,53,,,,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67',
195
- '17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50',
196
- '52,51,18,,53,,,,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67,17,,,39,,',
197
- '15,16,,,,,,,68,,,,,,44,,,,36,63,,65,66,,,,48,50,52,51,59,62,53,,60,54',
198
- ',55,341,,,,,,,,,,,,,,,,18,,,,,,43,,46,,49,12,,47,37,40,,45,38,10,11',
199
- ',,67,17,,,39,,,15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48',
200
- '50,52,51,18,,53,,,,43,,46,,49,116,,47,37,40,,45,38,,,,,67,17,,,39,,',
201
- '15,16,,,,,59,62,68,,60,54,,55,44,,,,36,63,,65,66,,,,48,50,52,51,18,',
202
- '53,,,,43,,46,,49,12,,47,37,40,,45,38,10,11,,,67,17,,,39,,,15,16,,,,',
203
- ',,68,,,,,,44,,,,36,63,,65,66,81,,248,48,50,52,51,,,53,,,97,92,102,,105',
204
- ',100,101,,93,95,94,96,,59,62,,,60,,,,,,,,,,104,,,,99,98,,,85,86,88,87',
205
- '90,91,,83,84,81,,247,,,82,,,136,,,133,97,92,102,,105,,100,101,,93,95',
206
- '94,96,,89,,,,,68,,,,,,,,,104,137,63,,99,98,,,85,86,88,87,90,91,,83,84',
207
- '81,,246,,,82,,,,,,,97,92,102,,105,,100,101,,93,95,94,96,,89,,,,,,,,',
208
- ',,,,,104,,,,99,98,,,85,86,88,87,90,91,81,83,84,,,,,,82,,,,97,92,102',
209
- '308,105,81,100,101,,93,95,94,96,,,,,89,,102,,105,,100,101,,,,104,,,',
210
- '99,98,,81,85,86,88,87,90,91,,83,84,104,,97,92,102,82,105,,100,101,,93',
211
- '95,94,96,83,84,,,,,,82,,,,89,,,,104,,,,99,98,,81,85,86,88,87,90,91,',
212
- '83,84,,,97,92,102,82,105,,100,101,,93,95,94,96,,,,,,,,,,,,89,,,,104',
213
- ',,,99,98,,81,85,86,88,87,90,91,,83,84,,,97,92,102,82,105,,100,101,,93',
214
- '95,94,96,,,,,,,,,,,,89,,,,104,,,,99,98,,81,85,86,88,87,90,91,,83,84',
215
- ',,97,92,102,82,105,,100,101,,93,95,94,96,,,,,,,,,,,,89,,,,104,,,,99',
216
- '98,,81,85,86,88,87,90,91,,83,84,,,97,92,102,82,105,,100,101,,93,95,94',
217
- '96,,272,273,,,,,,,,,89,,,,104,,,,99,98,,,85,86,88,87,90,91,81,83,84',
218
- ',,284,,,82,,,,97,92,102,,105,81,100,101,,93,95,94,96,,,,,89,,102,,105',
219
- ',100,101,,,,104,,,,99,98,,81,85,86,88,87,90,91,,83,84,104,,97,92,102',
220
- '82,105,,100,101,,93,95,94,96,83,84,,,,,,82,,,,89,,,,104,,,,,98,,81,85',
221
- '86,88,87,90,91,,83,84,,,97,92,102,82,105,,100,101,,93,95,94,96,81,,',
222
- ',,,,,,,,89,,92,102,104,105,,100,101,81,93,,85,86,88,87,90,91,,83,84',
223
- ',92,102,,105,82,100,101,104,93,,,,,,,85,86,88,87,90,91,,83,84,,89,,104',
224
- ',82,,,,,,85,86,88,87,90,91,81,83,84,,,,,,82,89,,,97,92,102,276,105,81',
225
- '100,101,,93,95,94,96,,,,,89,92,102,,105,,100,101,,93,,104,,,,99,98,',
226
- ',85,86,88,87,90,91,,83,84,104,,,,,82,,,85,86,88,87,90,91,,83,84,81,',
227
- ',,,82,,,,89,,,97,92,102,,105,81,100,101,,93,95,94,96,,89,,,,92,102,',
228
- '105,,100,101,,93,,104,,,,99,98,,,85,86,88,87,90,91,,83,84,104,,,,,82',
229
- ',,85,86,88,87,90,91,81,83,84,,,,,,82,,,,89,,102,,105,81,100,101,,,,',
230
- ',,,,,89,,102,,105,,100,101,,,,104,,,,,,,,85,86,88,87,90,91,,83,84,104',
231
- ',,,,82,,,85,86,88,87,90,91,,83,84,81,,,,,82,,,,89,,,97,92,102,,105,81',
232
- '100,101,,93,95,94,96,,89,,,,,102,,105,,100,101,,,,104,,,,99,98,,81,85',
233
- '86,88,87,90,91,,83,84,104,,97,92,102,82,105,,100,101,,93,95,94,96,83',
234
- '84,,,,,,82,,,,89,,,,104,,,,99,98,,81,85,86,88,87,90,91,,83,84,,,97,92',
235
- '102,82,105,,100,101,,93,95,94,96,,,,,,,,,,,,89,,,,104,,,,99,98,,81,85',
236
- '86,88,87,90,91,,83,84,,,,,102,82,105,,100,101,,,,81,,,,,,,,,,,,,89,102',
237
- ',105,104,100,101,,,,,,85,86,88,87,,,,83,84,,,,,,82,104,,,,,81,,,85,86',
238
- '88,87,,,,83,84,,,102,89,105,82,100,101,,,,81,,,,,,,,,,,,97,92,102,89',
239
- '105,104,100,101,,93,95,94,96,,,88,87,,,,83,84,,,,,,82,104,,,,99,98,',
240
- '81,85,86,88,87,90,91,,83,84,,,,89,102,82,105,,100,101,,,296,187,295',
241
- '188,,293,190,297,,290,,292,294,,89,,,,104,191,186,298,,,,291,,,88,87',
242
- ',,,83,84,,,189,299,,82,,,,,,,,,,302,303,301,300,,,,296,187,295,188,89',
243
- '293,190,297,,290,,292,294,,,,,,,191,186,298,,,,291,,,,,,,,,,,,189,299',
244
- ',,,,,,,,,,,302,303,301,300,296,187,295,188,,293,190,297,,290,,292,294',
245
- ',,,,,,191,186,298,,,,291,,,,,,,,,,,,189,299,,,,,,,,,,,,302,303,301,300',
246
- '296,187,295,188,,293,190,297,,290,,292,294,,,,,,,191,186,298,,,,291',
247
- ',,,,,,,,,,,189,299,,,,,,,,,,,,302,303,301,300' ]
248
- racc_action_table = arr = ::Array.new(6830, 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)
249
325
  idx = 0
250
326
  clist.each do |str|
251
327
  str.split(',', -1).each do |i|
@@ -255,245 +331,327 @@ clist = [
255
331
  end
256
332
 
257
333
  clist = [
258
- '0,0,244,170,0,0,253,0,242,195,185,184,138,328,171,46,244,172,325,255',
259
- '325,178,328,195,0,195,371,195,195,242,0,371,0,252,0,0,183,0,0,0,256',
260
- '0,0,0,0,170,46,0,0,195,46,0,185,184,0,0,171,131,46,172,411,411,0,178',
261
- '411,411,252,411,0,346,346,195,0,0,311,0,0,0,183,129,0,0,0,0,411,372',
262
- '0,372,48,128,411,193,411,269,411,411,193,411,411,411,144,411,411,144',
263
- '274,311,275,411,411,311,250,411,311,277,411,411,154,311,249,48,4,4,411',
264
- '48,4,4,317,4,411,154,140,48,411,411,180,411,411,154,121,317,411,411',
265
- '411,411,4,119,411,317,149,149,4,154,4,142,4,4,243,4,4,4,4,4,4,4,4,180',
266
- '285,4,4,180,287,4,152,152,4,4,152,180,289,291,405,405,4,306,405,405',
267
- '241,405,4,7,7,7,4,4,179,4,4,240,309,234,4,4,4,4,405,313,4,314,316,147',
268
- '405,227,405,109,405,405,182,405,405,405,107,405,405,405,405,179,324',
269
- '405,405,179,224,405,326,327,405,405,223,179,7,7,7,7,405,12,116,106,12',
270
- '182,405,103,332,182,405,405,221,405,405,102,345,182,405,405,405,405',
271
- '404,404,405,217,404,404,347,404,404,71,12,116,69,64,12,116,63,216,355',
272
- '158,357,358,12,116,404,251,251,361,163,251,404,229,404,366,404,404,122',
273
- '404,404,404,229,404,404,404,404,42,164,404,404,122,165,404,41,229,404',
274
- '404,375,122,376,378,379,229,404,382,251,166,387,251,404,390,391,122',
275
- '404,404,397,404,404,8,168,5,404,404,404,404,402,402,404,251,402,402',
276
- '407,402,402,196,1,413,415,251,251,417,421,,,,,,,196,402,196,,196,196',
277
- ',402,,402,,402,402,,402,402,402,,402,402,402,402,,,402,402,196,,402',
278
- ',,402,402,,,,,175,175,402,,175,175,,175,402,,,196,402,402,,402,402,',
279
- ',,402,402,402,402,175,,402,,,,175,,175,,175,175,,175,175,175,,175,175',
280
- ',,,,175,175,,,175,,,175,175,,,,,10,10,175,,10,10,,10,175,,,,175,175',
281
- ',175,175,,,,175,175,175,175,10,,175,,,,10,,10,,10,10,,10,10,10,,10,10',
282
- '10,10,,,10,10,,,10,,,10,10,,,,,11,11,10,,11,11,,11,10,,,,10,10,,10,10',
283
- ',,,10,10,10,10,11,,10,,,,11,,11,,11,11,,11,11,11,,11,11,11,11,,,11,11',
284
- ',,11,,,11,11,,,,,,,11,,,,,,11,,,,11,11,,11,11,,,,11,11,11,11,385,385',
285
- '11,,385,385,,385,385,194,,,,,,,,,,,,,,194,385,194,,194,194,,385,,385',
286
- ',385,385,,385,385,385,,385,385,385,385,,,385,385,194,,385,,,385,385',
287
- ',,,,15,15,385,,15,15,,15,385,,,,385,385,,385,385,,,,385,385,385,385',
288
- '15,,385,,,,15,,15,,15,15,,15,15,15,,15,15,,,,,15,15,,,15,,,15,15,,,',
289
- ',16,16,15,,16,16,,16,15,,,,15,15,,15,15,,,,15,15,15,15,16,,15,,,,16',
290
- ',16,,16,16,,16,16,16,,16,16,,,,,16,16,,,16,,,16,16,,,,,17,17,16,,17',
291
- '17,,17,16,,,,16,16,,16,16,,,,16,16,16,16,17,,16,,,,17,,17,,17,17,,17',
292
- '17,17,,17,17,,,,,17,17,,,17,,,17,17,,,,,18,18,17,,18,18,,18,17,,,,17',
293
- '17,,17,17,,,,17,17,17,17,18,,17,,,,18,,18,,18,18,,18,18,18,,18,18,18',
294
- '18,,,18,18,,,18,,,18,18,,,,,374,374,18,,374,374,,374,18,,,,18,18,,18',
295
- '18,,,,18,18,18,18,374,,18,,,,374,,374,,374,374,,374,374,374,,374,374',
296
- ',,,,374,374,,,374,,,374,374,,,,,174,174,374,,174,174,,174,374,,,,374',
297
- '374,,374,374,,,,374,374,374,374,174,,374,,,,174,,174,,174,174,,174,174',
298
- '174,,174,174,,,,,174,174,,,174,,,174,174,,,,,43,43,174,,43,43,,43,174',
299
- ',,,174,174,,174,174,,,,174,174,174,174,43,,174,,,,43,,43,,43,43,,43',
300
- '43,43,,43,43,,,,,43,43,,,43,,,43,43,,,,,44,44,43,,44,44,,44,43,,,,43',
301
- '43,,43,43,,,,43,43,43,43,44,,43,,,,44,,44,,44,44,,44,44,44,,44,44,,',
302
- ',,44,44,,,44,,,44,44,,,,,45,45,44,,45,45,,45,44,,,,44,44,,44,44,,,,44',
303
- '44,44,44,45,,44,,,,45,,45,,45,45,,45,45,45,,45,45,,,,,45,45,,,45,,,45',
304
- '45,,,,,362,362,45,,362,362,,362,45,,,,45,45,,45,45,,,,45,45,45,45,362',
305
- ',45,,,,362,,362,,362,362,,362,362,362,,362,362,362,362,,,362,362,,,362',
306
- ',,362,362,,,,,356,356,362,,356,356,,356,362,,,,362,362,,362,362,,,,362',
307
- '362,362,362,356,,362,,,,356,,356,,356,356,,356,356,356,,356,356,,,,',
308
- '356,356,,,356,,,356,356,,,,,173,173,356,,173,173,,173,356,,,,356,356',
309
- ',356,356,,,,356,356,356,356,173,,356,,,,173,,173,,173,173,,173,173,173',
310
- ',173,173,,,,,173,173,,,173,,,173,173,,,,,53,53,173,,53,53,53,53,173',
311
- ',,,173,173,,173,173,,,,173,173,173,173,53,,173,,,,53,,53,,53,53,,53',
312
- '53,53,,53,53,53,53,,,53,53,,,53,,,53,53,,,,,54,54,53,,54,54,54,54,53',
313
- ',,,53,53,,53,53,,,,53,53,53,53,54,,53,,,,54,,54,,54,54,,54,54,54,,54',
314
- '54,54,54,,,54,54,,,54,,,54,54,,,,,,,54,,,,,,54,,,,54,54,,54,54,,,,54',
315
- '54,54,54,55,55,54,,55,55,,55,55,117,,,,,,,,,,,,,,117,55,117,,117,117',
316
- ',55,,55,,55,55,,55,55,55,,55,55,55,55,,,55,55,117,,55,,,55,55,,,,,61',
317
- '61,55,,61,61,,61,55,,,,55,55,,55,55,,,,55,55,55,55,61,,55,,,,61,,61',
318
- ',61,61,,61,61,61,,61,61,61,61,,,61,61,,,61,,,61,61,,,,,169,169,61,,169',
319
- '169,,169,61,,169,,61,61,,61,61,,,,61,61,61,61,169,,61,,,,169,,169,,169',
320
- '169,,169,169,169,,169,169,,,,,169,169,,,169,,,169,169,,,,,,,169,,,,',
321
- ',169,,,,169,169,,169,169,,,,169,169,169,169,156,156,169,,156,156,,156',
322
- '156,118,,,,,,,,,,,,,,118,156,118,,118,118,,156,,156,,156,156,,156,156',
323
- '156,,156,156,156,156,,,156,156,118,,156,,,156,156,,,,,66,66,156,,66',
324
- '66,,66,156,,,,156,156,,156,156,,,,156,156,156,156,66,,156,,,,66,,66',
325
- ',66,66,,66,66,66,,66,66,,,,,66,66,,,66,,,66,66,,,,,215,215,66,,215,215',
326
- ',215,66,,,,66,66,,66,66,,,,66,66,66,66,215,,66,,,,215,,215,,215,215',
327
- ',215,215,215,,215,215,,,,,215,215,,,215,,,215,215,,,,,70,70,215,,70',
328
- '70,,70,215,,,,215,215,,215,215,,,,215,215,215,215,70,,215,,,,70,,70',
329
- ',70,70,,70,70,70,,70,70,70,70,,,70,70,,,70,,,70,70,,,,,153,153,70,,153',
330
- '153,,153,70,,,,70,70,,70,70,,,,70,70,70,70,153,,70,,,,153,,153,,153',
331
- '153,,153,153,153,,153,153,153,153,,,153,153,,,153,,,153,153,,,,,72,72',
332
- '153,,72,72,,72,153,,,,153,153,,153,153,,,,153,153,153,153,72,,153,,',
333
- ',72,,72,,72,72,,72,72,72,,72,72,72,72,,,72,72,,,72,,,72,72,,,,,73,73',
334
- '72,,73,73,,73,72,,,,72,72,,72,72,,,,72,72,72,72,73,,72,,,,73,,73,,73',
335
- '73,,73,73,73,,73,73,73,73,,,73,73,,,73,,,73,73,,,,,74,74,73,,74,74,',
336
- '74,73,,,,73,73,,73,73,,,,73,73,73,73,74,,73,,,,74,,74,,74,74,,74,74',
337
- '74,,74,74,74,74,,,74,74,,,74,,,74,74,,,,,75,75,74,,75,75,,75,74,,,,74',
338
- '74,,74,74,,,,74,74,74,74,75,,74,,,,75,,75,,75,75,,75,75,75,,75,75,75',
339
- '75,,,75,75,,,75,,,75,75,,,,,76,76,75,,76,76,,76,75,,,,75,75,,75,75,',
340
- ',,75,75,75,75,76,,75,,,,76,,76,,76,76,,76,76,76,,76,76,76,76,,,76,76',
341
- ',,76,,,76,76,,,,,77,77,76,,77,77,,77,76,,,,76,76,,76,76,,,,76,76,76',
342
- '76,77,,76,,,,77,,77,,77,77,,77,77,77,,77,77,77,77,,,77,77,,,77,,,77',
343
- '77,,,,,78,78,77,,78,78,,78,77,,,,77,77,,77,77,,,,77,77,77,77,78,,77',
344
- ',,,78,,78,,78,78,,78,78,78,,78,78,78,78,,,78,78,,,78,,,78,78,,,,,79',
345
- '79,78,,79,79,,79,78,,,,78,78,,78,78,,,,78,78,78,78,79,,78,,,,79,,79',
346
- ',79,79,,79,79,79,,79,79,79,79,,,79,79,,,79,,,79,79,,,,,80,80,79,,80',
347
- '80,,80,79,,,,79,79,,79,79,,,,79,79,79,79,80,,79,,,,80,80,80,80,80,80',
348
- '80,80,80,80,,80,80,,,,,80,80,80,80,80,,,80,80,,,,,,,80,,,,,80,80,,,',
349
- '80,80,,80,80,,,,80,80,80,80,81,81,80,115,81,81,,81,,,,,,,,,,115,,115',
350
- ',115,115,,81,,,,,,81,,81,,81,81,,81,81,81,,81,81,115,,,,81,81,,,81,',
351
- ',81,81,,,,,82,82,81,,82,82,,82,81,,,,81,81,,81,81,,,,81,81,81,81,82',
352
- ',81,,,,82,,82,,82,82,,82,82,82,,82,82,,,,,82,82,,,82,,,82,82,,,,,83',
353
- '83,82,,83,83,,83,82,,,,82,82,,82,82,,,,82,82,82,82,83,,82,,,,83,,83',
354
- ',83,83,,83,83,83,,83,83,,,,,83,83,,,83,,,83,83,,,,,84,84,83,,84,84,',
355
- '84,83,,,,83,83,,83,83,,,,83,83,83,83,84,,83,,,,84,,84,,84,84,,84,84',
356
- '84,,84,84,,,,,84,84,,,84,,,84,84,,,,,85,85,84,,85,85,,85,84,,,,84,84',
357
- ',84,84,,,,84,84,84,84,85,,84,,,,85,,85,,85,85,,85,85,85,,85,85,,,,,85',
358
- '85,,,85,,,85,85,,,,,86,86,85,,86,86,,86,85,,,,85,85,,85,85,,,,85,85',
359
- '85,85,86,,85,,,,86,,86,,86,86,,86,86,86,,86,86,,,,,86,86,,,86,,,86,86',
360
- ',,,,87,87,86,,87,87,,87,86,,,,86,86,,86,86,,,,86,86,86,86,87,,86,,,',
361
- '87,,87,,87,87,,87,87,87,,87,87,,,,,87,87,,,87,,,87,87,,,,,88,88,87,',
362
- '88,88,,88,87,,,,87,87,,87,87,,,,87,87,87,87,88,,87,,,,88,,88,,88,88',
363
- ',88,88,88,,88,88,,,,,88,88,,,88,,,88,88,,,,,89,89,88,,89,89,,89,88,',
364
- ',,88,88,,88,88,,,,88,88,88,88,89,,88,,,,89,,89,,89,89,,89,89,89,,89',
365
- '89,,,,,89,89,,,89,,,89,89,,,,,90,90,89,,90,90,,90,89,,,,89,89,,89,89',
366
- ',,,89,89,89,89,90,,89,,,,90,,90,,90,90,,90,90,90,,90,90,,,,,90,90,,',
367
- '90,,,90,90,,,,,91,91,90,,91,91,,91,90,,,,90,90,,90,90,,,,90,90,90,90',
368
- '91,,90,,,,91,,91,,91,91,,91,91,91,,91,91,,,,,91,91,,,91,,,91,91,,,,',
369
- '92,92,91,,92,92,,92,91,,,,91,91,,91,91,,,,91,91,91,91,92,,91,,,,92,',
370
- '92,,92,92,,92,92,92,,92,92,,,,,92,92,,,92,,,92,92,,,,,93,93,92,,93,93',
371
- ',93,92,,,,92,92,,92,92,,,,92,92,92,92,93,,92,,,,93,,93,,93,93,,93,93',
372
- '93,,93,93,,,,,93,93,,,93,,,93,93,,,,,94,94,93,,94,94,,94,93,,,,93,93',
373
- ',93,93,,,,93,93,93,93,94,,93,,,,94,,94,,94,94,,94,94,94,,94,94,,,,,94',
374
- '94,,,94,,,94,94,,,,,95,95,94,,95,95,,95,94,,,,94,94,,94,94,,,,94,94',
375
- '94,94,95,,94,,,,95,,95,,95,95,,95,95,95,,95,95,,,,,95,95,,,95,,,95,95',
376
- ',,,,96,96,95,,96,96,,96,95,,,,95,95,,95,95,,,,95,95,95,95,96,,95,,,',
377
- '96,,96,,96,96,,96,96,96,,96,96,,,,,96,96,,,96,,,96,96,,,,,97,97,96,',
378
- '97,97,,97,96,,,,96,96,,96,96,,,,96,96,96,96,97,,96,,,,97,,97,,97,97',
379
- ',97,97,97,,97,97,,,,,97,97,,,97,,,97,97,,,,,98,98,97,,98,98,,98,97,',
380
- ',,97,97,,97,97,,,,97,97,97,97,98,,97,,,,98,,98,,98,98,,98,98,98,,98',
381
- '98,,,,,98,98,,,98,,,98,98,,,,,99,99,98,,99,99,,99,98,,,,98,98,,98,98',
382
- ',,,98,98,98,98,99,,98,,,,99,,99,,99,99,,99,99,99,,99,99,,,,,99,99,,',
383
- '99,,,99,99,,,,,100,100,99,,100,100,,100,99,,,,99,99,,99,99,,,,99,99',
384
- '99,99,100,,99,,,,100,,100,,100,100,,100,100,100,,100,100,,,,,100,100',
385
- ',,100,,,100,100,,,,,101,101,100,,101,101,,101,100,,,100,100,100,,100',
386
- '100,,,,100,100,100,100,101,101,100,,,,101,,101,,101,101,,101,101,101',
387
- ',101,101,101,101,,,101,101,,,101,,,101,101,,,,,337,337,101,,337,337',
388
- ',337,101,,,,101,101,,101,101,,,,101,101,101,101,337,,101,,,,337,,337',
389
- ',337,337,,337,337,337,,337,337,337,337,,,337,337,,,337,,,337,337,,,',
390
- ',331,331,337,,331,331,,331,337,,,,337,337,,337,337,,,,337,337,337,337',
391
- '331,,337,,,,331,,331,,331,331,,331,331,331,,331,331,331,331,,,331,331',
392
- ',,331,,,331,331,,,,,104,104,331,,104,104,,104,331,,,,331,331,,331,331',
393
- ',,,331,331,331,331,104,,331,,,,104,,104,,104,104,,104,104,104,,104,104',
394
- ',,,,104,104,,,104,,,104,104,,,,,105,105,104,,105,105,,105,104,,,,104',
395
- '104,,104,104,,,,104,104,104,104,105,,104,,,,105,,105,,105,105,,105,105',
396
- '105,,105,105,,,,,105,105,,,105,,,105,105,,,,,,,105,,,,,,105,,,,105,105',
397
- ',105,105,,,,105,105,105,105,329,329,105,,329,329,,329,329,,,,,,,,,,',
398
- ',,,,,329,,,,,,329,,329,,329,329,,329,329,329,,329,329,,,,,329,329,,',
399
- '329,,,329,329,,,,,322,322,329,,322,322,,322,329,,,,329,329,,329,329',
400
- ',,,329,329,329,329,322,,329,,,,322,,322,,322,322,,322,322,322,,322,322',
401
- '322,322,,,322,322,,,322,,,322,322,,,,,108,108,322,,108,108,,108,322',
402
- ',,,322,322,,322,322,,,,322,322,322,322,108,,322,,,,108,,108,,108,108',
403
- ',108,108,108,,108,108,,,,,108,108,,,108,,,108,108,,,,,321,321,108,,321',
404
- '321,,321,108,,,,108,108,,108,108,,,,108,108,108,108,321,,108,,,,321',
405
- ',321,,321,321,,321,321,321,,321,321,,,,,321,321,,,321,,,321,321,,,,',
406
- '318,318,321,,318,318,,318,321,,,,321,321,,321,321,,,,321,321,321,321',
407
- '318,,321,,,,318,,318,,318,318,,318,318,318,,318,318,,,,,318,318,,,318',
408
- ',,318,318,,,,,307,307,318,,307,307,,307,318,,,,318,318,,318,318,,,,318',
409
- '318,318,318,307,,318,,,,307,,307,,307,307,,307,307,307,,307,307,,,,',
410
- '307,307,,,307,,,307,307,,,,,284,284,307,,284,284,,284,307,,,,307,307',
411
- ',307,307,,,,307,307,307,307,284,,307,,,,284,,284,,284,284,,284,284,284',
412
- ',284,284,,,,,284,284,,,284,,,284,284,,,,,283,283,284,,283,283,,283,284',
413
- ',,,284,284,,284,284,,,,284,284,284,284,283,,284,,,,283,,283,,283,283',
414
- ',283,283,283,,283,283,,,,,283,283,,,283,,,283,283,,,,,281,281,283,,281',
415
- '281,,281,283,,,,283,283,,283,283,,,,283,283,283,283,281,,283,,,,281',
416
- ',281,,281,281,,281,281,281,,281,281,,,,,281,281,,,281,,,281,281,,,,',
417
- '280,280,281,,280,280,,280,281,,,,281,281,,281,281,,,,281,281,281,281',
418
- '280,,281,,,,280,,280,,280,280,,280,280,280,,280,280,,,,,280,280,,,280',
419
- ',,280,280,,,,,279,279,280,,279,279,,279,280,,,,280,280,,280,280,,,,280',
420
- '280,280,280,279,,280,,,,279,,279,,279,279,,279,279,279,,279,279,,,,',
421
- '279,279,,,279,,,279,279,,,,,123,123,279,,123,123,,123,279,,,,279,279',
422
- ',279,279,,,,279,279,279,279,123,123,279,,,,123,,123,,123,123,,123,123',
423
- '123,,123,123,123,123,,,123,123,,,123,,,123,123,,,,,,,123,,,,,,123,,',
424
- ',123,123,,123,123,,,,123,123,123,123,232,232,123,,232,232,,232,232,',
425
- ',,,,,,,,,,,,,,232,334,334,,,334,232,,232,,232,232,,232,232,232,,232',
426
- '232,232,232,,,232,232,,,232,,,232,232,,,,,,,232,,334,,,334,232,,,,232',
427
- '232,,232,232,,,,232,232,232,232,246,246,232,334,246,246,,246,246,,,',
428
- ',334,334,,,,,,,,,,246,47,47,,,47,246,,246,,246,246,,246,246,246,,246',
429
- '246,246,246,,,246,246,,,246,,,246,246,,,,,,,246,,47,,,47,246,,,,246',
430
- '246,,246,246,,,,246,246,246,246,247,247,246,47,247,247,,247,247,,,,',
431
- '47,47,,,,,,,,,,247,,,,,,247,,247,,247,247,,247,247,247,,247,247,247',
432
- '247,,,247,247,,,247,,,247,247,,,,,264,264,247,,264,264,,264,247,,,,247',
433
- '247,,247,247,,,,247,247,247,247,264,,247,,,,264,,264,,264,264,,264,264',
434
- '264,,264,264,264,264,,,264,264,,,264,,,264,264,,,,,259,259,264,,259',
435
- '259,,259,264,,,,264,264,,264,264,,,,264,264,264,264,259,,264,,,,259',
436
- ',259,,259,259,,259,259,259,,259,259,259,259,,,259,259,,,259,,,259,259',
437
- ',,,,,,259,,,,,,259,,,,259,259,,259,259,,,,259,259,259,259,258,258,259',
438
- ',258,258,,258,258,,,,,,,,,,,,,,,,258,,,,,,258,,258,,258,258,,258,258',
439
- '258,,258,258,258,258,,,258,258,,,258,,,258,258,,,,,248,248,258,,248',
440
- '248,,248,258,,,,258,258,,258,258,,,,258,258,258,258,248,,258,,,,248',
441
- ',248,,248,248,,248,248,248,,248,248,,,,,248,248,,,248,,,248,248,,,,',
442
- '254,254,248,,254,254,,254,248,,,,248,248,,248,248,,,,248,248,248,248',
443
- '254,,248,,,,254,,254,,254,254,,254,254,254,,254,254,254,254,,,254,254',
444
- ',,254,,,254,254,,,,,,,254,,,,,,254,,,,254,254,,254,254,127,,127,254',
445
- '254,254,254,,,254,,,127,127,127,,127,,127,127,,127,127,127,127,,181',
446
- '181,,,181,,,,,,,,,,127,,,,127,127,,,127,127,127,127,127,127,,127,127',
447
- '126,,126,,,127,,,181,,,181,126,126,126,,126,,126,126,,126,126,126,126',
448
- ',127,,,,,181,,,,,,,,,126,181,181,,126,126,,,126,126,126,126,126,126',
449
- ',126,126,124,,124,,,126,,,,,,,124,124,124,,124,,124,124,,124,124,124',
450
- '124,,126,,,,,,,,,,,,,,124,,,,124,124,,,124,124,124,124,124,124,225,124',
451
- '124,,,,,,124,,,,225,225,225,225,225,200,225,225,,225,225,225,225,,,',
452
- ',124,,200,,200,,200,200,,,,225,,,,225,225,,220,225,225,225,225,225,225',
453
- ',225,225,200,,220,220,220,225,220,,220,220,,220,220,220,220,200,200',
454
- ',,,,,200,,,,225,,,,220,,,,220,220,,350,220,220,220,220,220,220,,220',
455
- '220,,,350,350,350,220,350,,350,350,,350,350,350,350,,,,,,,,,,,,220,',
456
- ',,350,,,,350,350,,351,350,350,350,350,350,350,,350,350,,,351,351,351',
457
- '350,351,,351,351,,351,351,351,351,,,,,,,,,,,,350,,,,351,,,,351,351,',
458
- '155,351,351,351,351,351,351,,351,351,,,155,155,155,351,155,,155,155',
459
- ',155,155,155,155,,,,,,,,,,,,351,,,,155,,,,155,155,,352,155,155,155,155',
460
- '155,155,,155,155,,,352,352,352,155,352,,352,352,,352,352,352,352,,155',
461
- '155,,,,,,,,,155,,,,352,,,,352,352,,,352,352,352,352,352,352,212,352',
462
- '352,,,212,,,352,,,,212,212,212,,212,199,212,212,,212,212,212,212,,,',
463
- ',352,,199,,199,,199,199,,,,212,,,,212,212,,211,212,212,212,212,212,212',
464
- ',212,212,199,,211,211,211,212,211,,211,211,,211,211,211,211,199,199',
465
- ',,,,,199,,,,212,,,,211,,,,,211,,210,211,211,211,211,211,211,,211,211',
466
- ',,210,210,210,211,210,,210,210,,210,210,210,210,209,,,,,,,,,,,211,,209',
467
- '209,210,209,,209,209,208,209,,210,210,210,210,210,210,,210,210,,208',
468
- '208,,208,210,208,208,209,208,,,,,,,209,209,209,209,209,209,,209,209',
469
- ',210,,208,,209,,,,,,208,208,208,208,208,208,167,208,208,,,,,,208,209',
470
- ',,167,167,167,167,167,207,167,167,,167,167,167,167,,,,,208,207,207,',
471
- '207,,207,207,,207,,167,,,,167,167,,,167,167,167,167,167,167,,167,167',
472
- '207,,,,,167,,,207,207,207,207,207,207,,207,207,353,,,,,207,,,,167,,',
473
- '353,353,353,,353,206,353,353,,353,353,353,353,,207,,,,206,206,,206,',
474
- '206,206,,206,,353,,,,353,353,,,353,353,353,353,353,353,,353,353,206',
475
- ',,,,353,,,206,206,206,206,206,206,205,206,206,,,,,,206,,,,353,,205,',
476
- '205,204,205,205,,,,,,,,,,206,,204,,204,,204,204,,,,205,,,,,,,,205,205',
477
- '205,205,205,205,,205,205,204,,,,,205,,,204,204,204,204,204,204,,204',
478
- '204,354,,,,,204,,,,205,,,354,354,354,,354,201,354,354,,354,354,354,354',
479
- ',204,,,,,201,,201,,201,201,,,,354,,,,354,354,,370,354,354,354,354,354',
480
- '354,,354,354,201,,370,370,370,354,370,,370,370,,370,370,370,370,201',
481
- '201,,,,,,201,,,,354,,,,370,,,,370,370,,9,370,370,370,370,370,370,,370',
482
- '370,,,9,9,9,370,9,,9,9,,9,9,9,9,,,,,,,,,,,,370,,,,9,,,,9,9,,203,9,9',
483
- '9,9,9,9,,9,9,,,,,203,9,203,,203,203,,,,202,,,,,,,,,,,,,9,202,,202,203',
484
- '202,202,,,,,,203,203,203,203,,,,203,203,,,,,,203,202,,,,,198,,,202,202',
485
- '202,202,,,,202,202,,,198,203,198,202,198,198,,,,192,,,,,,,,,,,,192,192',
486
- '192,202,192,198,192,192,,192,192,192,192,,,198,198,,,,198,198,,,,,,198',
487
- '192,,,,192,192,,197,192,192,192,192,192,192,,192,192,,,,198,197,192',
488
- '197,,197,197,,,308,308,308,308,,308,308,308,,308,,308,308,,192,,,,197',
489
- '308,308,308,,,,308,,,197,197,,,,197,197,,,308,308,,197,,,,,,,,,,308',
490
- '308,308,308,,,,276,276,276,276,197,276,276,276,,276,,276,276,,,,,,,276',
491
- '276,276,,,,276,,,,,,,,,,,,276,276,,,,,,,,,,,,276,276,276,276,278,278',
492
- '278,278,,278,278,278,,278,,278,278,,,,,,,278,278,278,,,,278,,,,,,,,',
493
- ',,,278,278,,,,,,,,,,,,278,278,278,278,219,219,219,219,,219,219,219,',
494
- '219,,219,219,,,,,,,219,219,219,,,,219,,,,,,,,,,,,219,219,,,,,,,,,,,',
495
- '219,219,219,219' ]
496
- racc_action_check = arr = ::Array.new(6830, 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)
497
655
  idx = 0
498
656
  clist.each do |str|
499
657
  str.split(',', -1).each do |i|
@@ -503,452 +661,529 @@ clist = [
503
661
  end
504
662
 
505
663
  racc_action_pointer = [
506
- -2, 358, nil, nil, 118, 330, nil, 173, 332, 6397,
507
- 466, 526, 237, nil, nil, 670, 730, 790, 850, 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,
508
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,
509
699
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
510
- nil, 245, 283, 1030, 1090, 1150, 9, 4979, 82, nil,
511
- nil, nil, nil, 1390, 1450, 1534, nil, nil, nil, nil,
512
- nil, 1594, nil, 204, 206, nil, 1798, nil, nil, 276,
513
- 1918, 260, 2038, 2098, 2158, 2218, 2278, 2338, 2398, 2458,
514
- 2518, 2602, 2662, 2722, 2782, 2842, 2902, 2962, 3022, 3082,
515
- 3142, 3202, 3262, 3322, 3382, 3442, 3502, 3562, 3622, 3682,
516
- 3742, 3802, 216, 240, 3982, 4042, 236, 211, 4246, 187,
517
- nil, nil, nil, nil, nil, 2600, 238, 1538, 1742, 118,
518
- nil, 129, 264, 4786, 5548, nil, 5491, 5434, 63, 66,
519
- nil, 36, nil, nil, nil, nil, nil, nil, -14, nil,
520
- 117, nil, 140, nil, 90, nil, nil, 197, nil, 144,
521
- nil, nil, 170, 1978, 80, 5790, 1738, nil, 270, nil,
522
- nil, nil, nil, 283, 301, 305, 320, 6084, 329, 1654,
523
- -9, 2, 5, 1330, 970, 406, nil, nil, 9, 188,
524
- 128, 5465, 210, 24, -1, -2, nil, nil, nil, nil,
525
- nil, nil, 6535, 83, 614, 2, 350, 6582, 6512, 5908,
526
- 5619, 6320, 6467, 6444, 6246, 6229, 6175, 6101, 6030, 6010,
527
- 5985, 5938, 5891, nil, nil, 1858, 268, 196, nil, 6744,
528
- 5649, 206, nil, 212, 188, 5602, nil, 173, nil, 268,
529
- nil, nil, 4870, nil, 186, nil, nil, nil, nil, nil,
530
- 181, 150, -28, 149, -11, nil, 4954, 5038, 5302, 109,
531
- 72, 287, -8, -3, 5362, 11, 32, nil, 5242, 5158,
532
- nil, nil, nil, nil, 5098, nil, nil, nil, nil, 80,
533
- nil, nil, nil, nil, 92, 96, 6636, 103, 6690, 4726,
534
- 4666, 4606, nil, 4546, 4486, 153, nil, 143, nil, 165,
535
- nil, 167, nil, nil, nil, nil, nil, nil, nil, nil,
536
- nil, nil, nil, nil, nil, nil, 173, 4426, 6579, 189,
537
- nil, 68, nil, 192, 197, nil, 137, 90, 4366, nil,
538
- nil, 4306, 4186, nil, 216, -15, 222, 200, 0, 4126,
539
- nil, 3922, 241, nil, 4895, nil, nil, 3862, nil, nil,
540
- nil, nil, nil, nil, nil, 187, -11, 257, nil, nil,
541
- 5696, 5743, 5837, 6158, 6303, 272, 1270, 213, 275, nil,
542
- nil, 278, 1210, nil, nil, nil, 270, nil, nil, nil,
543
- 6350, 18, 52, nil, 910, 311, 289, nil, 314, 315,
544
- nil, nil, 317, nil, nil, 610, nil, 320, nil, nil,
545
- 323, 292, nil, nil, nil, nil, nil, 328, nil, nil,
546
- nil, nil, 346, nil, 262, 178, nil, 344, nil, nil,
547
- nil, 58, nil, 349, nil, 350, nil, 353, nil, nil,
548
- nil, 322, 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 ]
549
716
 
550
717
  racc_action_default = [
551
- -3, -244, -1, -2, -4, -5, -8, -10, -16, -21,
552
- -244, -244, -244, -33, -34, -244, -244, -244, -244, -61,
553
- -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,
554
721
  -72, -73, -74, -75, -76, -77, -78, -79, -80, -81,
555
- -82, -87, -91, -244, -244, -244, -244, -244, -244, -178,
556
- -179, -180, -181, -244, -244, -244, -192, -193, -194, -195,
557
- -196, -244, -198, -244, -211, -214, -244, -219, -220, -244,
558
- -244, -7, -244, -244, -244, -244, -244, -244, -244, -244,
559
- -127, -244, -244, -244, -244, -244, -244, -244, -244, -244,
560
- -244, -244, -244, -244, -244, -244, -244, -244, -244, -244,
561
- -244, -244, -244, -122, -243, -243, -22, -23, -244, -243,
562
- -137, -159, -160, -161, -162, -46, -244, -47, -54, -244,
563
- -88, -244, -244, -244, -244, -98, -244, -244, -243, -221,
564
- -146, -148, -149, -150, -151, -152, -154, -155, -243, -14,
565
- -221, -183, -221, -185, -244, -188, -189, -244, -197, -244,
566
- -202, -205, -244, -209, -244, -244, -244, 426, -6, -9,
567
- -11, -12, -13, -17, -18, -19, -20, -244, -221, -244,
568
- -80, -81, -82, -232, -238, -226, -128, -131, -244, -229,
569
- -227, -235, -241, -179, -180, -181, -225, -230, -231, -233,
570
- -234, -236, -59, -244, -36, -37, -38, -39, -40, -41,
571
- -42, -43, -44, -45, -48, -49, -50, -51, -52, -53,
572
- -55, -56, -244, -57, -116, -244, -221, -84, -92, -127,
573
- -126, -244, -125, -244, -223, -244, -28, -243, -163, -244,
574
- -58, -93, -244, -96, -221, -166, -168, -169, -170, -171,
575
- -173, -244, -244, -176, -244, -90, -244, -244, -244, -244,
576
- -243, -222, -244, -244, -222, -244, -244, -186, -244, -244,
577
- -199, -200, -201, -203, -244, -206, -207, -208, -210, -221,
578
- -212, -215, -217, -218, -8, -244, -127, -244, -222, -244,
579
- -244, -244, -35, -244, -244, -221, -118, -244, -86, -221,
580
- -130, -244, -226, -227, -228, -229, -232, -235, -237, -238,
581
- -239, -240, -241, -242, -123, -124, -244, -224, -127, -244,
582
- -140, -244, -164, -221, -244, -95, -244, -222, -244, -174,
583
- -175, -244, -244, -89, -244, -101, -244, -107, -244, -244,
584
- -111, -243, -244, -156, -244, -147, -153, -243, -15, -182,
585
- -184, -187, -190, -191, -204, -244, -244, -221, -26, -129,
586
- -134, -132, -133, -60, -120, -244, -222, -83, -244, -25,
587
- -29, -221, -243, -141, -142, -143, -244, -94, -97, -167,
588
- -172, -244, -101, -100, -244, -244, -107, -106, -244, -244,
589
- -110, -112, -244, -138, -139, -244, -157, -244, -213, -216,
590
- -244, -30, -117, -119, -85, -121, -27, -244, -165, -177,
591
- -99, -102, -244, -105, -244, -243, -135, -244, -145, -158,
592
- -24, -31, -136, -244, -104, -244, -109, -244, -114, -115,
593
- -144, -223, -103, -108, -113, -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 ]
594
770
 
595
771
  racc_goto_table = [
596
- 2, 115, 117, 118, 120, 224, 214, 132, 134, 168,
597
- 193, 128, 148, 138, 377, 243, 222, 222, 271, 306,
598
- 330, 335, 234, 250, 227, 417, 71, 221, 223, 124,
599
- 126, 127, 329, 285, 255, 401, 256, 349, 231, 140,
600
- 142, 373, 213, 249, 360, 309, 363, 243, 332, 390,
601
- 336, 369, 155, 253, 269, 320, 319, 106, 107, 342,
602
- 119, 265, 277, 403, 266, 3, 167, 192, 194, 195,
603
- 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
604
- 206, 207, 208, 209, 210, 211, 212, 216, 400, 263,
605
- 220, 220, 158, 264, 225, 139, 139, 147, 262, 382,
606
- 151, 381, 153, 150, 386, 387, 267, 1, nil, 244,
607
- 287, nil, nil, nil, 159, 160, 161, 162, nil, nil,
608
- nil, 286, 243, 163, 164, 165, 166, nil, 316, 313,
609
- 397, nil, nil, nil, nil, nil, nil, nil, nil, 310,
610
- nil, 132, 134, 139, 128, nil, nil, 138, 289, nil,
611
- nil, nil, nil, 268, nil, 117, 275, nil, nil, 124,
612
- 126, 127, 333, 345, nil, 139, nil, nil, nil, nil,
613
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 355,
614
- 288, nil, nil, 358, nil, nil, nil, nil, nil, nil,
615
- nil, nil, nil, nil, nil, nil, nil, nil, 274, nil,
616
- nil, 212, nil, nil, nil, 347, nil, 366, nil, 389,
617
- 243, 132, 134, nil, nil, 344, 425, nil, nil, 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,
618
813
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
619
- nil, nil, 314, nil, 192, nil, nil, 361, nil, nil,
620
- nil, 391, nil, 384, nil, nil, 324, 326, nil, 384,
621
- 371, nil, nil, nil, nil, 396, nil, nil, nil, nil,
622
- nil, nil, 393, nil, nil, 350, 351, 352, nil, 353,
623
- 354, nil, nil, nil, 384, nil, 364, 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
- nil, nil, nil, 225, 132, 134, 338, nil, nil, nil,
626
- 147, 343, nil, nil, 370, nil, 150, 192, 421, nil,
627
- nil, nil, nil, nil, nil, 192, nil, 418, nil, nil,
628
- 394, nil, nil, nil, nil, nil, nil, nil, nil, nil,
629
817
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
630
- nil, nil, 212, nil, nil, nil, nil, nil, nil, nil,
631
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
632
- 124, nil, nil, nil, 338, nil, nil, nil, nil, nil,
633
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
634
- nil, nil, nil, nil, nil, 407, nil, nil, nil, nil,
635
- nil, nil, nil, nil, nil, nil, nil, 225, nil, nil,
636
- nil, nil, 413, nil, 415, 419 ]
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 ]
637
821
 
638
822
  racc_goto_check = [
639
- 2, 10, 10, 10, 38, 13, 51, 36, 35, 11,
640
- 19, 58, 81, 58, 46, 37, 50, 50, 89, 14,
641
- 48, 66, 43, 15, 59, 49, 5, 54, 54, 10,
642
- 10, 10, 47, 52, 15, 44, 15, 55, 42, 8,
643
- 8, 45, 20, 59, 16, 62, 63, 37, 65, 12,
644
- 68, 69, 10, 59, 43, 70, 72, 9, 9, 76,
645
- 6, 77, 15, 46, 78, 3, 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,
646
831
  10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
647
- 10, 10, 10, 10, 10, 10, 10, 8, 45, 82,
648
- 10, 10, 5, 83, 10, 6, 6, 6, 85, 60,
649
- 86, 48, 87, 6, 66, 60, 88, 1, nil, 8,
650
- 15, nil, nil, nil, 6, 6, 6, 6, nil, nil,
651
- nil, 51, 37, 9, 9, 9, 9, nil, 15, 43,
652
- 60, nil, nil, nil, nil, nil, nil, nil, nil, 50,
653
- nil, 36, 35, 6, 58, nil, nil, 58, 11, nil,
654
- nil, nil, nil, 2, nil, 10, 2, nil, nil, 10,
655
- 10, 10, 50, 15, nil, 6, nil, nil, nil, nil,
656
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 15,
657
- 38, nil, nil, 15, nil, nil, nil, nil, nil, nil,
658
- nil, nil, nil, nil, nil, nil, nil, nil, 6, nil,
659
- nil, 10, nil, nil, nil, 11, nil, 15, nil, 89,
660
- 37, 36, 35, nil, nil, 81, 14, nil, nil, nil,
661
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
662
- nil, nil, 2, nil, 10, nil, nil, 11, nil, nil,
663
- nil, 15, nil, 50, nil, nil, 2, 2, nil, 50,
664
- 19, nil, nil, nil, nil, 15, nil, nil, nil, nil,
665
- nil, nil, 51, nil, nil, 10, 10, 10, nil, 10,
666
- 10, nil, nil, nil, 50, nil, 58, nil, nil, nil,
667
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
668
- nil, nil, nil, 10, 36, 35, 6, nil, nil, nil,
669
- 6, 6, nil, nil, 10, nil, 6, 10, 13, nil,
670
- nil, nil, nil, nil, nil, 10, nil, 50, nil, nil,
671
- 38, nil, nil, nil, nil, nil, nil, nil, nil, 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,
672
864
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
673
- nil, nil, 10, nil, nil, nil, nil, 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,
674
867
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
675
- 10, nil, nil, nil, 6, nil, nil, nil, nil, nil,
676
868
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
677
- nil, nil, nil, nil, nil, 2, nil, nil, nil, nil,
869
+ nil, 2, nil, nil, nil, nil, nil, nil, nil, nil,
678
870
  nil, nil, nil, nil, nil, nil, nil, 10, nil, nil,
679
- nil, nil, 2, nil, 2, 2 ]
871
+ nil, 2, nil, 2, 2 ]
680
872
 
681
873
  racc_goto_pointer = [
682
- nil, 107, 0, 65, nil, 22, 42, nil, -14, 47,
683
- -14, -71, -298, -103, -205, -106, -263, nil, nil, -71,
684
- -58, nil, nil, nil, nil, nil, nil, nil, nil, nil,
685
- nil, nil, nil, nil, nil, -39, -40, -107, -37, nil,
686
- nil, nil, -83, -100, -339, -284, -313, -216, -228, -380,
687
- -88, -94, -182, nil, -77, -241, nil, nil, -35, -85,
688
- -232, nil, -182, -265, nil, -202, -230, nil, -202, -266,
689
- -187, nil, -185, nil, nil, nil, -199, -91, -88, nil,
690
- nil, -49, -60, -56, nil, -51, 37, 38, -47, -137 ]
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 ]
691
885
 
692
886
  racc_goto_default = [
693
- nil, nil, 383, nil, 4, 5, 6, 7, nil, 8,
694
- 9, nil, nil, nil, nil, nil, 226, 13, 14, 328,
695
- nil, 19, 20, 21, 22, 23, 24, 25, 26, 27,
696
- 28, 29, 30, 31, 32, 33, 34, 35, nil, 41,
697
- 42, 121, nil, nil, 125, nil, nil, nil, nil, nil,
698
- 228, nil, nil, 103, nil, 176, 178, 177, 110, nil,
699
- nil, 109, nil, nil, 129, nil, 130, 131, 135, 235,
700
- 236, 237, 238, 239, 242, 144, 146, 56, 57, 58,
701
- 61, nil, nil, nil, 149, 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 ]
702
898
 
703
899
  racc_reduce_table = [
704
900
  0, 0, :racc_error,
705
- 1, 92, :_reduce_1,
706
- 1, 92, :_reduce_2,
707
- 0, 92, :_reduce_3,
708
- 1, 93, :_reduce_4,
709
- 1, 95, :_reduce_5,
710
- 3, 95, :_reduce_6,
711
- 2, 95, :_reduce_7,
712
- 1, 96, :_reduce_8,
713
- 3, 96, :_reduce_9,
714
- 1, 97, :_reduce_none,
715
- 3, 97, :_reduce_11,
716
- 3, 97, :_reduce_12,
717
- 3, 97, :_reduce_13,
718
- 1, 99, :_reduce_14,
719
- 3, 99, :_reduce_15,
720
- 1, 98, :_reduce_none,
721
- 3, 98, :_reduce_17,
722
- 3, 98, :_reduce_18,
723
- 3, 98, :_reduce_19,
724
- 3, 98, :_reduce_20,
725
- 1, 100, :_reduce_none,
726
- 2, 100, :_reduce_22,
727
- 2, 100, :_reduce_23,
728
- 7, 100, :_reduce_24,
729
- 5, 100, :_reduce_25,
730
- 5, 100, :_reduce_26,
731
- 4, 107, :_reduce_27,
732
- 1, 104, :_reduce_28,
733
- 3, 104, :_reduce_29,
734
- 1, 103, :_reduce_30,
735
- 2, 103, :_reduce_31,
736
- 4, 103, :_reduce_32,
737
- 1, 101, :_reduce_none,
738
- 1, 101, :_reduce_none,
739
- 4, 101, :_reduce_35,
740
- 3, 101, :_reduce_36,
741
- 3, 101, :_reduce_37,
742
- 3, 101, :_reduce_38,
743
- 3, 101, :_reduce_39,
744
- 3, 101, :_reduce_40,
745
- 3, 101, :_reduce_41,
746
- 3, 101, :_reduce_42,
747
- 3, 101, :_reduce_43,
748
- 3, 101, :_reduce_44,
749
- 3, 101, :_reduce_45,
750
- 2, 101, :_reduce_46,
751
- 2, 101, :_reduce_47,
752
- 3, 101, :_reduce_48,
753
- 3, 101, :_reduce_49,
754
- 3, 101, :_reduce_50,
755
- 3, 101, :_reduce_51,
756
- 3, 101, :_reduce_52,
757
- 3, 101, :_reduce_53,
758
- 2, 101, :_reduce_54,
759
- 3, 101, :_reduce_55,
760
- 3, 101, :_reduce_56,
761
- 3, 101, :_reduce_57,
762
- 3, 101, :_reduce_58,
763
- 1, 110, :_reduce_59,
764
- 3, 110, :_reduce_60,
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_none,
774
- 1, 108, :_reduce_none,
775
- 1, 108, :_reduce_none,
776
- 1, 108, :_reduce_none,
777
- 1, 108, :_reduce_none,
778
- 1, 108, :_reduce_none,
779
- 1, 108, :_reduce_none,
780
- 1, 108, :_reduce_none,
781
- 1, 108, :_reduce_none,
782
- 1, 108, :_reduce_78,
783
- 1, 108, :_reduce_79,
784
- 1, 108, :_reduce_80,
785
- 1, 108, :_reduce_81,
786
- 1, 108, :_reduce_82,
787
- 5, 109, :_reduce_83,
788
- 3, 109, :_reduce_84,
789
- 6, 109, :_reduce_85,
790
- 4, 109, :_reduce_86,
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,
986
+ 1, 113, :_reduce_86,
791
987
  1, 113, :_reduce_87,
792
- 2, 113, :_reduce_88,
793
- 4, 130, :_reduce_89,
794
- 3, 130, :_reduce_90,
795
- 1, 130, :_reduce_91,
796
- 3, 131, :_reduce_92,
797
- 2, 129, :_reduce_93,
798
- 3, 133, :_reduce_94,
799
- 2, 133, :_reduce_95,
800
- 2, 132, :_reduce_96,
801
- 4, 132, :_reduce_97,
802
- 2, 116, :_reduce_98,
803
- 5, 135, :_reduce_99,
804
- 4, 135, :_reduce_100,
805
- 0, 136, :_reduce_none,
806
- 2, 136, :_reduce_102,
807
- 4, 136, :_reduce_103,
808
- 3, 136, :_reduce_104,
809
- 6, 117, :_reduce_105,
810
- 5, 117, :_reduce_106,
811
- 0, 137, :_reduce_none,
812
- 4, 137, :_reduce_108,
813
- 3, 137, :_reduce_109,
814
- 5, 115, :_reduce_110,
815
- 1, 138, :_reduce_111,
816
- 2, 138, :_reduce_112,
817
- 5, 139, :_reduce_113,
818
- 1, 140, :_reduce_none,
819
- 1, 140, :_reduce_none,
820
- 1, 111, :_reduce_none,
821
- 4, 111, :_reduce_117,
822
- 1, 143, :_reduce_118,
823
- 3, 143, :_reduce_119,
824
- 3, 142, :_reduce_120,
825
- 6, 114, :_reduce_121,
826
- 2, 114, :_reduce_122,
827
- 3, 144, :_reduce_123,
828
- 3, 144, :_reduce_124,
829
- 1, 145, :_reduce_none,
830
- 1, 145, :_reduce_none,
831
- 0, 102, :_reduce_127,
832
- 1, 102, :_reduce_128,
833
- 3, 102, :_reduce_129,
834
- 1, 147, :_reduce_none,
835
- 1, 147, :_reduce_none,
836
- 3, 146, :_reduce_132,
837
- 3, 146, :_reduce_133,
838
- 3, 146, :_reduce_134,
839
- 6, 118, :_reduce_135,
840
- 7, 119, :_reduce_136,
841
- 1, 152, :_reduce_137,
842
- 1, 151, :_reduce_none,
843
- 1, 151, :_reduce_none,
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,
844
1024
  1, 153, :_reduce_none,
845
- 2, 153, :_reduce_141,
846
- 1, 154, :_reduce_none,
847
- 1, 154, :_reduce_none,
848
- 7, 120, :_reduce_144,
849
- 6, 120, :_reduce_145,
850
- 1, 155, :_reduce_146,
851
- 3, 155, :_reduce_147,
852
- 1, 157, :_reduce_none,
853
- 1, 157, :_reduce_none,
854
- 1, 157, :_reduce_150,
855
- 1, 157, :_reduce_none,
856
- 1, 158, :_reduce_152,
857
- 3, 158, :_reduce_153,
858
- 1, 159, :_reduce_none,
859
- 1, 159, :_reduce_none,
860
- 1, 156, :_reduce_none,
861
- 2, 156, :_reduce_157,
862
- 6, 122, :_reduce_158,
863
- 1, 149, :_reduce_none,
864
- 1, 149, :_reduce_none,
865
- 1, 149, :_reduce_none,
866
- 1, 149, :_reduce_162,
867
- 1, 150, :_reduce_163,
868
- 2, 150, :_reduce_164,
869
- 4, 150, :_reduce_165,
870
- 1, 134, :_reduce_166,
871
- 3, 134, :_reduce_167,
1025
+ 1, 153, :_reduce_none,
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,
1035
+ 1, 158, :_reduce_none,
1036
+ 1, 158, :_reduce_none,
1037
+ 0, 107, :_reduce_137,
1038
+ 1, 107, :_reduce_138,
1039
+ 3, 107, :_reduce_139,
872
1040
  1, 160, :_reduce_none,
873
1041
  1, 160, :_reduce_none,
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,
874
1160
  1, 161, :_reduce_none,
875
1161
  1, 161, :_reduce_none,
876
- 3, 163, :_reduce_172,
877
- 1, 163, :_reduce_173,
878
- 2, 164, :_reduce_174,
879
- 2, 162, :_reduce_175,
880
- 1, 165, :_reduce_176,
881
- 4, 165, :_reduce_177,
882
- 1, 112, :_reduce_178,
883
- 1, 123, :_reduce_179,
884
- 1, 123, :_reduce_180,
885
- 1, 123, :_reduce_181,
886
- 4, 124, :_reduce_182,
887
- 2, 124, :_reduce_183,
888
- 4, 124, :_reduce_184,
889
- 2, 124, :_reduce_185,
890
- 3, 125, :_reduce_186,
891
- 4, 125, :_reduce_187,
892
- 2, 125, :_reduce_188,
893
- 1, 166, :_reduce_189,
894
- 3, 166, :_reduce_190,
895
- 3, 167, :_reduce_191,
896
- 1, 127, :_reduce_none,
897
- 1, 127, :_reduce_none,
898
- 1, 127, :_reduce_none,
899
- 1, 168, :_reduce_195,
900
- 1, 168, :_reduce_196,
901
- 2, 169, :_reduce_197,
902
- 1, 171, :_reduce_198,
903
- 1, 173, :_reduce_199,
904
- 1, 174, :_reduce_200,
905
- 2, 172, :_reduce_201,
906
- 1, 175, :_reduce_202,
907
- 1, 176, :_reduce_203,
908
- 2, 176, :_reduce_204,
909
- 2, 170, :_reduce_205,
910
- 2, 177, :_reduce_206,
911
- 2, 177, :_reduce_207,
912
- 3, 94, :_reduce_208,
913
- 0, 179, :_reduce_none,
914
- 1, 179, :_reduce_none,
915
- 0, 178, :_reduce_211,
916
- 2, 178, :_reduce_212,
917
- 4, 178, :_reduce_213,
918
- 1, 121, :_reduce_214,
919
- 3, 121, :_reduce_215,
920
- 5, 121, :_reduce_216,
921
- 1, 180, :_reduce_none,
922
- 1, 180, :_reduce_none,
923
- 1, 128, :_reduce_219,
924
- 1, 126, :_reduce_220,
925
- 0, 106, :_reduce_none,
926
- 1, 106, :_reduce_222,
927
- 0, 105, :_reduce_none,
928
- 1, 105, :_reduce_none,
929
- 1, 148, :_reduce_none,
930
- 1, 148, :_reduce_none,
931
- 1, 148, :_reduce_none,
932
- 1, 148, :_reduce_none,
933
- 1, 148, :_reduce_none,
934
- 1, 148, :_reduce_none,
935
- 1, 148, :_reduce_none,
936
- 1, 148, :_reduce_none,
937
- 1, 148, :_reduce_none,
938
- 1, 148, :_reduce_none,
939
- 1, 148, :_reduce_none,
940
- 1, 148, :_reduce_none,
941
- 1, 148, :_reduce_none,
942
- 1, 148, :_reduce_none,
943
- 1, 148, :_reduce_none,
944
- 1, 148, :_reduce_none,
945
- 1, 148, :_reduce_none,
946
- 1, 148, :_reduce_none,
947
- 0, 141, :_reduce_243 ]
948
-
949
- racc_reduce_n = 244
950
-
951
- racc_shift_n = 426
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
952
1187
 
953
1188
  racc_token_table = {
954
1189
  false => 0,
@@ -977,73 +1212,78 @@ racc_token_table = {
977
1212
  :LLCOLLECT => 23,
978
1213
  :RRCOLLECT => 24,
979
1214
  :QMARK => 25,
980
- :LPAREN => 26,
981
- :RPAREN => 27,
982
- :ISEQUAL => 28,
983
- :GREATEREQUAL => 29,
984
- :GREATERTHAN => 30,
985
- :LESSTHAN => 31,
986
- :IF => 32,
987
- :ELSE => 33,
988
- :DEFINE => 34,
989
- :ELSIF => 35,
990
- :VARIABLE => 36,
991
- :CLASS => 37,
992
- :INHERITS => 38,
993
- :NODE => 39,
994
- :BOOLEAN => 40,
995
- :NAME => 41,
996
- :SEMIC => 42,
997
- :CASE => 43,
998
- :DEFAULT => 44,
999
- :AT => 45,
1000
- :ATAT => 46,
1001
- :LCOLLECT => 47,
1002
- :RCOLLECT => 48,
1003
- :CLASSREF => 49,
1004
- :NOT => 50,
1005
- :OR => 51,
1006
- :AND => 52,
1007
- :UNDEF => 53,
1008
- :PARROW => 54,
1009
- :PLUS => 55,
1010
- :MINUS => 56,
1011
- :TIMES => 57,
1012
- :DIV => 58,
1013
- :LSHIFT => 59,
1014
- :RSHIFT => 60,
1015
- :UMINUS => 61,
1016
- :MATCH => 62,
1017
- :NOMATCH => 63,
1018
- :REGEX => 64,
1019
- :IN_EDGE => 65,
1020
- :OUT_EDGE => 66,
1021
- :IN_EDGE_SUB => 67,
1022
- :OUT_EDGE_SUB => 68,
1023
- :IN => 69,
1024
- :UNLESS => 70,
1025
- :PIPE => 71,
1026
- :LAMBDA => 72,
1027
- :SELBRACE => 73,
1028
- :NUMBER => 74,
1029
- :HEREDOC => 75,
1030
- :SUBLOCATE => 76,
1031
- :RENDER_STRING => 77,
1032
- :RENDER_EXPR => 78,
1033
- :EPP_START => 79,
1034
- :EPP_END => 80,
1035
- :EPP_END_TRIM => 81,
1036
- :FUNCTION => 82,
1037
- :PRIVATE => 83,
1038
- :ATTR => 84,
1039
- :TYPE => 85,
1040
- :LOW => 86,
1041
- :HIGH => 87,
1042
- :LISTSTART => 88,
1043
- :SPLAT => 89,
1044
- :MODULO => 90 }
1045
-
1046
- 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
1047
1287
 
1048
1288
  racc_use_result_var = true
1049
1289
 
@@ -1090,6 +1330,7 @@ Racc_token_to_s_table = [
1090
1330
  "LLCOLLECT",
1091
1331
  "RRCOLLECT",
1092
1332
  "QMARK",
1333
+ "WSLPAREN",
1093
1334
  "LPAREN",
1094
1335
  "RPAREN",
1095
1336
  "ISEQUAL",
@@ -1147,9 +1388,13 @@ Racc_token_to_s_table = [
1147
1388
  "EPP_END",
1148
1389
  "EPP_END_TRIM",
1149
1390
  "FUNCTION",
1391
+ "TYPE",
1150
1392
  "PRIVATE",
1151
1393
  "ATTR",
1152
- "TYPE",
1394
+ "APPLICATION",
1395
+ "PRODUCES",
1396
+ "CONSUMES",
1397
+ "SITE",
1153
1398
  "LOW",
1154
1399
  "HIGH",
1155
1400
  "LISTSTART",
@@ -1173,9 +1418,11 @@ Racc_token_to_s_table = [
1173
1418
  "endcomma",
1174
1419
  "resource_body",
1175
1420
  "primary_expression",
1421
+ "capability_mapping",
1176
1422
  "call_function_expression",
1177
- "expressions",
1423
+ "bracketed_expression",
1178
1424
  "selector_entries",
1425
+ "expressions",
1179
1426
  "variable",
1180
1427
  "call_method_with_lambda_expression",
1181
1428
  "collection_expression",
@@ -1183,20 +1430,26 @@ Racc_token_to_s_table = [
1183
1430
  "if_expression",
1184
1431
  "unless_expression",
1185
1432
  "definition_expression",
1433
+ "application_expression",
1186
1434
  "hostclass_expression",
1187
1435
  "node_definition_expression",
1436
+ "site_definition_expression",
1188
1437
  "epp_render_expression",
1189
1438
  "function_definition",
1439
+ "type_alias",
1440
+ "type_definition",
1190
1441
  "reserved_word",
1191
1442
  "array",
1192
1443
  "hash",
1193
1444
  "regex",
1194
1445
  "quotedtext",
1195
1446
  "type",
1447
+ "call_function_start",
1196
1448
  "lambda",
1197
1449
  "call_method_expression",
1198
1450
  "named_access",
1199
1451
  "lambda_parameter_list",
1452
+ "opt_return_type",
1200
1453
  "lambda_rest",
1201
1454
  "parameters",
1202
1455
  "if_part",
@@ -1216,6 +1469,7 @@ Racc_token_to_s_table = [
1216
1469
  "classname",
1217
1470
  "parameter_list",
1218
1471
  "opt_statements",
1472
+ "capability_kw",
1219
1473
  "stacked_classname",
1220
1474
  "classparent",
1221
1475
  "classnameordefault",
@@ -1230,8 +1484,12 @@ Racc_token_to_s_table = [
1230
1484
  "regular_parameter",
1231
1485
  "splat_parameter",
1232
1486
  "parameter_type",
1487
+ "optional_statements",
1488
+ "collection_entries",
1233
1489
  "hashpairs",
1234
1490
  "hashpair",
1491
+ "collection_entry",
1492
+ "collection_entry_keyword",
1235
1493
  "string",
1236
1494
  "dq_string",
1237
1495
  "heredoc",
@@ -1243,7 +1501,6 @@ Racc_token_to_s_table = [
1243
1501
  "dqtail",
1244
1502
  "sublocated_text",
1245
1503
  "epp_parameters_list",
1246
- "optional_statements",
1247
1504
  "epp_end" ]
1248
1505
 
1249
1506
  Racc_debug_parser = false
@@ -1252,63 +1509,63 @@ Racc_debug_parser = false
1252
1509
 
1253
1510
  # reduce 0 omitted
1254
1511
 
1255
- module_eval(<<'.,.,', 'egrammar.ra', 66)
1512
+ module_eval(<<'.,.,', 'egrammar.ra', 67)
1256
1513
  def _reduce_1(val, _values, result)
1257
- result = create_program(Factory.block_or_expression(*val[0]))
1514
+ result = create_program(Factory.block_or_expression(val[0]))
1258
1515
  result
1259
1516
  end
1260
1517
  .,.,
1261
1518
 
1262
- module_eval(<<'.,.,', 'egrammar.ra', 67)
1519
+ module_eval(<<'.,.,', 'egrammar.ra', 68)
1263
1520
  def _reduce_2(val, _values, result)
1264
- result = create_program(Factory.block_or_expression(*val[0]))
1521
+ result = create_program(val[0])
1265
1522
  result
1266
1523
  end
1267
1524
  .,.,
1268
1525
 
1269
- module_eval(<<'.,.,', 'egrammar.ra', 68)
1526
+ module_eval(<<'.,.,', 'egrammar.ra', 69)
1270
1527
  def _reduce_3(val, _values, result)
1271
- result = create_empty_program()
1528
+ result = create_empty_program
1272
1529
  result
1273
1530
  end
1274
1531
  .,.,
1275
1532
 
1276
- module_eval(<<'.,.,', 'egrammar.ra', 72)
1533
+ module_eval(<<'.,.,', 'egrammar.ra', 73)
1277
1534
  def _reduce_4(val, _values, result)
1278
1535
  result = transform_calls(val[0])
1279
1536
  result
1280
1537
  end
1281
1538
  .,.,
1282
1539
 
1283
- module_eval(<<'.,.,', 'egrammar.ra', 79)
1540
+ module_eval(<<'.,.,', 'egrammar.ra', 80)
1284
1541
  def _reduce_5(val, _values, result)
1285
1542
  result = [val[0]]
1286
1543
  result
1287
1544
  end
1288
1545
  .,.,
1289
1546
 
1290
- module_eval(<<'.,.,', 'egrammar.ra', 80)
1547
+ module_eval(<<'.,.,', 'egrammar.ra', 81)
1291
1548
  def _reduce_6(val, _values, result)
1292
1549
  result = val[0].push val[2]
1293
1550
  result
1294
1551
  end
1295
1552
  .,.,
1296
1553
 
1297
- module_eval(<<'.,.,', 'egrammar.ra', 81)
1554
+ module_eval(<<'.,.,', 'egrammar.ra', 82)
1298
1555
  def _reduce_7(val, _values, result)
1299
1556
  result = val[0].push val[1]
1300
1557
  result
1301
1558
  end
1302
1559
  .,.,
1303
1560
 
1304
- module_eval(<<'.,.,', 'egrammar.ra', 88)
1561
+ module_eval(<<'.,.,', 'egrammar.ra', 89)
1305
1562
  def _reduce_8(val, _values, result)
1306
1563
  result = val[0]
1307
1564
  result
1308
1565
  end
1309
1566
  .,.,
1310
1567
 
1311
- module_eval(<<'.,.,', 'egrammar.ra', 89)
1568
+ module_eval(<<'.,.,', 'egrammar.ra', 90)
1312
1569
  def _reduce_9(val, _values, result)
1313
1570
  result = aryfy(val[0]).push(val[1]).push(val[2])
1314
1571
  result
@@ -1317,35 +1574,35 @@ module_eval(<<'.,.,', 'egrammar.ra', 89)
1317
1574
 
1318
1575
  # reduce 10 omitted
1319
1576
 
1320
- module_eval(<<'.,.,', 'egrammar.ra', 94)
1577
+ module_eval(<<'.,.,', 'egrammar.ra', 95)
1321
1578
  def _reduce_11(val, _values, result)
1322
1579
  result = val[0].set(val[2]) ; loc result, val[1]
1323
1580
  result
1324
1581
  end
1325
1582
  .,.,
1326
1583
 
1327
- module_eval(<<'.,.,', 'egrammar.ra', 95)
1584
+ module_eval(<<'.,.,', 'egrammar.ra', 96)
1328
1585
  def _reduce_12(val, _values, result)
1329
1586
  result = val[0].plus_set(val[2]) ; loc result, val[1]
1330
1587
  result
1331
1588
  end
1332
1589
  .,.,
1333
1590
 
1334
- module_eval(<<'.,.,', 'egrammar.ra', 96)
1591
+ module_eval(<<'.,.,', 'egrammar.ra', 97)
1335
1592
  def _reduce_13(val, _values, result)
1336
1593
  result = val[0].minus_set(val[2]); loc result, val[1]
1337
1594
  result
1338
1595
  end
1339
1596
  .,.,
1340
1597
 
1341
- module_eval(<<'.,.,', 'egrammar.ra', 99)
1598
+ module_eval(<<'.,.,', 'egrammar.ra', 100)
1342
1599
  def _reduce_14(val, _values, result)
1343
1600
  result = [val[0]]
1344
1601
  result
1345
1602
  end
1346
1603
  .,.,
1347
1604
 
1348
- module_eval(<<'.,.,', 'egrammar.ra', 100)
1605
+ module_eval(<<'.,.,', 'egrammar.ra', 101)
1349
1606
  def _reduce_15(val, _values, result)
1350
1607
  result = val[0].push(val[2])
1351
1608
  result
@@ -1354,28 +1611,28 @@ module_eval(<<'.,.,', 'egrammar.ra', 100)
1354
1611
 
1355
1612
  # reduce 16 omitted
1356
1613
 
1357
- module_eval(<<'.,.,', 'egrammar.ra', 104)
1614
+ module_eval(<<'.,.,', 'egrammar.ra', 105)
1358
1615
  def _reduce_17(val, _values, result)
1359
1616
  result = val[0].relop(val[1][:value], val[2]); loc result, val[1]
1360
1617
  result
1361
1618
  end
1362
1619
  .,.,
1363
1620
 
1364
- module_eval(<<'.,.,', 'egrammar.ra', 105)
1621
+ module_eval(<<'.,.,', 'egrammar.ra', 106)
1365
1622
  def _reduce_18(val, _values, result)
1366
1623
  result = val[0].relop(val[1][:value], val[2]); loc result, val[1]
1367
1624
  result
1368
1625
  end
1369
1626
  .,.,
1370
1627
 
1371
- module_eval(<<'.,.,', 'egrammar.ra', 106)
1628
+ module_eval(<<'.,.,', 'egrammar.ra', 107)
1372
1629
  def _reduce_19(val, _values, result)
1373
1630
  result = val[0].relop(val[1][:value], val[2]); loc result, val[1]
1374
1631
  result
1375
1632
  end
1376
1633
  .,.,
1377
1634
 
1378
- module_eval(<<'.,.,', 'egrammar.ra', 107)
1635
+ module_eval(<<'.,.,', 'egrammar.ra', 108)
1379
1636
  def _reduce_20(val, _values, result)
1380
1637
  result = val[0].relop(val[1][:value], val[2]); loc result, val[1]
1381
1638
  result
@@ -1384,10 +1641,10 @@ module_eval(<<'.,.,', 'egrammar.ra', 107)
1384
1641
 
1385
1642
  # reduce 21 omitted
1386
1643
 
1387
- module_eval(<<'.,.,', 'egrammar.ra', 116)
1644
+ module_eval(<<'.,.,', 'egrammar.ra', 117)
1388
1645
  def _reduce_22(val, _values, result)
1389
1646
  result = val[1]
1390
- unless Factory.set_resource_form(result, :virtual)
1647
+ unless Factory.set_resource_form(result, 'virtual')
1391
1648
  # This is equivalent to a syntax error - additional semantic restrictions apply
1392
1649
  error val[0], "Virtual (@) can only be applied to a Resource Expression"
1393
1650
  end
@@ -1398,10 +1655,10 @@ module_eval(<<'.,.,', 'egrammar.ra', 116)
1398
1655
  end
1399
1656
  .,.,
1400
1657
 
1401
- module_eval(<<'.,.,', 'egrammar.ra', 127)
1658
+ module_eval(<<'.,.,', 'egrammar.ra', 128)
1402
1659
  def _reduce_23(val, _values, result)
1403
1660
  result = val[1]
1404
- unless Factory.set_resource_form(result, :exported)
1661
+ unless Factory.set_resource_form(result, 'exported')
1405
1662
  # This is equivalent to a syntax error - additional semantic restrictions apply
1406
1663
  error val[0], "Exported (@@) can only be applied to a Resource Expression"
1407
1664
  end
@@ -1412,7 +1669,7 @@ module_eval(<<'.,.,', 'egrammar.ra', 127)
1412
1669
  end
1413
1670
  .,.,
1414
1671
 
1415
- module_eval(<<'.,.,', 'egrammar.ra', 138)
1672
+ module_eval(<<'.,.,', 'egrammar.ra', 139)
1416
1673
  def _reduce_24(val, _values, result)
1417
1674
  bodies = [Factory.RESOURCE_BODY(val[2], val[4])] + val[5]
1418
1675
  result = Factory.RESOURCE(val[0], bodies)
@@ -1422,7 +1679,7 @@ module_eval(<<'.,.,', 'egrammar.ra', 138)
1422
1679
  end
1423
1680
  .,.,
1424
1681
 
1425
- module_eval(<<'.,.,', 'egrammar.ra', 145)
1682
+ module_eval(<<'.,.,', 'egrammar.ra', 146)
1426
1683
  def _reduce_25(val, _values, result)
1427
1684
  result = Factory.RESOURCE(Factory.fqn(token_text(val[0])), val[2])
1428
1685
  loc result, val[0], val[4]
@@ -1431,7 +1688,7 @@ module_eval(<<'.,.,', 'egrammar.ra', 145)
1431
1688
  end
1432
1689
  .,.,
1433
1690
 
1434
- module_eval(<<'.,.,', 'egrammar.ra', 154)
1691
+ module_eval(<<'.,.,', 'egrammar.ra', 155)
1435
1692
  def _reduce_26(val, _values, result)
1436
1693
  result = case Factory.resource_shape(val[0])
1437
1694
  when :resource, :class
@@ -1439,7 +1696,7 @@ module_eval(<<'.,.,', 'egrammar.ra', 154)
1439
1696
  # If the attribute operations does not include +>, then the found expression
1440
1697
  # is actually a LEFT followed by LITERAL_HASH
1441
1698
  #
1442
- 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])
1443
1700
  error val[1], "Syntax error resource body without title or hash with +>"
1444
1701
  end
1445
1702
  tmp
@@ -1457,42 +1714,42 @@ module_eval(<<'.,.,', 'egrammar.ra', 154)
1457
1714
  end
1458
1715
  .,.,
1459
1716
 
1460
- module_eval(<<'.,.,', 'egrammar.ra', 176)
1717
+ module_eval(<<'.,.,', 'egrammar.ra', 177)
1461
1718
  def _reduce_27(val, _values, result)
1462
1719
  result = Factory.RESOURCE_BODY(val[0], val[2])
1463
1720
  result
1464
1721
  end
1465
1722
  .,.,
1466
1723
 
1467
- module_eval(<<'.,.,', 'egrammar.ra', 179)
1724
+ module_eval(<<'.,.,', 'egrammar.ra', 180)
1468
1725
  def _reduce_28(val, _values, result)
1469
1726
  result = [val[0]]
1470
1727
  result
1471
1728
  end
1472
1729
  .,.,
1473
1730
 
1474
- module_eval(<<'.,.,', 'egrammar.ra', 180)
1731
+ module_eval(<<'.,.,', 'egrammar.ra', 181)
1475
1732
  def _reduce_29(val, _values, result)
1476
1733
  result = val[0].push val[2]
1477
1734
  result
1478
1735
  end
1479
1736
  .,.,
1480
1737
 
1481
- module_eval(<<'.,.,', 'egrammar.ra', 186)
1738
+ module_eval(<<'.,.,', 'egrammar.ra', 187)
1482
1739
  def _reduce_30(val, _values, result)
1483
1740
  result = []
1484
1741
  result
1485
1742
  end
1486
1743
  .,.,
1487
1744
 
1488
- module_eval(<<'.,.,', 'egrammar.ra', 187)
1745
+ module_eval(<<'.,.,', 'egrammar.ra', 188)
1489
1746
  def _reduce_31(val, _values, result)
1490
1747
  result = []
1491
1748
  result
1492
1749
  end
1493
1750
  .,.,
1494
1751
 
1495
- module_eval(<<'.,.,', 'egrammar.ra', 188)
1752
+ module_eval(<<'.,.,', 'egrammar.ra', 189)
1496
1753
  def _reduce_32(val, _values, result)
1497
1754
  result = val[2]
1498
1755
  result
@@ -1503,193 +1760,198 @@ module_eval(<<'.,.,', 'egrammar.ra', 188)
1503
1760
 
1504
1761
  # reduce 34 omitted
1505
1762
 
1506
- module_eval(<<'.,.,', 'egrammar.ra', 195)
1507
- def _reduce_35(val, _values, result)
1508
- result = val[0][*val[2]] ; loc result, val[0], val[3]
1509
- result
1510
- end
1511
- .,.,
1763
+ # reduce 35 omitted
1512
1764
 
1513
- module_eval(<<'.,.,', 'egrammar.ra', 196)
1514
- def _reduce_36(val, _values, result)
1515
- result = val[0].in val[2] ; loc result, val[1]
1516
- result
1517
- end
1518
- .,.,
1765
+ # reduce 36 omitted
1519
1766
 
1520
- module_eval(<<'.,.,', 'egrammar.ra', 197)
1767
+ module_eval(<<'.,.,', 'egrammar.ra', 198)
1521
1768
  def _reduce_37(val, _values, result)
1522
- result = val[0] =~ val[2] ; loc result, val[1]
1769
+ result = val[0].in val[2] ; loc result, val[1]
1523
1770
  result
1524
1771
  end
1525
1772
  .,.,
1526
1773
 
1527
- module_eval(<<'.,.,', 'egrammar.ra', 198)
1774
+ module_eval(<<'.,.,', 'egrammar.ra', 199)
1528
1775
  def _reduce_38(val, _values, result)
1529
- result = val[0].mne val[2] ; loc result, val[1]
1776
+ result = val[0] =~ val[2] ; loc result, val[1]
1530
1777
  result
1531
1778
  end
1532
1779
  .,.,
1533
1780
 
1534
- module_eval(<<'.,.,', 'egrammar.ra', 199)
1781
+ module_eval(<<'.,.,', 'egrammar.ra', 200)
1535
1782
  def _reduce_39(val, _values, result)
1536
- result = val[0] + val[2] ; loc result, val[1]
1783
+ result = val[0].mne val[2] ; loc result, val[1]
1537
1784
  result
1538
1785
  end
1539
1786
  .,.,
1540
1787
 
1541
- module_eval(<<'.,.,', 'egrammar.ra', 200)
1788
+ module_eval(<<'.,.,', 'egrammar.ra', 201)
1542
1789
  def _reduce_40(val, _values, result)
1543
- result = val[0] - val[2] ; loc result, val[1]
1790
+ result = val[0] + val[2] ; loc result, val[1]
1544
1791
  result
1545
1792
  end
1546
1793
  .,.,
1547
1794
 
1548
- module_eval(<<'.,.,', 'egrammar.ra', 201)
1795
+ module_eval(<<'.,.,', 'egrammar.ra', 202)
1549
1796
  def _reduce_41(val, _values, result)
1550
- result = val[0] / val[2] ; loc result, val[1]
1797
+ result = val[0] - val[2] ; loc result, val[1]
1551
1798
  result
1552
1799
  end
1553
1800
  .,.,
1554
1801
 
1555
- module_eval(<<'.,.,', 'egrammar.ra', 202)
1802
+ module_eval(<<'.,.,', 'egrammar.ra', 203)
1556
1803
  def _reduce_42(val, _values, result)
1557
- result = val[0] * val[2] ; loc result, val[1]
1804
+ result = val[0] / val[2] ; loc result, val[1]
1558
1805
  result
1559
1806
  end
1560
1807
  .,.,
1561
1808
 
1562
- module_eval(<<'.,.,', 'egrammar.ra', 203)
1809
+ module_eval(<<'.,.,', 'egrammar.ra', 204)
1563
1810
  def _reduce_43(val, _values, result)
1564
- result = val[0] % val[2] ; loc result, val[1]
1811
+ result = val[0] * val[2] ; loc result, val[1]
1565
1812
  result
1566
1813
  end
1567
1814
  .,.,
1568
1815
 
1569
- module_eval(<<'.,.,', 'egrammar.ra', 204)
1816
+ module_eval(<<'.,.,', 'egrammar.ra', 205)
1570
1817
  def _reduce_44(val, _values, result)
1571
- result = val[0] << val[2] ; loc result, val[1]
1818
+ result = val[0] % val[2] ; loc result, val[1]
1572
1819
  result
1573
1820
  end
1574
1821
  .,.,
1575
1822
 
1576
- module_eval(<<'.,.,', 'egrammar.ra', 205)
1823
+ module_eval(<<'.,.,', 'egrammar.ra', 206)
1577
1824
  def _reduce_45(val, _values, result)
1578
- result = val[0] >> val[2] ; loc result, val[1]
1825
+ result = val[0] << val[2] ; loc result, val[1]
1579
1826
  result
1580
1827
  end
1581
1828
  .,.,
1582
1829
 
1583
- module_eval(<<'.,.,', 'egrammar.ra', 206)
1830
+ module_eval(<<'.,.,', 'egrammar.ra', 207)
1584
1831
  def _reduce_46(val, _values, result)
1585
- result = val[1].minus() ; loc result, val[0]
1832
+ result = val[0] >> val[2] ; loc result, val[1]
1586
1833
  result
1587
1834
  end
1588
1835
  .,.,
1589
1836
 
1590
- module_eval(<<'.,.,', 'egrammar.ra', 207)
1837
+ module_eval(<<'.,.,', 'egrammar.ra', 208)
1591
1838
  def _reduce_47(val, _values, result)
1592
- result = val[1].unfold() ; loc result, val[0]
1839
+ result = val[1].minus ; loc result, val[0]
1593
1840
  result
1594
1841
  end
1595
1842
  .,.,
1596
1843
 
1597
- module_eval(<<'.,.,', 'egrammar.ra', 208)
1844
+ module_eval(<<'.,.,', 'egrammar.ra', 209)
1598
1845
  def _reduce_48(val, _values, result)
1599
- result = val[0].ne val[2] ; loc result, val[1]
1846
+ result = val[1].unfold ; loc result, val[0]
1600
1847
  result
1601
1848
  end
1602
1849
  .,.,
1603
1850
 
1604
- module_eval(<<'.,.,', 'egrammar.ra', 209)
1851
+ module_eval(<<'.,.,', 'egrammar.ra', 210)
1605
1852
  def _reduce_49(val, _values, result)
1606
- result = val[0] == val[2] ; loc result, val[1]
1853
+ result = val[0].ne val[2] ; loc result, val[1]
1607
1854
  result
1608
1855
  end
1609
1856
  .,.,
1610
1857
 
1611
- module_eval(<<'.,.,', 'egrammar.ra', 210)
1858
+ module_eval(<<'.,.,', 'egrammar.ra', 211)
1612
1859
  def _reduce_50(val, _values, result)
1613
- result = val[0] > val[2] ; loc result, val[1]
1860
+ result = val[0].eq val[2] ; loc result, val[1]
1614
1861
  result
1615
1862
  end
1616
1863
  .,.,
1617
1864
 
1618
- module_eval(<<'.,.,', 'egrammar.ra', 211)
1865
+ module_eval(<<'.,.,', 'egrammar.ra', 212)
1619
1866
  def _reduce_51(val, _values, result)
1620
- result = val[0] >= val[2] ; loc result, val[1]
1867
+ result = val[0] > val[2] ; loc result, val[1]
1621
1868
  result
1622
1869
  end
1623
1870
  .,.,
1624
1871
 
1625
- module_eval(<<'.,.,', 'egrammar.ra', 212)
1872
+ module_eval(<<'.,.,', 'egrammar.ra', 213)
1626
1873
  def _reduce_52(val, _values, result)
1627
- result = val[0] < val[2] ; loc result, val[1]
1874
+ result = val[0] >= val[2] ; loc result, val[1]
1628
1875
  result
1629
1876
  end
1630
1877
  .,.,
1631
1878
 
1632
- module_eval(<<'.,.,', 'egrammar.ra', 213)
1879
+ module_eval(<<'.,.,', 'egrammar.ra', 214)
1633
1880
  def _reduce_53(val, _values, result)
1634
- result = val[0] <= val[2] ; loc result, val[1]
1881
+ result = val[0] < val[2] ; loc result, val[1]
1635
1882
  result
1636
1883
  end
1637
1884
  .,.,
1638
1885
 
1639
- module_eval(<<'.,.,', 'egrammar.ra', 214)
1886
+ module_eval(<<'.,.,', 'egrammar.ra', 215)
1640
1887
  def _reduce_54(val, _values, result)
1641
- result = val[1].not ; loc result, val[0]
1888
+ result = val[0] <= val[2] ; loc result, val[1]
1642
1889
  result
1643
1890
  end
1644
1891
  .,.,
1645
1892
 
1646
- module_eval(<<'.,.,', 'egrammar.ra', 215)
1893
+ module_eval(<<'.,.,', 'egrammar.ra', 216)
1647
1894
  def _reduce_55(val, _values, result)
1648
- result = val[0].and val[2] ; loc result, val[1]
1895
+ result = val[1].not ; loc result, val[0]
1649
1896
  result
1650
1897
  end
1651
1898
  .,.,
1652
1899
 
1653
- module_eval(<<'.,.,', 'egrammar.ra', 216)
1900
+ module_eval(<<'.,.,', 'egrammar.ra', 217)
1654
1901
  def _reduce_56(val, _values, result)
1655
- result = val[0].or val[2] ; loc result, val[1]
1902
+ result = val[0].and val[2] ; loc result, val[1]
1656
1903
  result
1657
1904
  end
1658
1905
  .,.,
1659
1906
 
1660
- module_eval(<<'.,.,', 'egrammar.ra', 217)
1907
+ module_eval(<<'.,.,', 'egrammar.ra', 218)
1661
1908
  def _reduce_57(val, _values, result)
1662
- result = val[0].select(*val[2]) ; loc result, val[0]
1909
+ result = val[0].or val[2] ; loc result, val[1]
1663
1910
  result
1664
1911
  end
1665
1912
  .,.,
1666
1913
 
1667
- module_eval(<<'.,.,', 'egrammar.ra', 218)
1914
+ module_eval(<<'.,.,', 'egrammar.ra', 219)
1668
1915
  def _reduce_58(val, _values, result)
1669
- result = val[1].paren() ; loc result, val[0]
1916
+ result = val[0].select(*val[2]) ; loc result, val[0]
1670
1917
  result
1671
1918
  end
1672
1919
  .,.,
1673
1920
 
1674
- module_eval(<<'.,.,', 'egrammar.ra', 228)
1921
+ module_eval(<<'.,.,', 'egrammar.ra', 220)
1675
1922
  def _reduce_59(val, _values, result)
1676
- result = [val[0]]
1923
+ result = val[1].paren ; loc result, val[0]
1677
1924
  result
1678
1925
  end
1679
1926
  .,.,
1680
1927
 
1681
- module_eval(<<'.,.,', 'egrammar.ra', 229)
1928
+ module_eval(<<'.,.,', 'egrammar.ra', 221)
1682
1929
  def _reduce_60(val, _values, result)
1683
- result = val[0].push(val[2])
1930
+ result = val[1].paren ; loc result, val[0]
1684
1931
  result
1685
1932
  end
1686
1933
  .,.,
1687
1934
 
1688
- # 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
+ .,.,
1689
1941
 
1690
- # 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
+ .,.,
1691
1948
 
1692
- # 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
+ .,.,
1693
1955
 
1694
1956
  # reduce 64 omitted
1695
1957
 
@@ -1719,116 +1981,144 @@ module_eval(<<'.,.,', 'egrammar.ra', 229)
1719
1981
 
1720
1982
  # reduce 77 omitted
1721
1983
 
1722
- module_eval(<<'.,.,', 'egrammar.ra', 249)
1723
- def _reduce_78(val, _values, result)
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)
1724
2000
  result = Factory.NUMBER(val[0][:value]) ; loc result, val[0]
1725
2001
  result
1726
2002
  end
1727
2003
  .,.,
1728
2004
 
1729
- module_eval(<<'.,.,', 'egrammar.ra', 250)
1730
- def _reduce_79(val, _values, result)
2005
+ module_eval(<<'.,.,', 'egrammar.ra', 261)
2006
+ def _reduce_86(val, _values, result)
1731
2007
  result = Factory.literal(val[0][:value]) ; loc result, val[0]
1732
2008
  result
1733
2009
  end
1734
2010
  .,.,
1735
2011
 
1736
- module_eval(<<'.,.,', 'egrammar.ra', 251)
1737
- def _reduce_80(val, _values, result)
2012
+ module_eval(<<'.,.,', 'egrammar.ra', 262)
2013
+ def _reduce_87(val, _values, result)
1738
2014
  result = Factory.literal(:default) ; loc result, val[0]
1739
2015
  result
1740
2016
  end
1741
2017
  .,.,
1742
2018
 
1743
- module_eval(<<'.,.,', 'egrammar.ra', 252)
1744
- def _reduce_81(val, _values, result)
2019
+ module_eval(<<'.,.,', 'egrammar.ra', 263)
2020
+ def _reduce_88(val, _values, result)
1745
2021
  result = Factory.literal(:undef) ; loc result, val[0]
1746
2022
  result
1747
2023
  end
1748
2024
  .,.,
1749
2025
 
1750
- module_eval(<<'.,.,', 'egrammar.ra', 253)
1751
- def _reduce_82(val, _values, result)
2026
+ module_eval(<<'.,.,', 'egrammar.ra', 264)
2027
+ def _reduce_89(val, _values, result)
1752
2028
  result = Factory.QNAME_OR_NUMBER(val[0][:value]) ; loc result, val[0]
1753
2029
  result
1754
2030
  end
1755
2031
  .,.,
1756
2032
 
1757
- module_eval(<<'.,.,', 'egrammar.ra', 262)
1758
- def _reduce_83(val, _values, result)
1759
- result = Factory.CALL_NAMED(val[0], true, val[2])
1760
- 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]
1761
2037
 
1762
2038
  result
1763
2039
  end
1764
2040
  .,.,
1765
2041
 
1766
- module_eval(<<'.,.,', 'egrammar.ra', 266)
1767
- def _reduce_84(val, _values, result)
2042
+ module_eval(<<'.,.,', 'egrammar.ra', 277)
2043
+ def _reduce_91(val, _values, result)
1768
2044
  result = Factory.CALL_NAMED(val[0], true, [])
1769
- loc result, val[0], val[2]
2045
+ loc result, val[0], val[1]
1770
2046
 
1771
2047
  result
1772
2048
  end
1773
2049
  .,.,
1774
2050
 
1775
- module_eval(<<'.,.,', 'egrammar.ra', 270)
1776
- def _reduce_85(val, _values, result)
1777
- 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])
1778
2054
  loc result, val[0], val[4]
1779
- result.lambda = val[5]
2055
+ result.lambda = val[4]
1780
2056
 
1781
2057
  result
1782
2058
  end
1783
2059
  .,.,
1784
2060
 
1785
- module_eval(<<'.,.,', 'egrammar.ra', 275)
1786
- def _reduce_86(val, _values, result)
2061
+ module_eval(<<'.,.,', 'egrammar.ra', 286)
2062
+ def _reduce_93(val, _values, result)
1787
2063
  result = Factory.CALL_NAMED(val[0], true, [])
1788
2064
  loc result, val[0], val[2]
1789
- result.lambda = val[3]
2065
+ result.lambda = val[2]
1790
2066
 
1791
2067
  result
1792
2068
  end
1793
2069
  .,.,
1794
2070
 
1795
- module_eval(<<'.,.,', 'egrammar.ra', 283)
1796
- def _reduce_87(val, _values, result)
2071
+ module_eval(<<'.,.,', 'egrammar.ra', 292)
2072
+ def _reduce_94(val, _values, result)
1797
2073
  result = val[0]
1798
2074
  result
1799
2075
  end
1800
2076
  .,.,
1801
2077
 
1802
- module_eval(<<'.,.,', 'egrammar.ra', 284)
1803
- def _reduce_88(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)
1804
2094
  result = val[0]; val[0].lambda = val[1]
1805
2095
  result
1806
2096
  end
1807
2097
  .,.,
1808
2098
 
1809
- module_eval(<<'.,.,', 'egrammar.ra', 287)
1810
- def _reduce_89(val, _values, result)
2099
+ module_eval(<<'.,.,', 'egrammar.ra', 302)
2100
+ def _reduce_98(val, _values, result)
1811
2101
  result = Factory.CALL_METHOD(val[0], val[2]); loc result, val[1], val[3]
1812
2102
  result
1813
2103
  end
1814
2104
  .,.,
1815
2105
 
1816
- module_eval(<<'.,.,', 'egrammar.ra', 288)
1817
- def _reduce_90(val, _values, result)
2106
+ module_eval(<<'.,.,', 'egrammar.ra', 303)
2107
+ def _reduce_99(val, _values, result)
1818
2108
  result = Factory.CALL_METHOD(val[0], []); loc result, val[1], val[3]
1819
2109
  result
1820
2110
  end
1821
2111
  .,.,
1822
2112
 
1823
- module_eval(<<'.,.,', 'egrammar.ra', 289)
1824
- def _reduce_91(val, _values, result)
2113
+ module_eval(<<'.,.,', 'egrammar.ra', 304)
2114
+ def _reduce_100(val, _values, result)
1825
2115
  result = Factory.CALL_METHOD(val[0], []); loc result, val[0]
1826
2116
  result
1827
2117
  end
1828
2118
  .,.,
1829
2119
 
1830
- module_eval(<<'.,.,', 'egrammar.ra', 293)
1831
- def _reduce_92(val, _values, result)
2120
+ module_eval(<<'.,.,', 'egrammar.ra', 308)
2121
+ def _reduce_101(val, _values, result)
1832
2122
  result = val[0].dot(Factory.fqn(val[2][:value]))
1833
2123
  loc result, val[1], val[2]
1834
2124
 
@@ -1836,45 +2126,54 @@ module_eval(<<'.,.,', 'egrammar.ra', 293)
1836
2126
  end
1837
2127
  .,.,
1838
2128
 
1839
- module_eval(<<'.,.,', 'egrammar.ra', 301)
1840
- def _reduce_93(val, _values, result)
1841
- result = Factory.LAMBDA(val[0][:value], val[1][:value])
1842
- 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]
1843
2142
 
1844
2143
  result
1845
2144
  end
1846
2145
  .,.,
1847
2146
 
1848
- module_eval(<<'.,.,', 'egrammar.ra', 306)
1849
- def _reduce_94(val, _values, result)
2147
+ module_eval(<<'.,.,', 'egrammar.ra', 325)
2148
+ def _reduce_104(val, _values, result)
1850
2149
  result = {:end => val[2], :value =>val[1] }
1851
2150
  result
1852
2151
  end
1853
2152
  .,.,
1854
2153
 
1855
- module_eval(<<'.,.,', 'egrammar.ra', 307)
1856
- def _reduce_95(val, _values, result)
2154
+ module_eval(<<'.,.,', 'egrammar.ra', 326)
2155
+ def _reduce_105(val, _values, result)
1857
2156
  result = {:end => val[1], :value => nil }
1858
2157
  result
1859
2158
  end
1860
2159
  .,.,
1861
2160
 
1862
- module_eval(<<'.,.,', 'egrammar.ra', 311)
1863
- def _reduce_96(val, _values, result)
2161
+ module_eval(<<'.,.,', 'egrammar.ra', 330)
2162
+ def _reduce_106(val, _values, result)
1864
2163
  result = {:start => val[0], :value => [] }
1865
2164
  result
1866
2165
  end
1867
2166
  .,.,
1868
2167
 
1869
- module_eval(<<'.,.,', 'egrammar.ra', 312)
1870
- def _reduce_97(val, _values, result)
2168
+ module_eval(<<'.,.,', 'egrammar.ra', 331)
2169
+ def _reduce_107(val, _values, result)
1871
2170
  result = {:start => val[0], :value => val[1] }
1872
2171
  result
1873
2172
  end
1874
2173
  .,.,
1875
2174
 
1876
- module_eval(<<'.,.,', 'egrammar.ra', 320)
1877
- def _reduce_98(val, _values, result)
2175
+ module_eval(<<'.,.,', 'egrammar.ra', 339)
2176
+ def _reduce_108(val, _values, result)
1878
2177
  result = val[1]
1879
2178
  loc(result, val[0], val[1])
1880
2179
 
@@ -1882,17 +2181,17 @@ module_eval(<<'.,.,', 'egrammar.ra', 320)
1882
2181
  end
1883
2182
  .,.,
1884
2183
 
1885
- module_eval(<<'.,.,', 'egrammar.ra', 327)
1886
- def _reduce_99(val, _values, result)
1887
- 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])
1888
2187
  loc(result, val[0], (val[4] ? val[4] : val[3]))
1889
2188
 
1890
2189
  result
1891
2190
  end
1892
2191
  .,.,
1893
2192
 
1894
- module_eval(<<'.,.,', 'egrammar.ra', 331)
1895
- def _reduce_100(val, _values, result)
2193
+ module_eval(<<'.,.,', 'egrammar.ra', 350)
2194
+ def _reduce_110(val, _values, result)
1896
2195
  result = Factory.IF(val[0], nil, val[3])
1897
2196
  loc(result, val[0], (val[3] ? val[3] : val[2]))
1898
2197
 
@@ -1900,10 +2199,10 @@ module_eval(<<'.,.,', 'egrammar.ra', 331)
1900
2199
  end
1901
2200
  .,.,
1902
2201
 
1903
- # reduce 101 omitted
2202
+ # reduce 111 omitted
1904
2203
 
1905
- module_eval(<<'.,.,', 'egrammar.ra', 339)
1906
- def _reduce_102(val, _values, result)
2204
+ module_eval(<<'.,.,', 'egrammar.ra', 358)
2205
+ def _reduce_112(val, _values, result)
1907
2206
  result = val[1]
1908
2207
  loc(result, val[0], val[1])
1909
2208
 
@@ -1911,34 +2210,34 @@ module_eval(<<'.,.,', 'egrammar.ra', 339)
1911
2210
  end
1912
2211
  .,.,
1913
2212
 
1914
- module_eval(<<'.,.,', 'egrammar.ra', 343)
1915
- def _reduce_103(val, _values, result)
1916
- 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])
1917
2216
  loc result, val[0], val[3]
1918
2217
 
1919
2218
  result
1920
2219
  end
1921
2220
  .,.,
1922
2221
 
1923
- module_eval(<<'.,.,', 'egrammar.ra', 347)
1924
- def _reduce_104(val, _values, result)
2222
+ module_eval(<<'.,.,', 'egrammar.ra', 366)
2223
+ def _reduce_114(val, _values, result)
1925
2224
  result = nil # don't think a nop is needed here either
1926
2225
 
1927
2226
  result
1928
2227
  end
1929
2228
  .,.,
1930
2229
 
1931
- module_eval(<<'.,.,', 'egrammar.ra', 354)
1932
- def _reduce_105(val, _values, result)
1933
- 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])
1934
2233
  loc result, val[0], val[4]
1935
2234
 
1936
2235
  result
1937
2236
  end
1938
2237
  .,.,
1939
2238
 
1940
- module_eval(<<'.,.,', 'egrammar.ra', 358)
1941
- def _reduce_106(val, _values, result)
2239
+ module_eval(<<'.,.,', 'egrammar.ra', 377)
2240
+ def _reduce_116(val, _values, result)
1942
2241
  result = Factory.UNLESS(val[1], nil, val[4])
1943
2242
  loc result, val[0], val[4]
1944
2243
 
@@ -1946,27 +2245,27 @@ module_eval(<<'.,.,', 'egrammar.ra', 358)
1946
2245
  end
1947
2246
  .,.,
1948
2247
 
1949
- # reduce 107 omitted
2248
+ # reduce 117 omitted
1950
2249
 
1951
- module_eval(<<'.,.,', 'egrammar.ra', 368)
1952
- def _reduce_108(val, _values, result)
1953
- 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])
1954
2253
  loc result, val[0], val[3]
1955
2254
 
1956
2255
  result
1957
2256
  end
1958
2257
  .,.,
1959
2258
 
1960
- module_eval(<<'.,.,', 'egrammar.ra', 372)
1961
- def _reduce_109(val, _values, result)
2259
+ module_eval(<<'.,.,', 'egrammar.ra', 391)
2260
+ def _reduce_119(val, _values, result)
1962
2261
  result = nil # don't think a nop is needed here either
1963
2262
 
1964
2263
  result
1965
2264
  end
1966
2265
  .,.,
1967
2266
 
1968
- module_eval(<<'.,.,', 'egrammar.ra', 379)
1969
- def _reduce_110(val, _values, result)
2267
+ module_eval(<<'.,.,', 'egrammar.ra', 398)
2268
+ def _reduce_120(val, _values, result)
1970
2269
  result = Factory.CASE(val[1], *val[3])
1971
2270
  loc result, val[0], val[4]
1972
2271
 
@@ -1974,65 +2273,65 @@ module_eval(<<'.,.,', 'egrammar.ra', 379)
1974
2273
  end
1975
2274
  .,.,
1976
2275
 
1977
- module_eval(<<'.,.,', 'egrammar.ra', 385)
1978
- def _reduce_111(val, _values, result)
2276
+ module_eval(<<'.,.,', 'egrammar.ra', 404)
2277
+ def _reduce_121(val, _values, result)
1979
2278
  result = [val[0]]
1980
2279
  result
1981
2280
  end
1982
2281
  .,.,
1983
2282
 
1984
- module_eval(<<'.,.,', 'egrammar.ra', 386)
1985
- def _reduce_112(val, _values, result)
2283
+ module_eval(<<'.,.,', 'egrammar.ra', 405)
2284
+ def _reduce_122(val, _values, result)
1986
2285
  result = val[0].push val[1]
1987
2286
  result
1988
2287
  end
1989
2288
  .,.,
1990
2289
 
1991
- module_eval(<<'.,.,', 'egrammar.ra', 391)
1992
- def _reduce_113(val, _values, result)
2290
+ module_eval(<<'.,.,', 'egrammar.ra', 410)
2291
+ def _reduce_123(val, _values, result)
1993
2292
  result = Factory.WHEN(val[0], val[3]); loc result, val[1], val[4]
1994
2293
 
1995
2294
  result
1996
2295
  end
1997
2296
  .,.,
1998
2297
 
1999
- # reduce 114 omitted
2298
+ # reduce 124 omitted
2000
2299
 
2001
- # reduce 115 omitted
2300
+ # reduce 125 omitted
2002
2301
 
2003
- # reduce 116 omitted
2302
+ # reduce 126 omitted
2004
2303
 
2005
- module_eval(<<'.,.,', 'egrammar.ra', 407)
2006
- def _reduce_117(val, _values, result)
2304
+ module_eval(<<'.,.,', 'egrammar.ra', 426)
2305
+ def _reduce_127(val, _values, result)
2007
2306
  result = val[1]
2008
2307
 
2009
2308
  result
2010
2309
  end
2011
2310
  .,.,
2012
2311
 
2013
- module_eval(<<'.,.,', 'egrammar.ra', 412)
2014
- def _reduce_118(val, _values, result)
2312
+ module_eval(<<'.,.,', 'egrammar.ra', 431)
2313
+ def _reduce_128(val, _values, result)
2015
2314
  result = [val[0]]
2016
2315
  result
2017
2316
  end
2018
2317
  .,.,
2019
2318
 
2020
- module_eval(<<'.,.,', 'egrammar.ra', 413)
2021
- def _reduce_119(val, _values, result)
2319
+ module_eval(<<'.,.,', 'egrammar.ra', 432)
2320
+ def _reduce_129(val, _values, result)
2022
2321
  result = val[0].push val[2]
2023
2322
  result
2024
2323
  end
2025
2324
  .,.,
2026
2325
 
2027
- module_eval(<<'.,.,', 'egrammar.ra', 418)
2028
- def _reduce_120(val, _values, result)
2326
+ module_eval(<<'.,.,', 'egrammar.ra', 437)
2327
+ def _reduce_130(val, _values, result)
2029
2328
  result = Factory.MAP(val[0], val[2]) ; loc result, val[1]
2030
2329
  result
2031
2330
  end
2032
2331
  .,.,
2033
2332
 
2034
- module_eval(<<'.,.,', 'egrammar.ra', 428)
2035
- def _reduce_121(val, _values, result)
2333
+ module_eval(<<'.,.,', 'egrammar.ra', 447)
2334
+ def _reduce_131(val, _values, result)
2036
2335
  result = Factory.COLLECT(val[0], val[1], val[3])
2037
2336
  loc result, val[0], val[5]
2038
2337
 
@@ -2040,8 +2339,8 @@ module_eval(<<'.,.,', 'egrammar.ra', 428)
2040
2339
  end
2041
2340
  .,.,
2042
2341
 
2043
- module_eval(<<'.,.,', 'egrammar.ra', 432)
2044
- def _reduce_122(val, _values, result)
2342
+ module_eval(<<'.,.,', 'egrammar.ra', 451)
2343
+ def _reduce_132(val, _values, result)
2045
2344
  result = Factory.COLLECT(val[0], val[1], [])
2046
2345
  loc result, val[0], val[1]
2047
2346
 
@@ -2049,79 +2348,80 @@ module_eval(<<'.,.,', 'egrammar.ra', 432)
2049
2348
  end
2050
2349
  .,.,
2051
2350
 
2052
- module_eval(<<'.,.,', 'egrammar.ra', 437)
2053
- def _reduce_123(val, _values, result)
2351
+ module_eval(<<'.,.,', 'egrammar.ra', 456)
2352
+ def _reduce_133(val, _values, result)
2054
2353
  result = Factory.VIRTUAL_QUERY(val[1]) ; loc result, val[0], val[2]
2055
2354
  result
2056
2355
  end
2057
2356
  .,.,
2058
2357
 
2059
- module_eval(<<'.,.,', 'egrammar.ra', 438)
2060
- def _reduce_124(val, _values, result)
2358
+ module_eval(<<'.,.,', 'egrammar.ra', 457)
2359
+ def _reduce_134(val, _values, result)
2061
2360
  result = Factory.EXPORTED_QUERY(val[1]) ; loc result, val[0], val[2]
2062
2361
  result
2063
2362
  end
2064
2363
  .,.,
2065
2364
 
2066
- # reduce 125 omitted
2365
+ # reduce 135 omitted
2067
2366
 
2068
- # reduce 126 omitted
2367
+ # reduce 136 omitted
2069
2368
 
2070
- module_eval(<<'.,.,', 'egrammar.ra', 447)
2071
- def _reduce_127(val, _values, result)
2369
+ module_eval(<<'.,.,', 'egrammar.ra', 466)
2370
+ def _reduce_137(val, _values, result)
2072
2371
  result = []
2073
2372
  result
2074
2373
  end
2075
2374
  .,.,
2076
2375
 
2077
- module_eval(<<'.,.,', 'egrammar.ra', 448)
2078
- def _reduce_128(val, _values, result)
2376
+ module_eval(<<'.,.,', 'egrammar.ra', 467)
2377
+ def _reduce_138(val, _values, result)
2079
2378
  result = [val[0]]
2080
2379
  result
2081
2380
  end
2082
2381
  .,.,
2083
2382
 
2084
- module_eval(<<'.,.,', 'egrammar.ra', 449)
2085
- def _reduce_129(val, _values, result)
2383
+ module_eval(<<'.,.,', 'egrammar.ra', 468)
2384
+ def _reduce_139(val, _values, result)
2086
2385
  result = val[0].push(val[2])
2087
2386
  result
2088
2387
  end
2089
2388
  .,.,
2090
2389
 
2091
- # reduce 130 omitted
2390
+ # reduce 140 omitted
2092
2391
 
2093
- # reduce 131 omitted
2392
+ # reduce 141 omitted
2094
2393
 
2095
- module_eval(<<'.,.,', 'egrammar.ra', 465)
2096
- def _reduce_132(val, _values, result)
2097
- 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])
2098
2397
  loc result, val[0], val[2]
2099
2398
 
2100
2399
  result
2101
2400
  end
2102
2401
  .,.,
2103
2402
 
2104
- module_eval(<<'.,.,', 'egrammar.ra', 469)
2105
- def _reduce_133(val, _values, result)
2106
- 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])
2107
2406
  loc result, val[0], val[2]
2108
2407
 
2109
2408
  result
2110
2409
  end
2111
2410
  .,.,
2112
2411
 
2113
- module_eval(<<'.,.,', 'egrammar.ra', 473)
2114
- def _reduce_134(val, _values, result)
2412
+ module_eval(<<'.,.,', 'egrammar.ra', 491)
2413
+ def _reduce_144(val, _values, result)
2115
2414
  result = Factory.ATTRIBUTES_OP(val[2]) ; loc result, val[0], val[2]
2116
2415
 
2117
2416
  result
2118
2417
  end
2119
2418
  .,.,
2120
2419
 
2121
- module_eval(<<'.,.,', 'egrammar.ra', 482)
2122
- def _reduce_135(val, _values, result)
2123
- result = add_definition(Factory.DEFINITION(classname(val[1][:value]), val[2], val[4]))
2124
- 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)
2125
2425
  # New lexer does not keep track of this, this is done in validation
2126
2426
  if @lexer.respond_to?(:'indefine=')
2127
2427
  @lexer.indefine = false
@@ -2131,537 +2431,708 @@ module_eval(<<'.,.,', 'egrammar.ra', 482)
2131
2431
  end
2132
2432
  .,.,
2133
2433
 
2134
- module_eval(<<'.,.,', 'egrammar.ra', 496)
2135
- def _reduce_136(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)
2136
2474
  # Remove this class' name from the namestack as all nested classes have been parsed
2137
2475
  namepop
2138
- result = add_definition(Factory.HOSTCLASS(classname(val[1][:value]), val[2], token_text(val[3]), val[5]))
2139
- 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)
2140
2479
 
2141
2480
  result
2142
2481
  end
2143
2482
  .,.,
2144
2483
 
2145
- module_eval(<<'.,.,', 'egrammar.ra', 506)
2146
- def _reduce_137(val, _values, result)
2484
+ module_eval(<<'.,.,', 'egrammar.ra', 554)
2485
+ def _reduce_152(val, _values, result)
2147
2486
  namestack(val[0][:value]) ; result = val[0]
2148
2487
  result
2149
2488
  end
2150
2489
  .,.,
2151
2490
 
2152
- # reduce 138 omitted
2491
+ # reduce 153 omitted
2153
2492
 
2154
- # reduce 139 omitted
2493
+ # reduce 154 omitted
2155
2494
 
2156
- # reduce 140 omitted
2495
+ # reduce 155 omitted
2157
2496
 
2158
- module_eval(<<'.,.,', 'egrammar.ra', 515)
2159
- def _reduce_141(val, _values, result)
2497
+ module_eval(<<'.,.,', 'egrammar.ra', 563)
2498
+ def _reduce_156(val, _values, result)
2160
2499
  result = val[1]
2161
2500
  result
2162
2501
  end
2163
2502
  .,.,
2164
2503
 
2165
- # reduce 142 omitted
2504
+ # reduce 157 omitted
2166
2505
 
2167
- # reduce 143 omitted
2506
+ # reduce 158 omitted
2168
2507
 
2169
- module_eval(<<'.,.,', 'egrammar.ra', 532)
2170
- def _reduce_144(val, _values, result)
2171
- result = add_definition(Factory.NODE(val[1], val[3], val[5]))
2172
- 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)
2173
2513
 
2174
2514
  result
2175
2515
  end
2176
2516
  .,.,
2177
2517
 
2178
- module_eval(<<'.,.,', 'egrammar.ra', 536)
2179
- def _reduce_145(val, _values, result)
2180
- result = add_definition(Factory.NODE(val[1], val[3], nil))
2181
- 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)
2182
2523
 
2183
2524
  result
2184
2525
  end
2185
2526
  .,.,
2186
2527
 
2187
- module_eval(<<'.,.,', 'egrammar.ra', 546)
2188
- def _reduce_146(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)
2189
2550
  result = [result]
2190
2551
  result
2191
2552
  end
2192
2553
  .,.,
2193
2554
 
2194
- module_eval(<<'.,.,', 'egrammar.ra', 547)
2195
- def _reduce_147(val, _values, result)
2555
+ module_eval(<<'.,.,', 'egrammar.ra', 613)
2556
+ def _reduce_164(val, _values, result)
2196
2557
  result = val[0].push(val[2])
2197
2558
  result
2198
2559
  end
2199
2560
  .,.,
2200
2561
 
2201
- # reduce 148 omitted
2562
+ # reduce 165 omitted
2202
2563
 
2203
- # reduce 149 omitted
2564
+ # reduce 166 omitted
2204
2565
 
2205
- module_eval(<<'.,.,', 'egrammar.ra', 554)
2206
- def _reduce_150(val, _values, result)
2566
+ module_eval(<<'.,.,', 'egrammar.ra', 620)
2567
+ def _reduce_167(val, _values, result)
2207
2568
  result = Factory.literal(:default); loc result, val[0]
2208
2569
  result
2209
2570
  end
2210
2571
  .,.,
2211
2572
 
2212
- # reduce 151 omitted
2573
+ # reduce 168 omitted
2213
2574
 
2214
- module_eval(<<'.,.,', 'egrammar.ra', 558)
2215
- def _reduce_152(val, _values, result)
2575
+ module_eval(<<'.,.,', 'egrammar.ra', 624)
2576
+ def _reduce_169(val, _values, result)
2216
2577
  result = Factory.literal(val[0][:value]); loc result, val[0]
2217
2578
  result
2218
2579
  end
2219
2580
  .,.,
2220
2581
 
2221
- module_eval(<<'.,.,', 'egrammar.ra', 559)
2222
- def _reduce_153(val, _values, result)
2582
+ module_eval(<<'.,.,', 'egrammar.ra', 625)
2583
+ def _reduce_170(val, _values, result)
2223
2584
  result = Factory.concat(val[0], '.', val[2][:value]); loc result, val[0], val[2]
2224
2585
  result
2225
2586
  end
2226
2587
  .,.,
2227
2588
 
2228
- # reduce 154 omitted
2589
+ # reduce 171 omitted
2229
2590
 
2230
- # reduce 155 omitted
2591
+ # reduce 172 omitted
2231
2592
 
2232
- # reduce 156 omitted
2593
+ # reduce 173 omitted
2233
2594
 
2234
- module_eval(<<'.,.,', 'egrammar.ra', 568)
2235
- def _reduce_157(val, _values, result)
2595
+ module_eval(<<'.,.,', 'egrammar.ra', 634)
2596
+ def _reduce_174(val, _values, result)
2236
2597
  result = val[1]
2237
2598
  result
2238
2599
  end
2239
2600
  .,.,
2240
2601
 
2241
- module_eval(<<'.,.,', 'egrammar.ra', 574)
2242
- def _reduce_158(val, _values, result)
2243
- result = add_definition(Factory.FUNCTION(val[1][:value], val[2], val[4]))
2244
- loc result, val[0], val[5]
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)
2245
2607
 
2246
2608
  result
2247
2609
  end
2248
2610
  .,.,
2249
2611
 
2250
- # reduce 159 omitted
2612
+ module_eval(<<'.,.,', 'egrammar.ra', 646)
2613
+ def _reduce_176(val, _values, result)
2614
+ result = val[1]
2615
+ result
2616
+ end
2617
+ .,.,
2251
2618
 
2252
- # reduce 160 omitted
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
+ .,.,
2253
2625
 
2254
- # reduce 161 omitted
2626
+ # reduce 178 omitted
2255
2627
 
2256
- module_eval(<<'.,.,', 'egrammar.ra', 585)
2257
- def _reduce_162(val, _values, result)
2258
- 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"
2259
2637
  result
2260
2638
  end
2261
2639
  .,.,
2262
2640
 
2263
- module_eval(<<'.,.,', 'egrammar.ra', 589)
2264
- def _reduce_163(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)
2265
2650
  result = []
2266
2651
  result
2267
2652
  end
2268
2653
  .,.,
2269
2654
 
2270
- module_eval(<<'.,.,', 'egrammar.ra', 590)
2271
- def _reduce_164(val, _values, result)
2655
+ module_eval(<<'.,.,', 'egrammar.ra', 663)
2656
+ def _reduce_185(val, _values, result)
2272
2657
  result = []
2273
2658
  result
2274
2659
  end
2275
2660
  .,.,
2276
2661
 
2277
- module_eval(<<'.,.,', 'egrammar.ra', 591)
2278
- def _reduce_165(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)
2671
+ result = val[1]
2672
+ result
2673
+ end
2674
+ .,.,
2675
+
2676
+ module_eval(<<'.,.,', 'egrammar.ra', 666)
2677
+ def _reduce_188(val, _values, result)
2279
2678
  result = val[1]
2280
2679
  result
2281
2680
  end
2282
2681
  .,.,
2283
2682
 
2284
- module_eval(<<'.,.,', 'egrammar.ra', 595)
2285
- def _reduce_166(val, _values, result)
2683
+ module_eval(<<'.,.,', 'egrammar.ra', 670)
2684
+ def _reduce_189(val, _values, result)
2286
2685
  result = [val[0]]
2287
2686
  result
2288
2687
  end
2289
2688
  .,.,
2290
2689
 
2291
- module_eval(<<'.,.,', 'egrammar.ra', 596)
2292
- def _reduce_167(val, _values, result)
2690
+ module_eval(<<'.,.,', 'egrammar.ra', 671)
2691
+ def _reduce_190(val, _values, result)
2293
2692
  result = val[0].push(val[2])
2294
2693
  result
2295
2694
  end
2296
2695
  .,.,
2297
2696
 
2298
- # reduce 168 omitted
2697
+ # reduce 191 omitted
2299
2698
 
2300
- # reduce 169 omitted
2699
+ # reduce 192 omitted
2301
2700
 
2302
- # reduce 170 omitted
2701
+ # reduce 193 omitted
2303
2702
 
2304
- # reduce 171 omitted
2703
+ # reduce 194 omitted
2305
2704
 
2306
- module_eval(<<'.,.,', 'egrammar.ra', 608)
2307
- def _reduce_172(val, _values, result)
2705
+ module_eval(<<'.,.,', 'egrammar.ra', 683)
2706
+ def _reduce_195(val, _values, result)
2308
2707
  result = Factory.PARAM(val[0][:value], val[2]) ; loc result, val[0]
2309
2708
  result
2310
2709
  end
2311
2710
  .,.,
2312
2711
 
2313
- module_eval(<<'.,.,', 'egrammar.ra', 609)
2314
- def _reduce_173(val, _values, result)
2712
+ module_eval(<<'.,.,', 'egrammar.ra', 684)
2713
+ def _reduce_196(val, _values, result)
2315
2714
  result = Factory.PARAM(val[0][:value]); loc result, val[0]
2316
2715
  result
2317
2716
  end
2318
2717
  .,.,
2319
2718
 
2320
- module_eval(<<'.,.,', 'egrammar.ra', 612)
2321
- def _reduce_174(val, _values, result)
2322
- 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
2323
2722
  result
2324
2723
  end
2325
2724
  .,.,
2326
2725
 
2327
- module_eval(<<'.,.,', 'egrammar.ra', 615)
2328
- def _reduce_175(val, _values, result)
2726
+ module_eval(<<'.,.,', 'egrammar.ra', 690)
2727
+ def _reduce_198(val, _values, result)
2329
2728
  val[1].type_expr(val[0]) ; result = val[1]
2330
2729
  result
2331
2730
  end
2332
2731
  .,.,
2333
2732
 
2334
- module_eval(<<'.,.,', 'egrammar.ra', 618)
2335
- def _reduce_176(val, _values, result)
2733
+ module_eval(<<'.,.,', 'egrammar.ra', 693)
2734
+ def _reduce_199(val, _values, result)
2336
2735
  result = val[0]
2337
2736
  result
2338
2737
  end
2339
2738
  .,.,
2340
2739
 
2341
- module_eval(<<'.,.,', 'egrammar.ra', 619)
2342
- def _reduce_177(val, _values, result)
2343
- 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]
2344
2743
  result
2345
2744
  end
2346
2745
  .,.,
2347
2746
 
2348
- module_eval(<<'.,.,', 'egrammar.ra', 624)
2349
- def _reduce_178(val, _values, result)
2350
- 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
+
2351
2753
  result
2352
2754
  end
2353
2755
  .,.,
2354
2756
 
2355
- module_eval(<<'.,.,', 'egrammar.ra', 629)
2356
- def _reduce_179(val, _values, result)
2357
- 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
+
2763
+ result
2764
+ end
2765
+ .,.,
2766
+
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
+
2358
2773
  result
2359
2774
  end
2360
2775
  .,.,
2361
2776
 
2362
- module_eval(<<'.,.,', 'egrammar.ra', 630)
2363
- def _reduce_180(val, _values, result)
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
+
2786
+ result
2787
+ end
2788
+ .,.,
2789
+
2790
+ module_eval(<<'.,.,', 'egrammar.ra', 733)
2791
+ def _reduce_205(val, _values, result)
2364
2792
  result = Factory.RESERVED(val[0][:value]) ; loc result, val[0]
2365
2793
  result
2366
2794
  end
2367
2795
  .,.,
2368
2796
 
2369
- module_eval(<<'.,.,', 'egrammar.ra', 631)
2370
- def _reduce_181(val, _values, result)
2797
+ module_eval(<<'.,.,', 'egrammar.ra', 734)
2798
+ def _reduce_206(val, _values, result)
2371
2799
  result = Factory.RESERVED(val[0][:value]) ; loc result, val[0]
2372
2800
  result
2373
2801
  end
2374
2802
  .,.,
2375
2803
 
2376
- module_eval(<<'.,.,', 'egrammar.ra', 637)
2377
- def _reduce_182(val, _values, result)
2804
+ module_eval(<<'.,.,', 'egrammar.ra', 740)
2805
+ def _reduce_207(val, _values, result)
2378
2806
  result = Factory.LIST(val[1]); loc result, val[0], val[3]
2379
2807
  result
2380
2808
  end
2381
2809
  .,.,
2382
2810
 
2383
- module_eval(<<'.,.,', 'egrammar.ra', 638)
2384
- def _reduce_183(val, _values, result)
2811
+ module_eval(<<'.,.,', 'egrammar.ra', 741)
2812
+ def _reduce_208(val, _values, result)
2385
2813
  result = Factory.literal([]) ; loc result, val[0], val[1]
2386
2814
  result
2387
2815
  end
2388
2816
  .,.,
2389
2817
 
2390
- module_eval(<<'.,.,', 'egrammar.ra', 639)
2391
- def _reduce_184(val, _values, result)
2818
+ module_eval(<<'.,.,', 'egrammar.ra', 742)
2819
+ def _reduce_209(val, _values, result)
2392
2820
  result = Factory.LIST(val[1]); loc result, val[0], val[3]
2393
2821
  result
2394
2822
  end
2395
2823
  .,.,
2396
2824
 
2397
- module_eval(<<'.,.,', 'egrammar.ra', 640)
2398
- def _reduce_185(val, _values, result)
2825
+ module_eval(<<'.,.,', 'egrammar.ra', 743)
2826
+ def _reduce_210(val, _values, result)
2399
2827
  result = Factory.literal([]) ; loc result, val[0], val[1]
2400
2828
  result
2401
2829
  end
2402
2830
  .,.,
2403
2831
 
2404
- module_eval(<<'.,.,', 'egrammar.ra', 643)
2405
- def _reduce_186(val, _values, result)
2832
+ module_eval(<<'.,.,', 'egrammar.ra', 746)
2833
+ def _reduce_211(val, _values, result)
2406
2834
  result = Factory.HASH(val[1]); loc result, val[0], val[2]
2407
2835
  result
2408
2836
  end
2409
2837
  .,.,
2410
2838
 
2411
- module_eval(<<'.,.,', 'egrammar.ra', 644)
2412
- def _reduce_187(val, _values, result)
2839
+ module_eval(<<'.,.,', 'egrammar.ra', 747)
2840
+ def _reduce_212(val, _values, result)
2413
2841
  result = Factory.HASH(val[1]); loc result, val[0], val[3]
2414
2842
  result
2415
2843
  end
2416
2844
  .,.,
2417
2845
 
2418
- module_eval(<<'.,.,', 'egrammar.ra', 645)
2419
- def _reduce_188(val, _values, result)
2846
+ module_eval(<<'.,.,', 'egrammar.ra', 748)
2847
+ def _reduce_213(val, _values, result)
2420
2848
  result = Factory.literal({}) ; loc result, val[0], val[1]
2421
2849
  result
2422
2850
  end
2423
2851
  .,.,
2424
2852
 
2425
- module_eval(<<'.,.,', 'egrammar.ra', 648)
2426
- def _reduce_189(val, _values, result)
2853
+ module_eval(<<'.,.,', 'egrammar.ra', 751)
2854
+ def _reduce_214(val, _values, result)
2427
2855
  result = [val[0]]
2428
2856
  result
2429
2857
  end
2430
2858
  .,.,
2431
2859
 
2432
- module_eval(<<'.,.,', 'egrammar.ra', 649)
2433
- def _reduce_190(val, _values, result)
2860
+ module_eval(<<'.,.,', 'egrammar.ra', 752)
2861
+ def _reduce_215(val, _values, result)
2434
2862
  result = val[0].push val[2]
2435
2863
  result
2436
2864
  end
2437
2865
  .,.,
2438
2866
 
2439
- module_eval(<<'.,.,', 'egrammar.ra', 652)
2440
- def _reduce_191(val, _values, result)
2867
+ module_eval(<<'.,.,', 'egrammar.ra', 755)
2868
+ def _reduce_216(val, _values, result)
2441
2869
  result = Factory.KEY_ENTRY(val[0], val[2]); loc result, val[1]
2442
2870
  result
2443
2871
  end
2444
2872
  .,.,
2445
2873
 
2446
- # reduce 192 omitted
2874
+ # reduce 217 omitted
2447
2875
 
2448
- # reduce 193 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
+ .,.,
2449
2882
 
2450
- # reduce 194 omitted
2883
+ module_eval(<<'.,.,', 'egrammar.ra', 762)
2884
+ def _reduce_219(val, _values, result)
2885
+ result = [val[0]]
2886
+ result
2887
+ end
2888
+ .,.,
2451
2889
 
2452
- module_eval(<<'.,.,', 'egrammar.ra', 660)
2453
- def _reduce_195(val, _values, result)
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
2908
+
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)
2454
2917
  result = Factory.literal(val[0][:value]) ; loc result, val[0]
2455
2918
  result
2456
2919
  end
2457
2920
  .,.,
2458
2921
 
2459
- module_eval(<<'.,.,', 'egrammar.ra', 661)
2460
- def _reduce_196(val, _values, result)
2922
+ module_eval(<<'.,.,', 'egrammar.ra', 781)
2923
+ def _reduce_231(val, _values, result)
2461
2924
  result = Factory.literal(val[0][:value]) ; loc result, val[0]
2462
2925
  result
2463
2926
  end
2464
2927
  .,.,
2465
2928
 
2466
- module_eval(<<'.,.,', 'egrammar.ra', 663)
2467
- def _reduce_197(val, _values, result)
2468
- 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]
2469
2932
  result
2470
2933
  end
2471
2934
  .,.,
2472
2935
 
2473
- module_eval(<<'.,.,', 'egrammar.ra', 664)
2474
- def _reduce_198(val, _values, result)
2936
+ module_eval(<<'.,.,', 'egrammar.ra', 784)
2937
+ def _reduce_233(val, _values, result)
2475
2938
  result = Factory.literal(val[0][:value]); loc result, val[0]
2476
2939
  result
2477
2940
  end
2478
2941
  .,.,
2479
2942
 
2480
- module_eval(<<'.,.,', 'egrammar.ra', 665)
2481
- def _reduce_199(val, _values, result)
2943
+ module_eval(<<'.,.,', 'egrammar.ra', 785)
2944
+ def _reduce_234(val, _values, result)
2482
2945
  result = Factory.literal(val[0][:value]); loc result, val[0]
2483
2946
  result
2484
2947
  end
2485
2948
  .,.,
2486
2949
 
2487
- module_eval(<<'.,.,', 'egrammar.ra', 666)
2488
- def _reduce_200(val, _values, result)
2950
+ module_eval(<<'.,.,', 'egrammar.ra', 786)
2951
+ def _reduce_235(val, _values, result)
2489
2952
  result = Factory.literal(val[0][:value]); loc result, val[0]
2490
2953
  result
2491
2954
  end
2492
2955
  .,.,
2493
2956
 
2494
- module_eval(<<'.,.,', 'egrammar.ra', 667)
2495
- def _reduce_201(val, _values, result)
2957
+ module_eval(<<'.,.,', 'egrammar.ra', 787)
2958
+ def _reduce_236(val, _values, result)
2496
2959
  result = [val[0]] + val[1]
2497
2960
  result
2498
2961
  end
2499
2962
  .,.,
2500
2963
 
2501
- module_eval(<<'.,.,', 'egrammar.ra', 668)
2502
- def _reduce_202(val, _values, result)
2964
+ module_eval(<<'.,.,', 'egrammar.ra', 788)
2965
+ def _reduce_237(val, _values, result)
2503
2966
  result = Factory.TEXT(val[0])
2504
2967
  result
2505
2968
  end
2506
2969
  .,.,
2507
2970
 
2508
- module_eval(<<'.,.,', 'egrammar.ra', 671)
2509
- def _reduce_203(val, _values, result)
2971
+ module_eval(<<'.,.,', 'egrammar.ra', 791)
2972
+ def _reduce_238(val, _values, result)
2510
2973
  result = [val[0]]
2511
2974
  result
2512
2975
  end
2513
2976
  .,.,
2514
2977
 
2515
- module_eval(<<'.,.,', 'egrammar.ra', 672)
2516
- def _reduce_204(val, _values, result)
2978
+ module_eval(<<'.,.,', 'egrammar.ra', 792)
2979
+ def _reduce_239(val, _values, result)
2517
2980
  result = [val[0]] + val[1]
2518
2981
  result
2519
2982
  end
2520
2983
  .,.,
2521
2984
 
2522
- module_eval(<<'.,.,', 'egrammar.ra', 675)
2523
- def _reduce_205(val, _values, result)
2985
+ module_eval(<<'.,.,', 'egrammar.ra', 795)
2986
+ def _reduce_240(val, _values, result)
2524
2987
  result = Factory.HEREDOC(val[0][:value], val[1]); loc result, val[0]
2525
2988
  result
2526
2989
  end
2527
2990
  .,.,
2528
2991
 
2529
- module_eval(<<'.,.,', 'egrammar.ra', 678)
2530
- def _reduce_206(val, _values, result)
2992
+ module_eval(<<'.,.,', 'egrammar.ra', 798)
2993
+ def _reduce_241(val, _values, result)
2531
2994
  result = Factory.SUBLOCATE(val[0], val[1]); loc result, val[0]
2532
2995
  result
2533
2996
  end
2534
2997
  .,.,
2535
2998
 
2536
- module_eval(<<'.,.,', 'egrammar.ra', 679)
2537
- def _reduce_207(val, _values, result)
2999
+ module_eval(<<'.,.,', 'egrammar.ra', 799)
3000
+ def _reduce_242(val, _values, result)
2538
3001
  result = Factory.SUBLOCATE(val[0], val[1]); loc result, val[0]
2539
3002
  result
2540
3003
  end
2541
3004
  .,.,
2542
3005
 
2543
- module_eval(<<'.,.,', 'egrammar.ra', 682)
2544
- def _reduce_208(val, _values, result)
3006
+ module_eval(<<'.,.,', 'egrammar.ra', 802)
3007
+ def _reduce_243(val, _values, result)
2545
3008
  result = Factory.EPP(val[1], val[2]); loc result, val[0]
2546
3009
  result
2547
3010
  end
2548
3011
  .,.,
2549
3012
 
2550
- # reduce 209 omitted
3013
+ # reduce 244 omitted
2551
3014
 
2552
- # reduce 210 omitted
3015
+ # reduce 245 omitted
2553
3016
 
2554
- module_eval(<<'.,.,', 'egrammar.ra', 689)
2555
- def _reduce_211(val, _values, result)
3017
+ module_eval(<<'.,.,', 'egrammar.ra', 809)
3018
+ def _reduce_246(val, _values, result)
2556
3019
  result = nil
2557
3020
  result
2558
3021
  end
2559
3022
  .,.,
2560
3023
 
2561
- module_eval(<<'.,.,', 'egrammar.ra', 690)
2562
- def _reduce_212(val, _values, result)
3024
+ module_eval(<<'.,.,', 'egrammar.ra', 810)
3025
+ def _reduce_247(val, _values, result)
2563
3026
  result = []
2564
3027
  result
2565
3028
  end
2566
3029
  .,.,
2567
3030
 
2568
- module_eval(<<'.,.,', 'egrammar.ra', 691)
2569
- def _reduce_213(val, _values, result)
3031
+ module_eval(<<'.,.,', 'egrammar.ra', 811)
3032
+ def _reduce_248(val, _values, result)
2570
3033
  result = val[1]
2571
3034
  result
2572
3035
  end
2573
3036
  .,.,
2574
3037
 
2575
- module_eval(<<'.,.,', 'egrammar.ra', 694)
2576
- def _reduce_214(val, _values, result)
3038
+ module_eval(<<'.,.,', 'egrammar.ra', 814)
3039
+ def _reduce_249(val, _values, result)
2577
3040
  result = Factory.RENDER_STRING(val[0][:value]); loc result, val[0]
2578
3041
  result
2579
3042
  end
2580
3043
  .,.,
2581
3044
 
2582
- module_eval(<<'.,.,', 'egrammar.ra', 695)
2583
- def _reduce_215(val, _values, result)
3045
+ module_eval(<<'.,.,', 'egrammar.ra', 815)
3046
+ def _reduce_250(val, _values, result)
2584
3047
  result = Factory.RENDER_EXPR(val[1]); loc result, val[0], val[2]
2585
3048
  result
2586
3049
  end
2587
3050
  .,.,
2588
3051
 
2589
- module_eval(<<'.,.,', 'egrammar.ra', 696)
2590
- def _reduce_216(val, _values, result)
2591
- 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]
2592
3055
  result
2593
3056
  end
2594
3057
  .,.,
2595
3058
 
2596
- # reduce 217 omitted
3059
+ # reduce 252 omitted
2597
3060
 
2598
- # reduce 218 omitted
3061
+ # reduce 253 omitted
2599
3062
 
2600
- module_eval(<<'.,.,', 'egrammar.ra', 702)
2601
- def _reduce_219(val, _values, result)
3063
+ module_eval(<<'.,.,', 'egrammar.ra', 822)
3064
+ def _reduce_254(val, _values, result)
2602
3065
  result = Factory.QREF(val[0][:value]) ; loc result, val[0]
2603
3066
  result
2604
3067
  end
2605
3068
  .,.,
2606
3069
 
2607
- module_eval(<<'.,.,', 'egrammar.ra', 705)
2608
- def _reduce_220(val, _values, result)
3070
+ module_eval(<<'.,.,', 'egrammar.ra', 825)
3071
+ def _reduce_255(val, _values, result)
2609
3072
  result = Factory.literal(val[0][:value]); loc result, val[0]
2610
3073
  result
2611
3074
  end
2612
3075
  .,.,
2613
3076
 
2614
- # reduce 221 omitted
3077
+ # reduce 256 omitted
2615
3078
 
2616
- module_eval(<<'.,.,', 'egrammar.ra', 711)
2617
- def _reduce_222(val, _values, result)
3079
+ module_eval(<<'.,.,', 'egrammar.ra', 831)
3080
+ def _reduce_257(val, _values, result)
2618
3081
  result = nil
2619
3082
  result
2620
3083
  end
2621
3084
  .,.,
2622
3085
 
2623
- # reduce 223 omitted
3086
+ # reduce 258 omitted
2624
3087
 
2625
- # reduce 224 omitted
3088
+ # reduce 259 omitted
2626
3089
 
2627
- # reduce 225 omitted
3090
+ # reduce 260 omitted
2628
3091
 
2629
- # reduce 226 omitted
3092
+ # reduce 261 omitted
2630
3093
 
2631
- # reduce 227 omitted
3094
+ # reduce 262 omitted
2632
3095
 
2633
- # reduce 228 omitted
3096
+ # reduce 263 omitted
2634
3097
 
2635
- # reduce 229 omitted
3098
+ # reduce 264 omitted
2636
3099
 
2637
- # reduce 230 omitted
3100
+ # reduce 265 omitted
2638
3101
 
2639
- # reduce 231 omitted
3102
+ # reduce 266 omitted
2640
3103
 
2641
- # reduce 232 omitted
3104
+ # reduce 267 omitted
2642
3105
 
2643
- # reduce 233 omitted
3106
+ # reduce 268 omitted
2644
3107
 
2645
- # reduce 234 omitted
3108
+ # reduce 269 omitted
2646
3109
 
2647
- # reduce 235 omitted
3110
+ # reduce 270 omitted
2648
3111
 
2649
- # reduce 236 omitted
3112
+ # reduce 271 omitted
2650
3113
 
2651
- # reduce 237 omitted
3114
+ # reduce 272 omitted
2652
3115
 
2653
- # reduce 238 omitted
3116
+ # reduce 273 omitted
2654
3117
 
2655
- # reduce 239 omitted
3118
+ # reduce 274 omitted
2656
3119
 
2657
- # reduce 240 omitted
3120
+ # reduce 275 omitted
2658
3121
 
2659
- # reduce 241 omitted
3122
+ # reduce 276 omitted
2660
3123
 
2661
- # reduce 242 omitted
3124
+ # reduce 277 omitted
2662
3125
 
2663
- module_eval(<<'.,.,', 'egrammar.ra', 738)
2664
- def _reduce_243(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)
2665
3136
  result = nil
2666
3137
  result
2667
3138
  end