loopforge 3.8.2 → 3.8.3
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/README.md +145 -123
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +121 -21
- package/dist/cli.js.map +1 -1
- package/dist/enforcement-gate.d.ts +7 -1
- package/dist/enforcement-gate.d.ts.map +1 -1
- package/dist/enforcement-gate.js +140 -34
- package/dist/enforcement-gate.js.map +1 -1
- package/dist/evidence-provider.d.ts +44 -2
- package/dist/evidence-provider.d.ts.map +1 -1
- package/dist/evidence-provider.js +125 -23
- package/dist/evidence-provider.js.map +1 -1
- package/dist/loop-store.d.ts.map +1 -1
- package/dist/loop-store.js +44 -7
- package/dist/loop-store.js.map +1 -1
- package/dist/mcp/round-lifecycle.d.ts +28 -1
- package/dist/mcp/round-lifecycle.d.ts.map +1 -1
- package/dist/mcp/round-lifecycle.js +89 -14
- package/dist/mcp/round-lifecycle.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +7 -0
- package/dist/mcp/server.js.map +1 -1
- package/dist/policy.d.ts +13 -3
- package/dist/policy.d.ts.map +1 -1
- package/dist/policy.js +49 -10
- package/dist/policy.js.map +1 -1
- package/dist/round-coordinator.d.ts +34 -0
- package/dist/round-coordinator.d.ts.map +1 -1
- package/dist/round-coordinator.js +87 -9
- package/dist/round-coordinator.js.map +1 -1
- package/dist/round-driver.d.ts +2 -0
- package/dist/round-driver.d.ts.map +1 -1
- package/dist/round-driver.js +1 -0
- package/dist/round-driver.js.map +1 -1
- package/dist/round-transaction.d.ts +2 -0
- package/dist/round-transaction.d.ts.map +1 -1
- package/dist/round-transaction.js +1 -0
- package/dist/round-transaction.js.map +1 -1
- package/dist/self-eval.d.ts +10 -0
- package/dist/self-eval.d.ts.map +1 -1
- package/dist/self-eval.js +14 -0
- package/dist/self-eval.js.map +1 -1
- package/dist/verification-gate.d.ts +16 -1
- package/dist/verification-gate.d.ts.map +1 -1
- package/dist/verification-gate.js +66 -25
- package/dist/verification-gate.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +67 -67
- package/skills/perception/SKILL.md +317 -264
|
@@ -94,8 +94,17 @@ export function deriveObservedCapability(observations, configured) {
|
|
|
94
94
|
}
|
|
95
95
|
/** v3.8: Human-readable capability warnings for start/resume/status. A loop
|
|
96
96
|
* with no machine verification can still run — its success claims are simply
|
|
97
|
-
* recorded as `insufficient` instead of `verified`.
|
|
98
|
-
|
|
97
|
+
* recorded as `insufficient` instead of `verified`.
|
|
98
|
+
*
|
|
99
|
+
* v3.8.2: `policy` is read for the per-command entrypoint warning. The three
|
|
100
|
+
* checks above it speak only when capability is ABSENT (no provider, no
|
|
101
|
+
* command, a dead provider); this one speaks when a command IS configured but
|
|
102
|
+
* its true entrypoint is unobservable — the case where a reader would
|
|
103
|
+
* otherwise believe the runtime is watching files it cannot see. Derived from
|
|
104
|
+
* policy alone (no probing): the predicate is the same `isPackageManager-
|
|
105
|
+
* Command` the entrypoint resolver uses, so the warning and the check that
|
|
106
|
+
* would (not) fire can never disagree. */
|
|
107
|
+
export function capabilityWarnings(configured, policy, observed) {
|
|
99
108
|
const warnings = [];
|
|
100
109
|
if (!configured.observationConfigured) {
|
|
101
110
|
warnings.push("No evidence provider is configured — the runtime can observe nothing " +
|
|
@@ -106,6 +115,22 @@ export function capabilityWarnings(configured, observed) {
|
|
|
106
115
|
"cannot be machine-verified; contract closure will require an explicit " +
|
|
107
116
|
"blocked outcome.");
|
|
108
117
|
}
|
|
118
|
+
// v3.8.2: a configured command whose harness is named in package.json. The
|
|
119
|
+
// entrypoint set for `npm test` is ["package.json"], so the test files the
|
|
120
|
+
// script actually runs are never in it: editing one is a warning, not a
|
|
121
|
+
// machine fact. Stated as fact + consequence — the operator owns the policy,
|
|
122
|
+
// so this never reads as an instruction the Agent should carry out.
|
|
123
|
+
for (const command of policy.evidence.commands) {
|
|
124
|
+
if (command.enabled !== true)
|
|
125
|
+
continue;
|
|
126
|
+
if (!isPackageManagerCommand(command.executable))
|
|
127
|
+
continue;
|
|
128
|
+
warnings.push(`Command "${command.name}" runs through a package manager — what it ` +
|
|
129
|
+
"actually executes is named in package.json, so the scripts or test " +
|
|
130
|
+
"files it invokes are not entrypoint-protected: changing one in the " +
|
|
131
|
+
"same round is recorded as a warning and does not invalidate the " +
|
|
132
|
+
"command's result.");
|
|
133
|
+
}
|
|
109
134
|
if (observed) {
|
|
110
135
|
const dead = observed.providers.filter((provider) => provider.status === "unavailable" || provider.status === "error");
|
|
111
136
|
if (dead.length > 0) {
|
|
@@ -141,7 +166,7 @@ export function deriveEvidenceCapability(policy, observations = []) {
|
|
|
141
166
|
ready: command.enabled && (command.phase === "after" || command.phase === "both"),
|
|
142
167
|
})),
|
|
143
168
|
contractVerificationAvailable: configured.contractVerificationAvailable,
|
|
144
|
-
warnings: capabilityWarnings(configured, observed),
|
|
169
|
+
warnings: capabilityWarnings(configured, policy, observed),
|
|
145
170
|
};
|
|
146
171
|
}
|
|
147
172
|
// ── EvidenceCollector ──────────────────────────────────────────────────────
|
|
@@ -296,14 +321,12 @@ function isPackageManagerCommand(executable) {
|
|
|
296
321
|
const base = executable.split(/[\\/]/).pop() ?? executable;
|
|
297
322
|
return PACKAGE_MANAGER_EXECUTABLES.has(base.trim().toLowerCase());
|
|
298
323
|
}
|
|
299
|
-
/** The workspace
|
|
300
|
-
*
|
|
301
|
-
*
|
|
302
|
-
*
|
|
303
|
-
*
|
|
304
|
-
|
|
305
|
-
// v3.3.1: entrypoint containment uses the shared workspace check.
|
|
306
|
-
const workspace = process.cwd();
|
|
324
|
+
/** The candidate workspace paths a command's execution depends on: the script
|
|
325
|
+
* it names on its own command line, plus package.json when a package manager
|
|
326
|
+
* is what runs it. Whether each candidate EXISTS is the caller's question —
|
|
327
|
+
* `resolveEntrypointFiles` keeps only the ones that do, while
|
|
328
|
+
* `captureEntrypointTrust` must also record the absent ones. */
|
|
329
|
+
function entrypointCandidates(executable, args) {
|
|
307
330
|
const candidates = [...args];
|
|
308
331
|
if (executable.includes("/") || executable.includes("\\")) {
|
|
309
332
|
candidates.unshift(executable);
|
|
@@ -316,8 +339,96 @@ export function resolveEntrypointFiles(executable, args, cwd) {
|
|
|
316
339
|
// unrelated the file was to what actually executed.
|
|
317
340
|
if (isPackageManagerCommand(executable))
|
|
318
341
|
candidates.push("package.json");
|
|
342
|
+
return candidates;
|
|
343
|
+
}
|
|
344
|
+
/** v3.8.3: The content fingerprint of one workspace file — `"<mode>:<sha256>"`,
|
|
345
|
+
* or the `"missing"` sentinel when it cannot be read. ONE definition, shared
|
|
346
|
+
* by the git provider's per-file map and the entrypoint trust baseline, so a
|
|
347
|
+
* value captured at round start is literally comparable to one captured later
|
|
348
|
+
* (and to a value inside a git observation). */
|
|
349
|
+
function fileFingerprint(absolutePath) {
|
|
350
|
+
try {
|
|
351
|
+
const stat = statSync(absolutePath);
|
|
352
|
+
const hash = createHash("sha256").update(readFileSync(absolutePath)).digest("hex");
|
|
353
|
+
return `${stat.mode}:${hash}`;
|
|
354
|
+
}
|
|
355
|
+
catch {
|
|
356
|
+
// Deleted files are evidence too. A stable sentinel lets the diff
|
|
357
|
+
// distinguish deleted/restored transitions across a round.
|
|
358
|
+
return "missing";
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
/** v3.8.3: The round-start state of every enabled after-capable command's
|
|
362
|
+
* entrypoint files — the TRUSTED baseline the tamper check compares against.
|
|
363
|
+
*
|
|
364
|
+
* Taken from the filesystem, not from a git observation: `git diff` lists
|
|
365
|
+
* only tracked-and-dirty files, so an entrypoint that is gitignored would be
|
|
366
|
+
* absent from BOTH sides of a git-based comparison and a script created this
|
|
367
|
+
* round would read as "unchanged". Absent candidates are recorded as
|
|
368
|
+
* `"missing"` rather than dropped — that absence is exactly what makes
|
|
369
|
+
* "created during this round" detectable.
|
|
370
|
+
*
|
|
371
|
+
* Captured when a round is PREPARED, never when tampering is detected: a
|
|
372
|
+
* baseline written at detection time could never catch its own first
|
|
373
|
+
* occurrence. */
|
|
374
|
+
export function captureEntrypointTrust(policy, workspace = process.cwd()) {
|
|
375
|
+
const trust = {};
|
|
376
|
+
for (const command of policy.evidence.commands ?? []) {
|
|
377
|
+
if (command.enabled !== true)
|
|
378
|
+
continue;
|
|
379
|
+
if (command.phase !== "after" && command.phase !== "both")
|
|
380
|
+
continue;
|
|
381
|
+
if (!command.executable)
|
|
382
|
+
continue;
|
|
383
|
+
const cwd = command.cwd ?? workspace;
|
|
384
|
+
for (const candidate of entrypointCandidates(command.executable, command.args ?? [])) {
|
|
385
|
+
try {
|
|
386
|
+
const actual = containInWorkspace(workspace, resolve(cwd, candidate));
|
|
387
|
+
const rel = relative(realpathSync(workspace), actual).split(sep).join("/");
|
|
388
|
+
if (trust[rel] === undefined)
|
|
389
|
+
trust[rel] = fileFingerprint(actual);
|
|
390
|
+
}
|
|
391
|
+
catch {
|
|
392
|
+
// Outside the workspace or unresolvable — not an entrypoint fact.
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
return trust;
|
|
397
|
+
}
|
|
398
|
+
/** v3.8.3: The entrypoint files whose content no longer matches the trusted
|
|
399
|
+
* round-start baseline — the ONE derivation of "this command's script was
|
|
400
|
+
* changed during the round". The delta rule (does the file appear in the
|
|
401
|
+
* round's git change set?) cannot answer this on its own: a gitignored
|
|
402
|
+
* entrypoint is invisible to it, and a baseline re-derived from the current
|
|
403
|
+
* tree would launder the change. This comparison does not read git at all. */
|
|
404
|
+
export function driftedEntrypoints(trust, workspace = process.cwd()) {
|
|
405
|
+
if (!trust)
|
|
406
|
+
return [];
|
|
407
|
+
const drifted = [];
|
|
408
|
+
for (const [file, trusted] of Object.entries(trust)) {
|
|
409
|
+
let current;
|
|
410
|
+
try {
|
|
411
|
+
current = fileFingerprint(containInWorkspace(workspace, resolve(workspace, file)));
|
|
412
|
+
}
|
|
413
|
+
catch {
|
|
414
|
+
current = "missing";
|
|
415
|
+
}
|
|
416
|
+
if (current !== trusted) {
|
|
417
|
+
drifted.push({ file, roundStart: trusted === "missing" ? "absent" : "present" });
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
return drifted.sort((a, b) => a.file.localeCompare(b.file));
|
|
421
|
+
}
|
|
422
|
+
/** The workspace files a command's execution depends on, resolved
|
|
423
|
+
* statically: the script it names on its own command line, plus package.json
|
|
424
|
+
* when a package manager is what runs it. Exported for the pure-function
|
|
425
|
+
* test — spawning a real package manager is not portable (a bare `npm`
|
|
426
|
+
* cannot be spawned without a shell, and the runtime uses `shell: false`). */
|
|
427
|
+
export function resolveEntrypointFiles(executable, args, cwd) {
|
|
428
|
+
// v3.3.1: entrypoint containment uses the shared workspace check.
|
|
429
|
+
const workspace = process.cwd();
|
|
319
430
|
const found = [];
|
|
320
|
-
for (const candidate of
|
|
431
|
+
for (const candidate of entrypointCandidates(executable, args)) {
|
|
321
432
|
try {
|
|
322
433
|
const actual = containInWorkspace(workspace, resolve(cwd, candidate));
|
|
323
434
|
if (statSync(actual).isDirectory())
|
|
@@ -604,17 +715,8 @@ export class GitEvidenceProvider {
|
|
|
604
715
|
// An injectable cwd (tests) must resolve explicitly.
|
|
605
716
|
const fingerprints = {};
|
|
606
717
|
for (const file of files) {
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
const stat = statSync(target);
|
|
610
|
-
const hash = createHash("sha256").update(readFileSync(target)).digest("hex");
|
|
611
|
-
fingerprints[file] = `${stat.mode}:${hash}`;
|
|
612
|
-
}
|
|
613
|
-
catch {
|
|
614
|
-
// Deleted files are evidence too. A stable sentinel lets the diff
|
|
615
|
-
// distinguish deleted/restored transitions across a round.
|
|
616
|
-
fingerprints[file] = "missing";
|
|
617
|
-
}
|
|
718
|
+
const target = isAbsolute(file) ? file : resolve(workspace, file);
|
|
719
|
+
fingerprints[file] = fileFingerprint(target);
|
|
618
720
|
}
|
|
619
721
|
return {
|
|
620
722
|
schemaVersion: 1,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evidence-provider.js","sourceRoot":"","sources":["../src/evidence-provider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"evidence-provider.js","sourceRoot":"","sources":["../src/evidence-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EACL,KAAK,EACL,QAAQ,GACT,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAU/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAE9G,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AA2CpD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAmC,CAAC;AAErE,oEAAoE;AACpE,MAAM,UAAU,wBAAwB,CACtC,IAAY,EACZ,OAAgC;IAEhC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9E,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,IAAY;IACrD,IAAI,IAAI,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IACjC,OAAO,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACxC,CAAC;AAED;;sDAEsD;AACtD,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,OAAO,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACrC,CAAC;AAED,8EAA8E;AAE9E;;;;;;;oEAOoE;AACpE,MAAM,UAAU,wBAAwB,CACtC,WAA+B,EAC/B,eAA2C;IAE3C,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACjD,IAAI,WAAW,CAAC,KAAK,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAChD,IAAI,WAAW,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAClD,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC;IAC3D,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAChE,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AAChE,CAAC;AAED;iEACiE;AACjE,MAAM,UAAU,eAAe,CAC7B,YAA+C;IAE/C,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,UAAU,KAAK,KAAK,CAAC,CAAC;IACjF,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACzC,CAAC;AAED;;iCAEiC;AACjC,MAAM,UAAU,wBAAwB,CACtC,YAA+C,EAC/C,UAAgC;IAEhC,MAAM,MAAM,GAAG,IAAI,GAAG,EAA6B,CAAC;IACpD,MAAM,aAAa,GAAG,IAAI,GAAG,EAA6D,CAAC;IAC3F,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;QACvC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QACvD,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACnC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE;gBAC5C,MAAM,EAAE,WAAW,CAAC,MAAM;gBAC1B,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU;aACxC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO;QACL,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACjD,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,aAAa;SACzD,CAAC,CAAC;QACH,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YAC5C,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAClD,OAAO;gBACL,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,aAAa;gBACrC,UAAU,EAAE,IAAI,EAAE,UAAU,IAAI,OAAO,CAAC,UAAU;aACnD,CAAC;QACJ,CAAC,CAAC;KACH,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;2CAW2C;AAC3C,MAAM,UAAU,kBAAkB,CAChC,UAAgC,EAChC,MAAkB,EAClB,QAA6B;IAE7B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,CAAC,UAAU,CAAC,qBAAqB,EAAE,CAAC;QACtC,QAAQ,CAAC,IAAI,CACX,uEAAuE;YACvE,6DAA6D,CAC9D,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,6BAA6B,EAAE,CAAC;QAC9C,QAAQ,CAAC,IAAI,CACX,uEAAuE;YACvE,wEAAwE;YACxE,kBAAkB,CACnB,CAAC;IACJ,CAAC;IACD,2EAA2E;IAC3E,2EAA2E;IAC3E,wEAAwE;IACxE,6EAA6E;IAC7E,oEAAoE;IACpE,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC/C,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI;YAAE,SAAS;QACvC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,UAAU,CAAC;YAAE,SAAS;QAC3D,QAAQ,CAAC,IAAI,CACX,YAAY,OAAO,CAAC,IAAI,6CAA6C;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,kEAAkE;YAClE,mBAAmB,CACpB,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,CACpC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,aAAa,IAAI,QAAQ,CAAC,MAAM,KAAK,OAAO,CAC/E,CAAC;QACF,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,QAAQ,CAAC,IAAI,CACX,qCAAqC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACjF,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;uEAOuE;AACvE,MAAM,UAAU,wBAAwB,CACtC,MAAkB,EAClB,eAAkD,EAAE;IAEpD,MAAM,UAAU,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,wBAAwB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IACpE,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAC9B,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAU,CAAC,CACtF,CAAC;IACF,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACjD,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,SAAS,EAAE,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC;YACpD,MAAM,EAAE,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,aAAa;SACnE,CAAC,CAAC;QACH,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC9C,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,KAAK,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,OAAO,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,CAAC;SAClF,CAAC,CAAC;QACH,6BAA6B,EAAE,UAAU,CAAC,6BAA6B;QACvE,QAAQ,EAAE,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC;KAC3D,CAAC;AACJ,CAAC;AAED,8EAA8E;AAE9E;;;;;;2BAM2B;AAC3B,SAAS,oBAAoB,CAAC,IAAY;IACxC,OAAO;QACL,IAAI;QACJ,IAAI,EAAE,QAAQ;QACd,OAAO,CAAC,OAAgC;YACtC,OAAO,oBAAoB,CACzB,IAAI,EACJ,QAAQ,EACR,OAAO,EAAE,KAAK,IAAI,OAAO,EACzB,IAAI,CAAC,GAAG,EAAE,EACV,aAAa,EACb,qEAAqE,CACtE,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED;kEACkE;AAClE,SAAS,oBAAoB,CAC3B,UAAkB,EAClB,IAAgC,EAChC,KAAyB,EACzB,SAAiB,EACjB,MAAyB,EACzB,MAAc;IAEd,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,UAAU;QACV,IAAI;QACJ,KAAK;QACL,SAAS;QACT,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;QACtB,MAAM;QACN,KAAK,EAAE,EAAE;QACT,IAAI,EAAE,EAAE,MAAM,EAAE;KACK,CAAC;AAC1B,CAAC;AAED;;;;;sEAKsE;AACtE,MAAM,OAAO,iBAAiB;IACR;IAApB,YAAoB,SAA6B;QAA7B,cAAS,GAAT,SAAS,CAAoB;IAAG,CAAC;IAErD;;;;iBAIa;IACb,MAAM,CAAC,iBAAiB,CAAC,aAAuB;QAC9C,MAAM,SAAS,GAAuB,aAAa;aAChD,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;QAChF,OAAO,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAED,mEAAmE;IACnE,MAAM,CAAC,UAAU;QACf,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC,QAAQ,CAAC;QACpC,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;YACnD,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC;YAC7E,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,SAAS,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC;QAC/E,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,OAAO,EAAE,OAAO;gBAAE,SAAS,CAAC,IAAI,CAAC,IAAI,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7E,CAAC;QACD,OAAO,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAED,8EAA8E;IAC9E,KAAK,CAAC,YAAY,CAAC,UAAkC,EAAE;QACrD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,SAAS,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;QACvE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;YACrD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;YACzC,IAAI,KAAgD,CAAC;YACrD,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;oBAC/C,MAAM,EAAE,UAAU,CAAC,MAAM;oBACzB,SAAS;oBACT,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,KAAK;iBACN,CAAC,CAAC,CAAC;gBACJ,MAAM,WAAW,GAAG,SAAS,GAAG,CAAC;oBAC/B,CAAC,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC;wBACjB,OAAO;wBACP,IAAI,OAAO,CAA4B,CAAC,WAAW,EAAE,EAAE;4BACrD,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gCACtB,QAAQ,GAAG,IAAI,CAAC;gCAChB,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,qCAAqC,SAAS,IAAI,CAAC,CAAC,CAAC;gCAChF,WAAW,CAAC,IAAI,CAAC,CAAC;4BACpB,CAAC,EAAE,SAAS,CAAC,CAAC;wBAChB,CAAC,CAAC;qBACH,CAAC;oBACJ,CAAC,CAAC,MAAM,OAAO,CAAC;gBAElB,IAAI,QAAQ,EAAE,CAAC;oBACb,aAAa,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;oBAC/F,QAAQ,CAAC,2BAA2B,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;oBAC9E,OAAO,oBAAoB,CACzB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EACzD,qBAAqB,SAAS,IAAI,CACnC,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,aAAa,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;oBACnG,OAAO,oBAAoB,CACzB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAC7D,kCAAkC,CACnC,CAAC;gBACJ,CAAC;gBACD,aAAa,CAAC,cAAc,CAC1B,QAAQ,CAAC,IAAI,EACb,WAAW,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,EAC1D,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EACtB,OAAO,CAAC,MAAM,CACf,CAAC;gBACF,OAAO,WAAW,CAAC;YACrB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,aAAa,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC/F,QAAQ,CAAC,yBAAyB,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACvF,OAAO,oBAAoB,CACzB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CACvE,CAAC;YACJ,CAAC;oBAAS,CAAC;gBACT,IAAI,KAAK;oBAAE,YAAY,CAAC,KAAK,CAAC,CAAC;YACjC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;CACF;AAED,SAAS,UAAU,CAAC,UAA8B;IAChD,yEAAyE;IACzE,qEAAqE;IACrE,yEAAyE;IACzE,oDAAoD;IACpD,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,IAAI,GAAG,CAAC,CAAC;IACpE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;8EAM8E;AAC9E;;;kCAGkC;AAClC,MAAM,2BAA2B,GAAG,IAAI,GAAG,CAAC;IAC1C,KAAK,EAAE,SAAS,EAAE,SAAS;IAC3B,KAAK,EAAE,SAAS,EAAE,SAAS;IAC3B,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS;IACjD,KAAK,EAAE,MAAM;CACd,CAAC,CAAC;AAEH,SAAS,uBAAuB,CAAC,UAAkB;IACjD,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,UAAU,CAAC;IAC3D,OAAO,2BAA2B,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;AACpE,CAAC;AAED;;;;iEAIiE;AACjE,SAAS,oBAAoB,CAAC,UAAkB,EAAE,IAAc;IAC9D,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IAC7B,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1D,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACjC,CAAC;IACD,mEAAmE;IACnE,2EAA2E;IAC3E,6EAA6E;IAC7E,4EAA4E;IAC5E,0EAA0E;IAC1E,oDAAoD;IACpD,IAAI,uBAAuB,CAAC,UAAU,CAAC;QAAE,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACzE,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;iDAIiD;AACjD,SAAS,eAAe,CAAC,YAAoB;IAC3C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnF,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,kEAAkE;QAClE,2DAA2D;QAC3D,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;kBAYkB;AAClB,MAAM,UAAU,sBAAsB,CACpC,MAAkB,EAClB,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE;IAEzB,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;QACrD,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI;YAAE,SAAS;QACvC,IAAI,OAAO,CAAC,KAAK,KAAK,OAAO,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM;YAAE,SAAS;QACpE,IAAI,CAAC,OAAO,CAAC,UAAU;YAAE,SAAS;QAClC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,SAAS,CAAC;QACrC,KAAK,MAAM,SAAS,IAAI,oBAAoB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;YACrF,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;gBACtE,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC3E,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS;oBAAE,KAAK,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;YACrE,CAAC;YAAC,MAAM,CAAC;gBACP,kEAAkE;YACpE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAeD;;;;;+EAK+E;AAC/E,MAAM,UAAU,kBAAkB,CAChC,KAAyC,EACzC,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE;IAEzB,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACpD,IAAI,OAAe,CAAC;QACpB,IAAI,CAAC;YACH,OAAO,GAAG,eAAe,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACrF,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,SAAS,CAAC;QACtB,CAAC;QACD,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;YACxB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QACnF,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED;;;;+EAI+E;AAC/E,MAAM,UAAU,sBAAsB,CACpC,UAAkB,EAClB,IAAc,EACd,GAAW;IAEX,kEAAkE;IAClE,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAChC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,SAAS,IAAI,oBAAoB,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC;QAC/D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;YACtE,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE;gBAAE,SAAS;YAC7C,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3E,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC;QAAC,MAAM,CAAC;YACP,+DAA+D;YAC/D,wBAAwB;QAC1B,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,6EAA6E;AAC7E,MAAM,OAAO,uBAAuB;IACzB,IAAI,CAAS;IACb,IAAI,GAAG,SAAkB,CAAC;IAClB,MAAM,CAAwB;IAC9B,UAAU,CAAS;IAEpC,YAAY,MAA6B;QACvC,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE;YAChE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE;YACpB,CAAC,CAAC,gBAAgB,CAAC;QACrB,MAAM,UAAU,GAAG,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ;YACtD,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE;YAC1B,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;YACrC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAiB,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC;YACrE,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC;YAC/D,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACpE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACR,IAAI,CAAC,MAAM,GAAG;YACZ,GAAG,MAAM;YACT,IAAI;YACJ,UAAU;YACV,IAAI;YACJ,KAAK,EAAE,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;YACjD,QAAQ,EAAE,MAAM,CAAC,QAAQ,KAAK,IAAI;YAClC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO;YAC5E,gBAAgB,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC;gBACxD,CAAC,CAAC,MAAM,CAAC,gBAAgB;gBACzB,CAAC,CAAC,MAAM;YACV,kBAAkB,EAAE,gBAAgB;SACrC,CAAC;QACF,IAAI,CAAC,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,IAAI,GAAG,WAAW,IAAI,EAAE,CAAC;IAChC,CAAC;IAED,OAAO,CAAC,OAAgC;QACtC,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,OAAO,CAAC;QACxC,IAAI,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;YACxD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACtD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACxB,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAC/E,CAAC;QACF,IAAI,GAAW,CAAC;QAChB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAC5B,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CACrC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,6BAA6B,CAChF,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC;YACH,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CACrC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CACrF,CAAC,CAAC;QACL,CAAC;QACD,qEAAqE;QACrE,MAAM,eAAe,GAAG,sBAAsB,CAC5C,IAAI,CAAC,MAAM,CAAC,UAAU,EACtB,IAAI,CAAC,MAAM,CAAC,IAAI,EAChB,GAAG,CACJ,CAAC;QAEF,OAAO,IAAI,OAAO,CAAC,CAAC,cAAc,EAAE,EAAE;YACpC,qEAAqE;YACrE,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;YACxC,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;YACxC,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,MAAM,MAAM,GAAG,CAAC,OAAe,EAAE,KAAc,EAAU,EAAE;gBACzD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC3B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,OAAO,CAAC;gBACtC,IAAI,QAAQ,IAAI,GAAG,EAAE,CAAC;oBACpB,SAAS,GAAG,IAAI,CAAC;oBACjB,OAAO,OAAO,CAAC;gBACjB,CAAC;gBACD,MAAM,SAAS,GAAG,GAAG,GAAG,QAAQ,CAAC;gBACjC,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS;oBAAE,SAAS,GAAG,IAAI,CAAC;gBAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;gBAC1C,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC;gBAC5B,OAAO,OAAO,GAAG,QAAQ,CAAC;YAC5B,CAAC,CAAC;YACF,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;gBAC5D,GAAG;gBACH,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,IAAI;gBACjB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;aAClC,CAAC,CAAC;YACH,IAAI,KAAgD,CAAC;YACrD,MAAM,MAAM,GAAG,CACb,MAAyB,EACzB,QAAuB,EACvB,MAAqB,EACrB,aAAsB,EAChB,EAAE;gBACR,IAAI,OAAO;oBAAE,OAAO;gBACpB,OAAO,GAAG,IAAI,CAAC;gBACf,IAAI,KAAK;oBAAE,YAAY,CAAC,KAAK,CAAC,CAAC;gBAC/B,OAAO,EAAE,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBACpD,cAAc,CAAC,IAAI,CAAC,WAAW,CAC7B,KAAK,EACL,MAAM,EACN,QAAQ,EACR,MAAM,EACN,MAAM,EACN,MAAM,EACN,SAAS,EACT,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EACtB,eAAe,EACf,aAAa,EACb,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,EACxB,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CACzB,CAAC,CAAC;YACL,CAAC,CAAC;YACF,MAAM,KAAK,GAAG,GAAS,EAAE;gBACvB,KAAK,CAAC,IAAI,EAAE,CAAC;gBACb,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,mCAAmC,CAAC,CAAC;YACrE,CAAC,CAAC;YACF,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;gBAChC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACjC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACjC,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;gBAChC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACjC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACjC,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAA4B,EAAE,EAAE;gBACnD,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACjC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBACvC,MAAM,CACJ,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,EACjD,IAAI,EACJ,IAAI,EACJ,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,CAC5B,CAAC;YACJ,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;gBACnC,MAAM,MAAM,GAAG,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC9E,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YACrD,CAAC,CAAC,CAAC;YACH,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBACtB,KAAK,CAAC,IAAI,EAAE,CAAC;gBACb,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,oBAAoB,SAAS,IAAI,CAAC,CAAC;YACnE,CAAC,EAAE,SAAS,CAAC,CAAC;YACd,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;YAChB,IAAI,OAAO,EAAE,MAAM,CAAC,OAAO;gBAAE,KAAK,EAAE,CAAC;;gBAChC,OAAO,EAAE,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,WAAW,CACjB,KAAyB,EACzB,MAAyB,EACzB,QAAuB,EACvB,MAAqB,EACrB,MAAc,EACd,MAAc,EACd,SAAkB,EAClB,UAAkB,EAClB,eAAyB,EACzB,aAAsB,EACtB,YAAqB,EACrB,YAAqB;QAErB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC9B,OAAO;YACL,aAAa,EAAE,CAAC;YAChB,UAAU,EAAE,IAAI,CAAC,IAAI;YACrB,IAAI,EAAE,SAAS;YACf,KAAK;YACL,SAAS,EAAE,UAAU,GAAG,UAAU;YAClC,UAAU;YACV,MAAM;YACN,KAAK,EAAE,EAAE;YACT,IAAI,EAAE;gBACJ,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBAC3B,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACnD,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG;gBAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;gBAC9B,QAAQ;gBACR,MAAM;gBACN,UAAU;gBACV,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3C,YAAY,EAAE,YAAY,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC/E,YAAY,EAAE,YAAY,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC/E,aAAa,EAAE,MAAM;gBACrB,aAAa,EAAE,MAAM;gBACrB,SAAS;gBACT,eAAe;aAChB;SACF,CAAC;IACJ,CAAC;CACF;AAiBD;;;;;;;;;;;sEAWsE;AACtE,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,MAAoB,EACpB,SAAkB;AAClB;oEACoE;AACpE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;IAEnB,MAAM,OAAO,GAAG,SAAS,IAAI,KAAK,CAAC;IAEnC,MAAM,MAAM,GAAG,CAAC,IAAuB,EAAmB,EAAE;QAC1D,OAAO,IAAI,OAAO,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE;YACxC,oEAAoE;YACpE,mEAAmE;YACnE,qEAAqE;YACrE,qEAAqE;YACrE,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,sBAAsB,EAAE,GAAG,IAAI,CAAC,EAAE;gBACrE,GAAG;gBACH,QAAQ,EAAE,OAAgB;gBAC1B,OAAO;gBACP,MAAM;gBACN,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YACH,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;gBACzC,MAAM,IAAI,KAAK,CAAC;YAClB,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,KAAK,CAAC;oBACR,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;oBACpB,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;YACzD,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACrD,MAAM,CAAC,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;YAC/B,MAAM,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;YAC3C,MAAM,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,oBAAoB,CAAC,CAAC;SACvD,CAAC,CAAC;QACH,iEAAiE;QACjE,IAAI,IAAwB,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;YACpD,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;QACrC,CAAC;QAAC,MAAM,CAAC;YACP,mDAAmD;QACrD,CAAC;QACD,OAAO;YACL,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;YACtE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;YACpE,SAAS,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;YAC1E,IAAI;SACL,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,8EAA8E;AAE9E;mEACmE;AACnE,SAAS,cAAc,CAAC,SAAiB;IACvC,IAAI,CAAC;QACH,OAAO,qBAAqB,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;0BAC0B;AAC1B,SAAS,iBAAiB,CAAC,IAAY,EAAE,SAAiB,EAAE,GAAW;IACrE,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC;IACxD,OAAO,QAAQ,KAAK,GAAG,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,OAAO,mBAAmB;IACrB,IAAI,GAAG,KAAK,CAAC;IACb,IAAI,GAAG,KAAc,CAAC;IAE/B,OAAO,CAAC,OAAgC;QACtC,MAAM,SAAS,GAAG,OAAO,EAAE,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,yEAAyE;QACzE,gEAAgE;QAChE,uEAAuE;QACvE,0EAA0E;QAC1E,gEAAgE;QAChE,uEAAuE;QACvE,MAAM,QAAQ,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,cAAc,GAAG,CAAC,IAAY,EAAW,EAAE,CAC/C,QAAQ,KAAK,IAAI,IAAI,iBAAiB,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QACpE,OAAO,wBAAwB,CAC7B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,SAAS,EAClB,SAAS,CACV,CAAC,IAAI,CACJ,CAAC,KAA0B,EAAyB,EAAE;YACpD,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAC;YACxB,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC;oBACxB,GAAG,KAAK,CAAC,OAAO;oBAChB,GAAG,KAAK,CAAC,MAAM;oBACf,GAAG,KAAK,CAAC,SAAS;iBACnB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACnD,uEAAuE;YACvE,uEAAuE;YACvE,qDAAqD;YACrD,MAAM,YAAY,GAA2B,EAAE,CAAC;YAChD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBAClE,YAAY,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;YAC/C,CAAC;YACD,OAAO;gBACL,aAAa,EAAE,CAAC;gBAChB,UAAU,EAAE,KAAK;gBACjB,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,OAAO;gBAChC,SAAS;gBACT,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;gBACtB,MAAM,EAAE,UAAU;gBAClB,KAAK;gBACL,IAAI,EAAE;oBACJ,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;oBAC9D,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;oBAC5D,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;oBAClE,YAAY;oBACZ,IAAI,EAAE,KAAK,CAAC,IAAI;iBACjB;aACF,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;CACF;AAED,wBAAwB,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC;AAEjE,8EAA8E;AAE9E;;;;mCAImC;AACnC,MAAM,UAAU,yBAAyB,CACvC,YAAkC;IAElC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,KAAK,KAAK,CAAC,CAAC;IAC9E,IAAI,cAAc;QAAE,OAAO,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5D,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK;YAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;AAC9B,CAAC;AAED;;;4EAG4E;AAC5E,MAAM,UAAU,uBAAuB,CACrC,MAA4B,EAC5B,KAA2B;IAE3B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;QAC/B,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,KAAK,WAAW,CAAC,UAAU,CAAC,CAAC;QACnF,IAAI,CAAC,QAAQ;YAAE,OAAO,WAAW,CAAC;QAClC,OAAO;YACL,GAAG,WAAW;YACd,KAAK,EAAE,oBAAoB,CAAC,QAAQ,EAAE,WAAW,CAAC;SACnD,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,aAAa,CAC3B,MAA4B,EAC5B,KAA2B;IAE3B,OAAO,yBAAyB,CAAC,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,oBAAoB,CAC3B,WAA+B;IAE/B,IAAI,WAAW,CAAC,IAAI,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IAC5C,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;IAC5C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7E,MAAM,YAAY,GAA2B,EAAE,CAAC;IAChD,KAAK,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,IAAI,OAAO,WAAW,KAAK,QAAQ;YAAE,YAAY,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC;IACxE,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,SAAS,oBAAoB,CAC3B,MAA0B,EAC1B,KAAyB;IAEzB,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAE9D,OAAO,CAAC,GAAG,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACrC,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5D,IAAI,CAAC,kBAAkB,IAAI,CAAC,iBAAiB;YAAE,OAAO,KAAK,CAAC;QAC5D,OAAO,kBAAkB,CAAC,IAAI,CAAC,KAAK,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACZ,CAAC"}
|
package/dist/loop-store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop-store.d.ts","sourceRoot":"","sources":["../src/loop-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAcH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"loop-store.d.ts","sourceRoot":"","sources":["../src/loop-store.ts"],"names":[],"mappings":"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"}
|
package/dist/loop-store.js
CHANGED
|
@@ -13,6 +13,35 @@ import { dirname, join, resolve } from "node:path";
|
|
|
13
13
|
import { parseRoundTransactionSnapshot } from "./round-transaction.js";
|
|
14
14
|
import { validateLoopId } from "./policy.js";
|
|
15
15
|
import { isRecord } from "./token-utils.js";
|
|
16
|
+
// ── Store lock timing ──────────────────────────────────────────────────────
|
|
17
|
+
//
|
|
18
|
+
// Three DIFFERENT staleness rules, not one constant repeated. They are named
|
|
19
|
+
// separately because collapsing them would either stretch the ownerless grace
|
|
20
|
+
// to the Windows case or drop a promise the smaller one makes.
|
|
21
|
+
//
|
|
22
|
+
// The wait budget and the dead-owner grace are a pair: a reclaim that needs
|
|
23
|
+
// more age than the budget allows can never run, which is what left a crashed
|
|
24
|
+
// process's lock unreclaimable and made a quick restart fail outright.
|
|
25
|
+
/** A lock directory with no owner.json — a crash inside mkdir→write. The
|
|
26
|
+
* window is microseconds, so a short grace proves the lock stale. */
|
|
27
|
+
const LOCK_OWNERLESS_STALE_MS = 500;
|
|
28
|
+
/** The owner pid is gone. `process.kill(pid, 0)` is the real signal; this
|
|
29
|
+
* grace only guards against pid reuse catching an unrelated new process, so
|
|
30
|
+
* it stays small enough to be reachable within LOCK_WAIT_MS. */
|
|
31
|
+
const LOCK_DEAD_OWNER_STALE_MS = 750;
|
|
32
|
+
/** kill() answered EPERM: on Windows that can mean a dead process owned by
|
|
33
|
+
* another user. Death cannot be proven, so the age bar is higher. */
|
|
34
|
+
const LOCK_WINDOWS_EPERM_STALE_MS = 10_000;
|
|
35
|
+
/** How long to wait for the lock before failing. Must exceed
|
|
36
|
+
* LOCK_DEAD_OWNER_STALE_MS or the reclaim branch is unreachable — and is
|
|
37
|
+
* deliberately far below LOCK_WINDOWS_EPERM_STALE_MS: this wait blocks the
|
|
38
|
+
* whole (single-threaded) server, so a lock held by a LIVE process must fail
|
|
39
|
+
* fast rather than hang, and a long stall would also widen the window in
|
|
40
|
+
* which another process may steal the session lease. */
|
|
41
|
+
const LOCK_WAIT_MS = 1_500;
|
|
42
|
+
/** Sleep between attempts (see the file's `sleepSync`). Without it the loop
|
|
43
|
+
* is a CPU spin. */
|
|
44
|
+
const LOCK_RETRY_SLEEP_MS = 25;
|
|
16
45
|
export const LOOP_STORE_SCHEMA_VERSION = 1;
|
|
17
46
|
const SEVERITY_MAP = {
|
|
18
47
|
sequence_gap: "recoverable",
|
|
@@ -149,7 +178,7 @@ export class FileLoopStore {
|
|
|
149
178
|
const lockPath = join(this.root, ".store.lock");
|
|
150
179
|
const ownerPath = join(lockPath, "owner.json");
|
|
151
180
|
const token = randomUUID();
|
|
152
|
-
const deadline = Date.now() +
|
|
181
|
+
const deadline = Date.now() + LOCK_WAIT_MS;
|
|
153
182
|
for (;;) {
|
|
154
183
|
try {
|
|
155
184
|
mkdirSync(lockPath);
|
|
@@ -174,18 +203,21 @@ export class FileLoopStore {
|
|
|
174
203
|
// a lock directory without an owner. That window is microseconds,
|
|
175
204
|
// so after a short grace the lock is provably stale — previously
|
|
176
205
|
// this state caused a permanent lock until manual deletion.
|
|
177
|
-
stale = age >
|
|
206
|
+
stale = age > LOCK_OWNERLESS_STALE_MS;
|
|
178
207
|
}
|
|
179
|
-
if (!stale && owner && age >
|
|
208
|
+
if (!stale && owner && age > LOCK_DEAD_OWNER_STALE_MS &&
|
|
209
|
+
typeof owner.pid === "number") {
|
|
180
210
|
try {
|
|
181
211
|
process.kill(owner.pid, 0);
|
|
182
212
|
}
|
|
183
213
|
catch (error) {
|
|
184
214
|
// On Windows, EPERM may be returned for dead cross-user
|
|
185
|
-
// processes.
|
|
215
|
+
// processes. We cannot prove death there, so the age bar is
|
|
216
|
+
// higher than for ESRCH — but it still has to be reachable inside
|
|
217
|
+
// LOCK_WAIT_MS, or the crash-recovery promise is empty.
|
|
186
218
|
const code = error.code;
|
|
187
219
|
stale = code === "ESRCH"
|
|
188
|
-
|| (code === "EPERM" && age >
|
|
220
|
+
|| (code === "EPERM" && age > LOCK_WINDOWS_EPERM_STALE_MS);
|
|
189
221
|
}
|
|
190
222
|
}
|
|
191
223
|
if (stale) {
|
|
@@ -195,8 +227,13 @@ export class FileLoopStore {
|
|
|
195
227
|
catch { /* race */ }
|
|
196
228
|
continue;
|
|
197
229
|
}
|
|
198
|
-
if (Date.now() >= deadline)
|
|
199
|
-
throw new Error(
|
|
230
|
+
if (Date.now() >= deadline) {
|
|
231
|
+
throw new Error(`LoopStore lock timeout (${LOCK_WAIT_MS}ms)`);
|
|
232
|
+
}
|
|
233
|
+
// Without this the loop is a CPU spin; `withLock` is synchronous, so
|
|
234
|
+
// an async sleep is not available and blocking here costs nothing the
|
|
235
|
+
// caller was not already paying.
|
|
236
|
+
sleepSync(LOCK_RETRY_SLEEP_MS);
|
|
200
237
|
}
|
|
201
238
|
}
|
|
202
239
|
this.lockDepth = 1;
|
package/dist/loop-store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop-store.js","sourceRoot":"","sources":["../src/loop-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"loop-store.js","sourceRoot":"","sources":["../src/loop-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,6 +44,15 @@ export interface McpSession {
|
|
|
44
44
|
* gate checks the workspace returns to this commit before accepting.
|
|
45
45
|
* Cleared after the first successful post-backtrack round. */
|
|
46
46
|
backtrackTargetGitHead?: string;
|
|
47
|
+
/** v3.8.3: the trusted round-start fingerprint of every enabled command's
|
|
48
|
+
* entrypoint files, captured when the CURRENT in-flight round was prepared.
|
|
49
|
+
*
|
|
50
|
+
* In-flight only: it never enters committed round history. It exists so the
|
|
51
|
+
* entrypoint check can be absolute (current content vs round-start content)
|
|
52
|
+
* rather than relative to a git delta that a gitignored entrypoint never
|
|
53
|
+
* appears in and a re-derived baseline could launder. Absent means the
|
|
54
|
+
* round runs without that arm — never a lost round. */
|
|
55
|
+
entrypointTrust?: Record<string, string>;
|
|
47
56
|
/** Evidence baseline captured immediately before the agent receives a prompt. */
|
|
48
57
|
evidenceBaseline?: MachineObservation[];
|
|
49
58
|
/** Schema-versioned transaction for the prompt currently held by the agent. */
|
|
@@ -162,6 +171,18 @@ export declare class RoundLifecycle {
|
|
|
162
171
|
* `newConsecutiveRejections` comes from the enforcement gate and already
|
|
163
172
|
* counts the round; it is only honoured when the check is unchanged. */
|
|
164
173
|
private applyRoundCounters;
|
|
174
|
+
/** v3.8.3: capture the trusted entrypoint baseline for the round about to be
|
|
175
|
+
* prepared.
|
|
176
|
+
*
|
|
177
|
+
* Called wherever a NEW round is installed and NEVER for a same-round
|
|
178
|
+
* retry: a retry must keep measuring against the state the round started
|
|
179
|
+
* in, or the first rejection would silently re-baseline itself. What is
|
|
180
|
+
* captured here is therefore the round's own start, taken before the agent
|
|
181
|
+
* receives the prompt.
|
|
182
|
+
*
|
|
183
|
+
* Best-effort: an unreadable policy or an unresolvable command must leave
|
|
184
|
+
* the round without the absolute arm, not fail the preparation. */
|
|
185
|
+
private seedEntrypointTrust;
|
|
165
186
|
private persistPrepared;
|
|
166
187
|
private restoredPromptResult;
|
|
167
188
|
/** Reconcile the crash window where feedback committed but session_state
|
|
@@ -206,7 +227,13 @@ export declare class RoundLifecycle {
|
|
|
206
227
|
* session.consecutiveRejections, session.lastSelfEval */
|
|
207
228
|
private buildBacktrackResult;
|
|
208
229
|
/** Build a termination result: persist stopped status, notify sinks.
|
|
209
|
-
* MUTATES: session.status, session.currentPrompt
|
|
230
|
+
* MUTATES: session.status, session.currentPrompt
|
|
231
|
+
*
|
|
232
|
+
* v3.8.3: the enforcement gate may NAME its own stop reason (the
|
|
233
|
+
* contract-debt row terminates as `incomplete`). This used to hard-code
|
|
234
|
+
* `enforcement_terminated`, so the specific reason reached observability
|
|
235
|
+
* and the client as a generic one — the fact was computed and then thrown
|
|
236
|
+
* away. Pass it through, falling back only when the gate named nothing. */
|
|
210
237
|
private buildTerminationResult;
|
|
211
238
|
/** Build a stop result: persist stopped/stalled status, notify sinks.
|
|
212
239
|
* MUTATES: session.status, session.currentPrompt */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"round-lifecycle.d.ts","sourceRoot":"","sources":["../../src/mcp/round-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAO/C,OAAO,KAAK,EACV,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,uBAAuB,EAEvB,gBAAgB,EAChB,uBAAuB,
|
|
1
|
+
{"version":3,"file":"round-lifecycle.d.ts","sourceRoot":"","sources":["../../src/mcp/round-lifecycle.ts"],"names":[],"mappings":"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"}
|