@coralai/sps-cli 0.23.21 → 0.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -7
- package/dist/commands/cardDashboard.js +3 -3
- package/dist/commands/cardDashboard.js.map +1 -1
- package/dist/commands/pipelineTick.d.ts.map +1 -1
- package/dist/commands/pipelineTick.js +19 -6
- package/dist/commands/pipelineTick.js.map +1 -1
- package/dist/commands/qaTick.d.ts.map +1 -1
- package/dist/commands/qaTick.js +33 -4
- package/dist/commands/qaTick.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +2 -5
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/tick.d.ts.map +1 -1
- package/dist/commands/tick.js +56 -35
- package/dist/commands/tick.js.map +1 -1
- package/dist/commands/workerDashboard.d.ts.map +1 -1
- package/dist/commands/workerDashboard.js +9 -9
- package/dist/commands/workerDashboard.js.map +1 -1
- package/dist/commands/workerLaunch.d.ts.map +1 -1
- package/dist/commands/workerLaunch.js +19 -6
- package/dist/commands/workerLaunch.js.map +1 -1
- package/dist/core/acpState.js +1 -1
- package/dist/core/acpState.js.map +1 -1
- package/dist/core/config.d.ts +9 -0
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +13 -0
- package/dist/core/config.js.map +1 -1
- package/dist/core/runtimeSnapshot.d.ts +1 -0
- package/dist/core/runtimeSnapshot.d.ts.map +1 -1
- package/dist/core/runtimeSnapshot.js +6 -6
- package/dist/core/runtimeSnapshot.js.map +1 -1
- package/dist/core/runtimeStore.d.ts +23 -1
- package/dist/core/runtimeStore.d.ts.map +1 -1
- package/dist/core/runtimeStore.js +71 -32
- package/dist/core/runtimeStore.js.map +1 -1
- package/dist/core/state.d.ts +33 -0
- package/dist/core/state.d.ts.map +1 -1
- package/dist/core/state.js +6 -0
- package/dist/core/state.js.map +1 -1
- package/dist/core/taskPrompts.d.ts.map +1 -1
- package/dist/core/taskPrompts.js +13 -9
- package/dist/core/taskPrompts.js.map +1 -1
- package/dist/core/workerRuntimeSummary.d.ts +1 -2
- package/dist/core/workerRuntimeSummary.d.ts.map +1 -1
- package/dist/core/workerRuntimeSummary.js +2 -2
- package/dist/core/workerRuntimeSummary.js.map +1 -1
- package/dist/engines/CloseoutEngine.d.ts +3 -6
- package/dist/engines/CloseoutEngine.d.ts.map +1 -1
- package/dist/engines/CloseoutEngine.js +113 -285
- package/dist/engines/CloseoutEngine.js.map +1 -1
- package/dist/engines/EventHandler.d.ts +57 -0
- package/dist/engines/EventHandler.d.ts.map +1 -0
- package/dist/engines/EventHandler.js +210 -0
- package/dist/engines/EventHandler.js.map +1 -0
- package/dist/engines/ExecutionEngine.d.ts +5 -17
- package/dist/engines/ExecutionEngine.d.ts.map +1 -1
- package/dist/engines/ExecutionEngine.js +110 -368
- package/dist/engines/ExecutionEngine.js.map +1 -1
- package/dist/engines/MonitorEngine.d.ts.map +1 -1
- package/dist/engines/MonitorEngine.js +8 -9
- package/dist/engines/MonitorEngine.js.map +1 -1
- package/dist/manager/integration-queue.d.ts +65 -0
- package/dist/manager/integration-queue.d.ts.map +1 -0
- package/dist/manager/integration-queue.js +123 -0
- package/dist/manager/integration-queue.js.map +1 -0
- package/dist/manager/recovery.d.ts.map +1 -1
- package/dist/manager/recovery.js +10 -9
- package/dist/manager/recovery.js.map +1 -1
- package/dist/manager/runtime-coordinator.d.ts +1 -3
- package/dist/manager/runtime-coordinator.d.ts.map +1 -1
- package/dist/manager/runtime-coordinator.js +13 -15
- package/dist/manager/runtime-coordinator.js.map +1 -1
- package/dist/manager/worker-manager-impl.d.ts +81 -0
- package/dist/manager/worker-manager-impl.d.ts.map +1 -0
- package/dist/manager/worker-manager-impl.js +648 -0
- package/dist/manager/worker-manager-impl.js.map +1 -0
- package/dist/manager/worker-manager.d.ts +176 -0
- package/dist/manager/worker-manager.d.ts.map +1 -0
- package/dist/manager/worker-manager.js +12 -0
- package/dist/manager/worker-manager.js.map +1 -0
- package/dist/models/acp.d.ts +4 -0
- package/dist/models/acp.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
> **中文文档**: See `README-CN.md` in the source repository for Chinese documentation.
|
|
6
6
|
|
|
7
|
-
**v0.
|
|
7
|
+
**v0.24.0**
|
|
8
8
|
|
|
9
9
|
SPS (Smart Pipeline System) is a fully automated development pipeline CLI tool driven by AI Agents. From task card creation to code merging, the entire process runs unattended.
|
|
10
10
|
|
|
@@ -12,7 +12,16 @@ SPS (Smart Pipeline System) is a fully automated development pipeline CLI tool d
|
|
|
12
12
|
Create cards -> Start pipeline -> Development worker completes branch work -> QA worker integrates branch -> Notify completion
|
|
13
13
|
```
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
**v0.24.0 — Worker Manager architecture**: All worker lifecycle management is now mediated by the `WorkerManager` ACP interface (`src/manager/worker-manager.ts`). ExecutionEngine and CloseoutEngine call `WorkerManager.run()` instead of spawning workers directly. Key changes:
|
|
16
|
+
|
|
17
|
+
- **WorkerManager**: Unified interface wrapping Supervisor, CompletionJudge, ResourceLimiter. Methods: `run/resume/cancel/sendInput/confirm/inspect/onEvent/recover`.
|
|
18
|
+
- **IntegrationQueue**: Per project+targetBranch FIFO queue. Integration tasks serialize; development tasks parallelize.
|
|
19
|
+
- **SPSEventHandler**: Event-driven PM operations. Worker exit → CompletionJudge → WorkerEvent → EventHandler moves cards, adds labels, sends notifications.
|
|
20
|
+
- **Recovery**: Decision matrix (R1-R9) with rescue push, worktree rebuild, integration queue reconstruction.
|
|
21
|
+
- **Timeouts**: Soft timeout emits status event; hard timeout (1.5x) force-kills. All timers use `.unref()`.
|
|
22
|
+
- **pendingPMActions**: Failed PM operations saved to state.json and retried next tick cycle.
|
|
23
|
+
|
|
24
|
+
The two-phase state machine continues: `Inprogress` = development, `QA` = integration/merge. One-shot `proc` workers (`codex exec` / `claude -p`) remain the main autonomous path. PTY/ACP available for `sps acp`, dashboard, and manual diagnostics.
|
|
16
25
|
|
|
17
26
|
## Table of Contents
|
|
18
27
|
|
|
@@ -126,7 +135,7 @@ Planning -> Backlog -> Todo -> Inprogress -> QA -> Done
|
|
|
126
135
|
|
|
127
136
|
In this model, the development worker stops at “implementation complete and committed on the task branch”. The QA worker owns integration: it must inspect the current worktree, rebase/merge the task branch back into the target branch, resolve conflicts, and finish the integration. If a development worker merges early anyway, SPS absorbs that as an exception from git evidence and closes the task directly instead of forcing an extra QA run. See `docs/design/10-acp-worker-runtime-design.md` for the persistent Agent transport model, the full worker state breakdown, and the local same-user OAuth reuse boundary. See `docs/design/11-runtime-state-authority-and-recovery-redesign.md` for the redesign that demotes `state.json` / `acp-state.json` to projections and re-centers recovery around PM state plus worktree/git evidence. See `docs/design/12-unified-runtime-state-machine.md` for the current unified state-machine model. See `docs/design/13-development-guardrails.md` for the non-negotiable development rules that prevent future features from reintroducing old state, merge, or prompt-model drift.
|
|
128
137
|
|
|
129
|
-
|
|
138
|
+
The autonomous main path now uses one-shot child processes by default. `WORKER_TRANSPORT=proc` is the workflow transport for `tick`, `pipeline tick`, `qa tick`, `worker launch`, and `recovery`; workers run through `codex exec` or `claude -p`, finish a single task phase, and exit. PTY/ACP still exist, but only for `sps acp`, dashboard observability, and manual diagnostics. Their strong runtime contract (`waiting_input`, `needs_confirmation`, `running`, `completed`, plus `stalled_submit`) remains useful for those manual surfaces, but it is no longer the default autonomous execution path.
|
|
130
139
|
|
|
131
140
|
### MR_MODE=create (Optional)
|
|
132
141
|
|
|
@@ -476,7 +485,7 @@ sps status [--json]
|
|
|
476
485
|
|
|
477
486
|
### sps acp
|
|
478
487
|
|
|
479
|
-
Manage persistent session-backed worker sessions directly,
|
|
488
|
+
Manage persistent session-backed worker sessions directly for diagnostics, manual intervention, and experiments. This is no longer the default transport used by `sps tick`.
|
|
480
489
|
|
|
481
490
|
```bash
|
|
482
491
|
sps acp ensure <project> <slot> [claude|codex] [--json]
|
|
@@ -492,7 +501,7 @@ Current behavior:
|
|
|
492
501
|
- `run` submits a prompt onto the session and records a new run snapshot
|
|
493
502
|
- `status` refreshes session and run state from the local gateway
|
|
494
503
|
- `stop` terminates the persistent session and marks the slot `offline`
|
|
495
|
-
- `sps tick`
|
|
504
|
+
- `sps tick` does not use this transport as its default autonomous execution chain
|
|
496
505
|
- retry / conflict follow-up runs reuse the same slot session when possible, and now recreate a fresh persistent session automatically if the old one has already disappeared
|
|
497
506
|
|
|
498
507
|
Observed session states:
|
|
@@ -917,7 +926,7 @@ Project conf can reference global variables (e.g., `${PLANE_URL}`).
|
|
|
917
926
|
|-------|----------|---------|-------------|
|
|
918
927
|
| `WORKER_TOOL` | No | `claude` | Worker type: `claude` / `codex` |
|
|
919
928
|
| `WORKER_MODE` | No | `print` | Execution mode: `print` (one-shot process) / `interactive` (tmux TUI) |
|
|
920
|
-
| `WORKER_TRANSPORT` | No | `proc` | Worker transport
|
|
929
|
+
| `WORKER_TRANSPORT` | No | `proc` | Worker transport. `proc` is the autonomous workflow path. `acp` / `pty` are retained for `sps acp`, dashboard observability, and manual diagnostics, not as the default `tick` execution chain. |
|
|
921
930
|
| `ACP_GATEWAY_MODE` | No | `local` | ACP gateway deployment mode; current releases support `local` only |
|
|
922
931
|
| `ACP_AGENT` | No | `WORKER_TOOL` | Default ACP tool when `sps acp` does not receive a tool override |
|
|
923
932
|
| `ACP_SESSION_STRATEGY` | No | `per-slot` | Session allocation strategy; current releases support `per-slot` only |
|
|
@@ -968,7 +977,7 @@ PLANE_PROJECT_ID="project-uuid-here"
|
|
|
968
977
|
# Worker
|
|
969
978
|
WORKER_TOOL="claude"
|
|
970
979
|
WORKER_MODE="print" # print (recommended) or interactive (tmux fallback)
|
|
971
|
-
WORKER_TRANSPORT="proc" # proc (
|
|
980
|
+
WORKER_TRANSPORT="proc" # proc (autonomous workflow default); acp/pty are manual diagnostic transports
|
|
972
981
|
ACP_GATEWAY_MODE="local"
|
|
973
982
|
ACP_AGENT="claude"
|
|
974
983
|
ACP_SESSION_STRATEGY="per-slot"
|
|
@@ -155,7 +155,7 @@ function deriveBlockedReason(labels, runtimeStatus, lease, evidence) {
|
|
|
155
155
|
async function buildProjectBoard(projectName) {
|
|
156
156
|
try {
|
|
157
157
|
const snapshot = await loadRuntimeSnapshot(projectName);
|
|
158
|
-
const { ctx, state
|
|
158
|
+
const { ctx, state } = snapshot;
|
|
159
159
|
const taskBackend = createTaskBackend(ctx.config);
|
|
160
160
|
const cards = await taskBackend.listAll();
|
|
161
161
|
const snapshots = cards.map(card => {
|
|
@@ -164,7 +164,7 @@ async function buildProjectBoard(projectName) {
|
|
|
164
164
|
const evidence = state.worktreeEvidence[card.seq] || null;
|
|
165
165
|
const workerSlot = active?.worker ?? null;
|
|
166
166
|
const worker = workerSlot ? state.workers[workerSlot] : null;
|
|
167
|
-
const session = workerSlot ?
|
|
167
|
+
const session = workerSlot ? state.sessions[workerSlot] : null;
|
|
168
168
|
const runtimeOwned = !!worker && worker.status !== 'idle';
|
|
169
169
|
const effectiveState = runtimeOwned ? (active?.state || card.state) : card.state;
|
|
170
170
|
const sessionAlive = worker ? isPersistedSessionAlive(worker, session) : false;
|
|
@@ -191,7 +191,7 @@ async function buildProjectBoard(projectName) {
|
|
|
191
191
|
const counts = Object.fromEntries(STATES.map(stateName => [stateName, 0]));
|
|
192
192
|
for (const card of snapshots)
|
|
193
193
|
counts[card.state] += 1;
|
|
194
|
-
const workerSummary = summarizeWorkerRuntime(state
|
|
194
|
+
const workerSummary = summarizeWorkerRuntime(state);
|
|
195
195
|
const waitingCards = snapshots.filter(card => ['waiting_input', 'needs_confirmation'].includes(card.runtimeStatus || '') || card.blockedReason === 'WAITING').length;
|
|
196
196
|
const conflictCards = snapshots.filter(card => card.blockedReason === 'CONFLICT').length;
|
|
197
197
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cardDashboard.js","sourceRoot":"","sources":["../../src/commands/cardDashboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAGzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,aAAa,CAAC;AAE/C,MAAM,MAAM,GAAgB,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACxF,MAAM,YAAY,GAA8B;IAC9C,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,aAAa;IACzB,EAAE,EAAE,IAAI;IACR,IAAI,EAAE,MAAM;CACb,CAAC;AAEF,MAAM,KAAK,GAAG,SAAS,CAAC;AACxB,MAAM,IAAI,GAAG,SAAS,CAAC;AACvB,MAAM,GAAG,GAAG,SAAS,CAAC;AACtB,MAAM,EAAE,GAAG;IACT,GAAG,EAAE,UAAU;IACf,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,UAAU;IAChB,OAAO,EAAE,UAAU;IACnB,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,UAAU;IACjB,IAAI,EAAE,UAAU;CACjB,CAAC;AAEF,MAAM,aAAa,GAAG,mFAAmF,CAAC;AAiC1G,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;AAChC,CAAC;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,KAAa;IAChD,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,GAAG,GAAG,KAAK,EAAE,CAAC;QAChB,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;YACtB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;gBAClB,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM,IAAI,EAAE,CAAC;gBACb,SAAS;YACX,CAAC;YACD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,IAAI,EAAE,CAAC;gBACb,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBAAE,QAAQ,GAAG,KAAK,CAAC;gBAC1C,SAAS;YACX,CAAC;YACD,IAAI,OAAO,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,GAAG,CAAC;gBACd,MAAM;YACR,CAAC;YACD,MAAM,IAAI,EAAE,CAAC;YACb,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,UAAU,CAAC,IAAY,EAAE,KAAa;IAC7C,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,GAAG,IAAI,KAAK;QAAE,OAAO,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3C,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,UAAU,CAAC,KAAgB;IAClC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC;QAChC,KAAK,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC;QAC/B,KAAK,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC;QAC5B,KAAK,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC;QACnC,KAAK,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC;QAC5B,KAAK,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB;IACvB,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IACxD,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,EAAE,CAAC;IACxC,IAAI,CAAC;QACH,OAAO,WAAW,CAAC,WAAW,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;aACrD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;aAC5F,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;aACxB,IAAI,EAAE,CAAC;IACZ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,eAAe;IACtB,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,GAAG;QACnC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE;KAChC,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,KAAa,EAAE,QAAgB;IAC7D,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1D,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACxD,IAAI,SAAS,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;YAC9B,OAAO,GAAG,SAAS,CAAC;YACpB,SAAS;QACX,CAAC;QACD,IAAI,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjC,OAAO,GAAG,IAAI,CAAC;QACf,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ;YAAE,MAAM;IACtC,CAAC;IACD,IAAI,OAAO,IAAI,KAAK,CAAC,MAAM,GAAG,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5D,IAAI,KAAK,CAAC,MAAM,GAAG,QAAQ;QAAE,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC;IACrD,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;QACjF,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QACjC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACzI,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,GAAG,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/C,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,YAAY,CAAC,MAAgB;IACpC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACrF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,aAAa,CAAC;IAChD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,mBAAmB,CAC1B,MAAgB,EAChB,aAA4B,EAC5B,KAAuB,EACvB,QAAiC;IAEjC,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC;IACnD,IAAI,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAC,IAAI,aAAa,KAAK,eAAe,IAAI,aAAa,KAAK,oBAAoB;QAAE,OAAO,SAAS,CAAC;IAC7I,IAAI,KAAK,EAAE,KAAK,KAAK,WAAW,IAAI,CAAC,QAAQ,EAAE,cAAc,IAAI,QAAQ,EAAE,YAAY,CAAC;QAAE,OAAO,WAAW,CAAC;IAC7G,IAAI,aAAa,KAAK,OAAO;QAAE,OAAO,OAAO,CAAC;IAC9C,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,WAAW,CAAC;IACrD,IAAI,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC;QAAE,OAAO,OAAO,CAAC;IACrD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,WAAmB;IAClD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACxD,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;QAC1C,MAAM,WAAW,GAAG,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAmB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACjD,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;YAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;YAC1D,MAAM,UAAU,GAAG,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC;YAC1C,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7D,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAClE,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC;YAC1D,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,CAAE,MAAM,EAAE,KAA+B,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YAC5G,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAC/E,MAAM,aAAa,GAAG,CAAC,YAAY;gBACjC,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,CAAC,YAAY;oBACxD,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,OAAO,EAAE,YAAY;wBACrB,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,oBAAoB,CAAC;wBAClF,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,MAAM,EAAE,YAAY,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC9G,MAAM,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YACvF,OAAO;gBACL,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,KAAK,EAAE,IAAI,CAAC,IAAI;gBAChB,KAAK,EAAE,cAAc;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI;gBAC5C,aAAa;gBACb,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;gBACtD,aAAa;gBACb,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,aAAa,IAAI,MAAM,EAAE,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;aAC5G,CAAC;QACJ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;QAE7D,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAA8B,CAAC;QACxG,KAAK,MAAM,IAAI,IAAI,SAAS;YAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEtD,MAAM,aAAa,GAAG,sBAAsB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAE9D,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;QACrK,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;QAEzF,OAAO;YACL,OAAO,EAAE,WAAW;YACpB,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,WAAW;YACnD,KAAK,EAAE,SAAS;YAChB,MAAM;YACN,aAAa,EAAE,aAAa,CAAC,MAAM;YACnC,cAAc,EAAE,aAAa,CAAC,OAAO;YACrC,YAAY,EAAE,aAAa,CAAC,KAAK;YACjC,cAAc,EAAE,aAAa,CAAC,OAAO;YACrC,YAAY;YACZ,aAAa;SACd,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAA8B,CAAC;QAChG,OAAO;YACL,OAAO,EAAE,WAAW;YACpB,WAAW,EAAE,WAAW;YACxB,KAAK,EAAE,EAAE;YACT,MAAM;YACN,aAAa,EAAE,CAAC;YAChB,cAAc,EAAE,CAAC;YACjB,YAAY,EAAE,CAAC;YACf,cAAc,EAAE,CAAC;YACjB,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,CAAC;YAChB,KAAK,EAAE,GAAG;SACX,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,QAAkB;IAC7C,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED,SAAS,YAAY,CAAC,SAAiB;IACrC,MAAM,KAAK,GAAG,sBAAsB,CAAC;IACrC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,kBAAkB,EAAE,CAAC;IAC5C,MAAM,KAAK,GAAG,GAAG,GAAG,GAAG,GAAG,sBAAsB,KAAK,EAAE,CAAC;IACxD,OAAO;QACL,GAAG,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE;QACnD,GAAG,UAAU,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,KAAK,GAAG,KAAK,EAAE,EAAE,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,EAAE;QAC9F,GAAG,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE;KACpD,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,KAA2B;IACvD,MAAM,KAAK,GAAG;QACZ,GAAG,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,aAAa,UAAU,KAAK,EAAE;QAClD,GAAG,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC,cAAc,WAAW,KAAK,EAAE;QACrD,GAAG,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,YAAY,SAAS,KAAK,EAAE;QAC9C,GAAG,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,SAAS,KAAK,EAAE;KAChD,CAAC;IACF,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC,YAAY,WAAW,KAAK,EAAE,CAAC,CAAC;IAC5F,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,aAAa,YAAY,KAAK,EAAE,CAAC,CAAC;IAC5F,OAAO,KAAK,IAAI,GAAG,KAAK,CAAC,WAAW,GAAG,KAAK,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;AACrF,CAAC;AAED,SAAS,cAAc,CAAC,IAAkB,EAAE,KAAa;IACvD,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC,CAAC;IAC7B,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,EAAE,UAAU,CAAC,CAAC;IAC1F,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,GAAG,KAAK,EAAE,CAAC;IACxD,CAAC;SAAM,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACjD,UAAU,GAAG,GAAG,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,GAAG,KAAK,IAAI,GAAG,GAAG,IAAI,CAAC,aAAa,GAAG,KAAK,EAAE,CAAC;IAC3F,CAAC;SAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9B,UAAU,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,aAAa,GAAG,KAAK,EAAE,CAAC;IACrD,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC;IAC7C,CAAC;IAED,OAAO;QACL,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE;QAC9C,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE;QACxD,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE;QACxD,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,SAAS,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE;QACpD,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE;QAChF,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE;KAC/C,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAA2B,EAAE,KAAgB,EAAE,KAAa,EAAE,MAAc;IAChG,MAAM,KAAK,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC;IAC5F,MAAM,KAAK,GAAa;QACtB,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE;QAC9C,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE;QAC1E,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE;KAC/C,CAAC;IACF,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5C,MAAM,UAAU,GAAG,CAAC,CAAC;IACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC;IACjE,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IAE1C,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAClD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,IAAI,aAAa,CAAC,QAAQ,EAAE,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;IACrD,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,CAAC;IAChC,IAAI,SAAS,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,YAAY,EAAE,CAAC;QACjD,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,GAAG,GAAG,IAAI,SAAS,QAAQ,KAAK,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;IACtH,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,GAAG,YAAY,EAAE,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;IAC3D,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,mBAAmB,CAAC,KAA2B,EAAE,SAAiB,EAAE,UAAkB;IAC7F,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC,WAAW,GAAG,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;IAC1E,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;IACzC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,QAAQ,GAAG,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;IACnF,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACnE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC;IAEnE,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;QACpC,MAAM,UAAU,GAAe,EAAE,CAAC;QAClC,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC;YACxC,MAAM,GAAG,GAAG,GAAG,GAAG,QAAQ,GAAG,GAAG,CAAC;YACjC,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;gBACxB,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;YAC3E,CAAC;iBAAM,CAAC;gBACN,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QACD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;YACvD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3F,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,sBAAsB,KAAK,EAAE,CAAC,CAAC;IACjD,IAAI,MAAM,CAAC,MAAM,GAAG,UAAU;QAAE,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC;IAC3D,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,eAAe,CAAC,KAA2B,EAAE,MAAmB;IACvE,OAAO,MAAM;SACV,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,UAAU,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,EAAE,CAAC;SAC5H,IAAI,CAAC,IAAI,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,iBAAiB,CAAC,KAA2B,EAAE,KAAa,EAAE,MAAc;IACnF,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;IAC3D,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC,WAAW,GAAG,KAAK,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;IACvH,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;IAE3D,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;IACrH,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG;YACd,GAAG,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,aAAa,UAAU,KAAK,EAAE;YAClD,GAAG,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC,cAAc,WAAW,KAAK,EAAE;YACrD,GAAG,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,YAAY,SAAS,KAAK,EAAE;YAC9C,GAAG,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,SAAS,KAAK,EAAE;SAChD,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,OAAO,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;QACzF,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;QACzI,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;QACtI,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK;aACzB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,SAAS,EAAE,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;aAC7I,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;aACX,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;aACvE,IAAI,CAAC,KAAK,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,QAAQ,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,eAAe,KAAK,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;IACzJ,CAAC;IAED,OAAO,KAAK,CAAC,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;IAC3D,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,MAA8B,EAAE,SAAiB,EAAE,UAAkB;IAC/F,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,qCAAqC,KAAK,EAAE,CAAC,CAAC;IAChE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7E,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IAC7E,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACnE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC;IAElE,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;QACpC,MAAM,SAAS,GAAe,EAAE,CAAC;QACjC,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;YACpC,MAAM,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC;YAC7B,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM;gBAAE,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;;gBAC5F,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACvE,CAAC;QACD,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC;YAC9C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACvF,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,sBAAsB,KAAK,EAAE,CAAC,CAAC;IACjD,IAAI,MAAM,CAAC,MAAM,GAAG,UAAU;QAAE,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC;IAC3D,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,eAAe,CAAC,MAA8B;IACrD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,eAAe,EAAE,CAAC;IACzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC3E,OAAO,kBAAkB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAChD,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,QAAkB,EAAE,UAAkB;IAC3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC7C,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAChC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IACF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAE/B,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;QACtB,IAAI,OAAO;YAAE,OAAO;QACpB,OAAO,GAAG,IAAI,CAAC;QACf,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC7C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YACrC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;QAChD,CAAC;gBAAS,CAAC;YACT,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACnC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,GAAW,EAAE,EAAE;YACvC,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,MAAM;gBAAE,OAAO,EAAE,CAAC;YAC7C,IAAI,GAAG,KAAK,GAAG;gBAAE,KAAK,IAAI,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,IAAI,EAAE,CAAC;IACb,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IAChD,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,QAAkB,EAClB,KAA8B;IAE9B,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;IAChC,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;IAE1B,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,QAAQ,GAAG,gBAAgB,EAAE,CAAC;IACzD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9F,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,OAAO,GAAkB;YAC7B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,QAAQ,EAAE,MAAM;SACjB,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO;IACT,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;QACnF,MAAM,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QACpC,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;AACvC,CAAC"}
|
|
1
|
+
{"version":3,"file":"cardDashboard.js","sourceRoot":"","sources":["../../src/commands/cardDashboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAGzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,aAAa,CAAC;AAE/C,MAAM,MAAM,GAAgB,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACxF,MAAM,YAAY,GAA8B;IAC9C,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,aAAa;IACzB,EAAE,EAAE,IAAI;IACR,IAAI,EAAE,MAAM;CACb,CAAC;AAEF,MAAM,KAAK,GAAG,SAAS,CAAC;AACxB,MAAM,IAAI,GAAG,SAAS,CAAC;AACvB,MAAM,GAAG,GAAG,SAAS,CAAC;AACtB,MAAM,EAAE,GAAG;IACT,GAAG,EAAE,UAAU;IACf,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,UAAU;IAChB,OAAO,EAAE,UAAU;IACnB,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,UAAU;IACjB,IAAI,EAAE,UAAU;CACjB,CAAC;AAEF,MAAM,aAAa,GAAG,mFAAmF,CAAC;AAiC1G,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;AAChC,CAAC;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,KAAa;IAChD,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,GAAG,GAAG,KAAK,EAAE,CAAC;QAChB,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;YACtB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;gBAClB,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM,IAAI,EAAE,CAAC;gBACb,SAAS;YACX,CAAC;YACD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,IAAI,EAAE,CAAC;gBACb,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBAAE,QAAQ,GAAG,KAAK,CAAC;gBAC1C,SAAS;YACX,CAAC;YACD,IAAI,OAAO,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,GAAG,CAAC;gBACd,MAAM;YACR,CAAC;YACD,MAAM,IAAI,EAAE,CAAC;YACb,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,UAAU,CAAC,IAAY,EAAE,KAAa;IAC7C,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,GAAG,IAAI,KAAK;QAAE,OAAO,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3C,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,UAAU,CAAC,KAAgB;IAClC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC;QAChC,KAAK,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC;QAC/B,KAAK,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC;QAC5B,KAAK,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC;QACnC,KAAK,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC;QAC5B,KAAK,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB;IACvB,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IACxD,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,EAAE,CAAC;IACxC,IAAI,CAAC;QACH,OAAO,WAAW,CAAC,WAAW,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;aACrD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;aAC5F,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;aACxB,IAAI,EAAE,CAAC;IACZ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,eAAe;IACtB,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,GAAG;QACnC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE;KAChC,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,KAAa,EAAE,QAAgB;IAC7D,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1D,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACxD,IAAI,SAAS,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;YAC9B,OAAO,GAAG,SAAS,CAAC;YACpB,SAAS;QACX,CAAC;QACD,IAAI,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjC,OAAO,GAAG,IAAI,CAAC;QACf,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ;YAAE,MAAM;IACtC,CAAC;IACD,IAAI,OAAO,IAAI,KAAK,CAAC,MAAM,GAAG,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5D,IAAI,KAAK,CAAC,MAAM,GAAG,QAAQ;QAAE,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC;IACrD,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;QACjF,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QACjC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACzI,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,GAAG,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/C,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,YAAY,CAAC,MAAgB;IACpC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACrF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,aAAa,CAAC;IAChD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,mBAAmB,CAC1B,MAAgB,EAChB,aAA4B,EAC5B,KAAuB,EACvB,QAAiC;IAEjC,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC;IACnD,IAAI,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAC,IAAI,aAAa,KAAK,eAAe,IAAI,aAAa,KAAK,oBAAoB;QAAE,OAAO,SAAS,CAAC;IAC7I,IAAI,KAAK,EAAE,KAAK,KAAK,WAAW,IAAI,CAAC,QAAQ,EAAE,cAAc,IAAI,QAAQ,EAAE,YAAY,CAAC;QAAE,OAAO,WAAW,CAAC;IAC7G,IAAI,aAAa,KAAK,OAAO;QAAE,OAAO,OAAO,CAAC;IAC9C,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,WAAW,CAAC;IACrD,IAAI,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC;QAAE,OAAO,OAAO,CAAC;IACrD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,WAAmB;IAClD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACxD,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC;QAChC,MAAM,WAAW,GAAG,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAmB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACjD,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;YAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;YAC1D,MAAM,UAAU,GAAG,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC;YAC1C,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7D,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC/D,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC;YAC1D,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,CAAE,MAAM,EAAE,KAA+B,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YAC5G,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAC/E,MAAM,aAAa,GAAG,CAAC,YAAY;gBACjC,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,CAAC,YAAY;oBACxD,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,OAAO,EAAE,YAAY;wBACrB,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,oBAAoB,CAAC;wBAClF,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,MAAM,EAAE,YAAY,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC9G,MAAM,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YACvF,OAAO;gBACL,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,KAAK,EAAE,IAAI,CAAC,IAAI;gBAChB,KAAK,EAAE,cAAc;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI;gBAC5C,aAAa;gBACb,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;gBACtD,aAAa;gBACb,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,aAAa,IAAI,MAAM,EAAE,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;aAC5G,CAAC;QACJ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;QAE7D,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAA8B,CAAC;QACxG,KAAK,MAAM,IAAI,IAAI,SAAS;YAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEtD,MAAM,aAAa,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAEpD,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;QACrK,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;QAEzF,OAAO;YACL,OAAO,EAAE,WAAW;YACpB,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,WAAW;YACnD,KAAK,EAAE,SAAS;YAChB,MAAM;YACN,aAAa,EAAE,aAAa,CAAC,MAAM;YACnC,cAAc,EAAE,aAAa,CAAC,OAAO;YACrC,YAAY,EAAE,aAAa,CAAC,KAAK;YACjC,cAAc,EAAE,aAAa,CAAC,OAAO;YACrC,YAAY;YACZ,aAAa;SACd,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAA8B,CAAC;QAChG,OAAO;YACL,OAAO,EAAE,WAAW;YACpB,WAAW,EAAE,WAAW;YACxB,KAAK,EAAE,EAAE;YACT,MAAM;YACN,aAAa,EAAE,CAAC;YAChB,cAAc,EAAE,CAAC;YACjB,YAAY,EAAE,CAAC;YACf,cAAc,EAAE,CAAC;YACjB,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,CAAC;YAChB,KAAK,EAAE,GAAG;SACX,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,QAAkB;IAC7C,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED,SAAS,YAAY,CAAC,SAAiB;IACrC,MAAM,KAAK,GAAG,sBAAsB,CAAC;IACrC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,kBAAkB,EAAE,CAAC;IAC5C,MAAM,KAAK,GAAG,GAAG,GAAG,GAAG,GAAG,sBAAsB,KAAK,EAAE,CAAC;IACxD,OAAO;QACL,GAAG,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE;QACnD,GAAG,UAAU,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,KAAK,GAAG,KAAK,EAAE,EAAE,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,EAAE;QAC9F,GAAG,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE;KACpD,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,KAA2B;IACvD,MAAM,KAAK,GAAG;QACZ,GAAG,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,aAAa,UAAU,KAAK,EAAE;QAClD,GAAG,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC,cAAc,WAAW,KAAK,EAAE;QACrD,GAAG,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,YAAY,SAAS,KAAK,EAAE;QAC9C,GAAG,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,SAAS,KAAK,EAAE;KAChD,CAAC;IACF,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC,YAAY,WAAW,KAAK,EAAE,CAAC,CAAC;IAC5F,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,aAAa,YAAY,KAAK,EAAE,CAAC,CAAC;IAC5F,OAAO,KAAK,IAAI,GAAG,KAAK,CAAC,WAAW,GAAG,KAAK,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;AACrF,CAAC;AAED,SAAS,cAAc,CAAC,IAAkB,EAAE,KAAa;IACvD,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC,CAAC;IAC7B,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,EAAE,UAAU,CAAC,CAAC;IAC1F,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,GAAG,KAAK,EAAE,CAAC;IACxD,CAAC;SAAM,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACjD,UAAU,GAAG,GAAG,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,GAAG,KAAK,IAAI,GAAG,GAAG,IAAI,CAAC,aAAa,GAAG,KAAK,EAAE,CAAC;IAC3F,CAAC;SAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9B,UAAU,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,aAAa,GAAG,KAAK,EAAE,CAAC;IACrD,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC;IAC7C,CAAC;IAED,OAAO;QACL,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE;QAC9C,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE;QACxD,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE;QACxD,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,SAAS,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE;QACpD,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE;QAChF,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE;KAC/C,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAA2B,EAAE,KAAgB,EAAE,KAAa,EAAE,MAAc;IAChG,MAAM,KAAK,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC;IAC5F,MAAM,KAAK,GAAa;QACtB,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE;QAC9C,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE;QAC1E,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE;KAC/C,CAAC;IACF,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5C,MAAM,UAAU,GAAG,CAAC,CAAC;IACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC;IACjE,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IAE1C,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAClD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,IAAI,aAAa,CAAC,QAAQ,EAAE,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;IACrD,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,CAAC;IAChC,IAAI,SAAS,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,YAAY,EAAE,CAAC;QACjD,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,GAAG,GAAG,IAAI,SAAS,QAAQ,KAAK,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;IACtH,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,GAAG,YAAY,EAAE,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;IAC3D,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,mBAAmB,CAAC,KAA2B,EAAE,SAAiB,EAAE,UAAkB;IAC7F,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC,WAAW,GAAG,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;IAC1E,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;IACzC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,QAAQ,GAAG,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;IACnF,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACnE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC;IAEnE,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;QACpC,MAAM,UAAU,GAAe,EAAE,CAAC;QAClC,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC;YACxC,MAAM,GAAG,GAAG,GAAG,GAAG,QAAQ,GAAG,GAAG,CAAC;YACjC,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;gBACxB,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;YAC3E,CAAC;iBAAM,CAAC;gBACN,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QACD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;YACvD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3F,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,sBAAsB,KAAK,EAAE,CAAC,CAAC;IACjD,IAAI,MAAM,CAAC,MAAM,GAAG,UAAU;QAAE,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC;IAC3D,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,eAAe,CAAC,KAA2B,EAAE,MAAmB;IACvE,OAAO,MAAM;SACV,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,UAAU,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,EAAE,CAAC;SAC5H,IAAI,CAAC,IAAI,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,iBAAiB,CAAC,KAA2B,EAAE,KAAa,EAAE,MAAc;IACnF,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;IAC3D,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC,WAAW,GAAG,KAAK,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;IACvH,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;IAE3D,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;IACrH,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG;YACd,GAAG,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,aAAa,UAAU,KAAK,EAAE;YAClD,GAAG,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC,cAAc,WAAW,KAAK,EAAE;YACrD,GAAG,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,YAAY,SAAS,KAAK,EAAE;YAC9C,GAAG,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,SAAS,KAAK,EAAE;SAChD,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,OAAO,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;QACzF,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;QACzI,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;QACtI,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK;aACzB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,SAAS,EAAE,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;aAC7I,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;aACX,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;aACvE,IAAI,CAAC,KAAK,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,QAAQ,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,eAAe,KAAK,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;IACzJ,CAAC;IAED,OAAO,KAAK,CAAC,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;IAC3D,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,MAA8B,EAAE,SAAiB,EAAE,UAAkB;IAC/F,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,qCAAqC,KAAK,EAAE,CAAC,CAAC;IAChE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7E,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IAC7E,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACnE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC;IAElE,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;QACpC,MAAM,SAAS,GAAe,EAAE,CAAC;QACjC,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;YACpC,MAAM,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC;YAC7B,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM;gBAAE,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;;gBAC5F,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACvE,CAAC;QACD,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC;YAC9C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACvF,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,sBAAsB,KAAK,EAAE,CAAC,CAAC;IACjD,IAAI,MAAM,CAAC,MAAM,GAAG,UAAU;QAAE,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC;IAC3D,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,eAAe,CAAC,MAA8B;IACrD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,eAAe,EAAE,CAAC;IACzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC3E,OAAO,kBAAkB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAChD,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,QAAkB,EAAE,UAAkB;IAC3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC7C,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAChC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IACF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAE/B,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;QACtB,IAAI,OAAO;YAAE,OAAO;QACpB,OAAO,GAAG,IAAI,CAAC;QACf,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC7C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YACrC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;QAChD,CAAC;gBAAS,CAAC;YACT,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACnC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,GAAW,EAAE,EAAE;YACvC,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,MAAM;gBAAE,OAAO,EAAE,CAAC;YAC7C,IAAI,GAAG,KAAK,GAAG;gBAAE,KAAK,IAAI,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,IAAI,EAAE,CAAC;IACb,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IAChD,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,QAAkB,EAClB,KAA8B;IAE9B,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;IAChC,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;IAE1B,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,QAAQ,GAAG,gBAAgB,EAAE,CAAC;IACzD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9F,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,OAAO,GAAkB;YAC7B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,QAAQ,EAAE,MAAM;SACjB,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO;IACT,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;QACnF,MAAM,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QACpC,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;AACvC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipelineTick.d.ts","sourceRoot":"","sources":["../../src/commands/pipelineTick.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pipelineTick.d.ts","sourceRoot":"","sources":["../../src/commands/pipelineTick.ts"],"names":[],"mappings":"AAYA,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAAC,IAAI,CAAC,CA2Df"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { ProjectContext } from '../core/context.js';
|
|
2
|
+
import { workflowUsesAgentRuntime } from '../core/config.js';
|
|
2
3
|
import { ExecutionEngine } from '../engines/ExecutionEngine.js';
|
|
3
4
|
import { createTaskBackend, createRepoBackend, createNotifier, createAgentRuntime } from '../providers/registry.js';
|
|
4
5
|
import { ProcessSupervisor } from '../manager/supervisor.js';
|
|
5
6
|
import { CompletionJudge } from '../manager/completion-judge.js';
|
|
6
|
-
import { PostActions } from '../manager/post-actions.js';
|
|
7
7
|
import { ResourceLimiter } from '../manager/resource-limiter.js';
|
|
8
|
-
import {
|
|
8
|
+
import { WorkerManagerImpl } from '../manager/worker-manager-impl.js';
|
|
9
|
+
import { SPSEventHandler } from '../engines/EventHandler.js';
|
|
10
|
+
import { RuntimeStore } from '../core/runtimeStore.js';
|
|
9
11
|
import { Logger } from '../core/logger.js';
|
|
10
12
|
export async function executePipelineTick(project, flags) {
|
|
11
13
|
const log = new Logger('pipeline', project);
|
|
@@ -35,10 +37,21 @@ export async function executePipelineTick(project, flags) {
|
|
|
35
37
|
staggerDelayMs: parseInt(process.env.SPS_MANAGER_STAGGER_MS || '5000', 10),
|
|
36
38
|
maxMemoryPercent: parseInt(process.env.SPS_MANAGER_MAX_MEMORY_PERCENT || '80', 10),
|
|
37
39
|
});
|
|
38
|
-
const
|
|
39
|
-
const
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
const agentRuntime = workflowUsesAgentRuntime(ctx.config) ? createAgentRuntime(ctx) : null;
|
|
41
|
+
const workerManager = new WorkerManagerImpl({
|
|
42
|
+
supervisor, completionJudge, resourceLimiter,
|
|
43
|
+
agentRuntime: agentRuntime ?? null,
|
|
44
|
+
stateFile: ctx.paths.stateFile, maxWorkers: ctx.maxWorkers,
|
|
45
|
+
});
|
|
46
|
+
const runtimeStore = new RuntimeStore({ paths: { stateFile: ctx.paths.stateFile }, maxWorkers: ctx.maxWorkers });
|
|
47
|
+
const raw = ctx.config.raw;
|
|
48
|
+
const eventHandler = new SPSEventHandler({
|
|
49
|
+
taskBackend, notifier, runtimeStore, project,
|
|
50
|
+
qaStateId: raw.PLANE_STATE_QA || raw.TRELLO_QA_LIST_ID || 'QA',
|
|
51
|
+
doneStateId: raw.PLANE_STATE_DONE || raw.TRELLO_DONE_LIST_ID || '',
|
|
52
|
+
});
|
|
53
|
+
workerManager.onEvent((event) => eventHandler.handle(event));
|
|
54
|
+
const engine = new ExecutionEngine(ctx, taskBackend, repoBackend, workerManager, notifier, agentRuntime);
|
|
42
55
|
const result = await engine.tick({ dryRun });
|
|
43
56
|
if (jsonOutput) {
|
|
44
57
|
console.log(JSON.stringify(result, null, 2));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipelineTick.js","sourceRoot":"","sources":["../../src/commands/pipelineTick.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACpH,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"pipelineTick.js","sourceRoot":"","sources":["../../src/commands/pipelineTick.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"qaTick.d.ts","sourceRoot":"","sources":["../../src/commands/qaTick.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"qaTick.d.ts","sourceRoot":"","sources":["../../src/commands/qaTick.ts"],"names":[],"mappings":"AAYA,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAAC,IAAI,CAAC,CA+Df"}
|
package/dist/commands/qaTick.js
CHANGED
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
import { ProjectContext } from '../core/context.js';
|
|
2
|
+
import { workflowUsesAgentRuntime } from '../core/config.js';
|
|
2
3
|
import { CloseoutEngine } from '../engines/CloseoutEngine.js';
|
|
3
|
-
import { createTaskBackend,
|
|
4
|
+
import { createTaskBackend, createRepoBackend, createNotifier, createAgentRuntime } from '../providers/registry.js';
|
|
5
|
+
import { ProcessSupervisor } from '../manager/supervisor.js';
|
|
6
|
+
import { CompletionJudge } from '../manager/completion-judge.js';
|
|
7
|
+
import { ResourceLimiter } from '../manager/resource-limiter.js';
|
|
8
|
+
import { WorkerManagerImpl } from '../manager/worker-manager-impl.js';
|
|
9
|
+
import { SPSEventHandler } from '../engines/EventHandler.js';
|
|
10
|
+
import { RuntimeStore } from '../core/runtimeStore.js';
|
|
4
11
|
import { Logger } from '../core/logger.js';
|
|
5
12
|
export async function executeQaTick(project, flags) {
|
|
6
13
|
const log = new Logger('qa', project);
|
|
@@ -21,10 +28,32 @@ export async function executeQaTick(project, flags) {
|
|
|
21
28
|
}
|
|
22
29
|
const taskBackend = createTaskBackend(ctx.config);
|
|
23
30
|
const repoBackend = createRepoBackend(ctx.config);
|
|
24
|
-
const workerProvider = createWorkerProvider(ctx.config);
|
|
25
31
|
const notifier = createNotifier(ctx.config);
|
|
26
|
-
const agentRuntime = createAgentRuntime(ctx);
|
|
27
|
-
|
|
32
|
+
const agentRuntime = workflowUsesAgentRuntime(ctx.config) ? createAgentRuntime(ctx) : null;
|
|
33
|
+
// Build WorkerManager for standalone QA tick
|
|
34
|
+
const supervisor = new ProcessSupervisor();
|
|
35
|
+
const maxWorkers = parseInt(process.env.SPS_MANAGER_MAX_WORKERS || '30', 10);
|
|
36
|
+
const resourceLimiter = new ResourceLimiter({
|
|
37
|
+
maxGlobalWorkers: maxWorkers,
|
|
38
|
+
staggerDelayMs: parseInt(process.env.SPS_MANAGER_STAGGER_MS || '5000', 10),
|
|
39
|
+
maxMemoryPercent: parseInt(process.env.SPS_MANAGER_MAX_MEMORY_PERCENT || '80', 10),
|
|
40
|
+
});
|
|
41
|
+
const completionJudge = new CompletionJudge();
|
|
42
|
+
const workerManager = new WorkerManagerImpl({
|
|
43
|
+
supervisor, completionJudge, resourceLimiter,
|
|
44
|
+
agentRuntime: agentRuntime ?? null,
|
|
45
|
+
stateFile: ctx.paths.stateFile,
|
|
46
|
+
maxWorkers: ctx.maxWorkers,
|
|
47
|
+
});
|
|
48
|
+
const runtimeStore = new RuntimeStore({ paths: { stateFile: ctx.paths.stateFile }, maxWorkers: ctx.maxWorkers });
|
|
49
|
+
const raw = ctx.config.raw;
|
|
50
|
+
const eventHandler = new SPSEventHandler({
|
|
51
|
+
taskBackend, notifier, runtimeStore, project,
|
|
52
|
+
qaStateId: raw.PLANE_STATE_QA || raw.TRELLO_QA_LIST_ID || 'QA',
|
|
53
|
+
doneStateId: raw.PLANE_STATE_DONE || raw.TRELLO_DONE_LIST_ID || '',
|
|
54
|
+
});
|
|
55
|
+
workerManager.onEvent((event) => eventHandler.handle(event));
|
|
56
|
+
const engine = new CloseoutEngine(ctx, taskBackend, repoBackend, workerManager, notifier);
|
|
28
57
|
const result = await engine.tick();
|
|
29
58
|
if (jsonOutput) {
|
|
30
59
|
console.log(JSON.stringify(result, null, 2));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"qaTick.js","sourceRoot":"","sources":["../../src/commands/qaTick.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,
|
|
1
|
+
{"version":3,"file":"qaTick.js","sourceRoot":"","sources":["../../src/commands/qaTick.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAqFA,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CA4EjF"}
|
package/dist/commands/status.js
CHANGED
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
import { existsSync, readFileSync, readdirSync } from 'node:fs';
|
|
9
9
|
import { resolve } from 'node:path';
|
|
10
10
|
import { loadProjectConf } from '../core/config.js';
|
|
11
|
-
import { readACPState } from '../core/acpState.js';
|
|
12
11
|
import { readState } from '../core/state.js';
|
|
13
12
|
import { isProcessAlive } from '../core/sessionLiveness.js';
|
|
14
13
|
import { summarizeWorkerRuntime } from '../core/workerRuntimeSummary.js';
|
|
@@ -19,7 +18,6 @@ async function getProjectStatus(project) {
|
|
|
19
18
|
const projectDir = resolve(PROJECTS_DIR, project);
|
|
20
19
|
const lockFile = resolve(projectDir, 'runtime', 'tick.lock');
|
|
21
20
|
const stateFile = resolve(projectDir, 'runtime', 'state.json');
|
|
22
|
-
const acpStateFile = resolve(projectDir, 'runtime', 'acp-state.json');
|
|
23
21
|
const pipelineFile = resolve(projectDir, 'pipeline_order.json');
|
|
24
22
|
// Tick status
|
|
25
23
|
let tick = 'stopped';
|
|
@@ -41,7 +39,7 @@ async function getProjectStatus(project) {
|
|
|
41
39
|
let activeCards = 0;
|
|
42
40
|
try {
|
|
43
41
|
const snapshot = await loadRuntimeSnapshot(project);
|
|
44
|
-
workers = summarizeWorkerRuntime(snapshot.state
|
|
42
|
+
workers = summarizeWorkerRuntime(snapshot.state);
|
|
45
43
|
activeCards = Object.keys(snapshot.state.activeCards).length;
|
|
46
44
|
}
|
|
47
45
|
catch {
|
|
@@ -49,8 +47,7 @@ async function getProjectStatus(project) {
|
|
|
49
47
|
try {
|
|
50
48
|
const maxWorkers = loadProjectConf(project).MAX_CONCURRENT_WORKERS;
|
|
51
49
|
const state = readState(stateFile, maxWorkers);
|
|
52
|
-
|
|
53
|
-
workers = summarizeWorkerRuntime(state, acpState);
|
|
50
|
+
workers = summarizeWorkerRuntime(state);
|
|
54
51
|
activeCards = Object.keys(state.activeCards).length;
|
|
55
52
|
}
|
|
56
53
|
catch { /* corrupt state */ }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tick.d.ts","sourceRoot":"","sources":["../../src/commands/tick.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tick.d.ts","sourceRoot":"","sources":["../../src/commands/tick.ts"],"names":[],"mappings":"AAyKA;;;;;;;;;;;;GAYG;AACH,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAAE,EAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAAC,IAAI,CAAC,CA6Jf"}
|
package/dist/commands/tick.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ProjectContext } from '../core/context.js';
|
|
2
|
+
import { workflowUsesAgentRuntime } from '../core/config.js';
|
|
2
3
|
import { acquireTickLock, releaseTickLock } from '../core/lock.js';
|
|
3
4
|
import { readState } from '../core/state.js';
|
|
4
5
|
import { Logger } from '../core/logger.js';
|
|
@@ -9,10 +10,12 @@ import { MonitorEngine } from '../engines/MonitorEngine.js';
|
|
|
9
10
|
import { createTaskBackend, createWorkerProvider, createRepoBackend, createNotifier, createAgentRuntime } from '../providers/registry.js';
|
|
10
11
|
import { ProcessSupervisor } from '../manager/supervisor.js';
|
|
11
12
|
import { CompletionJudge } from '../manager/completion-judge.js';
|
|
12
|
-
import { PostActions } from '../manager/post-actions.js';
|
|
13
13
|
import { ResourceLimiter } from '../manager/resource-limiter.js';
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
14
|
+
import { SPSEventHandler } from '../engines/EventHandler.js';
|
|
15
|
+
import { RuntimeStore } from '../core/runtimeStore.js';
|
|
16
|
+
// PostActions and Recovery are no longer used directly — WM handles recovery
|
|
17
|
+
// and SPSEventHandler handles PM operations via the event system.
|
|
18
|
+
import { WorkerManagerImpl } from '../manager/worker-manager-impl.js';
|
|
16
19
|
import { RuntimeCoordinator } from '../manager/runtime-coordinator.js';
|
|
17
20
|
const DEFAULT_INTERVAL_S = 30;
|
|
18
21
|
// ─── Shared Manager modules (global across all projects) ──────
|
|
@@ -61,13 +64,16 @@ function createRunner(project) {
|
|
|
61
64
|
return null;
|
|
62
65
|
}
|
|
63
66
|
// Create providers
|
|
64
|
-
let taskBackend, workerProvider, repoBackend, notifier
|
|
67
|
+
let taskBackend, workerProvider, repoBackend, notifier;
|
|
68
|
+
let agentRuntime = null;
|
|
65
69
|
try {
|
|
66
70
|
taskBackend = createTaskBackend(ctx.config);
|
|
67
71
|
workerProvider = createWorkerProvider(ctx.config);
|
|
68
72
|
repoBackend = createRepoBackend(ctx.config);
|
|
69
73
|
notifier = createNotifier(ctx.config);
|
|
70
|
-
|
|
74
|
+
if (workflowUsesAgentRuntime(ctx.config)) {
|
|
75
|
+
agentRuntime = createAgentRuntime(ctx);
|
|
76
|
+
}
|
|
71
77
|
}
|
|
72
78
|
catch (err) {
|
|
73
79
|
const msg = err instanceof Error ? err.message : String(err);
|
|
@@ -77,9 +83,30 @@ function createRunner(project) {
|
|
|
77
83
|
}
|
|
78
84
|
// Get shared Manager modules
|
|
79
85
|
const { supervisor, resourceLimiter, completionJudge } = getSharedModules();
|
|
80
|
-
// Create per-project
|
|
81
|
-
const
|
|
82
|
-
|
|
86
|
+
// Create per-project WorkerManager (wraps supervisor, judge, limiter)
|
|
87
|
+
const workerManager = new WorkerManagerImpl({
|
|
88
|
+
supervisor,
|
|
89
|
+
completionJudge,
|
|
90
|
+
resourceLimiter,
|
|
91
|
+
agentRuntime: agentRuntime ?? null,
|
|
92
|
+
stateFile: ctx.paths.stateFile,
|
|
93
|
+
maxWorkers: ctx.maxWorkers,
|
|
94
|
+
});
|
|
95
|
+
// Register SPSEventHandler for PM operations on worker lifecycle events
|
|
96
|
+
const runtimeStore = new RuntimeStore({
|
|
97
|
+
paths: { stateFile: ctx.paths.stateFile },
|
|
98
|
+
maxWorkers: ctx.maxWorkers,
|
|
99
|
+
});
|
|
100
|
+
const raw = ctx.config.raw;
|
|
101
|
+
const eventHandler = new SPSEventHandler({
|
|
102
|
+
taskBackend,
|
|
103
|
+
notifier,
|
|
104
|
+
runtimeStore,
|
|
105
|
+
project,
|
|
106
|
+
qaStateId: raw.PLANE_STATE_QA || raw.TRELLO_QA_LIST_ID || 'QA',
|
|
107
|
+
doneStateId: raw.PLANE_STATE_DONE || raw.TRELLO_DONE_LIST_ID || '',
|
|
108
|
+
});
|
|
109
|
+
workerManager.onEvent((event) => eventHandler.handle(event));
|
|
83
110
|
return {
|
|
84
111
|
project,
|
|
85
112
|
ctx,
|
|
@@ -87,9 +114,10 @@ function createRunner(project) {
|
|
|
87
114
|
taskBackend,
|
|
88
115
|
notifier,
|
|
89
116
|
agentRuntime,
|
|
117
|
+
workerManager,
|
|
90
118
|
scheduler: new SchedulerEngine(ctx, taskBackend, notifier),
|
|
91
|
-
closeout: new CloseoutEngine(ctx, taskBackend, repoBackend,
|
|
92
|
-
execution: new ExecutionEngine(ctx, taskBackend, repoBackend,
|
|
119
|
+
closeout: new CloseoutEngine(ctx, taskBackend, repoBackend, workerManager, notifier),
|
|
120
|
+
execution: new ExecutionEngine(ctx, taskBackend, repoBackend, workerManager, notifier, agentRuntime),
|
|
93
121
|
monitor: new MonitorEngine(ctx, taskBackend, workerProvider, repoBackend, notifier, supervisor),
|
|
94
122
|
done: false,
|
|
95
123
|
fatalError: false,
|
|
@@ -150,32 +178,25 @@ export async function executeTick(projects, flags) {
|
|
|
150
178
|
if (runners.length > 1) {
|
|
151
179
|
globalLog.info(`Managing ${runners.length} projects: ${runners.map((r) => r.project).join(', ')}`);
|
|
152
180
|
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
if (result.found > 0) {
|
|
172
|
-
globalLog.info(`Recovery: ${result.found} workers found, ${result.alive} alive, ` +
|
|
173
|
-
`${result.completed} completed, ${result.failed} failed`);
|
|
181
|
+
const { supervisor } = getSharedModules();
|
|
182
|
+
// ─── Recovery: restore active workers via WorkerManager ────────
|
|
183
|
+
for (const runner of runners) {
|
|
184
|
+
try {
|
|
185
|
+
const wmResult = await runner.workerManager.recover([{
|
|
186
|
+
project: runner.project,
|
|
187
|
+
stateFile: runner.ctx.paths.stateFile,
|
|
188
|
+
baseBranch: runner.ctx.config.GITLAB_MERGE_BRANCH,
|
|
189
|
+
}]);
|
|
190
|
+
if (wmResult.scanned > 0) {
|
|
191
|
+
globalLog.info(`Recovery (${runner.project}): scanned=${wmResult.scanned} alive=${wmResult.alive} ` +
|
|
192
|
+
`completed=${wmResult.completed} failed=${wmResult.failed} ` +
|
|
193
|
+
`released=${wmResult.released} queueRebuilt=${wmResult.queueRebuilt}`);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
catch (err) {
|
|
197
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
198
|
+
runner.log.warn(`Recovery failed (non-fatal): ${msg}`);
|
|
174
199
|
}
|
|
175
|
-
}
|
|
176
|
-
catch (err) {
|
|
177
|
-
const msg = err instanceof Error ? err.message : String(err);
|
|
178
|
-
globalLog.warn(`Recovery failed (non-fatal): ${msg}`);
|
|
179
200
|
}
|
|
180
201
|
// Cleanup all locks on exit
|
|
181
202
|
const cleanupAll = () => {
|