semantifold 0.9.0 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. package/README.md +6 -3
  2. package/bin/semantifold.js +6 -0
  3. package/build/bin/semantifold.d.ts +3 -0
  4. package/build/bin/semantifold.d.ts.map +1 -0
  5. package/build/bin/semantifold.js +5 -0
  6. package/build/index.d.ts +8 -0
  7. package/build/index.d.ts.map +1 -1
  8. package/build/index.js +9 -1
  9. package/build/src/artifact-path.d.ts +16 -0
  10. package/build/src/artifact-path.d.ts.map +1 -1
  11. package/build/src/artifact-path.js +29 -3
  12. package/build/src/backends/c-check.d.ts +7 -0
  13. package/build/src/backends/c-check.d.ts.map +1 -0
  14. package/build/src/backends/c-check.js +65 -0
  15. package/build/src/backends/check-plan.d.ts +96 -0
  16. package/build/src/backends/check-plan.d.ts.map +1 -0
  17. package/build/src/backends/check-plan.js +135 -0
  18. package/build/src/backends/cpp-check.d.ts +7 -0
  19. package/build/src/backends/cpp-check.d.ts.map +1 -0
  20. package/build/src/backends/cpp-check.js +59 -0
  21. package/build/src/backends/csharp-check.d.ts +7 -0
  22. package/build/src/backends/csharp-check.d.ts.map +1 -0
  23. package/build/src/backends/csharp-check.js +125 -0
  24. package/build/src/backends/csharp.d.ts +1 -0
  25. package/build/src/backends/csharp.d.ts.map +1 -1
  26. package/build/src/backends/csharp.js +5 -4
  27. package/build/src/backends/dart-check.d.ts +7 -0
  28. package/build/src/backends/dart-check.d.ts.map +1 -0
  29. package/build/src/backends/dart-check.js +103 -0
  30. package/build/src/backends/dart.d.ts +2 -0
  31. package/build/src/backends/dart.d.ts.map +1 -1
  32. package/build/src/backends/dart.js +5 -5
  33. package/build/src/backends/go-check.d.ts +7 -0
  34. package/build/src/backends/go-check.d.ts.map +1 -0
  35. package/build/src/backends/go-check.js +77 -0
  36. package/build/src/backends/go.d.ts +1 -0
  37. package/build/src/backends/go.d.ts.map +1 -1
  38. package/build/src/backends/go.js +3 -3
  39. package/build/src/backends/java-check.d.ts +21 -0
  40. package/build/src/backends/java-check.d.ts.map +1 -0
  41. package/build/src/backends/java-check.js +73 -0
  42. package/build/src/backends/javascript-check.d.ts +7 -0
  43. package/build/src/backends/javascript-check.d.ts.map +1 -0
  44. package/build/src/backends/javascript-check.js +29 -0
  45. package/build/src/backends/kotlin-check.d.ts +7 -0
  46. package/build/src/backends/kotlin-check.d.ts.map +1 -0
  47. package/build/src/backends/kotlin-check.js +31 -0
  48. package/build/src/backends/php-check.d.ts +7 -0
  49. package/build/src/backends/php-check.d.ts.map +1 -0
  50. package/build/src/backends/php-check.js +21 -0
  51. package/build/src/backends/program.d.ts +7 -0
  52. package/build/src/backends/program.d.ts.map +1 -1
  53. package/build/src/backends/program.js +16 -1
  54. package/build/src/backends/python-check.d.ts +7 -0
  55. package/build/src/backends/python-check.d.ts.map +1 -0
  56. package/build/src/backends/python-check.js +28 -0
  57. package/build/src/backends/ruby-check.d.ts +7 -0
  58. package/build/src/backends/ruby-check.d.ts.map +1 -0
  59. package/build/src/backends/ruby-check.js +21 -0
  60. package/build/src/backends/rust-check.d.ts +7 -0
  61. package/build/src/backends/rust-check.d.ts.map +1 -0
  62. package/build/src/backends/rust-check.js +65 -0
  63. package/build/src/backends/swift-check.d.ts +7 -0
  64. package/build/src/backends/swift-check.d.ts.map +1 -0
  65. package/build/src/backends/swift-check.js +77 -0
  66. package/build/src/backends/typescript-check.d.ts +7 -0
  67. package/build/src/backends/typescript-check.d.ts.map +1 -0
  68. package/build/src/backends/typescript-check.js +33 -0
  69. package/build/src/backends/zig-check.d.ts +7 -0
  70. package/build/src/backends/zig-check.d.ts.map +1 -0
  71. package/build/src/backends/zig-check.js +70 -0
  72. package/build/src/diagnostic.d.ts +13 -1
  73. package/build/src/diagnostic.d.ts.map +1 -1
  74. package/build/src/diagnostic.js +14 -2
  75. package/build/src/frontends/program.d.ts +6 -0
  76. package/build/src/frontends/program.d.ts.map +1 -1
  77. package/build/src/frontends/program.js +9 -1
  78. package/build/src/language-registry.d.ts +54 -0
  79. package/build/src/language-registry.d.ts.map +1 -1
  80. package/build/src/language-registry.js +107 -5
  81. package/build/src/project-build.d.ts +172 -0
  82. package/build/src/project-build.d.ts.map +1 -0
  83. package/build/src/project-build.js +320 -0
  84. package/build/src/project-cli.d.ts +40 -0
  85. package/build/src/project-cli.d.ts.map +1 -0
  86. package/build/src/project-cli.js +145 -0
  87. package/build/src/project-manifest.d.ts +148 -0
  88. package/build/src/project-manifest.d.ts.map +1 -0
  89. package/build/src/project-manifest.js +432 -0
  90. package/build/src/project-reporter.d.ts +81 -0
  91. package/build/src/project-reporter.d.ts.map +1 -0
  92. package/build/src/project-reporter.js +293 -0
  93. package/build/src/project-snapshot.d.ts +129 -0
  94. package/build/src/project-snapshot.d.ts.map +1 -0
  95. package/build/src/project-snapshot.js +362 -0
  96. package/build/src/project-watch-reporter.d.ts +125 -0
  97. package/build/src/project-watch-reporter.d.ts.map +1 -0
  98. package/build/src/project-watch-reporter.js +280 -0
  99. package/build/src/project-watch.d.ts +133 -0
  100. package/build/src/project-watch.d.ts.map +1 -0
  101. package/build/src/project-watch.js +839 -0
  102. package/build/src/publication.d.ts +69 -5
  103. package/build/src/publication.d.ts.map +1 -1
  104. package/build/src/publication.js +246 -57
  105. package/build/src/semantic/types.d.ts +303 -2
  106. package/build/src/semantic/types.d.ts.map +1 -1
  107. package/build/src/semantic/types.js +79 -2
  108. package/build/src/subprocess.d.ts +8 -0
  109. package/build/src/subprocess.d.ts.map +1 -1
  110. package/build/src/subprocess.js +50 -9
  111. package/build/src/target-check.d.ts +52 -0
  112. package/build/src/target-check.d.ts.map +1 -0
  113. package/build/src/target-check.js +796 -0
  114. package/build/src/toolchains.d.ts.map +1 -1
  115. package/build/src/toolchains.js +3 -3
  116. package/docs/architecture.md +3 -1
  117. package/docs/c.md +4 -0
  118. package/docs/cpp.md +4 -0
  119. package/docs/dart.md +4 -0
  120. package/docs/generated-artifact-publication.md +11 -8
  121. package/docs/kotlin.md +2 -2
  122. package/docs/language-support.md +29 -3
  123. package/docs/project-build-cli.md +147 -0
  124. package/docs/project-watch.md +60 -0
  125. package/docs/rust.md +4 -0
  126. package/docs/swift.md +2 -0
  127. package/docs/testing.md +70 -3
  128. package/docs/watch-build-pipeline.md +39 -23
  129. package/docs/zig.md +2 -0
  130. package/examples/jsdoc-java-watch/expected-output.txt +3 -0
  131. package/examples/jsdoc-java-watch/semantifold.json +23 -0
  132. package/examples/jsdoc-java-watch/src/main.js +21 -0
  133. package/index.js +8 -0
  134. package/package.json +6 -1
  135. package/src/artifact-path.js +31 -2
  136. package/src/backends/c-check.js +80 -0
  137. package/src/backends/check-plan.js +147 -0
  138. package/src/backends/cpp-check.js +73 -0
  139. package/src/backends/csharp-check.js +139 -0
  140. package/src/backends/csharp.js +4 -3
  141. package/src/backends/dart-check.js +117 -0
  142. package/src/backends/dart.js +4 -4
  143. package/src/backends/go-check.js +89 -0
  144. package/src/backends/go.js +2 -2
  145. package/src/backends/java-check.js +77 -0
  146. package/src/backends/javascript-check.js +33 -0
  147. package/src/backends/kotlin-check.js +41 -0
  148. package/src/backends/php-check.js +23 -0
  149. package/src/backends/program.js +17 -0
  150. package/src/backends/python-check.js +30 -0
  151. package/src/backends/ruby-check.js +23 -0
  152. package/src/backends/rust-check.js +78 -0
  153. package/src/backends/swift-check.js +89 -0
  154. package/src/backends/typescript-check.js +37 -0
  155. package/src/backends/zig-check.js +81 -0
  156. package/src/diagnostic.js +9 -1
  157. package/src/frontends/program.js +9 -0
  158. package/src/language-registry.js +113 -4
  159. package/src/project-build.js +353 -0
  160. package/src/project-cli.js +155 -0
  161. package/src/project-manifest.js +479 -0
  162. package/src/project-reporter.js +320 -0
  163. package/src/project-snapshot.js +403 -0
  164. package/src/project-watch-reporter.js +303 -0
  165. package/src/project-watch.js +870 -0
  166. package/src/publication.js +275 -58
  167. package/src/semantic/types.js +87 -1
  168. package/src/subprocess.js +49 -8
  169. package/src/target-check.js +844 -0
  170. package/src/toolchains.js +3 -2
  171. package/tsconfig.json +1 -1
@@ -0,0 +1,21 @@
1
+ // @ts-check
2
+ import { checkArtifacts, checkPlan, checkStage, checkTool, pathArgument } from "./check-plan.js";
3
+ /**
4
+ * Constructs PHP's non-executing syntax-check plan.
5
+ * @param {import("../language-registry.js").TargetCheckPlanContext} context - Validated candidate context.
6
+ * @returns {import("../semantic/types.js").TargetCheckPlan} Immutable PHP plan.
7
+ */
8
+ export function createPhpCheckPlan(context) {
9
+ const tool = checkTool(context, "php82", "php");
10
+ const artifacts = checkArtifacts(context, artifact => artifact.path.endsWith(".php"), "php", "only staged '.php' artifacts");
11
+ return checkPlan(context, "php", artifacts, artifacts.map(artifact => checkStage({
12
+ argv: ["-n", "-l", artifact],
13
+ cwd: context.sourcePath,
14
+ inputs: [artifact],
15
+ output: null,
16
+ pathArguments: [pathArgument(2, "source")],
17
+ stage: "validate",
18
+ tool
19
+ })));
20
+ }
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhwLWNoZWNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JhY2tlbmRzL3BocC1jaGVjay5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFZO0FBRVosT0FBTyxFQUFDLGNBQWMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQTtBQUU5Rjs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGtCQUFrQixDQUFDLE9BQU87SUFDeEMsTUFBTSxJQUFJLEdBQUcsU0FBUyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUE7SUFDL0MsTUFBTSxTQUFTLEdBQUcsY0FBYyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssRUFBRSw4QkFBOEIsQ0FBQyxDQUFBO0lBRTVILE9BQU8sU0FBUyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUM7UUFDL0UsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLENBQUM7UUFDNUIsR0FBRyxFQUFFLE9BQU8sQ0FBQyxVQUFVO1FBQ3ZCLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQztRQUNsQixNQUFNLEVBQUUsSUFBSTtRQUNaLGFBQWEsRUFBRSxDQUFDLFlBQVksQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDMUMsS0FBSyxFQUFFLFVBQVU7UUFDakIsSUFBSTtLQUNMLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWNoZWNrXG5cbmltcG9ydCB7Y2hlY2tBcnRpZmFjdHMsIGNoZWNrUGxhbiwgY2hlY2tTdGFnZSwgY2hlY2tUb29sLCBwYXRoQXJndW1lbnR9IGZyb20gXCIuL2NoZWNrLXBsYW4uanNcIlxuXG4vKipcbiAqIENvbnN0cnVjdHMgUEhQJ3Mgbm9uLWV4ZWN1dGluZyBzeW50YXgtY2hlY2sgcGxhbi5cbiAqIEBwYXJhbSB7aW1wb3J0KFwiLi4vbGFuZ3VhZ2UtcmVnaXN0cnkuanNcIikuVGFyZ2V0Q2hlY2tQbGFuQ29udGV4dH0gY29udGV4dCAtIFZhbGlkYXRlZCBjYW5kaWRhdGUgY29udGV4dC5cbiAqIEByZXR1cm5zIHtpbXBvcnQoXCIuLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5UYXJnZXRDaGVja1BsYW59IEltbXV0YWJsZSBQSFAgcGxhbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVBocENoZWNrUGxhbihjb250ZXh0KSB7XG4gIGNvbnN0IHRvb2wgPSBjaGVja1Rvb2woY29udGV4dCwgXCJwaHA4MlwiLCBcInBocFwiKVxuICBjb25zdCBhcnRpZmFjdHMgPSBjaGVja0FydGlmYWN0cyhjb250ZXh0LCBhcnRpZmFjdCA9PiBhcnRpZmFjdC5wYXRoLmVuZHNXaXRoKFwiLnBocFwiKSwgXCJwaHBcIiwgXCJvbmx5IHN0YWdlZCAnLnBocCcgYXJ0aWZhY3RzXCIpXG5cbiAgcmV0dXJuIGNoZWNrUGxhbihjb250ZXh0LCBcInBocFwiLCBhcnRpZmFjdHMsIGFydGlmYWN0cy5tYXAoYXJ0aWZhY3QgPT4gY2hlY2tTdGFnZSh7XG4gICAgYXJndjogW1wiLW5cIiwgXCItbFwiLCBhcnRpZmFjdF0sXG4gICAgY3dkOiBjb250ZXh0LnNvdXJjZVBhdGgsXG4gICAgaW5wdXRzOiBbYXJ0aWZhY3RdLFxuICAgIG91dHB1dDogbnVsbCxcbiAgICBwYXRoQXJndW1lbnRzOiBbcGF0aEFyZ3VtZW50KDIsIFwic291cmNlXCIpXSxcbiAgICBzdGFnZTogXCJ2YWxpZGF0ZVwiLFxuICAgIHRvb2xcbiAgfSkpKVxufVxuIl19
@@ -1,3 +1,10 @@
1
+ /**
2
+ * Reports whether program generation implements one registered target/role combination.
3
+ * @param {string} language - Registered target identity.
4
+ * @param {string} role - Explicit project target role.
5
+ * @returns {boolean} Whether complete semantic programs support the combination.
6
+ */
7
+ export declare function supportsProgramArtifactRole(language: string, role: string): boolean;
1
8
  /**
2
9
  * Validates and prepares a complete semantic program for a non-text backend without allocating a writer.
3
10
  * @param {object} input - Backend preflight request.
@@ -1 +1 @@
1
- {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../../../src/backends/program.js"],"names":[],"mappings":"AA2BA;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,EAAC,eAAe,EAAE,kBAAkB,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAC,EANhH;IAA+D,eAAe,EAAtE,OAAO,sBAAsB,EAAE,gBAAgB,CACvD;IAA8D,kBAAkB,EAAxE,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAA8D,OAAO,EAA7D,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAA+E,eAAe,AAA9F,CACA,EADQ,QAAQ,CAAC,GAAG,CAAC,OAAO,sBAAsB,EAAE,gBAAgB,CAAC,CAAC,CACtE;CAEgH,GAFtG;IAAC,OAAO,EAAE,OAAO,sBAAsB,EAAE,cAAc,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,sBAAsB,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,sBAAsB,EAAE,gBAAgB,CAAA;KAAC,EAAE,CAAA;CAAC,CA4B3O;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAR3C;IAA8D,QAAQ,EAA9D,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAA8D,OAAO,EAA7D,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAAuC,IAAI,AAA3C,CACA,EADQ,MAAM,GAAG,aAAa,CAC9B;IAA4N,aAAa,AAAzO,CACA,EADQ,OAAO,sBAAsB,EAAE,gCAAgC,GAAG,OAAO,sBAAsB,EAAE,oCAAoC,GAAG,OAAO,sBAAsB,EAAE,oCAAoC,CACnN;IAAyM,MAAM,AAA/M,CACA,EADQ,OAAO,sBAAsB,EAAE,wBAAwB,EAAE,GAAG,OAAO,sBAAsB,EAAE,2BAA2B,EAAE,GAAG,OAAO,sBAAsB,EAAE,4BAA4B,EAAE,CAChM;IAA6E,SAAS,AAAtF,CACA,EADQ,OAAO,sBAAsB,EAAE,2BAA2B,EAAE,CACpE;CAE2C,GAFjC,OAAO,sBAAsB,EAAE,oBAAoB,CAqH/D;AAGE,YAAS,oBAAoB,GAC7B;;;;IAAuE,WAAW,EAAvE,OAAO,0BAA0B,EAAE,uBAAuB,CACrE;;;;IAA+E,OAAO,EAA3E,GAAG,CAAC,MAAM,EAAE,OAAO,wBAAwB,EAAE,oBAAoB,CAAC,CAC7E;;;;IAAuC,cAAc,EAA1C,wBAAwB,EAAE,CACrC;;;;IAAoD,sBAAsB,EAA/D,GAAG,CAAC,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAClD;;;;IAAkC,uBAAuB,EAA9C,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAChC;;;;IAAkC,qBAAqB,EAA5C,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAChC;;;;IAA0B,aAAa,EAA5B,MAAM,GAAG,IAAI,CAC1B;CAAA,CAAA;AAGE,YAAS,wBAAwB,GACjC;;;;IAAmB,MAAM,EAAd,MAAM,CACjB;;;;IAAmB,SAAS,EAAjB,MAAM,CACnB;CAAA,CAAA"}
1
+ {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../../../src/backends/program.js"],"names":[],"mappings":"AA2BA;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,EAJzC,MAIyC,EAAE,IAAI,EAH/C,MAG+C,GAF7C,OAAO,CAWnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,EAAC,eAAe,EAAE,kBAAkB,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAC,EANhH;IAA+D,eAAe,EAAtE,OAAO,sBAAsB,EAAE,gBAAgB,CACvD;IAA8D,kBAAkB,EAAxE,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAA8D,OAAO,EAA7D,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAA+E,eAAe,AAA9F,CACA,EADQ,QAAQ,CAAC,GAAG,CAAC,OAAO,sBAAsB,EAAE,gBAAgB,CAAC,CAAC,CACtE;CAEgH,GAFtG;IAAC,OAAO,EAAE,OAAO,sBAAsB,EAAE,cAAc,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,sBAAsB,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,sBAAsB,EAAE,gBAAgB,CAAA;KAAC,EAAE,CAAA;CAAC,CA4B3O;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAR3C;IAA8D,QAAQ,EAA9D,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAA8D,OAAO,EAA7D,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAAuC,IAAI,AAA3C,CACA,EADQ,MAAM,GAAG,aAAa,CAC9B;IAA4N,aAAa,AAAzO,CACA,EADQ,OAAO,sBAAsB,EAAE,gCAAgC,GAAG,OAAO,sBAAsB,EAAE,oCAAoC,GAAG,OAAO,sBAAsB,EAAE,oCAAoC,CACnN;IAAyM,MAAM,AAA/M,CACA,EADQ,OAAO,sBAAsB,EAAE,wBAAwB,EAAE,GAAG,OAAO,sBAAsB,EAAE,2BAA2B,EAAE,GAAG,OAAO,sBAAsB,EAAE,4BAA4B,EAAE,CAChM;IAA6E,SAAS,AAAtF,CACA,EADQ,OAAO,sBAAsB,EAAE,2BAA2B,EAAE,CACpE;CAE2C,GAFjC,OAAO,sBAAsB,EAAE,oBAAoB,CAqH/D;AAGE,YAAS,oBAAoB,GAC7B;;;;IAAuE,WAAW,EAAvE,OAAO,0BAA0B,EAAE,uBAAuB,CACrE;;;;IAA+E,OAAO,EAA3E,GAAG,CAAC,MAAM,EAAE,OAAO,wBAAwB,EAAE,oBAAoB,CAAC,CAC7E;;;;IAAuC,cAAc,EAA1C,wBAAwB,EAAE,CACrC;;;;IAAoD,sBAAsB,EAA/D,GAAG,CAAC,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAClD;;;;IAAkC,uBAAuB,EAA9C,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAChC;;;;IAAkC,qBAAqB,EAA5C,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAChC;;;;IAA0B,aAAa,EAA5B,MAAM,GAAG,IAAI,CAC1B;CAAA,CAAA;AAGE,YAAS,wBAAwB,GACjC;;;;IAAmB,MAAM,EAAd,MAAM,CACjB;;;;IAAmB,SAAS,EAAjB,MAAM,CACnB;CAAA,CAAA"}