@rsaglobaltech/specgate 0.18.0 → 0.19.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. package/CHANGELOG.md +77 -1
  2. package/bin/specgate.ts +47 -47
  3. package/dist/bin/specgate.js +47 -46
  4. package/dist/bin/specgate.js.map +1 -1
  5. package/dist/packages/core/src/application/ArchiveChangeUseCase.js +1 -1
  6. package/dist/packages/core/src/application/ArchiveChangeUseCase.js.map +1 -1
  7. package/dist/packages/core/src/application/ValidateProjectUseCase.js +1 -1
  8. package/dist/packages/core/src/application/ValidateProjectUseCase.js.map +1 -1
  9. package/dist/packages/core/src/domain/ChangeTemplates.js +1 -1
  10. package/dist/packages/core/src/domain/DeltaFeature.js +3 -3
  11. package/dist/packages/core/src/domain/DeltaFeature.js.map +1 -1
  12. package/dist/packages/core/src/domain/DerivedMatrix.js +9 -9
  13. package/dist/packages/core/src/domain/DerivedMatrix.js.map +1 -1
  14. package/dist/packages/core/src/domain/DoneVerification.js +1 -1
  15. package/dist/packages/core/src/domain/DoneVerification.js.map +1 -1
  16. package/dist/packages/core/src/domain/DraftChecklist.js +3 -3
  17. package/dist/packages/core/src/domain/DraftChecklist.js.map +1 -1
  18. package/dist/packages/core/src/domain/GherkinTags.js +12 -12
  19. package/dist/packages/core/src/domain/GherkinTags.js.map +1 -1
  20. package/dist/packages/core/src/domain/InboundChange.js +1 -1
  21. package/dist/packages/core/src/domain/InboundChange.js.map +1 -1
  22. package/dist/packages/core/src/domain/Language.js +2 -2
  23. package/dist/packages/core/src/domain/Language.js.map +1 -1
  24. package/dist/packages/core/src/domain/Lockfile.js +7 -7
  25. package/dist/packages/core/src/domain/Lockfile.js.map +1 -1
  26. package/dist/packages/core/src/domain/PackDelta.js +1 -1
  27. package/dist/packages/core/src/domain/PackDelta.js.map +1 -1
  28. package/dist/packages/core/src/domain/RequirementGraph.js +2 -2
  29. package/dist/packages/core/src/domain/SpecParser.js +6 -6
  30. package/dist/packages/core/src/domain/SpecParser.js.map +1 -1
  31. package/dist/packages/core/src/domain/TraceMerge.js +4 -4
  32. package/dist/packages/core/src/domain/TraceMerge.js.map +1 -1
  33. package/dist/packages/core/src/domain/TraceabilityFormat.js +4 -4
  34. package/dist/packages/core/src/domain/TraceabilityFormat.js.map +1 -1
  35. package/dist/packages/core/src/domain/ValueAnnotations.js +8 -8
  36. package/dist/packages/core/src/domain/ValueAnnotations.js.map +1 -1
  37. package/dist/packages/core/src/domain/WriteScope.js +3 -3
  38. package/dist/packages/core/src/domain/WriteScope.js.map +1 -1
  39. package/dist/packages/core/src/infrastructure/ChangeWorkspace.js +2 -2
  40. package/dist/packages/core/src/infrastructure/ChangeWorkspace.js.map +1 -1
  41. package/dist/packages/core/src/infrastructure/ConsoleReporter.js +2 -2
  42. package/dist/packages/core/src/infrastructure/ConsoleReporter.js.map +1 -1
  43. package/dist/packages/core/src/infrastructure/DerivedMatrixSources.js +2 -2
  44. package/dist/packages/core/src/infrastructure/DerivedMatrixSources.js.map +1 -1
  45. package/dist/packages/core/src/infrastructure/DiskLanguageRepository.js +4 -4
  46. package/dist/packages/core/src/infrastructure/DiskLanguageRepository.js.map +1 -1
  47. package/dist/packages/core/src/infrastructure/DiskPackDeltaRepository.js +1 -1
  48. package/dist/packages/core/src/infrastructure/DiskPackDeltaRepository.js.map +1 -1
  49. package/dist/packages/core/src/infrastructure/GitContributionStager.js +3 -3
  50. package/dist/packages/core/src/infrastructure/GitContributionStager.js.map +1 -1
  51. package/dist/packages/core/src/infrastructure/RemotePackResolver.js +5 -5
  52. package/dist/packages/core/src/infrastructure/RemotePackResolver.js.map +1 -1
  53. package/dist/packages/core/test/unit/delta-feature.test.js +3 -3
  54. package/dist/packages/core/test/unit/delta-feature.test.js.map +1 -1
  55. package/dist/packages/core/test/unit/derived-matrix.test.js +8 -8
  56. package/dist/packages/core/test/unit/derived-matrix.test.js.map +1 -1
  57. package/dist/packages/core/test/unit/gherkin-tags.test.js +8 -8
  58. package/dist/packages/core/test/unit/gherkin-tags.test.js.map +1 -1
  59. package/dist/packages/core/test/unit/inbound-change.test.js +1 -1
  60. package/dist/packages/core/test/unit/inbound-change.test.js.map +1 -1
  61. package/dist/packages/core/test/unit/matrix-dependencies.test.js +5 -5
  62. package/dist/packages/core/test/unit/matrix-dependencies.test.js.map +1 -1
  63. package/dist/packages/core/test/unit/new-requirement.test.js +1 -1
  64. package/dist/packages/core/test/unit/new-requirement.test.js.map +1 -1
  65. package/dist/packages/core/test/unit/value-annotations.test.js +5 -5
  66. package/dist/packages/core/test/unit/value-annotations.test.js.map +1 -1
  67. package/dist/packages/core/test/unit/write-scope-status.test.js +5 -5
  68. package/dist/packages/core/test/unit/write-scope-status.test.js.map +1 -1
  69. package/dist/packages/mcp-spec-driven/src/native-tools.js +3 -3
  70. package/dist/packages/mcp-spec-driven/src/native-tools.js.map +1 -1
  71. package/dist/packages/mcp-spec-driven/src/server.js +1 -7
  72. package/dist/packages/mcp-spec-driven/src/server.js.map +1 -1
  73. package/dist/packages/mcp-spec-driven/src/tools.js +4 -4
  74. package/dist/packages/mcp-spec-driven/src/tools.js.map +1 -1
  75. package/dist/scripts/agents/init.js +26 -47
  76. package/dist/scripts/agents/init.js.map +1 -1
  77. package/dist/scripts/alm/cli.js +37 -3
  78. package/dist/scripts/alm/cli.js.map +1 -1
  79. package/dist/scripts/alm/providers/index.js +1 -1
  80. package/dist/scripts/alm/providers/index.js.map +1 -1
  81. package/dist/scripts/change/instructions.js +2 -2
  82. package/dist/scripts/change/instructions.js.map +1 -1
  83. package/dist/scripts/cli/commands/alm/PullCommand.js +1 -1
  84. package/dist/scripts/cli/commands/alm/PullCommand.js.map +1 -1
  85. package/dist/scripts/cli/commands/change/ChangeCommand.js +99 -98
  86. package/dist/scripts/cli/commands/change/ChangeCommand.js.map +1 -1
  87. package/dist/scripts/cli/commands/config/CiInitCommand.js +6 -4
  88. package/dist/scripts/cli/commands/config/CiInitCommand.js.map +1 -1
  89. package/dist/scripts/cli/commands/config/CompletionCommand.js +10 -10
  90. package/dist/scripts/cli/commands/config/CompletionCommand.js.map +1 -1
  91. package/dist/scripts/cli/commands/config/ConfigInitCommand.js +11 -19
  92. package/dist/scripts/cli/commands/config/ConfigInitCommand.js.map +1 -1
  93. package/dist/scripts/cli/commands/config/ConfigSetCommand.js +5 -1
  94. package/dist/scripts/cli/commands/config/ConfigSetCommand.js.map +1 -1
  95. package/dist/scripts/cli/commands/harness/RunCommand.js +73 -38
  96. package/dist/scripts/cli/commands/harness/RunCommand.js.map +1 -1
  97. package/dist/scripts/cli/commands/pack/BundlePackCommand.js +36 -2
  98. package/dist/scripts/cli/commands/pack/BundlePackCommand.js.map +1 -1
  99. package/dist/scripts/cli/commands/pack/ExpandDomainPackCommand.js +2 -2
  100. package/dist/scripts/cli/commands/pack/ExpandDomainPackCommand.js.map +1 -1
  101. package/dist/scripts/cli/commands/pack/InferPackCommand.js +2 -1
  102. package/dist/scripts/cli/commands/pack/InferPackCommand.js.map +1 -1
  103. package/dist/scripts/cli/commands/pack/InitPackCommand.js +23 -32
  104. package/dist/scripts/cli/commands/pack/InitPackCommand.js.map +1 -1
  105. package/dist/scripts/cli/commands/pack/LintPackCommand.js +4 -3
  106. package/dist/scripts/cli/commands/pack/LintPackCommand.js.map +1 -1
  107. package/dist/scripts/cli/commands/project/AdoptCommand.js +9 -3
  108. package/dist/scripts/cli/commands/project/AdoptCommand.js.map +1 -1
  109. package/dist/scripts/cli/commands/project/InitProjectCommand.js +8 -5
  110. package/dist/scripts/cli/commands/project/InitProjectCommand.js.map +1 -1
  111. package/dist/scripts/cli/commands/project/OnboardCommand.js +17 -24
  112. package/dist/scripts/cli/commands/project/OnboardCommand.js.map +1 -1
  113. package/dist/scripts/cli/commands/project/UpdateCommand.js +23 -43
  114. package/dist/scripts/cli/commands/project/UpdateCommand.js.map +1 -1
  115. package/dist/scripts/cli/commands/quality/CheckCommand.js +30 -17
  116. package/dist/scripts/cli/commands/quality/CheckCommand.js.map +1 -1
  117. package/dist/scripts/cli/commands/quality/DoctorCommand.js +27 -10
  118. package/dist/scripts/cli/commands/quality/DoctorCommand.js.map +1 -1
  119. package/dist/scripts/cli/commands/quality/FixCommand.js +24 -29
  120. package/dist/scripts/cli/commands/quality/FixCommand.js.map +1 -1
  121. package/dist/scripts/cli/commands/quality/ReportCommand.js +8 -4
  122. package/dist/scripts/cli/commands/quality/ReportCommand.js.map +1 -1
  123. package/dist/scripts/cli/commands/quality/ValidateSpecsCommand.js +69 -16
  124. package/dist/scripts/cli/commands/quality/ValidateSpecsCommand.js.map +1 -1
  125. package/dist/scripts/cli/commands/spec/DoneCommand.js +37 -23
  126. package/dist/scripts/cli/commands/spec/DoneCommand.js.map +1 -1
  127. package/dist/scripts/cli/commands/spec/DraftCommand.js +166 -81
  128. package/dist/scripts/cli/commands/spec/DraftCommand.js.map +1 -1
  129. package/dist/scripts/cli/commands/spec/MatrixCommand.js +24 -27
  130. package/dist/scripts/cli/commands/spec/MatrixCommand.js.map +1 -1
  131. package/dist/scripts/cli/commands/spec/NewCommand.js +11 -14
  132. package/dist/scripts/cli/commands/spec/NewCommand.js.map +1 -1
  133. package/dist/scripts/cli/commands/spec/PetCommand.js +102 -0
  134. package/dist/scripts/cli/commands/spec/PetCommand.js.map +1 -0
  135. package/dist/scripts/cli/commands/spec/PlanCommand.js +34 -39
  136. package/dist/scripts/cli/commands/spec/PlanCommand.js.map +1 -1
  137. package/dist/scripts/cli/commands/spec/ReqCommand.js +51 -58
  138. package/dist/scripts/cli/commands/spec/ReqCommand.js.map +1 -1
  139. package/dist/scripts/cli/commands/spec/StatusCommand.js +59 -44
  140. package/dist/scripts/cli/commands/spec/StatusCommand.js.map +1 -1
  141. package/dist/scripts/cli/commands/spec/StudioCommand.js +16 -24
  142. package/dist/scripts/cli/commands/spec/StudioCommand.js.map +1 -1
  143. package/dist/scripts/cli/commands/specops/ContributeCommand.js +24 -32
  144. package/dist/scripts/cli/commands/specops/ContributeCommand.js.map +1 -1
  145. package/dist/scripts/cli/commands/specops/DiffCommand.js +3 -2
  146. package/dist/scripts/cli/commands/specops/DiffCommand.js.map +1 -1
  147. package/dist/scripts/cli/commands/specops/SyncCommand.js +4 -3
  148. package/dist/scripts/cli/commands/specops/SyncCommand.js.map +1 -1
  149. package/dist/scripts/docs/blocks.js +4 -4
  150. package/dist/scripts/docs/blocks.js.map +1 -1
  151. package/dist/scripts/docs/build-site.js +23 -8
  152. package/dist/scripts/docs/build-site.js.map +1 -1
  153. package/dist/scripts/docs/components.js +24 -24
  154. package/dist/scripts/docs/components.js.map +1 -1
  155. package/dist/scripts/docs/nav.js +8 -18
  156. package/dist/scripts/docs/nav.js.map +1 -1
  157. package/dist/scripts/docs/record-journey.js +2 -2
  158. package/dist/scripts/docs/record-journey.js.map +1 -1
  159. package/dist/scripts/docs/record-terminal.js +12 -12
  160. package/dist/scripts/docs/record-terminal.js.map +1 -1
  161. package/dist/scripts/draft/brief-setup.js +4 -0
  162. package/dist/scripts/draft/brief-setup.js.map +1 -1
  163. package/dist/scripts/draft/confined-agent.js +19 -0
  164. package/dist/scripts/draft/confined-agent.js.map +1 -1
  165. package/dist/scripts/draft/drafting-guide.js +3 -1
  166. package/dist/scripts/draft/drafting-guide.js.map +1 -1
  167. package/dist/scripts/gen_mcp_tools.js +4 -4
  168. package/dist/scripts/gen_mcp_tools.js.map +1 -1
  169. package/dist/scripts/harness/init.js +25 -16
  170. package/dist/scripts/harness/init.js.map +1 -1
  171. package/dist/scripts/harness/report.js +39 -40
  172. package/dist/scripts/harness/report.js.map +1 -1
  173. package/dist/scripts/harness/worktree-lock.js +2 -2
  174. package/dist/scripts/harness/worktree-lock.js.map +1 -1
  175. package/dist/scripts/lib/command.js +3 -2
  176. package/dist/scripts/lib/command.js.map +1 -1
  177. package/dist/scripts/lib/derived-writes.js +1 -1
  178. package/dist/scripts/lib/diagnostics.js +12 -16
  179. package/dist/scripts/lib/diagnostics.js.map +1 -1
  180. package/dist/scripts/lib/placeholders.js +4 -4
  181. package/dist/scripts/lib/placeholders.js.map +1 -1
  182. package/dist/scripts/lib/surface.js +25 -14
  183. package/dist/scripts/lib/surface.js.map +1 -1
  184. package/dist/scripts/lib/ui.js +356 -0
  185. package/dist/scripts/lib/ui.js.map +1 -0
  186. package/dist/scripts/merge-traceability.js +3 -3
  187. package/dist/scripts/pet/pet.js +331 -0
  188. package/dist/scripts/pet/pet.js.map +1 -0
  189. package/dist/scripts/pet.js +10 -0
  190. package/dist/scripts/pet.js.map +1 -0
  191. package/dist/scripts/plugin/gate-hook.js +1 -1
  192. package/dist/scripts/plugin/gate-hook.js.map +1 -1
  193. package/dist/scripts/schema/registry.js +2 -2
  194. package/dist/scripts/schema/registry.js.map +1 -1
  195. package/dist/scripts/specops/add.js +23 -32
  196. package/dist/scripts/specops/add.js.map +1 -1
  197. package/dist/scripts/specops/lock.js +4 -4
  198. package/dist/scripts/specops/lock.js.map +1 -1
  199. package/dist/scripts/specops/remove.js +15 -24
  200. package/dist/scripts/specops/remove.js.map +1 -1
  201. package/package.json +1 -2
@@ -42,6 +42,7 @@ const ChangeWorkspace_1 = require("../../../../packages/core/src/infrastructure/
42
42
  const ValidateChangeUseCase_1 = require("../../../../packages/core/src/application/ValidateChangeUseCase");
43
43
  const DiskProjectRepository_1 = require("../../../../packages/core/src/infrastructure/DiskProjectRepository");
44
44
  const diagnostics_1 = require("../../../lib/diagnostics");
45
+ const ui = __importStar(require("../../../lib/ui"));
45
46
  const against_lock_1 = require("../../../specops/against_lock");
46
47
  const requirement_graph_1 = require("../../../lib/requirement-graph");
47
48
  const MultiStack_1 = require("../../../../packages/core/src/domain/MultiStack");
@@ -75,10 +76,16 @@ class ValidateSpecsCommand extends command_1.BaseCommand {
75
76
  io = null;
76
77
  logInfo(msg) {
77
78
  const stream = this.io && this.io.json ? process.stderr : process.stdout;
78
- stream.write(`ℹ️ [INFO] ${msg}\n`);
79
+ // "✅ …" is the verdict, "- …" a detail under it; anything else is a note.
80
+ if (msg.startsWith("✅ "))
81
+ stream.write(ui.ok(ui.bold(msg.slice(2))));
82
+ else if (msg.startsWith("- "))
83
+ stream.write(` ${ui.muted(ui.sym.bullet)} ${msg.slice(2)}\n`);
84
+ else
85
+ stream.write(ui.info(msg));
79
86
  }
80
87
  logError(msg) {
81
- process.stderr.write(`❌ [ERROR] ${msg}\n`);
88
+ process.stderr.write(ui.fail(msg));
82
89
  }
83
90
  usage() {
84
91
  process.stdout.write("🔎 Usage:\n" +
@@ -121,10 +128,47 @@ class ValidateSpecsCommand extends command_1.BaseCommand {
121
128
  }
122
129
  logFix(lines) {
123
130
  for (const line of Array.isArray(lines) ? lines : [lines]) {
124
- process.stderr.write(`💡 [FIX] ${line}\n`);
131
+ process.stderr.write(` ${ui.muted(line)}\n`);
125
132
  }
126
133
  }
127
- /** A `csda:trace` line outside every requirement section is read by nothing (#79). */
134
+ /**
135
+ * A project written before 0.19 marks its specs with the tool's first name.
136
+ * Specgate no longer reads those markers (ADR-0032), so the matrix would lose
137
+ * every trace without a word — say it, and how to migrate.
138
+ */
139
+ failOnOldFormat(targetDir) {
140
+ const OLD = "csda";
141
+ // A marker starts its line; prose that quotes one (an ADR, say) does not.
142
+ const marker = new RegExp(`^\\s*(<!--|#)\\s*${OLD}:`, "m");
143
+ const roots = ["spec.md", "docs/specs", "features"].map((r) => path.join(targetDir, r));
144
+ const files = [];
145
+ const walk = (p) => {
146
+ if (!fs.existsSync(p))
147
+ return;
148
+ if (fs.statSync(p).isDirectory()) {
149
+ for (const e of fs.readdirSync(p))
150
+ walk(path.join(p, e));
151
+ }
152
+ else if (/\.(md|feature)$/.test(p))
153
+ files.push(p);
154
+ };
155
+ roots.forEach(walk);
156
+ const marked = files.filter((f) => marker.test(fs.readFileSync(f, "utf8")));
157
+ const oldDir = fs.existsSync(path.join(targetDir, `.${OLD}`));
158
+ if (marked.length === 0 && !oldDir)
159
+ return;
160
+ const where = [
161
+ ...(oldDir ? [`.${OLD}/`] : []),
162
+ ...marked.slice(0, 5).map((f) => path.relative(targetDir, f)),
163
+ ...(marked.length > 5 ? [`… and ${marked.length - 5} more`] : []),
164
+ ];
165
+ this.fail("old_format", `This project uses Specgate's old format (\`${OLD}:\` markers), which is no longer read: ${where.join(", ")}`, 1, [
166
+ "Migrate it once (ADR-0032), then run validate again:",
167
+ ` git grep -lI ${OLD} | xargs perl -pi -e 's/${OLD.toUpperCase()}_/SPECGATE_/g; s/${OLD}/specgate/g'`,
168
+ ` [ -d .${OLD} ] && git mv .${OLD} .specgate`,
169
+ ]);
170
+ }
171
+ /** A `specgate:trace` line outside every requirement section is read by nothing (#79). */
128
172
  warnUnreadTraces(targetDir) {
129
173
  const files = ["spec.md"];
130
174
  const caps = path.join(targetDir, ChangeWorkspace_2.CAPABILITIES_DIR);
@@ -139,13 +183,13 @@ class ValidateSpecsCommand extends command_1.BaseCommand {
139
183
  if (!fs.existsSync(full))
140
184
  continue;
141
185
  for (const line of (0, DerivedMatrix_1.unreadTraceLines)(fs.readFileSync(full, "utf8"))) {
142
- this.logWarn(`${rel.split(path.sep).join("/")}:${line}: this csda:trace line is not inside a requirement section, so nothing reads it — move it under its \`## REQ-NNN\` heading.`);
186
+ this.logWarn(`${rel.split(path.sep).join("/")}:${line}: this specgate:trace line is not inside a requirement section, so nothing reads it — move it under its \`## REQ-NNN\` heading.`);
143
187
  }
144
188
  }
145
189
  }
146
190
  logWarn(msg) {
147
191
  const stream = this.io && this.io.json ? process.stderr : process.stdout;
148
- stream.write(`⚠️ [WARN] ${msg}\n`);
192
+ stream.write(ui.warn(msg));
149
193
  }
150
194
  /**
151
195
  * True when the only Gherkin in the project is the placeholder `adopt` writes.
@@ -250,7 +294,7 @@ class ValidateSpecsCommand extends command_1.BaseCommand {
250
294
  const projects = cfg && Array.isArray(cfg.projects) ? cfg.projects : null;
251
295
  if (!projects || projects.length === 0)
252
296
  return null;
253
- this.logInfo(`🗂️ Monorepo: validating ${projects.length} project(s) from specops.config.yaml`);
297
+ this.logInfo(`Monorepo: validating ${projects.length} project(s) from specops.config.yaml`);
254
298
  const results = [];
255
299
  for (const entry of projects) {
256
300
  const rel = typeof entry === "string" ? entry : entry && entry.path;
@@ -259,7 +303,7 @@ class ValidateSpecsCommand extends command_1.BaseCommand {
259
303
  continue;
260
304
  }
261
305
  const subDir = path.join(targetDir, rel);
262
- process.stdout.write(`\n── ${rel} ──\n`);
306
+ process.stdout.write("\n" + ui.section(rel));
263
307
  if (!fs.existsSync(subDir)) {
264
308
  this.logError(`Project directory not found: ${rel}`);
265
309
  this.logFix(`Fix the 'projects:' entry in specops.config.yaml or create ${rel}.`);
@@ -281,7 +325,11 @@ class ValidateSpecsCommand extends command_1.BaseCommand {
281
325
  args.push("--strict-links");
282
326
  if (strictCoverage)
283
327
  args.push("--strict-coverage");
284
- const r = (0, node_child_process_1.spawnSync)(process.execPath, args, { encoding: "utf8" });
328
+ // Each project's own run is a section of this one, not a command of its own.
329
+ const r = (0, node_child_process_1.spawnSync)(process.execPath, args, {
330
+ encoding: "utf8",
331
+ env: { ...process.env, SPECGATE_NESTED: "1" },
332
+ });
285
333
  process.stdout.write(r.stdout || "");
286
334
  process.stderr.write(r.stderr || "");
287
335
  const drifted = this.sharedSpecDrift(targetDir, subDir);
@@ -300,11 +348,12 @@ class ValidateSpecsCommand extends command_1.BaseCommand {
300
348
  results.push({ project: rel, ok: r.status === 0 });
301
349
  }
302
350
  const failures = results.filter((r) => !r.ok);
303
- process.stdout.write("\n── monorepo summary ──\n");
351
+ process.stdout.write("\n" + ui.section("Monorepo summary"));
304
352
  for (const r of results) {
305
- process.stdout.write(` ${r.ok ? "✅" : "❌"} ${r.project}${r.detail ? ` (${r.detail})` : ""}\n`);
353
+ const line = `${r.project}${r.detail ? ui.muted(` (${r.detail})`) : ""}`;
354
+ process.stdout.write(r.ok ? ui.ok(line) : ui.fail(line));
306
355
  }
307
- process.stdout.write(`\n${failures.length === 0 ? "✅" : "❌"} ${results.length - failures.length}/${results.length} project(s) passed\n`);
356
+ process.stdout.write(`\n ${ui.progress(results.length - failures.length, results.length, "project(s) passed")}\n\n`);
308
357
  return { failures: failures.length };
309
358
  }
310
359
  /**
@@ -424,7 +473,7 @@ class ValidateSpecsCommand extends command_1.BaseCommand {
424
473
  continue; // the coverage check below reports this
425
474
  let tags = [];
426
475
  try {
427
- tags = (0, GherkinTags_1.csdaTagsIn)(fs.readFileSync(file, "utf8"));
476
+ tags = (0, GherkinTags_1.specgateTagsIn)(fs.readFileSync(file, "utf8"));
428
477
  }
429
478
  catch {
430
479
  continue;
@@ -883,6 +932,9 @@ class ValidateSpecsCommand extends command_1.BaseCommand {
883
932
  " specgate init",
884
933
  ]);
885
934
  }
935
+ if (!this.io.json && process.env.SPECGATE_NESTED !== "1") {
936
+ process.stdout.write(ui.header("validate", path.basename(path.resolve(targetDir))));
937
+ }
886
938
  const monorepo = this.validateMonorepo(targetDir, strictTdd, strictScenarios, strictRequirements, strictLinks, strictCoverage);
887
939
  if (monorepo !== null) {
888
940
  process.exit(monorepo.failures === 0 ? 0 : 1);
@@ -951,6 +1003,7 @@ class ValidateSpecsCommand extends command_1.BaseCommand {
951
1003
  ]);
952
1004
  }
953
1005
  }
1006
+ this.failOnOldFormat(targetDir);
954
1007
  this.warnUnreadTraces(targetDir);
955
1008
  const featuresDir = path.join(targetDir, "features");
956
1009
  const featureFiles = findRecursive(featuresDir, (f) => f.endsWith(".feature"));
@@ -1182,20 +1235,20 @@ class ValidateSpecsCommand extends command_1.BaseCommand {
1182
1235
  const loop = [...cycle, cycle[0]].join(" → ");
1183
1236
  graphProblems.push((0, diagnostics_1.error)("requirement_cycle", `Requirements depend on each other in a cycle: ${loop}`, {
1184
1237
  target: cycle[0],
1185
- fix: `Remove one \`depends=\` from the csda:trace comment of one of them — ` +
1238
+ fix: `Remove one \`depends=\` from the specgate:trace comment of one of them — ` +
1186
1239
  `${cycle.join(", ")} cannot all come after each other.`,
1187
1240
  }));
1188
1241
  }
1189
1242
  for (const { requirement, dependency } of graph.unknown) {
1190
1243
  graphProblems.push((0, diagnostics_1.error)("unknown_dependency", `${requirement} declares depends=${dependency}, which is not a requirement in this project.`, {
1191
1244
  target: requirement,
1192
- fix: `Correct the id in ${requirement}'s csda:trace comment, or add a traceability row for ${dependency}.`,
1245
+ fix: `Correct the id in ${requirement}'s specgate:trace comment, or add a traceability row for ${dependency}.`,
1193
1246
  }));
1194
1247
  }
1195
1248
  for (const requirement of graph.selfReferential) {
1196
1249
  graphProblems.push((0, diagnostics_1.error)("self_dependency", `${requirement} declares that it depends on itself.`, {
1197
1250
  target: requirement,
1198
- fix: `Remove \`depends=${requirement}\` from its csda:trace comment.`,
1251
+ fix: `Remove \`depends=${requirement}\` from its specgate:trace comment.`,
1199
1252
  }));
1200
1253
  }
1201
1254
  if (graphProblems.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"ValidateSpecsCommand.js","sourceRoot":"","sources":["../../../../../scripts/cli/commands/quality/ValidateSpecsCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ValidateSpecsCommand.js","sourceRoot":"","sources":["../../../../../scripts/cli/commands/quality/ValidateSpecsCommand.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAA8B;AAC9B,gDAAkC;AAClC,2DAA+C;AAC/C,4EAA8E;AAC9E,kGAA6F;AAC7F,2GAAwG;AACxG,8GAA2G;AAC3G,0DAA4E;AAC5E,oDAAsC;AACtC,gEAAiE;AACjE,sEAA6E;AAC7E,gFAA+E;AAC/E,4FAI+D;AAC/D,gGAGiE;AACjE,oDAAsC;AACtC,8CAA8D;AAC9D,4DAAuE;AACvE,kDAAmD;AACnD,6GAA0G;AAC1G,wHAAqH;AACrH,gGAAsF;AACtF,4DAAwD;AACxD,wFAG6D;AAE7D,wEAAwE;AACxE,MAAM,UAAU,GAAG,IAAI,GAAG,CAAS;IACjC,8BAAa,CAAC,QAAQ;IACtB,8BAAa,CAAC,YAAY;IAC1B,8BAAa,CAAC,wBAAwB;CACvC,CAAC,CAAC;AACH,kFAAkF;AAClF,gGAAgG;AAChG,8FAAgG;AAChG,sFAG4D;AAC5D,yDAAyD;AACzD,8FAGgE;AAChE,gFAIyD;AACzD,kGAAgG;AAChG,oFAG2D;AAE3D,MAAa,oBAAqB,SAAQ,qBAAW;IAC3C,EAAE,GAAQ,IAAI,CAAC;IAEf,OAAO,CAAC,GAAW;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACzE,0EAA0E;QAC1E,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAChE,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;YAC3B,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;;YAC/D,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAClC,CAAC;IACO,QAAQ,CAAC,GAAW;QAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,CAAC;IAEO,KAAK;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,aAAa;YACX,mFAAmF;YACnF,wBAAwB;YACxB,+DAA+D;YAC/D,WAAW;YACX,2BAA2B;YAC3B,oBAAoB;YACpB,gCAAgC;YAChC,uCAAuC;YACvC,yCAAyC;YACzC,8CAA8C;YAC9C,uDAAuD;YACvD,yCAAyC;YACzC,yEAAyE;YACzE,wEAAwE;YACxE,yEAAyE;YACzE,uFAAuF;YACvF,qGAAqG;YACrG,+EAA+E;YAC/E,uCAAuC;YACvC,6DAA6D;YAC7D,yDAAyD;YACzD,sDAAsD;YACtD,yFAAyF;YACzF,0FAA0F;YAC1F,gFAAgF;YAChF,yEAAyE;YACzE,sFAAsF;YACtF,4CAA4C;YAC5C,kFAAkF;YAClF,wBAAwB;YACxB,kFAAkF;YAClF,gEAAgE;YAChE,4EAA4E;YAC5E,yCAAyC;YACzC,sFAAsF;YACtF,+BAA+B,CAClC,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,KAAwB;QACrC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,eAAe,CAAC,SAAiB;QACvC,MAAM,GAAG,GAAG,MAAM,CAAC;QACnB,0EAA0E;QAC1E,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,oBAAoB,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC;QAC3D,MAAM,KAAK,GAAG,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;QACxF,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,CAAC,CAAS,EAAE,EAAE;YACzB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;gBAAE,OAAO;YAC9B,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;gBACjC,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;oBAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC3D,CAAC;iBAAM,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtD,CAAC,CAAC;QACF,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpB,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5E,MAAM,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;QAC9D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QAC3C,MAAM,KAAK,GAAG;YACZ,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;YAC7D,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAClE,CAAC;QACF,IAAI,CAAC,IAAI,CACP,YAAY,EACZ,8CAA8C,GAAG,0CAA0C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC7G,CAAC,EACD;YACE,sDAAsD;YACtD,kBAAkB,GAAG,2BAA2B,GAAG,CAAC,WAAW,EAAE,oBAAoB,GAAG,cAAc;YACtG,WAAW,GAAG,iBAAiB,GAAG,YAAY;SAC/C,CACF,CAAC;IACJ,CAAC;IAED,0FAA0F;IAClF,gBAAgB,CAAC,SAAiB;QACxC,MAAM,KAAK,GAAG,CAAC,SAAS,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,kCAAgB,CAAC,CAAC;QACpD,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;gBAC9D,IAAI,CAAC,CAAC,WAAW,EAAE;oBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kCAAgB,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YACvC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,SAAS;YACnC,KAAK,MAAM,IAAI,IAAI,IAAA,gCAAgB,EAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;gBACnE,IAAI,CAAC,OAAO,CACV,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,iIAAiI,CAC1K,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAEO,OAAO,CAAC,GAAW;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACzE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,CAAC;IAED;;;;;;;;;;;OAWG;IACK,sBAAsB,CAAC,SAAiB,EAAE,YAAsB;QACtE,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChF,OAAO,GAAG,KAAK,oCAAoC,CAAC;IACtD,CAAC;IAEO,IAAI,CAAC,IAAY,EAAE,GAAW,EAAE,QAAQ,GAAG,CAAC,EAAE,MAAgC,IAAI;QACxF,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,IAAI,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAA,mBAAK,EAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACzF,IAAI,QAAQ,KAAK,YAAI,CAAC,KAAK;gBAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;YACzE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;YAC3C,OAAO;QACT,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACnB,IAAI,QAAQ,CAAC,MAAM;YAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;OAWG;IACK,eAAe,CAAC,OAAe,EAAE,UAAkB;QACzD,MAAM,MAAM,GAAG,CAAC,MAAc,EAAU,EAAE;YACxC,MAAM,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACtC,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjC,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;gBAClB,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;gBAClC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;YACD,MAAM,OAAO,GAAa,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,EAAE;gBAC/B,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;oBAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;oBAClC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;wBAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;;wBAC/C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC3E,CAAC;YACH,CAAC,CAAC;YACF,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjB,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;gBAC1B,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACd,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;YACpD,CAAC;YACD,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC,CAAC;QAEF,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,MAAM,IAAI,yBAAY,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAChD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;gBAAE,SAAS;YAClE,8CAA8C;YAC9C,MAAM,IAAI,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;YAChE,IAAI,IAAI,IAAI,IAAI,CAAC,cAAc,EAAE;gBAAE,SAAS;YAC5C,IAAI,CAAC;gBACH,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,SAAS,CAAC;oBAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjE,CAAC;YAAC,MAAM,CAAC;gBACP,sEAAsE;YACxE,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,gBAAgB,CACtB,SAAiB,EACjB,SAAkB,EAClB,eAAwB,EACxB,kBAA2B,EAC3B,WAAoB,EACpB,cAAuB;QAEvB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;QAC5D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;QACzC,IAAI,GAAQ,CAAC;QACb,IAAI,CAAC;YACH,GAAG,GAAG,IAAA,wBAAa,EAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,QAAQ,GAAG,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1E,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAEpD,IAAI,CAAC,OAAO,CAAC,wBAAwB,QAAQ,CAAC,MAAM,sCAAsC,CAAC,CAAC;QAC5F,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC;YACpE,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAAC;gBACtF,SAAS;YACX,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;YAC7C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC,QAAQ,CAAC,gCAAgC,GAAG,EAAE,CAAC,CAAC;gBACrD,IAAI,CAAC,MAAM,CAAC,8DAA8D,GAAG,GAAG,CAAC,CAAC;gBAClF,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC,CAAC;gBACzE,SAAS;YACX,CAAC;YACD,MAAM,IAAI,GAAG,IAAA,0BAAW,EAAC,SAAS,CAAC,CAAC;YACpC,MAAM,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;gBACvF,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,mBAAmB,CAAC;gBACzD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;YACpD,MAAM,IAAI,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAClC,IAAI,SAAS;gBAAE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACzC,IAAI,eAAe;gBAAE,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACrD,IAAI,kBAAkB;gBAAE,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YAC3D,IAAI,WAAW;gBAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC7C,IAAI,cAAc;gBAAE,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACnD,6EAA6E;YAC7E,MAAM,CAAC,GAAG,IAAA,8BAAS,EAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE;gBAC1C,QAAQ,EAAE,MAAM;gBAChB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE;aAC9C,CAAC,CAAC;YACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;YACrC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;YAErC,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACxD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,IAAI,CAAC,QAAQ,CACX,8BAA8B,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,6BAA6B,CACtF,CAAC;gBACF,IAAI,CAAC,MAAM,CAAC;oBACV,+EAA+E;oBAC/E,iFAAiF;oBACjF,kCAAkC;oBAClC,qCAAqC,GAAG,sCAAsC;oBAC9E,kCAAkC;iBACnC,CAAC,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC,CAAC;gBACvE,SAAS;YACX,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC9C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC5D,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YACzE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,OAAO,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,mBAAmB,CAAC,MAAM,CAChG,CAAC;QACF,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;IACvC,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACK,oBAAoB,CAAC,SAAiB,EAAE,YAAsB,EAAE,UAAU,GAAG,EAAE;QACrF,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;YAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrE,MAAM,KAAK,GAAG,IAAA,qCAAoB,EAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC;YACvE,uEAAuE;YACvE,iEAAiE;YACjE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACtF,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAElC,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,CACX,2CAA2C,QAAQ,CAAC,MAAM,GAAG;YAC3D,IAAI,IAAI,CAAC,MAAM,sDAAsD,CACxE,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,QAAQ;YAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAA,8BAAgB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7E,IAAI,CAAC,MAAM,CAAC;YACV,qFAAqF;YACrF,iEAAiE;SAClE,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED;;;;;;;OAOG;IACK,gBAAgB,CAAC,SAAiB,EAAE,UAAkB;QAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,4BAA4B,CAAC,CAAC;QACrE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC;QACjD,IAAI,IAAI,GAAU,EAAE,CAAC;QACrB,IAAI,CAAC;YACH,IAAI,GAAG,IAAA,0CAAqB,EAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QAC9E,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC;QACpB,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,SAAS,GACb,qCAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACrD,CAAC,UAAU,KAAK,EAAE,IAAI,GAAG,CAAC,WAAW,KAAK,UAAU,CAAC,CAAC;YACxD,KAAK,MAAM,QAAQ,IAAI,IAAA,iCAAa,EAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;gBACtD,MAAM,GAAG,GAAG,IAAA,gCAAY,EAAC,QAAQ,CAAC,CAAC;gBACnC,IAAI,CAAC,GAAG;oBAAE,SAAS;gBACnB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACjB,IAAI,SAAS;oBAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACK,iBAAiB,CAAC,SAAiB,EAAE,YAAoB;QAC/D,IAAI,IAAI,GAAU,EAAE,CAAC;QACrB,IAAI,CAAC;YACH,IAAI,GAAG,IAAA,0CAAqB,EAAC,YAAY,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;QACT,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACvD,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;iBAC7C,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;iBACjB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;iBACb,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU;gBAAE,SAAS;YAErE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YAC9C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,SAAS,CAAC,wCAAwC;YAE5E,IAAI,IAAI,GAAa,EAAE,CAAC;YACxB,IAAI,CAAC;gBACH,IAAI,GAAG,IAAA,4BAAc,EAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;YACvD,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS,CAAC,6CAA6C;YAE9E,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC,EAAE,CAAC;gBACrC,IAAI,CAAC,IAAI,CACP,4BAA4B,EAC5B,GAAG,UAAU,uCAAuC,UAAU,UAAU;oBACtE,GAAG,GAAG,CAAC,WAAW,IAAI,OAAO,6CAA6C;oBAC1E,oBAAoB,EACtB,CAAC,EACD;oBACE,4BAA4B,UAAU,kCAAkC;oBACxE,2DAA2D;iBAC5D,CACF,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACK,2BAA2B,CAAC,SAAiB,EAAE,YAAoB,EAAE,UAAU,GAAG,EAAE;QAC1F,IAAI,IAAI,GAAU,EAAE,CAAC;QACrB,IAAI,CAAC;YACH,IAAI,GAAG,IAAA,0CAAqB,EAAC,YAAY,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAU,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,OAAO,GAA4B;YACvC,CAAC,cAAc,EAAE,aAAa,CAAC;YAC/B,CAAC,oBAAoB,EAAE,mBAAmB,CAAC;YAC3C,CAAC,eAAe,EAAE,cAAc,CAAC;SAClC,CAAC;QAEF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,qEAAqE;YACrE,gEAAgE;YAChE,uEAAuE;YACvE,yEAAyE;YACzE,0BAA0B;YAC1B,MAAM,SAAS,GACb,qCAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACrD,CAAC,UAAU,KAAK,EAAE,IAAI,GAAG,CAAC,WAAW,KAAK,UAAU,CAAC,CAAC;YACxD,IAAI,CAAC,SAAS;gBAAE,SAAS;YACzB,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC;gBACnC,KAAK,MAAM,QAAQ,IAAI,IAAA,iCAAa,EAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;oBAC/C,qEAAqE;oBACrE,wEAAwE;oBACxE,MAAM,GAAG,GAAG,IAAA,gCAAY,EAAC,QAAQ,CAAC,CAAC;oBACnC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,OAAO,KAAK,GAAG,EAAE,CAAC;wBAAE,SAAS;oBAC5E,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;wBAAE,SAAS;oBACvD,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,OAAO,KAAK,GAAG,EAAE,CAAC,CAAC;oBACtD,QAAQ,CAAC,IAAI,CACX,IAAA,mBAAK,EACH,2BAA2B,EAC3B,GAAG,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,OAAO,IAAI,OAAO,MAAM,KAAK,MAAM,GAAG,oBAAoB,EACpF;wBACE,MAAM,EAAE,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,OAAO;wBACtC,IAAI,EAAE,4BAA4B;wBAClC,GAAG,EAAE,4BAA4B,GAAG,gCAAgC;qBACrE,CACF,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAElC,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,4CAA4C,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7E,KAAK,MAAM,CAAC,IAAI,QAAQ;YAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAA,8BAAgB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7E,IAAI,CAAC,MAAM,CAAC;YACV,oEAAoE;YACpE,mDAAmD;SACpD,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACK,qBAAqB,CAAC,SAAiB,EAAE,YAAoB,EAAE,UAAU,GAAG,EAAE;QACpF,IAAI,IAAI,GAAU,EAAE,CAAC;QACrB,IAAI,CAAC;YACH,IAAI,GAAG,IAAA,0CAAqB,EAAC,YAAY,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,CAAC,GAAW,EAAY,EAAE;YACxC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAA,gCAAY,EAAC,GAAG,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,OAAO,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,IAAI,CAAC,MAAM,EAAE;gBAAE,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;YAC1D,MAAM,GAAG,GAAa,EAAE,CAAC;YACzB,MAAM,SAAS,GAAG,CAAC,GAAW,EAAE,EAAE;gBAChC,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;oBACvC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;oBACnC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE;wBAAE,SAAS,CAAC,KAAK,CAAC,CAAC;;wBAClD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC,CAAC;YACF,SAAS,CAAC,IAAI,CAAC,CAAC;YAChB,OAAO,GAAG,CAAC;QACb,CAAC,CAAC;QAEF,MAAM,QAAQ,GAAU,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAU,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAE/B,0EAA0E;QAC1E,MAAM,OAAO,GAAG,CAAC,GAAQ,EAAE,EAAE;YAC3B,MAAM,aAAa,GAAG,IAAA,iCAAa,EAAC,GAAG,CAAC,YAAY,CAAC,CAAC,MAAM,CAC1D,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK,CAC3D,CAAC;YACF,MAAM,UAAU,GAAG,IAAA,iCAAa,EAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YACrD,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAA,gCAAY,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACvF,OAAO;gBACL,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,EAAE;gBAClC,UAAU;gBACV,OAAO,EACL,WAAW,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;gBACvF,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC;gBACrC,aAAa;aACd,CAAC;QACJ,CAAC,CAAC;QAEF,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEzE,wEAAwE;QACxE,4EAA4E;QAC5E,4EAA4E;QAC5E,wDAAwD;QACxD,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAA,uCAAoB,EAAC,IAAI,CAAC,CAAC;QAEtE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YACxC,IAAI,CAAC,OAAO,CACV,8EAA8E;gBAC5E,sCAAsC,CACzC,CAAC;YACF,IAAI,CAAC,MAAM,CAAC;gBACV,mFAAmF;gBACnF,+EAA+E;gBAC/E,4EAA4E;gBAC5E,EAAE;gBACF,iFAAiF;gBACjF,iFAAiF;gBACjF,qCAAqC;aACtC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,wEAAwE;YACxE,mDAAmD;YACnD,MAAM,aAAa,GAAG,IAAA,iCAAa,EAAC,GAAG,CAAC,YAAY,CAAC,CAAC,MAAM,CAC1D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK,CACnD,CAAC;YACF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YAEzC,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC/C,MAAM,UAAU,GAAG,IAAA,iCAAa,EAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YACrD,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAA,gCAAY,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACvF,MAAM,OAAO,GACX,WAAW,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAExF,yEAAyE;YACzE,0EAA0E;YAC1E,uEAAuE;YACvE,uEAAuE;YACvE,yEAAyE;YACzE,MAAM,aAAa,GAAG,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;YAC5C,uEAAuE;YACvE,yEAAyE;YACzE,qEAAqE;YACrE,4BAA4B;YAC5B,IAAI,IAAA,oCAAiB,EAAC,aAAa,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;gBACvD,MAAM,GAAG,GAAG,GAAG,aAAa,eAAe,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACnB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACd,UAAU,CAAC,IAAI,CACb,IAAA,qBAAO,EACL,uBAAuB,EACvB,GAAG,aAAa,kCAAkC,aAAa,cAAc;wBAC3E,gBAAgB,EAClB;wBACE,MAAM,EAAE,aAAa;wBACrB,IAAI,EAAE,4BAA4B;wBAClC,GAAG,EACD,QAAQ,aAAa,8BAA8B;4BACnD,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,sCAAsC;4BACnE,sEAAsE;4BACtE,WAAW;qBACd,CACF,CACF,CAAC;gBACJ,CAAC;gBACD,SAAS;YACX,CAAC;YAED,IAAI,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;gBAAE,SAAS,CAAC,+BAA+B;YAE1F,yEAAyE;YACzE,+DAA+D;YAC/D,wEAAwE;YACxE,qEAAqE;YACrE,yEAAyE;YACzE,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3F,IAAI,OAAO,IAAI,GAAG,CAAC,WAAW,KAAK,UAAU;gBAAE,SAAS;YAExD,KAAK,MAAM,QAAQ,IAAI,IAAA,mCAAgB,EAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;gBAC1D,MAAM,GAAG,GAAG,GAAG,UAAU,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC;gBAC/C,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,SAAS;gBAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACd,QAAQ,CAAC,IAAI,CACX,IAAA,mBAAK,EAAC,sBAAsB,EAAE,mBAAmB,QAAQ,CAAC,KAAK,MAAM,UAAU,IAAI,EAAE;oBACnF,MAAM,EAAE,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,OAAO;oBACtC,IAAI,EAAE,UAAU;oBAChB,GAAG,EACD,qBAAqB,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;wBAC9C,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,oCAAoC;wBACjE,mDAAmD;iBACtD,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;QACD,wEAAwE;QACxE,yCAAyC;QACzC,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAA,8BAAgB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAElC,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,QAAQ,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC;YACjE,OAAO;QACT,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,sCAAsC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACvE,KAAK,MAAM,CAAC,IAAI,QAAQ;YAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAA,8BAAgB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7E,4EAA4E;QAC5E,wEAAwE;QACxE,2BAA2B;QAC3B,IAAI,CAAC,MAAM,CAAC;YACV,2EAA2E;YAC3E,0EAA0E;YAC1E,0EAA0E;SAC3E,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH;;;;;;OAMG;IACK,gBAAgB,CAAC,SAAiB,EAAE,QAAgB;QAC1D,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;QAE3E,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,kCAAgB,CAAC,CAAC;QAC/D,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACnC,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBACpF,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;oBAAE,SAAS;gBACnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;gBAClE,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;YAC3E,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACtD,CAAC;IAEO,sBAAsB,CAAC,SAAiB;QAC9C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,kCAAgB,CAAC,CAAC;QAC/D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;YAAE,OAAO;QAE5C,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,KAAK,MAAM,KAAK,IAAI,EAAE;aACnB,WAAW,CAAC,eAAe,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;aACrD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAChD,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;gBAAE,SAAS;YACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YACnE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;gBAAE,SAAS;YACvC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzE,MAAM,IAAI,GAAG,IAAA,sBAAS,EAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;YAC1D,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpC,MAAM,IAAI,GAAG,IAAA,sBAAS,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACjC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;oBAAE,SAAS;gBAC3B,QAAQ,CAAC,IAAI,CACX,GAAG,IAAA,0CAAsB,EAAC,IAAI,EAAE;oBAC9B,MAAM,EAAE,GAAG,CAAC,EAAE,IAAI,IAAA,2BAAc,EAAC,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI;oBACjD,IAAI,EAAE,GAAG;oBACT,IAAI,EAAE,GAAG,CAAC,IAAI;iBACf,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAElC,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,8CAA8C,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC/E,KAAK,MAAM,CAAC,IAAI,QAAQ;YAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAA,8BAAgB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7E,IAAI,CAAC,MAAM,CAAC;YACV,iFAAiF;YACjF,uEAAuE;SACxE,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED;;;;;;OAMG;IACK,wBAAwB,CAAC,SAAiB,EAAE,UAAkB;QACpE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,4BAA4B,CAAC,CAAC;QACrE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO;QACtC,IAAI,IAAI,GAAU,EAAE,CAAC;QACrB,IAAI,CAAC;YACH,IAAI,GAAG,IAAA,0CAAqB,EAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QAC9E,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAChD,IAAI,CAAC,EAAE;gBAAE,SAAS;YAClB,IAAI,qCAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,UAAU;gBAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/F,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QAE5B,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;QACpD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,kCAAgB,CAAC,CAAC;QAC/D,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACnC,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBACpF,IAAI,KAAK,CAAC,WAAW,EAAE;oBAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;YAC7F,CAAC;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,SAAS;YACnC,MAAM,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrE,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBAClC,MAAM,OAAO,GAAG,IAAA,wCAAyB,EAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBACtD,IAAI,OAAO,KAAK,IAAI,IAAI,IAAA,sCAAuB,EAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC;oBAAE,SAAS;gBAChF,QAAQ,CAAC,IAAI,CACX,IAAA,mBAAK,EACH,iCAAiC,EACjC,GAAG,EAAE,uBAAuB,GAAG,wCAAwC,EACvE;oBACE,MAAM,EAAE,EAAE;oBACV,IAAI,EAAE,GAAG;oBACT,GAAG,EAAE,sFAAsF,EAAE,2EAA2E;iBACzK,CACF,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAElC,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,uDAAuD,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACxF,KAAK,MAAM,CAAC,IAAI,QAAQ;YAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAA,8BAAgB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7E,IAAI,CAAC,MAAM,CAAC;YACV,oFAAoF;YACpF,yDAAyD;SAC1D,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAEM,OAAO;QACZ,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC7E,MAAM,IAAI,GAAG,OAAO,CAAC;QACrB,IAAI,CAAC,EAAE,GAAG,IAAA,eAAO,EAAC,IAAA,iBAAS,EAAC,IAAI,CAAC,CAAC,CAAC;QACnC,oCAAoC;QACpC,EAAE;QACF,0EAA0E;QAC1E,0EAA0E;QAC1E,4DAA4D;QAC5D,2EAA2E;QAC3E,yEAAyE;QACzE,uEAAuE;QACvE,uCAAuC;QACvC,EAAE;QACF,yEAAyE;QACzE,uEAAuE;QACvE,0EAA0E;QAC1E,SAAS;QACT,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QAC1D,MAAM,eAAe,GAAG,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;QACtE,MAAM,kBAAkB,GAAG,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;QAC5E,MAAM,WAAW,GAAG,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAC9D,MAAM,cAAc,GAAG,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;QACpE,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QACpD,uEAAuE;QACvE,yEAAyE;QACzE,2EAA2E;QAC3E,kDAAkD;QAClD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAC5B,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,KAAK,YAAY,GAAG,CAAC,CAAC,CAC/E,CAAC;QAEF,mEAAmE;QACnE,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YACvE,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,wBAAwB,SAAS,EAAE,EAAE,YAAI,CAAC,KAAK,EAAE;gBAClF,4DAA4D;gBAC5D,iBAAiB;aAClB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,GAAG,EAAE,CAAC;YACzD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QACtF,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CACpC,SAAS,EACT,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,WAAW,EACX,cAAc,CACf,CAAC;QACF,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;YACxB,cAAc;YACd,MAAM;YACN,OAAO;YACP,KAAK;YACL,QAAQ;YACR,UAAU;YACV,QAAQ;YACR,MAAM;YACN,OAAO;YACP,SAAS;YACT,UAAU;SACX,CAAC,CAAC;QAEH,SAAS,IAAI,CAAC,GAAW;YACvB,MAAM,GAAG,GAAa,EAAE,CAAC;YACzB,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;gBACjE,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;oBAAE,SAAS;gBAC/D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxC,IAAI,KAAK,CAAC,WAAW,EAAE;oBAAE,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;;oBAC5C,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC;QAED,SAAS,aAAa,CAAC,OAAe,EAAE,SAAiC;YACvE,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;QAED,kEAAkE;QAClE,uDAAuD;QACvD,MAAM,WAAW,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QACjD,MAAM,cAAc,GAAG;YACrB,SAAS;YACT,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YACzF,WAAW;YACX,4BAA4B;YAC5B,0BAA0B;SAC3B,CAAC;QACF,MAAM,aAAa,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QACjD,MAAM,cAAc,GAAG,0BAA0B,CAAC;QAElD,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;YAC9B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,+BAA+B,CAAC,EAAE,EAAE,CAAC,EAAE;oBACvE,uBAAuB,CAAC,EAAE;oBAC1B,0EAA0E;iBAC3E,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAA2B;YACzC,SAAS,EACP,wHAAwH;YAC1H,WAAW,EACT,wHAAwH;YAC1H,WAAW,EAAE,+DAA+D;YAC5E,4BAA4B,EAAE,6CAA6C,gCAAW,EAAE;YACxF,0BAA0B,EACxB,qFAAqF;SACxF,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;YAC/B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,EAAE,EAAE,CAAC,EAAE;oBACnE,UAAU,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,GAAG;oBAC/B,kGAAkG;iBACnG,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAChC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAEjC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,YAAY,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;QAC/E,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,2CAA2C,EAAE,CAAC,EAAE;gBAC5E,2EAA2E;gBAC3E,gFAAgF;aACjF,CAAC,CAAC;QACL,CAAC;QACD,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC;QAEzC,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,kBAAkB,EAAE,CAAC;YACvB,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;QAED,MAAM,SAAS,GAAG,IAAA,yCAA0B,EAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;QAChG,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;YACzB,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;gBAC1B,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACtC,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;wBACpD,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,IAAI,EAAE;4BAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBACnF,CAAC;gBACH,CAAC;YACH,CAAC;YACD,MAAM,OAAO,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvF,IAAI,CAAC,MAAM,CAAC;gBACV,mFAAmF;gBACnF,0FAA0F;gBAC1F,sBAAsB,OAAO,EAAE;aAChC,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,4BAA4B,CAAC,CAAC;QACrE,MAAM,YAAY,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAExD,4EAA4E;QAC5E,uEAAuE;QACvE,yEAAyE;QACzE,IACE,IAAA,+BAAe,EAAC,YAAY,CAAC;YAC7B,IAAA,gCAAgB,EAAC,SAAS,EAAE,YAAY,CAAC,KAAK,YAAY,EAC1D,CAAC;YACD,MAAM,KAAK,GAAG,IAAA,mBAAK,EACjB,cAAc,EACd,uFAAuF,EACvF;gBACE,IAAI,EAAE,4BAA4B;gBAClC,GAAG,EAAE,iFAAiF;aACvF,CACF,CAAC;YACF,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI;gBAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9D,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAa,CAAC,CAAC,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,4EAA4E;QAC5E,6EAA6E;QAC7E,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACjD,MAAM,EACJ,MAAM,EACN,IAAI,EACJ,YAAY,EAAE,YAAY,GAC3B,GAAG,IAAI,+CAAsB,CAAC,IAAI,uDAA0B,EAAE,CAAC,CAAC,WAAW,CAAC,YAAY,EAAE;YACzF,SAAS;YACT,yEAAyE;YACzE,wEAAwE;YACxE,oEAAoE;YACpE,wEAAwE;YACxE,mEAAmE;YACnE,wEAAwE;YACxE,yDAAyD;YACzD,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC;YACvD,uEAAuE;YACvE,wEAAwE;YACxE,sEAAsE;YACtE,uCAAuC;YACvC,UAAU,EAAE,IAAA,+BAAe,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;SACnE,CAAC,CAAC;QAEH,MAAM,mBAAmB,GAAG,MAAM,CAAC,QAAQ;aACxC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,sBAAsB,CAAC;aAChD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAEzB,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACtC,IAAI,OAAO,CAAC,IAAI,KAAK,sBAAsB;gBAAE,SAAS,CAAC,2BAA2B;YAClF,kEAAkE;YAClE,wEAAwE;YACxE,oEAAoE;YACpE,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACnC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC9B,IAAI,OAAO,CAAC,QAAQ,EAAE,MAAM;oBAAE,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACjE,SAAS;YACX,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC3E,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,IAAc,CAAC;QAEjC,0EAA0E;QAC1E,MAAM,OAAO,GAAG,IAAA,+BAAe,EAAC,YAAY,CAAC,CAAC;QAC9C,MAAM,SAAS,GAA2B;YACxC,OAAO,EAAE,OAAO;gBACd,CAAC,CAAC,4MAA4M;gBAC9M,CAAC,CAAC,iHAAiH;YACrH,OAAO,EAAE,OAAO;gBACd,CAAC,CAAC,qFAAqF;gBACvF,CAAC,CAAC,wFAAwF;YAC5F,OAAO,EAAE,OAAO;gBACd,CAAC,CAAC,qFAAqF;gBACvF,CAAC,CAAC,uGAAuG;SAC5G,CAAC;QAEF,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;gBACjB,IAAI,CAAC,EAAE,CAAC,IAAI,CACV,EAAE,UAAU,EAAE,IAAI,EAAE,EACpB,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC5B,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC1B,OAAO,IAAA,mBAAK,EAAC,cAAc,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;wBACjD,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC;qBACpB,CAAC,CAAC;gBACL,CAAC,CAAC,CACH,CAAC;gBACF,OAAO;YACT,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,mCAAmC,CAAC,CAAC;YACnD,KAAK,MAAM,CAAC,IAAI,mBAAmB,EAAE,CAAC;gBACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACnC,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACrE,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAChD,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,2BAA2B,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;QAClE,CAAC;QACD,0EAA0E;QAC1E,qCAAqC;QACrC,IAAI,kBAAkB,EAAE,CAAC;YACvB,IAAI,CAAC,wBAAwB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QACvD,CAAC;QAED,KAAK,MAAM,EAAE,IAAI,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChC,MAAM,UAAU,GACd,SAAS,KAAK,MAAM;oBAClB,CAAC,CAAC,2BAA2B,GAAG,qDAAqD;oBACrF,CAAC,CAAC,OAAO,GAAG,iCAAiC,CAAC;gBAClD,oEAAoE;gBACpE,gEAAgE;gBAChE,IAAI,CAAC,IAAI,CACP,uBAAuB,EACvB,8CAA8C,GAAG,EAAE,EACnD,CAAC,EACD,IAAA,+BAAe,EAAC,YAAY,CAAC;oBAC3B,CAAC,CAAC;wBACE,8EAA8E;wBAC9E,2EAA2E;qBAC5E;oBACH,CAAC,CAAC,CAAC,uDAAuD,EAAE,KAAK,UAAU,EAAE,CAAC,CACjF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,yBAAyB,CAAC,CAAC;QACrE,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YACtD,IACE,CAAC,OAAO,CAAC,QAAQ,CACf,2EAA2E,CAC5E,EACD,CAAC;gBACD,IAAI,CAAC,IAAI,CACP,0BAA0B,EAC1B,mDAAmD,EACnD,CAAC,EACD;oBACE,gCAAgC;oBAChC,+EAA+E;iBAChF,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;QAChE,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,iDAAiD,CAAC,EAAE,CAAC;gBACzE,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,gDAAgD,EAAE,CAAC,EAAE;oBACtF,8BAA8B;oBAC9B,mDAAmD;iBACpD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;QAC9D,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,IAAA,+BAAa,EAAC,SAAS,CAAC,CAAC;YACrC,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC;YACzB,MAAM,QAAQ,GAAa,EAAE,CAAC;YAC9B,MAAM,WAAW,GAAU,EAAE,CAAC;YAC9B,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;gBACrB,MAAM,MAAM,GAAG,IAAI,6CAAqB,CAAC,IAAI,6CAAqB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE;oBACzF,MAAM,EAAE,KAAK;iBACd,CAAC,CAAC;gBACH,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;oBACnC,IAAI,CAAC,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;wBAC3B,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACpB,QAAQ,CAAC,IAAI,CAAC,IAAA,8BAAgB,EAAC,CAAC,CAAC,CAAC,CAAC;oBACrC,CAAC;gBACH,CAAC;YACH,CAAC;YACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;oBACjB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC;oBAChD,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,0CAA0C,CAAC,CAAC;gBAC1D,KAAK,MAAM,IAAI,IAAI,QAAQ;oBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;gBACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,cAAc,GAAU,EAAE,CAAC;QAC/B,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,MAAM,GAAG,IAAA,+BAAgB,EAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC/C,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC;YAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;YAC7E,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;YAE3E,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;gBAClB,KAAK,MAAM,CAAC,IAAI,IAAI;oBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAA,8BAAgB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC3E,CAAC;YAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;oBACjB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;oBACvD,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,qCAAqC,CAAC,CAAC;gBACrD,KAAK,MAAM,CAAC,IAAI,MAAM;oBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAA,8BAAgB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,cAAc,GAAG,IAAI,CAAC;QACxB,CAAC;QAED,CAAC;YACC,MAAM,KAAK,GAAG,IAAA,+CAA2B,EAAC,SAAS,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;YACxE,MAAM,aAAa,GAAU,EAAE,CAAC;YAEhC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjC,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC9C,aAAa,CAAC,IAAI,CAChB,IAAA,mBAAK,EAAC,mBAAmB,EAAE,iDAAiD,IAAI,EAAE,EAAE;oBAClF,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;oBAChB,GAAG,EACD,2EAA2E;wBAC3E,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,oCAAoC;iBAC1D,CAAC,CACH,CAAC;YACJ,CAAC;YAED,KAAK,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBACxD,aAAa,CAAC,IAAI,CAChB,IAAA,mBAAK,EACH,oBAAoB,EACpB,GAAG,WAAW,qBAAqB,UAAU,+CAA+C,EAC5F;oBACE,MAAM,EAAE,WAAW;oBACnB,GAAG,EAAE,qBAAqB,WAAW,4DAA4D,UAAU,GAAG;iBAC/G,CACF,CACF,CAAC;YACJ,CAAC;YAED,KAAK,MAAM,WAAW,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;gBAChD,aAAa,CAAC,IAAI,CAChB,IAAA,mBAAK,EAAC,iBAAiB,EAAE,GAAG,WAAW,sCAAsC,EAAE;oBAC7E,MAAM,EAAE,WAAW;oBACnB,GAAG,EAAE,oBAAoB,WAAW,qCAAqC;iBAC1E,CAAC,CACH,CAAC;YACJ,CAAC;YAED,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;oBACjB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,aAAa,CAAC,CAAC;oBAClD,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAC;gBAClD,KAAK,MAAM,CAAC,IAAI,aAAa;oBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAA,8BAAgB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAC1E,MAAM,UAAU,GAAG,YAAY;YAC7B,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC;gBACpB;oBACE,QAAQ,EAAE,SAAS;oBACnB,IAAI,EAAE,0BAA0B;oBAChC,OAAO,EACL,kHAAkH;oBACpH,MAAM,EAAE,oCAAoC;oBAC5C,GAAG,EAAE,+HAA+H;iBACrI;aACF,CAAC;YACJ,CAAC,CAAC,cAAc,CAAC;QAEnB,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;gBACX,UAAU,EAAE;oBACV,UAAU,EAAE,SAAS;oBACrB,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,YAAY;oBACtB,aAAa,EAAE,WAAW;oBAC1B,gBAAgB,EAAE,SAAS;oBAC3B,SAAS;oBACT,WAAW;oBACX,YAAY,EAAE,WAAW;oBACzB,mBAAmB,EAAE,CAAC,YAAY;iBACnC;gBACD,MAAM,EAAE,UAAU;aACnB,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,YAAI,CAAC,EAAE,CAAC,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,wBAAwB,YAAY,EAAE,CAAC,CAAC;QACrD,IAAI,WAAW,GAAG,CAAC;YAAE,IAAI,CAAC,OAAO,CAAC,qBAAqB,WAAW,iBAAiB,CAAC,CAAC;QACrF,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,CACV,WAAW,GAAG,CAAC;gBACb,CAAC,CAAC,8BAA8B,WAAW,mBAAmB;gBAC9D,CAAC,CAAC,6CAA6C,CAClD,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,CAAC,wBAAwB,SAAS,EAAE,CAAC,CAAC;QAClD,IAAI,SAAS,EAAE,CAAC;YACd,sEAAsE;YACtE,0EAA0E;YAC1E,IAAI,MAAM,GAAG,CAAC,CAAC;YACf,IAAI,CAAC;gBACH,MAAM,GAAG,IAAA,qCAAgB,EAAC,IAAA,0CAAqB,EAAC,YAAY,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YAC5E,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,GAAG,CAAC,CAAC;YACb,CAAC;YACD,IAAI,CAAC,OAAO,CACV,MAAM,GAAG,CAAC;gBACR,CAAC,CAAC,8BAA8B,MAAM,+CAA+C;gBACrF,CAAC,CAAC,2BAA2B,CAChC,CAAC;YACF,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC;oBACV,yEAAyE;oBACzE,+EAA+E;iBAChF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,OAAO,CAAC,2EAA2E,CAAC,CAAC;YAC1F,IAAI,CAAC,MAAM,CAAC;gBACV,2DAA2D;gBAC3D,6EAA6E;gBAC7E,+EAA+E;gBAC/E,mEAAmE;aACpE,CAAC,CAAC;QACL,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;CACF;AAr2CD,oDAq2CC"}
@@ -49,16 +49,8 @@ const path = __importStar(require("node:path"));
49
49
  const project_root_2 = require("../../../lib/project-root");
50
50
  const derived_writes_1 = require("../../../lib/derived-writes");
51
51
  const MatrixCommand_1 = require("./MatrixCommand");
52
- const COLOR_ENABLED = process.stdout.isTTY && process.env.NO_COLOR === undefined && process.env.TERM !== "dumb";
53
- const c = {
54
- reset: COLOR_ENABLED ? "\x1b[0m" : "",
55
- bold: COLOR_ENABLED ? "\x1b[1m" : "",
56
- dim: COLOR_ENABLED ? "\x1b[2m" : "",
57
- red: COLOR_ENABLED ? "\x1b[31m" : "",
58
- green: COLOR_ENABLED ? "\x1b[32m" : "",
59
- yellow: COLOR_ENABLED ? "\x1b[33m" : "",
60
- cyan: COLOR_ENABLED ? "\x1b[36m" : "",
61
- };
52
+ const ui_1 = require("../../../lib/ui");
53
+ const ui = __importStar(require("../../../lib/ui"));
62
54
  exports.ALLOWED_STATUSES = [
63
55
  "Draft",
64
56
  "Approved",
@@ -201,8 +193,10 @@ class DoneCommand extends command_1.BaseCommand {
201
193
  reqId: opts.reqId || undefined,
202
194
  testCmd: opts.testCmd || harness.testCmd,
203
195
  });
196
+ if (!opts.json)
197
+ process.stdout.write(ui.header(`done ${opts.reqId}`, opts.status));
204
198
  for (const step of plan.steps) {
205
- const run = step.stage === "validate"
199
+ const exec = () => step.stage === "validate"
206
200
  ? (0, node_child_process_1.spawnSync)(process.execPath, [
207
201
  path.join((0, project_root_2.findCliRoot)(__dirname), "bin", "specgate.js"),
208
202
  "validate",
@@ -214,13 +208,17 @@ class DoneCommand extends command_1.BaseCommand {
214
208
  encoding: "utf8",
215
209
  shell: true,
216
210
  });
211
+ const label = step.stage === "validate"
212
+ ? `Specification ${ui.muted(`the gate, for ${opts.reqId}`)}`
213
+ : `Tests ${ui.muted(step.argv[0])}`;
214
+ const run = opts.json ? exec() : ui.task(label, exec, (r) => ({ ok: r.status === 0 }));
217
215
  if (run.status === 0)
218
216
  continue;
219
217
  // The output is the evidence, and it goes out *before* the diagnostic:
220
218
  // `io.fail` never returns, so anything written after it is dead code.
221
219
  const detail = `${run.stdout || ""}${run.stderr || ""}`.trim();
222
220
  if (detail && !opts.json)
223
- process.stderr.write(`${detail}\n\n`);
221
+ process.stderr.write("\n" + indent(detail) + "\n\n");
224
222
  // Over JSON (and so over MCP) the reason has to travel in the document:
225
223
  // the agent got `done_validate_failed` and nothing it could act on.
226
224
  let findings = [];
@@ -280,15 +278,21 @@ class DoneCommand extends command_1.BaseCommand {
280
278
  }
281
279
  }
282
280
  const updated = result.updated;
283
- io.emit({ requirement: { id: opts.reqId, status: opts.status, rowsUpdated: updated } }, () => process.stdout.write(`${c.green}✔${c.reset} ${c.bold}${opts.reqId}${c.reset} → ${c.bold}${opts.status}${c.reset} ${c.dim}(${updated} row${updated > 1 ? "s" : ""} updated)${c.reset}\n`));
281
+ io.emit({ requirement: { id: opts.reqId, status: opts.status, rowsUpdated: updated } }, () => process.stdout.write("\n" +
282
+ ui.ok(`${ui_1.c.bold}${opts.reqId}${ui_1.c.reset} ${ui.sym.arrow} ${ui_1.c.ok}${ui_1.c.bold}${opts.status}${ui_1.c.reset} ` +
283
+ ui.muted(`(${updated} row${updated > 1 ? "s" : ""} updated)`)) +
284
+ (plan.testsUnverified
285
+ ? ""
286
+ : ui.next("specgate status", "what is left, and the next requirement"))));
284
287
  // Said out loud, after the tick, because this is the command that writes
285
288
  // `Implemented` into the record other people read. A project nothing ran is
286
289
  // not a project that passed.
287
290
  if (plan.testsUnverified && !opts.json) {
288
- process.stderr.write(`${c.yellow}⚠${c.reset} ${DoneVerification_1.NO_TEST_COMMAND_WARNING.message}\n`);
291
+ process.stderr.write("\n" + ui.warn(DoneVerification_1.NO_TEST_COMMAND_WARNING.message));
289
292
  for (const line of DoneVerification_1.NO_TEST_COMMAND_WARNING.fix) {
290
- process.stderr.write(` ${c.dim}${line}${c.reset}\n`);
293
+ process.stderr.write(` ${ui.muted(line)}\n`);
291
294
  }
295
+ process.stderr.write("\n");
292
296
  }
293
297
  process.exit(agent_1.EXIT.OK);
294
298
  }
@@ -369,7 +373,7 @@ class DoneCommand extends command_1.BaseCommand {
369
373
  if (run.status !== 0) {
370
374
  const detail = `${run.stdout || ""}${run.stderr || ""}`.trim();
371
375
  if (detail && !opts.json)
372
- process.stderr.write(`${detail}\n\n`);
376
+ process.stderr.write(indent(detail) + "\n\n");
373
377
  for (const id of passing) {
374
378
  results.set(id, {
375
379
  ok: false,
@@ -414,26 +418,36 @@ class DoneCommand extends command_1.BaseCommand {
414
418
  process.stdout.write(`${JSON.stringify(doc, null, 2)}\n`);
415
419
  }
416
420
  else {
421
+ process.stdout.write(ui.header(`done ${ids.join(" ")}`, opts.status));
417
422
  for (const id of ids) {
418
423
  const r = results.get(id);
419
424
  if (r.ok) {
420
- process.stdout.write(`${c.green}✔${c.reset} ${c.bold}${id}${c.reset} → ${c.bold}${opts.status}${c.reset}\n`);
425
+ process.stdout.write(ui.ok(`${ui_1.c.bold}${id}${ui_1.c.reset} ${ui.sym.arrow} ${ui_1.c.ok}${ui_1.c.bold}${opts.status}${ui_1.c.reset}`));
421
426
  }
422
427
  else {
423
428
  if (r.detail)
424
- process.stderr.write(`${r.detail}\n\n`);
425
- process.stdout.write(`${c.red}✖${c.reset} ${c.bold}${id}${c.reset} not marked ${opts.status}: ${r.message}. ${c.dim}[${r.code}]${c.reset}\n`);
429
+ process.stderr.write(indent(r.detail) + "\n\n");
430
+ process.stdout.write(ui.fail(`${ui_1.c.bold}${id}${ui_1.c.reset} not marked ${opts.status}: ${r.message}. ${ui.muted(`[${r.code}]`)}`));
426
431
  }
427
432
  }
428
433
  if (ids.length > 1) {
429
- process.stdout.write(`${c.dim} ${ids.length - failed.length} of ${ids.length} closed; the project's tests ran ${passing.length > 0 && opts.check && !testsUnverified ? "once" : "no times"}.${c.reset}\n`);
430
- }
431
- if (testsUnverified) {
432
- process.stderr.write(`${c.yellow}⚠${c.reset} ${DoneVerification_1.NO_TEST_COMMAND_WARNING.message}\n`);
434
+ process.stdout.write(`\n ${ui.progress(ids.length - failed.length, ids.length, "closed")}` +
435
+ ui.muted(` the project's tests ran ${passing.length > 0 && opts.check && !testsUnverified ? "once" : "no times"}`) +
436
+ "\n");
433
437
  }
438
+ if (testsUnverified)
439
+ process.stderr.write("\n" + ui.warn(DoneVerification_1.NO_TEST_COMMAND_WARNING.message));
440
+ process.stdout.write(failed.length === 0 ? ui.next("specgate status") : "\n");
434
441
  }
435
442
  process.exit(failed.length > 0 ? agent_1.EXIT.FAILURE : agent_1.EXIT.OK);
436
443
  }
437
444
  }
438
445
  exports.DoneCommand = DoneCommand;
446
+ /** A command's own output, set in under ours so it reads as quoted evidence. */
447
+ function indent(text) {
448
+ return text
449
+ .split("\n")
450
+ .map((l) => ` ${l}`)
451
+ .join("\n");
452
+ }
439
453
  //# sourceMappingURL=DoneCommand.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DoneCommand.js","sourceRoot":"","sources":["../../../../../scripts/cli/commands/spec/DoneCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DoneCommand.js","sourceRoot":"","sources":["../../../../../scripts/cli/commands/spec/DoneCommand.ts"],"names":[],"mappings":"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"}