@oh-my-matrix/autopilot 3.0.2 → 3.0.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 +15 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +123 -1
- package/dist/index.js.map +1 -1
- package/dist/src/logger.d.ts +8 -0
- package/dist/src/logger.d.ts.map +1 -1
- package/dist/src/logger.js.map +1 -1
- package/dist/src/state-persister.d.ts +117 -0
- package/dist/src/state-persister.d.ts.map +1 -0
- package/dist/src/state-persister.js +454 -0
- package/dist/src/state-persister.js.map +1 -0
- package/openclaw.plugin.json +1 -1
- package/package.json +12 -11
- package/LICENSE +0 -21
package/README.md
CHANGED
|
@@ -24,6 +24,14 @@ npm install openclaw@">=2026.5.28" @oh-my-matrix/permission-policy
|
|
|
24
24
|
- **Model routing** — cost-aware tier selection per execution phase (budget/standard/premium).
|
|
25
25
|
- **Permission-policy integration** — coordinates the run-scoped policy with
|
|
26
26
|
[`@oh-my-matrix/permission-policy`](../permission-policy).
|
|
27
|
+
- **Crash recovery** — run state is checkpointed to
|
|
28
|
+
`{workspace}/.autopilot/checkpoints/{runId}.json` at stable transitions
|
|
29
|
+
(orchestration-state / blocked-reason / evidence changes). On gateway restart,
|
|
30
|
+
`register()` restores all runs still in an active state
|
|
31
|
+
(`running`/`claimed`/`retry_queued`/`released`/`unclaimed`) whose workspace
|
|
32
|
+
still exists, marked `degraded:true`. Terminal runs (`done`/`user_stopped`)
|
|
33
|
+
delete their checkpoint to prevent file leaks. `status` is **never** trusted
|
|
34
|
+
from disk — always re-derived via `deriveStatus` (ADR-016 sole-writer invariant).
|
|
27
35
|
|
|
28
36
|
## Plugin config
|
|
29
37
|
|
|
@@ -145,7 +153,13 @@ To restore 2.x behavior, set `trustWorkspace: true` in the activate payload or p
|
|
|
145
153
|
|
|
146
154
|
All other 3.0.0 changes (model routing, thinking intensity, new BlockedReason values, stall detection for `claimed` runs) are additive and backward-compatible.
|
|
147
155
|
|
|
156
|
+
### Behavioral changes within 3.x
|
|
157
|
+
|
|
158
|
+
These are not 2.x→3.0.0 migration steps — they are **already-shipped precedence flips** inside the 3.x line that may affect existing configurations:
|
|
159
|
+
|
|
160
|
+
- **3.0.2 (ADR-017): a subagent's declared `model:` overrides the parent `subagentTier`.** Prior to 3.0.2, an active autopilot run with `modelIds` configured would silently override a subagent's `.prose` `model:` declaration with the parent's `subagentTier` (e.g. `budget`). As of 3.0.2, if a subagent declares `model: opus` and the parent sets `subagentTier: budget`, the subagent runs on Opus. If you relied on `subagentTier` to cap costs for subagents that declare an expensive model, those subagents use their declared model under 3.0.2+. Mitigation: remove the expensive `model:` declaration from the `.prose` if cost control matters more, or set `modelIds` to empty (the escape hatch documented in the [model-routing design](../../docs/design/model-routing-thinking-intensity-design.md) §6.3).
|
|
161
|
+
|
|
148
162
|
## Status
|
|
149
163
|
|
|
150
|
-
v3.0.
|
|
164
|
+
v3.0.3. Tested with `vitest` (836 tests, 91%+ statement coverage). See the project
|
|
151
165
|
[changelog](https://github.com/TeFuirnever/oh-my-matrix/blob/master/CHANGELOG.md).
|
package/dist/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import type { OpenClawPluginApi } from 'openclaw/dist/plugin-sdk/plugin-runtime'
|
|
|
3
3
|
export type { AutopilotProjection } from './src/projection';
|
|
4
4
|
export declare const id = "autopilot";
|
|
5
5
|
export declare const name = "Autopilot Continuous Mode";
|
|
6
|
-
export declare const version = "3.0.
|
|
6
|
+
export declare const version = "3.0.3";
|
|
7
7
|
export declare function _resetForTest(): void;
|
|
8
8
|
/** Test-only: inject a mock audit_setMode so the closed-over _auditSetMode reference is replaceable. */
|
|
9
9
|
export declare function _setAuditSetModeForTest(fn: ((mode: 'active' | 'monitor' | 'passive') => void) | null): void;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,cAAc,EAA+B,MAAM,aAAa,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAuZ,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,cAAc,EAA+B,MAAM,aAAa,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAuZ,MAAM,yCAAyC,CAAC;AAuBte,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAsB5D,eAAO,MAAM,EAAE,cAAc,CAAC;AAC9B,eAAO,MAAM,IAAI,8BAA8B,CAAC;AAKhD,eAAO,MAAM,OAAO,UAAU,CAAC;AA4G/B,wBAAgB,aAAa,IAAI,IAAI,CAiBpC;AAsDD,wGAAwG;AACxG,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,KAAK,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,CAK3G;AAED,wBAAgB,wBAAwB;;;;;EAOvC;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,cAAc,CAAC,oBAAoB,CAAC,CAAC;IACzD,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;CACjC,GAAG,cAAc,GAAG,SAAS,CAmD7B;AAwHD,+EAA+E;AAC/E,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAMD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI,CAi/BrD"}
|
package/dist/index.js
CHANGED
|
@@ -26,6 +26,7 @@ const project_detector_1 = require("./src/project-detector");
|
|
|
26
26
|
const permission_policy_2 = require("@oh-my-matrix/permission-policy");
|
|
27
27
|
const fs_1 = require("fs");
|
|
28
28
|
const path_1 = require("path");
|
|
29
|
+
const state_persister_1 = require("./src/state-persister");
|
|
29
30
|
/**
|
|
30
31
|
* Validate a renderer-supplied workspacePath before storing it as the
|
|
31
32
|
* containment boundary. Rejects relative paths, non-existent paths, and
|
|
@@ -51,7 +52,9 @@ exports.id = 'autopilot';
|
|
|
51
52
|
exports.name = 'Autopilot Continuous Mode';
|
|
52
53
|
// S14 (audit 2026-06-30): keep in sync with package.json + openclaw.plugin.json.
|
|
53
54
|
// These three are the release-time single source of truth for the plugin version.
|
|
54
|
-
|
|
55
|
+
// Kept aligned automatically by scripts/sync-plugin-versions.cjs (do not hand-edit
|
|
56
|
+
// without also updating package.json — the sync script rewrites this line).
|
|
57
|
+
exports.version = '3.0.3';
|
|
55
58
|
/** GAP-25: Maximum number of concurrent run states before eviction kicks in */
|
|
56
59
|
const MAX_RUN_STATES = 50;
|
|
57
60
|
/** GAP-26: Health check threshold — sessions inactive for 24h are orphaned */
|
|
@@ -146,11 +149,73 @@ function _resetForTest() {
|
|
|
146
149
|
canaryFired = new Set();
|
|
147
150
|
noUsageWarned = new Set();
|
|
148
151
|
enqueueInjectionFn = undefined;
|
|
152
|
+
// Test isolation: disable checkpoint persistence so the existing 50+ test suite
|
|
153
|
+
// (which calls register() in the repo root and would otherwise both WRITE
|
|
154
|
+
// checkpoints to disk AND load them back on the next test's register()) doesn't
|
|
155
|
+
// cross-contaminate stateByRun. Tests that exercise persistence explicitly
|
|
156
|
+
// re-enable it via _enableCheckpointingForTest().
|
|
157
|
+
(0, state_persister_1._disableCheckpointingForTest)();
|
|
149
158
|
if (stallInterval) {
|
|
150
159
|
clearInterval(stallInterval);
|
|
151
160
|
stallInterval = null;
|
|
152
161
|
}
|
|
153
162
|
}
|
|
163
|
+
/**
|
|
164
|
+
* Resolve the workspace root under which checkpoints are stored for a run.
|
|
165
|
+
* Prefers the run's own workspace.root (the containment boundary the run was
|
|
166
|
+
* activated under); falls back to process.cwd() so checkpointing still works
|
|
167
|
+
* for runs activated before a workspace record is attached.
|
|
168
|
+
*/
|
|
169
|
+
function resolveCheckpointRoot(state) {
|
|
170
|
+
return state.workspace?.root ?? process.cwd();
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Decide whether a state transition should trigger a checkpoint write. We write
|
|
174
|
+
* only at STABLE POINTS — orchestrationState / blockedReason / evidence status
|
|
175
|
+
* changes — not on every setState (agent_activity fires per token batch and
|
|
176
|
+
* would drown the disk). This is the Review #5 "transition filter, not signature
|
|
177
|
+
* hash" recommendation: 3-line field comparison, no debouncing complexity.
|
|
178
|
+
*/
|
|
179
|
+
function shouldCheckpoint(prev, next) {
|
|
180
|
+
if (!prev)
|
|
181
|
+
return true; // first write for a run — persist immediately
|
|
182
|
+
if (prev.orchestrationState !== next.orchestrationState)
|
|
183
|
+
return true;
|
|
184
|
+
if (prev.blockedReason !== next.blockedReason)
|
|
185
|
+
return true;
|
|
186
|
+
if (prev.evidence?.status !== next.evidence?.status)
|
|
187
|
+
return true;
|
|
188
|
+
if (prev.enabled !== next.enabled)
|
|
189
|
+
return true;
|
|
190
|
+
// Reviewer #1 Finding 5a fix: goal/progress changes (via setGoal gateway RPC)
|
|
191
|
+
// must reach disk, else crash-resume continues toward a stale goal.
|
|
192
|
+
if (prev.goal !== next.goal)
|
|
193
|
+
return true;
|
|
194
|
+
if (prev.progress !== next.progress)
|
|
195
|
+
return true;
|
|
196
|
+
return false;
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Checkpoint + terminal-state cleanup hook. Called from setState after a
|
|
200
|
+
* transition-worthy change. Handles:
|
|
201
|
+
* - persisting the slim checkpoint (fail-silent, per-runId locked)
|
|
202
|
+
* - deleting the checkpoint when the run reaches a terminal state (done /
|
|
203
|
+
* non-resumable blocked) so done-run files don't leak (Review #4 #6)
|
|
204
|
+
*/
|
|
205
|
+
function persistAfterTransition(runId, prev, next) {
|
|
206
|
+
// Terminal cleanup FIRST — once a run is done/non-resumable, delete its file
|
|
207
|
+
// so it can't be resurrected stale on a later restart, and clear the index.
|
|
208
|
+
const orch = next.orchestrationState;
|
|
209
|
+
if (orch === 'done' || (orch === 'blocked' && next.blockedReason === 'user_stopped')) {
|
|
210
|
+
const root = resolveCheckpointRoot(next);
|
|
211
|
+
(0, state_persister_1.deleteCheckpoint)(runId, root);
|
|
212
|
+
(0, state_persister_1.clearSessionIndexEntry)(root, next.sessionKey);
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
if (shouldCheckpoint(prev, next)) {
|
|
216
|
+
(0, state_persister_1.saveCheckpoint)(next, runId, resolveCheckpointRoot(next));
|
|
217
|
+
}
|
|
218
|
+
}
|
|
154
219
|
/** Test-only: inject a mock audit_setMode so the closed-over _auditSetMode reference is replaceable. */
|
|
155
220
|
function _setAuditSetModeForTest(fn) {
|
|
156
221
|
if (process.env.NODE_ENV === 'production') {
|
|
@@ -236,6 +301,9 @@ function evictOldestRuns() {
|
|
|
236
301
|
// S8: release audit refCount for an evicted still-running run before delete.
|
|
237
302
|
if (oldestState?.status === 'running')
|
|
238
303
|
setAuditMode('active');
|
|
304
|
+
// Review #4 #6b: also delete the checkpoint so evicted runs don't leak files.
|
|
305
|
+
if (oldestState)
|
|
306
|
+
(0, state_persister_1.deleteCheckpoint)(oldestRunId, resolveCheckpointRoot(oldestState));
|
|
239
307
|
stateByRun.delete(oldestRunId);
|
|
240
308
|
if (oldestState) {
|
|
241
309
|
sessionKeyToRunId.delete(oldestState.sessionKey);
|
|
@@ -252,9 +320,13 @@ function evictOldestRuns() {
|
|
|
252
320
|
}
|
|
253
321
|
}
|
|
254
322
|
function setState(runId, state) {
|
|
323
|
+
const prev = stateByRun.get(runId);
|
|
255
324
|
stateByRun.set(runId, state);
|
|
256
325
|
if (stateByRun.size > MAX_RUN_STATES)
|
|
257
326
|
evictOldestRuns();
|
|
327
|
+
// Crash-recovery: persist at stable points (orchState/blockedReason/evidence/enabled
|
|
328
|
+
// transitions). Fail-silent + per-runId locked inside saveCheckpoint.
|
|
329
|
+
persistAfterTransition(runId, prev, state);
|
|
258
330
|
}
|
|
259
331
|
/** GAP-23: Cleanup all state on shutdown */
|
|
260
332
|
function cleanupAll() {
|
|
@@ -357,6 +429,30 @@ function register(api) {
|
|
|
357
429
|
...(typeof uc.trustWorkspace === 'boolean' ? { trustWorkspace: uc.trustWorkspace } : {}),
|
|
358
430
|
};
|
|
359
431
|
(0, logger_1.log)(`[autopilot] config: maxAttemptsPerTurn=${config.maxAttemptsPerTurn} maxTotalContinuations=${config.maxTotalContinuations} toolErrorThreshold=${config.toolErrorThreshold} excludedAgents=${JSON.stringify(config.excludedAgents)} highRiskTools=${JSON.stringify(config.highRiskTools)} tokenBudget=${config.tokenBudget}`);
|
|
432
|
+
// Crash-recovery: restore ALL resumable runs at process init (Review #3 multi-run
|
|
433
|
+
// gap). session_start only fires for the session that reconnects, but a gateway
|
|
434
|
+
// restart may orphan runs owned by OTHER sessions. Scanning the checkpoints dir
|
|
435
|
+
// here restores every run still in an active family (running/claimed/retry_queued/
|
|
436
|
+
// released/unclaimed) whose workspace still exists. Restored runs are marked
|
|
437
|
+
// degraded:true so operators can tell a restored run from a fresh one.
|
|
438
|
+
{
|
|
439
|
+
const root = process.cwd();
|
|
440
|
+
const resumable = (0, state_persister_1.listResumableCheckpoints)(root);
|
|
441
|
+
for (const runId of resumable) {
|
|
442
|
+
const restored = (0, state_persister_1.loadCheckpoint)(runId, root);
|
|
443
|
+
if (restored) {
|
|
444
|
+
stateByRun.set(runId, restored);
|
|
445
|
+
sessionKeyToRunId.set(restored.sessionKey, runId);
|
|
446
|
+
if (restored.needsCrossTurnResume) {
|
|
447
|
+
// A restored run that was mid-cross-turn needs a kick to restart the
|
|
448
|
+
// agent loop; defer to kickResumedTurn once enqueueInjectionFn is set.
|
|
449
|
+
}
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
if (resumable.length > 0) {
|
|
453
|
+
(0, logger_1.log)(`[autopilot] crash-recovery: restored ${stateByRun.size} run(s) from checkpoints`);
|
|
454
|
+
}
|
|
455
|
+
}
|
|
360
456
|
// --- Hooks (use api.on for typed hooks when available, registerHook as fallback) ---
|
|
361
457
|
const registerHook = api.on?.bind(api) ?? api.registerHook?.bind(api);
|
|
362
458
|
if (!registerHook) {
|
|
@@ -792,6 +888,25 @@ function register(api) {
|
|
|
792
888
|
sessionIdToKey.set(event.sessionId, event.sessionKey);
|
|
793
889
|
(0, logger_1.log)(`[autopilot] session_start: ${event.sessionId} → ${event.sessionKey}`);
|
|
794
890
|
}
|
|
891
|
+
// Crash-recovery resume (Review #4 BLOCKER #2): after a gateway restart the
|
|
892
|
+
// in-memory sessionKeyToRunId Map is empty, so we consult the durable
|
|
893
|
+
// session-index.json to locate the checkpoint for this session. register()
|
|
894
|
+
// already restored ALL resumable runs at process init; this path covers the
|
|
895
|
+
// case where a session reconnects (e.g. resumedFrom) and its run isn't yet
|
|
896
|
+
// in memory (different process, late-arriving session_start).
|
|
897
|
+
const sessionKey = event.sessionKey;
|
|
898
|
+
if (sessionKey && !findRunBySession(sessionKey)) {
|
|
899
|
+
const root = process.cwd();
|
|
900
|
+
const runId = (0, state_persister_1.lookupRunIdBySessionKey)(root, sessionKey);
|
|
901
|
+
if (runId) {
|
|
902
|
+
const restored = (0, state_persister_1.loadCheckpoint)(runId, root);
|
|
903
|
+
if (restored) {
|
|
904
|
+
stateByRun.set(runId, restored);
|
|
905
|
+
sessionKeyToRunId.set(sessionKey, runId);
|
|
906
|
+
(0, logger_1.log)(`[autopilot] session_start: resumed run ${runId} for session=${sessionKey} orchState=${restored.orchestrationState ?? 'n/a'}`);
|
|
907
|
+
}
|
|
908
|
+
}
|
|
909
|
+
}
|
|
795
910
|
});
|
|
796
911
|
registerHook('session_end', (event) => {
|
|
797
912
|
const sessionKey = event.sessionKey ?? sessionIdToKey.get(event.sessionId);
|
|
@@ -805,6 +920,13 @@ function register(api) {
|
|
|
805
920
|
// deleting state, mirroring cleanupAll. A leak here pins monitor mode.
|
|
806
921
|
if (state.status === 'running')
|
|
807
922
|
setAuditMode('active');
|
|
923
|
+
// Crash-recovery: for non-terminal runs, the in-memory state is the most
|
|
924
|
+
// up-to-date copy — ensure it's checkpointed BEFORE deleting from memory
|
|
925
|
+
// so a crash between session_end and the next activity doesn't lose work.
|
|
926
|
+
// (Terminal runs already had their checkpoint deleted in setState.)
|
|
927
|
+
if (state.orchestrationState !== 'done' && state.orchestrationState !== 'blocked') {
|
|
928
|
+
(0, state_persister_1.saveCheckpoint)(state, runId, resolveCheckpointRoot(state));
|
|
929
|
+
}
|
|
808
930
|
stateByRun.delete(runId);
|
|
809
931
|
sessionKeyToRunId.delete(sessionKey);
|
|
810
932
|
canaryFired.delete(sessionKey);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAqLA,sCAiBC;AAuDD,0DAKC;AAED,4DAOC;AAOD,8DAuDC;AAyHD,sDAEC;AAMD,4BAi/BC;AA37CD,mEAAsF;AACtF,iEAA0D;AAC1D,yDAAkD;AAClD,6DAAwF;AACxF,uDAAsI;AACtI,yCAAgE;AAChE,2DAW+B;AAC/B,qDAA2G;AAC3G,iDAAgD;AAChD,uCAAiE;AAGjE,qDAAyD;AACzD,uEAAoH;AACpH,2DAAoF;AACpF,uDAAuD;AACvD,yDAA6D;AAC7D,6DAAkE;AAClE,uEAA2F;AAC3F,2BAA8B;AAC9B,+BAAkC;AAClC,2DAQ+B;AAO/B;;;;;;;;;;GAUG;AACH,SAAS,qBAAqB,CAAC,CAAqB;IAClD,IAAI,CAAC,CAAC,IAAI,CAAC,IAAA,iBAAU,EAAC,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3C,IAAI,CAAC;QACH,OAAO,IAAA,aAAQ,EAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAEY,QAAA,EAAE,GAAG,WAAW,CAAC;AACjB,QAAA,IAAI,GAAG,2BAA2B,CAAC;AAChD,iFAAiF;AACjF,kFAAkF;AAClF,mFAAmF;AACnF,4EAA4E;AAC/D,QAAA,OAAO,GAAG,OAAO,CAAC;AAE/B,+EAA+E;AAC/E,MAAM,cAAc,GAAG,EAAE,CAAC;AAE1B,8EAA8E;AAC9E,MAAM,mBAAmB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEhD,IAAI,UAAU,GAAG,IAAI,GAAG,EAA0B,CAAC;AACnD,IAAI,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;AAC/C,IAAI,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;AAClD,IAAI,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;AACpC,8EAA8E;AAC9E,qEAAqE;AACrE,IAAI,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;AACtC,IAAI,aAAa,GAA0C,IAAI,CAAC;AAehE,IAAI,kBAAkD,CAAC;AAEvD;;;;;;;;;;GAUG;AACH,SAAS,eAAe,CAAC,KAAa,EAAE,KAAqB;IAC3D,IAAI,KAAK,CAAC,kBAAkB,KAAK,SAAS;QAAE,OAAO;IACnD,MAAM,OAAO,GAAG,kBAAkB,CAAC;IACnC,IAAI,OAAO,OAAO,KAAK,UAAU;QAAE,OAAO;IAC1C,KAAK,OAAO,CAAC,OAAO,CAClB,OAAO,CAAC;QACN,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,IAAI,EAAE,IAAA,2CAAqB,EAAC,KAAK,CAAC;QAClC,cAAc,EAAE,oBAAoB,KAAK,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,kBAAkB,EAAE;QAC/F,SAAS,EAAE,iBAAiB;QAC5B,2EAA2E;QAC3E,2EAA2E;QAC3E,sDAAsD;QACtD,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,cAAc,IAAI,qBAAqB,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC;KACpF,CAAC,CACH,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,aAAI,EAAC,sDAAsD,KAAK,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC;AAC3G,CAAC;AAED;;;;;;GAMG;AACH,SAAS,qBAAqB,CAAC,cAAuB;IACpD,OAAO,cAAc;QACnB,CAAC,CAAC,yCAAuB,CAAC,cAAc;QACxC,CAAC,CAAC,yCAAuB,CAAC,cAAc,GAAG,CAAC,CAAC;AACjD,CAAC;AAED;;;;GAIG;AACH,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAErC,sGAAsG;AACtG,gFAAgF;AAChF,IAAI,aAAa,GAA8D,IAAI,CAAC;AACpF,IAAI,CAAC;IACH,sHAAsH;IACtH,MAAM,WAAW,GAAY,OAAO,CAAC,iCAAiC,CAAC,CAAC;IACxE,IACE,OAAO,WAAW,KAAK,QAAQ;QAC/B,WAAW,KAAK,IAAI;QACpB,eAAe,IAAI,WAAW;QAC9B,OAAQ,WAAuC,CAAC,aAAa,KAAK,UAAU,EAC5E,CAAC;QACD,aAAa,GAAI,WAAuC,CAAC,aAAiE,CAAC;IAC7H,CAAC;AACH,CAAC;AAAC,MAAM,CAAC;IACP,IAAA,aAAI,EAAC,6EAA6E,CAAC,CAAC;AACtF,CAAC;AAED,SAAS,YAAY,CAAC,IAAsC;IAC1D,IAAI,CAAC;QACH,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC;QACtB,IAAA,YAAG,EAAC,6BAA6B,IAAI,GAAG,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAA,aAAI,EAAC,4BAA4B,IAAI,yBAAyB,GAAG,EAAE,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED,SAAgB,aAAa;IAC3B,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IACD,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;IACvB,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC;IAC3B,iBAAiB,GAAG,IAAI,GAAG,EAAE,CAAC;IAC9B,WAAW,GAAG,IAAI,GAAG,EAAE,CAAC;IACxB,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;IAC1B,kBAAkB,GAAG,SAAS,CAAC;IAC/B,gFAAgF;IAChF,0EAA0E;IAC1E,gFAAgF;IAChF,2EAA2E;IAC3E,kDAAkD;IAClD,IAAA,8CAA4B,GAAE,CAAC;IAC/B,IAAI,aAAa,EAAE,CAAC;QAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAAC,aAAa,GAAG,IAAI,CAAC;IAAC,CAAC;AAC5E,CAAC;AAED;;;;;GAKG;AACH,SAAS,qBAAqB,CAAC,KAAqB;IAClD,OAAO,KAAK,CAAC,SAAS,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;AAChD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,gBAAgB,CAAC,IAAgC,EAAE,IAAoB;IAC9E,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC,CAAC,8CAA8C;IACtE,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,CAAC,kBAAkB;QAAE,OAAO,IAAI,CAAC;IACrE,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,aAAa;QAAE,OAAO,IAAI,CAAC;IAC3D,IAAI,IAAI,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC,QAAQ,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IACjE,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC/C,8EAA8E;IAC9E,oEAAoE;IACpE,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACzC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IACjD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,SAAS,sBAAsB,CAAC,KAAa,EAAE,IAAgC,EAAE,IAAoB;IACnG,6EAA6E;IAC7E,4EAA4E;IAC5E,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC;IACrC,IAAI,IAAI,KAAK,MAAM,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,aAAa,KAAK,cAAc,CAAC,EAAE,CAAC;QACrF,MAAM,IAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACzC,IAAA,kCAAgB,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC9B,IAAA,wCAAsB,EAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9C,OAAO;IACT,CAAC;IACD,IAAI,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;QACjC,IAAA,gCAAc,EAAC,IAAI,EAAE,KAAK,EAAE,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED,wGAAwG;AACxG,SAAgB,uBAAuB,CAAC,EAA6D;IACnG,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IACD,aAAa,GAAG,EAAE,CAAC;AACrB,CAAC;AAED,SAAgB,wBAAwB;IACtC,OAAO;QACL,cAAc,EAAE,UAAU,CAAC,IAAI;QAC/B,kBAAkB,EAAE,cAAc,CAAC,IAAI;QACvC,qBAAqB,EAAE,iBAAiB,CAAC,IAAI;QAC7C,eAAe,EAAE,WAAW,CAAC,IAAI;KAClC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAgB,yBAAyB,CAAC,SAIzC;IACC,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAChF,CAAC;IACD,IAAI,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAExD,2DAA2D;IAC3D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,KAAK,GAAG,YAAY,SAAS,CAAC,UAAU,EAAE,CAAC;QAC3C,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAEvC,0EAA0E;IAC1E,MAAM,IAAI,GAAmB,QAAQ,IAAI;QACvC,UAAU,EAAE,SAAS,CAAC,UAAU;QAChC,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,kBAAkB,EAAE,CAAC;QACrB,YAAY,EAAE,CAAC;QACf,eAAe,EAAE,CAAC;QAClB,QAAQ,EAAE,KAAK;QACf,oBAAoB,EAAE,KAAK;KACV,CAAC;IAEpB,MAAM,QAAQ,GAAmB;QAC/B,GAAG,IAAI;QACP,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;QAChD,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,OAAO,EAAE,IAAI;KACd,CAAC;IACF,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAE1B,0DAA0D;IAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;IACrC,IACE,KAAK,CAAC,OAAO;QACb,KAAK,CAAC,kBAAkB,KAAK,cAAc;QAC3C,KAAK,CAAC,KAAK,EAAE,WAAW,IAAI,IAAI;QAChC,KAAK,CAAC,KAAK,CAAC,WAAW,IAAI,GAAG,EAC9B,CAAC;QACD,MAAM,OAAO,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QAC9E,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACzB,6EAA6E;QAC7E,IAAI,OAAO,CAAC,kBAAkB,KAAK,SAAS;YAAE,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAChF,CAAC;IAED,OAAO,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED,+EAA+E;AAC/E,SAAS,eAAe;IACtB,OAAO,UAAU,CAAC,IAAI,GAAG,cAAc,EAAE,CAAC;QACxC,gEAAgE;QAChE,gFAAgF;QAChF,IAAI,WAAW,GAAkB,IAAI,CAAC;QACtC,IAAI,QAAQ,GAAG,QAAQ,CAAC;QACxB,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,UAAU,EAAE,CAAC;YACxC,MAAM,EAAE,GAAG,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC;YAC/D,IAAI,EAAE,GAAG,QAAQ,EAAE,CAAC;gBAClB,QAAQ,GAAG,EAAE,CAAC;gBACd,WAAW,GAAG,KAAK,CAAC;YACtB,CAAC;QACH,CAAC;QACD,IAAI,WAAW,IAAI,IAAI;YAAE,MAAM;QAC/B,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAChD,6EAA6E;QAC7E,IAAI,WAAW,EAAE,MAAM,KAAK,SAAS;YAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC9D,8EAA8E;QAC9E,IAAI,WAAW;YAAE,IAAA,kCAAgB,EAAC,WAAW,EAAE,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAC;QACnF,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC/B,IAAI,WAAW,EAAE,CAAC;YAChB,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YACjD,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAC3C,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAC7C,4EAA4E;YAC5E,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,cAAc,EAAE,CAAC;gBACzC,IAAI,IAAI,KAAK,WAAW,CAAC,UAAU,EAAE,CAAC;oBACpC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAC3B,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa,EAAE,KAAqB;IACpD,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACnC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7B,IAAI,UAAU,CAAC,IAAI,GAAG,cAAc;QAAE,eAAe,EAAE,CAAC;IACxD,qFAAqF;IACrF,sEAAsE;IACtE,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAC7C,CAAC;AAED,4CAA4C;AAC5C,SAAS,UAAU;IACjB,0EAA0E;IAC1E,uEAAuE;IACvE,2EAA2E;IAC3E,+EAA+E;IAC/E,gDAAgD;IAChD,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC;QACxC,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;YAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC;IACD,UAAU,CAAC,KAAK,EAAE,CAAC;IACnB,cAAc,CAAC,KAAK,EAAE,CAAC;IACvB,iBAAiB,CAAC,KAAK,EAAE,CAAC;IAC1B,WAAW,CAAC,KAAK,EAAE,CAAC;IACpB,aAAa,CAAC,KAAK,EAAE,CAAC;IACtB,IAAI,aAAa,EAAE,CAAC;QAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAAC,aAAa,GAAG,IAAI,CAAC;IAAC,CAAC;AAC5E,CAAC;AAED,SAAS,gBAAgB,CAAC,UAAkB;IAC1C,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAChD,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5C,CAAC;AAED;;;;;;GAMG;AACH,SAAS,wBAAwB,CAAC,UAAkB;IAClD,OAAO,gBAAgB,CAAC,UAAU,CAAC;WAC9B,CAAC,IAAA,iCAAiB,EAAC,UAAU,CAAC;YAC/B,CAAC,CAAC,gBAAgB,CAAC,IAAA,uCAAuB,EAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YAC7D,CAAC,CAAC,SAAS,CAAC,CAAC;AACnB,CAAC;AAED,sGAAsG;AACtG,SAAS,iBAAiB,CAAC,KAAc,EAAE,GAAa;IACtD,8EAA8E;IAC9E,wEAAwE;IACxE,8EAA8E;IAC9E,4EAA4E;IAC5E,uEAAuE;IACvE,uEAAuE;IACvE,0CAA0C;IAC1C,MAAM,CAAC,GAAG,GAA8D,CAAC;IACzE,MAAM,CAAC,GAAG,KAAgE,CAAC;IAC3E,MAAM,SAAS,GAAG,CAAC,EAAE,SAAS,IAAI,CAAC,EAAE,SAAS,CAAC;IAC/C,OAAO,CAAC,EAAE,UAAU,IAAI,CAAC,EAAE,UAAU,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAC3G,CAAC;AAED,MAAM,wBAAwB,GAAG,mCAAmC,CAAC;AAErE,SAAS,4BAA4B,CACnC,KAAa,EACb,KAAqB,EACrB,WAA+B;IAE/B,MAAM,aAAa,GAAG,EAAE,GAAG,IAAA,gCAAc,EAAC,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;IACpE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC/B,OAAO;QACL,MAAM,EAAE,QAAiB;QACzB,KAAK,EAAE;YACL,WAAW,EAAE,WAAW,IAAI,wBAAwB;YACpD,cAAc,EAAE,aAAa,KAAK,IAAI,aAAa,CAAC,kBAAkB,EAAE;YACxE,WAAW,EAAE,aAAa,CAAC,kBAAkB;SAC9C;KACF,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,SAAgB,qBAAqB;IACnC,OAAO,OAAO,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC;AACtC,CAAC;AAED,SAAS,aAAa;IACpB,OAAO,OAAO,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC;AACtC,CAAC;AAED,SAAgB,QAAQ,CAAC,GAAsB;IAC7C,yEAAyE;IACzE,6EAA6E;IAC7E,8EAA8E;IAC9E,kBAAkB,GAAG,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,wBAA0D,CAAC;IACvG,sDAAsD;IACtD,4EAA4E;IAC5E,MAAM,EAAE,GAAG,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;IAClC,MAAM,cAAc,GAAG,CAAC,CAAU,EAAsB,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjG,MAAM,YAAY,GAAG,IAAA,iCAAiB,EAAC,EAAE,CAAC,YAAY,CAAC,CAAC;IACxD,MAAM,MAAM,GAAoB;QAC9B,GAAG,sBAAc;QACjB,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,kBAAkB,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,cAAc,CAAC,EAAE,CAAC,kBAAkB,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxH,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,qBAAqB,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,cAAc,CAAC,EAAE,CAAC,qBAAqB,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjI,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,kBAAkB,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,cAAc,CAAC,EAAE,CAAC,kBAAkB,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxH,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,CAAC,cAA0B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9F,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,CAAC,aAAyB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3F,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,cAAc,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClG,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,sBAAsB,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,cAAc,CAAC,EAAE,CAAC,sBAAsB,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpI,GAAG,CAAC,OAAO,EAAE,CAAC,iBAAiB,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,iBAAiB,CAAC;YACtG,CAAC,CAAC,EAAE,iBAAiB,EAAE,EAAE,CAAC,iBAA8C,EAAE;YAC1E,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,OAAO,EAAE,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzF,CAAC;IACF,IAAA,YAAG,EAAC,0CAA0C,MAAM,CAAC,kBAAkB,0BAA0B,MAAM,CAAC,qBAAqB,uBAAuB,MAAM,CAAC,kBAAkB,mBAAmB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,gBAAgB,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IAEjU,kFAAkF;IAClF,gFAAgF;IAChF,gFAAgF;IAChF,mFAAmF;IACnF,6EAA6E;IAC7E,uEAAuE;IACvE,CAAC;QACC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,IAAA,0CAAwB,EAAC,IAAI,CAAC,CAAC;QACjD,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,IAAA,gCAAc,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAC7C,IAAI,QAAQ,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;gBAChC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBAClD,IAAI,QAAQ,CAAC,oBAAoB,EAAE,CAAC;oBAClC,qEAAqE;oBACrE,uEAAuE;gBACzE,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,IAAA,YAAG,EAAC,wCAAwC,UAAU,CAAC,IAAI,0BAA0B,CAAC,CAAC;QACzF,CAAC;IACH,CAAC;IAED,sFAAsF;IACtF,MAAM,YAAY,GAAG,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IACtE,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,IAAA,cAAK,EAAC,4GAA4G,CAAC,CAAC;QACpH,OAAO;IACT,CAAC;IAED,YAAY,CAAC,uBAAuB,EAAE,KAAK,EAAE,KAAyC,EAAE,EAAE;QACxF,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,UAAU;YAAE,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,UAAU;YAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAE/C,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAE1C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC;QAEhC,uFAAuF;QACvF,8FAA8F;QAC9F,MAAM,KAAK,GAAG,QAAQ,CAAC,oBAAoB;YACzC,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE;YAC9C,CAAC,CAAC,QAAQ,CAAC;QACb,IAAI,QAAQ,CAAC,oBAAoB;YAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAE1D,MAAM,QAAQ,GAAG,IAAA,wCAAkB,EAAC,KAAK,EAAE;YACzC,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;YAChD,cAAc,EAAE,KAAK,CAAC,cAAc;SACrC,CAAC,CAAC;QAEH,IAAA,YAAG,EAAC,8CAA8C,UAAU,WAAW,QAAQ,CAAC,MAAM,SAAS,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,kBAAkB,UAAU,KAAK,CAAC,kBAAkB,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC;QAElN,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxB,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,wEAAwE;gBACxE,uEAAuE;gBACvE,kEAAkE;gBAClE,uEAAuE;gBACvE,uEAAuE;gBACvE,kEAAkE;gBAClE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;YAChC,CAAC;YACD,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,OAAO,GAAG,IAAA,gCAAc,EAAC,IAAA,+BAAa,EAAC,KAAK,CAAC,CAAC,CAAC;gBACrD,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACzB,OAAO;oBACL,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE;wBACL,WAAW,EAAE,QAAQ,CAAC,gBAAiB;wBACvC,cAAc,EAAE,aAAa,KAAK,IAAI,OAAO,CAAC,kBAAkB,EAAE;wBAClE,WAAW,EAAE,KAAK,CAAC,kBAAkB,GAAG,OAAO,CAAC,YAAY;qBAC7D;iBACF,CAAC;YACJ,CAAC;YACD,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,wBAAwB,CAAC;gBAChE,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;oBAClC,MAAM,OAAO,GAAG,EAAE,GAAG,IAAA,gCAAc,EAAC,KAAK,CAAC,EAAE,oBAAoB,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;oBAC1F,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;4BAC3B,UAAU;4BACV,IAAI,EAAE,QAAQ,CAAC,gBAAgB,IAAI,mCAAmC;4BACtE,cAAc,EAAE,mBAAmB,UAAU,IAAI,OAAO,CAAC,kBAAkB,EAAE;4BAC7E,SAAS,EAAE,iBAAiB;4BAC5B,KAAK,EAAE,yCAAuB,CAAC,cAAc;yBAC9C,CAAC,CAAC;wBACH,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;4BACtE,IAAA,aAAI,EAAC,6DAA6D,UAAU,0BAA0B,CAAC,CAAC;4BACxG,OAAO,4BAA4B,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;wBAC/E,CAAC;wBACD,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;wBACzB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;oBAChC,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,IAAA,aAAI,EAAC,2DAA2D,UAAU,KAAK,GAAG,0BAA0B,CAAC,CAAC;wBAC9G,OAAO,4BAA4B,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;oBAC/E,CAAC;gBACH,CAAC;gBACD,OAAO,4BAA4B,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;YAC/E,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,QAAQ,CAAC,KAAK,EAAE,IAAA,uBAAK,EAAC,KAAK,EAAE,QAAQ,CAAC,WAAY,CAAC,CAAC,CAAC;gBACrD,sFAAsF;gBACtF,YAAY,CAAC,QAAQ,CAAC,CAAC;gBACvB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;YAChC,CAAC;YACD,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACvB,oDAAoD;gBACpD,yFAAyF;gBACzF,IAAI,eAAe,CAAC;gBACpB,IAAI,CAAC;oBACH,MAAM,gBAAgB,GAAG,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,IAAI,EAAE,CAAC;oBACnE,MAAM,eAAe,GAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC;wBACjD,CAAC,CAAC,MAAM,IAAA,sCAAqB,EAAC,gBAAgB,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC;wBACtE,CAAC,CAAC,EAAE,CAAC;oBACP,eAAe,GAAG,IAAA,gCAAgB,EAAC;wBACjC,QAAQ,EAAE,gBAAgB;wBAC1B,OAAO,EAAE,eAAe;wBACxB,WAAW,EAAE,EAAE;wBACf,GAAG;qBACJ,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,uEAAuE;oBACvE,qEAAqE;oBACrE,sEAAsE;oBACtE,mEAAmE;oBACnE,wEAAwE;oBACxE,IAAA,uBAAc,EAAC,OAAO,EAAE,yDAAyD,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC9H,eAAe,GAAG,EAAE,MAAM,EAAE,SAAkB,EAAE,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,aAAa,EAAE,kBAAkB,EAAE,CAAC;gBACvI,CAAC;gBACD,+DAA+D;gBAC/D,yEAAyE;gBACzE,IAAI,OAAO,GAAG,KAAK,CAAC;gBACpB,IAAI,OAAO,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;oBAC7C,OAAO,GAAG,IAAA,kCAAmB,EAAC,OAAO,EAAE;wBACrC,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG;qBACvD,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,OAAO,CAAC,kBAAkB,KAAK,UAAU,EAAE,CAAC;oBAC9C,OAAO,GAAG,IAAA,kCAAmB,EAAC,OAAO,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;oBACjF,OAAO,GAAG,IAAA,kCAAmB,EAAC,OAAO,EAAE;wBACrC,IAAI,EAAE,mBAAmB;wBACzB,KAAK;wBACL,GAAG;wBACH,QAAQ,EAAE,eAAe;qBAC1B,CAAC,CAAC;gBACL,CAAC;gBACD,6EAA6E;gBAC7E,0EAA0E;gBAC1E,8EAA8E;gBAC9E,+EAA+E;gBAC/E,6EAA6E;gBAC7E,uEAAuE;gBACvE,2EAA2E;gBAC3E,QAAQ,CAAC,KAAK;gBACZ,0EAA0E;gBAC1E,2EAA2E;gBAC3E,4EAA4E;gBAC5E,4EAA4E;gBAC5E,8EAA8E;gBAC9E,kEAAkE;gBAClE,eAAe,CAAC,MAAM,KAAK,QAAQ;oBACjC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE;oBAC3C,wEAAwE;oBACxE,yEAAyE;oBACzE,mEAAmE;oBACnE,CAAC,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM;wBACzB,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE;wBAC3C,CAAC,CAAC,IAAA,0BAAQ,EAAC,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;gBAC7D,IAAA,uBAAc,EAAC,MAAM,EAAE,sBAAsB,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE,eAAe,CAAC,MAAM,EAAE,aAAa,EAAE,eAAe,CAAC,aAAa,EAAE,CAAC,CAAC;gBAC5J,0FAA0F;gBAC1F,YAAY,CAAC,QAAQ,CAAC,CAAC;gBACvB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;YAChC,CAAC;YACD;gBACE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAClC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,iBAAiB,EAAE,CAAC,KAAmC,EAAE,GAA2B,EAAE,EAAE;QACnG,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO;QAChC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAE7B,8EAA8E;QAC9E,iFAAiF;QACjF,MAAM,aAAa,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE;YAC/C,IAAI,EAAE,gBAAgB;YACtB,KAAK;YACL,QAAQ,EAAE,aAAa;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;SAChB,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACjB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;YAC/B,OAAO;QACT,CAAC;QACD,MAAM,SAAS,GAAG,IAAA,mCAAc,EAAC,aAAa,EAAE;YAC9C,IAAI,EAAE,KAAK,CAAC,QAAQ;YACpB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;YAC1D,KAAK,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;SAC7C,CAAC,CAAC;QACH,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC3B,IAAA,aAAI,EAAC,8CAA8C,UAAU,SAAS,KAAK,CAAC,QAAQ,aAAa,SAAS,CAAC,cAAc,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAC3J,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,mBAAmB,EAAE,CAAC,MAAuC,EAAE,GAA2B,EAAE,EAAE;QACzG,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YACvB,IAAA,YAAG,EAAC,0CAA0C,UAAU,kBAAkB,CAAC,CAAC;YAC5E,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAA,2CAA4B,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,kBAAkB,EAAE,CAAC,MAAsC,EAAE,GAA2B,EAAE,EAAE;QACvG,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YACvB,IAAA,YAAG,EAAC,yCAAyC,UAAU,iBAAiB,CAAC,CAAC;YAC1E,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAA,yCAA0B,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,oBAAoB,EAAE,CAAC,KAAkC,EAAE,GAA2B,EAAE,EAAE;QACrG,MAAM,UAAU,GAAG,GAAG,EAAE,UAAU,CAAC;QACnC,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO;QAEhC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAC7B,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,oEAAoE;QACpE,OAAO,GAAG,IAAA,kCAAmB,EAAC,OAAO,EAAE;YACrC,IAAI,EAAE,oBAAoB;YAC1B,KAAK;YACL,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;SAChB,CAAC,CAAC;QACH,oEAAoE;QACpE,IAAI,OAAO,KAAK,KAAK;YAAE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAEhD,yDAAyD;QACzD,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YAClC,OAAO,GAAG,IAAA,0BAAW,EAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YAC7C,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACzB,IAAA,YAAG,EAAC,kDAAkD,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;YAC1F,CAAC;QACH,CAAC;QAED,sEAAsE;QACtE,8EAA8E;QAC9E,yFAAyF;QACzF,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACzB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC;gBAC/E,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACzB,IAAA,aAAI,EAAC,0EAA0E,UAAU,EAAE,CAAC,CAAC;YAC/F,CAAC;iBAAM,CAAC;gBACN,OAAO;YACT,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,iFAAiF;QACjF,6EAA6E;QAC7E,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,6BAA6B,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,gCAAgC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAE/B,kEAAkE;QAClE,MAAM,SAAS,GAAG,IAAA,2CAAwB,EACxC,OAAO,CAAC,kBAAkB,EAC1B,OAAO,CAAC,QAAQ,EAAE,MAAM,EACxB,MAAM,CAAC,iBAAiB,CACzB,CAAC;QACF,MAAM,SAAS,GAAG,IAAA,uCAAoB,EAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAClE,IAAI,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAErC,mCAAmC;QACnC,KAAK,CAAC,IAAI,CAAC,kFAAkF,CAAC,CAAC;QAE/F,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAC7E,mFAAmF;IACnF,+EAA+E;IAC/E,iFAAiF;IACjF,8EAA8E;IAC9E,8DAA8D;IAC9D,YAAY,CAAC,sBAAsB,EAAE,CAAC,MAAyC,EAAE,GAA2B,EAAO,EAAE;QACnH,MAAM,UAAU,GAAG,GAAG,EAAE,UAAU,CAAC;QACnC,IAAI,CAAC,UAAU;YAAE,OAAO;QAExB,sEAAsE;QACtE,gDAAgD;QAChD,MAAM,KAAK,GAAG,wBAAwB,CAAC,UAAU,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO;QAEjE,MAAM,CAAC,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QACxB,kEAAkE;QAClE,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,EAAE,YAAY,IAAI,YAAY,CAAC;QAC7D,IAAI,CAAC,OAAO,EAAE,QAAQ;YAAE,OAAO;QAE/B,wEAAwE;QACxE,wEAAwE;QACxE,sEAAsE;QACtE,sEAAsE;QACtE,8DAA8D;QAC9D,oEAAoE;QACpE,IAAI,IAAA,iCAAiB,EAAC,UAAU,CAAC,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YACjD,IAAA,YAAG,EAAC,6CAA6C,UAAU,wBAAwB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAClG,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,IAAA,gCAAgB,EAC3B,KAAK,CAAC,kBAAkB,EACxB,KAAK,CAAC,QAAQ,EAAE,MAAM,EACtB,IAAA,iCAAiB,EAAC,UAAU,CAAC,EAC7B,OAAO,CACR,CAAC;QACF,MAAM,OAAO,GAAG,IAAA,8BAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC9C,IAAI,OAAO,EAAE,CAAC;YACZ,IAAA,YAAG,EAAC,6CAA6C,UAAU,SAAS,IAAI,UAAU,OAAO,EAAE,CAAC,CAAC;YAC7F,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC;QACpC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,8DAA8D;IAC9D,YAAY,CAAC,kBAAkB,EAAE,CAAC,MAAqC,EAAE,GAA2B,EAAO,EAAE;QAC3G,MAAM,UAAU,GAAG,GAAG,EAAE,UAAU,CAAC;QACnC,IAAI,CAAC,UAAU;YAAE,OAAO,EAAE,OAAO,EAAE,MAAe,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO,EAAE,OAAO,EAAE,MAAe,EAAE,CAAC;QAE7D,MAAM,OAAO,GAAG,GAAG,EAAE,OAAO,CAAC;QAC7B,IAAI,OAAO,IAAI,MAAM,CAAC,cAAc,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACxD,IAAA,YAAG,EAAC,+CAA+C,OAAO,YAAY,UAAU,aAAa,CAAC,CAAC;YAC/F,OAAO;gBACL,OAAO,EAAE,OAAgB;gBACzB,MAAM,EAAE,6BAA6B,OAAO,EAAE;gBAC9C,OAAO,EAAE,2CAA2C,OAAO,GAAG;aAC/D,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,MAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,kBAAkB,EAAE,CAAC,KAAoC,EAAE,GAA2B,EAAE,EAAE;QACrG,MAAM,UAAU,GAAG,GAAG,EAAE,UAAU,CAAC;QACnC,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAE3C,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO;QAEhC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAkB,CAAC;QAE1C,4EAA4E;QAC5E,yFAAyF;QACzF,MAAM,YAAY,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE;YAC9C,IAAI,EAAE,gBAAgB;YACtB,KAAK;YACL,QAAQ,EAAE,WAAW;YACrB,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;SAChB,CAAC,CAAC;QAEH,mFAAmF;QACnF,iFAAiF;QACjF,kDAAkD;QAClD,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,IAAA,0CAAsB,EAAC,KAAK,CAAC,CAAC;QACxD,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5G,MAAM,QAAQ,GAAG,oBAAoB;YACnC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAgB,EAAE,MAAM,EAAE,GAAG,QAAQ,kCAAkC,EAAE,OAAO,EAAE,SAAS,QAAQ,iDAAiD,EAAE,CAAC;YACrK,CAAC,CAAC,IAAA,4CAAwB,EAAC,KAAK,EAAE;gBAC9B,GAAG,EAAE,QAAQ,IAAI,KAAK,CAAC,SAAS,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE;gBACvD,aAAa,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI;gBACpC,aAAa,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE;gBACrD,4BAA4B,EAAE,KAAK,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,IAAI,KAAK;gBAC5E,uEAAuE;aACxE,CAAC,CAAC;QAEP,4EAA4E;QAC5E,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,IAAI,IAAA,mCAAe,EAAC,QAAQ,CAAC,CAAC;QACxE,MAAM,UAAU,GAA+C;YAC7D,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,KAAK;YACL,QAAQ;YACR,YAAY;YACZ,OAAO,EAAE,QAAQ,CAAC,OAAiD;YACnE,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,0EAA0E;YAC1E,wEAAwE;YACxE,6EAA6E;YAC7E,GAAG,EAAE,QAAQ,IAAI,KAAK,CAAC,SAAS,EAAE,IAAI;SACvC,CAAC;QACF,MAAM,SAAS,GAAG,GAAG,CAAC;QACtB,MAAM,SAAS,GAAG,YAAY,CAAC,eAAe,IAAI,EAAE,CAAC;QACrD,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,IAAI,SAAS;YAC7C,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC;YACpD,CAAC,CAAC,CAAC,GAAG,SAAS,EAAE,UAAU,CAAC,CAAC;QAC/B,QAAQ,CAAC,KAAK,EAAE;YACd,GAAG,YAAY;YACf,eAAe,EAAE,SAAS;SAC3B,CAAC,CAAC;QACH,4CAA4C;QAC5C,IAAA,oCAAgB,EAAC,UAAU,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAErE,IAAI,QAAQ,CAAC,OAAO,KAAK,OAAO;YAAE,OAAO;QAEzC,2EAA2E;QAC3E,+EAA+E;QAC/E,8EAA8E;QAC9E,2EAA2E;QAC3E,IAAI,QAAQ,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YACjC,IAAA,uBAAc,EAAC,MAAM,EAAE,0BAA0B,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YAC7G,OAAO;gBACL,KAAK,EAAE,IAAI;gBACX,WAAW,EAAG,QAAkE,CAAC,OAAO;aACzF,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,EAAE,QAAQ,EAAE,yBAAyB,EAAE,CAAC,CAAC;IAE5C,YAAY,CAAC,YAAY,EAAE,CAAC,KAA+B,EAAE,GAA2B,EAAE,EAAE;QAC1F,MAAM,UAAU,GAAG,GAAG,EAAE,UAAU,CAAC;QACnC,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,6EAA6E;QAC7E,4EAA4E;QAC5E,8EAA8E;QAC9E,gFAAgF;QAChF,MAAM,KAAK,GAAG,wBAAwB,CAAC,UAAU,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO;QAEhC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;YAClB,yEAAyE;YACzE,0EAA0E;YAC1E,wEAAwE;YACxE,2EAA2E;YAC3E,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC3D,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAC9B,IAAA,aAAI,EAAC,uEAAuE,UAAU,+FAA+F,CAAC,CAAC;YACzL,CAAC;YACD,OAAO;QACT,CAAC;QAED,6DAA6D;QAC7D,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC;YAC/F,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAEpB,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAC7B,IAAI,OAAO,GAAG,EAAE,GAAG,KAAK,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,GAAG,KAAK,EAAE,CAAC;QAC3E,gEAAgE;QAChE,0FAA0F;QAC1F,OAAO,GAAG,IAAA,kCAAmB,EAAC,OAAO,EAAE;YACrC,IAAI,EAAE,gBAAgB;YACtB,KAAK;YACL,QAAQ,EAAE,YAAY;YACtB,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;YACf,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE;SACnE,CAAC,CAAC;QACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACzB,IAAA,YAAG,EAAC,mCAAmC,UAAU,YAAY,KAAK,UAAU,OAAO,CAAC,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChK,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,eAAe,EAAE,CAAC,KAAkC,EAAE,EAAE;QACnE,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACxC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YACtD,IAAA,YAAG,EAAC,8BAA8B,KAAK,CAAC,SAAS,MAAM,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,4EAA4E;QAC5E,sEAAsE;QACtE,2EAA2E;QAC3E,4EAA4E;QAC5E,2EAA2E;QAC3E,8DAA8D;QAC9D,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QACpC,IAAI,UAAU,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,IAAA,yCAAuB,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YACxD,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,QAAQ,GAAG,IAAA,gCAAc,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC7C,IAAI,QAAQ,EAAE,CAAC;oBACb,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;oBAChC,iBAAiB,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;oBACzC,IAAA,YAAG,EAAC,0CAA0C,KAAK,gBAAgB,UAAU,cAAc,QAAQ,CAAC,kBAAkB,IAAI,KAAK,EAAE,CAAC,CAAC;gBACrI,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,aAAa,EAAE,CAAC,KAAgC,EAAE,EAAE;QAC/D,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC3E,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;YAC7B,uEAAuE;YACvE,uEAAuE;YACvE,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;gBAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;YACvD,yEAAyE;YACzE,yEAAyE;YACzE,0EAA0E;YAC1E,oEAAoE;YACpE,IAAI,KAAK,CAAC,kBAAkB,KAAK,MAAM,IAAI,KAAK,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;gBAClF,IAAA,gCAAc,EAAC,KAAK,EAAE,KAAK,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;YAC7D,CAAC;YACD,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACzB,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACrC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC/B,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;QACD,IAAA,YAAG,EAAC,oCAAoC,UAAU,mBAAmB,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,WAAW,EAAE,KAAK,EAAE,KAA8B,EAAE,GAA2B,EAAE,EAAE;QAC9F,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO;QAC9B,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAE7B,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5C,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAE/B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC7C,kFAAkF;YAClF,8EAA8E;YAC9E,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,kBAAkB,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;gBAC1F,QAAQ,CAAC,KAAK,EAAE,IAAA,uBAAK,EAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC;gBACrD,IAAA,aAAI,EAAC,yEAAyE,UAAU,EAAE,CAAC,CAAC;gBAC5F,OAAO;YACT,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,kBAAkB,GAAG,KAAK,CAAC,qBAAqB,EAAE,CAAC;gBACzF,MAAM,SAAS,GAAG,IAAA,gCAAc,EAAC,IAAA,mCAAiB,EAAC,OAAO,CAAC,CAAC,CAAC;gBAC7D,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,wBAAwB,CAAC;gBAChE,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;oBAClC,IAAI,CAAC;wBACH,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC;4BACjC,UAAU;4BACV,IAAI,EAAE,IAAA,2CAAqB,EAAC,SAAS,CAAC;4BACtC,cAAc,EAAE,sBAAsB,UAAU,IAAI,SAAS,CAAC,kBAAkB,EAAE;4BAClF,SAAS,EAAE,iBAAiB;4BAC5B,KAAK,EAAE,yCAAuB,CAAC,cAAc;yBAC9C,CAAC,CAAC;wBACH,IAAI,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;4BACxF,IAAA,aAAI,EAAC,yEAAyE,UAAU,EAAE,CAAC,CAAC;wBAC9F,CAAC;6BAAM,CAAC;4BACN,mFAAmF;4BACnF,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;4BACtC,IAAI,OAAO,EAAE,CAAC;gCACZ,QAAQ,CAAC,KAAK,EAAE;oCACd,GAAG,OAAO;oCACV,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,GAAG,CAAC;oCAClD,oBAAoB,EAAE,IAAI;oCAC1B,YAAY,EAAE,CAAC;oCACf,QAAQ,EAAE,IAAI;iCACf,CAAC,CAAC;4BACL,CAAC;iCAAM,CAAC;gCACN,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;4BAC7B,CAAC;4BACD,IAAA,aAAI,EAAC,mEAAmE,UAAU,EAAE,CAAC,CAAC;4BACtF,OAAO;wBACT,CAAC;oBACH,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,IAAA,aAAI,EAAC,8DAA8D,GAAG,EAAE,CAAC,CAAC;oBAC5E,CAAC;gBACH,CAAC;YACH,CAAC;YACD,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5D,IAAA,aAAI,EAAC,0DAA0D,UAAU,4DAA4D,CAAC,CAAC;YACvI,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QAC3F,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,IAAA,uBAAK,EAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC9E,+EAA+E;QAC/E,MAAM,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;QACrF,qEAAqE;QACrE,MAAM,iBAAiB,GAAG,IAAA,kCAAmB,EAAC,IAAA,mCAAiB,EAAC,kBAAkB,CAAC,EAAE;YACnF,IAAI,EAAE,qBAAqB;YAC3B,KAAK;YACL,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,KAAK;YAChC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;SAChB,CAAC,CAAC;QACH,8CAA8C;QAC9C,MAAM,aAAa,GAAmB;YACpC,GAAG,iBAAiB;YACpB,QAAQ,EAAE,QAAQ,iBAAiB,CAAC,kBAAkB,IAAI,iBAAiB,CAAC,qBAAqB,YAAY;SAC9G,CAAC;QACF,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QAC/B,IAAA,uBAAc,EAAC,MAAM,EAAE,WAAW,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,kBAAkB,IAAI,KAAK,EAAE,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;IACxL,CAAC,CAAC,CAAC;IAEH,4BAA4B;IAC5B,MAAM,kBAAkB,GAAG,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,wBAAwB,CAAC;IACxE,IAAI,OAAO,kBAAkB,KAAK,UAAU,EAAE,CAAC;QAC7C,IAAA,cAAK,EAAC,6HAA6H,CAAC,CAAC;IACvI,CAAC;SAAM,CAAC;QACR,kBAAkB,CAAC;YACjB,SAAS,EAAE,WAAW;YACtB,WAAW,EAAE,4CAA4C;YACzD,mBAAmB,EAAE,WAAW;YAChC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACf,IAAI,CAAC,GAAG,CAAC,UAAU;oBAAE,OAAO,SAAS,CAAC;gBACtC,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAC/C,IAAI,KAAK;oBAAE,OAAO,IAAA,yBAAY,EAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAA+B,CAAC;gBAC/E,OAAO;oBACL,MAAM,EAAE,MAAe;oBACvB,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC;oBACf,kBAAkB,EAAE,CAAC;oBACrB,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;oBAC7C,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;oBACnD,sBAAsB,EAAE,MAAM,CAAC,sBAAsB,IAAI,CAAC;oBAC1D,oBAAoB,EAAE,KAAK;oBAC3B,OAAO,EAAE,KAAK;oBACd,eAAe,EAAE,CAAC;oBAClB,QAAQ,EAAE,KAAK;iBACc,CAAC;YAClC,CAAC;YACD,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACf,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;oBACnB,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;oBAC/C,IAAI,KAAK,EAAE,CAAC;wBACV,mEAAmE;wBACnE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS;4BAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;wBAC1D,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC9B,CAAC;oBACD,uEAAuE;oBACvE,gEAAgE;oBAChE,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;oBACzC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;oBACnC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;SACF,CAAC,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,IAAI,OAAO,GAAG,CAAC,qBAAqB,KAAK,UAAU,EAAE,CAAC;QACpD,IAAA,cAAK,EAAC,oFAAoF,CAAC,CAAC;IAC9F,CAAC;SAAM,CAAC;QAER,GAAG,CAAC,qBAAqB,CAAC,oBAAoB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAc,EAAE,EAAE;YAC3F,MAAM,UAAU,GAAG,GAAG,CAAC,UAAgC,CAAC;YACxD,IAAA,YAAG,EAAC,2CAA2C,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAC7F,IAAI,CAAC,UAAU,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAEnH,8EAA8E;YAC9E,MAAM,WAAW,GAAuB,GAAG,CAAC,IAA0B,CAAC;YACvE,MAAM,uBAAuB,GAAuB,GAAG,CAAC,qBAA2C,CAAC;YACpG,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,GAAG,CAAC,aAAmC,CAAC,CAAC;YAC5F,MAAM,kBAAkB,GACtB,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,IAAI,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3F,6EAA6E;YAC7E,4EAA4E;YAC5E,MAAM,qBAAqB,GACzB,OAAO,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;YAE3E,8DAA8D;YAC9D,MAAM,aAAa,GAAG,MAAM,CAAC,sBAAsB,IAAI,CAAC,CAAC;YACzD,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;YAChG,0HAA0H;YAC1H,MAAM,YAAY,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM,gBAAgB,GAAG,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC;YAChE,IAAI,CAAC,gBAAgB,IAAI,YAAY,IAAI,aAAa,EAAE,CAAC;gBACvD,IAAA,aAAI,EAAC,kEAAkE,YAAY,QAAQ,aAAa,GAAG,CAAC,CAAC;gBAC7G,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC;gBAC1F,OAAO;YACT,CAAC;YAED,sDAAsD;YACtD,MAAM,YAAY,GAAG,CAAC,CAAiB,EAAkB,EAAE;gBACzD,MAAM,IAAI,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;gBACtB,IAAI,uBAAuB,IAAI,IAAI;oBAAE,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC;gBAClI,IAAI,kBAAkB,IAAI,IAAI;oBAAE,IAAI,CAAC,WAAW,GAAG,kBAAkB,CAAC;gBACtE,OAAO,IAAI,CAAC;YACd,CAAC,CAAC;YAEF,+CAA+C;YAC/C,MAAM,mBAAmB,GAAG,CAAC,CAAiB,EAAkB,EAAE;gBAChE,sEAAsE;gBACtE,4EAA4E;gBAC5E,2EAA2E;gBAC3E,6EAA6E;gBAC7E,qDAAqD;gBACrD,MAAM,cAAc,GAAG,qBAAqB,IAAI,MAAM,CAAC,cAAc,IAAI,KAAK,CAAC;gBAC/E,IAAI,CAAC;oBACH,2FAA2F;oBAC3F,sFAAsF;oBACtF,MAAM,MAAM,GAAG,IAAA,oCAAkB,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,oBAAoB,CAAC,CAAC;oBACvE,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;oBACjD,IAAI,CAAC,cAAc,EAAE,CAAC;wBACpB,QAAQ,GAAG,EAAE,CAAC;oBAChB,CAAC;yBAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,oBAAoB,EAAE,CAAC;wBACzD,gEAAgE;wBAChE,2EAA2E;wBAC3E,wEAAwE;wBACxE,QAAQ,GAAG,IAAA,2CAAwB,EAAC,oBAAoB,CAAC,CAAC;oBAC5D,CAAC;oBACD,MAAM,QAAQ,GAAG,cAAc;wBAC7B,CAAC,CAAC,MAAM,CAAC,QAAQ;wBACjB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,qGAAqG,CAAC,CAAC;oBAChI,wEAAwE;oBACxE,sEAAsE;oBACtE,sEAAsE;oBACtE,sEAAsE;oBACtE,2DAA2D;oBAC3D,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE,GAAG,oBAAoB,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC;oBACtF,MAAM,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAC;oBAC5E,OAAO;wBACL,GAAG,CAAC;wBACJ,QAAQ,EAAE;4BACR,GAAG,aAAa;4BAChB,UAAU,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE;4BACrD,QAAQ;yBACT;wBACD,qBAAqB,EAAE,CAAC,CAAC,qBAAqB;qBAC/C,CAAC;gBACJ,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,mCAAmC;oBACnC,OAAO;wBACL,GAAG,CAAC;wBACJ,QAAQ,EAAE,EAAE,GAAG,yCAAuB,EAAE;wBACxC,mBAAmB,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;qBACtE,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,YAAY,CAAC;gBACvC,sEAAsE;gBACtE,yEAAyE;gBACzE,oEAAoE;gBACpE,sEAAsE;gBACtE,wEAAwE;gBACxE,mFAAmF;gBACnF,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,EAAE,cAAc;uBAC9C,qBAAqB,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBACjD,MAAM,aAAa,GAAG,IAAA,4BAAU,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;gBAClE,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,aAAa,EAAE,CAAC;oBACxE,IAAI,aAAa,EAAE,CAAC;wBAClB,IAAA,aAAI,EAAC,kDAAkD,UAAU,YAAY,KAAK,CAAC,MAAM,eAAe,KAAK,CAAC,kBAAkB,IAAI,MAAM,4BAA4B,QAAQ,EAAE,CAAC,CAAC;oBACpL,CAAC;oBACD,sEAAsE;oBACtE,wEAAwE;oBACxE,sEAAsE;oBACtE,mEAAmE;oBACnE,qEAAqE;oBACrE,qEAAqE;oBACrE,IAAI,aAAa,EAAE,CAAC;wBAClB,YAAY,CAAC,QAAQ,CAAC,CAAC;oBACzB,CAAC;oBACD,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAC5B,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBACrC,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC;oBAC9B,IAAI,QAAQ,GAAG,IAAA,0BAAQ,EAAC,IAAA,0BAAkB,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;oBACvE,iEAAiE;oBACjE,MAAM,YAAY,GAAG,WAAW,IAAI,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC;oBAChE,QAAQ,GAAG,IAAA,kCAAmB,EAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBAC1H,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;oBAClC,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;oBACzC,QAAQ,GAAG,IAAA,kCAAmB,EAAC,QAAQ,EAAE;wBACvC,IAAI,EAAE,iBAAiB;wBACvB,KAAK;wBACL,SAAS,EAAE,EAAE,IAAI,EAAE,oBAAoB,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,oBAAoB,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE;wBACnM,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;qBAChB,CAAC,CAAC;oBACH,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;oBAC1B,iBAAiB,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;oBACzC,IAAA,YAAG,EAAC,iCAAiC,UAAU,YAAY,KAAK,SAAS,KAAK,CAAC,MAAM,aAAa,YAAY,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;gBAClI,CAAC;qBAAM,CAAC;oBACN,IAAA,aAAI,EAAC,0CAA0C,UAAU,WAAW,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;oBACpF,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,gCAAgC,KAAK,CAAC,MAAM,6BAA6B,EAAE,CAAC,CAAC;oBAC3I,OAAO;gBACT,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC;gBAC9B,IAAI,KAAK,GAAG,IAAA,0BAAQ,EAAC,IAAA,0BAAkB,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;gBACpE,KAAK,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACnH,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;gBAC5B,KAAK,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;gBACnC,KAAK,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE;oBACjC,IAAI,EAAE,iBAAiB;oBACvB,KAAK;oBACL,SAAS,EAAE,EAAE,IAAI,EAAE,oBAAoB,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,oBAAoB,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE;oBACnM,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;iBAChB,CAAC,CAAC;gBACH,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBACvB,iBAAiB,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBACzC,IAAA,YAAG,EAAC,iCAAiC,UAAU,YAAY,KAAK,UAAU,WAAW,IAAI,MAAM,GAAG,CAAC,CAAC;YACtG,CAAC;YAED,6DAA6D;YAC7D,YAAY,CAAC,SAAS,CAAC,CAAC;YAExB,IAAA,YAAG,EAAC,4CAA4C,EAAE,UAAU,CAAC,CAAC;YAC9D,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,qBAAqB,CAAC,kBAAkB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAc,EAAE,EAAE;YACzF,MAAM,UAAU,GAAG,GAAG,CAAC,UAAgC,CAAC;YACxD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAEnH,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAErH,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;YAC7B,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,8BAA8B,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAE1J,6DAA6D;YAC7D,MAAM,YAAY,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACtG,MAAM,OAAO,GAAG,IAAA,wBAAM,EAAC,YAAY,CAAC,CAAC;YACrC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACzB,0EAA0E;YAC1E,2EAA2E;YAC3E,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAChC,IAAA,YAAG,EAAC,+BAA+B,UAAU,+BAA+B,CAAC,CAAC;YAC9E,2CAA2C;YAC3C,YAAY,CAAC,SAAS,CAAC,CAAC;YACxB,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAc,EAAE,EAAE;YACvF,MAAM,UAAU,GAAG,GAAG,CAAC,UAAgC,CAAC;YACxD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAEnH,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;gBAAC,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAEpD,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;YAC7B,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBACvF,iFAAiF;gBACjF,MAAM,YAAY,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACpG,QAAQ,CAAC,KAAK,EAAE,IAAA,4BAAU,EAAC,YAAY,CAAC,CAAC,CAAC;gBAC1C,IAAA,YAAG,EAAC,6BAA6B,UAAU,IAAI,KAAK,CAAC,MAAM,OAAO,CAAC,CAAC;YACtE,CAAC;YACD,qDAAqD;YACrD,YAAY,CAAC,QAAQ,CAAC,CAAC;YACvB,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,qBAAqB,CAAC,kBAAkB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAc,EAAE,EAAE;YACzF,MAAM,UAAU,GAAG,GAAG,CAAC,UAAgC,CAAC;YACxD,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACpE,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,IAAA,yBAAY,EAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,6EAA6E;YAC7E,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3C,OAAO,CAAC,IAAI,EAAE;gBACZ,UAAU;gBACV,QAAQ,EAAE,KAAK,EAAE,QAAQ;gBACzB,6EAA6E;gBAC7E,eAAe,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM;oBAC7C,CAAC,CAAC,KAAK,CAAC,eAAe;oBACvB,CAAC,CAAC,IAAA,0CAAsB,EAAC,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC;gBACxE,QAAQ,EAAE,KAAK,EAAE,QAAQ;gBACzB,mBAAmB,EAAE,KAAK,EAAE,mBAAmB;aAChD,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,qBAAqB,CAAC,mBAAmB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAc,EAAE,EAAE;YAC1F,MAAM,UAAU,GAAG,GAAG,CAAC,UAAgC,CAAC;YACxD,MAAM,IAAI,GAAG,GAAG,CAAC,IAA0B,CAAC;YAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YACnH,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,iCAAiC,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAE7J,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAErH,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;YAC7B,QAAQ,CAAC,KAAK,EAAE,IAAA,yBAAO,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;YACtC,IAAA,YAAG,EAAC,gCAAgC,UAAU,YAAY,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACzE,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,+CAA+C;QAC/C,GAAG,CAAC,qBAAqB,CAAC,mBAAmB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAc,EAAE,EAAE;YAC7E,UAAU,EAAE,CAAC,CAAC,+DAA+D;YAC7E,IAAA,YAAG,EAAC,wCAAwC,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IAEH,CAAC;IAED,mEAAmE;IACnE,iFAAiF;IACjF,qFAAqF;IACrF,MAAM,oBAAoB,GAAG,MAAM,CAAC,CAAC,yBAAyB;IAE9D,wFAAwF;IACxF,IAAI,aAAa,EAAE,CAAC;QAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAAC,aAAa,GAAG,IAAI,CAAC;IAAC,CAAC;IAE1E,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,YAAY,GAAa,EAAE,CAAC;QAElC,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;YAClD,0CAA0C;YAC1C,0EAA0E;YAC1E,4EAA4E;YAC5E,2EAA2E;YAC3E,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,EAAE,cAAc;mBAChD,qBAAqB,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YACjD,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,kBAAkB,KAAK,SAAS,IAAI,KAAK,CAAC,kBAAkB,KAAK,SAAS,CAAC,EAAE,CAAC;gBACtI,MAAM,WAAW,GAAG,IAAA,2BAAU,EAAC;oBAC7B,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,SAAS,IAAI,GAAG;oBAC9D,GAAG;oBACH,cAAc;oBACd,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;iBAC7C,CAAC,CAAC;gBAEH,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;oBACxB,MAAM,OAAO,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE;wBACzC,IAAI,EAAE,eAAe;wBACrB,KAAK;wBACL,GAAG;qBACJ,CAAC,CAAC;oBACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;oBACzB,IAAA,aAAI,EAAC,uCAAuC,KAAK,CAAC,UAAU,QAAQ,KAAK,iBAAiB,WAAW,CAAC,eAAe,IAAI,CAAC,uBAAuB,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;gBACjL,CAAC;YACH,CAAC;YAED,mFAAmF;YACnF,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,kBAAkB,KAAK,cAAc;gBAC5D,KAAK,CAAC,KAAK,EAAE,WAAW,IAAI,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,WAAW,IAAI,GAAG,EAAE,CAAC;gBACvE,MAAM,OAAO,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE;oBACzC,IAAI,EAAE,WAAW;oBACjB,KAAK;oBACL,GAAG;iBACJ,CAAC,CAAC;gBACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACzB,2EAA2E;gBAC3E,yEAAyE;gBACzE,IAAI,OAAO,CAAC,kBAAkB,KAAK,SAAS;oBAAE,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC9E,IAAA,YAAG,EAAC,kCAAkC,KAAK,CAAC,UAAU,QAAQ,KAAK,YAAY,KAAK,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9G,CAAC;YAED,wEAAwE;YACxE,MAAM,YAAY,GAAG,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC;YAClE,IAAI,YAAY,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,YAAY,CAAC,GAAG,mBAAmB,EAAE,CAAC;gBACnE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,KAAK,EAAE,CAAC;gBACV,IAAA,aAAI,EAAC,uDAAuD,KAAK,CAAC,UAAU,QAAQ,KAAK,EAAE,CAAC,CAAC;gBAC7F,4EAA4E;gBAC5E,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;oBAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;gBACvD,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACzB,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBAC3C,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBACrC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;IACH,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACzB,0EAA0E;IAC1E,4EAA4E;IAC5E,aAAa,EAAE,KAAK,EAAE,EAAE,CAAC;AAC3B,CAAC"}
|
package/dist/src/logger.d.ts
CHANGED
|
@@ -9,6 +9,14 @@
|
|
|
9
9
|
*
|
|
10
10
|
* JSON mode emits one JSON object per line: { ts, level, msg, ...ctx }
|
|
11
11
|
* Text mode emits plain string args (backward-compatible with existing behavior).
|
|
12
|
+
*
|
|
13
|
+
* DRIFT REFERENCE: this logger is intentionally byte-equivalent in its
|
|
14
|
+
* safety-relevant parts (emitJson try/catch + fallback shape, splitArgs) to
|
|
15
|
+
* packages/dynamic-workflows/src/logger.ts. If you change the try/catch or
|
|
16
|
+
* fallback here, change the sibling too. The two per-package logger tests
|
|
17
|
+
* (tests/p0-structured-logger.test.ts here, dynamic-workflows/tests/logger.test.ts)
|
|
18
|
+
* are the drift guard until a third consumer justifies extracting createLogger()
|
|
19
|
+
* (boundary doc §5.2). The logger must NEVER throw into a hook.
|
|
12
20
|
*/
|
|
13
21
|
type LogLevel = 'debug' | 'info' | 'warn' | 'error' | 'silent';
|
|
14
22
|
/** Log an informational message (gated by AUTOPILOT_LOG_LEVEL >= info) */
|
package/dist/src/logger.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,KAAK,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAqE/D,0EAA0E;AAC1E,wBAAgB,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAI5C;AAED,mEAAmE;AACnE,wBAAgB,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAI7C;AAED,mEAAmE;AACnE,wBAAgB,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAI9C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAClC,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B,IAAI,CAQN"}
|
package/dist/src/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import type { AutopilotState } from './types';
|
|
2
|
+
import type { WorkspaceRecord, RetryEntry, WorkflowConfig } from './types';
|
|
3
|
+
export declare function getCheckpointWriteFailureCount(): number;
|
|
4
|
+
export declare function _resetCheckpointFailureCountForTest(): void;
|
|
5
|
+
export declare function _disableCheckpointingForTest(): void;
|
|
6
|
+
export declare function _enableCheckpointingForTest(): void;
|
|
7
|
+
export declare function _isCheckpointingDisabledForTest(): boolean;
|
|
8
|
+
/**
|
|
9
|
+
* The slim persisted shape. Intentionally a SUBSET of AutopilotState — we do NOT
|
|
10
|
+
* persist permissionAudit (it has its own JSONL via audit-persister), nor status
|
|
11
|
+
* (re-derived on load). Large/ephemeral fields (canaryFired, noUsageWarned) are
|
|
12
|
+
* session-scoped and never persisted.
|
|
13
|
+
*/
|
|
14
|
+
export interface AutopilotCheckpoint {
|
|
15
|
+
runId: string;
|
|
16
|
+
sessionKey: string;
|
|
17
|
+
orchestrationState?: AutopilotState['orchestrationState'];
|
|
18
|
+
blockedReason?: AutopilotState['blockedReason'];
|
|
19
|
+
goal?: string;
|
|
20
|
+
goalSnapshot?: string;
|
|
21
|
+
progress?: string;
|
|
22
|
+
progressSnapshot?: string;
|
|
23
|
+
turnAttempts: number;
|
|
24
|
+
totalContinuations: number;
|
|
25
|
+
maxAttemptsPerTurn: number;
|
|
26
|
+
maxTotalContinuations: number;
|
|
27
|
+
needsCrossTurnResume: boolean;
|
|
28
|
+
enabled: boolean;
|
|
29
|
+
totalTokensUsed: number;
|
|
30
|
+
tokenBudget?: number;
|
|
31
|
+
inputTokensUsed?: number;
|
|
32
|
+
outputTokensUsed?: number;
|
|
33
|
+
evidenceStatus?: AutopilotState['evidence'] extends infer E ? (E extends {
|
|
34
|
+
status: infer S;
|
|
35
|
+
} ? S : undefined) : undefined;
|
|
36
|
+
startedAt?: number;
|
|
37
|
+
lastActivityAt?: number;
|
|
38
|
+
/** Forensic only — loaders overwrite with deriveStatus(). Never trusted. */
|
|
39
|
+
status?: AutopilotState['status'];
|
|
40
|
+
workspaceRoot?: string;
|
|
41
|
+
workspacePath?: string;
|
|
42
|
+
/** Full workspace record (Reviewer #1 Finding 2a fix): restored runs MUST retain
|
|
43
|
+
* their permission-containment boundary + checkpoint-root. Persisting flat fields
|
|
44
|
+
* alone left state.workspace undefined after restore, widening the tool-call
|
|
45
|
+
* containment to process.cwd() — a security regression. */
|
|
46
|
+
workspace?: WorkspaceRecord;
|
|
47
|
+
/** Retry entry (Reviewer #1 Finding 2b fix): without this, restored retry_queued
|
|
48
|
+
* runs lose state.retry → the stall interval's retry_due guard
|
|
49
|
+
* (state.retry?.nextRetryAt != null) is never satisfied → the run wedges forever. */
|
|
50
|
+
retry?: RetryEntry;
|
|
51
|
+
/** Workflow config (Reviewer #1 Finding 2c fix): restored runs otherwise skip
|
|
52
|
+
* validation commands, reset stallTimeoutMs, and lose modelRouting. */
|
|
53
|
+
workflow?: WorkflowConfig;
|
|
54
|
+
/** Millisecond epoch of the checkpoint write. */
|
|
55
|
+
savedAt: number;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Build a slim checkpoint from a full AutopilotState. Extracts only the fields
|
|
59
|
+
* needed to resume a run; drops the bulky/ephemeral ones.
|
|
60
|
+
*/
|
|
61
|
+
export declare function buildCheckpoint(state: AutopilotState, runId: string, workspaceRoot: string): AutopilotCheckpoint;
|
|
62
|
+
/**
|
|
63
|
+
* Persist a checkpoint + update the sessionKey→runId index. Fail-silent.
|
|
64
|
+
* Serialized per-runId so concurrent setState firings don't interleave writes.
|
|
65
|
+
*
|
|
66
|
+
* Returns a Promise (rather than sync) because the lock chain is async; callers
|
|
67
|
+
* that don't need to await (the common case from setState) fire-and-forget via
|
|
68
|
+
* void. The internal _writeSyncLocked does the actual sync I/O under the lock.
|
|
69
|
+
*/
|
|
70
|
+
export declare function saveCheckpoint(state: AutopilotState, runId: string, workspaceRoot: string): void;
|
|
71
|
+
/**
|
|
72
|
+
* Load a checkpoint and rebuild an AutopilotState. ADR-016 BLOCKER #1 fix:
|
|
73
|
+
* `status` is NEVER trusted from the persisted field — always re-derived.
|
|
74
|
+
*
|
|
75
|
+
* Returns null if the checkpoint is missing, corrupt, or fails workspace
|
|
76
|
+
* validation (Review #4 #4: stale-run guard).
|
|
77
|
+
*/
|
|
78
|
+
export declare function loadCheckpoint(runId: string, workspaceRoot: string, options?: {
|
|
79
|
+
validateWorkspace?: boolean;
|
|
80
|
+
}): AutopilotState | null;
|
|
81
|
+
/**
|
|
82
|
+
* Delete a checkpoint file (Review #4 #6: called on terminal transitions to
|
|
83
|
+
* prevent done-run file leaks). Fail-silent.
|
|
84
|
+
*/
|
|
85
|
+
export declare function deleteCheckpoint(runId: string, workspaceRoot: string): void;
|
|
86
|
+
/**
|
|
87
|
+
* Remove a sessionKey→runId entry from the index. Used when a run terminates
|
|
88
|
+
* so a future session_start for the same sessionKey doesn't resurrect a dead run.
|
|
89
|
+
*/
|
|
90
|
+
export declare function clearSessionIndexEntry(workspaceRoot: string, sessionKey: string): void;
|
|
91
|
+
/**
|
|
92
|
+
* Look up runId by sessionKey from the durable index. Returns null if the
|
|
93
|
+
* index is missing, corrupt, or has no entry. This is BLOCKER #2's recovery
|
|
94
|
+
* path: after a process restart, the in-memory sessionKeyToRunId Map is empty,
|
|
95
|
+
* so session_start must consult this file to find the checkpoint.
|
|
96
|
+
*/
|
|
97
|
+
export declare function lookupRunIdBySessionKey(workspaceRoot: string, sessionKey: string): string | null;
|
|
98
|
+
/**
|
|
99
|
+
* Scan the checkpoints directory and return all runIds whose checkpoint is
|
|
100
|
+
* resumable (orchestrationState in the active family) and whose workspace still
|
|
101
|
+
* exists. Used by register() at process init to restore ALL resumable runs,
|
|
102
|
+
* not just the one whose session_start fired (Review #3 multi-run gap).
|
|
103
|
+
*
|
|
104
|
+
* Also sweeps terminal checkpoints older than TERMINAL_CHECKPOINT_TTL_MS to
|
|
105
|
+
* reclaim disk (Review #4 #6c).
|
|
106
|
+
*/
|
|
107
|
+
export declare function listResumableCheckpoints(workspaceRoot: string): string[];
|
|
108
|
+
/** Test-only: clear the write-lock map between tests. */
|
|
109
|
+
export declare function _clearWriteLocksForTest(): void;
|
|
110
|
+
/**
|
|
111
|
+
* Test-only: deterministically await all in-flight checkpoint writes. Reviewer
|
|
112
|
+
* #2 Finding 5 fix — replaces the fragile "two setImmediate ticks" drain with
|
|
113
|
+
* `Promise.all` over the lock map so tests don't flake if the lock chain grows
|
|
114
|
+
* another async hop.
|
|
115
|
+
*/
|
|
116
|
+
export declare function _flushAllWritesForTest(): Promise<void>;
|
|
117
|
+
//# sourceMappingURL=state-persister.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state-persister.d.ts","sourceRoot":"","sources":["../../src/state-persister.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,454 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.getCheckpointWriteFailureCount = getCheckpointWriteFailureCount;
|
|
37
|
+
exports._resetCheckpointFailureCountForTest = _resetCheckpointFailureCountForTest;
|
|
38
|
+
exports._disableCheckpointingForTest = _disableCheckpointingForTest;
|
|
39
|
+
exports._enableCheckpointingForTest = _enableCheckpointingForTest;
|
|
40
|
+
exports._isCheckpointingDisabledForTest = _isCheckpointingDisabledForTest;
|
|
41
|
+
exports.buildCheckpoint = buildCheckpoint;
|
|
42
|
+
exports.saveCheckpoint = saveCheckpoint;
|
|
43
|
+
exports.loadCheckpoint = loadCheckpoint;
|
|
44
|
+
exports.deleteCheckpoint = deleteCheckpoint;
|
|
45
|
+
exports.clearSessionIndexEntry = clearSessionIndexEntry;
|
|
46
|
+
exports.lookupRunIdBySessionKey = lookupRunIdBySessionKey;
|
|
47
|
+
exports.listResumableCheckpoints = listResumableCheckpoints;
|
|
48
|
+
exports._clearWriteLocksForTest = _clearWriteLocksForTest;
|
|
49
|
+
exports._flushAllWritesForTest = _flushAllWritesForTest;
|
|
50
|
+
/**
|
|
51
|
+
* Crash-recovery checkpoint persistence for autopilot run state.
|
|
52
|
+
*
|
|
53
|
+
* Writes a SLIM pointer of AutopilotState to
|
|
54
|
+
* {workspaceRoot}/.autopilot/checkpoints/{runId}.json
|
|
55
|
+
* plus a sessionKey→runId index at
|
|
56
|
+
* {workspaceRoot}/.autopilot/checkpoints/session-index.json
|
|
57
|
+
*
|
|
58
|
+
* Design (mirrors @oh-my-matrix/permission-policy/src/audit-persister.ts):
|
|
59
|
+
* - synchronous file I/O (plugin runs in main process; simplicity > async)
|
|
60
|
+
* - fail-silent (never throws; persistence is best-effort recovery, not authoritative)
|
|
61
|
+
* - no external dependencies
|
|
62
|
+
*
|
|
63
|
+
* ADR-016 invariant (status sole-writer): `status` is NEVER trusted from disk.
|
|
64
|
+
* On load, status is re-derived via deriveStatus(). We persist a `status` field
|
|
65
|
+
* only as a forensic hint; loaders MUST overwrite it with the derived value.
|
|
66
|
+
* This prevents the H1 false-completion class from recurring via stale checkpoints.
|
|
67
|
+
*
|
|
68
|
+
* Review #4 BLOCKERs addressed here:
|
|
69
|
+
* #1 (status re-derive) — loadCheckpoint re-derives via deriveStatus
|
|
70
|
+
* #2 (runId recovery) — session-index.json maps sessionKey→runId durably
|
|
71
|
+
* #3 (write concurrency) — per-runId Promise lock serializes writes
|
|
72
|
+
* #5 (atomic same-dir write) — tmp written next to target, not os.tmpdir()
|
|
73
|
+
* #6 (done-run leak) — deleteCheckpoint called on terminal transitions
|
|
74
|
+
*/
|
|
75
|
+
const fs = __importStar(require("fs"));
|
|
76
|
+
const path = __importStar(require("path"));
|
|
77
|
+
const orchestrator_1 = require("./orchestrator");
|
|
78
|
+
const CHECKPOINT_SUBDIR = path.join('.autopilot', 'checkpoints');
|
|
79
|
+
const SESSION_INDEX_FILE = 'session-index.json';
|
|
80
|
+
const TERMINAL_CHECKPOINT_TTL_MS = 24 * 60 * 60 * 1000; // sweep terminal checkpoints older than 24h
|
|
81
|
+
let _writeFailureCount = 0;
|
|
82
|
+
function getCheckpointWriteFailureCount() { return _writeFailureCount; }
|
|
83
|
+
function _resetCheckpointFailureCountForTest() { _writeFailureCount = 0; }
|
|
84
|
+
/**
|
|
85
|
+
* Test-only kill switch. When true, saveCheckpoint/deleteCheckpoint/listResumableCheckpoints
|
|
86
|
+
* become no-ops so the existing 50+ test suite (which runs in the repo root and would
|
|
87
|
+
* otherwise leak checkpoint files across tests, polluting stateByRun via the
|
|
88
|
+
* register()-time restore) stays isolated. Production never sets this. Flipped to
|
|
89
|
+
* true by index.ts _resetForTest(); flipped back false by _enableCheckpointingForTest()
|
|
90
|
+
* in tests that exercise persistence (state-persister.test.ts).
|
|
91
|
+
*/
|
|
92
|
+
let _checkpointingDisabledForTest = false;
|
|
93
|
+
function _disableCheckpointingForTest() { _checkpointingDisabledForTest = true; }
|
|
94
|
+
function _enableCheckpointingForTest() { _checkpointingDisabledForTest = false; }
|
|
95
|
+
function _isCheckpointingDisabledForTest() { return _checkpointingDisabledForTest; }
|
|
96
|
+
/**
|
|
97
|
+
* Resolve the checkpoint directory for a workspace root, following symlinks
|
|
98
|
+
* (S12: same canonical-path discipline as audit-persister).
|
|
99
|
+
*/
|
|
100
|
+
function getCheckpointDir(workspaceRoot) {
|
|
101
|
+
let resolved = workspaceRoot;
|
|
102
|
+
try {
|
|
103
|
+
resolved = fs.realpathSync(workspaceRoot);
|
|
104
|
+
}
|
|
105
|
+
catch {
|
|
106
|
+
// Path may not exist yet (mkdirSync creates it downstream).
|
|
107
|
+
}
|
|
108
|
+
return path.join(resolved, CHECKPOINT_SUBDIR);
|
|
109
|
+
}
|
|
110
|
+
function getCheckpointPath(workspaceRoot, runId) {
|
|
111
|
+
return path.join(getCheckpointDir(workspaceRoot), `${runId}.json`);
|
|
112
|
+
}
|
|
113
|
+
function getSessionIndexPath(workspaceRoot) {
|
|
114
|
+
return path.join(getCheckpointDir(workspaceRoot), SESSION_INDEX_FILE);
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Build a slim checkpoint from a full AutopilotState. Extracts only the fields
|
|
118
|
+
* needed to resume a run; drops the bulky/ephemeral ones.
|
|
119
|
+
*/
|
|
120
|
+
function buildCheckpoint(state, runId, workspaceRoot) {
|
|
121
|
+
return {
|
|
122
|
+
runId,
|
|
123
|
+
sessionKey: state.sessionKey,
|
|
124
|
+
orchestrationState: state.orchestrationState,
|
|
125
|
+
blockedReason: state.blockedReason,
|
|
126
|
+
goal: state.goal,
|
|
127
|
+
goalSnapshot: state.goalSnapshot,
|
|
128
|
+
progress: state.progress,
|
|
129
|
+
progressSnapshot: state.progressSnapshot,
|
|
130
|
+
turnAttempts: state.turnAttempts,
|
|
131
|
+
totalContinuations: state.totalContinuations,
|
|
132
|
+
maxAttemptsPerTurn: state.maxAttemptsPerTurn,
|
|
133
|
+
maxTotalContinuations: state.maxTotalContinuations,
|
|
134
|
+
needsCrossTurnResume: state.needsCrossTurnResume,
|
|
135
|
+
enabled: state.enabled,
|
|
136
|
+
totalTokensUsed: state.totalTokensUsed,
|
|
137
|
+
tokenBudget: state.tokenBudget,
|
|
138
|
+
inputTokensUsed: state.inputTokensUsed,
|
|
139
|
+
outputTokensUsed: state.outputTokensUsed,
|
|
140
|
+
evidenceStatus: state.evidence?.status,
|
|
141
|
+
startedAt: state.startedAt,
|
|
142
|
+
lastActivityAt: state.lastActivityAt,
|
|
143
|
+
// Forensic hint only — loadCheckpoint overwrites this with deriveStatus().
|
|
144
|
+
status: state.status,
|
|
145
|
+
workspaceRoot,
|
|
146
|
+
workspacePath: state.workspace?.path,
|
|
147
|
+
workspace: state.workspace,
|
|
148
|
+
retry: state.retry,
|
|
149
|
+
workflow: state.workflow,
|
|
150
|
+
savedAt: Date.now(),
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
// ─── Per-runId write lock (Review #4 #3a) ──────────────────────────────
|
|
154
|
+
// Serializes concurrent saveCheckpoint calls for the same runId across the
|
|
155
|
+
// 60s stall timer context and async hook handler contexts. A bare Map<runId,
|
|
156
|
+
// Promise> chain — each write awaits the previous one before starting.
|
|
157
|
+
const writeLocks = new Map();
|
|
158
|
+
/**
|
|
159
|
+
* Atomic write: tmp file in the SAME directory as the target (NOT os.tmpdir(),
|
|
160
|
+
* which can be on a different volume on Windows → EXDEV). renameSync is atomic
|
|
161
|
+
* on POSIX same-filesystem; Node ≥10 overwrites the target.
|
|
162
|
+
*/
|
|
163
|
+
function atomicWriteFileSync(targetPath, data) {
|
|
164
|
+
const dir = path.dirname(targetPath);
|
|
165
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
166
|
+
// PID + random suffix guards against same-dir tmp collisions under concurrency.
|
|
167
|
+
const tmpPath = `${targetPath}.tmp.${process.pid}.${Math.random().toString(36).slice(2)}`;
|
|
168
|
+
fs.writeFileSync(tmpPath, data, 'utf-8');
|
|
169
|
+
fs.renameSync(tmpPath, targetPath);
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Persist a checkpoint + update the sessionKey→runId index. Fail-silent.
|
|
173
|
+
* Serialized per-runId so concurrent setState firings don't interleave writes.
|
|
174
|
+
*
|
|
175
|
+
* Returns a Promise (rather than sync) because the lock chain is async; callers
|
|
176
|
+
* that don't need to await (the common case from setState) fire-and-forget via
|
|
177
|
+
* void. The internal _writeSyncLocked does the actual sync I/O under the lock.
|
|
178
|
+
*/
|
|
179
|
+
function saveCheckpoint(state, runId, workspaceRoot) {
|
|
180
|
+
if (_checkpointingDisabledForTest)
|
|
181
|
+
return; // test isolation: don't touch disk
|
|
182
|
+
const checkpoint = buildCheckpoint(state, runId, workspaceRoot);
|
|
183
|
+
const targetPath = getCheckpointPath(workspaceRoot, runId);
|
|
184
|
+
// Chain onto any in-flight write for this runId.
|
|
185
|
+
const prev = writeLocks.get(runId) ?? Promise.resolve();
|
|
186
|
+
const next = prev.then(() => {
|
|
187
|
+
try {
|
|
188
|
+
atomicWriteFileSync(targetPath, JSON.stringify(checkpoint));
|
|
189
|
+
updateSessionIndex(workspaceRoot, checkpoint.sessionKey, runId);
|
|
190
|
+
}
|
|
191
|
+
catch (e) {
|
|
192
|
+
_writeFailureCount++;
|
|
193
|
+
try {
|
|
194
|
+
console.error('[autopilot] checkpoint save failed:', e);
|
|
195
|
+
}
|
|
196
|
+
catch { /* noop */ }
|
|
197
|
+
}
|
|
198
|
+
}).catch(() => {
|
|
199
|
+
// Lock chain errors are already logged inside _writeSyncLocked; swallow to
|
|
200
|
+
// keep the chain alive for the next write.
|
|
201
|
+
});
|
|
202
|
+
writeLocks.set(runId, next);
|
|
203
|
+
// Auto-clean the lock entry once settled so the Map doesn't grow unbounded.
|
|
204
|
+
void next.then(() => {
|
|
205
|
+
if (writeLocks.get(runId) === next)
|
|
206
|
+
writeLocks.delete(runId);
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
/** Update the sessionKey→runId index atomically. Fail-silent. */
|
|
210
|
+
function updateSessionIndex(workspaceRoot, sessionKey, runId) {
|
|
211
|
+
const indexPath = getSessionIndexPath(workspaceRoot);
|
|
212
|
+
let index = {};
|
|
213
|
+
try {
|
|
214
|
+
if (fs.existsSync(indexPath)) {
|
|
215
|
+
index = JSON.parse(fs.readFileSync(indexPath, 'utf-8'));
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
catch {
|
|
219
|
+
// Corrupt index — start fresh rather than crash.
|
|
220
|
+
index = {};
|
|
221
|
+
}
|
|
222
|
+
if (index[sessionKey] === runId)
|
|
223
|
+
return; // no-op if unchanged
|
|
224
|
+
index[sessionKey] = runId;
|
|
225
|
+
try {
|
|
226
|
+
atomicWriteFileSync(indexPath, JSON.stringify(index));
|
|
227
|
+
}
|
|
228
|
+
catch (e) {
|
|
229
|
+
_writeFailureCount++;
|
|
230
|
+
try {
|
|
231
|
+
console.error('[autopilot] session-index update failed:', e);
|
|
232
|
+
}
|
|
233
|
+
catch { /* noop */ }
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Load a checkpoint and rebuild an AutopilotState. ADR-016 BLOCKER #1 fix:
|
|
238
|
+
* `status` is NEVER trusted from the persisted field — always re-derived.
|
|
239
|
+
*
|
|
240
|
+
* Returns null if the checkpoint is missing, corrupt, or fails workspace
|
|
241
|
+
* validation (Review #4 #4: stale-run guard).
|
|
242
|
+
*/
|
|
243
|
+
function loadCheckpoint(runId, workspaceRoot, options) {
|
|
244
|
+
const cpPath = getCheckpointPath(workspaceRoot, runId);
|
|
245
|
+
let cp;
|
|
246
|
+
try {
|
|
247
|
+
const raw = fs.readFileSync(cpPath, 'utf-8');
|
|
248
|
+
cp = JSON.parse(raw);
|
|
249
|
+
}
|
|
250
|
+
catch {
|
|
251
|
+
return null; // missing or corrupt — nothing to resume
|
|
252
|
+
}
|
|
253
|
+
// Review #4 #4: stale-run guard. If the workspace path recorded at checkpoint
|
|
254
|
+
// time no longer exists (deleted between crash and restart), refuse to resume
|
|
255
|
+
// rather than resurrecting a run against a vanished workspace.
|
|
256
|
+
if (options?.validateWorkspace !== false && cp.workspacePath) {
|
|
257
|
+
try {
|
|
258
|
+
const stat = fs.statSync(cp.workspacePath);
|
|
259
|
+
if (!stat.isDirectory())
|
|
260
|
+
return null;
|
|
261
|
+
}
|
|
262
|
+
catch {
|
|
263
|
+
return null;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
// Rebuild a minimal AutopilotState. Many fields have safe defaults; the
|
|
267
|
+
// load-bearing ones (orchestrationState, blockedReason, goal, counters,
|
|
268
|
+
// workspace, retry, workflow) come from the checkpoint.
|
|
269
|
+
const partial = {
|
|
270
|
+
sessionKey: cp.sessionKey,
|
|
271
|
+
runId: cp.runId,
|
|
272
|
+
orchestrationState: cp.orchestrationState,
|
|
273
|
+
blockedReason: cp.blockedReason,
|
|
274
|
+
goal: cp.goal,
|
|
275
|
+
goalSnapshot: cp.goalSnapshot,
|
|
276
|
+
progress: cp.progress,
|
|
277
|
+
progressSnapshot: cp.progressSnapshot,
|
|
278
|
+
turnAttempts: cp.turnAttempts,
|
|
279
|
+
totalContinuations: cp.totalContinuations,
|
|
280
|
+
maxAttemptsPerTurn: cp.maxAttemptsPerTurn,
|
|
281
|
+
maxTotalContinuations: cp.maxTotalContinuations,
|
|
282
|
+
maxConcurrentAutopilot: 5, // default; per-run override not persisted
|
|
283
|
+
needsCrossTurnResume: cp.needsCrossTurnResume,
|
|
284
|
+
enabled: cp.enabled,
|
|
285
|
+
totalTokensUsed: cp.totalTokensUsed,
|
|
286
|
+
tokenBudget: cp.tokenBudget,
|
|
287
|
+
inputTokensUsed: cp.inputTokensUsed,
|
|
288
|
+
outputTokensUsed: cp.outputTokensUsed,
|
|
289
|
+
startedAt: cp.startedAt,
|
|
290
|
+
lastActivityAt: cp.lastActivityAt,
|
|
291
|
+
degraded: true, // mark resumed runs — operators can tell a restored run
|
|
292
|
+
toolErrorCount: 0,
|
|
293
|
+
toolErrorThreshold: 5,
|
|
294
|
+
// Reviewer #1 Finding 2a/2b/2c fixes: restore the three load-bearing
|
|
295
|
+
// objects the original "slim pointer" design dropped. Without workspace,
|
|
296
|
+
// the permission containment boundary widens to process.cwd(); without
|
|
297
|
+
// retry, retry_queued runs wedge; without workflow, validation is skipped.
|
|
298
|
+
workspace: cp.workspace,
|
|
299
|
+
retry: cp.retry,
|
|
300
|
+
workflow: cp.workflow,
|
|
301
|
+
};
|
|
302
|
+
// BLOCKER #1: re-derive status. Never trust cp.status.
|
|
303
|
+
const derivedStatus = (0, orchestrator_1.deriveStatus)(partial);
|
|
304
|
+
return { ...partial, status: derivedStatus };
|
|
305
|
+
}
|
|
306
|
+
/**
|
|
307
|
+
* Delete a checkpoint file (Review #4 #6: called on terminal transitions to
|
|
308
|
+
* prevent done-run file leaks). Fail-silent.
|
|
309
|
+
*/
|
|
310
|
+
function deleteCheckpoint(runId, workspaceRoot) {
|
|
311
|
+
if (_checkpointingDisabledForTest)
|
|
312
|
+
return; // test isolation: don't touch disk
|
|
313
|
+
const cpPath = getCheckpointPath(workspaceRoot, runId);
|
|
314
|
+
try {
|
|
315
|
+
if (fs.existsSync(cpPath))
|
|
316
|
+
fs.unlinkSync(cpPath);
|
|
317
|
+
}
|
|
318
|
+
catch (e) {
|
|
319
|
+
try {
|
|
320
|
+
console.error('[autopilot] checkpoint delete failed:', e);
|
|
321
|
+
}
|
|
322
|
+
catch { /* noop */ }
|
|
323
|
+
}
|
|
324
|
+
// Best-effort index cleanup — leave stale sessionKey→runId entries; they're
|
|
325
|
+
// cheap and the index is rewritten on every save. A full GC pass would risk
|
|
326
|
+
// racing an in-flight save for a different runId.
|
|
327
|
+
}
|
|
328
|
+
/**
|
|
329
|
+
* Remove a sessionKey→runId entry from the index. Used when a run terminates
|
|
330
|
+
* so a future session_start for the same sessionKey doesn't resurrect a dead run.
|
|
331
|
+
*/
|
|
332
|
+
function clearSessionIndexEntry(workspaceRoot, sessionKey) {
|
|
333
|
+
const indexPath = getSessionIndexPath(workspaceRoot);
|
|
334
|
+
try {
|
|
335
|
+
if (!fs.existsSync(indexPath))
|
|
336
|
+
return;
|
|
337
|
+
const index = JSON.parse(fs.readFileSync(indexPath, 'utf-8'));
|
|
338
|
+
if (!(sessionKey in index))
|
|
339
|
+
return;
|
|
340
|
+
delete index[sessionKey];
|
|
341
|
+
atomicWriteFileSync(indexPath, JSON.stringify(index));
|
|
342
|
+
}
|
|
343
|
+
catch {
|
|
344
|
+
// fail-silent
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
/**
|
|
348
|
+
* Look up runId by sessionKey from the durable index. Returns null if the
|
|
349
|
+
* index is missing, corrupt, or has no entry. This is BLOCKER #2's recovery
|
|
350
|
+
* path: after a process restart, the in-memory sessionKeyToRunId Map is empty,
|
|
351
|
+
* so session_start must consult this file to find the checkpoint.
|
|
352
|
+
*/
|
|
353
|
+
function lookupRunIdBySessionKey(workspaceRoot, sessionKey) {
|
|
354
|
+
const indexPath = getSessionIndexPath(workspaceRoot);
|
|
355
|
+
try {
|
|
356
|
+
if (!fs.existsSync(indexPath))
|
|
357
|
+
return null;
|
|
358
|
+
const index = JSON.parse(fs.readFileSync(indexPath, 'utf-8'));
|
|
359
|
+
return index[sessionKey] ?? null;
|
|
360
|
+
}
|
|
361
|
+
catch {
|
|
362
|
+
return null;
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
/**
|
|
366
|
+
* Scan the checkpoints directory and return all runIds whose checkpoint is
|
|
367
|
+
* resumable (orchestrationState in the active family) and whose workspace still
|
|
368
|
+
* exists. Used by register() at process init to restore ALL resumable runs,
|
|
369
|
+
* not just the one whose session_start fired (Review #3 multi-run gap).
|
|
370
|
+
*
|
|
371
|
+
* Also sweeps terminal checkpoints older than TERMINAL_CHECKPOINT_TTL_MS to
|
|
372
|
+
* reclaim disk (Review #4 #6c).
|
|
373
|
+
*/
|
|
374
|
+
function listResumableCheckpoints(workspaceRoot) {
|
|
375
|
+
if (_checkpointingDisabledForTest)
|
|
376
|
+
return []; // test isolation: don't read disk
|
|
377
|
+
const dir = getCheckpointDir(workspaceRoot);
|
|
378
|
+
if (!fs.existsSync(dir))
|
|
379
|
+
return [];
|
|
380
|
+
let files;
|
|
381
|
+
try {
|
|
382
|
+
files = fs.readdirSync(dir).filter(f => f.endsWith('.json') && f !== SESSION_INDEX_FILE);
|
|
383
|
+
}
|
|
384
|
+
catch {
|
|
385
|
+
return [];
|
|
386
|
+
}
|
|
387
|
+
const resumable = [];
|
|
388
|
+
const now = Date.now();
|
|
389
|
+
for (const f of files) {
|
|
390
|
+
const runId = f.replace(/\.json$/, '');
|
|
391
|
+
const fullPath = path.join(dir, f);
|
|
392
|
+
try {
|
|
393
|
+
const cp = JSON.parse(fs.readFileSync(fullPath, 'utf-8'));
|
|
394
|
+
const orch = cp.orchestrationState;
|
|
395
|
+
const isResumable = orch === 'running' || orch === 'claimed' || orch === 'retry_queued' || orch === 'released' || orch === 'unclaimed';
|
|
396
|
+
const isTerminal = orch === 'done' || (orch === 'blocked' && cp.blockedReason && !isResumableBlockedReason(cp.blockedReason));
|
|
397
|
+
if (isTerminal) {
|
|
398
|
+
// Review #4 #6c: sweep stale terminal checkpoints.
|
|
399
|
+
if (cp.savedAt && (now - cp.savedAt) > TERMINAL_CHECKPOINT_TTL_MS) {
|
|
400
|
+
try {
|
|
401
|
+
fs.unlinkSync(fullPath);
|
|
402
|
+
}
|
|
403
|
+
catch { /* fail-silent */ }
|
|
404
|
+
}
|
|
405
|
+
continue;
|
|
406
|
+
}
|
|
407
|
+
if (isResumable) {
|
|
408
|
+
// Validate workspace still exists before offering to resume.
|
|
409
|
+
if (cp.workspacePath) {
|
|
410
|
+
try {
|
|
411
|
+
const stat = fs.statSync(cp.workspacePath);
|
|
412
|
+
if (!stat.isDirectory())
|
|
413
|
+
continue;
|
|
414
|
+
}
|
|
415
|
+
catch {
|
|
416
|
+
continue; // workspace gone — skip
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
resumable.push(runId);
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
catch {
|
|
423
|
+
// corrupt checkpoint — skip
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
return resumable;
|
|
427
|
+
}
|
|
428
|
+
// Mirror of RESUMABLE_BLOCKED_REASONS from orchestrator.ts (kept local to avoid
|
|
429
|
+
// a circular import: orchestrator.ts imports nothing from this module, and we
|
|
430
|
+
// don't want to widen its dep surface). If the set in orchestrator.ts changes,
|
|
431
|
+
// update this too. (Documented linkage, not duplication-for-its-own-sake.)
|
|
432
|
+
const RESUMABLE_BLOCKED_LOCAL = new Set([
|
|
433
|
+
'stalled',
|
|
434
|
+
'validation_failed',
|
|
435
|
+
'evidence_missing',
|
|
436
|
+
'injection_rejected',
|
|
437
|
+
]);
|
|
438
|
+
function isResumableBlockedReason(reason) {
|
|
439
|
+
return RESUMABLE_BLOCKED_LOCAL.has(reason);
|
|
440
|
+
}
|
|
441
|
+
/** Test-only: clear the write-lock map between tests. */
|
|
442
|
+
function _clearWriteLocksForTest() {
|
|
443
|
+
writeLocks.clear();
|
|
444
|
+
}
|
|
445
|
+
/**
|
|
446
|
+
* Test-only: deterministically await all in-flight checkpoint writes. Reviewer
|
|
447
|
+
* #2 Finding 5 fix — replaces the fragile "two setImmediate ticks" drain with
|
|
448
|
+
* `Promise.all` over the lock map so tests don't flake if the lock chain grows
|
|
449
|
+
* another async hop.
|
|
450
|
+
*/
|
|
451
|
+
async function _flushAllWritesForTest() {
|
|
452
|
+
await Promise.all([...writeLocks.values()]);
|
|
453
|
+
}
|
|
454
|
+
//# sourceMappingURL=state-persister.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state-persister.js","sourceRoot":"","sources":["../../src/state-persister.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,wEAAuF;AACvF,kFAAuF;AAWvF,oEAA8F;AAC9F,kEAA8F;AAC9F,0EAAoG;AA4EpG,0CAgCC;AA8BD,wCAwBC;AA+BD,wCAkEC;AAMD,4CAWC;AAMD,wDAWC;AAQD,0DASC;AAWD,4DA6CC;AAiBD,0DAEC;AAQD,wDAEC;AA7bD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,uCAAyB;AACzB,2CAA6B;AAG7B,iDAA8C;AAE9C,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;AACjE,MAAM,kBAAkB,GAAG,oBAAoB,CAAC;AAChD,MAAM,0BAA0B,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,4CAA4C;AAEpG,IAAI,kBAAkB,GAAG,CAAC,CAAC;AAC3B,SAAgB,8BAA8B,KAAa,OAAO,kBAAkB,CAAC,CAAC,CAAC;AACvF,SAAgB,mCAAmC,KAAW,kBAAkB,GAAG,CAAC,CAAC,CAAC,CAAC;AAEvF;;;;;;;GAOG;AACH,IAAI,6BAA6B,GAAG,KAAK,CAAC;AAC1C,SAAgB,4BAA4B,KAAW,6BAA6B,GAAG,IAAI,CAAC,CAAC,CAAC;AAC9F,SAAgB,2BAA2B,KAAW,6BAA6B,GAAG,KAAK,CAAC,CAAC,CAAC;AAC9F,SAAgB,+BAA+B,KAAc,OAAO,6BAA6B,CAAC,CAAC,CAAC;AAEpG;;;GAGG;AACH,SAAS,gBAAgB,CAAC,aAAqB;IAC7C,IAAI,QAAQ,GAAG,aAAa,CAAC;IAC7B,IAAI,CAAC;QACH,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,4DAA4D;IAC9D,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,iBAAiB,CAAC,aAAqB,EAAE,KAAa;IAC7D,OAAO,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,mBAAmB,CAAC,aAAqB;IAChD,OAAO,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,kBAAkB,CAAC,CAAC;AACxE,CAAC;AAkDD;;;GAGG;AACH,SAAgB,eAAe,CAAC,KAAqB,EAAE,KAAa,EAAE,aAAqB;IACzF,OAAO;QACL,KAAK;QACL,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;QAC5C,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;QACxC,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;QAC5C,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;QAC5C,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;QAClD,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;QAChD,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;QACxC,cAAc,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM;QACtC,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,2EAA2E;QAC3E,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,aAAa;QACb,aAAa,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI;QACpC,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;KACpB,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,2EAA2E;AAC3E,6EAA6E;AAC7E,uEAAuE;AACvE,MAAM,UAAU,GAAG,IAAI,GAAG,EAAyB,CAAC;AAEpD;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,UAAkB,EAAE,IAAY;IAC3D,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACrC,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,gFAAgF;IAChF,MAAM,OAAO,GAAG,GAAG,UAAU,QAAQ,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1F,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACzC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,cAAc,CAAC,KAAqB,EAAE,KAAa,EAAE,aAAqB;IACxF,IAAI,6BAA6B;QAAE,OAAO,CAAC,mCAAmC;IAC9E,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,iBAAiB,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IAE3D,iDAAiD;IACjD,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;QAC1B,IAAI,CAAC;YACH,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;YAC5D,kBAAkB,CAAC,aAAa,EAAE,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,kBAAkB,EAAE,CAAC;YACrB,IAAI,CAAC;gBAAC,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,CAAC,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;QACvF,CAAC;IACH,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QACZ,2EAA2E;QAC3E,2CAA2C;IAC7C,CAAC,CAAC,CAAC;IACH,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC5B,4EAA4E;IAC5E,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI;YAAE,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;AACL,CAAC;AAED,iEAAiE;AACjE,SAAS,kBAAkB,CAAC,aAAqB,EAAE,UAAkB,EAAE,KAAa;IAClF,MAAM,SAAS,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACrD,IAAI,KAAK,GAA2B,EAAE,CAAC;IACvC,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAA2B,CAAC;QACpF,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,iDAAiD;QACjD,KAAK,GAAG,EAAE,CAAC;IACb,CAAC;IACD,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,KAAK;QAAE,OAAO,CAAC,qBAAqB;IAC9D,KAAK,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC;IAC1B,IAAI,CAAC;QACH,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,kBAAkB,EAAE,CAAC;QACrB,IAAI,CAAC;YAAC,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;IAC5F,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,cAAc,CAC5B,KAAa,EACb,aAAqB,EACrB,OAAyC;IAEzC,MAAM,MAAM,GAAG,iBAAiB,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IACvD,IAAI,EAAuB,CAAC;IAC5B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC7C,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAwB,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,CAAC,yCAAyC;IACxD,CAAC;IAED,8EAA8E;IAC9E,8EAA8E;IAC9E,+DAA+D;IAC/D,IAAI,OAAO,EAAE,iBAAiB,KAAK,KAAK,IAAI,EAAE,CAAC,aAAa,EAAE,CAAC;QAC7D,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;YAC3C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gBAAE,OAAO,IAAI,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,wEAAwE;IACxE,wDAAwD;IACxD,MAAM,OAAO,GAAG;QACd,UAAU,EAAE,EAAE,CAAC,UAAU;QACzB,KAAK,EAAE,EAAE,CAAC,KAAK;QACf,kBAAkB,EAAE,EAAE,CAAC,kBAAkB;QACzC,aAAa,EAAE,EAAE,CAAC,aAAa;QAC/B,IAAI,EAAE,EAAE,CAAC,IAAI;QACb,YAAY,EAAE,EAAE,CAAC,YAAY;QAC7B,QAAQ,EAAE,EAAE,CAAC,QAAQ;QACrB,gBAAgB,EAAE,EAAE,CAAC,gBAAgB;QACrC,YAAY,EAAE,EAAE,CAAC,YAAY;QAC7B,kBAAkB,EAAE,EAAE,CAAC,kBAAkB;QACzC,kBAAkB,EAAE,EAAE,CAAC,kBAAkB;QACzC,qBAAqB,EAAE,EAAE,CAAC,qBAAqB;QAC/C,sBAAsB,EAAE,CAAC,EAAE,0CAA0C;QACrE,oBAAoB,EAAE,EAAE,CAAC,oBAAoB;QAC7C,OAAO,EAAE,EAAE,CAAC,OAAO;QACnB,eAAe,EAAE,EAAE,CAAC,eAAe;QACnC,WAAW,EAAE,EAAE,CAAC,WAAW;QAC3B,eAAe,EAAE,EAAE,CAAC,eAAe;QACnC,gBAAgB,EAAE,EAAE,CAAC,gBAAgB;QACrC,SAAS,EAAE,EAAE,CAAC,SAAS;QACvB,cAAc,EAAE,EAAE,CAAC,cAAc;QACjC,QAAQ,EAAE,IAAI,EAAE,wDAAwD;QACxE,cAAc,EAAE,CAAC;QACjB,kBAAkB,EAAE,CAAC;QACrB,qEAAqE;QACrE,yEAAyE;QACzE,uEAAuE;QACvE,2EAA2E;QAC3E,SAAS,EAAE,EAAE,CAAC,SAAS;QACvB,KAAK,EAAE,EAAE,CAAC,KAAK;QACf,QAAQ,EAAE,EAAE,CAAC,QAAQ;KACJ,CAAC;IAEpB,uDAAuD;IACvD,MAAM,aAAa,GAAG,IAAA,2BAAY,EAAC,OAAO,CAAC,CAAC;IAC5C,OAAO,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;AAC/C,CAAC;AAED;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,KAAa,EAAE,aAAqB;IACnE,IAAI,6BAA6B;QAAE,OAAO,CAAC,mCAAmC;IAC9E,MAAM,MAAM,GAAG,iBAAiB,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IACvD,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC;YAAC,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;IACzF,CAAC;IACD,4EAA4E;IAC5E,4EAA4E;IAC5E,kDAAkD;AACpD,CAAC;AAED;;;GAGG;AACH,SAAgB,sBAAsB,CAAC,aAAqB,EAAE,UAAkB;IAC9E,MAAM,SAAS,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACrD,IAAI,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAA2B,CAAC;QACxF,IAAI,CAAC,CAAC,UAAU,IAAI,KAAK,CAAC;YAAE,OAAO;QACnC,OAAO,KAAK,CAAC,UAAU,CAAC,CAAC;QACzB,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IACxD,CAAC;IAAC,MAAM,CAAC;QACP,cAAc;IAChB,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,uBAAuB,CAAC,aAAqB,EAAE,UAAkB;IAC/E,MAAM,SAAS,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACrD,IAAI,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAA2B,CAAC;QACxF,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,wBAAwB,CAAC,aAAqB;IAC5D,IAAI,6BAA6B;QAAE,OAAO,EAAE,CAAC,CAAC,kCAAkC;IAChF,MAAM,GAAG,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC5C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IACnC,IAAI,KAAe,CAAC;IACpB,IAAI,CAAC;QACH,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,kBAAkB,CAAC,CAAC;IAC3F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAwB,CAAC;YACjF,MAAM,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC;YACnC,MAAM,WAAW,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,cAAc,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,WAAW,CAAC;YACvI,MAAM,UAAU,GAAG,IAAI,KAAK,MAAM,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,CAAC,aAAa,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;YAE9H,IAAI,UAAU,EAAE,CAAC;gBACf,mDAAmD;gBACnD,IAAI,EAAE,CAAC,OAAO,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,0BAA0B,EAAE,CAAC;oBAClE,IAAI,CAAC;wBAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;gBAC9D,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,WAAW,EAAE,CAAC;gBAChB,6DAA6D;gBAC7D,IAAI,EAAE,CAAC,aAAa,EAAE,CAAC;oBACrB,IAAI,CAAC;wBACH,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;wBAC3C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;4BAAE,SAAS;oBACpC,CAAC;oBAAC,MAAM,CAAC;wBACP,SAAS,CAAC,wBAAwB;oBACpC,CAAC;gBACH,CAAC;gBACD,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,4BAA4B;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,gFAAgF;AAChF,8EAA8E;AAC9E,+EAA+E;AAC/E,2EAA2E;AAC3E,MAAM,uBAAuB,GAAwB,IAAI,GAAG,CAAC;IAC3D,SAAS;IACT,mBAAmB;IACnB,kBAAkB;IAClB,oBAAoB;CACrB,CAAC,CAAC;AACH,SAAS,wBAAwB,CAAC,MAAc;IAC9C,OAAO,uBAAuB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC7C,CAAC;AAED,yDAAyD;AACzD,SAAgB,uBAAuB;IACrC,UAAU,CAAC,KAAK,EAAE,CAAC;AACrB,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,sBAAsB;IAC1C,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAC9C,CAAC"}
|
package/openclaw.plugin.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oh-my-matrix/autopilot",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.3",
|
|
4
4
|
"description": "Autopilot: OpenClaw-native continuous execution for long-running tasks",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -44,22 +44,23 @@
|
|
|
44
44
|
"llm_output"
|
|
45
45
|
]
|
|
46
46
|
},
|
|
47
|
+
"scripts": {
|
|
48
|
+
"build": "tsc",
|
|
49
|
+
"test": "vitest run",
|
|
50
|
+
"pack": "pnpm pack",
|
|
51
|
+
"typecheck": "tsc --noEmit",
|
|
52
|
+
"prepublishOnly": "pnpm run build"
|
|
53
|
+
},
|
|
47
54
|
"peerDependencies": {
|
|
48
|
-
"@oh-my-matrix/permission-policy": "^0.1.
|
|
55
|
+
"@oh-my-matrix/permission-policy": "^0.1.3",
|
|
49
56
|
"openclaw": ">=2026.5.28 <2027"
|
|
50
57
|
},
|
|
51
58
|
"devDependencies": {
|
|
59
|
+
"@oh-my-matrix/permission-policy": "workspace:*",
|
|
52
60
|
"@types/node": "^22.0.0",
|
|
53
61
|
"@vitest/coverage-v8": "^3.2.6",
|
|
54
62
|
"openclaw": "2026.5.28",
|
|
55
63
|
"typescript": "^5.0.0",
|
|
56
|
-
"vitest": "^3.0.0"
|
|
57
|
-
"@oh-my-matrix/permission-policy": "0.1.2"
|
|
58
|
-
},
|
|
59
|
-
"scripts": {
|
|
60
|
-
"build": "tsc",
|
|
61
|
-
"test": "vitest run",
|
|
62
|
-
"pack": "pnpm pack",
|
|
63
|
-
"typecheck": "tsc --noEmit"
|
|
64
|
+
"vitest": "^3.0.0"
|
|
64
65
|
}
|
|
65
|
-
}
|
|
66
|
+
}
|
package/LICENSE
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 oh-my-matrix contributors
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|