pareto-liana 0.0.0 → 0.0.1

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 (229) hide show
  1. package/dist/bin/compile_temp_schemas.js +18 -8
  2. package/dist/bin/seal.d.ts +0 -2
  3. package/dist/bin/seal.js +15 -34
  4. package/dist/bin/serialize_schemas.js +18 -8
  5. package/dist/data/temporary_schemas/all.d.ts +1 -1
  6. package/dist/data/temporary_schemas/all.js +68 -58
  7. package/dist/data/temporary_schemas/pareto/schema_tree.astn.js +7 -15
  8. package/dist/data/temporary_schemas/{exupery → pareto}/schemas/implementation/$.globals.astn.js +1 -1
  9. package/dist/data/temporary_schemas/{exupery → pareto}/schemas/implementation/$.module.astn.js +1 -1
  10. package/dist/data/temporary_schemas/pareto/schemas/implementation/$.resolvers.astn.js +210 -0
  11. package/dist/data/temporary_schemas/pareto/schemas/implementation/$.signatures.astn.js +14 -0
  12. package/dist/data/temporary_schemas/pareto/schemas/implementation/$.types.astn.js +210 -0
  13. package/dist/data/temporary_schemas/{exupery → pareto}/schemas/interface/$.globals.astn.js +1 -1
  14. package/dist/data/temporary_schemas/pareto/schemas/{schema → interface}/$.module.astn.js +1 -1
  15. package/dist/data/temporary_schemas/pareto/schemas/interface/$.resolvers.astn.js +89 -0
  16. package/dist/data/temporary_schemas/{exupery → pareto}/schemas/interface/$.signatures.astn.js +1 -1
  17. package/dist/data/temporary_schemas/pareto/schemas/interface/$.types.astn.js +89 -0
  18. package/dist/data/temporary_schemas/pareto/schemas/typescript_light/$.globals.astn.d.ts +2 -0
  19. package/dist/data/temporary_schemas/{exupery → pareto}/schemas/typescript_light/$.globals.astn.js +1 -1
  20. package/dist/data/temporary_schemas/pareto/schemas/typescript_light/$.module.astn.d.ts +2 -0
  21. package/dist/data/temporary_schemas/pareto/schemas/{unmarshall_errors → typescript_light}/$.module.astn.js +1 -1
  22. package/dist/data/temporary_schemas/pareto/schemas/typescript_light/$.types.astn.d.ts +2 -0
  23. package/dist/data/temporary_schemas/pareto/schemas/typescript_light/$.types.astn.js +186 -0
  24. package/dist/data/temporary_schemas/pareto-fountain-pen/schemas/block/$.types.astn.js +20 -1
  25. package/dist/data/temporary_schemas/{exupery → pareto-liana}/module.astn.js +1 -1
  26. package/dist/data/temporary_schemas/{exupery → pareto-liana}/operations.astn.js +1 -1
  27. package/dist/data/temporary_schemas/pareto-liana/schema_tree.astn.js +21 -0
  28. package/dist/data/temporary_schemas/{pareto → pareto-liana}/schemas/module/$.globals.astn.js +1 -1
  29. package/dist/data/temporary_schemas/{pareto → pareto-liana}/schemas/module/$.module.astn.js +1 -1
  30. package/dist/data/temporary_schemas/pareto-liana/schemas/module/$.resolvers.astn.js +41 -0
  31. package/dist/data/temporary_schemas/{pareto → pareto-liana}/schemas/module/$.signatures.astn.js +1 -1
  32. package/dist/data/temporary_schemas/pareto-liana/schemas/module/$.types.astn.js +19 -0
  33. package/dist/data/temporary_schemas/{pareto → pareto-liana}/schemas/schema/$.globals.astn.js +1 -1
  34. package/dist/data/temporary_schemas/{exupery/schemas/interface → pareto-liana/schemas/schema}/$.module.astn.js +1 -1
  35. package/dist/data/temporary_schemas/pareto-liana/schemas/schema/$.resolvers.astn.js +599 -0
  36. package/dist/data/temporary_schemas/{pareto → pareto-liana}/schemas/schema/$.signatures.astn.js +1 -1
  37. package/dist/data/temporary_schemas/pareto-liana/schemas/schema/$.types.astn.js +397 -0
  38. package/dist/data/temporary_schemas/{pareto → pareto-liana}/schemas/unmarshall_errors/$.globals.astn.js +1 -1
  39. package/dist/data/temporary_schemas/{exupery/schemas/typescript_light → pareto-liana/schemas/unmarshall_errors}/$.module.astn.js +1 -1
  40. package/dist/data/temporary_schemas/{pareto → pareto-liana}/schemas/unmarshall_errors/$.types.astn.js +1 -1
  41. package/dist/data/temporary_schemas/{pareto → pareto-liana}/schemas/unmarshall_result/$.globals.astn.js +1 -1
  42. package/dist/data/temporary_schemas/{pareto → pareto-liana}/schemas/unmarshall_result/$.module.astn.js +1 -1
  43. package/dist/data/temporary_schemas/{pareto → pareto-liana}/schemas/unmarshall_result/$.types.astn.js +1 -1
  44. package/dist/data/temporary_schemas/pareto-resources/schema_tree.astn.js +39 -37
  45. package/dist/data/temporary_schemas/pareto-resources/schemas/execute_any_command_executable/$.module.astn.js +4 -2
  46. package/dist/data/temporary_schemas/pareto-resources/schemas/execute_any_command_executable/$.types.astn.js +3 -3
  47. package/dist/data/temporary_schemas/pareto-resources/schemas/execute_any_query_executable/$.module.astn.js +4 -2
  48. package/dist/data/temporary_schemas/pareto-resources/schemas/execute_any_query_executable/$.types.astn.js +4 -4
  49. package/dist/data/temporary_schemas/pareto-resources/schemas/execute_any_smelly_command_executable/$.module.astn.js +4 -2
  50. package/dist/data/temporary_schemas/pareto-resources/schemas/execute_any_smelly_command_executable/$.types.astn.js +4 -4
  51. package/dist/data/temporary_schemas/pareto-resources/schemas/execute_command_executable/$.module.astn.js +4 -2
  52. package/dist/data/temporary_schemas/pareto-resources/schemas/execute_command_executable/$.types.astn.js +3 -3
  53. package/dist/data/temporary_schemas/pareto-resources/schemas/execute_query_executable/$.module.astn.js +4 -2
  54. package/dist/data/temporary_schemas/pareto-resources/schemas/execute_query_executable/$.types.astn.js +4 -4
  55. package/dist/data/temporary_schemas/pareto-resources/schemas/execute_query_executable_and_catch/$.module.astn.js +4 -2
  56. package/dist/data/temporary_schemas/pareto-resources/schemas/execute_query_executable_and_catch/$.types.astn.js +4 -4
  57. package/dist/data/temporary_schemas/pareto-resources/schemas/execute_smelly_command_executable/$.module.astn.js +4 -2
  58. package/dist/data/temporary_schemas/pareto-resources/schemas/execute_smelly_command_executable/$.types.astn.js +4 -4
  59. package/dist/data/temporary_schemas/pareto-resources/schemas/terminal_output/$.globals.astn.js +6 -0
  60. package/dist/data/temporary_schemas/pareto-resources/schemas/terminal_output/$.module.astn.js +8 -0
  61. package/dist/data/temporary_schemas/pareto-resources/schemas/terminal_output/$.types.astn.js +11 -0
  62. package/dist/implementation/generated/pareto/schemas/generic/unmarshall.d.ts +0 -0
  63. package/dist/implementation/generated/pareto/schemas/generic/unmarshall.js +307 -0
  64. package/dist/implementation/generated/pareto/schemas/schema/unmarshall.d.ts +0 -0
  65. package/dist/implementation/generated/pareto/schemas/schema/unmarshall.js +2265 -0
  66. package/dist/implementation/manual/commands/compile_temp_schemas.d.ts +4 -1
  67. package/dist/implementation/manual/commands/compile_temp_schemas.js +117 -85
  68. package/dist/implementation/manual/commands/seal.d.ts +0 -2
  69. package/dist/implementation/manual/commands/seal.js +63 -56
  70. package/dist/implementation/manual/commands/serialize_schemas.js +19 -9
  71. package/dist/implementation/manual/queries/load_pareto_document.d.ts +0 -2
  72. package/dist/implementation/manual/queries/load_pareto_document.js +31 -42
  73. package/dist/implementation/manual/queries/load_pareto_file.d.ts +0 -2
  74. package/dist/implementation/manual/queries/load_pareto_file.js +25 -35
  75. package/dist/implementation/manual/schemas/astn_authoring_target/refiners/unmarshall_result.d.ts +1 -1
  76. package/dist/implementation/manual/schemas/astn_authoring_target/refiners/unmarshall_result.js +41 -20
  77. package/dist/implementation/manual/schemas/load_pareto_document/transformers/fountain_pen.d.ts +1 -1
  78. package/dist/implementation/manual/schemas/load_pareto_document/transformers/fountain_pen.js +19 -9
  79. package/dist/implementation/manual/schemas/load_pareto_file/serializers.d.ts +1 -1
  80. package/dist/implementation/manual/schemas/load_pareto_file/serializers.js +18 -8
  81. package/dist/implementation/manual/schemas/load_pareto_file/transformers/fountain_pen.d.ts +1 -1
  82. package/dist/implementation/manual/schemas/load_pareto_file/transformers/fountain_pen.js +19 -9
  83. package/dist/implementation/manual/schemas/module/transformers/exupery_implementation.d.ts +1 -1
  84. package/dist/implementation/manual/schemas/module/transformers/exupery_implementation.js +19 -9
  85. package/dist/implementation/manual/schemas/module/transformers/exupery_interface.d.ts +1 -1
  86. package/dist/implementation/manual/schemas/module/transformers/exupery_interface.js +19 -9
  87. package/dist/implementation/manual/schemas/module/transformers/temp_typescript_implementation.js +21 -11
  88. package/dist/implementation/manual/schemas/module/transformers/temp_typescript_interface.js +21 -11
  89. package/dist/implementation/manual/schemas/schema/deserializers.d.ts +0 -12
  90. package/dist/implementation/manual/schemas/schema/deserializers.js +97 -100
  91. package/dist/implementation/manual/schemas/schema/transformers/astn_schema.d.ts +1 -1
  92. package/dist/implementation/manual/schemas/schema/transformers/astn_schema.js +44 -34
  93. package/dist/implementation/manual/schemas/schema/transformers/exupery_implementation_deserialize.d.ts +2 -2
  94. package/dist/implementation/manual/schemas/schema/transformers/exupery_implementation_deserialize.js +25 -15
  95. package/dist/implementation/manual/schemas/schema/transformers/exupery_implementation_main.d.ts +2 -2
  96. package/dist/implementation/manual/schemas/schema/transformers/exupery_implementation_main.js +21 -11
  97. package/dist/implementation/manual/schemas/schema/transformers/exupery_implementation_marshall.d.ts +3 -3
  98. package/dist/implementation/manual/schemas/schema/transformers/exupery_implementation_marshall.js +27 -17
  99. package/dist/implementation/manual/schemas/schema/transformers/exupery_implementation_migrate_boilerplate.d.ts +3 -3
  100. package/dist/implementation/manual/schemas/schema/transformers/exupery_implementation_migrate_boilerplate.js +28 -18
  101. package/dist/implementation/manual/schemas/schema/transformers/exupery_implementation_resolve.d.ts +3 -3
  102. package/dist/implementation/manual/schemas/schema/transformers/exupery_implementation_resolve.js +35 -25
  103. package/dist/implementation/manual/schemas/schema/transformers/exupery_implementation_serialize.d.ts +2 -2
  104. package/dist/implementation/manual/schemas/schema/transformers/exupery_implementation_serialize.js +25 -15
  105. package/dist/implementation/manual/schemas/schema/transformers/exupery_implementation_unmarshall.d.ts +3 -3
  106. package/dist/implementation/manual/schemas/schema/transformers/exupery_implementation_unmarshall.js +31 -21
  107. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_deserialize.d.ts +1 -1
  108. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_deserialize.js +19 -9
  109. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_main.d.ts +1 -1
  110. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_main.js +20 -10
  111. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_marshall.d.ts +1 -1
  112. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_marshall.js +19 -9
  113. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_migrate_boilerplate.d.ts +1 -1
  114. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_migrate_boilerplate.js +19 -9
  115. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_resolve.d.ts +2 -2
  116. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_resolve.js +22 -12
  117. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_serialize.d.ts +1 -1
  118. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_serialize.js +19 -9
  119. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_types.d.ts +2 -2
  120. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_types.js +24 -14
  121. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_unmarshall.d.ts +1 -1
  122. package/dist/implementation/manual/schemas/schema/transformers/exupery_interface_unmarshall.js +19 -9
  123. package/dist/implementation/manual/schemas/unmarshall_errors/transformers/fountain_pen.d.ts +4 -0
  124. package/dist/implementation/manual/schemas/unmarshall_errors/transformers/fountain_pen.js +36 -12
  125. package/dist/implementation/manual/schemas/unmarshall_result/deserializers.d.ts +0 -15
  126. package/dist/implementation/manual/schemas/unmarshall_result/deserializers.js +50 -48
  127. package/dist/implementation/manual/schemas/unmarshall_result/refiners/astn_parse_tree.d.ts +2 -1
  128. package/dist/implementation/manual/schemas/unmarshall_result/refiners/astn_parse_tree.js +27 -13
  129. package/dist/implementation/manual/schemas/unmarshall_result/transformers/unmarshall_errors.js +22 -12
  130. package/dist/implementation/temp/resolve_generic.d.ts +61 -0
  131. package/dist/implementation/temp/resolve_generic.js +223 -0
  132. package/dist/implementation/temp/resolvers/module.d.ts +3 -3
  133. package/dist/implementation/temp/resolvers/module.js +68 -97
  134. package/dist/implementation/temp/resolvers/schema.d.ts +24 -24
  135. package/dist/implementation/temp/resolvers/schema.js +886 -1337
  136. package/dist/implementation/temp_flatten_dictionary.d.ts +4 -0
  137. package/dist/implementation/temp_flatten_dictionary.js +49 -0
  138. package/dist/interface/generated/pareto/core/resolve.d.ts +12 -0
  139. package/dist/interface/generated/pareto/{schemas/schema/data_types → core}/resolve.js +1 -1
  140. package/dist/interface/generated/pareto/core/unconstrained.d.ts +19 -0
  141. package/dist/interface/generated/pareto/core/unconstrained.js +3 -0
  142. package/dist/interface/generated/pareto/core/unresolved.d.ts +181 -0
  143. package/dist/interface/generated/pareto/core/unresolved.js +3 -0
  144. package/dist/interface/generated/pareto/schemas/astn_schema/data/resolved.d.ts +1 -1
  145. package/dist/interface/generated/pareto/schemas/astn_schema/data/unresolved.d.ts +1 -1
  146. package/dist/interface/generated/pareto/schemas/astn_schema/resolve.d.ts +1 -1
  147. package/dist/interface/generated/pareto/schemas/module/data/resolved.d.ts +1 -1
  148. package/dist/interface/generated/pareto/schemas/module/data/unresolved.d.ts +1 -1
  149. package/dist/interface/generated/pareto/schemas/module/resolve.d.ts +4 -2
  150. package/dist/interface/generated/pareto/schemas/parse_tree/data.d.ts +1 -1
  151. package/dist/interface/generated/pareto/schemas/schema/data/resolved.d.ts +18 -5
  152. package/dist/interface/generated/pareto/schemas/schema/data/unresolved.d.ts +1 -1
  153. package/dist/interface/generated/pareto/schemas/schema/resolve.d.ts +38 -37
  154. package/dist/interface/generated/pareto/schemas/schema/unmarshall.d.ts +0 -0
  155. package/dist/interface/generated/pareto/schemas/schema/unmarshall.js +152 -0
  156. package/dist/interface/generated/pareto/schemas/token/data.d.ts +1 -1
  157. package/dist/interface/generated/pareto/schemas/unmarshall_errors/data.d.ts +1 -1
  158. package/dist/interface/resources.d.ts +1 -1
  159. package/dist/interface/signatures.d.ts +1 -1
  160. package/dist/interface/to_be_generated/deserialize_schema.d.ts +2 -1
  161. package/dist/interface/to_be_generated/temp_unmashall_result.d.ts +1 -1
  162. package/dist/modules/common_tool_signatures/implementation/manual/command_creators/create_file_to_file_command.d.ts +1 -1
  163. package/dist/modules/common_tool_signatures/implementation/manual/command_creators/create_file_to_file_command.js +19 -9
  164. package/dist/modules/common_tool_signatures/implementation/manual/command_creators/create_stream_to_stream_command.d.ts +1 -1
  165. package/dist/modules/common_tool_signatures/implementation/manual/command_creators/create_stream_to_stream_command.js +19 -9
  166. package/dist/modules/common_tool_signatures/implementation/manual/schemas/file_in_file_out/productions/text.d.ts +1 -1
  167. package/dist/modules/common_tool_signatures/implementation/manual/schemas/file_in_file_out/productions/text.js +18 -8
  168. package/dist/modules/common_tool_signatures/implementation/manual/schemas/file_in_file_out/refiners/main.d.ts +1 -1
  169. package/dist/modules/common_tool_signatures/implementation/manual/schemas/file_in_file_out/refiners/main.js +20 -10
  170. package/dist/modules/common_tool_signatures/implementation/manual/schemas/file_in_file_out/serializers.js +19 -9
  171. package/dist/modules/common_tool_signatures/implementation/manual/schemas/transform_file/serializers.js +19 -9
  172. package/dist/modules/common_tool_signatures/interface/signatures.d.ts +1 -1
  173. package/dist/modules/pareto-fountain-pen-directory/implementation/manual/commands/console_error.js +19 -9
  174. package/dist/modules/pareto-fountain-pen-directory/implementation/manual/commands/console_log.js +19 -9
  175. package/dist/modules/pareto-fountain-pen-directory/implementation/manual/commands/write_to_directory.js +20 -10
  176. package/dist/modules/pareto-fountain-pen-directory/implementation/manual/commands/write_to_file.js +23 -12
  177. package/dist/modules/pareto-fountain-pen-directory/implementation/manual/schemas/path/transformers/path.js +23 -12
  178. package/dist/modules/pareto-fountain-pen-directory/interface/resources.d.ts +1 -1
  179. package/dist/modules/pareto-fountain-pen-directory/interface/signatures.d.ts +1 -1
  180. package/dist/modules/pareto-fountain-pen-directory/interface/to_be_generated/write_to_dictionary.d.ts +1 -1
  181. package/dist/shorthands/module.js +18 -8
  182. package/dist/shorthands/schema.js +18 -8
  183. package/package.json +4 -5
  184. package/dist/data/temporary_schemas/exupery/schema_tree.astn.js +0 -13
  185. package/dist/data/temporary_schemas/exupery/schemas/implementation/$.resolvers.astn.js +0 -199
  186. package/dist/data/temporary_schemas/exupery/schemas/implementation/$.signatures.astn.js +0 -13
  187. package/dist/data/temporary_schemas/exupery/schemas/implementation/$.types.astn.js +0 -199
  188. package/dist/data/temporary_schemas/exupery/schemas/interface/$.resolvers.astn.js +0 -89
  189. package/dist/data/temporary_schemas/exupery/schemas/interface/$.types.astn.js +0 -89
  190. package/dist/data/temporary_schemas/exupery/schemas/typescript_light/$.types.astn.js +0 -139
  191. package/dist/data/temporary_schemas/pareto/schemas/module/$.resolvers.astn.js +0 -45
  192. package/dist/data/temporary_schemas/pareto/schemas/module/$.types.astn.js +0 -20
  193. package/dist/data/temporary_schemas/pareto/schemas/schema/$.resolvers.astn.js +0 -600
  194. package/dist/data/temporary_schemas/pareto/schemas/schema/$.types.astn.js +0 -397
  195. package/dist/interface/generated/pareto/schemas/module/data_types/resolve.d.ts +0 -15
  196. package/dist/interface/generated/pareto/schemas/module/data_types/resolve.js +0 -3
  197. package/dist/interface/generated/pareto/schemas/schema/data_types/resolve.d.ts +0 -410
  198. /package/dist/data/temporary_schemas/pareto/schemas/{unmarshall_errors → implementation}/$.globals.astn.d.ts +0 -0
  199. /package/dist/data/temporary_schemas/pareto/schemas/{unmarshall_errors → implementation}/$.module.astn.d.ts +0 -0
  200. /package/dist/data/temporary_schemas/pareto/schemas/{module → implementation}/$.resolvers.astn.d.ts +0 -0
  201. /package/dist/data/temporary_schemas/pareto/schemas/{module → implementation}/$.signatures.astn.d.ts +0 -0
  202. /package/dist/data/temporary_schemas/pareto/schemas/{unmarshall_errors → implementation}/$.types.astn.d.ts +0 -0
  203. /package/dist/data/temporary_schemas/pareto/schemas/{unmarshall_result → interface}/$.globals.astn.d.ts +0 -0
  204. /package/dist/data/temporary_schemas/pareto/schemas/{unmarshall_result → interface}/$.module.astn.d.ts +0 -0
  205. /package/dist/data/temporary_schemas/pareto/schemas/{schema → interface}/$.resolvers.astn.d.ts +0 -0
  206. /package/dist/data/temporary_schemas/pareto/schemas/{schema → interface}/$.signatures.astn.d.ts +0 -0
  207. /package/dist/data/temporary_schemas/pareto/schemas/{unmarshall_result → interface}/$.types.astn.d.ts +0 -0
  208. /package/dist/data/temporary_schemas/{exupery → pareto-liana}/module.astn.d.ts +0 -0
  209. /package/dist/data/temporary_schemas/{exupery → pareto-liana}/operations.astn.d.ts +0 -0
  210. /package/dist/data/temporary_schemas/{exupery → pareto-liana}/schema_tree.astn.d.ts +0 -0
  211. /package/dist/data/temporary_schemas/{exupery/schemas/implementation → pareto-liana/schemas/module}/$.globals.astn.d.ts +0 -0
  212. /package/dist/data/temporary_schemas/{exupery/schemas/implementation → pareto-liana/schemas/module}/$.module.astn.d.ts +0 -0
  213. /package/dist/data/temporary_schemas/{exupery/schemas/implementation → pareto-liana/schemas/module}/$.resolvers.astn.d.ts +0 -0
  214. /package/dist/data/temporary_schemas/{exupery/schemas/implementation → pareto-liana/schemas/module}/$.signatures.astn.d.ts +0 -0
  215. /package/dist/data/temporary_schemas/{exupery/schemas/implementation → pareto-liana/schemas/module}/$.types.astn.d.ts +0 -0
  216. /package/dist/data/temporary_schemas/{exupery/schemas/interface → pareto-liana/schemas/schema}/$.globals.astn.d.ts +0 -0
  217. /package/dist/data/temporary_schemas/{exupery/schemas/interface → pareto-liana/schemas/schema}/$.module.astn.d.ts +0 -0
  218. /package/dist/data/temporary_schemas/{exupery/schemas/interface → pareto-liana/schemas/schema}/$.resolvers.astn.d.ts +0 -0
  219. /package/dist/data/temporary_schemas/{exupery/schemas/interface → pareto-liana/schemas/schema}/$.signatures.astn.d.ts +0 -0
  220. /package/dist/data/temporary_schemas/{exupery/schemas/interface → pareto-liana/schemas/schema}/$.types.astn.d.ts +0 -0
  221. /package/dist/data/temporary_schemas/{exupery/schemas/typescript_light → pareto-liana/schemas/unmarshall_errors}/$.globals.astn.d.ts +0 -0
  222. /package/dist/data/temporary_schemas/{exupery/schemas/typescript_light → pareto-liana/schemas/unmarshall_errors}/$.module.astn.d.ts +0 -0
  223. /package/dist/data/temporary_schemas/{exupery/schemas/typescript_light → pareto-liana/schemas/unmarshall_errors}/$.types.astn.d.ts +0 -0
  224. /package/dist/data/temporary_schemas/{pareto/schemas/module → pareto-liana/schemas/unmarshall_result}/$.globals.astn.d.ts +0 -0
  225. /package/dist/data/temporary_schemas/{pareto/schemas/module → pareto-liana/schemas/unmarshall_result}/$.module.astn.d.ts +0 -0
  226. /package/dist/data/temporary_schemas/{pareto/schemas/module → pareto-liana/schemas/unmarshall_result}/$.types.astn.d.ts +0 -0
  227. /package/dist/data/temporary_schemas/{pareto/schemas/schema → pareto-resources/schemas/terminal_output}/$.globals.astn.d.ts +0 -0
  228. /package/dist/data/temporary_schemas/{pareto/schemas/schema → pareto-resources/schemas/terminal_output}/$.module.astn.d.ts +0 -0
  229. /package/dist/data/temporary_schemas/{pareto/schemas/schema → pareto-resources/schemas/terminal_output}/$.types.astn.d.ts +0 -0
@@ -0,0 +1,599 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.$ = void 0;
4
+ const schema_1 = require("../../../../../shorthands/schema");
5
+ exports.$ = (0, schema_1.resolvers)({
6
+ "Type": (0, schema_1.resolver)(schema_1.r.group({
7
+ "node": schema_1.r.component("Type Node", {
8
+ "globals": schema_1.av.parameter("globals"),
9
+ "imports": schema_1.av.parameter("imports"),
10
+ }, {
11
+ "noncircular sibling types": schema_1.al.parameter(("noncircular sibling types")),
12
+ "possibly circular dependent sibling types": schema_1.al.parameter(("possibly circular dependent sibling types")),
13
+ })
14
+ })),
15
+ "Types": (0, schema_1.resolver)(schema_1.r.dictionary(schema_1.r.component("Type", {
16
+ "globals": schema_1.av.parameter("globals"),
17
+ "imports": schema_1.av.parameter("imports"),
18
+ }, {
19
+ "noncircular sibling types": schema_1.al.not_circular_dependent_siblings(),
20
+ "possibly circular dependent sibling types": schema_1.al.possibly_circular_dependent_siblings(),
21
+ }))),
22
+ "Globals": (0, schema_1.resolver)(schema_1.r.group({
23
+ "complexity": schema_1.r.state_group({
24
+ "unconstrained": (0, schema_1.state)(schema_1.r.nothing()),
25
+ "constrained": (0, schema_1.state)(schema_1.r.nothing()),
26
+ }),
27
+ "text types": schema_1.r.dictionary(schema_1.r.component("Text Type", {}, {})),
28
+ "number types": schema_1.r.dictionary(schema_1.r.component("Number Type", {}, {})),
29
+ })),
30
+ "Number Type": (0, schema_1.resolver)(schema_1.r.group({
31
+ "precision": schema_1.r.state_group({
32
+ "approximation": (0, schema_1.state)(schema_1.r.group({
33
+ "significant digits": schema_1.r.number(),
34
+ })),
35
+ "exact": (0, schema_1.state)(schema_1.r.group({
36
+ "decimal separator offset": schema_1.r.optional(schema_1.r.number()),
37
+ "type": schema_1.r.state_group({
38
+ "integer": (0, schema_1.state)(schema_1.r.nothing()),
39
+ "natural": (0, schema_1.state)(schema_1.r.nothing()),
40
+ "positive natural": (0, schema_1.state)(schema_1.r.nothing()),
41
+ }),
42
+ })),
43
+ })
44
+ })),
45
+ "Text Type": (0, schema_1.resolver)(schema_1.r.group({
46
+ "type": schema_1.r.state_group({
47
+ "multi line": (0, schema_1.state)(schema_1.r.nothing()),
48
+ "single line": (0, schema_1.state)(schema_1.r.nothing()),
49
+ }),
50
+ })),
51
+ "Type Reference": (0, schema_1.resolver)(schema_1.r.group({
52
+ "location": schema_1.r.state_group({
53
+ "internal": (0, schema_1.state)(schema_1.r.reference(schema_1.ls.parameter("types"))),
54
+ "external": (0, schema_1.state_constrained)({ "import": schema_1.oc.assert_set(schema_1.pvs.parameter("imports")) }, schema_1.r.group({
55
+ "import": schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.option_constraint("import", []))),
56
+ "type": schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.sibling("import", [schema_1.vst.reference(), schema_1.vst.group("schema"), schema_1.vst.reference(), schema_1.vst.group("types"), schema_1.vst.component()]))),
57
+ })),
58
+ }),
59
+ "resulting node": schema_1.r.reference_derived(schema_1.gvs.state_group("location", (0, schema_1.reference)("Type Node"), [])),
60
+ })),
61
+ "Type Node Reference": (0, schema_1.resolver)(schema_1.r.group({
62
+ "type location": schema_1.r.component("Type Reference", null, null),
63
+ "tail": schema_1.r.list_with_result(schema_1.r.state_group({
64
+ "dictionary": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.list_cursor([]), "dictionary") }, schema_1.r.nothing()),
65
+ "group": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.list_cursor([]), "group") }, schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.option_constraint("definition", [schema_1.vst.component()])))),
66
+ "list": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.list_cursor([]), "list") }, schema_1.r.nothing()),
67
+ "optional": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.list_cursor([]), "optional") }, schema_1.r.nothing()),
68
+ "state group": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.list_cursor([]), "state group") }, schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.option_constraint("definition", [])))),
69
+ }), (0, schema_1.reference)("Type Node")),
70
+ "resulting node": schema_1.r.reference_derived(schema_1.gvs.list("tail", [])),
71
+ })),
72
+ "Group": (0, schema_1.resolver)(schema_1.r.dictionary(schema_1.r.group({
73
+ "description": schema_1.r.optional(schema_1.r.text()),
74
+ "node": schema_1.r.component("Type Node", {
75
+ "globals": schema_1.av.parameter("globals"),
76
+ "imports": schema_1.av.parameter("imports"),
77
+ }, {
78
+ "noncircular sibling types": schema_1.al.parameter("noncircular sibling types"),
79
+ "possibly circular dependent sibling types": schema_1.al.parameter("possibly circular dependent sibling types"),
80
+ }),
81
+ }))),
82
+ "Dictionary": (0, schema_1.resolver)(schema_1.r.group({
83
+ "node": schema_1.r.component("Type Node", {
84
+ "globals": schema_1.av.parameter("globals"),
85
+ "imports": schema_1.av.parameter("imports"),
86
+ }, {
87
+ "noncircular sibling types": schema_1.al.parameter("noncircular sibling types"),
88
+ "possibly circular dependent sibling types": schema_1.al.parameter("possibly circular dependent sibling types"),
89
+ }),
90
+ "ordered": schema_1.r.boolean(),
91
+ })),
92
+ "Type Node": (0, schema_1.resolver)(schema_1.r.state_group({
93
+ "boolean": (0, schema_1.state)(schema_1.r.nothing()),
94
+ "component": (0, schema_1.state)(schema_1.r.state_group({
95
+ "external": (0, schema_1.state_constrained)({ "import": schema_1.oc.assert_set(schema_1.pvs.parameter("imports")) }, schema_1.r.group({
96
+ "import": schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.option_constraint("import", []))),
97
+ "type": schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.sibling("import", [schema_1.vst.reference(), schema_1.vst.group("schema"), schema_1.vst.reference(), schema_1.vst.group("types"), schema_1.vst.component()]))),
98
+ })),
99
+ "internal": (0, schema_1.state)(schema_1.r.reference(schema_1.ls.parameter("noncircular sibling types"))),
100
+ "internal cyclic": (0, schema_1.state)(schema_1.r.reference(schema_1.ls.parameter("possibly circular dependent sibling types"))),
101
+ })),
102
+ "dictionary": (0, schema_1.state)(schema_1.r.component("Dictionary", {
103
+ "globals": schema_1.av.parameter("globals"),
104
+ "imports": schema_1.av.parameter("imports"),
105
+ }, {
106
+ "noncircular sibling types": schema_1.al.parameter("noncircular sibling types"),
107
+ "possibly circular dependent sibling types": schema_1.al.parameter("possibly circular dependent sibling types"),
108
+ })),
109
+ "group": (0, schema_1.state)(schema_1.r.component("Group", {
110
+ "globals": schema_1.av.parameter("globals"),
111
+ "imports": schema_1.av.parameter("imports"),
112
+ }, {
113
+ "noncircular sibling types": schema_1.al.parameter("noncircular sibling types"),
114
+ "possibly circular dependent sibling types": schema_1.al.parameter("possibly circular dependent sibling types"),
115
+ })),
116
+ "list": (0, schema_1.state)(schema_1.r.group({
117
+ "node": schema_1.r.component("Type Node", null, null),
118
+ })),
119
+ "nothing": (0, schema_1.state)(schema_1.r.nothing()),
120
+ "number": (0, schema_1.state)(schema_1.r.state_group({
121
+ "global": (0, schema_1.state_constrained)({ "globals": schema_1.oc.assert_set(schema_1.pvs.parameter("globals")) }, schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.option_constraint("globals", [schema_1.vst.group("number types")])))),
122
+ "local": (0, schema_1.state)(schema_1.r.component("Number Type", {}, {})),
123
+ })),
124
+ "optional": (0, schema_1.state)(schema_1.r.component("Type Node", null, null)),
125
+ "reference": (0, schema_1.state)(schema_1.r.group({
126
+ "referent": schema_1.r.component("Type Node Reference", {
127
+ "imports": schema_1.av.parameter("imports"),
128
+ }, {
129
+ "types": schema_1.al.parameter("noncircular sibling types"),
130
+ }),
131
+ "type": schema_1.r.state_group({
132
+ "derived": (0, schema_1.state)(schema_1.r.nothing()),
133
+ "selected": (0, schema_1.state_constrained)({ "dictionary": schema_1.oc.state(schema_1.gvs.sibling("referent", [schema_1.vst.component(), schema_1.vst.group("resulting node"), schema_1.vst.reference()]), "dictionary") }, schema_1.r.group({
134
+ "dictionary": schema_1.r.reference_derived(schema_1.gvs.option_constraint("dictionary", [])),
135
+ "dependency": schema_1.r.state_group({
136
+ "acyclic": (0, schema_1.state)(schema_1.r.nothing()),
137
+ "cyclic": (0, schema_1.state)(schema_1.r.nothing()),
138
+ "stack": (0, schema_1.state)(schema_1.r.nothing()),
139
+ })
140
+ })),
141
+ }),
142
+ })),
143
+ "state group": (0, schema_1.state)(schema_1.r.dictionary(schema_1.r.group({
144
+ "node": schema_1.r.component("Type Node", null, null),
145
+ "description": schema_1.r.optional(schema_1.r.text()),
146
+ }))),
147
+ "text": (0, schema_1.state)(schema_1.r.state_group({
148
+ "global": (0, schema_1.state_constrained)({ "globals": schema_1.oc.assert_set(schema_1.pvs.parameter("globals")) }, schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.option_constraint("globals", [schema_1.vst.group("text types")])))),
149
+ "local": (0, schema_1.state)(schema_1.r.component("Text Type", {}, {})),
150
+ })),
151
+ })),
152
+ "Relative Value Selection": (0, schema_1.resolver)(schema_1.r.group({
153
+ "path": schema_1.r.list_with_result(schema_1.r.state_group({
154
+ "component": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.list_cursor([]), "component") }, schema_1.r.nothing()),
155
+ "group": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.list_cursor([]), "group") }, schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.option_constraint("definition", [schema_1.vst.component()])))),
156
+ "reference": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.list_cursor([]), "reference") }, schema_1.r.group({
157
+ "definition": schema_1.r.reference_derived(schema_1.gvs.option_constraint("definition", [])),
158
+ })),
159
+ }), (0, schema_1.reference)("Type Node")),
160
+ "resulting node": schema_1.r.reference_derived(schema_1.gvs.list("path", [])),
161
+ })),
162
+ "Presence": (0, schema_1.resolver)(schema_1.r.state_group({
163
+ "optional": (0, schema_1.state)(schema_1.r.nothing()),
164
+ "required": (0, schema_1.state)(schema_1.r.nothing()),
165
+ })),
166
+ "Signature Parameters": (0, schema_1.resolver)(schema_1.r.group({
167
+ "values": schema_1.r.dictionary(schema_1.r.group({
168
+ "data type": schema_1.r.component("Type Reference", {
169
+ "imports": schema_1.av.optional(schema_1.ovi.set(schema_1.gvs.parameter("imports", []))),
170
+ }, {
171
+ "types": schema_1.al.dictionary(schema_1.gvs.parameter("types", [])),
172
+ }),
173
+ "presence": schema_1.r.component("Presence", {}, {}),
174
+ })),
175
+ "lookups": schema_1.r.dictionary(schema_1.r.group({
176
+ "referent": schema_1.r.component("Type Reference", {
177
+ "imports": schema_1.av.optional(schema_1.ovi.set(schema_1.gvs.parameter("imports", []))),
178
+ }, {
179
+ "types": schema_1.al.dictionary(schema_1.gvs.parameter("types", [])),
180
+ }, {
181
+ "dictionary": schema_1.pc.property([schema_1.vst.group("resulting node"), schema_1.vst.reference()], "dictionary"),
182
+ }),
183
+ "dictionary": schema_1.r.reference_derived(schema_1.gvs.component("referent", "dictionary", [])),
184
+ "type": schema_1.r.state_group({
185
+ "cyclic": (0, schema_1.state)(schema_1.r.nothing()),
186
+ "acyclic": (0, schema_1.state)(schema_1.r.nothing()),
187
+ "stack": (0, schema_1.state)(schema_1.r.nothing()),
188
+ }),
189
+ "presence": schema_1.r.component("Presence", {}, {}),
190
+ }))
191
+ })),
192
+ "Signature": (0, schema_1.resolver)(schema_1.r.group({
193
+ "type": schema_1.r.reference_derived(schema_1.gvs.parameter("type", [])),
194
+ "parameters": schema_1.r.state_group({
195
+ "local": (0, schema_1.state)(schema_1.r.component("Signature Parameters", {
196
+ "types": schema_1.av.parameter("types"),
197
+ "imports": schema_1.av.parameter("imports"),
198
+ }, {})),
199
+ "same as": (0, schema_1.state)(schema_1.r.reference(schema_1.ls.parameter("sibling signatures"))),
200
+ }),
201
+ "resolved parameters": schema_1.r.reference_derived(schema_1.gvs.state_group("parameters", (0, schema_1.reference)("Signature Parameters"), [])),
202
+ })),
203
+ "Signatures": (0, schema_1.resolver)(schema_1.r.dictionary_linked('dense', schema_1.gvs.parameter("types", []), schema_1.r.component("Signature", {
204
+ "types": schema_1.av.parameter("types"),
205
+ "type": schema_1.av.required(schema_1.gvs.linked_entry([schema_1.vst.component()])),
206
+ "imports": schema_1.av.parameter("imports"),
207
+ }, {
208
+ "sibling signatures": schema_1.al.not_circular_dependent_siblings(),
209
+ }))),
210
+ "Optional Value Initialization": (0, schema_1.resolver)(schema_1.r.state_group({
211
+ "not set": (0, schema_1.state)(schema_1.r.nothing()),
212
+ "set": (0, schema_1.state)(schema_1.r.component("Guaranteed Value Selection", null, null)),
213
+ "selection": (0, schema_1.state)(schema_1.r.component("Possible Value Selection", null, null)),
214
+ })),
215
+ "Possible Value Selection": (0, schema_1.resolver)(schema_1.r.state_group({
216
+ "parameter": (0, schema_1.state)(schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.parameter("signature", [schema_1.vst.group("resolved parameters"), schema_1.vst.reference(), schema_1.vst.group("values")])))),
217
+ "result": (0, schema_1.state)(schema_1.r.state_group({
218
+ "state group": (0, schema_1.state)(schema_1.r.group({
219
+ "property": schema_1.r.reference(schema_1.ls.parameter("sibling property resolvers"), {
220
+ "state group": schema_1.pc.property([schema_1.vst.group("resolver"), schema_1.vst.component()], "state group"),
221
+ }),
222
+ "state group": schema_1.r.reference_derived(schema_1.gvs.reference("property", "state group", [])),
223
+ "result": schema_1.r.component("Type Reference", {
224
+ "imports": schema_1.av.parameter("imports"),
225
+ }, {
226
+ "types": schema_1.al.dictionary(schema_1.gvs.parameter("types", [])),
227
+ }),
228
+ })),
229
+ "optional value": (0, schema_1.state)(schema_1.r.group({
230
+ "property": schema_1.r.reference(schema_1.ls.parameter("sibling property resolvers"), {
231
+ "optional": schema_1.pc.property([schema_1.vst.group("resolver"), schema_1.vst.component()], "optional"),
232
+ }),
233
+ "optional value": schema_1.r.reference_derived(schema_1.gvs.reference("property", "optional", [])),
234
+ "result": schema_1.r.component("Type Reference", {
235
+ "imports": schema_1.av.parameter("imports"),
236
+ }, {
237
+ "types": schema_1.al.dictionary(schema_1.gvs.parameter("types", [])),
238
+ }),
239
+ })),
240
+ }))
241
+ })),
242
+ "Guaranteed Value Selection": (0, schema_1.resolver)(schema_1.r.group({
243
+ "start": schema_1.r.state_group({
244
+ //stack
245
+ "list cursor": (0, schema_1.state)(schema_1.r.nothing()),
246
+ "linked entry": (0, schema_1.state)(schema_1.r.nothing()),
247
+ "sibling": (0, schema_1.state)(schema_1.r.reference(schema_1.ls.parameter("sibling property resolvers"))),
248
+ "parent sibling": (0, schema_1.state)(schema_1.r.reference(schema_1.ls.parameter("parent sibling property resolvers"))),
249
+ "option constraint": (0, schema_1.state_constrained)({ "oc": schema_1.oc.assert_set(schema_1.pvs.parameter("option constraints")) }, schema_1.r.reference_stack(schema_1.gvs.dictionary(schema_1.gvs.option_constraint("oc", [])))),
250
+ //siblings
251
+ "constraint": (0, schema_1.state)(schema_1.r.state_group({
252
+ "component": (0, schema_1.state)(schema_1.r.group({
253
+ "property": schema_1.r.reference(schema_1.ls.parameter("sibling property resolvers"), {
254
+ "component": schema_1.pc.property([schema_1.vst.group("resolver"), schema_1.vst.component()], "component"),
255
+ }),
256
+ "constraint": schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.reference("property", "component", [schema_1.vst.group("constraints"), schema_1.vst.component()]))),
257
+ })),
258
+ "reference": (0, schema_1.state)(schema_1.r.group({
259
+ "property": schema_1.r.reference(schema_1.ls.parameter("sibling property resolvers"), {
260
+ "reference": schema_1.pc.property([schema_1.vst.group("resolver"), schema_1.vst.component()], "reference"),
261
+ "selected": schema_1.pc.constraint("reference", [schema_1.vst.group("type")], "selected"),
262
+ }),
263
+ "constraint": schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.reference("property", "selected", [schema_1.vst.group("constraints"), schema_1.vst.component()]))),
264
+ })),
265
+ })),
266
+ "parameter": (0, schema_1.state)(schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.parameter("signature", [schema_1.vst.group("resolved parameters"), schema_1.vst.reference(), schema_1.vst.group("values")])))),
267
+ "result": (0, schema_1.state)(schema_1.r.state_group({
268
+ "list": (0, schema_1.state)(schema_1.r.group({
269
+ "property": schema_1.r.reference(schema_1.ls.parameter("sibling property resolvers"), {
270
+ "list": schema_1.pc.property([schema_1.vst.group("resolver"), schema_1.vst.component()], "list"),
271
+ "result": schema_1.pc.constraint("list", [schema_1.vst.group("result")]),
272
+ }),
273
+ "list result": schema_1.r.reference_derived(schema_1.gvs.reference("property", "result", [])),
274
+ })),
275
+ "state group": (0, schema_1.state)(schema_1.r.group({
276
+ "property": schema_1.r.reference(schema_1.ls.parameter("sibling property resolvers"), {
277
+ "state group": schema_1.pc.property([schema_1.vst.group("resolver"), schema_1.vst.component()], "state group"),
278
+ }),
279
+ "state group": schema_1.r.reference_derived(schema_1.gvs.reference("property", "state group", [])),
280
+ "result": schema_1.r.component("Type Reference", {
281
+ "imports": schema_1.av.parameter("imports"),
282
+ }, {
283
+ "types": schema_1.al.dictionary(schema_1.gvs.parameter("types", [])),
284
+ }),
285
+ })),
286
+ "optional value": (0, schema_1.state)(schema_1.r.group({
287
+ "property": schema_1.r.reference(schema_1.ls.parameter("sibling property resolvers"), {
288
+ "optional": schema_1.pc.property([schema_1.vst.group("resolver"), schema_1.vst.component()], "optional"),
289
+ }),
290
+ "optional value": schema_1.r.reference_derived(schema_1.gvs.reference("property", "optional", [])),
291
+ "result": schema_1.r.component("Type Reference", {
292
+ "imports": schema_1.av.parameter("imports"),
293
+ }, {
294
+ "types": schema_1.al.dictionary(schema_1.gvs.parameter("types", [])),
295
+ }),
296
+ })),
297
+ }))
298
+ }),
299
+ "tail": schema_1.r.component("Relative Value Selection", {
300
+ "node": schema_1.av.required(schema_1.gvs.state_group("start", (0, schema_1.reference)("Type Node"), [])),
301
+ }, {}),
302
+ "resulting node": schema_1.r.reference_derived(schema_1.gvs.sibling("tail", [schema_1.vst.component(), schema_1.vst.group("resulting node"), schema_1.vst.reference()])),
303
+ })),
304
+ "Lookup Selection": (0, schema_1.resolver)(schema_1.r.group({
305
+ "type": schema_1.r.state_group({
306
+ "dictionary": (0, schema_1.state)(schema_1.r.group({
307
+ "selection": schema_1.r.component("Guaranteed Value Selection", null, null, {
308
+ "dictionary": schema_1.pc.property([schema_1.vst.group("resulting node"), schema_1.vst.reference()], "dictionary"),
309
+ }),
310
+ "selected dictionary": schema_1.r.reference_derived(schema_1.gvs.component("selection", "dictionary", []))
311
+ })),
312
+ "parameter": (0, schema_1.state)(schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.parameter("signature", [schema_1.vst.group("resolved parameters"), schema_1.vst.reference(), schema_1.vst.group("lookups")])))),
313
+ "not circular dependent siblings": (0, schema_1.state_constrained)({ "cd": schema_1.oc.assert_set(schema_1.pvs.parameter("current ordered dictionary")) }, schema_1.r.reference_derived(schema_1.gvs.option_constraint("cd", []))),
314
+ "possibly circular dependent siblings": (0, schema_1.state_constrained)({ "cd": schema_1.oc.assert_set(schema_1.pvs.parameter("current dictionary")) }, schema_1.r.reference_derived(schema_1.gvs.option_constraint("cd", []))),
315
+ }),
316
+ "resulting dictionary": schema_1.r.reference_derived(schema_1.gvs.state_group("type", (0, schema_1.reference)("Dictionary"), [])),
317
+ })),
318
+ "Resolvers": (0, schema_1.resolver)(schema_1.r.dictionary_linked('dense', schema_1.gvs.parameter("signatures", []), schema_1.r.group({
319
+ "signature": schema_1.r.reference_derived(schema_1.gvs.linked_entry([])),
320
+ "type resolver": schema_1.r.component("Node Resolver", {
321
+ "option constraints": schema_1.av.optional(schema_1.ovi.not_set()),
322
+ "list cursor": schema_1.av.optional(schema_1.ovi.not_set()),
323
+ "linked entry": schema_1.av.optional(schema_1.ovi.not_set()),
324
+ "current ordered dictionary": schema_1.av.optional(schema_1.ovi.not_set()),
325
+ "current dictionary": schema_1.av.optional(schema_1.ovi.not_set()),
326
+ "signature": schema_1.av.required(schema_1.gvs.sibling("signature", [schema_1.vst.reference()])),
327
+ "definition": schema_1.av.required(schema_1.gvs.linked_entry([schema_1.vst.component(), schema_1.vst.group("type"), schema_1.vst.reference(), schema_1.vst.group("node")])),
328
+ "signatures": schema_1.av.parameter("signatures"),
329
+ "imports": schema_1.av.optional(schema_1.ovi.set(schema_1.gvs.parameter("imports", []))),
330
+ "types": schema_1.av.parameter("types"),
331
+ }, {
332
+ "sibling property resolvers": schema_1.al.not_set(),
333
+ "parent sibling property resolvers": schema_1.al.not_set(),
334
+ }),
335
+ }))),
336
+ "Constraint": (0, schema_1.resolver)(schema_1.r.group({
337
+ "selection": schema_1.r.component("Relative Value Selection", null, null),
338
+ "type": schema_1.r.state_group({
339
+ "state": (0, schema_1.state_constrained)({ "state group": schema_1.oc.state(schema_1.gvs.sibling("selection", [schema_1.vst.component(), schema_1.vst.group("resulting node"), schema_1.vst.reference()]), "state group") }, schema_1.r.group({
340
+ "selected state group": schema_1.r.reference_derived(schema_1.gvs.option_constraint("state group", [])),
341
+ "state": schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.sibling("selected state group", [schema_1.vst.reference()]))),
342
+ })),
343
+ "optional value": (0, schema_1.state_constrained)({ "optional": schema_1.oc.state(schema_1.gvs.sibling("selection", [schema_1.vst.component(), schema_1.vst.group("resulting node"), schema_1.vst.reference()]), "state group") }, schema_1.r.group({
344
+ "selected optional value": schema_1.r.reference_derived(schema_1.gvs.option_constraint("optional", [])),
345
+ })),
346
+ }),
347
+ })),
348
+ "Option Constraints": (0, schema_1.resolver)(schema_1.r.dictionary(schema_1.r.state_group({
349
+ "state": (0, schema_1.state)(schema_1.r.group({
350
+ "selection": schema_1.r.component("Guaranteed Value Selection", null, null, {
351
+ "state group": schema_1.pc.property([schema_1.vst.group("resulting node"), schema_1.vst.reference()], "state group")
352
+ }),
353
+ "selected state group": schema_1.r.reference_derived(schema_1.gvs.component("selection", "state group", [])),
354
+ "state": schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.sibling("selected state group", [schema_1.vst.reference()]))),
355
+ })),
356
+ "assert is set": (0, schema_1.state)(schema_1.r.component("Possible Value Selection", null, null)),
357
+ }))),
358
+ "Property Constraint": (0, schema_1.resolver)(schema_1.r.group({
359
+ "start": schema_1.r.state_group({
360
+ "property": (0, schema_1.state)(schema_1.r.nothing()),
361
+ "sibling": (0, schema_1.state)(schema_1.r.component("Reference To Property Constraint", {}, {
362
+ "property constraints": schema_1.al.parameter("property constraints"),
363
+ })),
364
+ }),
365
+ "constraint": schema_1.r.component("Constraint", {
366
+ "node": schema_1.av.required(schema_1.gvs.state_group("start", (0, schema_1.reference)("Type Node"), [])),
367
+ }, {}),
368
+ })),
369
+ "Property Constraints": (0, schema_1.resolver)(schema_1.r.dictionary(schema_1.r.component("Property Constraint", {}, {
370
+ "property constraints": schema_1.al.not_circular_dependent_siblings(),
371
+ }))),
372
+ "Reference To Property Constraint": (0, schema_1.resolver)(schema_1.r.reference(schema_1.ls.parameter("property constraints"))), //FIXME: inline
373
+ "Node Resolver Group": (0, schema_1.resolver)(schema_1.r.dictionary_linked('dense', schema_1.gvs.parameter("definition", []), schema_1.r.group({
374
+ "definition": schema_1.r.reference_derived(schema_1.gvs.linked_entry([])),
375
+ "resolver": schema_1.r.component("Node Resolver", {
376
+ "definition": schema_1.av.required(schema_1.gvs.linked_entry([schema_1.vst.group("node"), schema_1.vst.component()])),
377
+ "types": schema_1.av.parameter("types"),
378
+ "imports": schema_1.av.parameter("imports"),
379
+ "signature": schema_1.av.parameter("signature"),
380
+ "signatures": schema_1.av.parameter("signatures"),
381
+ "list cursor": schema_1.av.parameter("list cursor"),
382
+ "linked entry": schema_1.av.parameter("linked entry"),
383
+ "current dictionary": schema_1.av.parameter("current dictionary"),
384
+ "option constraints": schema_1.av.parameter("option constraints"),
385
+ "current ordered dictionary": schema_1.av.parameter("current ordered dictionary"),
386
+ }, {
387
+ "sibling property resolvers": schema_1.al.not_circular_dependent_siblings(),
388
+ "parent sibling property resolvers": schema_1.al.parameter("sibling property resolvers"),
389
+ }),
390
+ }))),
391
+ "Node Resolver List Result": (0, schema_1.resolver)(schema_1.r.component("Type Reference", {
392
+ "imports": schema_1.av.parameter("imports"),
393
+ }, {
394
+ "types": schema_1.al.parameter("types"),
395
+ })),
396
+ "Benchmark": (0, schema_1.resolver)(schema_1.r.group({
397
+ "selection": schema_1.r.component("Guaranteed Value Selection", null, null, {
398
+ "dictionary": schema_1.pc.property([schema_1.vst.group("resulting node"), schema_1.vst.reference()], "dictionary"),
399
+ }),
400
+ "resulting dictionary": schema_1.r.reference_derived(schema_1.gvs.component("selection", "dictionary", [])),
401
+ "dense": schema_1.r.boolean(),
402
+ })),
403
+ "Node Resolver": (0, schema_1.resolver)(schema_1.r.state_group({
404
+ "boolean": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.parameter("definition", []), "boolean") }, schema_1.r.nothing()),
405
+ "component": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.parameter("definition", []), "component") }, schema_1.r.group({
406
+ "location": schema_1.r.state_group({
407
+ "external": (0, schema_1.state_constrained)({
408
+ "import": schema_1.oc.assert_set(schema_1.pvs.parameter("imports")),
409
+ }, schema_1.r.group({
410
+ "import": schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.option_constraint("import", [])), {
411
+ "constrained": schema_1.pc.property([schema_1.vst.group("schema"), schema_1.vst.reference(), schema_1.vst.group("complexity")], "constrained"),
412
+ }),
413
+ "type": schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.reference("import", "constrained", [schema_1.vst.component(), schema_1.vst.group("signatures"), schema_1.vst.group("types"), schema_1.vst.component()]))),
414
+ })),
415
+ "internal": (0, schema_1.state)(schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.parameter("signatures", [])))),
416
+ }),
417
+ "signature": schema_1.r.reference_derived(schema_1.gvs.state_group("location", (0, schema_1.reference)("Signature"), [])),
418
+ "arguments": schema_1.r.optional(schema_1.r.group({
419
+ "values": schema_1.r.optional(schema_1.r.dictionary_linked('dense', schema_1.gvs.parent_sibling("signature", [schema_1.vst.reference(), schema_1.vst.component(), schema_1.vst.group("resolved parameters"), schema_1.vst.reference(), schema_1.vst.group("values")]), schema_1.r.state_group({
420
+ "optional": (0, schema_1.state)(schema_1.r.component("Optional Value Initialization", null, null)),
421
+ "required": (0, schema_1.state)(schema_1.r.component("Guaranteed Value Selection", null, null)),
422
+ "parameter": (0, schema_1.state)(schema_1.r.reference(schema_1.gvs.dictionary(schema_1.gvs.parameter("signature", [schema_1.vst.group("resolved parameters"), schema_1.vst.reference(), schema_1.vst.group("values")])))),
423
+ }))),
424
+ "lookups": schema_1.r.optional(schema_1.r.dictionary_linked('dense', schema_1.gvs.parent_sibling("signature", [schema_1.vst.reference(), schema_1.vst.component(), schema_1.vst.group("resolved parameters"), schema_1.vst.reference(), schema_1.vst.group("lookups")]), schema_1.r.state_group({
425
+ "empty stack": (0, schema_1.state)(schema_1.r.nothing()),
426
+ "not set": (0, schema_1.state)(schema_1.r.nothing()),
427
+ "selection": (0, schema_1.state)(schema_1.r.component("Lookup Selection", null, null)),
428
+ "stack": (0, schema_1.state)(schema_1.r.group({
429
+ "stack": schema_1.r.component("Lookup Selection", null, null),
430
+ "element": schema_1.r.component("Lookup Selection", null, null),
431
+ })),
432
+ }))),
433
+ })),
434
+ "constraints": schema_1.r.component("Property Constraints", {
435
+ "node": schema_1.av.required(schema_1.gvs.sibling("signature", [schema_1.vst.reference(), schema_1.vst.component(), schema_1.vst.group("type"), schema_1.vst.reference(), schema_1.vst.group("node"), schema_1.vst.component(),])),
436
+ }, {})
437
+ })),
438
+ "dictionary": (0, schema_1.state_constrained)({
439
+ "definition": schema_1.oc.state(schema_1.gvs.parameter("definition", []), "dictionary"),
440
+ }, schema_1.r.group({
441
+ "definition": schema_1.r.reference_derived(schema_1.gvs.option_constraint("definition", [])),
442
+ "benchmark": schema_1.r.optional(schema_1.r.component("Benchmark", null, null)),
443
+ "resolver": schema_1.r.component("Node Resolver", {
444
+ "linked entry": schema_1.av.optional(schema_1.ovi.selection(schema_1.pvs.optional_value("benchmark", (0, schema_1.reference)("Benchmark")))),
445
+ "definition": schema_1.av.required(schema_1.gvs.sibling("definition", [schema_1.vst.reference(), schema_1.vst.group("node")])),
446
+ "current dictionary": schema_1.av.optional(schema_1.ovi.set(schema_1.gvs.sibling("definition", []))),
447
+ "current ordered dictionary": schema_1.av.optional(schema_1.ovi.set(schema_1.gvs.sibling("definition", []))), //FIXME: validate that the dictionary is ordered
448
+ "types": schema_1.av.parameter("types"),
449
+ "imports": schema_1.av.parameter("imports"),
450
+ "signature": schema_1.av.parameter("signature"),
451
+ "signatures": schema_1.av.parameter("signatures"),
452
+ "list cursor": schema_1.av.parameter("list cursor"),
453
+ "option constraints": schema_1.av.parameter("option constraints"),
454
+ }, null),
455
+ })),
456
+ "group": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.parameter("definition", []), "group") }, schema_1.r.component("Node Resolver Group", {
457
+ "definition": schema_1.av.required(schema_1.gvs.option_constraint("definition", [])),
458
+ "types": schema_1.av.parameter("types"),
459
+ "imports": schema_1.av.parameter("imports"),
460
+ "signature": schema_1.av.parameter("signature"),
461
+ "signatures": schema_1.av.parameter("signatures"),
462
+ "list cursor": schema_1.av.parameter("list cursor"),
463
+ "linked entry": schema_1.av.parameter("linked entry"),
464
+ "current dictionary": schema_1.av.parameter("current dictionary"),
465
+ "option constraints": schema_1.av.parameter("option constraints"),
466
+ "current ordered dictionary": schema_1.av.parameter("current ordered dictionary"),
467
+ }, {
468
+ "sibling property resolvers": schema_1.al.parameter("sibling property resolvers"),
469
+ "parent sibling property resolvers": schema_1.al.parameter("sibling property resolvers"),
470
+ })),
471
+ "list": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.parameter("definition", []), "list") }, schema_1.r.group({
472
+ "definition": schema_1.r.reference_derived(schema_1.gvs.option_constraint("definition", [])),
473
+ "result": schema_1.r.optional(schema_1.r.component("Node Resolver List Result", {
474
+ "imports": schema_1.av.parameter("imports"),
475
+ }, {
476
+ "types": schema_1.al.dictionary(schema_1.gvs.parameter("types", [])),
477
+ })),
478
+ "resolver": schema_1.r.component("Node Resolver", {
479
+ "list cursor": schema_1.av.optional(schema_1.ovi.set(schema_1.gvs.optional_value("result", (0, schema_1.reference)("Node Resolver List Result"), [schema_1.vst.component()]))),
480
+ "definition": schema_1.av.required(schema_1.gvs.option_constraint("definition", [schema_1.vst.group("node")])),
481
+ "types": schema_1.av.parameter("types"),
482
+ "imports": schema_1.av.parameter("imports"),
483
+ "signature": schema_1.av.parameter("signature"),
484
+ "signatures": schema_1.av.parameter("signatures"),
485
+ "linked entry": schema_1.av.parameter("linked entry"),
486
+ "current dictionary": schema_1.av.parameter("current dictionary"),
487
+ "option constraints": schema_1.av.parameter("option constraints"),
488
+ "current ordered dictionary": schema_1.av.parameter("current ordered dictionary"),
489
+ }, null),
490
+ })),
491
+ "nothing": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.parameter("definition", []), "nothing") }, schema_1.r.nothing()),
492
+ "number": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.parameter("definition", []), "number") }, schema_1.r.nothing()),
493
+ "optional": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.parameter("definition", []), "optional") }, schema_1.r.group({
494
+ "constraints": schema_1.r.component("Option Constraints", null, null),
495
+ "resolver": schema_1.r.component("Node Resolver", {
496
+ "definition": schema_1.av.required(schema_1.gvs.option_constraint("definition", [schema_1.vst.component()])),
497
+ "types": schema_1.av.parameter("types"),
498
+ "imports": schema_1.av.parameter("imports"),
499
+ "signature": schema_1.av.parameter("signature"),
500
+ "signatures": schema_1.av.parameter("signatures"),
501
+ "list cursor": schema_1.av.parameter("list cursor"),
502
+ "linked entry": schema_1.av.parameter("linked entry"),
503
+ "current dictionary": schema_1.av.parameter("current dictionary"),
504
+ "option constraints": schema_1.av.parameter("option constraints"),
505
+ "current ordered dictionary": schema_1.av.parameter("current ordered dictionary"),
506
+ }, null),
507
+ })),
508
+ "reference": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.parameter("definition", []), "reference") }, schema_1.r.group({
509
+ "definition": schema_1.r.reference_derived(schema_1.gvs.option_constraint("definition", [])),
510
+ "type": schema_1.r.state_group({
511
+ "derived": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.sibling("definition", [schema_1.vst.reference(), schema_1.vst.group("type")]), "derived") }, schema_1.r.group({
512
+ "value": schema_1.r.component("Guaranteed Value Selection", null, null),
513
+ })),
514
+ "selected": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.sibling("definition", [schema_1.vst.reference(), schema_1.vst.group("type")]), "selected") }, schema_1.r.group({
515
+ "definition": schema_1.r.reference_derived(schema_1.gvs.option_constraint("definition", [])),
516
+ "lookup": schema_1.r.component("Lookup Selection", null, null),
517
+ "constraints": schema_1.r.component("Property Constraints", {
518
+ "node": schema_1.av.required(schema_1.gvs.sibling("lookup", [schema_1.vst.component(), schema_1.vst.group("resulting dictionary"), schema_1.vst.reference(), schema_1.vst.group("node")])),
519
+ }, {})
520
+ })),
521
+ }),
522
+ })),
523
+ "state group": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.parameter("definition", []), "state group") }, schema_1.r.group({
524
+ "definition": schema_1.r.reference_derived(schema_1.gvs.option_constraint("definition", [])),
525
+ "states": schema_1.r.dictionary_linked('dense', schema_1.gvs.option_constraint("definition", []), schema_1.r.group({
526
+ "constraints": schema_1.r.component("Option Constraints", null, null),
527
+ "resolver": schema_1.r.component("Node Resolver", {
528
+ "definition": schema_1.av.required(schema_1.gvs.linked_entry([schema_1.vst.group("node")])),
529
+ "types": schema_1.av.parameter("types"),
530
+ "imports": schema_1.av.parameter("imports"),
531
+ "signature": schema_1.av.parameter("signature"),
532
+ "signatures": schema_1.av.parameter("signatures"),
533
+ "list cursor": schema_1.av.parameter("list cursor"),
534
+ "linked entry": schema_1.av.parameter("linked entry"),
535
+ "current dictionary": schema_1.av.parameter("current dictionary"),
536
+ "option constraints": schema_1.av.parameter("option constraints"),
537
+ "current ordered dictionary": schema_1.av.parameter("current ordered dictionary"),
538
+ }, null),
539
+ })),
540
+ })),
541
+ "text": (0, schema_1.state_constrained)({ "definition": schema_1.oc.state(schema_1.gvs.parameter("definition", []), "text") }, schema_1.r.nothing()),
542
+ // "type parameter": state_constrained({ "definition": oc.state(gvs.parameter("definition", []), "type parameter") }, r.nothing()),
543
+ })),
544
+ "Resolve Logic": (0, schema_1.resolver)(schema_1.r.group({
545
+ "signatures": schema_1.r.group({
546
+ "types": schema_1.r.component("Signatures", {
547
+ "types": schema_1.av.parameter("types"),
548
+ "imports": schema_1.av.parameter("imports"),
549
+ }, {}),
550
+ }),
551
+ "resolvers": schema_1.r.component("Resolvers", {
552
+ "signatures": schema_1.av.required(schema_1.gvs.sibling("signatures", [schema_1.vst.group("types")])),
553
+ "types": schema_1.av.parameter("types"),
554
+ "imports": schema_1.av.parameter("imports"),
555
+ }, {})
556
+ })),
557
+ "Schemas": (0, schema_1.resolver)(schema_1.r.dictionary(schema_1.r.component("Schema Tree", {}, {
558
+ "sibling schemas": schema_1.al.stack(schema_1.ls.parameter("sibling schemas"), schema_1.ls.not_circular_dependent_siblings()),
559
+ }))),
560
+ "Type Specification": (0, schema_1.resolver)(schema_1.r.group({
561
+ "schema": schema_1.r.component("Schema Tree", {}, {
562
+ "sibling schemas": schema_1.al.empty_stack(),
563
+ }),
564
+ "schema path": schema_1.r.list(schema_1.r.text()),
565
+ "type": schema_1.r.text(),
566
+ })),
567
+ "Schema Tree": (0, schema_1.resolver)(schema_1.r.state_group({
568
+ "schema": (0, schema_1.state)(schema_1.r.component("Schema", {}, {
569
+ "sibling schemas": schema_1.al.parameter("sibling schemas"),
570
+ })),
571
+ "set": (0, schema_1.state)(schema_1.r.component("Schemas", {}, {
572
+ "sibling schemas": schema_1.al.parameter("sibling schemas"),
573
+ }))
574
+ })),
575
+ "Schema": (0, schema_1.resolver)(schema_1.r.group({
576
+ "imports": schema_1.r.component("Imports", {}, {
577
+ "sibling schemas": schema_1.al.parameter("sibling schemas"),
578
+ }),
579
+ "globals": schema_1.r.component("Globals", {}, {}),
580
+ "types": schema_1.r.component("Types", {
581
+ "globals": schema_1.av.optional(schema_1.ovi.set(schema_1.gvs.sibling("globals", []))),
582
+ "imports": schema_1.av.optional(schema_1.ovi.set(schema_1.gvs.sibling("imports", [schema_1.vst.component()]))),
583
+ }, {}),
584
+ "complexity": schema_1.r.state_group({
585
+ "constrained": (0, schema_1.state)(schema_1.r.component("Resolve Logic", {
586
+ "imports": schema_1.av.required(schema_1.gvs.sibling("imports", [schema_1.vst.component()])),
587
+ "types": schema_1.av.required(schema_1.gvs.sibling("types", [schema_1.vst.component()])),
588
+ }, {})),
589
+ "unconstrained": (0, schema_1.state)(schema_1.r.nothing()),
590
+ }),
591
+ })),
592
+ "Imports": (0, schema_1.resolver)(schema_1.r.dictionary(schema_1.r.group({
593
+ "schema set child": schema_1.r.reference_stack(schema_1.ls.parameter("sibling schemas"), {
594
+ "schema": schema_1.pc.property([schema_1.vst.component()], "schema"),
595
+ }),
596
+ "schema": schema_1.r.reference_derived(schema_1.gvs.reference("schema set child", "schema", [])),
597
+ }))),
598
+ });
599
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiJC5yZXNvbHZlcnMuYXN0bi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9kYXRhL3RlbXBvcmFyeV9zY2hlbWFzL3BhcmV0by1saWFuYS9zY2hlbWFzL3NjaGVtYS8kLnJlc29sdmVycy5hc3RuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLDZEQUV5QztBQUs1QixRQUFBLENBQUMsR0FBaUIsSUFBQSxrQkFBUyxFQUNwQztJQUNJLE1BQU0sRUFBRSxJQUFBLGlCQUFRLEVBQUMsVUFBQyxDQUFDLEtBQUssQ0FBQztRQUNyQixNQUFNLEVBQUUsVUFBQyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUU7WUFDN0IsU0FBUyxFQUFFLFdBQUUsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDO1lBQ2xDLFNBQVMsRUFBRSxXQUFFLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQztTQUNyQyxFQUFFO1lBQ0MsMkJBQTJCLEVBQUUsV0FBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLDJCQUEyQixDQUFDLENBQUM7WUFDeEUsMkNBQTJDLEVBQUUsV0FBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLDJDQUEyQyxDQUFDLENBQUM7U0FDM0csQ0FBQztLQUNMLENBQUMsQ0FBQztJQUVILE9BQU8sRUFBRSxJQUFBLGlCQUFRLEVBQUMsVUFBQyxDQUFDLFVBQVUsQ0FBQyxVQUFDLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRTtRQUMvQyxTQUFTLEVBQUUsV0FBRSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUM7UUFDbEMsU0FBUyxFQUFFLFdBQUUsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDO0tBQ3JDLEVBQUU7UUFDQywyQkFBMkIsRUFBRSxXQUFFLENBQUMsK0JBQStCLEVBQUU7UUFDakUsMkNBQTJDLEVBQUUsV0FBRSxDQUFDLG9DQUFvQyxFQUFFO0tBQ3pGLENBQUMsQ0FBQyxDQUFDO0lBRUosU0FBUyxFQUFFLElBQUEsaUJBQVEsRUFB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