skill-flow 1.0.6 → 1.0.8

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 (56) hide show
  1. package/dist/cli.js +46 -12
  2. package/dist/cli.js.map +1 -1
  3. package/dist/domain/types.d.ts +16 -0
  4. package/dist/services/config-coordinator.js +3 -1
  5. package/dist/services/config-coordinator.js.map +1 -1
  6. package/dist/services/deployment-applier.d.ts +4 -0
  7. package/dist/services/deployment-applier.js +25 -1
  8. package/dist/services/deployment-applier.js.map +1 -1
  9. package/dist/services/deployment-planner.js +14 -1
  10. package/dist/services/deployment-planner.js.map +1 -1
  11. package/dist/services/skill-flow.d.ts +21 -2
  12. package/dist/services/skill-flow.js +182 -30
  13. package/dist/services/skill-flow.js.map +1 -1
  14. package/dist/services/source-service.js +36 -5
  15. package/dist/services/source-service.js.map +1 -1
  16. package/dist/tests/add-flow-model.test.d.ts +1 -0
  17. package/dist/tests/add-flow-model.test.js +108 -0
  18. package/dist/tests/add-flow-model.test.js.map +1 -0
  19. package/dist/tests/add-flow-ui.test.d.ts +1 -0
  20. package/dist/tests/add-flow-ui.test.js +16 -0
  21. package/dist/tests/add-flow-ui.test.js.map +1 -0
  22. package/dist/tests/add-prepare-flow.test.d.ts +1 -0
  23. package/dist/tests/add-prepare-flow.test.js +166 -0
  24. package/dist/tests/add-prepare-flow.test.js.map +1 -0
  25. package/dist/tests/cli-utils.test.js +10 -1
  26. package/dist/tests/cli-utils.test.js.map +1 -1
  27. package/dist/tests/config-coordinator.test.js +47 -0
  28. package/dist/tests/config-coordinator.test.js.map +1 -1
  29. package/dist/tests/config-integration.test.js +38 -0
  30. package/dist/tests/config-integration.test.js.map +1 -1
  31. package/dist/tests/config-ui-utils.test.js +54 -4
  32. package/dist/tests/config-ui-utils.test.js.map +1 -1
  33. package/dist/tests/skill-flow.test.js +111 -0
  34. package/dist/tests/skill-flow.test.js.map +1 -1
  35. package/dist/tests/source-lifecycle.test.js +41 -2
  36. package/dist/tests/source-lifecycle.test.js.map +1 -1
  37. package/dist/tests/source-parsing-compatibility.test.js +3 -2
  38. package/dist/tests/source-parsing-compatibility.test.js.map +1 -1
  39. package/dist/tui/add-flow-model.d.ts +62 -0
  40. package/dist/tui/add-flow-model.js +206 -0
  41. package/dist/tui/add-flow-model.js.map +1 -0
  42. package/dist/tui/add-flow.d.ts +25 -0
  43. package/dist/tui/add-flow.js +534 -0
  44. package/dist/tui/add-flow.js.map +1 -0
  45. package/dist/tui/config-app.d.ts +4 -2
  46. package/dist/tui/config-app.js +51 -56
  47. package/dist/tui/config-app.js.map +1 -1
  48. package/dist/tui/find-app.js +44 -43
  49. package/dist/tui/find-app.js.map +1 -1
  50. package/dist/utils/cli.d.ts +1 -0
  51. package/dist/utils/cli.js +4 -0
  52. package/dist/utils/cli.js.map +1 -1
  53. package/dist/utils/fs.d.ts +1 -0
  54. package/dist/utils/fs.js +4 -0
  55. package/dist/utils/fs.js.map +1 -1
  56. package/package.json +1 -1
@@ -10,7 +10,7 @@ import * as builtinGitSources from "../utils/builtin-git-sources.js";
10
10
  import * as githubCatalog from "../utils/github-catalog.js";
11
11
  import { buildFindCommand } from "../utils/find-command.js";
12
12
  import { deriveSourceId } from "../utils/source-id.js";
13
- import { createRepo, seedBuiltinCatalog, skillDoc, writeRepoFiles, useSkillFlowSandbox, } from "./test-helpers.js";
13
+ import { createRepo, pathExists, seedBuiltinCatalog, skillDoc, writeRepoFiles, useSkillFlowSandbox, } from "./test-helpers.js";
14
14
  describe.sequential("source lifecycle", () => {
15
15
  const sandbox = useSkillFlowSandbox();
16
16
  function createSourceService() {
@@ -238,7 +238,7 @@ describe.sequential("source lifecycle", () => {
238
238
  return;
239
239
  }
240
240
  expect(result.data.candidates[0]?.title).toBe("agent-browser");
241
- });
241
+ }, 10000);
242
242
  test("find falls back to linkName when local skill title is a placeholder heading", async () => {
243
243
  vi.spyOn(clawhubUtils, "searchClawHubSkills").mockResolvedValueOnce([]);
244
244
  const repoPath = await createRepo(sandbox.sandboxRoot, {
@@ -270,6 +270,45 @@ description: |
270
270
  }
271
271
  expect(result.errors[0]?.code).toBe("GIT_CLONE_FAILED");
272
272
  });
273
+ test("keeps an existing checkout directory when git fetch fails", async () => {
274
+ const app = new SkillFlowApp();
275
+ const sourceId = "existing-checkout";
276
+ const checkoutPath = app.store.getSourceCheckoutPath("git", sourceId);
277
+ await fs.mkdir(checkoutPath, { recursive: true });
278
+ await fs.writeFile(path.join(checkoutPath, "keep.txt"), "keep", "utf8");
279
+ const result = await app.addSource(path.join(sandbox.sandboxRoot, "missing-repo"), {
280
+ sourceIdOverride: sourceId,
281
+ });
282
+ expect(result.ok).toBe(false);
283
+ expect(result.errors[0]?.code).toBe("GIT_CLONE_FAILED");
284
+ expect(await fs.readFile(path.join(checkoutPath, "keep.txt"), "utf8")).toBe("keep");
285
+ });
286
+ test("refuses to delete the managed source root itself during uninstall", async () => {
287
+ const repoPath = await createRepo(sandbox.sandboxRoot, {
288
+ "browse/SKILL.md": skillDoc("browse", "Browser flow."),
289
+ });
290
+ const app = new SkillFlowApp();
291
+ const added = await app.addSource(repoPath, { project: false });
292
+ expect(added.ok).toBe(true);
293
+ if (!added.ok) {
294
+ return;
295
+ }
296
+ const lock = await app.store.readLock();
297
+ const source = lock.sources.find((item) => item.id === added.data.manifest.id);
298
+ expect(source).toBeTruthy();
299
+ if (!source) {
300
+ return;
301
+ }
302
+ source.checkoutPath = app.store.getSourceRoot("local");
303
+ await app.store.writeLock(lock);
304
+ const removed = await app.uninstall([added.data.manifest.id]);
305
+ expect(removed.ok).toBe(false);
306
+ if (removed.ok) {
307
+ return;
308
+ }
309
+ expect(removed.errors[0]?.code).toBe("SOURCE_CHECKOUT_PATH_INVALID");
310
+ expect(await pathExists(app.store.getSourceRoot("local"))).toBe(true);
311
+ });
273
312
  test("fails find when no local results exist and all remote search backends are unavailable", async () => {
274
313
  vi.spyOn(builtinGitSources, "getBuiltinGitSources").mockReturnValue([]);
275
314
  vi.spyOn(clawhubUtils, "searchClawHubSkills").mockRejectedValueOnce(new Error("offline"));
@@ -1 +1 @@
1
- {"version":3,"file":"source-lifecycle.test.js","sourceRoot":"","sources":["../../src/tests/source-lifecycle.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,YAAY,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,iBAAiB,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,aAAa,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,QAAQ,EACR,cAAc,EACd,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAE3B,QAAQ,CAAC,UAAU,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAC3C,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;IAEtC,SAAS,mBAAmB;QAC1B,OAAO,IAAI,aAAa,CAAC,IAAI,UAAU,EAAE,EAAE,IAAI,gBAAgB,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC9D,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,mBAAmB,EAAE,QAAQ,CAAC,UAAU,EAAE,uBAAuB,CAAC;YAClE,cAAc,EAAE,QAAQ,CAAC,KAAK,EAAE,yBAAyB,CAAC;SAC3D,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAExC,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YAClD,aAAa;YACb,OAAO;YACP,QAAQ;YACR,gBAAgB;YAChB,YAAY;YACZ,UAAU;YACV,UAAU;YACV,IAAI;YACJ,UAAU;YACV,UAAU;YACV,OAAO;YACP,KAAK;YACL,MAAM;SACP,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC;YACvD,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW;YACrC,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM;SACjC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;QAC3F,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,6BAA6B,EAAE,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAC;YACtE,wBAAwB,EAAE,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;SAC7D,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC;QAE7E,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEtC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,aAAa,EAAE,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC;YAC7E,oBAAoB;YACpB,eAAe;SAChB,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC3D,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC;YACvD,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,qBAAqB;SAChD,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACvE,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;QAEtC,MAAM,MAAM,CACT,OAA6E,CAAC,gBAAgB,CAC7F,wCAAwC,CACzC,CACF,CAAC,QAAQ,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,6BAA6B,EAAE,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAC;YACtE,gBAAgB,EAAE,OAAO;SAC1B,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAE/D,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC7E,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAChC,oEAAoE,CACrE,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACxE,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;QACtF,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAChC,wDAAwD,EACxD,EAAE,IAAI,EAAE,aAAa,EAAE,CACxB,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACxE,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;QACxE,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;QAEhE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC/D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;QACtD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,iCAAiC,CAAC,CAAC;QAErE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEnD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAElE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,wEAAwE,EAAE,KAAK,IAAI,EAAE;QACxF,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;QAE/D,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAErD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAElE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC7E,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,qBAAqB,CAAC;YAClE,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE;SAC7D,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;SAC7D,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE5B,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,OAAO,GAAG,iBAAiB,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAE,CAAC;QAC7D,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,EAAE,CAAC,KAAK,CACZ,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAChF,EAAE,SAAS,EAAE,IAAI,EAAE,CACpB,CAAC;QACF,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC,EAC5F,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC,EAC5C,MAAM,CACP,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAE9C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;YAC1E,OAAO;YACP,aAAa;YACb,SAAS;SACV,CAAC,CAAC;IACL,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;QAChF,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QACxE,EAAE,CAAC,KAAK,CAAC,iBAAiB,EAAE,sBAAsB,CAAC,CAAC,eAAe,CAAC;YAClE,EAAE,OAAO,EAAE,wCAAwC,EAAE,MAAM,EAAE,MAAM,EAAE;SACtE,CAAC,CAAC;QACH,EAAE,CAAC,KAAK,CAAC,aAAa,EAAE,uBAAuB,CAAC,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QAE7F,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,cAAc,CAAC,wCAAwC,CAAC,CAAC;QAC1E,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,MAAM,EAAE,CAAC,SAAS,CAChB,GAAG,CAAC,KAAK,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EACvC,GAAG,IAAI,CAAC,SAAS,CACf;YACE,OAAO,EAAE,wCAAwC;YACjD,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,CAAC,wBAAwB,CAAC;YACtC,SAAS,EAAE,0BAA0B;SACtC,EACD,IAAI,EACJ,CAAC,CACF,IAAI,EACL,MAAM,CACP,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAE9C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC9D,MAAM,CACJ,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,iCAAiC,CAAC,CACtF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC9E,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QAExE,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,OAAO,GAAG,iBAAiB,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAE,CAAC;QAC7D,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,EAAE,CAAC,KAAK,CACZ,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,EACrF,EAAE,SAAS,EAAE,IAAI,EAAE,CACpB,CAAC;QACF,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,IAAI,CACP,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,eAAe,CAAC,EACjD,QAAQ,EACR,aAAa,EACb,UAAU,CACX,EACD,QAAQ,CAAC,aAAa,EAAE,mCAAmC,CAAC,EAC5D,MAAM,CACP,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAEnD,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC9C,MAAM,CAAC,gBAAgB,CAAC,SAAU,CAAC,CAAC,CAAC,IAAI,CACvC,kBAAkB,OAAO,CAAC,OAAO,4BAA4B,CAC9D,CAAC;IACJ,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QACpF,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QAExE,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,wBAAwB,EAAE,QAAQ,CAAC,eAAe,EAAE,qBAAqB,CAAC;SAC3E,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE5B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QAErD,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;QAC7F,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QAExE,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,oBAAoB,EAAE;;;;;;;CAO3B;SACI,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE5B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAEjD,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC;QAEnF,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uFAAuF,EAAE,KAAK,IAAI,EAAE;QACvG,EAAE,CAAC,KAAK,CAAC,iBAAiB,EAAE,sBAAsB,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACxE,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QAE1F,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAE9C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACxD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAEvD,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACzD,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,iBAAiB;SACrC,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QACjE,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,eAAe,EAAE,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;YACtD,cAAc,EAAE,aAAa;SAC9B,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE;;;;;;;;;;CAUxB;SACI,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEtC,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,aAAa,EAAE,CAAC;QAC7C,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QACD,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,SAAS,CACnE,uBAAuB,CACxB,CAAC;QACF,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;QAC/E,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;SAC9C,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAClF,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACzD,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,sBAAsB,EAAE,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAChE,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,aAAa,EAAE,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAE1D,CAAC;QACF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACnD,MAAM,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,gBAAgB,CAAC;YAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QACH,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAE3E,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,aAAa,EAAE,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACvE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QACnF,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAE5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC/E,MAAM,cAAc,CAAC,QAAQ,EAAE;YAC7B,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACzE,CAAC,CAAC;QACH,MAAM,cAAc,CAAC,YAAY,EAAE;YACjC,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;SACjE,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC9D,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QAClE,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CACxF,iCAAiC,CAClC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;QAC7F,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAEnD,MAAM,cAAc,CAAC,QAAQ,EAAE;YAC7B,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;SACtD,CAAC,CAAC;QACH,MAAM,cAAc,CAAC,SAAS,EAAE;YAC9B,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAExD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;QACjG,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAChE,MAAM,cAAc,CAAC,QAAQ,EAAE;YAC7B,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAE5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC7F,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;QACxF,MAAM,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAExD,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAE5E,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC5D,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,gCAAgC,CAAC,CAAC;QAC/E,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChG,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,kFAAkF,EAAE,KAAK,IAAI,EAAE;QAClG,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,GAAG,QAAQ,SAAS,CAAC;QACpC,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAExE,MAAM,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE;YAC7B,cAAc,EAAE,CAAC,UAAU,CAAC;YAC5B,eAAe,EAAE,CAAC,MAAM,CAAC;SAC1B,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC9C,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC,IAAI,CAC5C,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU,CACrF,EAAE,UAAU,CAAC;QACd,MAAM,CAAC,UAAU,CAAC,CAAC,UAAU,EAAE,CAAC;QAChC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QACD,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;QAElF,MAAM,cAAc,CAAC,QAAQ,EAAE;YAC7B,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,mCAAmC,CAAC;SAC3E,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEpD,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,CACJ,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CACzE,CAAC,SAAS,CAAC,mCAAmC,CAAC,CAAC;QACjD,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QACpF,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,cAAc,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;YACvC,cAAc,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;SACxC,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAE5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,cAAc,CAAC,QAAQ,EAAE;YAC7B,cAAc,EAAE,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;YAChD,gBAAgB,EAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;SAC9C,CAAC,CAAC;QACH,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1E,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;YACnD,SAAS;YACT,SAAS;YACT,OAAO;SACR,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;QACxE,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QACxE,MAAM,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAE5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC;QAEtF,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAChE,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACvC,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;QAC1F,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,wBAAwB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SAC9D,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAE5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;QACjF,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,EAAE,CAAC,MAAM,CACb,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EACvC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CACzC,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QACpF,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAE5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,cAAc,CAAC,QAAQ,EAAE;YAC7B,iBAAiB,EAAE,YAAY;SAChC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QACtE,MAAM,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;QAC/E,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"source-lifecycle.test.js","sourceRoot":"","sources":["../../src/tests/source-lifecycle.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,YAAY,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,iBAAiB,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,aAAa,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EACL,UAAU,EACV,UAAU,EACV,kBAAkB,EAClB,QAAQ,EACR,cAAc,EACd,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAE3B,QAAQ,CAAC,UAAU,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAC3C,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;IAEtC,SAAS,mBAAmB;QAC1B,OAAO,IAAI,aAAa,CAAC,IAAI,UAAU,EAAE,EAAE,IAAI,gBAAgB,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC9D,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,mBAAmB,EAAE,QAAQ,CAAC,UAAU,EAAE,uBAAuB,CAAC;YAClE,cAAc,EAAE,QAAQ,CAAC,KAAK,EAAE,yBAAyB,CAAC;SAC3D,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAExC,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YAClD,aAAa;YACb,OAAO;YACP,QAAQ;YACR,gBAAgB;YAChB,YAAY;YACZ,UAAU;YACV,UAAU;YACV,IAAI;YACJ,UAAU;YACV,UAAU;YACV,OAAO;YACP,KAAK;YACL,MAAM;SACP,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC;YACvD,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW;YACrC,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM;SACjC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;QAC3F,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,6BAA6B,EAAE,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAC;YACtE,wBAAwB,EAAE,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;SAC7D,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC;QAE7E,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEtC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,aAAa,EAAE,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC;YAC7E,oBAAoB;YACpB,eAAe;SAChB,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC3D,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC;YACvD,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,qBAAqB;SAChD,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACvE,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;QAEtC,MAAM,MAAM,CACT,OAA6E,CAAC,gBAAgB,CAC7F,wCAAwC,CACzC,CACF,CAAC,QAAQ,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,6BAA6B,EAAE,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAC;YACtE,gBAAgB,EAAE,OAAO;SAC1B,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAE/D,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC7E,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAChC,oEAAoE,CACrE,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACxE,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;QACtF,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAChC,wDAAwD,EACxD,EAAE,IAAI,EAAE,aAAa,EAAE,CACxB,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACxE,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;QACxE,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;QAEhE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC/D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;QACtD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,iCAAiC,CAAC,CAAC;QAErE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEnD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAElE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,wEAAwE,EAAE,KAAK,IAAI,EAAE;QACxF,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;QAE/D,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAErD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAElE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC7E,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,qBAAqB,CAAC;YAClE,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE;SAC7D,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;SAC7D,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE5B,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,OAAO,GAAG,iBAAiB,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAE,CAAC;QAC7D,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,EAAE,CAAC,KAAK,CACZ,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAChF,EAAE,SAAS,EAAE,IAAI,EAAE,CACpB,CAAC;QACF,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC,EAC5F,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC,EAC5C,MAAM,CACP,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAE9C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;YAC1E,OAAO;YACP,aAAa;YACb,SAAS;SACV,CAAC,CAAC;IACL,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;QAChF,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QACxE,EAAE,CAAC,KAAK,CAAC,iBAAiB,EAAE,sBAAsB,CAAC,CAAC,eAAe,CAAC;YAClE,EAAE,OAAO,EAAE,wCAAwC,EAAE,MAAM,EAAE,MAAM,EAAE;SACtE,CAAC,CAAC;QACH,EAAE,CAAC,KAAK,CAAC,aAAa,EAAE,uBAAuB,CAAC,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QAE7F,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,cAAc,CAAC,wCAAwC,CAAC,CAAC;QAC1E,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,MAAM,EAAE,CAAC,SAAS,CAChB,GAAG,CAAC,KAAK,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EACvC,GAAG,IAAI,CAAC,SAAS,CACf;YACE,OAAO,EAAE,wCAAwC;YACjD,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,CAAC,wBAAwB,CAAC;YACtC,SAAS,EAAE,0BAA0B;SACtC,EACD,IAAI,EACJ,CAAC,CACF,IAAI,EACL,MAAM,CACP,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAE9C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC9D,MAAM,CACJ,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,iCAAiC,CAAC,CACtF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC9E,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QAExE,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,OAAO,GAAG,iBAAiB,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAE,CAAC;QAC7D,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,EAAE,CAAC,KAAK,CACZ,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,EACrF,EAAE,SAAS,EAAE,IAAI,EAAE,CACpB,CAAC;QACF,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,IAAI,CACP,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,eAAe,CAAC,EACjD,QAAQ,EACR,aAAa,EACb,UAAU,CACX,EACD,QAAQ,CAAC,aAAa,EAAE,mCAAmC,CAAC,EAC5D,MAAM,CACP,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAEnD,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC9C,MAAM,CAAC,gBAAgB,CAAC,SAAU,CAAC,CAAC,CAAC,IAAI,CACvC,kBAAkB,OAAO,CAAC,OAAO,4BAA4B,CAC9D,CAAC;IACJ,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QACpF,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QAExE,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,wBAAwB,EAAE,QAAQ,CAAC,eAAe,EAAE,qBAAqB,CAAC;SAC3E,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE5B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QAErD,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACjE,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;QAC7F,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QAExE,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,oBAAoB,EAAE;;;;;;;CAO3B;SACI,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE5B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAEjD,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC;QAEnF,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QAC3E,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,mBAAmB,CAAC;QACrC,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAEtE,MAAM,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAExE,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE;YACjF,gBAAgB,EAAE,QAAQ;SAC3B,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACxD,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtF,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QACnF,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAEhE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC/E,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QACD,MAAM,CAAC,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAEhC,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAE9D,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QACrE,MAAM,CAAC,MAAM,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uFAAuF,EAAE,KAAK,IAAI,EAAE;QACvG,EAAE,CAAC,KAAK,CAAC,iBAAiB,EAAE,sBAAsB,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACxE,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QAE1F,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAE9C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACxD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAEvD,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACzD,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,iBAAiB;SACrC,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QACjE,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,eAAe,EAAE,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;YACtD,cAAc,EAAE,aAAa;SAC9B,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE;;;;;;;;;;CAUxB;SACI,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEtC,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,aAAa,EAAE,CAAC;QAC7C,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QACD,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,SAAS,CACnE,uBAAuB,CACxB,CAAC;QACF,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;QAC/E,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;SAC9C,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAClF,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACzD,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,sBAAsB,EAAE,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAChE,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,aAAa,EAAE,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAE1D,CAAC;QACF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACnD,MAAM,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,gBAAgB,CAAC;YAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QACH,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAE3E,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,aAAa,EAAE,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACvE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QACnF,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAE5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC/E,MAAM,cAAc,CAAC,QAAQ,EAAE;YAC7B,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACzE,CAAC,CAAC;QACH,MAAM,cAAc,CAAC,YAAY,EAAE;YACjC,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;SACjE,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC9D,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QAClE,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CACxF,iCAAiC,CAClC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;QAC7F,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAEnD,MAAM,cAAc,CAAC,QAAQ,EAAE;YAC7B,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;SACtD,CAAC,CAAC;QACH,MAAM,cAAc,CAAC,SAAS,EAAE;YAC9B,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAExD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;QACjG,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAChE,MAAM,cAAc,CAAC,QAAQ,EAAE;YAC7B,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAE5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC7F,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;QACxF,MAAM,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAExD,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAE5E,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC5D,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,gCAAgC,CAAC,CAAC;QAC/E,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChG,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,kFAAkF,EAAE,KAAK,IAAI,EAAE;QAClG,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAE/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,GAAG,QAAQ,SAAS,CAAC;QACpC,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAExE,MAAM,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE;YAC7B,cAAc,EAAE,CAAC,UAAU,CAAC;YAC5B,eAAe,EAAE,CAAC,MAAM,CAAC;SAC1B,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC9C,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC,IAAI,CAC5C,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU,CACrF,EAAE,UAAU,CAAC;QACd,MAAM,CAAC,UAAU,CAAC,CAAC,UAAU,EAAE,CAAC;QAChC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QACD,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;QAElF,MAAM,cAAc,CAAC,QAAQ,EAAE;YAC7B,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,mCAAmC,CAAC;SAC3E,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEpD,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,CACJ,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CACzE,CAAC,SAAS,CAAC,mCAAmC,CAAC,CAAC;QACjD,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QACpF,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,cAAc,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;YACvC,cAAc,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;SACxC,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAE5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,cAAc,CAAC,QAAQ,EAAE;YAC7B,cAAc,EAAE,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;YAChD,gBAAgB,EAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;SAC9C,CAAC,CAAC;QACH,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1E,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;YACnD,SAAS;YACT,SAAS;YACT,OAAO;SACR,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;QACxE,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QACxE,MAAM,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAE5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC;QAEtF,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAChE,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACvC,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;QAC1F,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,wBAAwB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SAC9D,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAE5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;QACjF,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,EAAE,CAAC,MAAM,CACb,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EACvC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CACzC,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QACpF,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE;YACrD,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAE5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,cAAc,CAAC,QAAQ,EAAE;YAC7B,iBAAiB,EAAE,YAAY;SAChC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QACtE,MAAM,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;QAC/E,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import fs from "node:fs/promises";
2
- import os from "node:os";
3
2
  import path from "node:path";
4
3
  import { describe, expect, test } from "vitest";
5
4
  import { InventoryService } from "../services/inventory-service.js";
@@ -7,6 +6,7 @@ import { SourceService } from "../services/source-service.js";
7
6
  import { StateStore } from "../state/store.js";
8
7
  import { SkillFlowApp } from "../services/skill-flow.js";
9
8
  import { resolveAddSourceLocator } from "../utils/cli.js";
9
+ import { useSkillFlowSandbox } from "./test-helpers.js";
10
10
  function createSourceService() {
11
11
  return new SourceService(new StateStore(), new InventoryService());
12
12
  }
@@ -15,6 +15,7 @@ async function resolveSource(locator) {
15
15
  return service.resolveSource(locator, {});
16
16
  }
17
17
  describe("source parsing compatibility", () => {
18
+ const sandbox = useSkillFlowSandbox();
18
19
  test("keeps GitHub shorthand subpaths intact at the CLI layer", () => {
19
20
  expect(resolveAddSourceLocator("JimLiu/baoyu-skills/skills/find-skills")).toBe("JimLiu/baoyu-skills/skills/find-skills");
20
21
  });
@@ -48,7 +49,7 @@ describe("source parsing compatibility", () => {
48
49
  });
49
50
  });
50
51
  test("treats file URLs to local skill directories as local sources", async () => {
51
- const tempRoot = await fs.mkdtemp(path.join(os.tmpdir(), "skill-flow-file-url-"));
52
+ const tempRoot = await fs.mkdtemp(path.join(sandbox.sandboxRoot, "skill-flow-file-url-"));
52
53
  const repoPath = path.join(tempRoot, "local-skill");
53
54
  await fs.mkdir(path.join(repoPath, "browse"), { recursive: true });
54
55
  await fs.writeFile(path.join(repoPath, "browse", "SKILL.md"), `---
@@ -1 +1 @@
1
- {"version":3,"file":"source-parsing-compatibility.test.js","sourceRoot":"","sources":["../../src/tests/source-parsing-compatibility.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"source-parsing-compatibility.test.js","sourceRoot":"","sources":["../../src/tests/source-parsing-compatibility.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ import type { DeploymentPlan, DeploymentTargetName, DraftBinding, LeafRecord, SourceManifestRecord } from "../domain/types.js";
2
+ export type AddFlowRequest = {
3
+ locator: string;
4
+ path?: string;
5
+ requestedSkills?: string[];
6
+ requestedAgents?: string[];
7
+ yes?: boolean;
8
+ all?: boolean;
9
+ };
10
+ export type AddChoice = {
11
+ id: string;
12
+ label: string;
13
+ hint?: string;
14
+ description?: string;
15
+ };
16
+ export declare const ALL_SKILLS_CHOICE_ID = "__all_skills__";
17
+ export declare const ALL_AGENTS_CHOICE_ID = "__all_agents__";
18
+ export type AddFlowPrepared = {
19
+ source: SourceManifestRecord;
20
+ leafs: LeafRecord[];
21
+ availableTargets: DeploymentTargetName[];
22
+ draft: DraftBinding;
23
+ importWarnings: string[];
24
+ requestedPath?: string;
25
+ };
26
+ export declare function normalizeRequestedPath(requestedPath?: string): string | undefined;
27
+ export declare function buildDefaultSelectedLeafIds(leafs: LeafRecord[], requestedPath?: string): string[];
28
+ export declare function buildLeafChoices(leafs: LeafRecord[]): AddChoice[];
29
+ export declare function buildTargetChoices(targets: DeploymentTargetName[]): AddChoice[];
30
+ export declare function withAllChoice(choices: AddChoice[], label: string, id: string): AddChoice[];
31
+ export declare function filterChoices(choices: AddChoice[], query: string): AddChoice[];
32
+ export declare function resolveRequestedLeafIds(leafs: LeafRecord[], requestedSkills: string[]): {
33
+ ok: true;
34
+ value: string[];
35
+ } | {
36
+ ok: false;
37
+ message: string;
38
+ };
39
+ export declare function resolveRequestedTargets(availableTargets: DeploymentTargetName[], requestedAgents: string[]): {
40
+ ok: true;
41
+ value: DeploymentTargetName[];
42
+ } | {
43
+ ok: false;
44
+ message: string;
45
+ };
46
+ export declare function buildInitialDraft(leafs: LeafRecord[], availableTargets: DeploymentTargetName[], options: {
47
+ requestedPath?: string;
48
+ requestedSkills?: string[];
49
+ requestedAgents?: string[];
50
+ yes?: boolean;
51
+ all?: boolean;
52
+ }): {
53
+ ok: true;
54
+ value: DraftBinding;
55
+ } | {
56
+ ok: false;
57
+ message: string;
58
+ };
59
+ export declare function buildAddCompletionMessage(source: SourceManifestRecord, draft: DraftBinding, leafs: LeafRecord[]): string;
60
+ export declare function areAllSelected(selectedIds: readonly string[], allIds: readonly string[]): boolean;
61
+ export declare function toggleAllSelections(selectedIds: readonly string[], allIds: readonly string[]): string[];
62
+ export declare function buildSummaryLines(prepared: AddFlowPrepared, preview: DeploymentPlan): string[];
@@ -0,0 +1,206 @@
1
+ import { TARGET_DEFINITIONS, TARGET_LABELS, TARGET_ORDER } from "../utils/constants.js";
2
+ import { countActions, formatActionSummary, formatTargetName } from "../utils/format.js";
3
+ import { formatGroupRef } from "../utils/naming.js";
4
+ export const ALL_SKILLS_CHOICE_ID = "__all_skills__";
5
+ export const ALL_AGENTS_CHOICE_ID = "__all_agents__";
6
+ export function normalizeRequestedPath(requestedPath) {
7
+ if (!requestedPath) {
8
+ return undefined;
9
+ }
10
+ const normalized = requestedPath.trim().replace(/^\.\/+/, "").replace(/\/+$/, "");
11
+ return normalized.length > 0 && normalized !== "." ? normalized : undefined;
12
+ }
13
+ export function buildDefaultSelectedLeafIds(leafs, requestedPath) {
14
+ const normalizedPath = normalizeRequestedPath(requestedPath);
15
+ if (!normalizedPath) {
16
+ return leafs.map((leaf) => leaf.id);
17
+ }
18
+ return leafs
19
+ .filter((leaf) => leaf.relativePath === normalizedPath ||
20
+ leaf.relativePath.startsWith(`${normalizedPath}/`))
21
+ .map((leaf) => leaf.id);
22
+ }
23
+ export function buildLeafChoices(leafs) {
24
+ return leafs.map((leaf) => ({
25
+ id: leaf.id,
26
+ label: leaf.linkName,
27
+ hint: leaf.relativePath,
28
+ description: leaf.description,
29
+ }));
30
+ }
31
+ export function buildTargetChoices(targets) {
32
+ const orderedTargets = [...targets].sort((left, right) => TARGET_ORDER.indexOf(left) - TARGET_ORDER.indexOf(right));
33
+ return orderedTargets.map((target) => ({
34
+ id: target,
35
+ label: formatTargetName(target),
36
+ ...(TARGET_DEFINITIONS[target].writeRootCandidates[0]
37
+ ? { hint: TARGET_DEFINITIONS[target].writeRootCandidates[0] }
38
+ : {}),
39
+ }));
40
+ }
41
+ export function withAllChoice(choices, label, id) {
42
+ return [{ id, label }, ...choices];
43
+ }
44
+ export function filterChoices(choices, query) {
45
+ const normalizedQuery = normalizeSearch(query);
46
+ if (!normalizedQuery) {
47
+ return choices;
48
+ }
49
+ return choices.filter((choice) => {
50
+ const haystack = normalizeSearch([choice.label, choice.hint, choice.description, choice.id].filter(Boolean).join(" "));
51
+ return haystack.includes(normalizedQuery);
52
+ });
53
+ }
54
+ export function resolveRequestedLeafIds(leafs, requestedSkills) {
55
+ const resolvedIds = [];
56
+ for (const requestedSkill of requestedSkills) {
57
+ const match = resolveLeafToken(leafs, requestedSkill);
58
+ if (!match.ok) {
59
+ return match;
60
+ }
61
+ resolvedIds.push(match.value);
62
+ }
63
+ return { ok: true, value: [...new Set(resolvedIds)] };
64
+ }
65
+ export function resolveRequestedTargets(availableTargets, requestedAgents) {
66
+ const availableSet = new Set(availableTargets);
67
+ const resolvedTargets = [];
68
+ for (const requestedAgent of requestedAgents) {
69
+ const normalized = normalizeSearch(requestedAgent);
70
+ const matches = TARGET_ORDER.filter((target) => {
71
+ if (!availableSet.has(target)) {
72
+ return false;
73
+ }
74
+ return [
75
+ target,
76
+ TARGET_LABELS[target],
77
+ ].some((value) => normalizeSearch(value) === normalized);
78
+ });
79
+ if (matches.length === 0) {
80
+ return {
81
+ ok: false,
82
+ message: `Unknown or unavailable agent '${requestedAgent}'.`,
83
+ };
84
+ }
85
+ resolvedTargets.push(matches[0]);
86
+ }
87
+ return { ok: true, value: [...new Set(resolvedTargets)] };
88
+ }
89
+ export function buildInitialDraft(leafs, availableTargets, options) {
90
+ const selectedLeafIds = options.requestedSkills?.length
91
+ ? resolveRequestedLeafIds(leafs, options.requestedSkills)
92
+ : {
93
+ ok: true,
94
+ value: options.all || options.yes
95
+ ? leafs.map((leaf) => leaf.id)
96
+ : buildDefaultSelectedLeafIds(leafs, options.requestedPath),
97
+ };
98
+ if (!selectedLeafIds.ok) {
99
+ return selectedLeafIds;
100
+ }
101
+ const enabledTargets = options.requestedAgents?.length
102
+ ? resolveRequestedTargets(availableTargets, options.requestedAgents)
103
+ : {
104
+ ok: true,
105
+ value: [...availableTargets],
106
+ };
107
+ if (!enabledTargets.ok) {
108
+ return enabledTargets;
109
+ }
110
+ return {
111
+ ok: true,
112
+ value: {
113
+ selectedLeafIds: selectedLeafIds.value,
114
+ enabledTargets: enabledTargets.value,
115
+ },
116
+ };
117
+ }
118
+ export function buildAddCompletionMessage(source, draft, leafs) {
119
+ const selectedCount = draft.selectedLeafIds.length;
120
+ const targetCount = draft.enabledTargets.length;
121
+ const importedCount = leafs.length;
122
+ const targetSummary = targetCount === 0
123
+ ? "no agents enabled"
124
+ : `${targetCount} agent${targetCount === 1 ? "" : "s"} selected`;
125
+ return `Added ${formatGroupRef(source)} with ${selectedCount}/${importedCount} skills enabled, ${targetSummary}.`;
126
+ }
127
+ export function areAllSelected(selectedIds, allIds) {
128
+ return allIds.length > 0 && allIds.every((id) => selectedIds.includes(id));
129
+ }
130
+ export function toggleAllSelections(selectedIds, allIds) {
131
+ const current = new Set(selectedIds);
132
+ if (areAllSelected(selectedIds, allIds)) {
133
+ for (const id of allIds) {
134
+ current.delete(id);
135
+ }
136
+ return [...current];
137
+ }
138
+ for (const id of allIds) {
139
+ current.add(id);
140
+ }
141
+ return [...current];
142
+ }
143
+ export function buildSummaryLines(prepared, preview) {
144
+ const counts = countActions(preview.actions);
145
+ const selectedLeafLabels = prepared.leafs
146
+ .filter((leaf) => prepared.draft.selectedLeafIds.includes(leaf.id))
147
+ .map((leaf) => leaf.linkName)
148
+ .sort((left, right) => left.localeCompare(right));
149
+ const selectedTargetLabels = prepared.draft.enabledTargets.map((target) => formatTargetName(target));
150
+ return [
151
+ `Source ${formatGroupRef(prepared.source)}`,
152
+ `Skills ${prepared.draft.selectedLeafIds.length}/${prepared.leafs.length} enabled`,
153
+ `Agents ${prepared.draft.enabledTargets.length} selected`,
154
+ ...(prepared.requestedPath
155
+ ? [`Default preselected from ${prepared.requestedPath}`]
156
+ : []),
157
+ `Plan ${formatActionSummary(preview.actions)}`,
158
+ ...(selectedLeafLabels.length > 0
159
+ ? [`Enabled ${truncateSummary(selectedLeafLabels)}`]
160
+ : []),
161
+ ...(selectedTargetLabels.length > 0
162
+ ? [`Targets ${truncateSummary(selectedTargetLabels)}`]
163
+ : []),
164
+ ...(counts.blocked ? [`Blocked ${counts.blocked}`] : []),
165
+ ];
166
+ }
167
+ function resolveLeafToken(leafs, requestedSkill) {
168
+ const normalized = normalizeSearch(requestedSkill);
169
+ const relativePathMatches = leafs.filter((leaf) => normalizeSearch(leaf.relativePath) === normalized);
170
+ if (relativePathMatches.length === 1) {
171
+ return { ok: true, value: relativePathMatches[0].id };
172
+ }
173
+ if (relativePathMatches.length > 1) {
174
+ return {
175
+ ok: false,
176
+ message: `Skill selector '${requestedSkill}' is ambiguous. Use a unique relative path.`,
177
+ };
178
+ }
179
+ const fallbackMatches = leafs.filter((leaf) => [leaf.linkName, leaf.name].some((value) => normalizeSearch(value) === normalized));
180
+ if (fallbackMatches.length === 1) {
181
+ return { ok: true, value: fallbackMatches[0].id };
182
+ }
183
+ if (fallbackMatches.length > 1) {
184
+ return {
185
+ ok: false,
186
+ message: `Skill selector '${requestedSkill}' is ambiguous. Use a relative path such as '${fallbackMatches[0].relativePath}'.`,
187
+ };
188
+ }
189
+ return {
190
+ ok: false,
191
+ message: `Unknown skill selector '${requestedSkill}'.`,
192
+ };
193
+ }
194
+ function normalizeSearch(value) {
195
+ return (value ?? "")
196
+ .toLowerCase()
197
+ .replace(/[_\s-]+/g, " ")
198
+ .trim();
199
+ }
200
+ function truncateSummary(values) {
201
+ if (values.length <= 4) {
202
+ return values.join(", ");
203
+ }
204
+ return `${values.slice(0, 4).join(", ")}, +${values.length - 4} more`;
205
+ }
206
+ //# sourceMappingURL=add-flow-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add-flow-model.js","sourceRoot":"","sources":["../../src/tui/add-flow-model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import type { SkillFlowApp } from "../services/skill-flow.js";
2
+ import { type AddFlowRequest } from "./add-flow-model.js";
3
+ export type AddFlowExitResult = {
4
+ status: "applied";
5
+ message: string;
6
+ warnings: string[];
7
+ } | {
8
+ status: "cancelled";
9
+ message: string;
10
+ } | {
11
+ status: "error";
12
+ message: string;
13
+ warnings?: string[];
14
+ };
15
+ type AddFlowAppProps = {
16
+ app: SkillFlowApp;
17
+ request: AddFlowRequest;
18
+ onExit?: (result: AddFlowExitResult) => void;
19
+ };
20
+ type Phase = "loading" | "skills" | "agents-loading" | "agents" | "applying" | "rolling-back" | "done" | "error";
21
+ export declare const ADD_BADGE_TEXT = " skill flow ";
22
+ export declare function getAddLoadingLabel(phase: Phase): string | undefined;
23
+ export declare function AddFlowApp({ app, request, onExit }: AddFlowAppProps): import("react/jsx-runtime").JSX.Element | null;
24
+ export declare function runAddFlowNonInteractive(app: SkillFlowApp, request: AddFlowRequest): Promise<AddFlowExitResult>;
25
+ export {};