@indigoai-us/hq-cloud 6.18.14-alpha.2 → 6.18.14

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 (51) hide show
  1. package/dist/bin/sync-runner-receiver-unresolved-company.test.d.ts +2 -0
  2. package/dist/bin/sync-runner-receiver-unresolved-company.test.d.ts.map +1 -0
  3. package/dist/bin/sync-runner-receiver-unresolved-company.test.js +379 -0
  4. package/dist/bin/sync-runner-receiver-unresolved-company.test.js.map +1 -0
  5. package/dist/bin/sync-runner-watch-loop.d.ts +2 -1
  6. package/dist/bin/sync-runner-watch-loop.d.ts.map +1 -1
  7. package/dist/bin/sync-runner-watch-loop.js +76 -50
  8. package/dist/bin/sync-runner-watch-loop.js.map +1 -1
  9. package/dist/bin/sync-runner-watch-loop.test.js +2 -199
  10. package/dist/bin/sync-runner-watch-loop.test.js.map +1 -1
  11. package/dist/bin/sync-runner.d.ts +1 -12
  12. package/dist/bin/sync-runner.d.ts.map +1 -1
  13. package/dist/bin/sync-runner.js +14 -32
  14. package/dist/bin/sync-runner.js.map +1 -1
  15. package/dist/bin/sync-runner.test.js +4 -4
  16. package/dist/bin/sync-runner.test.js.map +1 -1
  17. package/dist/cli/sync.d.ts.map +1 -1
  18. package/dist/cli/sync.js +22 -18
  19. package/dist/cli/sync.js.map +1 -1
  20. package/dist/cli/sync.test.js +32 -44
  21. package/dist/cli/sync.test.js.map +1 -1
  22. package/dist/object-io.d.ts.map +1 -1
  23. package/dist/object-io.js +10 -0
  24. package/dist/object-io.js.map +1 -1
  25. package/dist/object-io.test.js +28 -1
  26. package/dist/object-io.test.js.map +1 -1
  27. package/dist/qmd-reindex.d.ts +10 -30
  28. package/dist/qmd-reindex.d.ts.map +1 -1
  29. package/dist/qmd-reindex.js +41 -148
  30. package/dist/qmd-reindex.js.map +1 -1
  31. package/dist/qmd-reindex.test.js +77 -110
  32. package/dist/qmd-reindex.test.js.map +1 -1
  33. package/dist/sync/push-receiver.d.ts +10 -14
  34. package/dist/sync/push-receiver.d.ts.map +1 -1
  35. package/dist/sync/push-receiver.js +40 -71
  36. package/dist/sync/push-receiver.js.map +1 -1
  37. package/dist/sync/push-receiver.test.js +1 -84
  38. package/dist/sync/push-receiver.test.js.map +1 -1
  39. package/dist/sync-core.d.ts +7 -0
  40. package/dist/sync-core.d.ts.map +1 -1
  41. package/dist/sync-core.js +12 -0
  42. package/dist/sync-core.js.map +1 -1
  43. package/package.json +1 -1
  44. package/dist/sync/targeted-pull-prefixes.d.ts +0 -9
  45. package/dist/sync/targeted-pull-prefixes.d.ts.map +0 -1
  46. package/dist/sync/targeted-pull-prefixes.js +0 -43
  47. package/dist/sync/targeted-pull-prefixes.js.map +0 -1
  48. package/dist/sync/targeted-pull-prefixes.test.d.ts +0 -2
  49. package/dist/sync/targeted-pull-prefixes.test.d.ts.map +0 -1
  50. package/dist/sync/targeted-pull-prefixes.test.js +0 -33
  51. package/dist/sync/targeted-pull-prefixes.test.js.map +0 -1
@@ -43,7 +43,7 @@
43
43
  */
44
44
  import * as fs from "fs";
45
45
  import * as path from "path";
46
- import { spawn } from "child_process";
46
+ import { spawnSync } from "child_process";
47
47
  /**
48
48
  * Default exec timeout for a single `qmd` invocation. The historical 120s bound
49
49
  * routinely killed `qmd update`/`qmd embed` mid-write on a large index (the HQ
@@ -51,7 +51,7 @@ import { spawn } from "child_process";
51
51
  * store. 15 minutes comfortably covers a cold or embed-heavy pass, so the bound
52
52
  * effectively stops firing on legitimate work; a genuinely wedged process is
53
53
  * still bounded, and a timed-out pass is treated as not-done (never written
54
- * further onto) — see {@link createQmdExec} and {@link reindexAfterSync}.
54
+ * further onto) — see {@link defaultExec} and {@link reindexAfterSync}.
55
55
  */
56
56
  export const DEFAULT_QMD_EXEC_TIMEOUT_MS = 900_000;
57
57
  /** Resolve the exec timeout, honoring `HQ_QMD_EXEC_TIMEOUT_MS` (ms) if valid. */
@@ -105,109 +105,31 @@ function safeRealpathSync(p) {
105
105
  return path.resolve(p);
106
106
  }
107
107
  }
108
- const DEFAULT_QMD_SIGINT_GRACE_MS = 5_000;
109
- /**
110
- * Spawn qmd without blocking the caller's event loop. Timeout and shutdown
111
- * both send SIGINT, then escalate to SIGKILL after a bounded grace period.
112
- * POSIX children get their own process group so shutdown also reaches qmd's
113
- * descendants. A parent killed with SIGKILL cannot run this cleanup; that
114
- * exceptional case is documented with the watch runner's shutdown behavior.
115
- */
116
- export function createQmdExec(options = {}) {
117
- const command = options.command ?? "qmd";
118
- const sigintGraceMs = options.sigintGraceMs ?? DEFAULT_QMD_SIGINT_GRACE_MS;
119
- return (args, execOptions = {}) => new Promise((resolve) => {
120
- if (execOptions.signal?.aborted) {
121
- resolve({ status: null, stdout: "", stderr: "", timedOut: false });
122
- return;
123
- }
124
- let child;
125
- try {
126
- child = spawn(command, args, {
127
- stdio: ["ignore", "pipe", "pipe"],
128
- detached: process.platform !== "win32",
129
- windowsHide: true,
130
- });
131
- }
132
- catch (err) {
133
- resolve({
134
- status: null,
135
- stdout: "",
136
- stderr: err instanceof Error ? err.message : String(err),
137
- timedOut: false,
138
- });
139
- return;
140
- }
141
- let stdout = "";
142
- let stderr = "";
143
- let timedOut = false;
144
- let terminationStarted = false;
145
- let settled = false;
146
- let escalationTimer;
147
- child.stdout?.setEncoding("utf8");
148
- child.stderr?.setEncoding("utf8");
149
- child.stdout?.on("data", (chunk) => {
150
- stdout += chunk;
151
- });
152
- child.stderr?.on("data", (chunk) => {
153
- stderr += chunk;
154
- });
155
- // A failed spawn also emits `close`; retain spawnSync's result shape
156
- // (null status and captured output) instead of raising into the sync pass.
157
- child.on("error", (err) => {
158
- stderr += `${err.message}\n`;
159
- });
160
- const sendSignal = (signal) => {
161
- if (child.exitCode !== null || child.signalCode !== null)
162
- return;
163
- if (process.platform !== "win32" && child.pid !== undefined) {
164
- try {
165
- process.kill(-child.pid, signal);
166
- return;
167
- }
168
- catch (err) {
169
- if (err.code === "ESRCH")
170
- return;
171
- // Fall back to signaling the direct child if group signaling fails.
172
- }
173
- }
174
- try {
175
- child.kill(signal);
176
- }
177
- catch (err) {
178
- if (err.code !== "ESRCH") {
179
- process.stderr.write(`qmd child signal failed: ${String(err)}\n`);
180
- }
181
- }
182
- };
183
- const interrupt = () => {
184
- if (terminationStarted)
185
- return;
186
- terminationStarted = true;
187
- sendSignal("SIGINT");
188
- escalationTimer = setTimeout(() => sendSignal("SIGKILL"), sigintGraceMs);
189
- };
190
- const onAbort = () => interrupt();
191
- const signal = execOptions.signal;
192
- signal?.addEventListener("abort", onAbort, { once: true });
193
- const timeoutTimer = setTimeout(() => {
194
- timedOut = true;
195
- interrupt();
196
- }, options.timeoutMs ?? resolveExecTimeoutMs());
197
- child.once("close", (status) => {
198
- if (settled)
199
- return;
200
- settled = true;
201
- if (timeoutTimer !== undefined)
202
- clearTimeout(timeoutTimer);
203
- if (escalationTimer !== undefined)
204
- clearTimeout(escalationTimer);
205
- signal?.removeEventListener("abort", onAbort);
206
- resolve({ status, stdout, stderr, timedOut });
207
- });
108
+ const defaultExec = (args) => {
109
+ const res = spawnSync("qmd", args, {
110
+ encoding: "utf8",
111
+ // Bound so a wedged index never hangs the runner forever, but generously —
112
+ // see DEFAULT_QMD_EXEC_TIMEOUT_MS.
113
+ timeout: resolveExecTimeoutMs(),
114
+ // On timeout send SIGINT instead of the default SIGTERM. NOTE: qmd 2.5.3
115
+ // traps BOTH identically — each handler only restores the cursor and calls
116
+ // process.exit() — so SIGINT is NOT inherently a graceful transaction
117
+ // unwind; it is simply the same exit path qmd takes on Ctrl-C. The real
118
+ // write-safety guarantee is the raised bound above (a kill is now rare) plus
119
+ // treating a timed-out pass as not-done and never embedding after it (see
120
+ // reindexAfterSync). SIGINT is kept only so a killed pass exits qmd's normal
121
+ // way rather than via an unhandled default signal.
122
+ killSignal: "SIGINT",
208
123
  });
209
- }
210
- const defaultExec = createQmdExec();
124
+ const timedOut = res.error != null &&
125
+ res.error.code === "ETIMEDOUT";
126
+ return {
127
+ status: res.status,
128
+ stdout: res.stdout ?? "",
129
+ stderr: res.stderr ?? "",
130
+ timedOut,
131
+ };
132
+ };
211
133
  /** SQLite corruption signature qmd surfaces when the vector store is damaged. */
212
134
  const CORRUPTION_SIGNATURE = /SQLITE_CORRUPT|database disk image is malformed/i;
213
135
  /** True if a qmd result reports SQLite corruption on stdout or stderr. */
@@ -413,9 +335,7 @@ const DEFAULT_CHANGED_PATH_DEBOUNCE_MS = 60_000;
413
335
  *
414
336
  * @returns a small summary for logging/telemetry (collectionsAdded, updated).
415
337
  */
416
- class QmdReindexAbortedError extends Error {
417
- }
418
- export async function reindexAfterSync(hqRoot, opts = {}) {
338
+ export function reindexAfterSync(hqRoot, opts = {}) {
419
339
  const exec = opts.exec ?? defaultExec;
420
340
  const existsSync = opts.existsSync ?? fs.existsSync;
421
341
  const acquireLock = opts.acquireReindexLock ?? defaultAcquireReindexLock;
@@ -456,35 +376,10 @@ export async function reindexAfterSync(hqRoot, opts = {}) {
456
376
  const pendingSinceMs = pendingDirty && typeof state.pendingSinceMs === "number"
457
377
  ? state.pendingSinceMs
458
378
  : nowMs;
459
- const markPendingDirty = () => {
460
- writeState(statePath, { ...state, pendingDirty: true, pendingSinceMs });
461
- result.pendingDirty = true;
462
- };
463
- const runExec = async (args) => {
464
- if (opts.signal?.aborted) {
465
- markPendingDirty();
466
- throw new QmdReindexAbortedError("qmd reindex aborted during shutdown");
467
- }
468
- const heartbeatTimer = opts.onHeartbeat
469
- ? setInterval(opts.onHeartbeat, Math.max(1, opts.heartbeatIntervalMs ?? 30_000))
470
- : undefined;
471
- try {
472
- const commandResult = await exec(args, { signal: opts.signal });
473
- if (opts.signal?.aborted) {
474
- markPendingDirty();
475
- throw new QmdReindexAbortedError("qmd reindex aborted during shutdown");
476
- }
477
- return commandResult;
478
- }
479
- finally {
480
- if (heartbeatTimer !== undefined)
481
- clearInterval(heartbeatTimer);
482
- }
483
- };
484
379
  // Resolve the real index directory before locking. Default qmd layout is
485
380
  // ~/.cache/qmd, not <hqRoot>/.qmd — status is read-only.
486
381
  const legacyQmdDir = path.join(hqRoot, ".qmd");
487
- const status = await runExec(["status"]);
382
+ const status = exec(["status"]);
488
383
  const parsedIndexDir = parseIndexDirFromStatus(status.stdout ?? "");
489
384
  const indexDir = parsedIndexDir ?? legacyQmdDir;
490
385
  result.indexDir = indexDir;
@@ -506,7 +401,7 @@ export async function reindexAfterSync(hqRoot, opts = {}) {
506
401
  }
507
402
  // Guard: qmd must be installed. `qmd collection list` doubles as the
508
403
  // availability probe AND the source for which collections already exist.
509
- const list = await runExec(["collection", "list"]);
404
+ const list = exec(["collection", "list"]);
510
405
  if (list.status !== 0)
511
406
  return result; // qmd absent or errored — no-op
512
407
  // An already-corrupt store can surface here even on the lexical side.
@@ -533,15 +428,15 @@ export async function reindexAfterSync(hqRoot, opts = {}) {
533
428
  continue;
534
429
  const namePresent = existingCollections.includes(`qmd://${slug}/`);
535
430
  if (!namePresent) {
536
- const add = await runExec(["collection", "add", knowledgeDir, "--name", slug, "--mask", "**/*.md"]);
431
+ const add = exec(["collection", "add", knowledgeDir, "--name", slug, "--mask", "**/*.md"]);
537
432
  if (add.status === 0) {
538
- await runExec(["context", "add", `qmd://${slug}`, `Knowledge base for ${slug}.`]);
433
+ exec(["context", "add", `qmd://${slug}`, `Knowledge base for ${slug}.`]);
539
434
  result.collectionsAdded.push(slug);
540
435
  }
541
436
  continue;
542
437
  }
543
438
  // Name exists — check path (feedback_f8e233c6). Paths only on `show`.
544
- const show = await runExec(["collection", "show", slug]);
439
+ const show = exec(["collection", "show", slug]);
545
440
  if (show.status !== 0)
546
441
  continue;
547
442
  const registeredPath = parseCollectionPathFromShow(show.stdout ?? "");
@@ -564,7 +459,7 @@ export async function reindexAfterSync(hqRoot, opts = {}) {
564
459
  if (!allowRepair)
565
460
  continue;
566
461
  // Guaranteed hasMd + exists above. Remove + re-add; never embed inline.
567
- const removed = await runExec(["collection", "remove", slug]);
462
+ const removed = exec(["collection", "remove", slug]);
568
463
  if (removed.status !== 0) {
569
464
  writeState(statePath, { ...state, pendingDirty: true, pendingSinceMs });
570
465
  result.pendingDirty = true;
@@ -576,7 +471,7 @@ export async function reindexAfterSync(hqRoot, opts = {}) {
576
471
  });
577
472
  continue;
578
473
  }
579
- const add = await runExec(["collection", "add", knowledgeDir, "--name", slug, "--mask", "**/*.md"]);
474
+ const add = exec(["collection", "add", knowledgeDir, "--name", slug, "--mask", "**/*.md"]);
580
475
  if (add.status !== 0) {
581
476
  writeState(statePath, { ...state, pendingDirty: true, pendingSinceMs });
582
477
  result.pendingDirty = true;
@@ -588,7 +483,7 @@ export async function reindexAfterSync(hqRoot, opts = {}) {
588
483
  });
589
484
  continue;
590
485
  }
591
- await runExec(["context", "add", `qmd://${slug}`, `Knowledge base for ${slug}.`]);
486
+ exec(["context", "add", `qmd://${slug}`, `Knowledge base for ${slug}.`]);
592
487
  result.collectionsRepaired.push(slug);
593
488
  repairedThisCycle = true;
594
489
  }
@@ -603,7 +498,7 @@ export async function reindexAfterSync(hqRoot, opts = {}) {
603
498
  const name = `${slug}-projects`;
604
499
  if (existingCollections.includes(`qmd://${name}/`))
605
500
  continue;
606
- const add = await runExec([
501
+ const add = exec([
607
502
  "collection",
608
503
  "add",
609
504
  projectsDir,
@@ -613,7 +508,7 @@ export async function reindexAfterSync(hqRoot, opts = {}) {
613
508
  "**/*.{md,json}",
614
509
  ]);
615
510
  if (add.status === 0) {
616
- await runExec(["context", "add", `qmd://${name}`, `Project PRDs and documentation for ${slug}.`]);
511
+ exec(["context", "add", `qmd://${name}`, `Project PRDs and documentation for ${slug}.`]);
617
512
  result.collectionsAdded.push(name);
618
513
  }
619
514
  }
@@ -623,7 +518,7 @@ export async function reindexAfterSync(hqRoot, opts = {}) {
623
518
  if (existsSync(personalKnowledgeDir) &&
624
519
  hasIndexableMarkdown(personalKnowledgeDir) &&
625
520
  !existingCollections.includes(`qmd://${personalKnowledgeName}/`)) {
626
- const add = await runExec([
521
+ const add = exec([
627
522
  "collection",
628
523
  "add",
629
524
  personalKnowledgeDir,
@@ -633,7 +528,7 @@ export async function reindexAfterSync(hqRoot, opts = {}) {
633
528
  "**/*.md",
634
529
  ]);
635
530
  if (add.status === 0) {
636
- await runExec([
531
+ exec([
637
532
  "context",
638
533
  "add",
639
534
  `qmd://${personalKnowledgeName}`,
@@ -653,7 +548,7 @@ export async function reindexAfterSync(hqRoot, opts = {}) {
653
548
  result.pendingDirty = true;
654
549
  return result;
655
550
  }
656
- const update = await runExec(["update"]);
551
+ const update = exec(["update"]);
657
552
  if (looksCorrupt(update)) {
658
553
  handleCorruption(indexDir, statePath, state, pendingSinceMs, nowMs, quarantine, result);
659
554
  return result;
@@ -678,7 +573,7 @@ export async function reindexAfterSync(hqRoot, opts = {}) {
678
573
  // 3. Embeddings only on explicit request — never after a path-drift repair
679
574
  // in the same cycle (repair destroys that collection's vectors).
680
575
  if (opts.embed && !repairedThisCycle) {
681
- const embed = await runExec(["embed"]);
576
+ const embed = exec(["embed"]);
682
577
  if (looksCorrupt(embed)) {
683
578
  handleCorruption(indexDir, statePath, state, pendingSinceMs, nowMs, quarantine, result);
684
579
  return result;
@@ -698,8 +593,6 @@ export async function reindexAfterSync(hqRoot, opts = {}) {
698
593
  }
699
594
  }
700
595
  catch (err) {
701
- if (err instanceof QmdReindexAbortedError)
702
- return result;
703
596
  try {
704
597
  opts.log?.({
705
598
  event: "runner.qmd_reindex.internal_failed",
@@ -1 +1 @@
1
- {"version":3,"file":"qmd-reindex.js","sourceRoot":"","sources":["../src/qmd-reindex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qmd-reindex.js","sourceRoot":"","sources":["../src/qmd-reindex.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAiB1C;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,OAAO,CAAC;AAEnD,iFAAiF;AACjF,MAAM,UAAU,oBAAoB,CAAC,MAAyB,OAAO,CAAC,GAAG;IACvE,MAAM,GAAG,GAAG,GAAG,CAAC,sBAAsB,CAAC;IACvC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;QACpC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACtB,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,2BAA2B,CAAC;AACrC,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,sBAAsB,CAAC,MAAyB,OAAO,CAAC,GAAG;IACzE,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACtE,OAAO,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,KAAK,CAAC;AACxD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAc;IACpD,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAClD,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpB,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9B,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACjC,CAAC;AAED,6DAA6D;AAC7D,MAAM,UAAU,2BAA2B,CAAC,MAAc;IACxD,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;IACjD,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACtB,OAAO,CAAC,IAAI,IAAI,CAAC;AACnB,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,eAAe,CAC7B,CAAS,EACT,CAAS,EACT,eAAsC,gBAAgB;IAEtD,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAS;IACjC,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AAC9D,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAS;IACjC,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;AACH,CAAC;AAED,MAAM,WAAW,GAAY,CAAC,IAAI,EAAE,EAAE;IACpC,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE;QACjC,QAAQ,EAAE,MAAM;QAChB,2EAA2E;QAC3E,mCAAmC;QACnC,OAAO,EAAE,oBAAoB,EAAE;QAC/B,yEAAyE;QACzE,2EAA2E;QAC3E,sEAAsE;QACtE,wEAAwE;QACxE,6EAA6E;QAC7E,0EAA0E;QAC1E,6EAA6E;QAC7E,mDAAmD;QACnD,UAAU,EAAE,QAAQ;KACrB,CAAC,CAAC;IACH,MAAM,QAAQ,GACZ,GAAG,CAAC,KAAK,IAAI,IAAI;QAChB,GAAG,CAAC,KAA+B,CAAC,IAAI,KAAK,WAAW,CAAC;IAC5D,OAAO;QACL,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE;QACxB,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE;QACxB,QAAQ;KACT,CAAC;AACJ,CAAC,CAAC;AAEF,iFAAiF;AACjF,MAAM,oBAAoB,GAAG,kDAAkD,CAAC;AAEhF,0EAA0E;AAC1E,MAAM,UAAU,YAAY,CAAC,CAAoD;IAC/E,OAAO,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,EAAE,KAAK,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC,CAAC;AAC3E,CAAC;AAcD;;;;GAIG;AACH,MAAM,qBAAqB,GAAG,EAAE,GAAG,MAAM,CAAC;AAE1C,SAAS,kBAAkB,CAAC,MAAyB,OAAO,CAAC,GAAG;IAC9D,MAAM,GAAG,GAAG,GAAG,CAAC,oBAAoB,CAAC;IACrC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;QACpC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACtB,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,MAAM,SAAS,GAAsB,EAAE,OAAO,KAAI,CAAC,EAAE,CAAC;AAEtD,iFAAiF;AACjF,yDAAyD;AACzD,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;AAC3C,IAAI,wBAAwB,GAAG,KAAK,CAAC;AAErC,SAAS,0BAA0B;IACjC,IAAI,wBAAwB;QAAE,OAAO;IACrC,wBAAwB,GAAG,IAAI,CAAC;IAChC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;QACtB,KAAK,MAAM,CAAC,IAAI,gBAAgB;YAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC;AAED,iFAAiF;AACjF,SAAS,QAAQ,CAAC,GAAW;IAC3B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IACrD,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAQ,GAA6B,EAAE,IAAI,KAAK,OAAO,CAAC;IAC1D,CAAC;AACH,CAAC;AAED,6EAA6E;AAC7E,SAAS,aAAa,CAAC,QAAgB;IACrC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAqB,CAAC;QAC/E,IAAI,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG;YAAE,OAAO;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,uEAAuE;QACvE,OAAO;IACT,CAAC;IACD,IAAI,CAAC;QACH,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,yBAAyB;IAC3B,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,yBAAyB,CAAC,QAAgB;IACjD,IAAI,EAAY,CAAC;IACjB,IAAI,CAAC;QACH,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,4EAA4E;QAC5E,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAqB,CAAC;QAC/E,IAAI,OAAO,IAAI,EAAE,GAAG,KAAK,QAAQ;YAAE,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,2DAA2D;IAC7D,CAAC;IACD,MAAM,IAAI,GAAG,SAAS,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,GAAG,kBAAkB,EAAE,CAAC;IAC7D,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;QAClB,IAAI,CAAC;YACH,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,yEAAyE;QAC3E,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,yBAAyB,GAAuB,CAAC,QAAQ,EAAE,EAAE;IACjE,6EAA6E;IAC7E,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,GAAG;QAAE,OAAO,SAAS,CAAC;IAE9D,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;QAC7B,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,OAAO,EAAE,sBAAsB;KAChC,CAAC,CAAC;IAEH,8EAA8E;IAC9E,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC;QAC7C,IAAI,CAAC;YACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1D,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;YAC9C,IAAI,CAAC;gBACH,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAC5B,CAAC;oBAAS,CAAC;gBACT,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACnB,CAAC;YACD,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC/B,0BAA0B,EAAE,CAAC;YAC7B,OAAO;gBACL,OAAO;oBACL,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAClC,aAAa,CAAC,QAAQ,CAAC,CAAC;gBAC1B,CAAC;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAK,GAA6B,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACtD,uEAAuE;gBACvE,yEAAyE;gBACzE,yCAAyC;gBACzC,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,+DAA+D;YAC/D,IAAI,yBAAyB,CAAC,QAAQ,CAAC;gBAAE,SAAS;YAClD,OAAO,IAAI,CAAC,CAAC,uCAAuC;QACtD,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CACrC,WAA+B,EAC/B,SAAmB;IAEnB,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,MAAM,GAAG,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IACD,MAAM,KAAK,GAAwB,EAAE,CAAC;IACtC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,KAAK,MAAM,QAAQ,IAAI,KAAK;gBAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;YACjD,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACnC,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAChC,CAAC;AAQD,MAAM,oBAAoB,GAAG,CAAC,cAAc,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;AAEtF,MAAM,6BAA6B,GAA2B,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE;IACjF,IAAI,SAAS,GAAkB,IAAI,CAAC;IACpC,KAAK,MAAM,IAAI,IAAI,oBAAoB,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC;YACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAS;YAClC,MAAM,IAAI,GAAG,GAAG,GAAG,YAAY,QAAQ,EAAE,CAAC;YAC1C,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACzB,IAAI,IAAI,KAAK,cAAc;gBAAE,SAAS,GAAG,IAAI,CAAC;iBACzC,IAAI,SAAS,KAAK,IAAI;gBAAE,SAAS,GAAG,IAAI,CAAC;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,wEAAwE;YACxE,iEAAiE;QACnE,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,kEAAkE;AAClE,SAAS,gBAAgB,CAAC,KAAa;IACrC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,gCAAgC,GAAG,MAAM,CAAC;AAmEhD;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAAc,EACd,OAAuB,EAAE;IAEzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,WAAW,CAAC;IACtC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,UAAU,CAAC;IACpD,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,IAAI,yBAAyB,CAAC;IACzE,MAAM,UAAU,GAAG,IAAI,CAAC,sBAAsB,IAAI,6BAA6B,CAAC;IAChF,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,gBAAgB,CAAC;IAC3D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACpC,MAAM,MAAM,GAAkB;QAC5B,YAAY,EAAE,KAAK;QACnB,gBAAgB,EAAE,EAAE;QACpB,iBAAiB,EAAE,EAAE;QACrB,mBAAmB,EAAE,EAAE;QACvB,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,KAAK;QACf,YAAY,EAAE,KAAK;QACnB,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,KAAK;QACf,qBAAqB,EAAE,KAAK;QAC5B,0BAA0B,EAAE,KAAK;QACjC,QAAQ,EAAE,IAAI;KACf,CAAC;IAEF,IAAI,CAAC;QACH,yCAAyC;QACzC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;YAAE,OAAO,MAAM,CAAC;QAEvE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,wBAAwB,CAAC,CAAC;QACvF,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QACnC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,MAAM,gBAAgB,GACpB,YAAY,KAAK,SAAS;YAC1B,YAAY,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QAC/C,MAAM,sBAAsB,GAC1B,IAAI,CAAC,sBAAsB,KAAK,IAAI;YACpC,YAAY,KAAK,SAAS;YAC1B,gBAAgB,CAAC;QACnB,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC;QACjD,IAAI,CAAC,gBAAgB,IAAI,CAAC,sBAAsB,IAAI,CAAC,YAAY,EAAE,CAAC;YAClE,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACvC,MAAM,cAAc,GAClB,YAAY,IAAI,OAAO,KAAK,CAAC,cAAc,KAAK,QAAQ;YACtD,CAAC,CAAC,KAAK,CAAC,cAAc;YACtB,CAAC,CAAC,KAAK,CAAC;QAEZ,yEAAyE;QACzE,yDAAyD;QACzD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAChC,MAAM,cAAc,GAAG,uBAAuB,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;QACpE,MAAM,QAAQ,GAAG,cAAc,IAAI,YAAY,CAAC;QAChD,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAE3B,8EAA8E;QAC9E,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,uBAAuB,CAAC,WAAW,EAAE;YAC3D,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC;YACxC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC;SACrC,CAAC,CAAC;QACH,IAAI,IAAI,EAAE,CAAC;YACT,UAAU,CAAC,SAAS,EAAE,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;YACxE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;YACvB,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;YAC3B,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,IAAI,CAAC;YACH,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzB,gBAAgB,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;gBACxF,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,qEAAqE;YACrE,yEAAyE;YACzE,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;YAC1C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,MAAM,CAAC,CAAC,gCAAgC;YACtE,sEAAsE;YACtE,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvB,gBAAgB,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;gBACxF,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;YAC3B,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC;YACxC,IAAI,iBAAiB,GAAG,KAAK,CAAC;YAC9B,MAAM,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,IAAI,2BAA2B,CAAC;YACtF,MAAM,0BAA0B,GAC9B,IAAI,CAAC,0BAA0B,IAAI,iCAAiC,CAAC;YAEvE,8EAA8E;YAC9E,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;gBACpD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,aAAa,IAAI,oBAAoB,CAAC,CAAC,YAAY,CAAC,CAAC;gBACzE,MAAM,WAAW,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;gBAChD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;oBAChE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;wBAAE,SAAS;oBACxC,MAAM,KAAK,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC;oBACjD,IAAI,CAAC,KAAK;wBAAE,SAAS;oBAErB,MAAM,WAAW,GAAG,mBAAmB,CAAC,QAAQ,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC;oBACnE,IAAI,CAAC,WAAW,EAAE,CAAC;wBACjB,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;wBAC3F,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;4BACrB,IAAI,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,IAAI,EAAE,EAAE,sBAAsB,IAAI,GAAG,CAAC,CAAC,CAAC;4BACzE,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACrC,CAAC;wBACD,SAAS;oBACX,CAAC;oBAED,sEAAsE;oBACtE,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;oBAChD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;wBAAE,SAAS;oBAChC,MAAM,cAAc,GAAG,2BAA2B,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;oBACtE,IAAI,CAAC,cAAc;wBAAE,SAAS;oBAC9B,IAAI,eAAe,CAAC,cAAc,EAAE,YAAY,EAAE,YAAY,CAAC;wBAAE,SAAS;oBAE1E,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACpC,IAAI,CAAC,GAAG,EAAE,CAAC;wBACT,KAAK,EAAE,+BAA+B;wBACtC,OAAO,EAAE,kBAAkB,IAAI,eAAe;wBAC9C,GAAG,EAAE,IAAI;wBACT,OAAO,EAAE;4BACP,IAAI;4BACJ,cAAc;4BACd,WAAW,EAAE,YAAY;4BACzB,aAAa,EAAE,WAAW;yBAC3B;qBACF,CAAC,CAAC;oBAEH,IAAI,CAAC,WAAW;wBAAE,SAAS;oBAE3B,wEAAwE;oBACxE,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;oBACrD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACzB,UAAU,CAAC,SAAS,EAAE,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;wBACxE,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;wBAC3B,IAAI,CAAC,GAAG,EAAE,CAAC;4BACT,KAAK,EAAE,6CAA6C;4BACpD,OAAO,EAAE,uCAAuC,IAAI,EAAE;4BACtD,GAAG,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM;4BACrC,OAAO,EAAE,EAAE,IAAI,EAAE;yBAClB,CAAC,CAAC;wBACH,SAAS;oBACX,CAAC;oBACD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;oBAC3F,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACrB,UAAU,CAAC,SAAS,EAAE,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;wBACxE,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;wBAC3B,IAAI,CAAC,GAAG,EAAE,CAAC;4BACT,KAAK,EAAE,6CAA6C;4BACpD,OAAO,EAAE,WAAW,IAAI,uCAAuC;4BAC/D,GAAG,EAAE,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM;4BAC7B,OAAO,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE;yBAChC,CAAC,CAAC;wBACH,SAAS;oBACX,CAAC;oBACD,IAAI,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,IAAI,EAAE,EAAE,sBAAsB,IAAI,GAAG,CAAC,CAAC,CAAC;oBACzE,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACtC,iBAAiB,GAAG,IAAI,CAAC;gBAC3B,CAAC;gBAED,kEAAkE;gBAClE,4EAA4E;gBAC5E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;oBAC9D,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;wBAAE,SAAS;oBACvC,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC;wBAAE,SAAS;oBAEvD,MAAM,IAAI,GAAG,GAAG,IAAI,WAAW,CAAC;oBAChC,IAAI,mBAAmB,CAAC,QAAQ,CAAC,SAAS,IAAI,GAAG,CAAC;wBAAE,SAAS;oBAC7D,MAAM,GAAG,GAAG,IAAI,CAAC;wBACf,YAAY;wBACZ,KAAK;wBACL,WAAW;wBACX,QAAQ;wBACR,IAAI;wBACJ,QAAQ;wBACR,gBAAgB;qBACjB,CAAC,CAAC;oBACH,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACrB,IAAI,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,IAAI,EAAE,EAAE,sCAAsC,IAAI,GAAG,CAAC,CAAC,CAAC;wBACzF,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACrC,CAAC;gBACH,CAAC;gBAED,uEAAuE;gBACvE,MAAM,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;gBACxE,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;gBACnD,IACE,UAAU,CAAC,oBAAoB,CAAC;oBAChC,oBAAoB,CAAC,oBAAoB,CAAC;oBAC1C,CAAC,mBAAmB,CAAC,QAAQ,CAAC,SAAS,qBAAqB,GAAG,CAAC,EAChE,CAAC;oBACD,MAAM,GAAG,GAAG,IAAI,CAAC;wBACf,YAAY;wBACZ,KAAK;wBACL,oBAAoB;wBACpB,QAAQ;wBACR,qBAAqB;wBACrB,QAAQ;wBACR,SAAS;qBACV,CAAC,CAAC;oBACH,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACrB,IAAI,CAAC;4BACH,SAAS;4BACT,KAAK;4BACL,SAAS,qBAAqB,EAAE;4BAChC,0CAA0C;yBAC3C,CAAC,CAAC;wBACH,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;oBACtD,CAAC;gBACH,CAAC;YACH,CAAC;YAED,kCAAkC;YAClC,MAAM,YAAY,GAAG,gBAAgB,IAAI,YAAY,CAAC;YACtD,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,UAAU,GACd,IAAI,CAAC,UAAU;oBACf,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC;gBACtE,IAAI,UAAU,GAAG,CAAC,IAAI,KAAK,GAAG,cAAc,GAAG,UAAU,EAAE,CAAC;oBAC1D,UAAU,CAAC,SAAS,EAAE,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;oBACxE,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;oBAC3B,OAAO,MAAM,CAAC;gBAChB,CAAC;gBAED,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAChC,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;oBACzB,gBAAgB,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;oBACxF,OAAO,MAAM,CAAC;gBAChB,CAAC;gBACD,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;oBACpB,mEAAmE;oBACnE,8DAA8D;oBAC9D,UAAU,CAAC,SAAS,EAAE,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;oBACxE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;oBACvB,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;oBAC3B,OAAO,MAAM,CAAC;gBAChB,CAAC;gBACD,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC;gBACrC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,UAAU,CAAC,SAAS,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;gBACvE,CAAC;qBAAM,CAAC;oBACN,UAAU,CAAC,SAAS,EAAE,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;oBACxE,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;gBAC7B,CAAC;YACH,CAAC;YAED,2EAA2E;YAC3E,iEAAiE;YACjE,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACrC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC9B,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;oBACxB,gBAAgB,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;oBACxF,OAAO,MAAM,CAAC;gBAChB,CAAC;gBACD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBACnB,UAAU,CAAC,SAAS,EAAE,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;oBACxE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;oBACvB,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;oBAC3B,OAAO,MAAM,CAAC;gBAChB,CAAC;gBACD,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,KAAK,MAAM,IAAI,IAAI,KAAK;gBAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QAC3C,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC;YACH,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,KAAK,EAAE,oCAAoC;gBAC3C,OAAO,EAAE,8BAA8B;gBACvC,GAAG;gBACH,OAAO,EAAE,EAAE,MAAM,EAAE;aACpB,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,wCAAwC;QAC1C,CAAC;QACD,qEAAqE;IACvE,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CACvB,QAAgB,EAChB,SAAiB,EACjB,KAAsB,EACtB,cAAsB,EACtB,KAAa,EACb,UAAkC,EAClC,MAAqB;IAErB,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5D,UAAU,CAAC,SAAS,EAAE,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;IACxE,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,MAAM,CAAC,qBAAqB,GAAG,IAAI,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,0BAA0B,GAAG,IAAI,CAAC;IAC3C,CAAC;IACD,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;AAC7B,CAAC;AAQD,SAAS,SAAS,CAAC,SAAiB;IAClC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAoB,CAAC;IAC3E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,SAAiB,EAAE,KAAsB;IAC3D,IAAI,CAAC;QACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,2EAA2E;IAC7E,CAAC;AACH,CAAC;AAED,SAAS,yBAAyB,CAAC,OAAe;IAChD,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrD,OAAO,CACL,wCAAwC,CAAC,IAAI,CAAC,UAAU,CAAC;QACzD,gDAAgD,CAAC,IAAI,CAAC,UAAU,CAAC;QACjE,gCAAgC,CAAC,IAAI,CAAC,UAAU,CAAC,CAClD,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,YAAoB;IAChD,IAAI,CAAC;QACH,OAAO,EAAE;aACN,WAAW,CAAC,YAAY,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;aAClD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;aACpF,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,2BAA2B,CAAC,YAAoB;IACvD,4EAA4E;IAC5E,gEAAgE;IAChE,MAAM,KAAK,GAA0C,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACvF,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;QACpC,IAAI,OAAoB,CAAC;QACzB,IAAI,CAAC;YACH,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU;gBAAE,OAAO,IAAI,CAAC;YAC/E,IAAI,CAAC,CAAC,WAAW,EAAE,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5D,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,iCAAiC,CAAC,WAAmB;IAC5D,wEAAwE;IACxE,6EAA6E;IAC7E,MAAM,KAAK,GAAG,CAAC,WAAW,CAAC,CAAC;IAC5B,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;QACzB,IAAI,OAAoB,CAAC;QACzB,IAAI,CAAC;YACH,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC;YACpF,IAAI,CAAC,CAAC,WAAW,EAAE;gBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}