@miller-tech/uap 1.59.0 → 1.61.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.
- package/dist/.tsbuildinfo +1 -1
- package/dist/benchmarks/paired/adapter.d.ts.map +1 -1
- package/dist/benchmarks/paired/adapter.js +14 -1
- package/dist/benchmarks/paired/adapter.js.map +1 -1
- package/dist/benchmarks/paired/scaffold.d.ts.map +1 -1
- package/dist/benchmarks/paired/scaffold.js +6 -1
- package/dist/benchmarks/paired/scaffold.js.map +1 -1
- package/dist/bin/cli.js +58 -0
- package/dist/bin/cli.js.map +1 -1
- package/dist/cli/deliver.d.ts +33 -0
- package/dist/cli/deliver.d.ts.map +1 -1
- package/dist/cli/deliver.js +90 -7
- package/dist/cli/deliver.js.map +1 -1
- package/dist/cli/self-harness.d.ts +36 -0
- package/dist/cli/self-harness.d.ts.map +1 -0
- package/dist/cli/self-harness.js +213 -0
- package/dist/cli/self-harness.js.map +1 -0
- package/dist/mcp-router/executor/client.d.ts.map +1 -1
- package/dist/mcp-router/executor/client.js +16 -2
- package/dist/mcp-router/executor/client.js.map +1 -1
- package/dist/mcp-router/output-compressor.d.ts.map +1 -1
- package/dist/mcp-router/output-compressor.js +51 -0
- package/dist/mcp-router/output-compressor.js.map +1 -1
- package/dist/self-harness/decide.d.ts +41 -0
- package/dist/self-harness/decide.d.ts.map +1 -0
- package/dist/self-harness/decide.js +69 -0
- package/dist/self-harness/decide.js.map +1 -0
- package/dist/self-harness/index.d.ts +23 -0
- package/dist/self-harness/index.d.ts.map +1 -0
- package/dist/self-harness/index.js +23 -0
- package/dist/self-harness/index.js.map +1 -0
- package/dist/self-harness/middleware/path-normalizer.d.ts +53 -0
- package/dist/self-harness/middleware/path-normalizer.d.ts.map +1 -0
- package/dist/self-harness/middleware/path-normalizer.js +116 -0
- package/dist/self-harness/middleware/path-normalizer.js.map +1 -0
- package/dist/self-harness/mine.d.ts +25 -0
- package/dist/self-harness/mine.d.ts.map +1 -0
- package/dist/self-harness/mine.js +78 -0
- package/dist/self-harness/mine.js.map +1 -0
- package/dist/self-harness/mods.d.ts +136 -0
- package/dist/self-harness/mods.d.ts.map +1 -0
- package/dist/self-harness/mods.js +152 -0
- package/dist/self-harness/mods.js.map +1 -0
- package/dist/self-harness/orchestrator.d.ts +61 -0
- package/dist/self-harness/orchestrator.d.ts.map +1 -0
- package/dist/self-harness/orchestrator.js +110 -0
- package/dist/self-harness/orchestrator.js.map +1 -0
- package/dist/self-harness/pending.d.ts +57 -0
- package/dist/self-harness/pending.d.ts.map +1 -0
- package/dist/self-harness/pending.js +86 -0
- package/dist/self-harness/pending.js.map +1 -0
- package/dist/self-harness/profile.d.ts +38 -0
- package/dist/self-harness/profile.d.ts.map +1 -0
- package/dist/self-harness/profile.js +80 -0
- package/dist/self-harness/profile.js.map +1 -0
- package/dist/self-harness/propose.d.ts +25 -0
- package/dist/self-harness/propose.d.ts.map +1 -0
- package/dist/self-harness/propose.js +86 -0
- package/dist/self-harness/propose.js.map +1 -0
- package/dist/self-harness/trace-mine.d.ts +39 -0
- package/dist/self-harness/trace-mine.d.ts.map +1 -0
- package/dist/self-harness/trace-mine.js +109 -0
- package/dist/self-harness/trace-mine.js.map +1 -0
- package/dist/self-harness/transfer.d.ts +99 -0
- package/dist/self-harness/transfer.d.ts.map +1 -0
- package/dist/self-harness/transfer.js +140 -0
- package/dist/self-harness/transfer.js.map +1 -0
- package/dist/self-harness/weakness.d.ts +56 -0
- package/dist/self-harness/weakness.d.ts.map +1 -0
- package/dist/self-harness/weakness.js +0 -0
- package/dist/self-harness/weakness.js.map +1 -0
- package/dist/tasks/coordination.d.ts.map +1 -1
- package/dist/tasks/coordination.js +9 -7
- package/dist/tasks/coordination.js.map +1 -1
- package/dist/tasks/service.d.ts +10 -0
- package/dist/tasks/service.d.ts.map +1 -1
- package/dist/tasks/service.js +41 -5
- package/dist/tasks/service.js.map +1 -1
- package/docs/INDEX.md +1 -0
- package/docs/design/SELF_HARNESS.md +206 -0
- package/package.json +1 -1
- package/src/policies/enforcers/__pycache__/_common.cpython-312.pyc +0 -0
- package/tools/agents/scripts/anthropic_proxy.py +160 -18
- package/tools/agents/scripts/toolcall_path_normalizer.py +140 -0
- package/tools/agents/tests/test_anthropic_proxy_streaming.py +93 -2
package/dist/cli/deliver.js
CHANGED
|
@@ -17,6 +17,49 @@ import { generateStrategySeeds, seedsFromIdeas } from '../delivery/ideation.js';
|
|
|
17
17
|
import { planAutoOptimization } from '../delivery/auto-optimizer.js';
|
|
18
18
|
import { authorAcceptanceGate } from '../delivery/self-gate.js';
|
|
19
19
|
import { runAcceptanceGate, formatAcceptanceReport } from '../delivery/acceptance-judge.js';
|
|
20
|
+
import { runExecutionGate } from '../delivery/execution-gate.js';
|
|
21
|
+
/**
|
|
22
|
+
* Map an acceptance verdict to a loop gate result, honoring primary vs secondary
|
|
23
|
+
* mode. PURE — unit-tested in isolation from the model call.
|
|
24
|
+
*
|
|
25
|
+
* - Genuine fully-met verdict → pass.
|
|
26
|
+
* - PRIMARY (acceptance is the sole convergence target, no objective project
|
|
27
|
+
* gates): an inconclusive / no-evidence verdict is NOT "done" — fail so the
|
|
28
|
+
* loop keeps building (bounded by the ceiling). Prevents a vacuous turn-1
|
|
29
|
+
* "success" on an empty repo where the judge has nothing to evaluate.
|
|
30
|
+
* - SECONDARY (real objective gates exist): fail OPEN on judge flakiness — a
|
|
31
|
+
* green objective delivery is never blocked by the judge's nondeterminism.
|
|
32
|
+
*/
|
|
33
|
+
/**
|
|
34
|
+
* Decide how deliver establishes its convergence target when (or whether) the
|
|
35
|
+
* project exposes objective gates. PURE — unit-tested. See call site for the
|
|
36
|
+
* rationale on preferring the acceptance judge over the scripted self-gate.
|
|
37
|
+
*/
|
|
38
|
+
export function decideGateStrategy(opts) {
|
|
39
|
+
const acceptancePrimary = opts.hasAcceptance && opts.noRealGates && !opts.forceSelfGate;
|
|
40
|
+
const needsSelfGate = opts.selfGateAllowed && !acceptancePrimary && (opts.noRealGates || opts.forceSelfGate);
|
|
41
|
+
const noGatesError = opts.noRealGates && !needsSelfGate && !acceptancePrimary;
|
|
42
|
+
return { acceptancePrimary, needsSelfGate, noGatesError };
|
|
43
|
+
}
|
|
44
|
+
export function resolveAcceptanceVerdict(r, acceptancePrimary) {
|
|
45
|
+
if (r.passed && !r.parseError)
|
|
46
|
+
return { passed: true, score: r.score, feedback: '' };
|
|
47
|
+
const gaps = `ACCEPTANCE GAPS — implement these to complete the spec:\n${formatAcceptanceReport(r)}`;
|
|
48
|
+
if (acceptancePrimary) {
|
|
49
|
+
if (r.parseError) {
|
|
50
|
+
// No-evidence / unparseable: not done, and NOT progress. Omit the score —
|
|
51
|
+
// runAcceptanceGate reports score:1 on its fail-open paths, which would
|
|
52
|
+
// otherwise saturate the loop's acceptance-progress (bestAcceptance) and
|
|
53
|
+
// mask real per-criterion gains on later turns.
|
|
54
|
+
return {
|
|
55
|
+
passed: false,
|
|
56
|
+
feedback: `Acceptance inconclusive (${r.parseError}). Keep implementing the spec — ensure the source files exist and are complete.`,
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
return { passed: false, score: r.score, feedback: gaps };
|
|
60
|
+
}
|
|
61
|
+
return { passed: r.passed, score: r.score, feedback: r.passed ? '' : gaps };
|
|
62
|
+
}
|
|
20
63
|
import { createAgenticExecutor, noopApplier, selectExecutorMode } from '../delivery/agentic-executor.js';
|
|
21
64
|
import { createHaloDeliveryTracer } from '../delivery/halo-trace.js';
|
|
22
65
|
import { haloTracePath, isHaloTracingEnabled } from '../observability/halo-exporter.js';
|
|
@@ -302,10 +345,39 @@ async function runDeliver(instruction, options) {
|
|
|
302
345
|
// target instead of vacuously "succeeding" in one turn. The gate is authored
|
|
303
346
|
// after the model client exists (below); here we only decide intent.
|
|
304
347
|
const selfGateAllowed = options.selfGate !== false && process.env.UAP_DELIVER_SELF_GATE !== '0';
|
|
305
|
-
const
|
|
306
|
-
|
|
348
|
+
const noRealGates = rungs.length === 0;
|
|
349
|
+
// With --acceptance and no objective gates, the LLM acceptance judge is the
|
|
350
|
+
// convergence target instead of a model-authored self-gate. The self-gate
|
|
351
|
+
// greps for hard-coded patterns and fails when the implementation's naming
|
|
352
|
+
// differs from its own assertions (e.g. `small:{size:36}` vs a grep for
|
|
353
|
+
// `SMALL_OCTOPUS_SIZE.*36`) — false negatives that block delivery of correct
|
|
354
|
+
// code. The judge evaluates the spec semantically. --force-self-gate overrides.
|
|
355
|
+
const { acceptancePrimary, needsSelfGate, noGatesError } = decideGateStrategy({
|
|
356
|
+
hasAcceptance: Boolean(options.acceptance),
|
|
357
|
+
noRealGates,
|
|
358
|
+
forceSelfGate: options.forceSelfGate === true,
|
|
359
|
+
selfGateAllowed,
|
|
360
|
+
});
|
|
361
|
+
if (noGatesError) {
|
|
307
362
|
fail(`No verifiable gates detected in ${projectRoot} (need package.json scripts, or drop --no-self-gate to author one).`);
|
|
308
363
|
}
|
|
364
|
+
// Bootstrap rung: an objective floor so the loop runs and reaches the
|
|
365
|
+
// acceptance judge each turn. It trivially passes; the REAL objective check is
|
|
366
|
+
// the execution gate, which joins via redetectRungs once the model writes
|
|
367
|
+
// files. Acceptance fails closed in primary mode (below), so turn 1 on an
|
|
368
|
+
// empty repo can't vacuously "deliver" — there is no implementation to accept.
|
|
369
|
+
if (acceptancePrimary) {
|
|
370
|
+
rungs.push({
|
|
371
|
+
id: 'bootstrap',
|
|
372
|
+
name: 'Loop bootstrap (acceptance judge is the convergence target)',
|
|
373
|
+
command: 'node',
|
|
374
|
+
args: ['-e', ''],
|
|
375
|
+
required: true,
|
|
376
|
+
timeoutMs: 5_000,
|
|
377
|
+
tier: 'fast',
|
|
378
|
+
});
|
|
379
|
+
console.log(chalk.cyan('⚖ acceptance: LLM judge is the convergence target (no objective project gates; self-gate skipped)'));
|
|
380
|
+
}
|
|
309
381
|
if (options.dryRun) {
|
|
310
382
|
const summary = {
|
|
311
383
|
projectRoot,
|
|
@@ -595,12 +667,23 @@ async function runDeliver(instruction, options) {
|
|
|
595
667
|
// stop crashing. Uses the blind (text) executor; fails open internally.
|
|
596
668
|
const acceptanceGate = options.acceptance
|
|
597
669
|
? async (root) => {
|
|
670
|
+
// Primary mode: the only objective rung is the trivial bootstrap, and the
|
|
671
|
+
// real execution gate joins via redetect only on the NEXT turn (one-turn
|
|
672
|
+
// lag). So gate the artifact's runtime HERE too — it must actually RUN
|
|
673
|
+
// before completeness is judged — closing the gap where a 1-turn build
|
|
674
|
+
// could be declared delivered on the judge alone. Idempotent with the
|
|
675
|
+
// redetected execution rung on later turns.
|
|
676
|
+
if (acceptancePrimary) {
|
|
677
|
+
const exec = await runExecutionGate(root);
|
|
678
|
+
if (!exec.passed) {
|
|
679
|
+
return {
|
|
680
|
+
passed: false,
|
|
681
|
+
feedback: `EXECUTION FAILED — the code must run before it can be accepted:\n${exec.outputTail}`,
|
|
682
|
+
};
|
|
683
|
+
}
|
|
684
|
+
}
|
|
598
685
|
const r = await runAcceptanceGate({ spec: instruction, projectRoot: root, executor: blindExecutor });
|
|
599
|
-
return
|
|
600
|
-
passed: r.passed,
|
|
601
|
-
score: r.score,
|
|
602
|
-
feedback: r.passed ? '' : `ACCEPTANCE GAPS — implement these to complete the spec:\n${formatAcceptanceReport(r)}`,
|
|
603
|
-
};
|
|
686
|
+
return resolveAcceptanceVerdict(r, acceptancePrimary);
|
|
604
687
|
}
|
|
605
688
|
: undefined;
|
|
606
689
|
const seams = {
|
package/dist/cli/deliver.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deliver.js","sourceRoot":"","sources":["../../src/cli/deliver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"deliver.js","sourceRoot":"","sources":["../../src/cli/deliver.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAOzF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAyB,MAAM,iCAAiC,CAAC;AACnH,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE;;;;;;;;;;;GAWG;AACH;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAKlC;IACC,MAAM,iBAAiB,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;IACxF,MAAM,aAAa,GACjB,IAAI,CAAC,eAAe,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC;IACzF,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC,aAAa,IAAI,CAAC,iBAAiB,CAAC;IAC9E,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,CAAmB,EACnB,iBAA0B;IAE1B,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,UAAU;QAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IACrF,MAAM,IAAI,GAAG,4DAA4D,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;IACrG,IAAI,iBAAiB,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YACjB,0EAA0E;YAC1E,wEAAwE;YACxE,yEAAyE;YACzE,gDAAgD;YAChD,OAAO;gBACL,MAAM,EAAE,KAAK;gBACb,QAAQ,EAAE,4BAA4B,CAAC,CAAC,UAAU,iFAAiF;aACpI,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC3D,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC9E,CAAC;AACD,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAGzG,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAEtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAChG,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAE7G,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAuEzE,MAAM,eAAe,GAAG,EAAE,CAAC;AAC3B,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAC/B,MAAM,oBAAoB,GAAG,cAAc,CAAC;AAE5C,wEAAwE;AACxE,SAAS,YAAY,CAAC,IAAY;IAChC,4CAA4C;IAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,+BAA+B,EAAE,EAAE,CAAC,CAAC;AACjG,CAAC;AAED,2EAA2E;AAC3E,SAAS,aAAa,CAAC,WAAmB;IACxC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE;YAChE,GAAG,EAAE,WAAW;YAChB,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAC;QACH,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,WAAmB;IACvC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE;YAC1D,GAAG,EAAE,WAAW;YAChB,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAC;QACH,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QAC3C,OAAO,CAAC,CAAC,MAAM;aACZ,KAAK,CAAC,IAAI,CAAC;aACX,MAAM,CAAC,OAAO,CAAC;YAChB,kEAAkE;aACjE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aAC5B,MAAM,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,IAAI,CAAC,OAAe;IAC3B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAClC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACrB,MAAM,IAAI,SAAS,EAAE,CAAC;AACxB,CAAC;AAED,MAAM,SAAU,SAAQ,KAAK;CAAG;AAEhC,SAAS,YAAY,CAAC,QAAgB,EAAE,gBAAyB;IAC/D,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IACtC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,yBAAyB,QAAQ,iBAAiB,SAAS,EAAE,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,gBAAgB,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;AAC/E,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAuB;IACzD,OAAO,CACL,OAAO,CAAC,UAAU,KAAK,SAAS;QAChC,OAAO,CAAC,MAAM,KAAK,SAAS;QAC5B,OAAO,CAAC,SAAS,KAAK,SAAS;QAC/B,OAAO,CAAC,QAAQ,KAAK,SAAS;QAC9B,OAAO,CAAC,aAAa,KAAK,SAAS;QACnC,OAAO,CAAC,MAAM,KAAK,SAAS;QAC5B,OAAO,CAAC,aAAa,KAAK,SAAS;QACnC,OAAO,CAAC,IAAI,KAAK,SAAS;QAC1B,OAAO,CAAC,UAAU,KAAK,SAAS;QAChC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAC/B,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,OAAuB,EAAE,IAAc;IACnE,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACtE,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IACvE,IAAI,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;QAAE,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAChF,IAAI,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC7E,IAAI,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IACvE,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IACjE,IAAI,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS;QAAE,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IACnF,wEAAwE;IACxE,0EAA0E;IAC1E,2EAA2E;IAC3E,2BAA2B;IAC3B,IAAI,IAAI,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS;QAAE,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IACtF,IAAI,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;QAAE,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;AAClF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,WAAmB,EAAE,OAAuB;IAC/E,IAAI,CAAC;QACH,MAAM,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,SAAS;YAAE,OAAO;QACrC,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,WAAmB,EAAE,OAAuB;IACpE,yEAAyE;IACzE,0EAA0E;IAC1E,wEAAwE;IACxE,4DAA4D;IAC5D,6DAA6D;IAC7D,IAAI,QAA8B,CAAC;IACnC,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC;QACpG,QAAQ,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;QAC7C,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,wEAAwE;IACxE,iCAAiC;IACjC,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,GAAG,CAAC;QAC/C,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;QACtB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;QACzB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;QACxB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;QACtB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;QACpB,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;QAC1B,yEAAyE;QACzE,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS;YAAE,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;QAClE,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;YAAE,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAChE,CAAC;IAED,yEAAyE;IACzE,mEAAmE;IACnE,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC;IACnC,CAAC;IAED,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,YAAY,CAAC;IAEhF,IAAI,QAA4B,CAAC;IACjC,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACnC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,GAAG,eAAe,EAAE,CAAC;YAC9E,IAAI,CAAC,gDAAgD,eAAe,UAAU,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrG,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,8DAA8D;IAC9D,8EAA8E;IAC9E,4EAA4E;IAC5E,6EAA6E;IAC7E,MAAM,cAAc,GAClB,OAAO,CAAC,cAAc,KAAK,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,2BAA2B,KAAK,GAAG,CAAC;IAEtF,IAAI,eAAmC,CAAC;IACxC,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,eAAe,GAAG,CAAC,IAAI,eAAe,GAAG,aAAa,EAAE,CAAC;YACjG,IAAI,CAAC,8CAA8C,aAAa,UAAU,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC;QAChG,CAAC;IACH,CAAC;IACD,IAAI,cAAc,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QACpD,eAAe,GAAG,mBAAmB,CAAC;IACxC,CAAC;IAED,IAAI,WAA+B,CAAC;IACpC,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACtC,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,WAAW,GAAG,CAAC,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACxE,IAAI,CAAC,wDAAwD,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;IAED,IAAI,UAA8B,CAAC;IACnC,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACrC,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,IAAI,UAAU,GAAG,oBAAoB,EAAE,CAAC;YACzF,IAAI,CAAC,iDAAiD,oBAAoB,UAAU,OAAO,CAAC,UAAU,GAAG,CAAC,CAAC;QAC7G,CAAC;IACH,CAAC;IAED,6DAA6D;IAC7D,MAAM,KAAK,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEvD,gDAAgD;IAChD,IAAI,KAAK,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IACrC,IAAI,WAAW,GAAuB,IAAI,CAAC;IAC3C,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,WAAW,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QACjF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,uBAAuB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpG,CAAC;QACD,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,qEAAqE;IACrE,wEAAwE;IACxE,kEAAkE;IAClE,MAAM,kBAAkB,GAAG,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC5D,gFAAgF;IAChF,+EAA+E;IAC/E,0EAA0E;IAC1E,wDAAwD;IACxD,IAAI,OAAO,GAAa,SAAS,CAAC;IAClC,IAAI,YAAY,GAAyB,IAAI,CAAC;IAC9C,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAe,CAAC;QAC3F,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAC3B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAC7E,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,8BAA8B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;QACvG,CAAC;QACD,YAAY,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QAC/B,OAAO,GAAG,MAAM,CAAC,MAAM,CACrB,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EACpE,MAAM,CACP,CAAC;IACJ,CAAC;SAAM,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAC7B,OAAO,GAAG,YAAY,CAAC;IACzB,CAAC;SAAM,IAAI,OAAO,CAAC,WAAW,KAAK,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,EAAE,CAAC;QAC3F,qEAAqE;QACrE,OAAO,GAAG,aAAa,CAAC;IAC1B,CAAC;IAED,4EAA4E;IAC5E,mCAAmC;IACnC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACzB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAC;QACtE,IAAI,YAAY;YAAE,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,KAAK,aAAa,IAAI,OAAO,CAAC,WAAW,KAAK,KAAK;YAAE,OAAO,KAAK,CAAC;QACvE,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IAClE,MAAM,iBAAiB,GAAoC,OAAO,CAAC,aAAa;QAC9E,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC;QACrB,CAAC,CAAC,SAAS,CAAC;IACd,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACnC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,GAAG,EAAE,EAAE,CAAC;YACjE,IAAI,CAAC,yDAAyD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;IACD,IAAI,WAAW,GAAG,EAAE,GAAG,MAAM,CAAC;IAC9B,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,GAAG,EAAE,CAAC;YACtD,IAAI,CAAC,qEAAqE,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;QAClG,CAAC;QACD,WAAW,GAAG,IAAI,GAAG,MAAM,CAAC;IAC9B,CAAC;IAED,yEAAyE;IACzE,wEAAwE;IACxE,6EAA6E;IAC7E,qEAAqE;IACrE,MAAM,eAAe,GAAG,OAAO,CAAC,QAAQ,KAAK,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,GAAG,CAAC;IAChG,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;IACvC,4EAA4E;IAC5E,0EAA0E;IAC1E,2EAA2E;IAC3E,wEAAwE;IACxE,6EAA6E;IAC7E,gFAAgF;IAChF,MAAM,EAAE,iBAAiB,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,kBAAkB,CAAC;QAC5E,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;QAC1C,WAAW;QACX,aAAa,EAAE,OAAO,CAAC,aAAa,KAAK,IAAI;QAC7C,eAAe;KAChB,CAAC,CAAC;IACH,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,CACF,mCAAmC,WAAW,qEAAqE,CACpH,CAAC;IACJ,CAAC;IACD,sEAAsE;IACtE,+EAA+E;IAC/E,0EAA0E;IAC1E,0EAA0E;IAC1E,+EAA+E;IAC/E,IAAI,iBAAiB,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC;YACT,EAAE,EAAE,WAAW;YACf,IAAI,EAAE,6DAA6D;YACnE,OAAO,EAAE,MAAM;YACf,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;YAChB,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,KAAK;YAChB,IAAI,EAAE,MAAM;SACM,CAAC,CAAC;QACtB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,mGAAmG,CAAC,CAChH,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,OAAO,GAAG;YACd,WAAW;YACX,KAAK,EAAE,KAAK,CAAC,EAAE;YACf,QAAQ,EAAE,QAAQ,IAAI,CAAC;YACvB,iBAAiB,EAAE,UAAU,IAAI,CAAC;YAClC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;YAC/B,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;YACrC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;YACnC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;YAC1G,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;YACxC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC;YACxD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;YAC5C,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;YAC3B,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;YACvC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;YAC/B,YAAY,EAAE,OAAO,CAAC,YAAY,KAAK,KAAK;YAC5C,kBAAkB,EAAE,OAAO,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC5G,YAAY,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;YACzE,cAAc;YACd,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,eAAe,IAAI,mBAAmB,CAAC,CAAC,CAAC,CAAC,IAAI;YACzE,OAAO;YACP,KAAK,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,OAAO;YACP,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;YAC7C,iBAAiB,EAAE,iBAAiB,IAAI,IAAI;YAC5C,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;YACnC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI;YACvD,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI;YACnD,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC5F,QAAQ,EAAE,aAAa;SACxB,CAAC;QACF,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;YACpD,OAAO,CAAC,GAAG,CACT,oBAAoB,OAAO,CAAC,IAAI,IAAI,wDAAwD,EAAE,CAC/F,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,cAAc,WAAW,EAAE,CAAC,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,sBAAsB,OAAO,CAAC,iBAAiB,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC;YACpG,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC1D,OAAO,CAAC,GAAG,CACT,gBAAgB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CACnH,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,iBAAiB,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/H,OAAO,CAAC,GAAG,CACT,eAAe,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,OAAO,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CACvI,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,mBAAmB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC9D,OAAO,CAAC,GAAG,CAAC,mBAAmB,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACpE,OAAO,CAAC,GAAG,CAAC,8BAA8B,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC3E,OAAO,CAAC,GAAG,CACT,sBAAsB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,kBAAkB,oCAAoC,CAAC,CAAC,CAAC,KAAK,EAAE,CAC7H,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,oBAAoB,OAAO,CAAC,YAAY,IAAI,gCAAgC,EAAE,CAAC,CAAC;YAC5F,OAAO,CAAC,GAAG,CACT,sBAAsB,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,uCAAuC,OAAO,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CACzH,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,kBAAkB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC;YACpF,OAAO,CAAC,GAAG,CACT,eACE,OAAO,CAAC,OAAO;gBACb,CAAC,CAAC,cAAc,OAAO,CAAC,MAAM,IAAI,WAAW,KAAK,OAAO,CAAC,QAAQ,cAAc,OAAO,CAAC,gBAAgB,WAAW,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,aAAa,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG;gBAChN,CAAC,CAAC,KACN,EAAE,CACH,CAAC;YACF,IAAI,aAAa,EAAE,CAAC;gBAClB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,8FAA8F,CAAC,CAC3G,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACxB,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;gBACtB,OAAO,CAAC,GAAG,CACT,UAAU,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAC9E,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO;IACT,CAAC;IAED,yEAAyE;IACzE,0EAA0E;IAC1E,MAAM,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC;QAC/C,WAAW,GAAG,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1E,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;IACxC,MAAM,aAAa,GAAiB,KAAK,EAAE,MAAM,EAAE,EAAE;QACnD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QACrE,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC,CAAC;IAEF,4EAA4E;IAC5E,2EAA2E;IAC3E,+EAA+E;IAC/E,0EAA0E;IAC1E,8EAA8E;IAC9E,yDAAyD;IACzD,MAAM,YAAY,GAAG,kBAAkB,CACpC,OAAO,CAAC,QAAyB,IAAI,MAAM,EAC5C,WAAW,EACX,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAClC,CAAC;IACF,MAAM,eAAe,GACnB,KAAK,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,0BAA0B,CAAC;IACzG,MAAM,OAAO,GAAG,YAAY,KAAK,SAAS,CAAC;IAC3C,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,QAAQ,GAAiB,OAAO;QACpC,CAAC,CAAC,qBAAqB,CAAC,KAAK,EAAE;YAC3B,WAAW;YACX,QAAQ,EAAE,eAAe;YACzB,WAAW;YACX,2EAA2E;YAC3E,cAAc,EACZ,OAAO,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,GAAG,EAAU;YACrG,uEAAuE;YACvE,iEAAiE;YACjE,kBAAkB,EAAE,OAAO,CAAC,YAAY,KAAK,KAAK;YAClD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CACb,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC,CAC9F;SACJ,CAAC;QACJ,CAAC,CAAC,aAAa,CAAC;IAElB,6EAA6E;IAC7E,4EAA4E;IAC5E,sEAAsE;IACtE,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC,CAAC;QACpF,uEAAuE;QACvE,0CAA0C;QAC1C,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;QAC7F,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;QACnE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACb,IAAI,CAAC,0EAA0E,CAAC,CAAC;QACnF,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QACpB,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,0GAA0G,CAC3G,CACF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CAAC,uFAAuF,CAAC,CACrG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,wEAAwE;IACxE,MAAM,eAAe,GAAG,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAChF,IAAI,gBAA0C,CAAC;IAC/C,IAAI,iBAAqC,CAAC;IAC1C,IAAI,OAAO,CAAC,QAAQ,IAAI,eAAe,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,YAAY,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;QACxD,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC;QAChC,gBAAgB,GAAG,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;IACxG,CAAC;SAAM,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,qFAAqF,CAAC,CACjG,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ;QACjC,CAAC,CAAC,0BAA0B,CAAC;YACzB,KAAK,EAAE,uBAAuB,CAAC;gBAC7B,UAAU;gBACV,QAAQ,EAAE,QAAQ,IAAI,CAAC;gBACvB,gBAAgB;gBAChB,iBAAiB;aAClB,CAAC;YACF,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,IAAI,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;SAC1F,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IAEd,uEAAuE;IACvE,0EAA0E;IAC1E,qEAAqE;IACrE,kEAAkE;IAClE,MAAM,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9G,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC;IAC/C,MAAM,gBAAgB,GAAG,aAAa;QACpC,CAAC,CAAC,KAAK,EAAE,IAAY,EAAqB,EAAE;YACxC,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;gBACxE,MAAM,GAAG,GAAG,mBAAmB,EAAE,CAAC;gBAClC,MAAM,KAAK,GAAG,MAAM,yBAAyB,CAAC,aAAa,EAAE,IAAI,EAAE;oBACjE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC1B,gBAAgB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC;iBACvD,CAAC,CAAC;gBACH,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YACtC,CAAC;YACD,OAAO,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC7D,CAAC;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,aAAa,GAAG,CAAC,MAAuB,EAAQ,EAAE;QACtD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa;YACjC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC;YAC1B,CAAC,CAAC,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;gBACrD,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC;gBAClC,CAAC,CAAC,MAAM,CAAC,MAAM;oBACb,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;oBACrB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,YAAY,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,UAAU,MAAM,CAAC,IAAI,KAAK,MAAM,GAAG,QAAQ,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QACtG,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU;iBAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC;iBAC1E,IAAI,CAAC,GAAG,CAAC,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,OAAO,EAAE,CAAC,CAAC,CAAC;QACvD,CAAC;IACH,CAAC,CAAC;IAEF,0EAA0E;IAC1E,0EAA0E;IAC1E,uEAAuE;IACvE,IAAI,KAAiC,CAAC;IACtC,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;QAC1B,qEAAqE;QACrE,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACxG,IAAI,CAAC,uDAAuD,OAAO,CAAC,aAAa,GAAG,CAAC,CAAC;QACxF,CAAC;QACD,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;QACrF,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACjF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,KAAK,GAAG,SAAS,CAAC;YAClB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,MAAM,SAAS,CAAC,MAAM,uCAAuC,OAAO,CAAC,aAAa,GAAG,CAAC,CAClG,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,uDAAuD,OAAO,CAAC,aAAa,6BAA6B,CAC1G,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC,CAAC;QACnE,KAAK,GAAG,MAAM,qBAAqB,CACjC,WAAW,EACX,QAAQ,EACR,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CACxC,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5E,CAAC;IACD,4EAA4E;IAC5E,yDAAyD;IACzD,IAAI,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;QACzB,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,yEAAyE;IACzE,uEAAuE;IACvE,sEAAsE;IACtE,IAAI,WAAuC,CAAC;IAC5C,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACzC,WAAW,GAAG,MAAM,oBAAoB,CAAC;YACvC,WAAW;YACX,WAAW;YACX,OAAO,EAAE,KAAK,CAAC,EAAE;YACjB,gBAAgB,EAAE,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC;SACtC,CAAC,CAAC;QACH,IAAI,WAAW,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YACjC,uEAAuE;YACvE,gEAAgE;YAChE,qDAAqD;YACrD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,uDAAuD;gBACrD,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,EAAE,CAAC,CACvD,CACF,CAAC;QACJ,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,eAAe,EAAE,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,MAAM,UAAU,GAAG,wBAAwB,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;IAE7F,MAAM,SAAS,GAAG;QAChB,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,kBAAkB,CAAC,CAAC,CAAC,IAAI;QACnD,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI;QAC/B,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;QACnC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI;QACzC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI;QACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;QAC/B,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI;KAC5C;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,kBAAkB,KAAK,CAAC,IAAI,cAAc,OAAO,CAAC,IAAI,UAAU,QAAQ,IAAI,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC3H,CACF,CAAC;IAEF,4EAA4E;IAC5E,0EAA0E;IAC1E,8CAA8C;IAC9C,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtF,IAAI,YAAgC,CAAC;IACrC,MAAM,gBAAgB,GAAG,YAAY;QACnC,CAAC,CAAC,GAAuB,EAAE;YACvB,IAAI,CAAC;gBACH,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;oBAAE,OAAO,SAAS,CAAC;gBAChD,MAAM,IAAI,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;gBACvE,IAAI,IAAI,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;oBAClC,YAAY,GAAG,IAAI,CAAC;oBACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,+BAA+B,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBACpF,CAAC;gBACD,OAAO,IAAI,IAAI,SAAS,CAAC;YAC3B,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,yEAAyE;IACzE,yEAAyE;IACzE,4EAA4E;IAC5E,0EAA0E;IAC1E,MAAM,YAAY,GAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAClD,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE;QACvB,GAAG,IAAI;QACP,OAAO;QACP,MAAM,EAAE,SAAS;QACjB,eAAe,EAAE,kBAAkB;KACpC,CAAC,CAAC;IACL,8EAA8E;IAC9E,2EAA2E;IAC3E,6EAA6E;IAC7E,wEAAwE;IACxE,MAAM,cAAc,GAA+B,OAAO,CAAC,UAAU;QACnE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,0EAA0E;YAC1E,yEAAyE;YACzE,uEAAuE;YACvE,uEAAuE;YACvE,sEAAsE;YACtE,4CAA4C;YAC5C,IAAI,iBAAiB,EAAE,CAAC;gBACtB,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBAC1C,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACjB,OAAO;wBACL,MAAM,EAAE,KAAK;wBACb,QAAQ,EAAE,oEAAoE,IAAI,CAAC,UAAU,EAAE;qBAChG,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,MAAM,CAAC,GAAG,MAAM,iBAAiB,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;YACrG,OAAO,wBAAwB,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC;QACxD,CAAC;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,KAAK,GAAG;QACZ,YAAY,EAAE,YAAY;QAC1B,yEAAyE;QACzE,yCAAyC;QACzC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9C,CAAC;IAEF,MAAM,UAAU,GAAsB;QACpC,WAAW;QACX,QAAQ;QACR,KAAK;QACL,qEAAqE;QACrE,8DAA8D;QAC9D,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;QACxC,4EAA4E;QAC5E,2EAA2E;QAC3E,yEAAyE;QACzE,wEAAwE;QACxE,0EAA0E;QAC1E,aAAa,EAAE,IAAI;QACnB,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE;YACpB,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAAE,OAAO,KAAK,CAAC;YACxD,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC;gBAAE,OAAO,KAAK,CAAC;YACtE,IAAI,YAAY;gBAAE,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC7C,IAAI,CAAC,KAAK,aAAa,IAAI,OAAO,CAAC,WAAW,KAAK,KAAK;gBAAE,OAAO,KAAK,CAAC;YACvE,OAAO,IAAI,CAAC;QACd,CAAC;QACD,yEAAyE;QACzE,uCAAuC;QACvC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,gBAAgB,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;QAChG,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS;QACrE,wEAAwE;QACxE,oCAAoC;QACpC,aAAa,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,gBAAgB;QAChB,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,gBAAgB;QAChB,cAAc;QACd,eAAe;QACf,WAAW,EAAE,qBAAqB,CAChC,CAAC,MAAM,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,EACjC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,EAC1C,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,EACrE,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CACpE;KACF,CAAC;IACF,MAAM,IAAI,GAAG,IAAI,eAAe,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IAE9D,8EAA8E;IAC9E,wEAAwE;IACxE,2EAA2E;IAC3E,uCAAuC;IACvC,6EAA6E;IAC7E,8EAA8E;IAC9E,wEAAwE;IACxE,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC;IACrF,IAAI,eAAe,GAAkB,IAAI,CAAC;IAC1C,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAC1B,IAAI,QAAQ,EAAE,CAAC;QACb,iBAAiB,GAAG,SAAS,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,KAAK,CAAC;QAC5D,eAAe,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,qCAAqC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAC/G,CAAC;IAED,2EAA2E;IAC3E,6EAA6E;IAC7E,0EAA0E;IAC1E,8CAA8C;IAC9C,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,GAAG,CAAC;IAErC,IAAI,MAAsB,CAAC;IAC3B,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAEzC,2EAA2E;QAC3E,2EAA2E;QAC3E,6EAA6E;QAC7E,uEAAuE;QACvE,gEAAgE;QAChE,IAAI,OAAO,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAC1D,MAAM,MAAM,GAAG,aAAa,CAAC,WAAW,CAAC,IAAI,SAAS,CAAC;YACvD,IAAI,IAAI,GAAG,CAAC,CAAC;YACb,SAAS,CAAC;gBACR,wEAAwE;gBACxE,8DAA8D;gBAC9D,mEAAmE;gBACnE,IAAI,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC9E,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,KAAK,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;gBAC1D,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,oCAAoC,MAAM,IAAI,gBAAgB,gBAAgB,CAAC,CAC3F,CAAC;gBACF,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC;oBACrC,WAAW;oBACX,MAAM;oBACN,aAAa,EAAE,mBAAmB,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;oBAC5D,KAAK;oBACL,SAAS,EAAE,WAAW;oBACtB,iBAAiB;oBACjB,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;iBACtD,CAAC,CAAC;gBACH,IAAI,KAAK,CAAC,MAAM;oBAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBAErE,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CACT,eAAe,iBAAiB,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9F,CACF,CAAC;oBACF,MAAM;gBACR,CAAC;gBACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBAC5D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;oBACnF,MAAM;gBACR,CAAC;gBAED,mBAAmB;gBACnB,IAAI,EAAE,CAAC;gBACP,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,KAAK,CAAC,MAAM,sBAAsB,IAAI,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC;gBAC3F,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;oBACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,yBAAyB,QAAQ,gCAAgC,CAAC,CAAC,CAAC;oBAC1F,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;oBAC9F,MAAM;gBACR,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,CAAC;gBAClE,MAAM,cAAc,GAAG,IAAI,eAAe,CACxC,EAAE,GAAG,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,EACvC,QAAQ,EACR,KAAK,CACN,CAAC;gBACF,MAAM,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,GAAG,WAAW,OAAO,KAAK,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC,CAAC;gBACnF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC,CAAC;oBACtF,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,mEAAmE;QACnE,sEAAsE;QACtE,0EAA0E;QAC1E,MAAM,OAAO,GAAmB;YAC9B,OAAO,EAAE,KAAK;YACd,gBAAgB,EAAE,KAAK;YACvB,KAAK,EAAE,CAAC;YACR,SAAS,EAAE,CAAC;YACZ,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,EAAE;YACX,aAAa,EAAE,EAAE;YACjB,WAAW,EAAE,EAAE;YACf,eAAe,EAAE,CAAC;SACnB,CAAC;QACF,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3B,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;YAAS,CAAC;QACT,IAAI,kBAAkB,KAAK,SAAS;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;;YACvE,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IAC3D,CAAC;IAED,0EAA0E;IAC1E,2EAA2E;IAC3E,IAAI,QAAQ,IAAI,eAAe,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,KAAK,CAAC;QACzD,IAAI,QAAQ,GAAG,iBAAiB,EAAE,CAAC;YACjC,WAAW,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;YAC1C,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,4CAA4C,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAC9G,CACF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,sCAAsC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CACnH,CAAC;QACJ,CAAC;QACD,eAAe,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAE1B,2EAA2E;IAC3E,yEAAyE;IACzE,0EAA0E;IAC1E,IAAI,cAAc,GAAkB,IAAI,CAAC;IACzC,IAAI,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,WAAW,EAAE,CAAC;QACpD,cAAc,GAAG,MAAM,WAAW,CAAC,WAAW,CAC5C,MAAM,EACN,mBAAmB,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAC9C,CAAC;QACF,IAAI,cAAc,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,8FAA8F,CAAC,CAAC,CAAC;QAC5H,CAAC;IACH,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAED,sEAAsE;IACtE,4EAA4E;IAC5E,yEAAyE;IACzE,IAAI,aAAa,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAChE,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,IAAI,QAAQ,CAAC;QACnF,aAAa,CAAC,MAAM,CAAC;YACnB,QAAQ,EAAE,eAAe;YACzB,QAAQ,EAAE,eAAe,CAAC,WAAW,CAAC;YACtC,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,uEAAuE,CAAC,CAAC,CAAC;QACnG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,oEAAoE;IACpE,2EAA2E;IAC3E,oEAAoE;IACpE,qBAAqB;IACrB,IAAI,CAAC;QACH,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC;QAC9E,kBAAkB,CAAC;YACjB,WAAW;YACX,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,UAAU,EAAE,MAAM,CAAC,eAAe;YAClC,OAAO,EAAE,KAAK,CAAC,EAAE;YACjB,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,kCAAkC;IACpC,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;QACxC,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CACZ;YACE,GAAG,IAAI;YACP,WAAW,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;YACvC,GAAG,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtD,GAAG,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtE,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;IACJ,CAAC;SAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,kBAAkB,MAAM,CAAC,KAAK,qCAAqC,CAAC,CAAC,CAAC;QAC9F,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,4BAA4B,cAAc,wCAAwC,CAAC,CAC/F,CAAC;QACJ,CAAC;QACD,IAAI,oBAAoB,EAAE,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,aAAa,EAAE,uCAAuC,CAAC,CAAC,CAAC;QAClG,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CACP,yBAAyB,MAAM,CAAC,KAAK,mBAAmB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC,oBAAoB,MAAM,CAAC,QAAQ,IAAI,CAClI,CACF,CAAC;QACF,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,oBAAoB,EAAE,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,iBAAiB,aAAa,EAAE,mDAAmD,CAAC,CAC/F,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `uap self-harness` — CLI for the self-improving harness (arXiv:2606.09498).
|
|
3
|
+
*
|
|
4
|
+
* P1 ships `analyze`: read-only weakness mining + heuristic Mod proposal from an
|
|
5
|
+
* existing paired-bench `records.jsonl`. The full validate+apply loop (`run`)
|
|
6
|
+
* builds on the orchestrator in src/self-harness/orchestrator.ts.
|
|
7
|
+
*/
|
|
8
|
+
export interface SelfHarnessOptions {
|
|
9
|
+
records?: string;
|
|
10
|
+
env?: string;
|
|
11
|
+
json?: boolean;
|
|
12
|
+
/** Path to a JSON transfer store to seed proposals from (cross-model, P3). */
|
|
13
|
+
transfer?: string;
|
|
14
|
+
/** HALO traces.jsonl to mine (mine-prod). */
|
|
15
|
+
traces?: string;
|
|
16
|
+
/** Proxy journal unit to mine, e.g. uap-anthropic-proxy.service (mine-prod). */
|
|
17
|
+
unit?: string;
|
|
18
|
+
/** journalctl --since window for proxy-log mining (mine-prod). */
|
|
19
|
+
since?: string;
|
|
20
|
+
/** Model family stamp for online mining. */
|
|
21
|
+
model?: string;
|
|
22
|
+
pending?: string;
|
|
23
|
+
}
|
|
24
|
+
export declare function selfHarnessAnalyze(options?: SelfHarnessOptions): Promise<void>;
|
|
25
|
+
export declare function selfHarnessTransfer(options?: SelfHarnessOptions): Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Online mining from production traces -> propose -> ENQUEUE for gated
|
|
28
|
+
* validation. Never applies anything; prod-mined proposals always go through the
|
|
29
|
+
* pending queue + a human/auto gate.
|
|
30
|
+
*/
|
|
31
|
+
export declare function selfHarnessMineProd(options?: SelfHarnessOptions): Promise<void>;
|
|
32
|
+
export declare function selfHarnessPending(options?: SelfHarnessOptions): Promise<void>;
|
|
33
|
+
/** Ablation-prune stale / no-longer-paying-off transfer + pending entries. */
|
|
34
|
+
export declare function selfHarnessPrune(options?: SelfHarnessOptions): Promise<void>;
|
|
35
|
+
export declare function selfHarnessCommand(action: string, options: SelfHarnessOptions): Promise<void>;
|
|
36
|
+
//# sourceMappingURL=self-harness.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"self-harness.d.ts","sourceRoot":"","sources":["../../src/cli/self-harness.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAuBH,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAuBD,wBAAsB,kBAAkB,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuDxF;AAED,wBAAsB,mBAAmB,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAezF;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmDzF;AAED,wBAAsB,kBAAkB,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBxF;AAED,8EAA8E;AAC9E,wBAAsB,gBAAgB,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBtF;AAED,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAQf"}
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `uap self-harness` — CLI for the self-improving harness (arXiv:2606.09498).
|
|
3
|
+
*
|
|
4
|
+
* P1 ships `analyze`: read-only weakness mining + heuristic Mod proposal from an
|
|
5
|
+
* existing paired-bench `records.jsonl`. The full validate+apply loop (`run`)
|
|
6
|
+
* builds on the orchestrator in src/self-harness/orchestrator.ts.
|
|
7
|
+
*/
|
|
8
|
+
import { readFileSync, existsSync } from 'fs';
|
|
9
|
+
import { join } from 'path';
|
|
10
|
+
import { homedir } from 'os';
|
|
11
|
+
import { spawnSync } from 'child_process';
|
|
12
|
+
import chalk from 'chalk';
|
|
13
|
+
import { mineFromRecords } from '../self-harness/mine.js';
|
|
14
|
+
import { heuristicProposer } from '../self-harness/propose.js';
|
|
15
|
+
import { describeMod } from '../self-harness/mods.js';
|
|
16
|
+
import { profileFromEnvFile, emptyProfile, } from '../self-harness/profile.js';
|
|
17
|
+
import { JsonTransferStore, makeTransferProposer, describeEntry, } from '../self-harness/transfer.js';
|
|
18
|
+
const DEFAULT_TRANSFER = join(homedir(), '.uap', 'self-harness', 'transfer.json');
|
|
19
|
+
const DEFAULT_PENDING = join(homedir(), '.uap', 'self-harness', 'pending.json');
|
|
20
|
+
const DEFAULT_HALO = join(homedir(), '.uap', 'halo', 'traces.jsonl');
|
|
21
|
+
function loadRecords(path) {
|
|
22
|
+
let file = path;
|
|
23
|
+
if (existsSync(path) && !path.endsWith('.jsonl'))
|
|
24
|
+
file = join(path, 'records.jsonl');
|
|
25
|
+
if (!existsSync(file))
|
|
26
|
+
throw new Error(`records not found: ${file}`);
|
|
27
|
+
const records = [];
|
|
28
|
+
let model = 'unknown';
|
|
29
|
+
for (const line of readFileSync(file, 'utf-8').split('\n')) {
|
|
30
|
+
if (!line.trim())
|
|
31
|
+
continue;
|
|
32
|
+
const r = JSON.parse(line);
|
|
33
|
+
if (r.model)
|
|
34
|
+
model = r.model;
|
|
35
|
+
records.push(r);
|
|
36
|
+
}
|
|
37
|
+
return { records, model };
|
|
38
|
+
}
|
|
39
|
+
const DEFAULT_ENV = join(homedir(), '.config', 'uap', 'llama-server.env');
|
|
40
|
+
export async function selfHarnessAnalyze(options = {}) {
|
|
41
|
+
if (!options.records) {
|
|
42
|
+
console.error('Error: --records <dir|records.jsonl> is required.');
|
|
43
|
+
process.exitCode = 1;
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
const { records, model } = loadRecords(options.records);
|
|
47
|
+
const weaknesses = mineFromRecords(records, { model });
|
|
48
|
+
const envPath = options.env || DEFAULT_ENV;
|
|
49
|
+
const profile = existsSync(envPath) ? profileFromEnvFile(envPath) : emptyProfile();
|
|
50
|
+
// Seed proposals from the cross-model transfer store when available (P3).
|
|
51
|
+
const transferPath = options.transfer || DEFAULT_TRANSFER;
|
|
52
|
+
let proposer = heuristicProposer;
|
|
53
|
+
let transferActive = false;
|
|
54
|
+
if (existsSync(transferPath)) {
|
|
55
|
+
proposer = makeTransferProposer(new JsonTransferStore(transferPath), heuristicProposer);
|
|
56
|
+
transferActive = true;
|
|
57
|
+
}
|
|
58
|
+
const proposed = proposer.propose(weaknesses, profile);
|
|
59
|
+
if (options.json) {
|
|
60
|
+
console.log(JSON.stringify({ model, runs: records.length, weaknesses, proposed }, null, 2));
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
console.log(chalk.bold(`\nSelf-Harness — weakness analysis`));
|
|
64
|
+
console.log(chalk.dim(` model=${model} runs=${records.length} profile=${existsSync(envPath) ? envPath : '(none)'}`));
|
|
65
|
+
console.log(chalk.bold('\nWeaknesses (ranked by frequency × impact):'));
|
|
66
|
+
if (weaknesses.length === 0) {
|
|
67
|
+
console.log(' no failures mined — nothing to propose.');
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
for (const w of weaknesses) {
|
|
71
|
+
console.log(` ${chalk.yellow(w.kind.padEnd(24))} ×${w.frequency} ${w.affectedTasks.length} task(s) ${chalk.dim('sig=' + w.signature)}`);
|
|
72
|
+
console.log(` ${chalk.dim(w.hypothesis)}`);
|
|
73
|
+
}
|
|
74
|
+
console.log(chalk.bold(`\nProposed Mods (${proposer.id}, minimal):`) +
|
|
75
|
+
(transferActive ? chalk.dim(` [transfer store: ${transferPath}]`) : ''));
|
|
76
|
+
if (proposed.length === 0) {
|
|
77
|
+
console.log(chalk.dim(' (none — no current profile value to scale, or no mapped heuristic)'));
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
for (const m of proposed)
|
|
81
|
+
console.log(` • ${describeMod(m)}`);
|
|
82
|
+
}
|
|
83
|
+
console.log(chalk.dim(`\n analyze is read-only (mine+propose). Validation + apply is the orchestrator (P1+).`));
|
|
84
|
+
}
|
|
85
|
+
export async function selfHarnessTransfer(options = {}) {
|
|
86
|
+
const path = options.transfer || DEFAULT_TRANSFER;
|
|
87
|
+
if (!existsSync(path)) {
|
|
88
|
+
console.log(`No transfer store at ${path} yet (it fills as self-harness accepts Mods).`);
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
const store = new JsonTransferStore(path);
|
|
92
|
+
const all = store.all();
|
|
93
|
+
if (options.json) {
|
|
94
|
+
console.log(JSON.stringify(all, null, 2));
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
console.log(chalk.bold(`\nSelf-Harness transfer store — ${all.length} entr(y/ies)`));
|
|
98
|
+
console.log(chalk.dim(` ${path}`));
|
|
99
|
+
for (const e of all)
|
|
100
|
+
console.log(` ${e.accepted ? chalk.green('✓') : chalk.red('✗')} ${describeEntry(e)}`);
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Online mining from production traces -> propose -> ENQUEUE for gated
|
|
104
|
+
* validation. Never applies anything; prod-mined proposals always go through the
|
|
105
|
+
* pending queue + a human/auto gate.
|
|
106
|
+
*/
|
|
107
|
+
export async function selfHarnessMineProd(options = {}) {
|
|
108
|
+
const { mineFromHaloSpans, mineFromProxyLogLines } = await import('../self-harness/trace-mine.js');
|
|
109
|
+
const { PendingQueue } = await import('../self-harness/pending.js');
|
|
110
|
+
const model = options.model || 'qwen36-35b-a3b-iq4xs';
|
|
111
|
+
const weaknesses = [];
|
|
112
|
+
// Source 1: HALO spans (deliver pipeline).
|
|
113
|
+
const tracePath = options.traces || DEFAULT_HALO;
|
|
114
|
+
if (existsSync(tracePath)) {
|
|
115
|
+
const spans = readFileSync(tracePath, 'utf-8')
|
|
116
|
+
.split('\n')
|
|
117
|
+
.filter((l) => l.trim())
|
|
118
|
+
.map((l) => JSON.parse(l));
|
|
119
|
+
weaknesses.push(...mineFromHaloSpans(spans, { model }));
|
|
120
|
+
}
|
|
121
|
+
// Source 2: proxy journal (claude-local proxy path) — where path-garbling shows.
|
|
122
|
+
if (options.unit) {
|
|
123
|
+
const since = options.since || '24 hours ago';
|
|
124
|
+
const out = spawnSync('journalctl', ['--user', '-u', options.unit, '--since', since, '--no-pager', '-o', 'cat'], { encoding: 'utf-8' });
|
|
125
|
+
if (out.stdout)
|
|
126
|
+
weaknesses.push(...mineFromProxyLogLines(out.stdout.split('\n'), { model }));
|
|
127
|
+
}
|
|
128
|
+
// Propose (seeded from transfer when present) and ENQUEUE — no apply.
|
|
129
|
+
const transferPath = options.transfer || DEFAULT_TRANSFER;
|
|
130
|
+
let proposer = heuristicProposer;
|
|
131
|
+
if (existsSync(transferPath))
|
|
132
|
+
proposer = makeTransferProposer(new JsonTransferStore(transferPath), heuristicProposer);
|
|
133
|
+
const queue = new PendingQueue(options.pending || DEFAULT_PENDING);
|
|
134
|
+
const proposed = proposer.propose(weaknesses, emptyProfile());
|
|
135
|
+
let enqueued = 0;
|
|
136
|
+
const now = new Date().toISOString();
|
|
137
|
+
for (const w of weaknesses) {
|
|
138
|
+
for (const mod of proposer.propose([w], emptyProfile())) {
|
|
139
|
+
queue.enqueue({
|
|
140
|
+
id: `${w.signature}:${JSON.stringify(mod).length}:${enqueued}`,
|
|
141
|
+
signature: w.signature, kind: w.kind, model, mod,
|
|
142
|
+
source: options.unit ? 'proxy-log+halo' : 'halo',
|
|
143
|
+
frequency: w.frequency, createdAt: now,
|
|
144
|
+
});
|
|
145
|
+
enqueued += 1;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
if (options.json) {
|
|
149
|
+
console.log(JSON.stringify({ model, weaknesses, proposed, enqueued }, null, 2));
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
console.log(chalk.bold(`\nSelf-Harness — online prod mining (model=${model})`));
|
|
153
|
+
console.log(` mined ${weaknesses.length} weakness(es): ${weaknesses.map((w) => `${w.kind}×${w.frequency}`).join(', ') || '(none)'}`);
|
|
154
|
+
console.log(` enqueued ${enqueued} proposal(s) → ${options.pending || DEFAULT_PENDING}`);
|
|
155
|
+
console.log(chalk.dim(' NOTHING applied. Review with `uap self-harness pending`; promotion needs validation + gate.'));
|
|
156
|
+
}
|
|
157
|
+
export async function selfHarnessPending(options = {}) {
|
|
158
|
+
const { PendingQueue } = await import('../self-harness/pending.js');
|
|
159
|
+
const path = options.pending || DEFAULT_PENDING;
|
|
160
|
+
if (!existsSync(path)) {
|
|
161
|
+
console.log(`No pending queue at ${path} (run \`uap self-harness mine-prod\` first).`);
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
const { describeMod } = await import('../self-harness/mods.js');
|
|
165
|
+
const items = new PendingQueue(path).list();
|
|
166
|
+
if (options.json) {
|
|
167
|
+
console.log(JSON.stringify(items, null, 2));
|
|
168
|
+
return;
|
|
169
|
+
}
|
|
170
|
+
console.log(chalk.bold(`\nSelf-Harness pending proposals — ${items.length}`));
|
|
171
|
+
console.log(chalk.dim(` ${path}`));
|
|
172
|
+
for (const it of items) {
|
|
173
|
+
const gate = it.gate === 'human' ? chalk.yellow('[human-gate]') : chalk.cyan('[auto-after-validation]');
|
|
174
|
+
console.log(` ${it.status === 'pending' ? '○' : '●'} ${gate} [${it.kind}×${it.frequency}] ${describeMod(it.mod)} ${chalk.dim('(' + it.source + ')')}`);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
/** Ablation-prune stale / no-longer-paying-off transfer + pending entries. */
|
|
178
|
+
export async function selfHarnessPrune(options = {}) {
|
|
179
|
+
const { JsonTransferStore } = await import('../self-harness/transfer.js');
|
|
180
|
+
const { PendingQueue } = await import('../self-harness/pending.js');
|
|
181
|
+
const txPath = options.transfer || DEFAULT_TRANSFER;
|
|
182
|
+
const pqPath = options.pending || DEFAULT_PENDING;
|
|
183
|
+
let txRemoved = 0;
|
|
184
|
+
let txKept = 0;
|
|
185
|
+
if (existsSync(txPath)) {
|
|
186
|
+
const r = new JsonTransferStore(txPath).prune();
|
|
187
|
+
txRemoved = r.removed.length;
|
|
188
|
+
txKept = r.kept;
|
|
189
|
+
}
|
|
190
|
+
const pqRemoved = existsSync(pqPath) ? new PendingQueue(pqPath).prune().length : 0;
|
|
191
|
+
if (options.json) {
|
|
192
|
+
console.log(JSON.stringify({ transfer: { removed: txRemoved, kept: txKept }, pending: { removed: pqRemoved } }, null, 2));
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
195
|
+
console.log(chalk.bold('\nSelf-Harness — ablation prune'));
|
|
196
|
+
console.log(` transfer store: removed ${txRemoved} stale/no-longer-paying entr(y/ies), ${txKept} kept`);
|
|
197
|
+
console.log(` pending queue: removed ${pqRemoved} stale entr(y/ies)`);
|
|
198
|
+
}
|
|
199
|
+
export async function selfHarnessCommand(action, options) {
|
|
200
|
+
if (action === 'analyze')
|
|
201
|
+
return selfHarnessAnalyze(options);
|
|
202
|
+
if (action === 'transfer')
|
|
203
|
+
return selfHarnessTransfer(options);
|
|
204
|
+
if (action === 'mine-prod')
|
|
205
|
+
return selfHarnessMineProd(options);
|
|
206
|
+
if (action === 'pending')
|
|
207
|
+
return selfHarnessPending(options);
|
|
208
|
+
if (action === 'prune')
|
|
209
|
+
return selfHarnessPrune(options);
|
|
210
|
+
console.error(`Unknown self-harness action: ${action}`);
|
|
211
|
+
process.exitCode = 1;
|
|
212
|
+
}
|
|
213
|
+
//# sourceMappingURL=self-harness.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"self-harness.js","sourceRoot":"","sources":["../../src/cli/self-harness.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/mcp-router/executor/client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAgBnE,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,eAAe,CAMnB;IACJ,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAkB;IAChC,wDAAwD;IACxD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,oEAAoE;IACpE,OAAO,CAAC,WAAW,CAAuB;gBAE9B,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe;IAMjD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA8C9B,OAAO,CAAC,UAAU;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/mcp-router/executor/client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAgBnE,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,eAAe,CAMnB;IACJ,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAkB;IAChC,wDAAwD;IACxD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,oEAAoE;IACpE,OAAO,CAAC,WAAW,CAAuB;gBAE9B,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe;IAMjD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA8C9B,OAAO,CAAC,UAAU;YA0CJ,WAAW;IAmDzB;;;OAGG;YACW,eAAe;IAsC7B;;OAEG;YACW,cAAc;YA4Bd,UAAU;IAqBlB,SAAS,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAsB5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAatF,OAAO,CAAC,OAAO;IAYf,UAAU,IAAI,IAAI;IAmBlB,IAAI,WAAW,IAAI,OAAO,CAEzB;CACF;AAGD,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAgC;IAC/C,4EAA4E;IAC5E,OAAO,CAAC,WAAW,CAAc;gBAErB,OAAO,CAAC,EAAE;QAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;IAO1E,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,SAAS;IAkBjE;;;OAGG;IACH,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAI7C;;OAEG;IACH,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAI1C,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IASpC,mBAAmB,IAAI,MAAM,EAAE;CAKhC"}
|
|
@@ -82,7 +82,16 @@ export class McpClient {
|
|
|
82
82
|
}
|
|
83
83
|
}
|
|
84
84
|
catch (e) {
|
|
85
|
-
//
|
|
85
|
+
// Non-JSON lines are normal (some servers log to stdout) and are safely
|
|
86
|
+
// ignored. But a line that LOOKS like a JSON-RPC frame yet fails to parse
|
|
87
|
+
// is a real problem — a truncated/corrupted response means the matching
|
|
88
|
+
// pending request will silently hang until its timeout, surfacing as a
|
|
89
|
+
// spurious failure and retry. Surface it so it is diagnosable.
|
|
90
|
+
const looksLikeFrame = line.trimStart().startsWith('{');
|
|
91
|
+
if (looksLikeFrame) {
|
|
92
|
+
console.error(`[${this.serverName}] dropped unparseable JSON-RPC line ` +
|
|
93
|
+
`(${line.length} chars) — a pending request may hang until timeout:`, line.slice(0, 200));
|
|
94
|
+
}
|
|
86
95
|
}
|
|
87
96
|
}
|
|
88
97
|
}
|
|
@@ -104,7 +113,12 @@ export class McpClient {
|
|
|
104
113
|
return new Promise((resolve, reject) => {
|
|
105
114
|
const timeout = setTimeout(() => {
|
|
106
115
|
this.pendingRequests.delete(id);
|
|
107
|
-
|
|
116
|
+
// Tag timeouts distinctly so callers can distinguish "downstream too
|
|
117
|
+
// slow / dropped response" from a genuine tool error and avoid blind
|
|
118
|
+
// retry loops on a server that is simply not responding.
|
|
119
|
+
const err = new Error(`Request timeout for ${method}`);
|
|
120
|
+
err.code = 'MCP_REQUEST_TIMEOUT';
|
|
121
|
+
reject(err);
|
|
108
122
|
}, 30000);
|
|
109
123
|
this.pendingRequests.set(id, {
|
|
110
124
|
resolve: (value) => {
|