daftari 1.28.0 → 1.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. package/CHANGELOG.md +197 -0
  2. package/README.md +167 -28
  3. package/dist/asof/git-read.d.ts +17 -0
  4. package/dist/asof/git-read.d.ts.map +1 -0
  5. package/dist/asof/git-read.js +163 -0
  6. package/dist/asof/git-read.js.map +1 -0
  7. package/dist/asof/index.d.ts +2 -0
  8. package/dist/asof/index.d.ts.map +1 -0
  9. package/dist/asof/index.js +151 -0
  10. package/dist/asof/index.js.map +1 -0
  11. package/dist/asof/report.d.ts +11 -0
  12. package/dist/asof/report.d.ts.map +1 -0
  13. package/dist/asof/report.js +119 -0
  14. package/dist/asof/report.js.map +1 -0
  15. package/dist/asof/snapshot.d.ts +72 -0
  16. package/dist/asof/snapshot.d.ts.map +1 -0
  17. package/dist/asof/snapshot.js +207 -0
  18. package/dist/asof/snapshot.js.map +1 -0
  19. package/dist/backfill/apply.js +2 -2
  20. package/dist/backfill/apply.js.map +1 -1
  21. package/dist/backfill/plan.js +2 -2
  22. package/dist/backfill/plan.js.map +1 -1
  23. package/dist/cli.d.ts.map +1 -1
  24. package/dist/cli.js +18 -0
  25. package/dist/cli.js.map +1 -1
  26. package/dist/consolidate/call-budget.d.ts +3 -0
  27. package/dist/consolidate/call-budget.d.ts.map +1 -0
  28. package/dist/consolidate/call-budget.js +37 -0
  29. package/dist/consolidate/call-budget.js.map +1 -0
  30. package/dist/consolidate/constants.d.ts +1 -0
  31. package/dist/consolidate/constants.d.ts.map +1 -1
  32. package/dist/consolidate/constants.js +5 -0
  33. package/dist/consolidate/constants.js.map +1 -1
  34. package/dist/consolidate/index.d.ts.map +1 -1
  35. package/dist/consolidate/index.js +96 -27
  36. package/dist/consolidate/index.js.map +1 -1
  37. package/dist/court/docket.d.ts +39 -0
  38. package/dist/court/docket.d.ts.map +1 -0
  39. package/dist/court/docket.js +103 -0
  40. package/dist/court/docket.js.map +1 -0
  41. package/dist/court/index.d.ts +2 -0
  42. package/dist/court/index.d.ts.map +1 -0
  43. package/dist/court/index.js +169 -0
  44. package/dist/court/index.js.map +1 -0
  45. package/dist/court/precedent.d.ts +18 -0
  46. package/dist/court/precedent.d.ts.map +1 -0
  47. package/dist/court/precedent.js +84 -0
  48. package/dist/court/precedent.js.map +1 -0
  49. package/dist/court/report.d.ts +10 -0
  50. package/dist/court/report.d.ts.map +1 -0
  51. package/dist/court/report.js +77 -0
  52. package/dist/court/report.js.map +1 -0
  53. package/dist/curation/staged-actions.d.ts.map +1 -1
  54. package/dist/curation/staged-actions.js +15 -6
  55. package/dist/curation/staged-actions.js.map +1 -1
  56. package/dist/curation/staleness.js +1 -1
  57. package/dist/curation/staleness.js.map +1 -1
  58. package/dist/curation/tension-access.d.ts +7 -0
  59. package/dist/curation/tension-access.d.ts.map +1 -0
  60. package/dist/curation/tension-access.js +44 -0
  61. package/dist/curation/tension-access.js.map +1 -0
  62. package/dist/curation/tension-blast.d.ts +2 -1
  63. package/dist/curation/tension-blast.d.ts.map +1 -1
  64. package/dist/curation/tension-blast.js +2 -2
  65. package/dist/curation/tension-blast.js.map +1 -1
  66. package/dist/curation/tension-clusters.d.ts +1 -1
  67. package/dist/curation/tension-clusters.d.ts.map +1 -1
  68. package/dist/curation/tension-clusters.js +5 -2
  69. package/dist/curation/tension-clusters.js.map +1 -1
  70. package/dist/curation/tension.d.ts +1 -0
  71. package/dist/curation/tension.d.ts.map +1 -1
  72. package/dist/curation/tension.js +18 -10
  73. package/dist/curation/tension.js.map +1 -1
  74. package/dist/curation/vault-docs.js +1 -1
  75. package/dist/curation/vault-docs.js.map +1 -1
  76. package/dist/eval/llm-openrouter.d.ts +9 -0
  77. package/dist/eval/llm-openrouter.d.ts.map +1 -0
  78. package/dist/eval/llm-openrouter.js +171 -0
  79. package/dist/eval/llm-openrouter.js.map +1 -0
  80. package/dist/frontmatter/parser.d.ts +1 -0
  81. package/dist/frontmatter/parser.d.ts.map +1 -1
  82. package/dist/frontmatter/parser.js +12 -0
  83. package/dist/frontmatter/parser.js.map +1 -1
  84. package/dist/frontmatter/schema.d.ts.map +1 -1
  85. package/dist/frontmatter/schema.js +19 -2
  86. package/dist/frontmatter/schema.js.map +1 -1
  87. package/dist/index.js +1 -1
  88. package/dist/search/contested.d.ts +18 -0
  89. package/dist/search/contested.d.ts.map +1 -0
  90. package/dist/search/contested.js +119 -0
  91. package/dist/search/contested.js.map +1 -0
  92. package/dist/search/hybrid.d.ts +5 -0
  93. package/dist/search/hybrid.d.ts.map +1 -1
  94. package/dist/search/hybrid.js +112 -9
  95. package/dist/search/hybrid.js.map +1 -1
  96. package/dist/search/reindex.d.ts.map +1 -1
  97. package/dist/search/reindex.js +16 -13
  98. package/dist/search/reindex.js.map +1 -1
  99. package/dist/search/watcher.js +2 -2
  100. package/dist/search/watcher.js.map +1 -1
  101. package/dist/server.d.ts.map +1 -1
  102. package/dist/server.js +4 -0
  103. package/dist/server.js.map +1 -1
  104. package/dist/sleep/cycle.d.ts +59 -0
  105. package/dist/sleep/cycle.d.ts.map +1 -0
  106. package/dist/sleep/cycle.js +127 -0
  107. package/dist/sleep/cycle.js.map +1 -0
  108. package/dist/sleep/index.d.ts +3 -0
  109. package/dist/sleep/index.d.ts.map +1 -0
  110. package/dist/sleep/index.js +129 -0
  111. package/dist/sleep/index.js.map +1 -0
  112. package/dist/sleep/report.d.ts +11 -0
  113. package/dist/sleep/report.d.ts.map +1 -0
  114. package/dist/sleep/report.js +87 -0
  115. package/dist/sleep/report.js.map +1 -0
  116. package/dist/storage/index-db.d.ts +2 -0
  117. package/dist/storage/index-db.d.ts.map +1 -1
  118. package/dist/storage/index-db.js +106 -19
  119. package/dist/storage/index-db.js.map +1 -1
  120. package/dist/storage/local.d.ts +6 -1
  121. package/dist/storage/local.d.ts.map +1 -1
  122. package/dist/storage/local.js +30 -4
  123. package/dist/storage/local.js.map +1 -1
  124. package/dist/tools/curation.d.ts.map +1 -1
  125. package/dist/tools/curation.js +60 -3
  126. package/dist/tools/curation.js.map +1 -1
  127. package/dist/tools/edges.js +2 -2
  128. package/dist/tools/edges.js.map +1 -1
  129. package/dist/tools/read.js +2 -2
  130. package/dist/tools/read.js.map +1 -1
  131. package/dist/tools/receipt.d.ts +65 -0
  132. package/dist/tools/receipt.d.ts.map +1 -0
  133. package/dist/tools/receipt.js +248 -0
  134. package/dist/tools/receipt.js.map +1 -0
  135. package/dist/tools/search.d.ts.map +1 -1
  136. package/dist/tools/search.js +40 -8
  137. package/dist/tools/search.js.map +1 -1
  138. package/dist/tools/staged-actions.js +1 -1
  139. package/dist/tools/staged-actions.js.map +1 -1
  140. package/dist/tools/themes.d.ts +1 -0
  141. package/dist/tools/themes.d.ts.map +1 -1
  142. package/dist/tools/themes.js +159 -45
  143. package/dist/tools/themes.js.map +1 -1
  144. package/dist/tools/witness.d.ts +9 -0
  145. package/dist/tools/witness.d.ts.map +1 -0
  146. package/dist/tools/witness.js +66 -0
  147. package/dist/tools/witness.js.map +1 -0
  148. package/dist/tools/write.d.ts.map +1 -1
  149. package/dist/tools/write.js +101 -53
  150. package/dist/tools/write.js.map +1 -1
  151. package/dist/utils/config.d.ts +2 -0
  152. package/dist/utils/config.d.ts.map +1 -1
  153. package/dist/utils/config.js +48 -2
  154. package/dist/utils/config.js.map +1 -1
  155. package/dist/utils/paths.d.ts +2 -0
  156. package/dist/utils/paths.d.ts.map +1 -0
  157. package/dist/utils/paths.js +15 -0
  158. package/dist/utils/paths.js.map +1 -0
  159. package/dist/utils/redos.d.ts +2 -0
  160. package/dist/utils/redos.d.ts.map +1 -0
  161. package/dist/utils/redos.js +101 -0
  162. package/dist/utils/redos.js.map +1 -0
  163. package/dist/utils/vault-gitignore.d.ts +1 -1
  164. package/dist/utils/vault-gitignore.d.ts.map +1 -1
  165. package/dist/utils/vault-gitignore.js +2 -0
  166. package/dist/utils/vault-gitignore.js.map +1 -1
  167. package/dist/witness/track-record.d.ts +42 -0
  168. package/dist/witness/track-record.d.ts.map +1 -0
  169. package/dist/witness/track-record.js +189 -0
  170. package/dist/witness/track-record.js.map +1 -0
  171. package/package.json +7 -2
@@ -1 +1 @@
1
- {"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../../src/tools/write.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../../src/tools/write.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,KAAK,aAAa,EAAwB,MAAM,mBAAmB,CAAC;AAK7E,OAAO,EAKL,KAAK,WAAW,EAGhB,KAAK,MAAM,EAGX,KAAK,gBAAgB,EACtB,MAAM,yBAAyB,CAAC;AAQjC,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAuEhD,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,UAAU,EAAE,eAAe,EAAE,GAC5B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CASzB;AAMD,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,WAAW,EACf,IAAI,EAAE,MAAM,EACZ,UAAU,GAAE,eAAe,EAAO,EAClC,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAChC,MAAM,CA6CR;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EACF,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,WAAW,GACX,WAAW,GACX,OAAO,GACP,gBAAgB,CAAC;IAGrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,YAAY,EAAE,OAAO,CAAC;IAItB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAqMD,wBAAsB,UAAU,CAC9B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CA0LrC;AAQD,wBAAsB,WAAW,CAC/B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAkGrC;AASD,wBAAsB,YAAY,CAChC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAiFrC;AASD,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CA6ErC;AAUD,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CA+FrC;AAUD,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAwFrC;AA2BD,wBAAsB,UAAU,CAC9B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CA8RrC;AAqHD,eAAO,MAAM,UAAU,EAAE,cAAc,EA6NtC,CAAC"}
@@ -8,7 +8,7 @@
8
8
  // Git is the version-control layer: the auto-commit *is* the document history.
9
9
  // The provenance log is a separate advisory audit trail.
10
10
  import { mkdir, writeFile } from "node:fs/promises";
11
- import { dirname } from "node:path";
11
+ import { dirname, relative, resolve, sep } from "node:path";
12
12
  import matter from "gray-matter";
13
13
  import { acquireLock, openLockDb, releaseLock } from "../access/locks.js";
14
14
  import { canPromote, canWrite } from "../access/rbac.js";
@@ -52,6 +52,23 @@ function requireIndexReady() {
52
52
  function collectionOf(relPath, fm) {
53
53
  return fm.collection || (relPath.split("/")[0] ?? "");
54
54
  }
55
+ // The collection the write gate for a *new* write must key off: the top-level
56
+ // directory the bytes physically land in, i.e. the resolved target path's first
57
+ // path segment — NEVER the caller-declared frontmatter.collection. Honoring the
58
+ // declared string let a role with write on collection A drop a file into
59
+ // collection B by lying in the frontmatter (S1, 2026-07-01 review): the gate
60
+ // checked A while `resolveVaultPath` wrote into B.
61
+ //
62
+ // `relPath` is lexically canonicalized against the vault root so an aliased path
63
+ // (`competitive-intel/../pricing/x.md`) resolves to its true top-level dir
64
+ // before the gate. This is pure path math — no disk I/O — so the check still
65
+ // runs before we touch the target, preserving "deny before revealing anything".
66
+ // A path that escapes the root yields a `..`-leading segment, which no role can
67
+ // write; `resolveVaultPath` rejects it properly downstream.
68
+ function targetCollection(vaultRoot, relPath) {
69
+ const rel = relative(resolve(vaultRoot), resolve(vaultRoot, relPath));
70
+ return rel.split(sep)[0] ?? "";
71
+ }
55
72
  // Resolves an extension field's serializable value from the raw frontmatter:
56
73
  // the value as written, with a js-yaml Date normalized to a YYYY-MM-DD string.
57
74
  // A missing field — `undefined` or `null`, the latter matching how the
@@ -312,11 +329,15 @@ export async function vaultWrite(vaultRoot, args, access) {
312
329
  const rawFrontmatter = args.frontmatter;
313
330
  // RBAC is checked before any file I/O or frontmatter validation: an
314
331
  // unauthorized caller is denied without learning anything about the target.
332
+ // The gate keys off the directory the bytes physically land in (the resolved
333
+ // target path's top-level dir), NOT the caller-declared frontmatter.collection
334
+ // — otherwise a role with write on collection A could write into collection B
335
+ // by declaring `collection: A` while pointing `path` at B (S1). The declared
336
+ // collection is allowed to differ from the physical dir (e.g. a draft staged
337
+ // in _drafts/ that declares its destination collection); it just never widens
338
+ // access.
315
339
  if (access) {
316
- const declared = rawFrontmatter.collection;
317
- const collection = typeof declared === "string" && declared.length > 0
318
- ? declared
319
- : (path.value.split("/")[0] ?? "");
340
+ const collection = targetCollection(vaultRoot, path.value);
320
341
  if (!canWrite(access.role, collection)) {
321
342
  return err(new Error(`access denied: role '${access.roleName}' cannot write to ` +
322
343
  `collection '${collection}'`));
@@ -325,7 +346,7 @@ export async function vaultWrite(vaultRoot, args, access) {
325
346
  const resolved = resolveVaultPath(vaultRoot, path.value);
326
347
  if (!resolved.ok)
327
348
  return resolved;
328
- const existing = await readFile(resolved.value);
349
+ const existing = await readFile(resolved.value.absPath);
329
350
  let oldFrontmatter = null;
330
351
  let oldRaw = null;
331
352
  if (existing.ok) {
@@ -435,8 +456,11 @@ export async function vaultWrite(vaultRoot, args, access) {
435
456
  };
436
457
  return performWrite({
437
458
  vaultRoot,
438
- relPath: path.value,
439
- absPath: resolved.value,
459
+ // Lock key, provenance, and commit path are all keyed on the CANONICAL
460
+ // relPath (resolved.value.relPath), never the raw caller string: aliased
461
+ // spellings of one file must contend on one lock (#127/#128).
462
+ relPath: resolved.value.relPath,
463
+ absPath: resolved.value.absPath,
440
464
  agent: agent.value,
441
465
  tool: "vault_write",
442
466
  action: isUpdate ? "update" : "create",
@@ -476,7 +500,7 @@ export async function vaultAppend(vaultRoot, args, access) {
476
500
  const resolved = resolveVaultPath(vaultRoot, path.value);
477
501
  if (!resolved.ok)
478
502
  return resolved;
479
- const existing = await readFile(resolved.value);
503
+ const existing = await readFile(resolved.value.absPath);
480
504
  if (!existing.ok) {
481
505
  return err(new Error(`vault_append: document not found: ${path.value}`));
482
506
  }
@@ -524,8 +548,11 @@ export async function vaultAppend(vaultRoot, args, access) {
524
548
  }
525
549
  return performWrite({
526
550
  vaultRoot,
527
- relPath: path.value,
528
- absPath: resolved.value,
551
+ // Lock key, provenance, and commit path are all keyed on the CANONICAL
552
+ // relPath (resolved.value.relPath), never the raw caller string: aliased
553
+ // spellings of one file must contend on one lock (#127/#128).
554
+ relPath: resolved.value.relPath,
555
+ absPath: resolved.value.absPath,
529
556
  agent: agent.value,
530
557
  tool: "vault_append",
531
558
  action: "append",
@@ -566,7 +593,7 @@ export async function vaultPromote(vaultRoot, args, access) {
566
593
  const resolved = resolveVaultPath(vaultRoot, path.value);
567
594
  if (!resolved.ok)
568
595
  return resolved;
569
- const existing = await readFile(resolved.value);
596
+ const existing = await readFile(resolved.value.absPath);
570
597
  if (!existing.ok) {
571
598
  return err(new Error(`vault_promote: document not found: ${path.value}`));
572
599
  }
@@ -603,8 +630,11 @@ export async function vaultPromote(vaultRoot, args, access) {
603
630
  };
604
631
  return performWrite({
605
632
  vaultRoot,
606
- relPath: path.value,
607
- absPath: resolved.value,
633
+ // Lock key, provenance, and commit path are all keyed on the CANONICAL
634
+ // relPath (resolved.value.relPath), never the raw caller string: aliased
635
+ // spellings of one file must contend on one lock (#127/#128).
636
+ relPath: resolved.value.relPath,
637
+ absPath: resolved.value.absPath,
608
638
  agent: agent.value,
609
639
  tool: "vault_promote",
610
640
  action: "promote",
@@ -652,7 +682,7 @@ export async function vaultDeprecate(vaultRoot, args, access) {
652
682
  const resolved = resolveVaultPath(vaultRoot, path.value);
653
683
  if (!resolved.ok)
654
684
  return resolved;
655
- const existing = await readFile(resolved.value);
685
+ const existing = await readFile(resolved.value.absPath);
656
686
  if (!existing.ok) {
657
687
  return err(new Error(`vault_deprecate: document not found: ${path.value}`));
658
688
  }
@@ -680,8 +710,11 @@ export async function vaultDeprecate(vaultRoot, args, access) {
680
710
  };
681
711
  return performWrite({
682
712
  vaultRoot,
683
- relPath: path.value,
684
- absPath: resolved.value,
713
+ // Lock key, provenance, and commit path are all keyed on the CANONICAL
714
+ // relPath (resolved.value.relPath), never the raw caller string: aliased
715
+ // spellings of one file must contend on one lock (#127/#128).
716
+ relPath: resolved.value.relPath,
717
+ absPath: resolved.value.absPath,
685
718
  agent: agent.value,
686
719
  tool: "vault_deprecate",
687
720
  action: "deprecate",
@@ -730,7 +763,7 @@ export async function vaultSetConfidence(vaultRoot, args, access) {
730
763
  const resolved = resolveVaultPath(vaultRoot, path.value);
731
764
  if (!resolved.ok)
732
765
  return resolved;
733
- const existing = await readFile(resolved.value);
766
+ const existing = await readFile(resolved.value.absPath);
734
767
  if (!existing.ok) {
735
768
  return err(new Error(`vault_set_confidence: document not found: ${path.value}`));
736
769
  }
@@ -772,8 +805,11 @@ export async function vaultSetConfidence(vaultRoot, args, access) {
772
805
  };
773
806
  return performWrite({
774
807
  vaultRoot,
775
- relPath: path.value,
776
- absPath: resolved.value,
808
+ // Lock key, provenance, and commit path are all keyed on the CANONICAL
809
+ // relPath (resolved.value.relPath), never the raw caller string: aliased
810
+ // spellings of one file must contend on one lock (#127/#128).
811
+ relPath: resolved.value.relPath,
812
+ absPath: resolved.value.absPath,
777
813
  agent: agent.value,
778
814
  tool: "vault_set_confidence",
779
815
  action: "confidence-set",
@@ -831,12 +867,12 @@ export async function vaultSupersede(vaultRoot, args, access) {
831
867
  const resolvedNew = resolveVaultPath(vaultRoot, newPath.value);
832
868
  if (!resolvedNew.ok)
833
869
  return resolvedNew;
834
- const existing = await readFile(resolvedOld.value);
870
+ const existing = await readFile(resolvedOld.value.absPath);
835
871
  if (!existing.ok) {
836
872
  return err(new Error(`vault_supersede: document not found: ${oldPath.value}`));
837
873
  }
838
874
  // The successor must be a real document — superseded_by must never dangle.
839
- const successor = await readFile(resolvedNew.value);
875
+ const successor = await readFile(resolvedNew.value.absPath);
840
876
  if (!successor.ok) {
841
877
  return err(new Error(`vault_supersede: successor not found: ${newPath.value}`));
842
878
  }
@@ -864,8 +900,9 @@ export async function vaultSupersede(vaultRoot, args, access) {
864
900
  };
865
901
  return performWrite({
866
902
  vaultRoot,
867
- relPath: oldPath.value,
868
- absPath: resolvedOld.value,
903
+ // Canonical relPath keys the lock/provenance/commit (#127/#128).
904
+ relPath: resolvedOld.value.relPath,
905
+ absPath: resolvedOld.value.absPath,
869
906
  agent: agent.value,
870
907
  tool: "vault_supersede",
871
908
  action: "supersede",
@@ -921,11 +958,11 @@ export async function vaultMerge(vaultRoot, args, access) {
921
958
  ? args.frontmatter
922
959
  : {};
923
960
  // Resolve all three paths up front and run every identity check against the
924
- // resolved absolute paths, never the raw caller strings: `pricing/a.md` and
925
- // `./pricing/a.md` name the same file but differ as strings, which would
926
- // otherwise defeat the path_a≠path_b guard and the source-is-target skip
927
- // below (writing one file twice in a single commit and superseding it against
928
- // itself).
961
+ // CANONICAL relPath, never the raw caller strings: `pricing/a.md`,
962
+ // `./pricing/a.md`, and a symlink alias all name the same file but differ as
963
+ // strings (and as absPaths, for a symlink), which would otherwise defeat the
964
+ // path_a≠path_b guard and the source-is-target skip below (writing one file
965
+ // twice in a single commit and superseding it against itself).
929
966
  const resolvedA = resolveVaultPath(vaultRoot, pathA.value);
930
967
  if (!resolvedA.ok)
931
968
  return resolvedA;
@@ -935,13 +972,13 @@ export async function vaultMerge(vaultRoot, args, access) {
935
972
  const resolvedTarget = resolveVaultPath(vaultRoot, targetPath.value);
936
973
  if (!resolvedTarget.ok)
937
974
  return resolvedTarget;
938
- if (resolvedA.value === resolvedB.value) {
975
+ if (resolvedA.value.relPath === resolvedB.value.relPath) {
939
976
  return err(new Error("vault_merge: path_a and path_b must differ"));
940
977
  }
941
- const existingA = await readFile(resolvedA.value);
978
+ const existingA = await readFile(resolvedA.value.absPath);
942
979
  if (!existingA.ok)
943
980
  return err(new Error(`vault_merge: document not found: ${pathA.value}`));
944
- const existingB = await readFile(resolvedB.value);
981
+ const existingB = await readFile(resolvedB.value.absPath);
945
982
  if (!existingB.ok)
946
983
  return err(new Error(`vault_merge: document not found: ${pathB.value}`));
947
984
  const parsedA = parseDocument(existingA.value);
@@ -957,20 +994,17 @@ export async function vaultMerge(vaultRoot, args, access) {
957
994
  // RBAC: a merge writes/mutates all three docs, so the caller needs write on
958
995
  // each one's collection.
959
996
  if (access) {
960
- // The target's collection is the override, else path_a's *raw* collection
961
- // (the value actually serialized into the target belownot the validated
962
- // frontmatter, which may differ if path_a's raw collection is malformed),
963
- // else the target path's top-level dir. Deriving it from the same source
964
- // the write uses keeps the gate and the write in agreement.
965
- const rawACollection = parsedA.value.raw.collection;
997
+ // path_a and path_b are gated on their existing on-disk collections. The
998
+ // target is gated on the directory the merged bytes physically land in — the
999
+ // resolved target path's top-level dir NOT the caller-declared collection
1000
+ // (override or path_a's raw value). Keying the target gate off a declared
1001
+ // string let a role with write on collection A write the merge result into
1002
+ // collection B by pointing target_path at B while declaring `collection: A`
1003
+ // (S1, same shape as vault_write).
966
1004
  const collections = [
967
1005
  collectionOf(pathA.value, parsedA.value.frontmatter),
968
1006
  collectionOf(pathB.value, parsedB.value.frontmatter),
969
- typeof frontmatterOverrides.collection === "string" && frontmatterOverrides.collection
970
- ? frontmatterOverrides.collection
971
- : typeof rawACollection === "string" && rawACollection
972
- ? rawACollection
973
- : (targetPath.value.split("/")[0] ?? ""),
1007
+ targetCollection(vaultRoot, targetPath.value),
974
1008
  ];
975
1009
  for (const collection of collections) {
976
1010
  if (!canWrite(access.role, collection)) {
@@ -983,7 +1017,7 @@ export async function vaultMerge(vaultRoot, args, access) {
983
1017
  // overrides, stamp provenance/updated/updated_by. If the target file already
984
1018
  // exists, preserve its `created` (the vault_write update idiom); otherwise
985
1019
  // inherit path_a's. The supplied body replaces whatever was there.
986
- const existingTarget = await readFile(resolvedTarget.value);
1020
+ const existingTarget = await readFile(resolvedTarget.value.absPath);
987
1021
  let targetOldFrontmatter = null;
988
1022
  let targetCreated = parsedA.value.frontmatter.created;
989
1023
  if (existingTarget.ok) {
@@ -1016,21 +1050,35 @@ export async function vaultMerge(vaultRoot, args, access) {
1016
1050
  // the target is superseded to point at the target.
1017
1051
  const writes = [];
1018
1052
  writes.push({
1019
- relPath: targetPath.value,
1020
- absPath: resolvedTarget.value,
1053
+ // Canonical relPath keys the per-file lock, provenance, and commit path so
1054
+ // aliased spellings collapse to one lock (#127/#128).
1055
+ relPath: resolvedTarget.value.relPath,
1056
+ absPath: resolvedTarget.value.absPath,
1021
1057
  fileText: serializeDocument(stampedTarget, body, extensions, applyExtensionDefaults(targetRaw, extensions)),
1022
1058
  newFrontmatter: stampedTarget,
1023
1059
  oldFrontmatter: targetOldFrontmatter,
1024
1060
  action: "merge",
1025
1061
  });
1026
1062
  for (const source of [
1027
- { path: pathA.value, abs: resolvedA.value, parsed: parsedA.value },
1028
- { path: pathB.value, abs: resolvedB.value, parsed: parsedB.value },
1063
+ {
1064
+ path: pathA.value,
1065
+ abs: resolvedA.value.absPath,
1066
+ rel: resolvedA.value.relPath,
1067
+ parsed: parsedA.value,
1068
+ },
1069
+ {
1070
+ path: pathB.value,
1071
+ abs: resolvedB.value.absPath,
1072
+ rel: resolvedB.value.relPath,
1073
+ parsed: parsedB.value,
1074
+ },
1029
1075
  ]) {
1030
- // Compare resolved absolute paths, not raw strings: a source that aliases
1031
- // the target (e.g. target `./pricing/a.md`, source `pricing/a.md`) is the
1032
- // fold-into-A case write it once with the merged body, never supersede it.
1033
- if (source.abs === resolvedTarget.value)
1076
+ // Compare canonical relPaths, not raw strings or absPaths: a source that
1077
+ // aliases the target lexically (`./pricing/a.md`) OR via a symlink — is
1078
+ // the fold-into-A case: write it once with the merged body, never supersede
1079
+ // it. A symlink alias has a distinct absPath, so an absPath compare would
1080
+ // miss it and clobber the merged body with the superseded write (#127/#128).
1081
+ if (source.rel === resolvedTarget.value.relPath)
1034
1082
  continue;
1035
1083
  const supersededFm = {
1036
1084
  ...source.parsed.frontmatter,
@@ -1040,7 +1088,7 @@ export async function vaultMerge(vaultRoot, args, access) {
1040
1088
  updated_by: agent.value,
1041
1089
  };
1042
1090
  writes.push({
1043
- relPath: source.path,
1091
+ relPath: source.rel,
1044
1092
  absPath: source.abs,
1045
1093
  fileText: serializeDocument(supersededFm, source.parsed.content, extensions, source.parsed.raw),
1046
1094
  newFrontmatter: supersededFm,
@@ -1 +1 @@
1
- {"version":3,"file":"write.js","sourceRoot":"","sources":["../../src/tools/write.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"write.js","sourceRoot":"","sources":["../../src/tools/write.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,EAAE;AACF,4EAA4E;AAC5E,gFAAgF;AAChF,8EAA8E;AAC9E,wEAAwE;AACxE,EAAE;AACF,+EAA+E;AAC/E,yDAAyD;AAEzD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAsB,UAAU,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EACL,WAAW,EACX,OAAO,EAEP,GAAG,EAEH,EAAE,EACF,WAAW,EAEX,QAAQ,GAGT,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAEjF,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,UAAU,EAAwB,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAG7C,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E,SAAS,QAAQ;IACf,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,4EAA4E;AAC5E,8EAA8E;AAC9E,2EAA2E;AAC3E,8EAA8E;AAC9E,6EAA6E;AAC7E,SAAS,iBAAiB;IACxB,MAAM,MAAM,GAAG,cAAc,EAAE,CAAC;IAChC,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC9B,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,kCAAkC,MAAM,CAAC,KAAK,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC;IACvF,CAAC;IACD,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;AACvB,CAAC;AAED,8EAA8E;AAC9E,sDAAsD;AACtD,SAAS,YAAY,CAAC,OAAe,EAAE,EAAe;IACpD,OAAO,EAAE,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AACxD,CAAC;AAED,8EAA8E;AAC9E,gFAAgF;AAChF,gFAAgF;AAChF,yEAAyE;AACzE,6EAA6E;AAC7E,mDAAmD;AACnD,EAAE;AACF,iFAAiF;AACjF,2EAA2E;AAC3E,6EAA6E;AAC7E,gFAAgF;AAChF,gFAAgF;AAChF,4DAA4D;AAC5D,SAAS,gBAAgB,CAAC,SAAiB,EAAE,OAAe;IAC1D,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IACtE,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACjC,CAAC;AAED,6EAA6E;AAC7E,+EAA+E;AAC/E,uEAAuE;AACvE,wEAAwE;AACxE,6DAA6D;AAC7D,SAAS,cAAc,CACrB,GAA4B,EAC5B,GAAoB;IAEpB,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzB,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IACpD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;QAC3E,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,CAAmB,CAAC;AAC7B,CAAC;AAED,+EAA+E;AAC/E,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,MAAM,UAAU,sBAAsB,CACpC,GAA4B,EAC5B,UAA6B;IAE7B,MAAM,GAAG,GAA4B,EAAE,GAAG,GAAG,EAAE,CAAC;IAChD,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACjE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,wEAAwE;AACxE,0EAA0E;AAC1E,yEAAyE;AACzE,8EAA8E;AAC9E,MAAM,UAAU,iBAAiB,CAC/B,EAAe,EACf,IAAY,EACZ,aAAgC,EAAE,EAClC,MAA+B,EAAE;IAEjC,MAAM,OAAO,GAA4B;QACvC,KAAK,EAAE,EAAE,CAAC,KAAK;QACf,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,UAAU,EAAE,EAAE,CAAC,UAAU;QACzB,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,UAAU,EAAE,EAAE,CAAC,UAAU;QACzB,OAAO,EAAE,EAAE,CAAC,OAAO;QACnB,OAAO,EAAE,EAAE,CAAC,OAAO;QACnB,UAAU,EAAE,EAAE,CAAC,UAAU;QACzB,UAAU,EAAE,EAAE,CAAC,UAAU;QACzB,OAAO,EAAE,EAAE,CAAC,OAAO;QACnB,aAAa,EAAE,EAAE,CAAC,aAAa;QAC/B,QAAQ,EAAE,EAAE,CAAC,QAAQ;QACrB,IAAI,EAAE,EAAE,CAAC,IAAI;QACb,SAAS,EAAE,EAAE,CAAC,SAAS;QACvB,kBAAkB,EAAE,EAAE,CAAC,kBAAkB;QACzC,gBAAgB,EAAE,EAAE,CAAC,gBAAgB;KACtC,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,GAAG,CAAS,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACtD,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACvB,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACvC,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;IACtD,CAAC;IACD,2EAA2E;IAC3E,6EAA6E;IAC7E,yEAAyE;IACzE,0EAA0E;IAC1E,uEAAuE;IACvE,iEAAiE;IACjE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAC/B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;YAAE,SAAS;QACpD,2EAA2E;QAC3E,4EAA4E;QAC5E,0EAA0E;QAC1E,6EAA6E;QAC7E,qCAAqC;QACrC,OAAO,CAAC,GAAG,CAAC;YACV,KAAK,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBACrD,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;gBAClC,CAAC,CAAC,KAAK,CAAC;IACd,CAAC;IACD,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;AAC/E,CAAC;AA2BD,8EAA8E;AAC9E,6DAA6D;AAC7D,SAAS,SAAS,CAAC,CAAS;IAC1B,OAAO,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED,2EAA2E;AAC3E,6EAA6E;AAC7E,8DAA8D;AAC9D,EAAE;AACF,yEAAyE;AACzE,6EAA6E;AAC7E,8EAA8E;AAC9E,EAAE;AACF,8EAA8E;AAC9E,0EAA0E;AAC1E,gEAAgE;AAChE,EAAE;AACF,8EAA8E;AAC9E,8EAA8E;AAC9E,2EAA2E;AAC3E,+EAA+E;AAC/E,+EAA+E;AAC/E,6CAA6C;AAC7C,KAAK,UAAU,YAAY,CAAC,MAoB3B;IACC,wEAAwE;IACxE,2EAA2E;IAC3E,4EAA4E;IAC5E,wEAAwE;IACxE,2EAA2E;IAC3E,iBAAiB;IACjB,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE;YAC1D,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,UAAU,EAAE,MAAM,CAAC,OAAO;YAC1B,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,eAAe,EAAE,eAAe,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,cAAc,CAAC;YAC9E,aAAa,EAAE,MAAM,CAAC,aAAa;SACpC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,OAAO,QAAQ,CAAC;QAClC,OAAO,EAAE,CAAC;YACR,IAAI,EAAE,MAAM,CAAC,OAAO;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC,MAAM;YACpC,OAAO,EAAE,MAAM,CAAC,cAAc,CAAC,OAAO;YACtC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,YAAY,EAAE,KAAK;YACnB,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;IACL,CAAC;IAED,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAClD,IAAI,CAAC,YAAY,CAAC,EAAE;QAAE,OAAO,YAAY,CAAC;IAC1C,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC;IAElC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/D,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QAE1B,IAAI,CAAC;YACH,mEAAmE;YACnE,yEAAyE;YACzE,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACvB,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC9C,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC/D,IAAI,WAAW,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC;oBACvC,MAAM,gBAAgB,CAAC,MAAM,CAAC,SAAS,EAAE;wBACvC,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,IAAI,EAAE,MAAM,CAAC,OAAO;wBACpB,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC5D,MAAM,EAAE,gBAAgB;wBACxB,MAAM,EACJ,uBAAuB,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM;4BAC1D,WAAW,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE;qBACjE,CAAC,CAAC;oBACH,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,gBAAgB,MAAM,CAAC,OAAO,6BAA6B,CAAC,CAAC,CAAC;gBACrF,CAAC;YACH,CAAC;YAED,MAAM,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1D,MAAM,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAE1D,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YACtE,mEAAmE;YACnE,mEAAmE;YACnE,qEAAqE;YACrE,gEAAgE;YAChE,mEAAmE;YACnE,kEAAkE;YAClE,oCAAoC;YACpC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAE9B,IAAI,UAAU,GAAkB,IAAI,CAAC;YACrC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACtB,MAAM,SAAS,GAAG,MAAM,MAAM,CAC5B,MAAM,CAAC,SAAS,EAChB,CAAC,MAAM,CAAC,OAAO,CAAC,EAChB,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,KAAK,EACZ,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAC1B,CAAC;gBACF,IAAI,CAAC,SAAS,CAAC,EAAE;oBAAE,OAAO,SAAS,CAAC;gBACpC,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;YACpC,CAAC;YAED,MAAM,gBAAgB,CAAC,MAAM,CAAC,SAAS,EAAE;gBACvC,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,IAAI,EAAE,MAAM,CAAC,OAAO;gBACpB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5D,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,gBAAgB,EAAE,eAAe,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,cAAc,CAAC;aAChF,CAAC,CAAC;YAEH,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAM,CAAC,OAAO;gBACpB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,MAAM,EAAE,UAAU;gBAClB,SAAS,EAAE,MAAM,CAAC,UAAU;gBAC5B,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC,MAAM;gBACpC,OAAO,EAAE,MAAM,CAAC,cAAc,CAAC,OAAO;gBACtC,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,YAAY,EAAE,OAAO,CAAC,EAAE;aACzB,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,MAAM,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC1D,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,iBAAiB,MAAM,EAAE,CAAC,CAAC,CAAC;IACnD,CAAC;YAAS,CAAC;QACT,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CACpB,IAA6B,EAC7B,KAAa,EACb,IAAY;IAEZ,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;IACtB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnD,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,IAAI,0BAA0B,KAAK,YAAY,CAAC,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;AACf,CAAC;AAED,gFAAgF;AAChF,4EAA4E;AAC5E,6EAA6E;AAC7E,oCAAoC;AACpC,SAAS,eAAe,CACtB,IAA6B,EAC7B,IAAY;IAEZ,MAAM,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;IAC5B,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;IACxD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC1B,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,IAAI,mCAAmC,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E,4EAA4E;AAC5E,6EAA6E;AAC7E,8EAA8E;AAC9E,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,SAAiB,EACjB,IAA6B,EAC7B,MAAsB;IAEtB,MAAM,KAAK,GAAG,iBAAiB,EAAE,CAAC;IAClC,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;IACxD,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IAC1D,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,WAAW,GAAG,eAAe,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACzD,IAAI,CAAC,WAAW,CAAC,EAAE;QAAE,OAAO,WAAW,CAAC;IACxC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACvB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;QACtE,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC,CAAC;IAChF,CAAC;IACD,MAAM,cAAc,GAAG,IAAI,CAAC,WAAsC,CAAC;IAEnE,oEAAoE;IACpE,4EAA4E;IAC5E,6EAA6E;IAC7E,+EAA+E;IAC/E,8EAA8E;IAC9E,6EAA6E;IAC7E,6EAA6E;IAC7E,8EAA8E;IAC9E,UAAU;IACV,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,UAAU,GAAG,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;YACvC,OAAO,GAAG,CACR,IAAI,KAAK,CACP,wBAAwB,MAAM,CAAC,QAAQ,oBAAoB;gBACzD,eAAe,UAAU,GAAG,CAC/B,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC;IAElC,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACxD,IAAI,cAAc,GAAuB,IAAI,CAAC;IAC9C,IAAI,MAAM,GAAmC,IAAI,CAAC;IAClD,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,yEAAyE;YACzE,wEAAwE;YACxE,yEAAyE;YACzE,wEAAwE;YACxE,WAAW;YACX,OAAO,GAAG,CACR,IAAI,KAAK,CACP,gBAAgB,IAAI,CAAC,KAAK,2CAA2C;gBACnE,WAAW,MAAM,CAAC,KAAK,CAAC,OAAO,+BAA+B;gBAC9D,+BAA+B,CAClC,CACF,CAAC;QACJ,CAAC;QACD,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;QAC1C,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;IAC5B,CAAC;IACD,MAAM,QAAQ,GAAG,cAAc,KAAK,IAAI,CAAC;IACzC,MAAM,aAAa,GAAkB,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEpE,6EAA6E;IAC7E,0EAA0E;IAC1E,2EAA2E;IAC3E,uEAAuE;IACvE,2EAA2E;IAC3E,uEAAuE;IACvE,6EAA6E;IAC7E,6EAA6E;IAC7E,sEAAsE;IACtE,4DAA4D;IAC5D,IAAI,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAChC,MAAM,MAAM,GAA4B,EAAE,GAAG,MAAM,EAAE,CAAC;QACtD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;YAC1D,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;;gBAClC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAC3B,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC;YAAE,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC;QAC1E,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,kEAAkE;IAClE,yEAAyE;IACzE,iCAAiC;IACjC,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;IACrC,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAEjD,sEAAsE;IACtE,qEAAqE;IACrE,2EAA2E;IAC3E,yEAAyE;IACzE,0EAA0E;IAC1E,yEAAyE;IACzE,yEAAyE;IACzE,oBAAoB;IACpB,MAAM,oBAAoB,GAAG,MAAM,0BAA0B,CAC3D,SAAS,EACT,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB,CACrC,CAAC;IACF,IAAI,CAAC,oBAAoB,CAAC,EAAE;QAAE,OAAO,oBAAoB,CAAC;IAC1D,MAAM,eAAe,GAAG,yBAAyB,CAAC,oBAAoB,CAAC,KAAK,EAAE,cAAc,EAAE;QAC5F,IAAI,EAAE,IAAI,CAAC,KAAK;QAChB,SAAS,EAAE,aAAa;KACzB,CAAC,CAAC;IACH,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAEtD,6EAA6E;IAC7E,2EAA2E;IAC3E,6EAA6E;IAC7E,2EAA2E;IAC3E,6EAA6E;IAC7E,2CAA2C;IAC3C,IAAI,cAAc,CAAC,OAAO,KAAK,SAAS,IAAI,cAAc,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC5E,cAAc,CAAC,OAAO,GAAG,QAAQ,EAAE,CAAC;IACtC,CAAC;IACD,IAAI,cAAc,CAAC,UAAU,KAAK,SAAS,IAAI,cAAc,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QAClF,cAAc,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1C,CAAC;IAED,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;IAEhF,kEAAkE;IAClE,wEAAwE;IACxE,uEAAuE;IACvE,qEAAqE;IACrE,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC5E,IAAI,CAAC,WAAW,CAAC,EAAE;QAAE,OAAO,WAAW,CAAC;IACxC,MAAM,UAAU,GAAG,gBAAgB,CAAC,WAAW,CAAC,KAAK,EAAE,cAAc,EAAE;QACrE,IAAI,EAAE,IAAI,CAAC,KAAK;QAChB,SAAS,EAAE,aAAa;KACzB,CAAC,CAAC;IACH,MAAM,YAAY,GAAsB;QACtC,GAAG,eAAe,CAAC,MAAM;QACzB,GAAG,MAAM,CAAC,MAAM;QAChB,GAAG,UAAU;KACd,CAAC;IACF,MAAM,YAAY,GAAqB;QACrC,KAAK,EAAE,YAAY,CAAC,MAAM,KAAK,CAAC;QAChC,MAAM,EAAE,YAAY;KACrB,CAAC;IACF,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtF,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,OAAO,GAAgB;QAC3B,GAAG,WAAW;QACd,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAE,cAA8B,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO;QACjF,OAAO,EAAE,QAAQ,EAAE;QACnB,UAAU,EAAE,KAAK,CAAC,KAAK;KACxB,CAAC;IAEF,OAAO,YAAY,CAAC;QAClB,SAAS;QACT,uEAAuE;QACvE,yEAAyE;QACzE,8DAA8D;QAC9D,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;QAC/B,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;QAC/B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;QACtC,QAAQ,EAAE,iBAAiB,CACzB,OAAO,EACP,IAAI,EACJ,UAAU,EACV,sBAAsB,CAAC,cAAc,EAAE,UAAU,CAAC,CACnD;QACD,cAAc,EAAE,OAAO;QACvB,cAAc;QACd,UAAU,EAAE,YAAY;QACxB,aAAa,EACX,gBAAgB,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,GAAG,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE;QACvF,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;QAC3B,WAAW,EAAE,WAAW,CAAC,KAAK;QAC9B,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,SAAS,EAAE,MAAM,EAAE,IAAI;KACxB,CAAC,CAAC;AACL,CAAC;AAED,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,yEAAyE;AACzE,6EAA6E;AAC7E,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,SAAiB,EACjB,IAA6B,EAC7B,MAAsB;IAEtB,MAAM,KAAK,GAAG,iBAAiB,EAAE,CAAC;IAClC,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;IACzD,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IAC3D,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;IAC/D,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,OAAO,CAAC;IAChC,MAAM,WAAW,GAAG,eAAe,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAC1D,IAAI,CAAC,WAAW,CAAC,EAAE;QAAE,OAAO,WAAW,CAAC;IAExC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC;IAElC,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACxD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,qCAAqC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC3E,CAAC;IACD,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAE9B,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;IACrC,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAEjD,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;IAChD,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;YACvC,OAAO,GAAG,CACR,IAAI,KAAK,CACP,wBAAwB,MAAM,CAAC,QAAQ,oBAAoB;gBACzD,eAAe,UAAU,GAAG,CAC/B,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,cAAc,GAAgB;QAClC,GAAG,cAAc;QACjB,OAAO,EAAE,QAAQ,EAAE;QACnB,UAAU,EAAE,KAAK,CAAC,KAAK;KACxB,CAAC;IACF,MAAM,OAAO,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;IAE3F,uEAAuE;IACvE,oEAAoE;IACpE,qEAAqE;IACrE,oEAAoE;IACpE,MAAM,oBAAoB,GAAG,MAAM,0BAA0B,CAC3D,SAAS,EACT,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB,CACrC,CAAC;IACF,IAAI,CAAC,oBAAoB,CAAC,EAAE;QAAE,OAAO,oBAAoB,CAAC;IAC1D,MAAM,eAAe,GAAG,yBAAyB,CAC/C,oBAAoB,CAAC,KAAK,EAC1B,cAAoD,EACpD,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,CAC1C,CAAC;IACF,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAEtD,2EAA2E;IAC3E,wEAAwE;IACxE,2BAA2B;IAC3B,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC5E,IAAI,CAAC,WAAW,CAAC,EAAE;QAAE,OAAO,WAAW,CAAC;IACxC,MAAM,UAAU,GAAG,gBAAgB,CACjC,WAAW,CAAC,KAAK,EACjB,cAAoD,EACpD,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,CAC1C,CAAC;IACF,MAAM,YAAY,GAAG,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC;IAChE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/E,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,OAAO,YAAY,CAAC;QAClB,SAAS;QACT,uEAAuE;QACvE,yEAAyE;QACzE,8DAA8D;QAC9D,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;QAC/B,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;QAC/B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,iBAAiB,CAAC,cAAc,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;QAClF,cAAc;QACd,cAAc;QACd,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,aAAa,EAAE,iBAAiB,IAAI,CAAC,KAAK,OAAO,KAAK,CAAC,KAAK,EAAE;QAC9D,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;QAC3B,WAAW,EAAE,WAAW,CAAC,KAAK;QAC9B,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,SAAS,EAAE,MAAM,EAAE,IAAI;KACxB,CAAC,CAAC;AACL,CAAC;AAED,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,8EAA8E;AAC9E,oEAAoE;AACpE,0EAA0E;AAC1E,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,SAAiB,EACjB,IAA6B,EAC7B,MAAsB;IAEtB,MAAM,KAAK,GAAG,iBAAiB,EAAE,CAAC;IAClC,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;IAC1D,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;IAC5D,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,WAAW,GAAG,eAAe,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IAC3D,IAAI,CAAC,WAAW,CAAC,EAAE;QAAE,OAAO,WAAW,CAAC;IAExC,IAAI,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,wBAAwB,MAAM,CAAC,QAAQ,4BAA4B,CAAC,CAAC,CAAC;IAC7F,CAAC;IAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC;IAElC,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACxD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,sCAAsC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC5E,CAAC;IACD,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAE9B,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;IACrC,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAEjD,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;IAChD,IAAI,cAAc,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QACtC,OAAO,GAAG,CACR,IAAI,KAAK,CACP,sDAAsD;YACpD,IAAI,IAAI,CAAC,KAAK,QAAQ,cAAc,CAAC,MAAM,IAAI,CAClD,CACF,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM;aAC3C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;aACtC,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,6CAA6C,OAAO,EAAE,CAAC,CAAC,CAAC;IAChF,CAAC;IACD,4EAA4E;IAC5E,mCAAmC;IACnC,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC;IAClD,IACE,OAAO,aAAa,KAAK,QAAQ;QACjC,CAAE,WAAiC,CAAC,QAAQ,CAAC,aAAa,CAAC,EAC3D,CAAC;QACD,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC,CAAC;IAClF,CAAC;IAED,MAAM,cAAc,GAAgB;QAClC,GAAG,cAAc;QACjB,MAAM,EAAE,WAAW;QACnB,OAAO,EAAE,QAAQ,EAAE;QACnB,UAAU,EAAE,KAAK,CAAC,KAAK;KACxB,CAAC;IAEF,OAAO,YAAY,CAAC;QAClB,SAAS;QACT,uEAAuE;QACvE,yEAAyE;QACzE,8DAA8D;QAC9D,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;QAC/B,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;QAC/B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,iBAAiB,CAAC,cAAc,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;QAC/F,cAAc;QACd,cAAc;QACd,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,aAAa,EAAE,kBAAkB,IAAI,CAAC,KAAK,uBAAuB,KAAK,CAAC,KAAK,EAAE;QAC/E,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;QAC3B,WAAW,EAAE,WAAW,CAAC,KAAK;QAC9B,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,SAAS,EAAE,MAAM,EAAE,IAAI;KACxB,CAAC,CAAC;AACL,CAAC;AAED,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,4EAA4E;AAC5E,0EAA0E;AAC1E,qBAAqB;AACrB,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,SAAiB,EACjB,IAA6B,EAC7B,MAAsB;IAEtB,MAAM,KAAK,GAAG,iBAAiB,EAAE,CAAC;IAClC,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAC5D,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAC;IAC9D,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC;IAChE,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAC9B,MAAM,WAAW,GAAG,eAAe,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;IAC7D,IAAI,CAAC,WAAW,CAAC,EAAE;QAAE,OAAO,WAAW,CAAC;IAExC,IAAI,YAAY,GAAkB,IAAI,CAAC;IACvC,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;QACpE,IAAI,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;YAC3C,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC,CAAC;QACrF,CAAC;QACD,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC;IACpC,CAAC;IAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC;IAElC,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACxD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,wCAAwC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;IACD,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAE9B,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;IACrC,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAEjD,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;IAChD,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;YACvC,OAAO,GAAG,CACR,IAAI,KAAK,CACP,wBAAwB,MAAM,CAAC,QAAQ,oBAAoB;gBACzD,eAAe,UAAU,GAAG,CAC/B,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,cAAc,GAAgB;QAClC,GAAG,cAAc;QACjB,MAAM,EAAE,YAAY;QACpB,aAAa,EAAE,YAAY;QAC3B,OAAO,EAAE,QAAQ,EAAE;QACnB,UAAU,EAAE,KAAK,CAAC,KAAK;KACxB,CAAC;IAEF,OAAO,YAAY,CAAC;QAClB,SAAS;QACT,uEAAuE;QACvE,yEAAyE;QACzE,8DAA8D;QAC9D,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;QAC/B,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;QAC/B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,WAAW;QACnB,QAAQ,EAAE,iBAAiB,CAAC,cAAc,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;QAC/F,cAAc;QACd,cAAc;QACd,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,aAAa,EACX,oBAAoB,IAAI,CAAC,KAAK,OAAO,KAAK,CAAC,KAAK,MAAM,MAAM,CAAC,KAAK,EAAE;YACpE,CAAC,YAAY,CAAC,CAAC,CAAC,mBAAmB,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;QAC3B,WAAW,EAAE,WAAW,CAAC,KAAK;QAC9B,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,SAAS,EAAE,MAAM,EAAE,IAAI;KACxB,CAAC,CAAC;AACL,CAAC;AAED,8EAA8E;AAC9E,+BAA+B;AAC/B,8EAA8E;AAE9E,6EAA6E;AAC7E,8EAA8E;AAC9E,8EAA8E;AAC9E,4CAA4C;AAC5C,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,SAAiB,EACjB,IAA6B,EAC7B,MAAsB;IAEtB,MAAM,KAAK,GAAG,iBAAiB,EAAE,CAAC;IAClC,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,sBAAsB,CAAC,CAAC;IACjE,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAAC;IACnE,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,sBAAsB,CAAC,CAAC;IACrE,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAC9B,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IAC7E,IAAI,CAAC,UAAU,CAAC,EAAE;QAAE,OAAO,UAAU,CAAC;IACtC,IAAI,CAAE,WAAiC,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACnE,OAAO,GAAG,CACR,IAAI,KAAK,CAAC,sDAAsD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAC1F,CAAC;IACJ,CAAC;IACD,MAAM,WAAW,GAAG,eAAe,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;IAClE,IAAI,CAAC,WAAW,CAAC,EAAE;QAAE,OAAO,WAAW,CAAC;IAExC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC;IAElC,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACxD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,6CAA6C,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACnF,CAAC;IACD,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAE9B,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;IACrC,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAEjD,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;IAChD,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;YACvC,OAAO,GAAG,CACR,IAAI,KAAK,CACP,wBAAwB,MAAM,CAAC,QAAQ,oBAAoB;gBACzD,eAAe,UAAU,GAAG,CAC/B,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,8EAA8E;IAC9E,0EAA0E;IAC1E,uEAAuE;IACvE,qEAAqE;IACrE,8EAA8E;IAC9E,8EAA8E;IAC9E,kDAAkD;IAClD,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC;IAClD,MAAM,iBAAiB,GACrB,OAAO,aAAa,KAAK,QAAQ,IAAK,WAAiC,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC7F,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,SAAS,CAAC;IAChB,IAAI,iBAAiB,KAAK,UAAU,CAAC,KAAK,EAAE,CAAC;QAC3C,OAAO,GAAG,CACR,IAAI,KAAK,CAAC,yBAAyB,IAAI,CAAC,KAAK,2BAA2B,UAAU,CAAC,KAAK,GAAG,CAAC,CAC7F,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAgB;QAClC,GAAG,cAAc;QACjB,UAAU,EAAE,UAAU,CAAC,KAAkC;QACzD,OAAO,EAAE,QAAQ,EAAE;QACnB,UAAU,EAAE,KAAK,CAAC,KAAK;KACxB,CAAC;IAEF,OAAO,YAAY,CAAC;QAClB,SAAS;QACT,uEAAuE;QACvE,yEAAyE;QACzE,8DAA8D;QAC9D,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;QAC/B,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;QAC/B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,sBAAsB;QAC5B,MAAM,EAAE,gBAAgB;QACxB,QAAQ,EAAE,iBAAiB,CAAC,cAAc,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;QAC/F,cAAc;QACd,cAAc;QACd,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,aAAa,EACX,yBAAyB,IAAI,CAAC,KAAK,IAAI,cAAc,CAAC,UAAU,IAAI,UAAU,CAAC,KAAK,GAAG;YACvF,MAAM,KAAK,CAAC,KAAK,MAAM,MAAM,CAAC,KAAK,EAAE;QACvC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;QAC3B,WAAW,EAAE,WAAW,CAAC,KAAK;QAC9B,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,SAAS,EAAE,MAAM,EAAE,IAAI;KACxB,CAAC,CAAC;AACL,CAAC;AAED,8EAA8E;AAC9E,0BAA0B;AAC1B,8EAA8E;AAE9E,6EAA6E;AAC7E,yEAAyE;AACzE,gFAAgF;AAChF,2EAA2E;AAC3E,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,SAAiB,EACjB,IAA6B,EAC7B,MAAsB;IAEtB,MAAM,KAAK,GAAG,iBAAiB,EAAE,CAAC;IAClC,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAC;IACnE,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,OAAO,CAAC;IAChC,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAC;IACnE,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,OAAO,CAAC;IAChC,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAC;IAC9D,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,WAAW,GAAG,eAAe,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;IAC7D,IAAI,CAAC,WAAW,CAAC,EAAE;QAAE,OAAO,WAAW,CAAC;IAExC,IAAI,MAA0B,CAAC;IAC/B,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QACtD,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACpC,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC,CAAC;QACtE,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACnC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,GAAG,OAAO,CAAC;IAC3C,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC;QACpC,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED,MAAM,WAAW,GAAG,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/D,IAAI,CAAC,WAAW,CAAC,EAAE;QAAE,OAAO,WAAW,CAAC;IACxC,MAAM,WAAW,GAAG,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/D,IAAI,CAAC,WAAW,CAAC,EAAE;QAAE,OAAO,WAAW,CAAC;IAExC,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,wCAAwC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACjF,CAAC;IACD,2EAA2E;IAC3E,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC5D,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;QAClB,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,yCAAyC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAE9B,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;IACrC,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAEjD,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;IAChD,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAC/D,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;YACvC,OAAO,GAAG,CACR,IAAI,KAAK,CACP,wBAAwB,MAAM,CAAC,QAAQ,oBAAoB;gBACzD,eAAe,UAAU,GAAG,CAC/B,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,cAAc,GAAgB;QAClC,GAAG,cAAc;QACjB,MAAM,EAAE,YAAY;QACpB,aAAa,EAAE,OAAO,CAAC,KAAK;QAC5B,OAAO,EAAE,QAAQ,EAAE;QACnB,UAAU,EAAE,KAAK,CAAC,KAAK;KACxB,CAAC;IAEF,OAAO,YAAY,CAAC;QAClB,SAAS;QACT,iEAAiE;QACjE,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,OAAO;QAClC,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,OAAO;QAClC,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,WAAW;QACnB,QAAQ,EAAE,iBAAiB,CAAC,cAAc,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;QAC/F,cAAc;QACd,cAAc;QACd,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,aAAa,EACX,oBAAoB,OAAO,CAAC,KAAK,kBAAkB,OAAO,CAAC,KAAK,GAAG;YACnE,MAAM,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;QACpD,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;QAC3B,WAAW,EAAE,WAAW,CAAC,KAAK;QAC9B,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;QACnC,SAAS,EAAE,MAAM,EAAE,IAAI;KACxB,CAAC,CAAC;AACL,CAAC;AAiBD,6EAA6E;AAC7E,8EAA8E;AAC9E,gFAAgF;AAChF,kEAAkE;AAClE,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,+EAA+E;AAC/E,+EAA+E;AAC/E,4EAA4E;AAC5E,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,SAAiB,EACjB,IAA6B,EAC7B,MAAsB;IAEtB,MAAM,KAAK,GAAG,iBAAiB,EAAE,CAAC;IAClC,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC3D,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC3D,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;IACrE,IAAI,CAAC,UAAU,CAAC,EAAE;QAAE,OAAO,UAAU,CAAC;IACtC,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IAC1D,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACvB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzD,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;QAChE,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;YACzC,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IACD,MAAM,oBAAoB,GACxB,IAAI,CAAC,WAAW,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ;QACtD,CAAC,CAAE,IAAI,CAAC,WAAuC;QAC/C,CAAC,CAAC,EAAE,CAAC;IAET,4EAA4E;IAC5E,mEAAmE;IACnE,6EAA6E;IAC7E,6EAA6E;IAC7E,4EAA4E;IAC5E,+DAA+D;IAC/D,MAAM,SAAS,GAAG,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3D,IAAI,CAAC,SAAS,CAAC,EAAE;QAAE,OAAO,SAAS,CAAC;IACpC,MAAM,SAAS,GAAG,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3D,IAAI,CAAC,SAAS,CAAC,EAAE;QAAE,OAAO,SAAS,CAAC;IACpC,MAAM,cAAc,GAAG,gBAAgB,CAAC,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;IACrE,IAAI,CAAC,cAAc,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC;IAE9C,IAAI,SAAS,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACxD,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC1D,IAAI,CAAC,SAAS,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,oCAAoC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC5F,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC1D,IAAI,CAAC,SAAS,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,oCAAoC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC5F,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,OAAO,CAAC;IAChC,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,OAAO,CAAC;IAEhC,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;IACrC,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAEjD,4EAA4E;IAC5E,yBAAyB;IACzB,IAAI,MAAM,EAAE,CAAC;QACX,yEAAyE;QACzE,6EAA6E;QAC7E,4EAA4E;QAC5E,0EAA0E;QAC1E,2EAA2E;QAC3E,4EAA4E;QAC5E,mCAAmC;QACnC,MAAM,WAAW,GAAG;YAClB,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC;YACpD,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC;YACpD,gBAAgB,CAAC,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC;SAC9C,CAAC;QACF,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;gBACvC,OAAO,GAAG,CACR,IAAI,KAAK,CACP,wBAAwB,MAAM,CAAC,QAAQ,oBAAoB;oBACzD,eAAe,UAAU,GAAG,CAC/B,CACF,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,6EAA6E;IAC7E,2EAA2E;IAC3E,mEAAmE;IACnE,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACpE,IAAI,oBAAoB,GAAuB,IAAI,CAAC;IACpD,IAAI,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC;IACtD,IAAI,cAAc,CAAC,EAAE,EAAE,CAAC;QACtB,MAAM,YAAY,GAAG,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACzD,IAAI,YAAY,CAAC,EAAE,EAAE,CAAC;YACpB,oBAAoB,GAAG,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC;YACtD,aAAa,GAAG,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC;QACzD,CAAC;IACH,CAAC;IACD,MAAM,SAAS,GAA4B;QACzC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG;QACpB,UAAU,EAAE,aAAa;QACzB,GAAG,oBAAoB;QACvB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,QAAQ,EAAE;QACnB,UAAU,EAAE,KAAK,CAAC,KAAK;KACxB,CAAC;IACF,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,mBAAmB,CACzE,SAAS,EACT,UAAU,CACX,CAAC;IACF,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtF,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,+CAA+C,OAAO,EAAE,CAAC,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,aAAa,GAAgB;QACjC,GAAG,QAAQ;QACX,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,QAAQ,EAAE;QACnB,UAAU,EAAE,KAAK,CAAC,KAAK;KACxB,CAAC;IAEF,6EAA6E;IAC7E,mDAAmD;IACnD,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,MAAM,CAAC,IAAI,CAAC;QACV,2EAA2E;QAC3E,sDAAsD;QACtD,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,OAAO;QACrC,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,OAAO;QACrC,QAAQ,EAAE,iBAAiB,CACzB,aAAa,EACb,IAAI,EACJ,UAAU,EACV,sBAAsB,CAAC,SAAS,EAAE,UAAU,CAAC,CAC9C;QACD,cAAc,EAAE,aAAa;QAC7B,cAAc,EAAE,oBAAoB;QACpC,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IACH,KAAK,MAAM,MAAM,IAAI;QACnB;YACE,IAAI,EAAE,KAAK,CAAC,KAAK;YACjB,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,OAAO;YAC5B,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,OAAO;YAC5B,MAAM,EAAE,OAAO,CAAC,KAAK;SACtB;QACD;YACE,IAAI,EAAE,KAAK,CAAC,KAAK;YACjB,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,OAAO;YAC5B,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,OAAO;YAC5B,MAAM,EAAE,OAAO,CAAC,KAAK;SACtB;KACF,EAAE,CAAC;QACF,yEAAyE;QACzE,0EAA0E;QAC1E,4EAA4E;QAC5E,0EAA0E;QAC1E,6EAA6E;QAC7E,IAAI,MAAM,CAAC,GAAG,KAAK,cAAc,CAAC,KAAK,CAAC,OAAO;YAAE,SAAS;QAC1D,MAAM,YAAY,GAAgB;YAChC,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW;YAC5B,MAAM,EAAE,YAAY;YACpB,aAAa,EAAE,UAAU,CAAC,KAAK;YAC/B,OAAO,EAAE,QAAQ,EAAE;YACnB,UAAU,EAAE,KAAK,CAAC,KAAK;SACxB,CAAC;QACF,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,MAAM,CAAC,GAAG;YACnB,OAAO,EAAE,MAAM,CAAC,GAAG;YACnB,QAAQ,EAAE,iBAAiB,CACzB,YAAY,EACZ,MAAM,CAAC,MAAM,CAAC,OAAO,EACrB,UAAU,EACV,MAAM,CAAC,MAAM,CAAC,GAAG,CAClB;YACD,cAAc,EAAE,YAAY;YAC5B,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW;YACzC,MAAM,EAAE,WAAW;SACpB,CAAC,CAAC;IACL,CAAC;IAED,4EAA4E;IAC5E,4EAA4E;IAC5E,qCAAqC;IACrC,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,SAAS,EAAE;YACnD,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,OAAO;YACf,UAAU,EAAE,UAAU,CAAC,KAAK;YAC5B,YAAY,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACxD,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnD,eAAe,EAAE,eAAe,CAAC,oBAAoB,EAAE,aAAa,CAAC;YACrE,aAAa,EAAE,gBAAgB,KAAK,CAAC,KAAK,MAAM,KAAK,CAAC,KAAK,MAAM,UAAU,CAAC,KAAK,OAAO,KAAK,CAAC,KAAK,EAAE;SACtG,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,OAAO,QAAQ,CAAC;QAClC,OAAO,EAAE,CAAC;YACR,IAAI,EAAE,UAAU,CAAC,KAAK;YACtB,MAAM,EAAE,OAAO;YACf,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,aAAa,CAAC,MAAM;YAC5B,OAAO,EAAE,aAAa,CAAC,OAAO;YAC9B,UAAU,EAAE,YAAY;YACxB,YAAY,EAAE,KAAK;YACnB,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;IACL,CAAC;IAED,6EAA6E;IAC7E,uEAAuE;IACvE,yEAAyE;IACzE,MAAM,YAAY,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;IAC3C,IAAI,CAAC,YAAY,CAAC,EAAE;QAAE,OAAO,YAAY,CAAC;IAC1C,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC;IAClC,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACpE,MAAM,IAAI,GAAa,EAAE,CAAC;IAE1B,IAAI,CAAC;QACH,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YACvD,IAAI,CAAC,IAAI,CAAC,EAAE;gBAAE,OAAO,IAAI,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;QAED,yEAAyE;QACzE,0EAA0E;QAC1E,uEAAuE;QACvE,2EAA2E;QAC3E,0EAA0E;QAC1E,wEAAwE;QACxE,2EAA2E;QAC3E,qEAAqE;QACrE,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACrD,MAAM,SAAS,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,UAAU,GAAkB,IAAI,CAAC;QACrC,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAG,MAAM,MAAM,CAC5B,SAAS,EACT,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAC5B,gBAAgB,KAAK,CAAC,KAAK,MAAM,KAAK,CAAC,KAAK,MAAM,UAAU,CAAC,KAAK,OAAO,KAAK,CAAC,KAAK,EAAE,EACtF,KAAK,CAAC,KAAK,EACX,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAChC,CAAC;YACF,IAAI,CAAC,SAAS,CAAC,EAAE;gBAAE,OAAO,SAAS,CAAC;YACpC,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;QACpC,CAAC;QAED,2EAA2E;QAC3E,4EAA4E;QAC5E,yEAAyE;QACzE,2EAA2E;QAC3E,6DAA6D;QAC7D,IAAI,UAAU,GAAG,IAAI,CAAC;QACtB,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YAC1D,IAAI,CAAC,OAAO,CAAC,EAAE;gBAAE,UAAU,GAAG,KAAK,CAAC;YACpC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACzB,MAAM,gBAAgB,CAAC,SAAS,EAAE;gBAChC,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,CAAC,CAAC,OAAO;gBACf,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnD,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,gBAAgB,EAAE,eAAe,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,cAAc,CAAC;aACtE,CAAC,CAAC;QACL,CAAC;QAED,OAAO,EAAE,CAAC;YACR,IAAI,EAAE,UAAU,CAAC,KAAK;YACtB,MAAM,EAAE,OAAO;YACf,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;YAClC,MAAM,EAAE,aAAa,CAAC,MAAM;YAC5B,OAAO,EAAE,aAAa,CAAC,OAAO;YAC9B,UAAU,EAAE,YAAY;YACxB,YAAY,EAAE,UAAU;SACzB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,MAAM,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC1D,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,uBAAuB,MAAM,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;YAAS,CAAC;QACT,KAAK,MAAM,OAAO,IAAI,IAAI;YAAE,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QACtE,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAE9E,MAAM,aAAa,GAAG;IACpB,IAAI,EAAE,QAAQ;IACd,WAAW,EACT,uEAAuE;QACvE,2DAA2D;CAC9D,CAAC;AAEF,0EAA0E;AAC1E,4EAA4E;AAC5E,0CAA0C;AAC1C,MAAM,UAAU,GACd,0EAA0E;IAC1E,gEAAgE,CAAC;AAEnE,MAAM,mBAAmB,GAAG;IAC1B,IAAI,EAAE,QAAQ;IACd,WAAW,EACT,uEAAuE;QACvE,wEAAwE;QACxE,yEAAyE;QACzE,8DAA8D;QAC9D,2BAA2B;CAC9B,CAAC;AAEF,6EAA6E;AAC7E,8EAA8E;AAC9E,0EAA0E;AAC1E,mEAAmE;AACnE,4CAA4C;AAC5C,MAAM,mBAAmB,GAAG;IAC1B,IAAI,EAAE,QAAQ;IACd,WAAW,EACT,wEAAwE;QACxE,kEAAkE;IACpE,UAAU,EAAE;QACV,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,+BAA+B;SAC7C;QACD,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC;YAClB,WAAW,EACT,wDAAwD;gBACxD,uEAAuE;SAC1E;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,uEAAuE;SACrF;QACD,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC;YACnB,WAAW,EAAE,iCAAiC;SAC/C;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,GAAG,WAAW,CAAC;YACtB,WAAW,EAAE,yDAAyD;SACvE;QACD,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,sDAAsD;SACpE;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,GAAG,WAAW,CAAC;YACtB,WAAW,EACT,sEAAsE;gBACtE,sEAAsE;gBACtE,qEAAqE;SACxE;QACD,OAAO,EAAE;YACP,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzB,WAAW,EAAE,0CAA0C;SACxD;QACD,aAAa,EAAE;YACb,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;YACxB,WAAW,EACT,uEAAuE;gBACvE,2BAA2B;SAC9B;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;YACxB,WAAW,EACT,mEAAmE;gBACnE,oCAAoC;SACvC;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzB,WAAW,EAAE,mDAAmD;SACjE;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzB,WAAW,EAAE,iEAAiE;SAC/E;QACD,gBAAgB,EAAE;YAChB,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzB,WAAW,EACT,qEAAqE;gBACrE,wDAAwD;SAC3D;KACF;IACD,QAAQ,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,CAAC;IAC5F,oBAAoB,EAAE,IAAI;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAqB;IAC1C;QACE,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,6BAA6B;QACpC,WAAW,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;QACtC,WAAW,EACT,uEAAuE;YACvE,sEAAsE;YACtE,yEAAyE;YACzE,yEAAyE;YACzE,gBAAgB;YAChB,UAAU;QACZ,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,mDAAmD;iBACjE;gBACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gCAAgC,EAAE;gBACvE,WAAW,EAAE,mBAAmB;gBAChC,KAAK,EAAE,aAAa;gBACpB,YAAY,EAAE,mBAAmB;aAClC;YACD,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC;YAClD,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC;KAC1E;IACD;QACE,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;QACtC,WAAW,EACT,uEAAuE;YACvE,wEAAwE;YACxE,UAAU;QACZ,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,kDAAkD;iBAChE;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8CAA8C;iBAC5D;gBACD,KAAK,EAAE,aAAa;gBACpB,YAAY,EAAE,mBAAmB;aAClC;YACD,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC;YACtC,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC;KAC3E;IACD;QACE,IAAI,EAAE,eAAe;QACrB,KAAK,EAAE,4BAA4B;QACnC,WAAW,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;QACtC,WAAW,EACT,mEAAmE;YACnE,oEAAoE;YACpE,yDAAyD;YACzD,UAAU;QACZ,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sDAAsD;iBACpE;gBACD,KAAK,EAAE,aAAa;gBACpB,YAAY,EAAE,mBAAmB;aAClC;YACD,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;YAC3B,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC;KAC5E;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;QACtC,WAAW,EACT,sEAAsE;YACtE,gDAAgD;YAChD,UAAU;QACZ,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,kDAAkD;iBAChE;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sCAAsC;iBACpD;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,qEAAqE;iBACnF;gBACD,KAAK,EAAE,aAAa;gBACpB,YAAY,EAAE,mBAAmB;aAClC;YACD,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC;YACrC,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC;KAC9E;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,KAAK,EAAE,6BAA6B;QACpC,WAAW,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;QACtC,WAAW,EACT,2EAA2E;YAC3E,4EAA4E;YAC5E,2DAA2D;YAC3D,UAAU;QACZ,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,qCAAqC;iBACnD;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,GAAG,WAAW,CAAC;oBACtB,WAAW,EAAE,0BAA0B;iBACxC;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,wEAAwE;iBACtF;gBACD,KAAK,EAAE,aAAa;gBACpB,YAAY,EAAE,mBAAmB;aAClC;YACD,QAAQ,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC;YACnD,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,kBAAkB,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC;KAClF;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;QACtC,WAAW,EACT,0EAA0E;YAC1E,qEAAqE;YACrE,iEAAiE;YACjE,2BAA2B;YAC3B,UAAU;QACZ,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sDAAsD;iBACpE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,oEAAoE;iBAClF;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gDAAgD;iBAC9D;gBACD,KAAK,EAAE,aAAa;gBACpB,YAAY,EAAE,mBAAmB;aAClC;YACD,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC;YAC3C,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC;KAC9E;IACD;QACE,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,8BAA8B;QACrC,WAAW,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;QACtC,WAAW,EACT,2EAA2E;YAC3E,4EAA4E;YAC5E,4EAA4E;YAC5E,qEAAqE;YACrE,8EAA8E;YAC9E,UAAU;QACZ,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,kDAAkD;iBAChE;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,mDAAmD;iBACjE;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uEAAuE;iBACrF;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,0DAA0D;iBACxE;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,sEAAsE;wBACtE,mDAAmD;oBACrD,oBAAoB,EAAE,IAAI;iBAC3B;gBACD,KAAK,EAAE,aAAa;aACrB;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC;YAC9D,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC;KAC1E;CACF,CAAC"}
@@ -29,8 +29,10 @@ export interface DaftariConfig {
29
29
  embeddingProvider: EmbeddingProviderId;
30
30
  backfillIdentityMap: Record<string, string>;
31
31
  shadowMode: boolean;
32
+ shadowModeSet: boolean;
32
33
  gitDir?: string;
33
34
  }
34
35
  export declare function configPath(vaultRoot: string): string;
36
+ export declare function clearConfigCache(): void;
35
37
  export declare function loadConfig(vaultRoot: string): Result<DaftariConfig, Error>;
36
38
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAYA,OAAO,EAEL,KAAK,cAAc,EAGnB,KAAK,MAAM,EACZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,UAAU,EAAmB,MAAM,mBAAmB,CAAC;AASrE,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;CACjB;AAID,eAAO,MAAM,eAAe,mEAAoE,CAAC;AACjG,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAI7D,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAMD,eAAO,MAAM,mBAAmB,6CAA8C,CAAC;AAC/E,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvE,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAClC,gBAAgB,EAAE,eAAe,EAAE,CAAC;IAIpC,KAAK,EAAE,UAAU,CAAC;IAIlB,UAAU,EAAE,OAAO,CAAC;IAQpB,KAAK,EAAE,OAAO,CAAC;IAMf,cAAc,EAAE,OAAO,CAAC;IAOxB,iBAAiB,EAAE,mBAAmB,CAAC;IAOvC,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAM5C,UAAU,EAAE,OAAO,CAAC;IAKpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAmBD,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEpD;AAkUD,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,CA0I1E"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAYA,OAAO,EAEL,KAAK,cAAc,EAGnB,KAAK,MAAM,EACZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,UAAU,EAAmB,MAAM,mBAAmB,CAAC;AAUrE,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;CACjB;AAID,eAAO,MAAM,eAAe,mEAAoE,CAAC;AACjG,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAI7D,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAMD,eAAO,MAAM,mBAAmB,6CAA8C,CAAC;AAC/E,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvE,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAClC,gBAAgB,EAAE,eAAe,EAAE,CAAC;IAIpC,KAAK,EAAE,UAAU,CAAC;IAIlB,UAAU,EAAE,OAAO,CAAC;IAQpB,KAAK,EAAE,OAAO,CAAC;IAMf,cAAc,EAAE,OAAO,CAAC;IAOxB,iBAAiB,EAAE,mBAAmB,CAAC;IAOvC,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAM5C,UAAU,EAAE,OAAO,CAAC;IAIpB,aAAa,EAAE,OAAO,CAAC;IAKvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAoBD,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEpD;AA6VD,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC;AAYD,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,CAuB1E"}