@dialecte/scl 0.3.15 → 0.3.17

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 (130) hide show
  1. package/dist/{hooks-CLIa7kxj.js → hooks-BBGXNK0x.js} +1916 -1292
  2. package/dist/v2019C1/config/dialecte.config.d.ts +2 -2
  3. package/dist/v2019C1/config/dialecte.config.d.ts.map +1 -1
  4. package/dist/v2019C1/constants/topology-tags.d.ts +7 -0
  5. package/dist/v2019C1/constants/topology-tags.d.ts.map +1 -1
  6. package/dist/v2019C1/extensions/clean-up/transaction/orphan-lnode-bindings.d.ts +7 -2
  7. package/dist/v2019C1/extensions/clean-up/transaction/orphan-lnode-bindings.d.ts.map +1 -1
  8. package/dist/v2019C1/extensions/identity/index.d.ts +2 -0
  9. package/dist/v2019C1/extensions/identity/index.d.ts.map +1 -1
  10. package/dist/v2019C1/extensions/identity/query/index.d.ts +3 -0
  11. package/dist/v2019C1/extensions/identity/query/index.d.ts.map +1 -0
  12. package/dist/v2019C1/extensions/identity/query/resolve-identity.d.ts +18 -0
  13. package/dist/v2019C1/extensions/identity/query/resolve-identity.d.ts.map +1 -0
  14. package/dist/v2019C1/extensions/identity/query/resolve-identity.types.d.ts +19 -0
  15. package/dist/v2019C1/extensions/identity/query/resolve-identity.types.d.ts.map +1 -0
  16. package/dist/v2019C1/extensions/identity/transaction/write-identity.d.ts +3 -0
  17. package/dist/v2019C1/extensions/identity/transaction/write-identity.d.ts.map +1 -1
  18. package/dist/v2019C1/extensions/identity/transaction/write-identity.types.d.ts +1 -1
  19. package/dist/v2019C1/extensions/identity/transaction/write-identity.types.d.ts.map +1 -1
  20. package/dist/v2019C1/extensions/index.d.ts +1 -0
  21. package/dist/v2019C1/extensions/index.d.ts.map +1 -1
  22. package/dist/v2019C1/extensions/lifecycle/apply/apply.d.ts +2 -2
  23. package/dist/v2019C1/extensions/lifecycle/apply/apply.d.ts.map +1 -1
  24. package/dist/v2019C1/extensions/lifecycle/apply/apply.types.d.ts +4 -0
  25. package/dist/v2019C1/extensions/lifecycle/apply/apply.types.d.ts.map +1 -1
  26. package/dist/v2019C1/extensions/lifecycle/contract.types.d.ts +20 -1
  27. package/dist/v2019C1/extensions/lifecycle/contract.types.d.ts.map +1 -1
  28. package/dist/v2019C1/extensions/lifecycle/cross-cutting/finalize-cloned-identity.d.ts +24 -0
  29. package/dist/v2019C1/extensions/lifecycle/cross-cutting/finalize-cloned-identity.d.ts.map +1 -0
  30. package/dist/v2019C1/extensions/lifecycle/cross-cutting/index.d.ts +1 -0
  31. package/dist/v2019C1/extensions/lifecycle/cross-cutting/index.d.ts.map +1 -1
  32. package/dist/v2019C1/extensions/lifecycle/engine/correlate.d.ts +30 -0
  33. package/dist/v2019C1/extensions/lifecycle/engine/correlate.d.ts.map +1 -0
  34. package/dist/v2019C1/extensions/lifecycle/engine/decide.d.ts +9 -2
  35. package/dist/v2019C1/extensions/lifecycle/engine/decide.d.ts.map +1 -1
  36. package/dist/v2019C1/extensions/lifecycle/engine/diff.d.ts +7 -1
  37. package/dist/v2019C1/extensions/lifecycle/engine/diff.d.ts.map +1 -1
  38. package/dist/v2019C1/extensions/lifecycle/engine/diff.types.d.ts +9 -1
  39. package/dist/v2019C1/extensions/lifecycle/engine/diff.types.d.ts.map +1 -1
  40. package/dist/v2019C1/extensions/lifecycle/engine/group.d.ts +1 -1
  41. package/dist/v2019C1/extensions/lifecycle/engine/match-child.d.ts +31 -0
  42. package/dist/v2019C1/extensions/lifecycle/engine/match-child.d.ts.map +1 -0
  43. package/dist/v2019C1/extensions/lifecycle/engine/match-key.d.ts +26 -0
  44. package/dist/v2019C1/extensions/lifecycle/engine/match-key.d.ts.map +1 -0
  45. package/dist/v2019C1/extensions/lifecycle/engine/reconcile.d.ts +8 -2
  46. package/dist/v2019C1/extensions/lifecycle/engine/reconcile.d.ts.map +1 -1
  47. package/dist/v2019C1/extensions/lifecycle/engine/reference-match.d.ts +25 -0
  48. package/dist/v2019C1/extensions/lifecycle/engine/reference-match.d.ts.map +1 -0
  49. package/dist/v2019C1/extensions/lifecycle/extract/transaction/post-extraction-cleanup.d.ts +3 -3
  50. package/dist/v2019C1/extensions/lifecycle/extract/transaction/ssd.d.ts +6 -4
  51. package/dist/v2019C1/extensions/lifecycle/extract/transaction/ssd.d.ts.map +1 -1
  52. package/dist/v2019C1/extensions/lifecycle/index.d.ts +1 -1
  53. package/dist/v2019C1/extensions/lifecycle/instance/find-instance.d.ts +30 -9
  54. package/dist/v2019C1/extensions/lifecycle/instance/find-instance.d.ts.map +1 -1
  55. package/dist/v2019C1/extensions/lifecycle/instance/index.d.ts +1 -1
  56. package/dist/v2019C1/extensions/lifecycle/instance/index.d.ts.map +1 -1
  57. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/asd.d.ts.map +1 -1
  58. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/asd.types.d.ts +6 -0
  59. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/asd.types.d.ts.map +1 -1
  60. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/fsd.d.ts.map +1 -1
  61. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/fsd.types.d.ts +6 -0
  62. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/fsd.types.d.ts.map +1 -1
  63. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/index.d.ts +2 -0
  64. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/index.d.ts.map +1 -1
  65. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/ssd.d.ts +19 -0
  66. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/ssd.d.ts.map +1 -0
  67. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/ssd.types.d.ts +25 -0
  68. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/ssd.types.d.ts.map +1 -0
  69. package/dist/v2019C1/extensions/lifecycle/layers/topology/clone-topology-content.d.ts +15 -12
  70. package/dist/v2019C1/extensions/lifecycle/layers/topology/clone-topology-content.d.ts.map +1 -1
  71. package/dist/v2019C1/extensions/lifecycle/layers/topology/clone-topology-content.types.d.ts +14 -0
  72. package/dist/v2019C1/extensions/lifecycle/layers/topology/clone-topology-content.types.d.ts.map +1 -0
  73. package/dist/v2019C1/extensions/lifecycle/layers/topology/ensure-topology-frame.d.ts +25 -0
  74. package/dist/v2019C1/extensions/lifecycle/layers/topology/ensure-topology-frame.d.ts.map +1 -0
  75. package/dist/v2019C1/extensions/lifecycle/layers/topology/ensure-topology-frame.types.d.ts +22 -0
  76. package/dist/v2019C1/extensions/lifecycle/layers/topology/ensure-topology-frame.types.d.ts.map +1 -0
  77. package/dist/v2019C1/extensions/lifecycle/layers/topology/index.d.ts +5 -0
  78. package/dist/v2019C1/extensions/lifecycle/layers/topology/index.d.ts.map +1 -1
  79. package/dist/v2019C1/extensions/lifecycle/layers/topology/reconcile-topology-frame.d.ts +29 -0
  80. package/dist/v2019C1/extensions/lifecycle/layers/topology/reconcile-topology-frame.d.ts.map +1 -0
  81. package/dist/v2019C1/extensions/lifecycle/layers/topology/scope-content.d.ts +15 -0
  82. package/dist/v2019C1/extensions/lifecycle/layers/topology/scope-content.d.ts.map +1 -0
  83. package/dist/v2019C1/extensions/lifecycle/layers/topology/scope-content.types.d.ts +8 -0
  84. package/dist/v2019C1/extensions/lifecycle/layers/topology/scope-content.types.d.ts.map +1 -0
  85. package/dist/v2019C1/extensions/lifecycle/report/presentation-scope.d.ts.map +1 -1
  86. package/dist/v2019C1/extensions/lifecycle/report/query/index.d.ts +1 -0
  87. package/dist/v2019C1/extensions/lifecycle/report/query/index.d.ts.map +1 -1
  88. package/dist/v2019C1/extensions/lifecycle/report/query/report-asd.d.ts +1 -0
  89. package/dist/v2019C1/extensions/lifecycle/report/query/report-asd.d.ts.map +1 -1
  90. package/dist/v2019C1/extensions/lifecycle/report/query/report-fsd.d.ts +2 -1
  91. package/dist/v2019C1/extensions/lifecycle/report/query/report-fsd.d.ts.map +1 -1
  92. package/dist/v2019C1/extensions/lifecycle/report/query/report-function-satellites.d.ts +1 -1
  93. package/dist/v2019C1/extensions/lifecycle/report/query/report-function.d.ts +1 -1
  94. package/dist/v2019C1/extensions/lifecycle/report/query/report-ssd.d.ts +22 -0
  95. package/dist/v2019C1/extensions/lifecycle/report/query/report-ssd.d.ts.map +1 -0
  96. package/dist/v2019C1/extensions/lifecycle/report/query/report-topology-frame.d.ts +23 -0
  97. package/dist/v2019C1/extensions/lifecycle/report/query/report-topology-frame.d.ts.map +1 -0
  98. package/dist/v2019C1/extensions/lifecycle/report/query/satellite-companions.d.ts +1 -1
  99. package/dist/v2019C1/extensions/lifecycle/report/query/satellite-companions.d.ts.map +1 -1
  100. package/dist/v2019C1/extensions/lifecycle/report/report.d.ts +1 -1
  101. package/dist/v2019C1/extensions/lifecycle/report/report.d.ts.map +1 -1
  102. package/dist/v2019C1/extensions/lifecycle/scenario.d.ts +1 -2
  103. package/dist/v2019C1/extensions/lifecycle/scenario.d.ts.map +1 -1
  104. package/dist/v2019C1/extensions/lifecycle/transplant/transaction/primitives/merge-children-into.d.ts +5 -0
  105. package/dist/v2019C1/extensions/lifecycle/transplant/transaction/primitives/merge-children-into.d.ts.map +1 -1
  106. package/dist/v2019C1/extensions/lifecycle/update/transaction/asd.d.ts +3 -1
  107. package/dist/v2019C1/extensions/lifecycle/update/transaction/asd.d.ts.map +1 -1
  108. package/dist/v2019C1/extensions/lifecycle/update/transaction/cross-cutting-satellites.d.ts +4 -3
  109. package/dist/v2019C1/extensions/lifecycle/update/transaction/cross-cutting-satellites.d.ts.map +1 -1
  110. package/dist/v2019C1/extensions/lifecycle/update/transaction/fsd.d.ts +3 -2
  111. package/dist/v2019C1/extensions/lifecycle/update/transaction/fsd.d.ts.map +1 -1
  112. package/dist/v2019C1/extensions/lifecycle/update/transaction/function-satellites.d.ts +2 -2
  113. package/dist/v2019C1/extensions/lifecycle/update/transaction/function-satellites.d.ts.map +1 -1
  114. package/dist/v2019C1/extensions/lifecycle/update/transaction/index.d.ts +1 -0
  115. package/dist/v2019C1/extensions/lifecycle/update/transaction/index.d.ts.map +1 -1
  116. package/dist/v2019C1/extensions/lifecycle/update/transaction/satellite-reconcile.d.ts +2 -1
  117. package/dist/v2019C1/extensions/lifecycle/update/transaction/satellite-reconcile.d.ts.map +1 -1
  118. package/dist/v2019C1/extensions/lifecycle/update/transaction/ssd.d.ts +36 -0
  119. package/dist/v2019C1/extensions/lifecycle/update/transaction/ssd.d.ts.map +1 -0
  120. package/dist/v2019C1/hooks/after-standardized-record/uuid-attribute.d.ts.map +1 -1
  121. package/dist/v2019C1/hooks/io/io-hooks.d.ts +2 -2
  122. package/dist/v2019C1/index.js +10 -10
  123. package/dist/v2019C1/test/assert-valid-scl-xml.d.ts +24 -0
  124. package/dist/v2019C1/test/assert-valid-scl-xml.d.ts.map +1 -0
  125. package/dist/v2019C1/test/assert-valid-scl-xml.types.d.ts +45 -0
  126. package/dist/v2019C1/test/assert-valid-scl-xml.types.d.ts.map +1 -0
  127. package/dist/v2019C1/test/hydrated-test.d.ts +9 -1
  128. package/dist/v2019C1/test/hydrated-test.d.ts.map +1 -1
  129. package/dist/v2019C1/test.js +113 -19
  130. package/package.json +4 -2
@@ -8,7 +8,7 @@ export declare const SCL_DATABASE_CONFIG: {
8
8
  readonly compoundIndexes: [["id", "tagName"]];
9
9
  readonly arrayIndexes: ["children.id", "children.tagName"];
10
10
  };
11
- /** @deprecated - kept for old io/ pipeline until Phase 5 removes it */
11
+ /** @deprecated - kept for the old io/ pipeline until it is removed */
12
12
  readonly tables: {
13
13
  readonly xmlElements: {
14
14
  readonly name: "sclElements";
@@ -1121,7 +1121,7 @@ export declare const SCL_DIALECTE_CONFIG: {
1121
1121
  readonly compoundIndexes: [["id", "tagName"]];
1122
1122
  readonly arrayIndexes: ["children.id", "children.tagName"];
1123
1123
  };
1124
- /** @deprecated - kept for old io/ pipeline until Phase 5 removes it */
1124
+ /** @deprecated - kept for the old io/ pipeline until it is removed */
1125
1125
  readonly tables: {
1126
1126
  readonly xmlElements: {
1127
1127
  readonly name: "sclElements";
@@ -1 +1 @@
1
- {"version":3,"file":"dialecte.config.d.ts","sourceRoot":"","sources":["../../../src/v2019C1/config/dialecte.config.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,aAAa;;CAEN,CAAA;AAGpB,eAAO,MAAM,mBAAmB;;;;;;;IAO/B,uEAAuE;;;;;;;;;;;;CAarC,CAAA;AAEnC,eAAO,MAAM,cAAc;;;;;;;;;;;;;CAOjB,CAAA;AAEV,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAxB/B,uEAAuE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsClC,CAAA;AAEtC,MAAM,WAAW,MAAO,SAAQ,QAAQ,CAAC,OAAO,mBAAmB,CAAC;CAAG"}
1
+ {"version":3,"file":"dialecte.config.d.ts","sourceRoot":"","sources":["../../../src/v2019C1/config/dialecte.config.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,aAAa;;CAEN,CAAA;AAGpB,eAAO,MAAM,mBAAmB;;;;;;;IAO/B,sEAAsE;;;;;;;;;;;;CAapC,CAAA;AAEnC,eAAO,MAAM,cAAc;;;;;;;;;;;;;CAOjB,CAAA;AAEV,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAxB/B,sEAAsE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsCjC,CAAA;AAEtC,MAAM,WAAW,MAAO,SAAQ,QAAQ,CAAC,OAAO,mBAAmB,CAAC;CAAG"}
@@ -12,4 +12,11 @@ export declare const TOPOLOGY_STRUCTURAL_TAGS: readonly ["Substation", "VoltageL
12
12
  * `Terminal`s (`connectivityNode` / `cNodeName`), so dropping it would dangle those references.
13
13
  */
14
14
  export declare const TOPOLOGY_EQUIPMENT_TAGS: readonly ["ConductingEquipment", "PowerTransformer", "GeneralEquipment", "ConnectivityNode"];
15
+ /**
16
+ * Child element tags OWNED by the function/application layers (and the cross-cutting satellite
17
+ * passes), delegated OUT of the topology frame. The frame primitive omits these when carrying a
18
+ * structural element's own content, so the fn/app layers place their clones instead of the frame
19
+ * duplicating them.
20
+ */
21
+ export declare const FRAME_OMIT_CHILD_TAGS: readonly ["Application", "Function", "FunctionCategory", "AllocationRole", "Variable", "BehaviorDescription"];
15
22
  //# sourceMappingURL=topology-tags.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"topology-tags.d.ts","sourceRoot":"","sources":["../../../src/v2019C1/constants/topology-tags.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,8EAA8E;AAC9E,eAAO,MAAM,wBAAwB,gDAAiD,CAAA;AAEtF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,8FAK1B,CAAA"}
1
+ {"version":3,"file":"topology-tags.d.ts","sourceRoot":"","sources":["../../../src/v2019C1/constants/topology-tags.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,8EAA8E;AAC9E,eAAO,MAAM,wBAAwB,gDAAiD,CAAA;AAEtF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,8FAK1B,CAAA;AAEV;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,+GAOxB,CAAA"}
@@ -12,8 +12,13 @@ import type * as Core from '@dialecte/core';
12
12
  * auto-stamped on import; the cleanup makes the canonical marker explicit)
13
13
  * - locked + referenced IED present → skip (binding valid)
14
14
  * - locked + IED absent + LNodeSpecNaming child exists → restore lnClass/lnInst/prefix
15
- * from spec naming, clear iedName/ldInst/lnUuid, reset spec naming sIedName/sLdInst
16
- * - locked + IED absent + no LNodeSpecNaming → clear all binding attrs
15
+ * from spec naming (falling back to the LNode's current lnClass when sLnClass is
16
+ * absent — lnClass is a required XSD attribute with no default, so it must never be
17
+ * cleared), clear iedName/ldInst/lnUuid, reset spec naming sIedName/sLdInst
18
+ * - locked + IED absent + no LNodeSpecNaming → clear only the binding-specific attrs
19
+ * (iedName/ldInst/lnUuid). lnClass/lnInst/prefix are left untouched: there is no
20
+ * backup of their pre-mapping specified values to restore them to, and lnClass in
21
+ * particular is required by the XSD (no default), so it can't be cleared
17
22
  *
18
23
  * `templateUuid` is preserved in every case: it records the template the LNode was
19
24
  * instantiated from (the key used to re-locate an implementing ICD), which is
@@ -1 +1 @@
1
- {"version":3,"file":"orphan-lnode-bindings.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/clean-up/transaction/orphan-lnode-bindings.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAO,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAmB7E"}
1
+ {"version":3,"file":"orphan-lnode-bindings.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/clean-up/transaction/orphan-lnode-bindings.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAO,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAmB7E"}
@@ -1,5 +1,7 @@
1
+ import * as identityQuery from './query';
1
2
  import * as identityTransaction from './transaction';
2
3
  export declare const identity: {
4
+ query: typeof identityQuery;
3
5
  transaction: typeof identityTransaction;
4
6
  };
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/v2019C1/extensions/identity/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,mBAAmB,MAAM,eAAe,CAAA;AAEpD,eAAO,MAAM,QAAQ;;CAEpB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/v2019C1/extensions/identity/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,SAAS,CAAA;AACxC,OAAO,KAAK,mBAAmB,MAAM,eAAe,CAAA;AAEpD,eAAO,MAAM,QAAQ;;;CAGpB,CAAA"}
@@ -0,0 +1,3 @@
1
+ export { resolveIdentity, identityEquals } from './resolve-identity';
2
+ export type { ElementIdentity } from './resolve-identity.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/identity/query/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACpE,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA"}
@@ -0,0 +1,18 @@
1
+ import { ElementIdentity } from './resolve-identity.types';
2
+ import { Config } from '../../../config';
3
+ import type * as Core from '@dialecte/core';
4
+ type Reader = Core.Query<Config> | Core.Transaction<Config>;
5
+ /**
6
+ * Resolve an element's identity from the schema (does it carry a `uuid`, else its `identityFields`),
7
+ * reading its attributes through Dialecte's own `getAttributes`. `name` is never used: it appears in
8
+ * `identityFields` only for uuid-bearing hybrids (e.g. `Substation`), which resolve at the `uuid`
9
+ * branch; every uuid-less tag's `identityFields` are structural (`id`/`lnClass`/`inst`/...).
10
+ */
11
+ export declare function resolveIdentity(query: Reader, ref: Core.AnyRefOrRecord): Promise<ElementIdentity>;
12
+ /**
13
+ * Whether two identities denote the same element. `uuid` identities are equal only on a shared,
14
+ * defined uuid; `fields` on identical field maps; `positional` is never equal (no intrinsic id).
15
+ */
16
+ export declare function identityEquals(first: ElementIdentity, second: ElementIdentity): boolean;
17
+ export {};
18
+ //# sourceMappingURL=resolve-identity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-identity.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/identity/query/resolve-identity.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C,KAAK,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;AAE3D;;;;;GAKG;AACH,wBAAsB,eAAe,CACpC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,IAAI,CAAC,cAAc,GACtB,OAAO,CAAC,eAAe,CAAC,CAsB1B;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAUvF"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * The schema-derived identity of an element — how a source element is matched to its instance
3
+ * across a clone:
4
+ * - `uuid`: the element carries a `uuid` (its intrinsic identity). Matched by LINEAGE
5
+ * (`instance.templateUuid === source.uuid`, or `uuid` for fork), NOT by this uuid value.
6
+ * - `fields`: no uuid, but the schema declares `identityFields` (e.g. DataTypeTemplates types by
7
+ * `id`) — these survive a clone verbatim and identify the element.
8
+ * - `positional`: neither — a leaf/config element identified only by its position among siblings.
9
+ */
10
+ export type ElementIdentity = {
11
+ kind: 'uuid';
12
+ uuid: string | undefined;
13
+ } | {
14
+ kind: 'fields';
15
+ fields: Record<string, string>;
16
+ } | {
17
+ kind: 'positional';
18
+ };
19
+ //# sourceMappingURL=resolve-identity.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-identity.types.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/identity/query/resolve-identity.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,MAAM,eAAe,GACxB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAA"}
@@ -12,6 +12,9 @@ import type * as Core from '@dialecte/core';
12
12
  * when the origin slot is free and the element type carries a two-level
13
13
  * lineage). The instance `uuid` is already fresh from `deepClone`.
14
14
  * - `strip` (extract): drop `templateUuid` and `originUuid`, leaving a fresh template.
15
+ * - `preserve` (copy/paste): carry `templateUuid`/`originUuid` verbatim onto the fresh
16
+ * instance uuid — the copy stays an instance of the SAME template. Written as a no-op
17
+ * because the clone already copied the lineage attributes verbatim (callers pass `strip:false`).
15
18
  * - `keep` (fork): leave lineage untouched.
16
19
  */
17
20
  export declare function writeIdentity(tx: Core.Transaction<Config>, params: {
@@ -1 +1 @@
1
- {"version":3,"file":"write-identity.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/identity/transaction/write-identity.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C;;;;;;;;;;;;GAYG;AACH,wBAAsB,aAAa,CAClC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IACP,QAAQ,EAAE,SAAS,GAAG,CAAC,YAAY,EAAE,CAAA;IACrC,IAAI,EAAE,YAAY,CAAA;CAClB,GACC,OAAO,CAAC,IAAI,CAAC,CAYf"}
1
+ {"version":3,"file":"write-identity.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/identity/transaction/write-identity.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,aAAa,CAClC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IACP,QAAQ,EAAE,SAAS,GAAG,CAAC,YAAY,EAAE,CAAA;IACrC,IAAI,EAAE,YAAY,CAAA;CAClB,GACC,OAAO,CAAC,IAAI,CAAC,CAcf"}
@@ -1,3 +1,3 @@
1
1
  /** How to write instance-lineage identity onto the target records of a clone. */
2
- export type IdentityMode = 'strip' | 'stamp-template' | 'keep';
2
+ export type IdentityMode = 'strip' | 'stamp-template' | 'preserve' | 'keep';
3
3
  //# sourceMappingURL=write-identity.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"write-identity.types.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/identity/transaction/write-identity.types.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,gBAAgB,GAAG,MAAM,CAAA"}
1
+ {"version":3,"file":"write-identity.types.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/identity/transaction/write-identity.types.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,gBAAgB,GAAG,UAAU,GAAG,MAAM,CAAA"}
@@ -11,6 +11,7 @@ export declare const SCL_EXTENSION_MODULES: {
11
11
  transaction: typeof import("./history/transaction");
12
12
  };
13
13
  identity: {
14
+ query: typeof import("./identity/query");
14
15
  transaction: typeof import("./identity/transaction");
15
16
  };
16
17
  lifecycle: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/v2019C1/extensions/index.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASjC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/v2019C1/extensions/index.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASjC,CAAA"}
@@ -3,7 +3,7 @@ import { Config } from '../../../config';
3
3
  import { LifecycleApplyParams } from '../contract.types';
4
4
  import type * as Core from '@dialecte/core';
5
5
  /**
6
- * `tx.lifecycle.apply` — the generic write surface (ENGINE.md §4/§6, 07 §4).
6
+ * `tx.lifecycle.apply` — the generic write surface.
7
7
  *
8
8
  * The consumer classifies first (`query.lifecycle.report`) and passes the
9
9
  * `report` in. The report + `decisions` gate what is written:
@@ -19,7 +19,7 @@ import type * as Core from '@dialecte/core';
19
19
  * their companions (the gate is passed to the update verb, which threads it
20
20
  * through reconcile and the ASD cascade). A group absent from the map defaults
21
21
  * to accept. The engine rejects a decision set that accepts a group whose
22
- * `dependsOn` parent is skipped (07 §4).
22
+ * `dependsOn` parent is skipped.
23
23
  *
24
24
  * Returns `{ report, instances }` — the effective report plus the instance roots
25
25
  * the write produced/reconciled. Run inside `doc.prepare(tx => tx.lifecycle.apply(...))`
@@ -1 +1 @@
1
- {"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/apply/apply.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAoB,WAAW,EAAE,MAAM,eAAe,CAAA;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,KAAK,EACX,oBAAoB,EAEpB,MAAM,+CAA+C,CAAA;AAEtD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,KAAK,CAC1B,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE,oBAAoB,GAC1B,OAAO,CAAC,WAAW,CAAC,CAetB"}
1
+ {"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/apply/apply.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAoB,WAAW,EAAE,MAAM,eAAe,CAAA;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,KAAK,EACX,oBAAoB,EAEpB,MAAM,+CAA+C,CAAA;AAEtD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,KAAK,CAC1B,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE,oBAAoB,GAC1B,OAAO,CAAC,WAAW,CAAC,CAetB"}
@@ -13,6 +13,10 @@ export type AppliedInstances = {
13
13
  verb: 'asd';
14
14
  applications: Scl.Ref<'Application'>[];
15
15
  functions: (Scl.Ref<'Function'> | Scl.Ref<'SubFunction'>)[];
16
+ } | {
17
+ verb: 'ssd';
18
+ applications: Scl.Ref<'Application'>[];
19
+ functions: (Scl.Ref<'Function'> | Scl.Ref<'SubFunction'>)[];
16
20
  };
17
21
  /**
18
22
  * The result of `tx.lifecycle.apply`: the effective `report` plus the instance
@@ -1 +1 @@
1
- {"version":3,"file":"apply.types.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/apply/apply.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAA;AAElF;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GACzB;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,EAAE,CAAA;CAAE,GAC5E;IACA,IAAI,EAAE,KAAK,CAAA;IACX,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAA;IACtC,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,EAAE,CAAA;CAC1D,CAAA;AAEJ;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG;IACzB,MAAM,EAAE,UAAU,CAAA;IAClB,SAAS,EAAE,gBAAgB,CAAA;CAC3B,CAAA"}
1
+ {"version":3,"file":"apply.types.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/apply/apply.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAA;AAElF;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GACzB;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,EAAE,CAAA;CAAE,GAC5E;IACA,IAAI,EAAE,KAAK,CAAA;IACX,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAA;IACtC,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,EAAE,CAAA;CAC1D,GACD;IACA,IAAI,EAAE,KAAK,CAAA;IACX,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAA;IACtC,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,EAAE,CAAA;CAC1D,CAAA;AAEJ;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG;IACzB,MAAM,EAAE,UAAU,CAAA;IAClB,SAAS,EAAE,gBAAgB,CAAA;CAC3B,CAAA"}
@@ -1,9 +1,10 @@
1
1
  import { Scl, Config } from '../../config';
2
+ import { TopologyStructuralTag } from '../../constants';
2
3
  import { KeepNameTypesFrom } from '../data-model/transaction';
3
4
  import { DecisionMap, DiffReport } from './engine/diff.types';
4
5
  import type * as Core from '@dialecte/core';
5
6
  /** Which template layer the lifecycle surface operates on. */
6
- export type LifecycleVerb = 'fsd' | 'asd';
7
+ export type LifecycleVerb = 'fsd' | 'asd' | 'ssd';
7
8
  /**
8
9
  * The two reconcile modes of the `Update` operation, distinguished by how the
9
10
  * SOURCE relates to the TARGET:
@@ -41,6 +42,8 @@ export type LifecycleTarget = {
41
42
  anchor: Scl.Ref<Scl.ElementsOf>;
42
43
  /** Operation to perform. Defaults to `template`. */
43
44
  scenario?: LifecycleScenario;
45
+ /** Multi-instance anchor: scope to ONE target instance (or its subtree). Absent = all. */
46
+ targetInstance?: Scl.Ref<Scl.ElementsOf>;
44
47
  } | {
45
48
  verb: 'asd';
46
49
  sourceQuery: Core.Query<Config>;
@@ -50,6 +53,22 @@ export type LifecycleTarget = {
50
53
  anchor: Scl.Ref<Scl.ElementsOf>;
51
54
  /** Operation to perform. Defaults to `template`. */
52
55
  scenario?: LifecycleScenario;
56
+ /** Multi-instance anchor: scope to ONE target instance (or its subtree). Absent = all. */
57
+ targetInstance?: Scl.Ref<Scl.ElementsOf>;
58
+ } | {
59
+ verb: 'ssd';
60
+ sourceQuery: Core.Query<Config>;
61
+ /** The source SSD scope to reconcile (Substation / VoltageLevel / Bay). */
62
+ ref: Scl.Ref<TopologyStructuralTag>;
63
+ /** Target parent the SSD content is placed under (e.g. a project Bay). */
64
+ anchor: Scl.Ref<Scl.ElementsOf>;
65
+ /** Operation to perform. Defaults to `template`. */
66
+ scenario?: LifecycleScenario;
67
+ /**
68
+ * Multi-instance anchor: scope to ONE target instance (a specific placed Bay) — the frame,
69
+ * its Applications and composed Functions all resolve under it. Absent = all instances.
70
+ */
71
+ targetInstance?: Scl.Ref<Scl.ElementsOf>;
53
72
  };
54
73
  /**
55
74
  * `apply` inputs: the target plus the `report` produced by `report` (the
@@ -1 +1 @@
1
- {"version":3,"file":"contract.types.d.ts","sourceRoot":"","sources":["../../../../src/v2019C1/extensions/lifecycle/contract.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AACpF,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAA;AAC/F,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C,8DAA8D;AAC9D,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,KAAK,CAAA;AAEzC;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,MAAM,CAAA;AAE5C;;;;;;;;;;GAUG;AACH,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,UAAU,CAAA;AAE1D;;;;GAIG;AACH,MAAM,MAAM,eAAe,GACxB;IACA,IAAI,EAAE,KAAK,CAAA;IACX,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,mDAAmD;IACnD,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACxB,+DAA+D;IAC/D,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAC/B,oDAAoD;IACpD,QAAQ,CAAC,EAAE,iBAAiB,CAAA;CAC3B,GACD;IACA,IAAI,EAAE,KAAK,CAAA;IACX,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,sDAAsD;IACtD,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IAC3B,4DAA4D;IAC5D,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAC/B,oDAAoD;IACpD,QAAQ,CAAC,EAAE,iBAAiB,CAAA;CAC3B,CAAA;AAEJ;;;;;;;GAOG;AACH,MAAM,MAAM,oBAAoB,GAAG,eAAe,GAAG;IACpD,MAAM,EAAE,UAAU,CAAA;IAClB,SAAS,CAAC,EAAE,WAAW,CAAA;IACvB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;CACrC,CAAA"}
1
+ {"version":3,"file":"contract.types.d.ts","sourceRoot":"","sources":["../../../../src/v2019C1/extensions/lifecycle/contract.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAChE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AACpF,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAA;AAC/F,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C,8DAA8D;AAC9D,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAA;AAEjD;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,MAAM,CAAA;AAE5C;;;;;;;;;;GAUG;AACH,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,UAAU,CAAA;AAE1D;;;;GAIG;AACH,MAAM,MAAM,eAAe,GACxB;IACA,IAAI,EAAE,KAAK,CAAA;IACX,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,mDAAmD;IACnD,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACxB,+DAA+D;IAC/D,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAC/B,oDAAoD;IACpD,QAAQ,CAAC,EAAE,iBAAiB,CAAA;IAC5B,0FAA0F;IAC1F,cAAc,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;CACvC,GACD;IACA,IAAI,EAAE,KAAK,CAAA;IACX,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,sDAAsD;IACtD,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IAC3B,4DAA4D;IAC5D,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAC/B,oDAAoD;IACpD,QAAQ,CAAC,EAAE,iBAAiB,CAAA;IAC5B,0FAA0F;IAC1F,cAAc,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;CACvC,GACD;IACA,IAAI,EAAE,KAAK,CAAA;IACX,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,2EAA2E;IAC3E,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;IACnC,0EAA0E;IAC1E,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAC/B,oDAAoD;IACpD,QAAQ,CAAC,EAAE,iBAAiB,CAAA;IAC5B;;;OAGG;IACH,cAAc,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;CACvC,CAAA;AAEJ;;;;;;;GAOG;AACH,MAAM,MAAM,oBAAoB,GAAG,eAAe,GAAG;IACpD,MAAM,EAAE,UAAU,CAAA;IAClB,SAAS,CAAC,EAAE,WAAW,CAAA;IACvB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;CACrC,CAAA"}
@@ -0,0 +1,24 @@
1
+ import { Config, Scl } from '../../../config';
2
+ import { IdentityMode } from '../../identity/transaction';
3
+ import type * as Core from '@dialecte/core';
4
+ /**
5
+ * Finalize the identity of a freshly cloned subtree in ONE place: write the lineage
6
+ * ({@link writeIdentity}) then fix up the reference uuids for the mode.
7
+ *
8
+ * The post-step is a strict binary, so this is the single seam every clone-then-place path
9
+ * shares (instantiate/update/reconcile), instead of duplicating `writeIdentity(...)` +
10
+ * `keep ? restore : remap` at each site:
11
+ * - `keep` (fork) converges the clone to the source revision's uuids → {@link restoreClonedUuids}
12
+ * (no ref remap: refs were copied verbatim in source space and stay coherent).
13
+ * - `strip` / `stamp-template` / `preserve` all keep the fresh clone uuid → {@link applyUuidRemap}
14
+ * repoints the subtree's internal refs onto those fresh uuids.
15
+ *
16
+ * Canonical order is write-lineage THEN ref-fixup: the two touch disjoint attribute sets
17
+ * (`writeIdentity` reads the source attributes and writes only lineage; `applyUuidRemap` reads
18
+ * the fresh element uuids and writes only reference attributes), so the order is free.
19
+ */
20
+ export declare function finalizeClonedIdentity(tx: Core.Transaction<Config>, params: {
21
+ mappings: readonly Scl.CloneMapping[];
22
+ mode: IdentityMode;
23
+ }): Promise<void>;
24
+ //# sourceMappingURL=finalize-cloned-identity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finalize-cloned-identity.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/cross-cutting/finalize-cloned-identity.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAA;AAC7E,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,sBAAsB,CAC3C,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IAAE,QAAQ,EAAE,SAAS,GAAG,CAAC,YAAY,EAAE,CAAC;IAAC,IAAI,EAAE,YAAY,CAAA;CAAE,GACnE,OAAO,CAAC,IAAI,CAAC,CAiBf"}
@@ -1,4 +1,5 @@
1
1
  export { resolveAppliedSatellites } from './applied-satellites';
2
2
  export { CROSS_CUTTING_SATELLITE_CONTAINERS } from './applied-satellites.constants';
3
3
  export { cloneAppliedSatellites } from './clone-applied-satellites';
4
+ export { finalizeClonedIdentity } from './finalize-cloned-identity';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/cross-cutting/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,kCAAkC,EAAE,MAAM,gCAAgC,CAAA;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/cross-cutting/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,kCAAkC,EAAE,MAAM,gCAAgC,CAAA;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA"}
@@ -0,0 +1,30 @@
1
+ import { ReportInstance } from './diff.types';
2
+ import { Scl } from '../../../config';
3
+ import { AnyRefOrRecord } from '@dialecte/core';
4
+ /** A source record id → the element it became in the applied document. */
5
+ export type AppliedTargets = ReadonlyMap<string, AnyRefOrRecord>;
6
+ /** Merge several `source.id → applied ref` maps (later wins) into one. */
7
+ export declare function mergeApplied(...maps: ReadonlyMap<string, AnyRefOrRecord>[]): Map<string, AnyRefOrRecord>;
8
+ /**
9
+ * Build a `source.id → target ref` map from one clone's mappings. Within a single clone each source
10
+ * element is cloned once, so the map is unambiguous; the per-instance assembly (one map per instance)
11
+ * is what keeps two instances of the same template distinct.
12
+ */
13
+ export declare function sourceToTargetMap(mappings: readonly Scl.CloneMapping[]): Map<string, AnyRefOrRecord>;
14
+ /**
15
+ * Fill `appliedRef` on every realized node of ONE report instance, so the report itself carries the
16
+ * report→applied correlation (the consumer never re-derives it). Per node:
17
+ * - `removed` → left undefined (the element is gone from the applied doc);
18
+ * - otherwise a node with `instanceRef` (matched / modified / unchanged / target-only) → its own
19
+ * `instanceRef` (reconcile updates in place, so the id is stable);
20
+ * - otherwise an `added` node → its freshly-cloned element via `added` (keyed by `sourceRef.id`).
21
+ *
22
+ * External satellite companions live OUTSIDE `tree`, so each group's companion subtrees are walked
23
+ * too. Distinct `DiffNode` objects mean two instances of one template annotate independently — the
24
+ * disambiguation a global `source.id` map could not provide.
25
+ */
26
+ export declare function annotateInstance(params: {
27
+ reportInstance: ReportInstance;
28
+ added: AppliedTargets;
29
+ }): void;
30
+ //# sourceMappingURL=correlate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"correlate.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/correlate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAY,cAAc,EAAE,MAAM,cAAc,CAAA;AAC5D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,0EAA0E;AAC1E,MAAM,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;AAEhE,0EAA0E;AAC1E,wBAAgB,YAAY,CAC3B,GAAG,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,GAC5C,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAI7B;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAChC,QAAQ,EAAE,SAAS,GAAG,CAAC,YAAY,EAAE,GACnC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAM7B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACxC,cAAc,EAAE,cAAc,CAAA;IAC9B,KAAK,EAAE,cAAc,CAAA;CACrB,GAAG,IAAI,CAMP"}
@@ -1,7 +1,14 @@
1
1
  import { AcceptedIds, CollisionOverrides } from './decide.types';
2
- import { DecisionGroup, DecisionMap, DiffReport, GroupDecision } from './diff.types';
2
+ import { DecisionGroup, DecisionMap, DiffReport, GroupDecision, ReportInstance } from './diff.types';
3
3
  /** The decision groups scoped to one instance root (empty when the instance is absent/up-to-date). */
4
4
  export declare function groupsForInstance(report: DiffReport | undefined, instanceId: string): DecisionGroup[];
5
+ /** The report instance anchored to an EXISTING instance root (reconcile path). */
6
+ export declare function reportInstanceById(report: DiffReport | undefined, instanceId: string): ReportInstance | undefined;
7
+ /**
8
+ * The report instance for a FIRST-TIME instantiate: no `rootRef` yet, its diff tree rooted at the
9
+ * source element `sourceRootId`. Lets a verb annotate the added instance's nodes after the write.
10
+ */
11
+ export declare function firstTimeReportInstance(report: DiffReport | undefined, sourceRootId: string): ReportInstance | undefined;
5
12
  /** The action of a decision (absent -> accept; string or object form). */
6
13
  export declare function decisionAction(decision: GroupDecision | undefined): 'accept' | 'skip';
7
14
  /**
@@ -14,7 +21,7 @@ export declare function collisionOverrides(params: {
14
21
  decisions: DecisionMap;
15
22
  }): CollisionOverrides;
16
23
  /**
17
- * Dependency guard (07 §4): reject a decision set that accepts a group whose
24
+ * Dependency guard: reject a decision set that accepts a group whose
18
25
  * `dependsOn` parent is skipped. Runs before any write.
19
26
  */
20
27
  export declare function assertDecisionsCoherent(params: {
@@ -1 +1 @@
1
- {"version":3,"file":"decide.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/decide.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAY,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAEnG,sGAAsG;AACtG,wBAAgB,iBAAiB,CAChC,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,UAAU,EAAE,MAAM,GAChB,aAAa,EAAE,CAEjB;AAED,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAIrF;AAsBD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IAC1C,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,SAAS,EAAE,WAAW,CAAA;CACtB,GAAG,kBAAkB,CAWrB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE;IAC/C,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,SAAS,EAAE,WAAW,CAAA;CACtB,GAAG,IAAI,CAUP;AAMD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE;IACtC,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,SAAS,EAAE,WAAW,CAAA;CACtB,GAAG,WAAW,CAad"}
1
+ {"version":3,"file":"decide.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/decide.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACrE,OAAO,KAAK,EACX,aAAa,EACb,WAAW,EAEX,UAAU,EACV,aAAa,EACb,cAAc,EACd,MAAM,cAAc,CAAA;AAErB,sGAAsG;AACtG,wBAAgB,iBAAiB,CAChC,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,UAAU,EAAE,MAAM,GAChB,aAAa,EAAE,CAEjB;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,CACjC,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,UAAU,EAAE,MAAM,GAChB,cAAc,GAAG,SAAS,CAE5B;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACtC,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,YAAY,EAAE,MAAM,GAClB,cAAc,GAAG,SAAS,CAI5B;AAED,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAIrF;AAsBD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IAC1C,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,SAAS,EAAE,WAAW,CAAA;CACtB,GAAG,kBAAkB,CAWrB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE;IAC/C,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,SAAS,EAAE,WAAW,CAAA;CACtB,GAAG,IAAI,CAUP;AAMD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE;IACtC,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,SAAS,EAAE,WAAW,CAAA;CACtB,GAAG,WAAW,CAad"}
@@ -10,7 +10,7 @@ import type * as Core from '@dialecte/core';
10
10
  */
11
11
  export type LeftoverRefPolicy = (instanceChild: AnyTreeRecord) => Promise<'keep' | 'removed'>;
12
12
  /**
13
- * Engine diff (ENGINE.md §3): compares an (updated) template subtree against the
13
+ * Engine diff: compares an (updated) template subtree against the
14
14
  * existing instance, matched by `templateUuid` (= the source element's `uuid`),
15
15
  * and produces a structured `DiffReport`. This is the read-only "project then
16
16
  * diff" report — the same-space comparison the apply/reconcile step consumes.
@@ -51,6 +51,12 @@ export declare function diff(params: {
51
51
  refsAlwaysAdded?: boolean;
52
52
  /** How instance elements match source. `templateUuid` (default) or `uuid` (fork). */
53
53
  matchKey?: MatchKey;
54
+ /**
55
+ * Child tags to treat as BOUNDARIES: their subtrees are excluded from the diff because another
56
+ * report covers them (e.g. the topology frame report delegates Application/Function to the fn/app
57
+ * per-primary reports).
58
+ */
59
+ omit?: readonly string[];
54
60
  }): Promise<InstanceDiff>;
55
61
  /**
56
62
  * Assemble the per-instance {@link ReportInstance}s into the consumer-facing
@@ -1 +1 @@
1
- {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/diff.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAEX,aAAa,EACb,QAAQ,EACR,UAAU,EAEV,YAAY,EACZ,cAAc,EACd,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yCAAyC,CAAA;AACvE,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAqBnE;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,aAAa,EAAE,aAAa,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;AAE7F;;;;;;;;;;GAUG;AACH,wBAAsB,IAAI,CAAC,MAAM,EAAE;IAClC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,aAAa,EAAE,cAAc,CAAA;IAC7B,kFAAkF;IAClF,eAAe,CAAC,EAAE,cAAc,CAAA;IAChC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,qFAAqF;IACrF,QAAQ,CAAC,EAAE,QAAQ,CAAA;CACnB,GAAG,OAAO,CAAC,YAAY,CAAC,CAqCxB;AAqYD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG,UAAU,CAsBtE;AAED,iGAAiG;AACjG,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,aAAa,EAAE,CAE7D;AAED,0GAA0G;AAC1G,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,GAAG,WAAW,GAAG,MAAM,EAAE,CAS1F"}
1
+ {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/diff.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAEX,aAAa,EACb,QAAQ,EACR,UAAU,EAEV,YAAY,EACZ,cAAc,EACd,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yCAAyC,CAAA;AACvE,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAqBnE;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,aAAa,EAAE,aAAa,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;AAE7F;;;;;;;;;;GAUG;AACH,wBAAsB,IAAI,CAAC,MAAM,EAAE;IAClC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,aAAa,EAAE,cAAc,CAAA;IAC7B,kFAAkF;IAClF,eAAe,CAAC,EAAE,cAAc,CAAA;IAChC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,qFAAqF;IACrF,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB;;;;OAIG;IACH,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CACxB,GAAG,OAAO,CAAC,YAAY,CAAC,CAuCxB;AAoND;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG,UAAU,CAsBtE;AAED,iGAAiG;AACjG,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,aAAa,EAAE,CAE7D;AAED,0GAA0G;AAC1G,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,GAAG,WAAW,GAAG,MAAM,EAAE,CAS1F"}
@@ -14,6 +14,14 @@ export type DiffNode = {
14
14
  sourceRef?: AnyRefOrRecord;
15
15
  /** Instance element — present for `removed` / `modified` / `unchanged`. */
16
16
  instanceRef?: AnyRefOrRecord;
17
+ /**
18
+ * The element this node became in the APPLIED document, filled by `apply` on the report it
19
+ * returns (undefined on a pure `report`). Completes the source/instance/applied triple: a
20
+ * matched/modified node resolves to its `instanceRef` element, an `added` node (and added
21
+ * companions) to its freshly-cloned element, a `removed` node to nothing. Lets a consumer relate
22
+ * the report to the apply result by reading the node — no structural re-correlation.
23
+ */
24
+ appliedRef?: AnyRefOrRecord;
17
25
  /** Attribute deltas — present for `modified`. */
18
26
  attributeChanges?: AttributeChange[];
19
27
  children: DiffNode[];
@@ -45,7 +53,7 @@ export type GroupConflict = {
45
53
  adoptTargetId: string;
46
54
  };
47
55
  /**
48
- * A decision unit for the full track (ENGINE.md §8, 07 §3.1). The user decides
56
+ * A decision unit for the full track. The user decides
49
57
  * on a GROUP, never on an individual element.
50
58
  *
51
59
  * - `primary` is the recognizable change ("add Function X").
@@ -1 +1 @@
1
- {"version":3,"file":"diff.types.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/diff.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,oFAAoF;AAGpF,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,aAAa,CAAA;AAEvF,MAAM,MAAM,eAAe,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAE/E,MAAM,MAAM,QAAQ,GAAG;IACtB,MAAM,EAAE,UAAU,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,kFAAkF;IAClF,SAAS,CAAC,EAAE,cAAc,CAAA;IAC1B,2EAA2E;IAC3E,WAAW,CAAC,EAAE,cAAc,CAAA;IAC5B,iDAAiD;IACjD,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAA;IACpC,QAAQ,EAAE,QAAQ,EAAE,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAA;AAE9E;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,QAAQ,CAAA;IACd,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,OAAO,EAAE,WAAW,CAAA;CACpB,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG;IAC3B,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;CACrB,CAAA;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,aAAa,GAAG;IAC3B,sEAAsE;IACtE,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;IACxC,yHAAyH;IACzH,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,QAAQ,CAAA;IACjB,UAAU,EAAE,QAAQ,EAAE,CAAA;IACtB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,eAAe,EAAE,QAAQ,GAAG,MAAM,CAAA;IAClC;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,iBAAiB,EAAE,CAAA;IACxC;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAA;CACxB,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAC5B,iGAAiG;IACjG,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,yEAAyE;IACzE,KAAK,EAAE,MAAM,CAAA;IACb,oGAAoG;IACpG,MAAM,EAAE,OAAO,CAAA;IACf,kEAAkE;IAClE,QAAQ,EAAE,OAAO,CAAA;IACjB,yEAAyE;IACzE,IAAI,EAAE,QAAQ,CAAA;IACd,uEAAuE;IACvE,MAAM,EAAE,aAAa,EAAE,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACxB,kEAAkE;IAClE,SAAS,EAAE,cAAc,EAAE,CAAA;IAC3B;;;OAGG;IACH,cAAc,EAAE,OAAO,CAAA;IACvB,OAAO,EAAE,WAAW,CAAA;CACpB,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GACtB,QAAQ,GACR,MAAM,GACN;IAAE,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAA;AAEjE;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA"}
1
+ {"version":3,"file":"diff.types.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/diff.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,oFAAoF;AAGpF,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,aAAa,CAAA;AAEvF,MAAM,MAAM,eAAe,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAE/E,MAAM,MAAM,QAAQ,GAAG;IACtB,MAAM,EAAE,UAAU,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,kFAAkF;IAClF,SAAS,CAAC,EAAE,cAAc,CAAA;IAC1B,2EAA2E;IAC3E,WAAW,CAAC,EAAE,cAAc,CAAA;IAC5B;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,cAAc,CAAA;IAC3B,iDAAiD;IACjD,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAA;IACpC,QAAQ,EAAE,QAAQ,EAAE,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAA;AAE9E;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,QAAQ,CAAA;IACd,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,OAAO,EAAE,WAAW,CAAA;CACpB,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG;IAC3B,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;CACrB,CAAA;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,aAAa,GAAG;IAC3B,sEAAsE;IACtE,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;IACxC,yHAAyH;IACzH,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,QAAQ,CAAA;IACjB,UAAU,EAAE,QAAQ,EAAE,CAAA;IACtB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,eAAe,EAAE,QAAQ,GAAG,MAAM,CAAA;IAClC;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,iBAAiB,EAAE,CAAA;IACxC;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAA;CACxB,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAC5B,iGAAiG;IACjG,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,yEAAyE;IACzE,KAAK,EAAE,MAAM,CAAA;IACb,oGAAoG;IACpG,MAAM,EAAE,OAAO,CAAA;IACf,kEAAkE;IAClE,QAAQ,EAAE,OAAO,CAAA;IACjB,yEAAyE;IACzE,IAAI,EAAE,QAAQ,CAAA;IACd,uEAAuE;IACvE,MAAM,EAAE,aAAa,EAAE,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACxB,kEAAkE;IAClE,SAAS,EAAE,cAAc,EAAE,CAAA;IAC3B;;;OAGG;IACH,cAAc,EAAE,OAAO,CAAA;IACvB,OAAO,EAAE,WAAW,CAAA;CACpB,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GACtB,QAAQ,GACR,MAAM,GACN;IAAE,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAA;AAEjE;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { DecisionGroup, DiffNode } from './diff.types';
2
2
  /**
3
- * Group stage (ENGINE.md §8, 07 §3.1): fold the `DiffNode` change tree into
3
+ * Group stage: fold the `DiffNode` change tree into
4
4
  * accept/skip decision units.
5
5
  *
6
6
  * v1 rule (structural): each **topmost** changed node (its ancestors are all