@tiangong-lca/tidas-sdk 0.1.45 → 0.2.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 (182) hide show
  1. package/README.md +120 -236
  2. package/dist/contracts/tidas-contract.js.map +1 -1
  3. package/dist/core/base/TidasEntity.d.ts +2 -2
  4. package/dist/core/base/TidasEntity.d.ts.map +1 -1
  5. package/dist/core/base/TidasEntity.js +4 -1
  6. package/dist/core/base/TidasEntity.js.map +1 -1
  7. package/dist/core/config/GlobalConfig.d.ts.map +1 -1
  8. package/dist/core/config/GlobalConfig.js +1 -3
  9. package/dist/core/config/GlobalConfig.js.map +1 -1
  10. package/dist/core/config/ValidationConfig.d.ts +7 -7
  11. package/dist/core/config/ValidationConfig.d.ts.map +1 -1
  12. package/dist/core/config/ValidationConfig.js +4 -2
  13. package/dist/core/config/ValidationConfig.js.map +1 -1
  14. package/dist/core/copilot/ai.d.ts.map +1 -1
  15. package/dist/core/copilot/ai.js +13 -5
  16. package/dist/core/copilot/ai.js.map +1 -1
  17. package/dist/core/copilot/base.js.map +1 -1
  18. package/dist/core/copilot/index.d.ts +1 -0
  19. package/dist/core/copilot/index.js +1 -0
  20. package/dist/core/entities/TidasContact.d.ts.map +1 -1
  21. package/dist/core/entities/TidasContact.js.map +1 -1
  22. package/dist/core/entities/TidasFlow.d.ts.map +1 -1
  23. package/dist/core/entities/TidasFlow.js +1 -1
  24. package/dist/core/entities/TidasFlow.js.map +1 -1
  25. package/dist/core/entities/TidasFlowProperty.d.ts.map +1 -1
  26. package/dist/core/entities/TidasFlowProperty.js.map +1 -1
  27. package/dist/core/entities/TidasLCIAMethod.d.ts.map +1 -1
  28. package/dist/core/entities/TidasLCIAMethod.js.map +1 -1
  29. package/dist/core/entities/TidasLifeCycleModel.d.ts.map +1 -1
  30. package/dist/core/entities/TidasLifeCycleModel.js.map +1 -1
  31. package/dist/core/entities/TidasProcess.d.ts.map +1 -1
  32. package/dist/core/entities/TidasProcess.js +1 -1
  33. package/dist/core/entities/TidasProcess.js.map +1 -1
  34. package/dist/core/entities/TidasSource.d.ts.map +1 -1
  35. package/dist/core/entities/TidasSource.js.map +1 -1
  36. package/dist/core/entities/TidasUnitGroup.d.ts.map +1 -1
  37. package/dist/core/entities/TidasUnitGroup.js.map +1 -1
  38. package/dist/core/factories/index.d.ts.map +1 -1
  39. package/dist/core/factories/index.js +4 -2
  40. package/dist/core/factories/index.js.map +1 -1
  41. package/dist/core/validation/cas-number.d.ts.map +1 -1
  42. package/dist/core/validation/cas-number.js +2 -1
  43. package/dist/core/validation/cas-number.js.map +1 -1
  44. package/dist/core/validation/json-schema.d.ts +25 -0
  45. package/dist/core/validation/json-schema.d.ts.map +1 -0
  46. package/dist/core/validation/json-schema.js +170 -0
  47. package/dist/core/validation/json-schema.js.map +1 -0
  48. package/dist/core/validation/tidas-languages.d.ts +1 -1
  49. package/dist/core/validation/tidas-languages.d.ts.map +1 -1
  50. package/dist/core/validation/tidas-languages.js.map +1 -1
  51. package/dist/core/zod-factories.d.ts +1 -1
  52. package/dist/core/zod-factories.d.ts.map +1 -1
  53. package/dist/core/zod-factories.js.map +1 -1
  54. package/dist/core/zod-proxy.d.ts +2 -2
  55. package/dist/core/zod-proxy.d.ts.map +1 -1
  56. package/dist/core/zod-proxy.js +5 -3
  57. package/dist/core/zod-proxy.js.map +1 -1
  58. package/dist/data/bundled-methodologies.json +3 -3
  59. package/dist/index.d.ts.map +1 -1
  60. package/dist/index.js +1 -0
  61. package/dist/index.js.map +1 -1
  62. package/dist/parity/constants.d.ts +1 -1
  63. package/dist/parity/constants.d.ts.map +1 -1
  64. package/dist/parity/report.js.map +1 -1
  65. package/dist/parity/validate.js.map +1 -1
  66. package/dist/parity/validation-rules.d.ts.map +1 -1
  67. package/dist/parity/validation-rules.js +9 -6
  68. package/dist/parity/validation-rules.js.map +1 -1
  69. package/dist/runtime-assets/asset-lock.v1.json +490 -0
  70. package/dist/runtime-assets/eilcd/schemas/ILCD_Common_DataTypes.xsd +3 -3
  71. package/dist/runtime-assets/eilcd/schemas/ILCD_Common_Groups.xsd +2 -2
  72. package/dist/runtime-assets/tidas/methodologies/elementary_flow_taxonomy_extension.v1.json +102 -0
  73. package/dist/runtime-assets/tidas/methodologies/tidas_flows.yaml +2 -2
  74. package/dist/runtime-assets/tidas/schema.lock.json +28 -28
  75. package/dist/runtime-assets/tidas/schemas/tidas_flows.json +61 -3
  76. package/dist/runtime-assets/tidas/schemas/tidas_flows_elementary_category.json +71 -1
  77. package/dist/runtime-assets/tidas/schemas/tidas_sources.json +2 -4
  78. package/dist/runtime-assets/tidas/schemas_zh/tidas_flows.json +61 -3
  79. package/dist/runtime-assets/tidas/schemas_zh/tidas_flows_elementary_category.json +70 -0
  80. package/dist/runtime-assets/tidas/schemas_zh/tidas_sources.json +2 -4
  81. package/dist/schemas/index.d.ts +6 -6
  82. package/dist/schemas/index.d.ts.map +1 -1
  83. package/dist/schemas/index.js +1 -1
  84. package/dist/schemas/index.js.map +1 -1
  85. package/dist/schemas/tidas_contacts.schema.d.ts +140 -148
  86. package/dist/schemas/tidas_contacts.schema.d.ts.map +1 -1
  87. package/dist/schemas/tidas_contacts.schema.js +21 -19
  88. package/dist/schemas/tidas_contacts.schema.js.map +1 -1
  89. package/dist/schemas/tidas_contacts_category.schema.d.ts.map +1 -1
  90. package/dist/schemas/tidas_contacts_category.schema.js +7 -3
  91. package/dist/schemas/tidas_contacts_category.schema.js.map +1 -1
  92. package/dist/schemas/tidas_data_types.schema.d.ts +100 -100
  93. package/dist/schemas/tidas_data_types.schema.d.ts.map +1 -1
  94. package/dist/schemas/tidas_data_types.schema.js +31 -26
  95. package/dist/schemas/tidas_data_types.schema.js.map +1 -1
  96. package/dist/schemas/tidas_flowproperties.schema.d.ts +159 -159
  97. package/dist/schemas/tidas_flowproperties.schema.d.ts.map +1 -1
  98. package/dist/schemas/tidas_flowproperties.schema.js +20 -16
  99. package/dist/schemas/tidas_flowproperties.schema.js.map +1 -1
  100. package/dist/schemas/tidas_flowproperties_category.schema.d.ts.map +1 -1
  101. package/dist/schemas/tidas_flowproperties_category.schema.js +4 -3
  102. package/dist/schemas/tidas_flowproperties_category.schema.js.map +1 -1
  103. package/dist/schemas/tidas_flows.schema.d.ts +291 -255
  104. package/dist/schemas/tidas_flows.schema.d.ts.map +1 -1
  105. package/dist/schemas/tidas_flows.schema.js +182 -29
  106. package/dist/schemas/tidas_flows.schema.js.map +1 -1
  107. package/dist/schemas/tidas_flows_elementary_category.schema.d.ts.map +1 -1
  108. package/dist/schemas/tidas_flows_elementary_category.schema.js +157 -13
  109. package/dist/schemas/tidas_flows_elementary_category.schema.js.map +1 -1
  110. package/dist/schemas/tidas_flows_product_category.schema.d.ts.map +1 -1
  111. package/dist/schemas/tidas_flows_product_category.schema.js +4920 -115
  112. package/dist/schemas/tidas_flows_product_category.schema.js.map +1 -1
  113. package/dist/schemas/tidas_lciamethods.schema.d.ts +689 -701
  114. package/dist/schemas/tidas_lciamethods.schema.d.ts.map +1 -1
  115. package/dist/schemas/tidas_lciamethods.schema.js +100 -90
  116. package/dist/schemas/tidas_lciamethods.schema.js.map +1 -1
  117. package/dist/schemas/tidas_lciamethods_category.schema.d.ts.map +1 -1
  118. package/dist/schemas/tidas_lciamethods_category.schema.js +66 -5
  119. package/dist/schemas/tidas_lciamethods_category.schema.js.map +1 -1
  120. package/dist/schemas/tidas_lifecyclemodels.schema.d.ts +464 -480
  121. package/dist/schemas/tidas_lifecyclemodels.schema.d.ts.map +1 -1
  122. package/dist/schemas/tidas_lifecyclemodels.schema.js +139 -98
  123. package/dist/schemas/tidas_lifecyclemodels.schema.js.map +1 -1
  124. package/dist/schemas/tidas_locations_category.schema.d.ts.map +1 -1
  125. package/dist/schemas/tidas_locations_category.schema.js +655 -3
  126. package/dist/schemas/tidas_locations_category.schema.js.map +1 -1
  127. package/dist/schemas/tidas_processes.schema.d.ts +1481 -3495
  128. package/dist/schemas/tidas_processes.schema.d.ts.map +1 -1
  129. package/dist/schemas/tidas_processes.schema.js +131 -116
  130. package/dist/schemas/tidas_processes.schema.js.map +1 -1
  131. package/dist/schemas/tidas_processes_category.schema.d.ts.map +1 -1
  132. package/dist/schemas/tidas_processes_category.schema.js +954 -43
  133. package/dist/schemas/tidas_processes_category.schema.js.map +1 -1
  134. package/dist/schemas/tidas_sources.schema.d.ts +115 -115
  135. package/dist/schemas/tidas_sources.schema.d.ts.map +1 -1
  136. package/dist/schemas/tidas_sources.schema.js +16 -18
  137. package/dist/schemas/tidas_sources.schema.js.map +1 -1
  138. package/dist/schemas/tidas_sources_category.schema.d.ts.map +1 -1
  139. package/dist/schemas/tidas_sources_category.schema.js +4 -3
  140. package/dist/schemas/tidas_sources_category.schema.js.map +1 -1
  141. package/dist/schemas/tidas_unitgroups.schema.d.ts +132 -132
  142. package/dist/schemas/tidas_unitgroups.schema.d.ts.map +1 -1
  143. package/dist/schemas/tidas_unitgroups.schema.js +20 -16
  144. package/dist/schemas/tidas_unitgroups.schema.js.map +1 -1
  145. package/dist/schemas/tidas_unitgroups_category.schema.d.ts.map +1 -1
  146. package/dist/schemas/tidas_unitgroups_category.schema.js +4 -3
  147. package/dist/schemas/tidas_unitgroups_category.schema.js.map +1 -1
  148. package/dist/services/copilot-service.d.ts.map +1 -1
  149. package/dist/services/copilot-service.js +1 -0
  150. package/dist/services/copilot-service.js.map +1 -1
  151. package/dist/services/index.d.ts.map +1 -1
  152. package/dist/services/index.js +1 -0
  153. package/dist/services/index.js.map +1 -1
  154. package/dist/tools/convert-directory.d.ts +4 -2
  155. package/dist/tools/convert-directory.d.ts.map +1 -1
  156. package/dist/tools/convert-directory.js +4 -4
  157. package/dist/tools/convert-directory.js.map +1 -1
  158. package/dist/tools/methodology-schema-parity.js.map +1 -1
  159. package/dist/tools/runtime-assets.js.map +1 -1
  160. package/dist/types/multi-lang-types.d.ts.map +1 -1
  161. package/dist/types/multi-lang-types.js +2 -0
  162. package/dist/types/multi-lang-types.js.map +1 -1
  163. package/dist/types/tidas_flowproperties.d.ts.map +1 -1
  164. package/dist/types/tidas_flows.d.ts +2 -2
  165. package/dist/types/tidas_flows.d.ts.map +1 -1
  166. package/dist/types/tidas_flows_elementary_category.d.ts +40 -0
  167. package/dist/types/tidas_flows_elementary_category.d.ts.map +1 -1
  168. package/dist/types/tidas_lciamethods.d.ts.map +1 -1
  169. package/dist/types/tidas_lifecyclemodels.d.ts.map +1 -1
  170. package/dist/types/tidas_processes.d.ts.map +1 -1
  171. package/dist/types/tidas_unitgroups.d.ts.map +1 -1
  172. package/dist/utils/diff.d.ts.map +1 -1
  173. package/dist/utils/diff.js +13 -13
  174. package/dist/utils/diff.js.map +1 -1
  175. package/dist/utils/markdown.js.map +1 -1
  176. package/dist/utils/object-utils.js.map +1 -1
  177. package/dist/utils/uuid.js.map +1 -1
  178. package/dist/xml/index.d.ts +3 -2
  179. package/dist/xml/index.d.ts.map +1 -1
  180. package/dist/xml/index.js +1 -1
  181. package/dist/xml/index.js.map +1 -1
  182. package/package.json +38 -45
@@ -1 +1 @@
1
- {"version":3,"file":"tidas_lifecyclemodels.schema.d.ts","sourceRoot":"","sources":["../../src/schemas/tidas_lifecyclemodels.schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAgBxB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwehC,CAAC"}
1
+ {"version":3,"file":"tidas_lifecyclemodels.schema.d.ts","sourceRoot":"","sources":["../../src/schemas/tidas_lifecyclemodels.schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoBxB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAunBhC,CAAC"}
@@ -1,18 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LifecyclemodelsSchema = void 0;
4
- // Generated by ts-to-zod
4
+ // Generated directly from TIDAS JSON Schema: tidas_lifecyclemodels.json
5
5
  const zod_1 = require("zod");
6
+ const json_schema_1 = require("./../core/validation/json-schema");
6
7
  const tidas_data_types_schema_1 = require("./tidas_data_types.schema");
8
+ const tidas_processes_category_schema_1 = require("./tidas_processes_category.schema");
7
9
  exports.LifecyclemodelsSchema = zod_1.z.object({
8
10
  lifeCycleModelDataSet: zod_1.z.object({
9
- '@xmlns': zod_1.z.literal('http://eplca.jrc.ec.europa.eu/ILCD/LifeCycleModel/2017'),
10
- '@xmlns:acme': zod_1.z.literal('http://acme.com/custom'),
11
- '@xmlns:common': zod_1.z.literal('http://lca.jrc.it/ILCD/Common'),
12
- '@xmlns:xsi': zod_1.z.literal('http://www.w3.org/2001/XMLSchema-instance'),
13
- '@locations': zod_1.z.literal('../ILCDLocations.xml'),
14
- '@version': zod_1.z.literal('1.1'),
15
- '@xsi:schemaLocation': zod_1.z.literal('http://eplca.jrc.ec.europa.eu/ILCD/LifeCycleModel/2017 ../../schemas/ILCD_LifeCycleModelDataSet.xsd'),
11
+ '@xmlns': zod_1.z.intersection(zod_1.z.literal('http://eplca.jrc.ec.europa.eu/ILCD/LifeCycleModel/2017'), zod_1.z.string()),
12
+ '@xmlns:acme': zod_1.z.intersection(zod_1.z.literal('http://acme.com/custom'), zod_1.z.string()),
13
+ '@xmlns:common': zod_1.z.intersection(zod_1.z.literal('http://lca.jrc.it/ILCD/Common'), zod_1.z.string()),
14
+ '@xmlns:xsi': zod_1.z.intersection(zod_1.z.literal('http://www.w3.org/2001/XMLSchema-instance'), zod_1.z.string()),
15
+ '@locations': zod_1.z.intersection(zod_1.z.literal('../ILCDLocations.xml'), zod_1.z.string()),
16
+ '@version': zod_1.z.intersection(zod_1.z.literal('1.1'), zod_1.z.string()),
17
+ '@xsi:schemaLocation': zod_1.z.intersection(zod_1.z.literal('http://eplca.jrc.ec.europa.eu/ILCD/LifeCycleModel/2017 ../../schemas/ILCD_LifeCycleModelDataSet.xsd'), zod_1.z.string()),
16
18
  lifeCycleModelInformation: zod_1.z.object({
17
19
  dataSetInformation: zod_1.z.object({
18
20
  'common:UUID': tidas_data_types_schema_1.UUIDSchema,
@@ -26,42 +28,46 @@ exports.LifecyclemodelsSchema = zod_1.z.object({
26
28
  classificationInformation: zod_1.z.object({
27
29
  'common:classification': zod_1.z.union([
28
30
  zod_1.z.object({
29
- 'common:class': zod_1.z.tuple([
30
- zod_1.z.object({
31
- '@level': tidas_data_types_schema_1.LevelTypeSchema,
31
+ 'common:class': (0, json_schema_1.jsonSchemaTuple)([
32
+ (0, json_schema_1.withJsonSchemaDependencies)(zod_1.z.object({
33
+ '@level': zod_1.z.intersection(zod_1.z.literal('0'), tidas_data_types_schema_1.LevelTypeSchema),
32
34
  '@classId': zod_1.z.string(),
33
35
  '#text': zod_1.z.string(),
34
- }),
35
- zod_1.z.object({
36
- '@level': tidas_data_types_schema_1.LevelTypeSchema,
36
+ }), [{ property: '@level', schema: tidas_processes_category_schema_1.ProcessesCategorySchema }]),
37
+ (0, json_schema_1.withJsonSchemaDependencies)(zod_1.z.object({
38
+ '@level': zod_1.z.intersection(zod_1.z.literal('1'), tidas_data_types_schema_1.LevelTypeSchema),
37
39
  '@classId': zod_1.z.string(),
38
40
  '#text': zod_1.z.string(),
39
- }),
40
- zod_1.z.object({
41
- '@level': tidas_data_types_schema_1.LevelTypeSchema,
41
+ }), [{ property: '@level', schema: tidas_processes_category_schema_1.ProcessesCategorySchema }]),
42
+ (0, json_schema_1.withJsonSchemaDependencies)(zod_1.z.object({
43
+ '@level': zod_1.z.intersection(zod_1.z.literal('2'), tidas_data_types_schema_1.LevelTypeSchema),
42
44
  '@classId': zod_1.z.string(),
43
45
  '#text': zod_1.z.string(),
44
- }),
45
- zod_1.z.object({
46
- '@level': tidas_data_types_schema_1.LevelTypeSchema,
46
+ }), [{ property: '@level', schema: tidas_processes_category_schema_1.ProcessesCategorySchema }]),
47
+ (0, json_schema_1.withJsonSchemaDependencies)(zod_1.z.object({
48
+ '@level': zod_1.z.intersection(zod_1.z.literal('3'), tidas_data_types_schema_1.LevelTypeSchema),
47
49
  '@classId': zod_1.z.string(),
48
50
  '#text': zod_1.z.string(),
49
- }),
50
- ]),
51
+ }), [{ property: '@level', schema: tidas_processes_category_schema_1.ProcessesCategorySchema }]),
52
+ ], { additionalItems: false, maxItems: 4, uniqueItems: true }),
51
53
  'common:other': tidas_data_types_schema_1.CommonOtherSchema.optional(),
52
54
  '@name': zod_1.z.string().optional(),
53
55
  '@classes': zod_1.z.string().optional(),
54
56
  }),
55
- zod_1.z.array(zod_1.z.object({
57
+ zod_1.z
58
+ .array(zod_1.z.object({
56
59
  '@name': zod_1.z.string(),
57
60
  '@classes': zod_1.z.string().optional(),
58
- 'common:class': zod_1.z.array(zod_1.z.object({
61
+ 'common:class': zod_1.z
62
+ .array(zod_1.z.object({
59
63
  '@level': tidas_data_types_schema_1.LevelTypeSchema,
60
64
  '@classId': zod_1.z.string(),
61
65
  '#text': zod_1.z.string(),
62
- })),
66
+ }))
67
+ .min(1),
63
68
  'common:other': tidas_data_types_schema_1.CommonOtherSchema.optional(),
64
- })),
69
+ }))
70
+ .min(1),
65
71
  ]),
66
72
  }),
67
73
  referenceToResultingProcess: tidas_data_types_schema_1.GlobalReferenceTypeSchema.optional(),
@@ -70,7 +76,7 @@ exports.LifecyclemodelsSchema = zod_1.z.object({
70
76
  'common:other': tidas_data_types_schema_1.CommonOtherSchema.optional(),
71
77
  }),
72
78
  quantitativeReference: zod_1.z.object({
73
- referenceToReferenceProcess: zod_1.z.number(),
79
+ referenceToReferenceProcess: zod_1.z.number().int(),
74
80
  'common:other': tidas_data_types_schema_1.CommonOtherSchema.optional(),
75
81
  }),
76
82
  technology: zod_1.z.object({
@@ -79,11 +85,17 @@ exports.LifecyclemodelsSchema = zod_1.z.object({
79
85
  group: zod_1.z
80
86
  .union([
81
87
  zod_1.z.object({
82
- '@id': zod_1.z.string().optional(),
88
+ '@id': zod_1.z
89
+ .string()
90
+ .regex(/^-?\d+$/)
91
+ .optional(),
83
92
  groupName: tidas_data_types_schema_1.StringMultiLangSchema.optional(),
84
93
  }),
85
94
  zod_1.z.array(zod_1.z.object({
86
- '@id': zod_1.z.string().optional(),
95
+ '@id': zod_1.z
96
+ .string()
97
+ .regex(/^-?\d+$/)
98
+ .optional(),
87
99
  groupName: tidas_data_types_schema_1.StringMultiLangSchema.optional(),
88
100
  })),
89
101
  ])
@@ -94,8 +106,10 @@ exports.LifecyclemodelsSchema = zod_1.z.object({
94
106
  processInstance: zod_1.z
95
107
  .union([
96
108
  zod_1.z.array(zod_1.z.object({
97
- '@dataSetInternalID': zod_1.z.string(),
98
- '@multiplicationFactor': zod_1.z.string(),
109
+ '@dataSetInternalID': zod_1.z.string().regex(/^-?\d+$/),
110
+ '@multiplicationFactor': zod_1.z
111
+ .string()
112
+ .regex(/^-?\d+(\.\d+)?([eE][-+]?\d+)?$/),
99
113
  referenceToProcess: tidas_data_types_schema_1.GlobalReferenceTypeSchema,
100
114
  scalingFactors: tidas_data_types_schema_1.RealSchema.optional(),
101
115
  groups: zod_1.z
@@ -103,10 +117,16 @@ exports.LifecyclemodelsSchema = zod_1.z.object({
103
117
  memberOf: zod_1.z
104
118
  .union([
105
119
  zod_1.z.object({
106
- '@groupId': zod_1.z.string().optional(),
120
+ '@groupId': zod_1.z
121
+ .string()
122
+ .regex(/^-?\d+$/)
123
+ .optional(),
107
124
  }),
108
125
  zod_1.z.array(zod_1.z.object({
109
- '@groupId': zod_1.z.string().optional(),
126
+ '@groupId': zod_1.z
127
+ .string()
128
+ .regex(/^-?\d+$/)
129
+ .optional(),
110
130
  })),
111
131
  ])
112
132
  .optional(),
@@ -116,12 +136,8 @@ exports.LifecyclemodelsSchema = zod_1.z.object({
116
136
  .object({
117
137
  parameter: zod_1.z
118
138
  .union([
119
- zod_1.z.object({
120
- '@name': tidas_data_types_schema_1.MatVSchema.optional(),
121
- }),
122
- zod_1.z.array(zod_1.z.object({
123
- '@name': tidas_data_types_schema_1.MatVSchema.optional(),
124
- })),
139
+ zod_1.z.object({ '@name': tidas_data_types_schema_1.MatVSchema.optional() }),
140
+ zod_1.z.array(zod_1.z.object({ '@name': tidas_data_types_schema_1.MatVSchema.optional() })),
125
141
  ])
126
142
  .optional(),
127
143
  })
@@ -132,31 +148,34 @@ exports.LifecyclemodelsSchema = zod_1.z.object({
132
148
  .union([
133
149
  zod_1.z.object({
134
150
  '@dominant': zod_1.z
135
- .union([zod_1.z.literal('true'), zod_1.z.literal('false')])
151
+ .intersection(zod_1.z.union([
152
+ zod_1.z.literal('true'),
153
+ zod_1.z.literal('false'),
154
+ ]), zod_1.z.string())
136
155
  .optional(),
137
156
  '@flowUUID': tidas_data_types_schema_1.UUIDSchema,
138
157
  downstreamProcess: zod_1.z.union([
139
158
  zod_1.z.object({
140
- '@id': zod_1.z.string(),
159
+ '@id': zod_1.z.string().regex(/^-?\d+$/),
141
160
  '@flowUUID': tidas_data_types_schema_1.UUIDSchema,
142
161
  '@location': zod_1.z.string().optional(),
143
162
  '@dominant': zod_1.z
144
- .union([
163
+ .intersection(zod_1.z.union([
145
164
  zod_1.z.literal('true'),
146
165
  zod_1.z.literal('false'),
147
- ])
166
+ ]), zod_1.z.string())
148
167
  .optional(),
149
168
  '@version': tidas_data_types_schema_1.VersionSchema,
150
169
  }),
151
170
  zod_1.z.array(zod_1.z.object({
152
- '@id': zod_1.z.string(),
171
+ '@id': zod_1.z.string().regex(/^-?\d+$/),
153
172
  '@flowUUID': tidas_data_types_schema_1.UUIDSchema,
154
173
  '@location': zod_1.z.string().optional(),
155
174
  '@dominant': zod_1.z
156
- .union([
175
+ .intersection(zod_1.z.union([
157
176
  zod_1.z.literal('true'),
158
177
  zod_1.z.literal('false'),
159
- ])
178
+ ]), zod_1.z.string())
160
179
  .optional(),
161
180
  '@version': tidas_data_types_schema_1.VersionSchema,
162
181
  })),
@@ -165,31 +184,34 @@ exports.LifecyclemodelsSchema = zod_1.z.object({
165
184
  }),
166
185
  zod_1.z.array(zod_1.z.object({
167
186
  '@dominant': zod_1.z
168
- .union([zod_1.z.literal('true'), zod_1.z.literal('false')])
187
+ .intersection(zod_1.z.union([
188
+ zod_1.z.literal('true'),
189
+ zod_1.z.literal('false'),
190
+ ]), zod_1.z.string())
169
191
  .optional(),
170
192
  '@flowUUID': tidas_data_types_schema_1.UUIDSchema,
171
193
  downstreamProcess: zod_1.z.union([
172
194
  zod_1.z.object({
173
- '@id': zod_1.z.string(),
195
+ '@id': zod_1.z.string().regex(/^-?\d+$/),
174
196
  '@flowUUID': tidas_data_types_schema_1.UUIDSchema,
175
197
  '@location': zod_1.z.string().optional(),
176
198
  '@dominant': zod_1.z
177
- .union([
199
+ .intersection(zod_1.z.union([
178
200
  zod_1.z.literal('true'),
179
201
  zod_1.z.literal('false'),
180
- ])
202
+ ]), zod_1.z.string())
181
203
  .optional(),
182
204
  '@version': tidas_data_types_schema_1.VersionSchema,
183
205
  }),
184
206
  zod_1.z.array(zod_1.z.object({
185
- '@id': zod_1.z.string(),
207
+ '@id': zod_1.z.string().regex(/^-?\d+$/),
186
208
  '@flowUUID': tidas_data_types_schema_1.UUIDSchema,
187
209
  '@location': zod_1.z.string().optional(),
188
210
  '@dominant': zod_1.z
189
- .union([
211
+ .intersection(zod_1.z.union([
190
212
  zod_1.z.literal('true'),
191
213
  zod_1.z.literal('false'),
192
- ])
214
+ ]), zod_1.z.string())
193
215
  .optional(),
194
216
  '@version': tidas_data_types_schema_1.VersionSchema,
195
217
  })),
@@ -203,8 +225,10 @@ exports.LifecyclemodelsSchema = zod_1.z.object({
203
225
  'common:other': tidas_data_types_schema_1.CommonOtherSchema.optional(),
204
226
  })),
205
227
  zod_1.z.object({
206
- '@dataSetInternalID': zod_1.z.string(),
207
- '@multiplicationFactor': zod_1.z.string(),
228
+ '@dataSetInternalID': zod_1.z.string().regex(/^-?\d+$/),
229
+ '@multiplicationFactor': zod_1.z
230
+ .string()
231
+ .regex(/^-?\d+(\.\d+)?([eE][-+]?\d+)?$/),
208
232
  referenceToProcess: tidas_data_types_schema_1.GlobalReferenceTypeSchema,
209
233
  scalingFactors: tidas_data_types_schema_1.RealSchema.optional(),
210
234
  groups: zod_1.z
@@ -212,10 +236,16 @@ exports.LifecyclemodelsSchema = zod_1.z.object({
212
236
  memberOf: zod_1.z
213
237
  .union([
214
238
  zod_1.z.object({
215
- '@groupId': zod_1.z.string().optional(),
239
+ '@groupId': zod_1.z
240
+ .string()
241
+ .regex(/^-?\d+$/)
242
+ .optional(),
216
243
  }),
217
244
  zod_1.z.array(zod_1.z.object({
218
- '@groupId': zod_1.z.string().optional(),
245
+ '@groupId': zod_1.z
246
+ .string()
247
+ .regex(/^-?\d+$/)
248
+ .optional(),
219
249
  })),
220
250
  ])
221
251
  .optional(),
@@ -242,25 +272,31 @@ exports.LifecyclemodelsSchema = zod_1.z.object({
242
272
  outputExchange: zod_1.z.union([
243
273
  zod_1.z.object({
244
274
  '@dominant': zod_1.z
245
- .union([zod_1.z.literal('true'), zod_1.z.literal('false')])
275
+ .intersection(zod_1.z.union([zod_1.z.literal('true'), zod_1.z.literal('false')]), zod_1.z.string())
246
276
  .optional(),
247
277
  '@flowUUID': tidas_data_types_schema_1.UUIDSchema,
248
278
  downstreamProcess: zod_1.z.union([
249
279
  zod_1.z.object({
250
- '@id': zod_1.z.string(),
280
+ '@id': zod_1.z.string().regex(/^-?\d+$/),
251
281
  '@flowUUID': tidas_data_types_schema_1.UUIDSchema,
252
282
  '@location': zod_1.z.string().optional(),
253
283
  '@dominant': zod_1.z
254
- .union([zod_1.z.literal('true'), zod_1.z.literal('false')])
284
+ .intersection(zod_1.z.union([
285
+ zod_1.z.literal('true'),
286
+ zod_1.z.literal('false'),
287
+ ]), zod_1.z.string())
255
288
  .optional(),
256
289
  '@version': tidas_data_types_schema_1.VersionSchema,
257
290
  }),
258
291
  zod_1.z.array(zod_1.z.object({
259
- '@id': zod_1.z.string(),
292
+ '@id': zod_1.z.string().regex(/^-?\d+$/),
260
293
  '@flowUUID': tidas_data_types_schema_1.UUIDSchema,
261
294
  '@location': zod_1.z.string().optional(),
262
295
  '@dominant': zod_1.z
263
- .union([zod_1.z.literal('true'), zod_1.z.literal('false')])
296
+ .intersection(zod_1.z.union([
297
+ zod_1.z.literal('true'),
298
+ zod_1.z.literal('false'),
299
+ ]), zod_1.z.string())
264
300
  .optional(),
265
301
  '@version': tidas_data_types_schema_1.VersionSchema,
266
302
  })),
@@ -269,28 +305,31 @@ exports.LifecyclemodelsSchema = zod_1.z.object({
269
305
  }),
270
306
  zod_1.z.array(zod_1.z.object({
271
307
  '@dominant': zod_1.z
272
- .union([zod_1.z.literal('true'), zod_1.z.literal('false')])
308
+ .intersection(zod_1.z.union([zod_1.z.literal('true'), zod_1.z.literal('false')]), zod_1.z.string())
273
309
  .optional(),
274
310
  '@flowUUID': tidas_data_types_schema_1.UUIDSchema,
275
311
  downstreamProcess: zod_1.z.union([
276
312
  zod_1.z.object({
277
- '@id': zod_1.z.string(),
313
+ '@id': zod_1.z.string().regex(/^-?\d+$/),
278
314
  '@flowUUID': tidas_data_types_schema_1.UUIDSchema,
279
315
  '@location': zod_1.z.string().optional(),
280
316
  '@dominant': zod_1.z
281
- .union([zod_1.z.literal('true'), zod_1.z.literal('false')])
317
+ .intersection(zod_1.z.union([
318
+ zod_1.z.literal('true'),
319
+ zod_1.z.literal('false'),
320
+ ]), zod_1.z.string())
282
321
  .optional(),
283
322
  '@version': tidas_data_types_schema_1.VersionSchema,
284
323
  }),
285
324
  zod_1.z.array(zod_1.z.object({
286
- '@id': zod_1.z.string(),
325
+ '@id': zod_1.z.string().regex(/^-?\d+$/),
287
326
  '@flowUUID': tidas_data_types_schema_1.UUIDSchema,
288
327
  '@location': zod_1.z.string().optional(),
289
328
  '@dominant': zod_1.z
290
- .union([
329
+ .intersection(zod_1.z.union([
291
330
  zod_1.z.literal('true'),
292
331
  zod_1.z.literal('false'),
293
- ])
332
+ ]), zod_1.z.string())
294
333
  .optional(),
295
334
  '@version': tidas_data_types_schema_1.VersionSchema,
296
335
  })),
@@ -337,72 +376,74 @@ exports.LifecyclemodelsSchema = zod_1.z.object({
337
376
  compliance: zod_1.z.union([
338
377
  zod_1.z.object({
339
378
  'common:referenceToComplianceSystem': tidas_data_types_schema_1.GlobalReferenceTypeSchema,
340
- 'common:approvalOfOverallCompliance': zod_1.z.union([
379
+ 'common:approvalOfOverallCompliance': zod_1.z.intersection(zod_1.z.union([
341
380
  zod_1.z.literal('Fully compliant'),
342
381
  zod_1.z.literal('Not compliant'),
343
382
  zod_1.z.literal('Not defined'),
344
- ]),
345
- 'common:nomenclatureCompliance': zod_1.z.union([
383
+ ]), zod_1.z.string()),
384
+ 'common:nomenclatureCompliance': zod_1.z.intersection(zod_1.z.union([
346
385
  zod_1.z.literal('Fully compliant'),
347
386
  zod_1.z.literal('Not compliant'),
348
387
  zod_1.z.literal('Not defined'),
349
- ]),
350
- 'common:methodologicalCompliance': zod_1.z.union([
388
+ ]), zod_1.z.string()),
389
+ 'common:methodologicalCompliance': zod_1.z.intersection(zod_1.z.union([
351
390
  zod_1.z.literal('Fully compliant'),
352
391
  zod_1.z.literal('Not compliant'),
353
392
  zod_1.z.literal('Not defined'),
354
- ]),
355
- 'common:reviewCompliance': zod_1.z.union([
393
+ ]), zod_1.z.string()),
394
+ 'common:reviewCompliance': zod_1.z.intersection(zod_1.z.union([
356
395
  zod_1.z.literal('Fully compliant'),
357
396
  zod_1.z.literal('Not compliant'),
358
397
  zod_1.z.literal('Not defined'),
359
- ]),
360
- 'common:documentationCompliance': zod_1.z.union([
398
+ ]), zod_1.z.string()),
399
+ 'common:documentationCompliance': zod_1.z.intersection(zod_1.z.union([
361
400
  zod_1.z.literal('Fully compliant'),
362
401
  zod_1.z.literal('Not compliant'),
363
402
  zod_1.z.literal('Not defined'),
364
- ]),
365
- 'common:qualityCompliance': zod_1.z.union([
403
+ ]), zod_1.z.string()),
404
+ 'common:qualityCompliance': zod_1.z.intersection(zod_1.z.union([
366
405
  zod_1.z.literal('Fully compliant'),
367
406
  zod_1.z.literal('Not compliant'),
368
407
  zod_1.z.literal('Not defined'),
369
- ]),
408
+ ]), zod_1.z.string()),
370
409
  'common:other': tidas_data_types_schema_1.CommonOtherSchema.optional(),
371
410
  }),
372
- zod_1.z.array(zod_1.z.object({
411
+ zod_1.z
412
+ .array(zod_1.z.object({
373
413
  'common:referenceToComplianceSystem': tidas_data_types_schema_1.GlobalReferenceTypeSchema,
374
- 'common:approvalOfOverallCompliance': zod_1.z.union([
414
+ 'common:approvalOfOverallCompliance': zod_1.z.intersection(zod_1.z.union([
375
415
  zod_1.z.literal('Fully compliant'),
376
416
  zod_1.z.literal('Not compliant'),
377
417
  zod_1.z.literal('Not defined'),
378
- ]),
379
- 'common:nomenclatureCompliance': zod_1.z.union([
418
+ ]), zod_1.z.string()),
419
+ 'common:nomenclatureCompliance': zod_1.z.intersection(zod_1.z.union([
380
420
  zod_1.z.literal('Fully compliant'),
381
421
  zod_1.z.literal('Not compliant'),
382
422
  zod_1.z.literal('Not defined'),
383
- ]),
384
- 'common:methodologicalCompliance': zod_1.z.union([
423
+ ]), zod_1.z.string()),
424
+ 'common:methodologicalCompliance': zod_1.z.intersection(zod_1.z.union([
385
425
  zod_1.z.literal('Fully compliant'),
386
426
  zod_1.z.literal('Not compliant'),
387
427
  zod_1.z.literal('Not defined'),
388
- ]),
389
- 'common:reviewCompliance': zod_1.z.union([
428
+ ]), zod_1.z.string()),
429
+ 'common:reviewCompliance': zod_1.z.intersection(zod_1.z.union([
390
430
  zod_1.z.literal('Fully compliant'),
391
431
  zod_1.z.literal('Not compliant'),
392
432
  zod_1.z.literal('Not defined'),
393
- ]),
394
- 'common:documentationCompliance': zod_1.z.union([
433
+ ]), zod_1.z.string()),
434
+ 'common:documentationCompliance': zod_1.z.intersection(zod_1.z.union([
395
435
  zod_1.z.literal('Fully compliant'),
396
436
  zod_1.z.literal('Not compliant'),
397
437
  zod_1.z.literal('Not defined'),
398
- ]),
399
- 'common:qualityCompliance': zod_1.z.union([
438
+ ]), zod_1.z.string()),
439
+ 'common:qualityCompliance': zod_1.z.intersection(zod_1.z.union([
400
440
  zod_1.z.literal('Fully compliant'),
401
441
  zod_1.z.literal('Not compliant'),
402
442
  zod_1.z.literal('Not defined'),
403
- ]),
443
+ ]), zod_1.z.string()),
404
444
  'common:other': tidas_data_types_schema_1.CommonOtherSchema.optional(),
405
- })),
445
+ }))
446
+ .min(1),
406
447
  ]),
407
448
  'common:other': tidas_data_types_schema_1.CommonOtherSchema.optional(),
408
449
  }),
@@ -430,17 +471,17 @@ exports.LifecyclemodelsSchema = zod_1.z.object({
430
471
  publicationAndOwnership: zod_1.z.object({
431
472
  'common:dataSetVersion': tidas_data_types_schema_1.VersionSchema,
432
473
  'common:referenceToPrecedingDataSetVersion': tidas_data_types_schema_1.GlobalReferenceTypeSchema.optional(),
433
- 'common:permanentDataSetURI': zod_1.z.string(),
474
+ 'common:permanentDataSetURI': zod_1.z.url(),
434
475
  'common:referenceToOwnershipOfDataSet': tidas_data_types_schema_1.GlobalReferenceTypeSchema,
435
- 'common:copyright': zod_1.z.union([zod_1.z.literal('true'), zod_1.z.literal('false')]),
476
+ 'common:copyright': zod_1.z.intersection(zod_1.z.union([zod_1.z.literal('true'), zod_1.z.literal('false')]), zod_1.z.string()),
436
477
  'common:referenceToEntitiesWithExclusiveAccess': tidas_data_types_schema_1.GlobalReferenceTypeSchema.optional(),
437
- 'common:licenseType': zod_1.z.union([
478
+ 'common:licenseType': zod_1.z.intersection(zod_1.z.union([
438
479
  zod_1.z.literal('Free of charge for all users and uses'),
439
480
  zod_1.z.literal('Free of charge for some user types or use types'),
440
481
  zod_1.z.literal('Free of charge for members only'),
441
482
  zod_1.z.literal('License fee'),
442
483
  zod_1.z.literal('Other'),
443
- ]),
484
+ ]), zod_1.z.string()),
444
485
  'common:accessRestrictions': tidas_data_types_schema_1.FTMultiLangSchema.optional(),
445
486
  'common:other': tidas_data_types_schema_1.CommonOtherSchema.optional(),
446
487
  }),