@cotal-ai/manager 0.9.1 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands.d.ts +0 -25
- package/dist/commands.d.ts.map +1 -1
- package/dist/commands.js +24 -282
- package/dist/commands.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/manager.d.ts +27 -1
- package/dist/manager.d.ts.map +1 -1
- package/dist/manager.js +50 -11
- package/dist/manager.js.map +1 -1
- package/package.json +5 -5
- package/dist/attach-client.d.ts +0 -20
- package/dist/attach-client.d.ts.map +0 -1
- package/dist/attach-client.js +0 -218
- package/dist/attach-client.js.map +0 -1
package/dist/commands.d.ts
CHANGED
|
@@ -1,27 +1,2 @@
|
|
|
1
|
-
import { type Profile } from "@cotal-ai/core";
|
|
2
|
-
type Values = Record<string, string | undefined>;
|
|
3
|
-
/** Resolve which running mesh a control command (`ps`/`start`/`stop`/`attach`) targets, with the
|
|
4
|
-
* same precedence + preflight as the rest of the CLI ({@link resolveMeshTarget} / `connectOrExit`):
|
|
5
|
-
* 1. explicit `--creds` → a raw off-registry connection (plain reachability, no prune). Space
|
|
6
|
-
* defaults to this folder's auth-space via {@link spaceFor} (a deliberate manager-command
|
|
7
|
-
* choice — more correct than `DEFAULT_SPACE` for a non-default-space project, and what these
|
|
8
|
-
* commands did before — NOT `connectOrExit`'s `DEFAULT_SPACE`).
|
|
9
|
-
* 2. `--server` + an UNregistered `--space` → a raw OPEN off-registry connection, no creds (the
|
|
10
|
-
* same escape hatch `connectOrExit` has; plain reachability, no prune).
|
|
11
|
-
* 3. otherwise the registry/`current` resolver, with the same stale-prune + friendly preflight —
|
|
12
|
-
* so `cotal ps --space <name>` reaches that mesh's RECORDED broker instead of silently assuming
|
|
13
|
-
* `DEFAULT_SERVER` (:4222); `--server` overrides. The tier-scoped caller cred (`profile`) is minted
|
|
14
|
-
* from the RESOLVED mesh's own recorded root (so `--space other` loads other's auth, guarded by
|
|
15
|
-
* `targetFromEntry`'s `auth.space === m.space` check), or none for an open mesh.
|
|
16
|
-
* Shares `@cotal-ai/workspace`'s `preflightTarget`/`pruneStaleMeshes` with the CLI, so a dead/mismatched entry gets
|
|
17
|
-
* the same one-sentence message + stale-prune the rest of the CLI gives — not a raw NATS trace. The
|
|
18
|
-
* pre-resolution sweep runs only for bare / `--server`-only resolution; an explicit `--space` is
|
|
19
|
-
* resolved + preflighted directly (so a `--server` override can recover a dead-recorded mesh).
|
|
20
|
-
* `ask()` can therefore trust the target is reachable + auth-valid. */
|
|
21
|
-
export declare function resolveManagerTarget(v: Values, profile: Profile): Promise<{
|
|
22
|
-
space: string;
|
|
23
|
-
server: string;
|
|
24
|
-
creds?: string;
|
|
25
|
-
}>;
|
|
26
1
|
export {};
|
|
27
2
|
//# sourceMappingURL=commands.d.ts.map
|
package/dist/commands.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":""}
|
package/dist/commands.js
CHANGED
|
@@ -1,266 +1,28 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { join } from "node:path";
|
|
4
|
-
import { CotalEndpoint, isReachable, DEFAULT_SERVER, DEFAULT_SPACE, mintCreds, newIdentity, registry, probeConnect, CONTROL_PRIVILEGED, CONTROL_ADMIN, } from "@cotal-ai/core";
|
|
5
|
-
import { authDir, findCotalRoot, loadSpaceAuth, findMesh, isWorkspaceTargetError, resolveMeshTarget, preflightTarget, pruneStaleMeshes, removeMesh, renderWorkspaceError, } from "@cotal-ai/workspace";
|
|
1
|
+
import { isReachable, DEFAULT_SERVER, DEFAULT_SPACE, registry, } from "@cotal-ai/core";
|
|
2
|
+
import { authDir, findCotalRoot, loadSpaceAuth } from "@cotal-ai/workspace";
|
|
6
3
|
import { Manager } from "./manager.js";
|
|
7
4
|
import { loadRoster } from "./roster.js";
|
|
8
5
|
import { loadLaunchSpec, materializePersona, launchAgentToStartOpts } from "./launch.js";
|
|
9
6
|
import {} from "./runtime/index.js";
|
|
10
|
-
import { attachClient } from "./attach-client.js";
|
|
11
7
|
import { c } from "./ui.js";
|
|
12
8
|
/** The space to operate on: explicit `--space`, else this folder's `.cotal/auth` space, else the
|
|
13
9
|
* default — so a manually-run manager matches the folder's mesh instead of assuming the default. */
|
|
14
10
|
function spaceFor(v) {
|
|
15
11
|
return v.space ?? loadSpaceAuth(authDir(findCotalRoot()))?.space ?? DEFAULT_SPACE;
|
|
16
12
|
}
|
|
17
|
-
/** Raw off-registry reachability — one plain sentence, never a registry/stale-entry message and
|
|
18
|
-
* never a prune. Used by the `--creds` and `--server`+unregistered-`--space` escape hatches, which
|
|
19
|
-
* connect to a broker the operator named, not the registry. The manager's copy of the CLI's
|
|
20
|
-
* `reachableOrExit` (an implementation can't import another); the wording lives in `@cotal-ai/workspace`. */
|
|
21
|
-
async function reachableOrExit(server, auth = {}) {
|
|
22
|
-
const probe = await probeConnect(server, auth);
|
|
23
|
-
if (probe.ok)
|
|
24
|
-
return;
|
|
25
|
-
console.error(c.red(renderWorkspaceError({ kind: "reachable", reason: probe.reason, server })));
|
|
26
|
-
process.exit(1);
|
|
27
|
-
}
|
|
28
|
-
/** Confirm a registry-resolved mesh is up + accepts these creds — replacing the raw NATS auth trace
|
|
29
|
-
* with one sentence and pruning a stale entry. The manager's copy of the CLI's `preflightOrExit`:
|
|
30
|
-
* the probe/classify/render/prune-decision live in `@cotal-ai/workspace` (`preflightTarget`); this owns
|
|
31
|
-
* the I/O — it acts on the prune decision, colours, and exits. */
|
|
32
|
-
async function preflightOrExit(target, probeCreds) {
|
|
33
|
-
const r = await preflightTarget(target, probeCreds);
|
|
34
|
-
if (r.ok)
|
|
35
|
-
return;
|
|
36
|
-
if (r.prune)
|
|
37
|
-
removeMesh(target.space);
|
|
38
|
-
console.error(c.red(renderWorkspaceError({ kind: "preflight", failure: r.kind, target, pruned: r.prune })));
|
|
39
|
-
process.exit(1);
|
|
40
|
-
}
|
|
41
|
-
/** Resolve which running mesh a control command (`ps`/`start`/`stop`/`attach`) targets, with the
|
|
42
|
-
* same precedence + preflight as the rest of the CLI ({@link resolveMeshTarget} / `connectOrExit`):
|
|
43
|
-
* 1. explicit `--creds` → a raw off-registry connection (plain reachability, no prune). Space
|
|
44
|
-
* defaults to this folder's auth-space via {@link spaceFor} (a deliberate manager-command
|
|
45
|
-
* choice — more correct than `DEFAULT_SPACE` for a non-default-space project, and what these
|
|
46
|
-
* commands did before — NOT `connectOrExit`'s `DEFAULT_SPACE`).
|
|
47
|
-
* 2. `--server` + an UNregistered `--space` → a raw OPEN off-registry connection, no creds (the
|
|
48
|
-
* same escape hatch `connectOrExit` has; plain reachability, no prune).
|
|
49
|
-
* 3. otherwise the registry/`current` resolver, with the same stale-prune + friendly preflight —
|
|
50
|
-
* so `cotal ps --space <name>` reaches that mesh's RECORDED broker instead of silently assuming
|
|
51
|
-
* `DEFAULT_SERVER` (:4222); `--server` overrides. The tier-scoped caller cred (`profile`) is minted
|
|
52
|
-
* from the RESOLVED mesh's own recorded root (so `--space other` loads other's auth, guarded by
|
|
53
|
-
* `targetFromEntry`'s `auth.space === m.space` check), or none for an open mesh.
|
|
54
|
-
* Shares `@cotal-ai/workspace`'s `preflightTarget`/`pruneStaleMeshes` with the CLI, so a dead/mismatched entry gets
|
|
55
|
-
* the same one-sentence message + stale-prune the rest of the CLI gives — not a raw NATS trace. The
|
|
56
|
-
* pre-resolution sweep runs only for bare / `--server`-only resolution; an explicit `--space` is
|
|
57
|
-
* resolved + preflighted directly (so a `--server` override can recover a dead-recorded mesh).
|
|
58
|
-
* `ask()` can therefore trust the target is reachable + auth-valid. */
|
|
59
|
-
export async function resolveManagerTarget(v, profile) {
|
|
60
|
-
if (v.creds) {
|
|
61
|
-
const server = v.server ?? DEFAULT_SERVER;
|
|
62
|
-
const creds = readFileSync(v.creds, "utf8");
|
|
63
|
-
await reachableOrExit(server, { creds });
|
|
64
|
-
return { space: spaceFor(v), server, creds };
|
|
65
|
-
}
|
|
66
|
-
// A raw OPEN off-registry mesh: explicit `--server` + a `--space` that isn't registered. Naming
|
|
67
|
-
// both is as deliberate as `--creds`, but an open broker has no creds to pass — connect bare,
|
|
68
|
-
// off-registry (no registry lookup, no prune). Mirrors `connectOrExit`'s same-shaped escape hatch;
|
|
69
|
-
// a registered `--space` still goes through the resolver below (which honors `--server` as override).
|
|
70
|
-
if (v.server && v.space && !findMesh(v.space)) {
|
|
71
|
-
await reachableOrExit(v.server, {});
|
|
72
|
-
return { space: v.space, server: v.server, creds: undefined };
|
|
73
|
-
}
|
|
74
|
-
// Sweep dead entries before resolving ONLY when we must CHOOSE one (bare / `--server`-only). An
|
|
75
|
-
// explicit `--space` names its target, so pre-pruning would erase a dead-recorded mesh that the
|
|
76
|
-
// operator is recovering with a live `--server` override — resolve it and let preflight verify +
|
|
77
|
-
// prune-on-dead (with the friendly message), honoring the override. Without `--space`, a dead
|
|
78
|
-
// entry must not be offered, so the sweep stays.
|
|
79
|
-
if (!v.space)
|
|
80
|
-
await pruneStaleMeshes();
|
|
81
|
-
let target;
|
|
82
|
-
try {
|
|
83
|
-
target = resolveMeshTarget(process.cwd(), { server: v.server, space: v.space });
|
|
84
|
-
}
|
|
85
|
-
catch (e) {
|
|
86
|
-
if (isWorkspaceTargetError(e)) {
|
|
87
|
-
console.error(c.red(renderWorkspaceError({ kind: "target", error: e })));
|
|
88
|
-
process.exit(1);
|
|
89
|
-
}
|
|
90
|
-
throw e;
|
|
91
|
-
}
|
|
92
|
-
const creds = target.auth ? await mintCreds(target.auth, newIdentity(), profile) : undefined;
|
|
93
|
-
await preflightOrExit(target, creds);
|
|
94
|
-
return { space: target.space, server: target.server, creds };
|
|
95
|
-
}
|
|
96
|
-
function parse(argv) {
|
|
97
|
-
const { values, positionals } = parseArgs({
|
|
98
|
-
args: argv,
|
|
99
|
-
allowPositionals: true,
|
|
100
|
-
options: {
|
|
101
|
-
space: { type: "string" },
|
|
102
|
-
server: { type: "string" },
|
|
103
|
-
name: { type: "string" },
|
|
104
|
-
role: { type: "string" },
|
|
105
|
-
agent: { type: "string" },
|
|
106
|
-
config: { type: "string" },
|
|
107
|
-
model: { type: "string" }, // start: model override, wins over the agent file's `model:`
|
|
108
|
-
resume: { type: "string" }, // start: fork an existing session id into the mesh (host-local; claude only)
|
|
109
|
-
roster: { type: "string" },
|
|
110
|
-
creds: { type: "string" },
|
|
111
|
-
runtime: { type: "string" }, // supervise: force pty | tmux | cmux (default pty)
|
|
112
|
-
"console-port": { type: "string" },
|
|
113
|
-
drive: { type: "boolean" },
|
|
114
|
-
transcript: { type: "boolean" },
|
|
115
|
-
"no-transcript": { type: "boolean" },
|
|
116
|
-
spawn: { type: "string" }, // comma-separated agent names to pre-spawn at startup
|
|
117
|
-
launch: { type: "string" }, // supervise: a resolved mesh-manifest launch spec (cotal up -f / spawn -f)
|
|
118
|
-
cwd: { type: "string" }, // working directory to root the spawned agent at
|
|
119
|
-
},
|
|
120
|
-
});
|
|
121
|
-
// These commands are flags-only — reject stray positionals instead of silently ignoring them
|
|
122
|
-
// (e.g. `cotal supervise up`, fat-fingering `cotal up`).
|
|
123
|
-
if (positionals.length) {
|
|
124
|
-
const x = positionals[0];
|
|
125
|
-
const hint = x === "up" ? " — did you mean `cotal up`?" : x === "go" ? " — did you mean `cotal go`?" : "";
|
|
126
|
-
console.error(c.red(`✗ unexpected argument: ${x}${hint}`));
|
|
127
|
-
process.exit(1);
|
|
128
|
-
}
|
|
129
|
-
return values;
|
|
130
|
-
}
|
|
131
|
-
/** Connect a short-lived client with the resolved creds, send one control request to the manager,
|
|
132
|
-
* disconnect. The target is already reachability- + auth-preflighted by {@link resolveManagerTarget}
|
|
133
|
-
* (which prints the friendly message + prunes on failure), so this connects straight through. `tier`
|
|
134
|
-
* picks the control subject: privileged for start/ps; admin for the operator's cross-agent ops
|
|
135
|
-
* (stop/attach/purge), which the manager refuses on the privileged subject for a non-owner. `creds`
|
|
136
|
-
* is the tier-scoped caller cred resolved by {@link resolveManagerTarget} (`control-caller-privileged`
|
|
137
|
-
* for start/ps, `control-caller-admin` for stop/attach — each holds ONLY its own tier's pub grant, so
|
|
138
|
-
* `tier` here matches the cred the caller minted), or undefined on an open mesh. */
|
|
139
|
-
async function ask(space, server, op, args, creds, tier = CONTROL_PRIVILEGED) {
|
|
140
|
-
const ep = new CotalEndpoint({
|
|
141
|
-
space,
|
|
142
|
-
servers: server,
|
|
143
|
-
creds,
|
|
144
|
-
channels: [],
|
|
145
|
-
consume: false, // request/reply only — binds no consumers (and under auth has no pre-created DM durable)
|
|
146
|
-
registerPresence: false,
|
|
147
|
-
watchPresence: false,
|
|
148
|
-
card: { name: "cli", kind: "endpoint" },
|
|
149
|
-
});
|
|
150
|
-
ep.on("error", (e) => console.error(c.red("! " + e.message)));
|
|
151
|
-
await ep.start();
|
|
152
|
-
try {
|
|
153
|
-
return await ep.requestControl(tier, { op, args });
|
|
154
|
-
}
|
|
155
|
-
catch (e) {
|
|
156
|
-
return { ok: false, error: `no manager reachable (${e.message})` };
|
|
157
|
-
}
|
|
158
|
-
finally {
|
|
159
|
-
await ep.stop();
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
function failIfNotOk(reply) {
|
|
163
|
-
if (!reply.ok) {
|
|
164
|
-
console.error(c.red(`✗ ${reply.error ?? "error"}`));
|
|
165
|
-
process.exit(1);
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
async function start(argv) {
|
|
169
|
-
const v = parse(argv);
|
|
170
|
-
if (!v.name) {
|
|
171
|
-
console.error(c.red("--name is required"));
|
|
172
|
-
process.exit(1);
|
|
173
|
-
}
|
|
174
|
-
// `--resume ""` asked to resume but named no session — fail loud, don't silently start fresh.
|
|
175
|
-
if (v.resume !== undefined && !v.resume.trim()) {
|
|
176
|
-
console.error(c.red("--resume needs a session id (got an empty value)"));
|
|
177
|
-
process.exit(1);
|
|
178
|
-
}
|
|
179
|
-
const t = await resolveManagerTarget(v, "control-caller-privileged");
|
|
180
|
-
const reply = await ask(t.space, t.server, "start", {
|
|
181
|
-
name: v.name,
|
|
182
|
-
role: v.role,
|
|
183
|
-
agent: v.agent,
|
|
184
|
-
config: v.config,
|
|
185
|
-
model: v.model,
|
|
186
|
-
resume: v.resume, // fork an existing session into the mesh (host-local id; caveated for detached start — see docs)
|
|
187
|
-
// Opt-in: only sent when `--transcript` is given; absent => the daemon's default (mirror off).
|
|
188
|
-
transcript: v.transcript ? true : undefined,
|
|
189
|
-
cwd: v.cwd,
|
|
190
|
-
}, t.creds);
|
|
191
|
-
failIfNotOk(reply);
|
|
192
|
-
const d = reply.data;
|
|
193
|
-
console.log(c.green(`✓ started ${c.bold(d.name)}`) +
|
|
194
|
-
c.dim(` (${d.role ?? "no role"} · ${d.agent} · ${d.mode})`));
|
|
195
|
-
}
|
|
196
|
-
async function stop(argv) {
|
|
197
|
-
const v = parse(argv);
|
|
198
|
-
if (!v.name) {
|
|
199
|
-
console.error(c.red("--name is required"));
|
|
200
|
-
process.exit(1);
|
|
201
|
-
}
|
|
202
|
-
// Operator stop is a cross-agent (admin) op — the CLI operator isn't the agent's spawner, so the
|
|
203
|
-
// privileged subject would reject it; the admin tier reaches any agent. The scoped `control-caller-admin`
|
|
204
|
-
// cred holds ONLY `ctl.<admin>.<id>` (that IS the cross-agent authority — the manager doesn't re-check
|
|
205
|
-
// the caller), so it reaches this op and nothing else.
|
|
206
|
-
const t = await resolveManagerTarget(v, "control-caller-admin");
|
|
207
|
-
const reply = await ask(t.space, t.server, "stop", {
|
|
208
|
-
name: v.name,
|
|
209
|
-
}, t.creds, CONTROL_ADMIN);
|
|
210
|
-
failIfNotOk(reply);
|
|
211
|
-
console.log(c.dim(`✓ stopped ${v.name}`));
|
|
212
|
-
}
|
|
213
|
-
async function ps(argv) {
|
|
214
|
-
const v = parse(argv);
|
|
215
|
-
const t = await resolveManagerTarget(v, "control-caller-privileged");
|
|
216
|
-
const reply = await ask(t.space, t.server, "ps", undefined, t.creds);
|
|
217
|
-
failIfNotOk(reply);
|
|
218
|
-
const rows = reply.data ?? [];
|
|
219
|
-
if (!rows.length) {
|
|
220
|
-
console.log(c.dim("(no managed agents)"));
|
|
221
|
-
return;
|
|
222
|
-
}
|
|
223
|
-
for (const r of rows) {
|
|
224
|
-
const status = r.mesh === "absent"
|
|
225
|
-
? c.yellow("starting…")
|
|
226
|
-
: r.mesh === "offline"
|
|
227
|
-
? c.dim("offline")
|
|
228
|
-
: r.mesh === "working"
|
|
229
|
-
? c.green("working")
|
|
230
|
-
: r.mesh === "waiting"
|
|
231
|
-
? c.yellow("waiting")
|
|
232
|
-
: c.cyan(r.mesh);
|
|
233
|
-
console.log(`${c.bold(r.name)}${r.role ? c.dim("/" + r.role) : ""} ${c.dim(r.agent + " · " + r.mode)} ${status}`);
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
async function attach(argv) {
|
|
237
|
-
const v = parse(argv);
|
|
238
|
-
if (!v.name) {
|
|
239
|
-
console.error(c.red("--name is required"));
|
|
240
|
-
process.exit(1);
|
|
241
|
-
}
|
|
242
|
-
// Operator attach is a cross-agent (admin) op — same reasoning as stop (the operator isn't the
|
|
243
|
-
// spawner; admin reaches any agent). Scoped `control-caller-admin`: ctl.<admin> only.
|
|
244
|
-
const t = await resolveManagerTarget(v, "control-caller-admin");
|
|
245
|
-
const reply = await ask(t.space, t.server, "attach", {
|
|
246
|
-
name: v.name,
|
|
247
|
-
}, t.creds, CONTROL_ADMIN);
|
|
248
|
-
failIfNotOk(reply);
|
|
249
|
-
const { ws } = reply.data;
|
|
250
|
-
console.error(c.dim(`attached to ${v.name} — Ctrl-] to detach`));
|
|
251
|
-
await attachClient(ws);
|
|
252
|
-
console.error(c.dim(`\ndetached from ${v.name}`));
|
|
253
|
-
}
|
|
254
13
|
/** Run a manager daemon in this process (the long-lived supervisor), then block.
|
|
255
14
|
* `pty` ships with the manager; `tmux` and `cmux` need their integration imported by
|
|
256
|
-
* the composition root (the `cotal` binary does). Stays alive until SIGINT/SIGTERM.
|
|
15
|
+
* the composition root (the `cotal` binary does). Stays alive until SIGINT/SIGTERM.
|
|
16
|
+
*
|
|
17
|
+
* The operator CLIENTS of this daemon — detached launch (`cotal spawn --detach`), `stop`, `ps`,
|
|
18
|
+
* `attach` — live in `@cotal-ai/cli` since stage 2a of the CLI rework: they are thin control-plane
|
|
19
|
+
* request/reply commands, not daemon code. This package registers only the daemon runner. */
|
|
257
20
|
// `--runtime` forces the manager runtime; honored only on the `supervise` path (default
|
|
258
21
|
// pty). `cmux` gives each teammate its own cmux tab — `cotal supervise --runtime cmux` is
|
|
259
|
-
// the cmux-tab manager.
|
|
260
|
-
// contiguous, which is what `cmuxManagerRunning` pgreps for.
|
|
22
|
+
// the cmux-tab manager.
|
|
261
23
|
const RUNTIME_OVERRIDES = ["pty", "tmux", "cmux"];
|
|
262
|
-
async function runManager(
|
|
263
|
-
const v =
|
|
24
|
+
async function runManager(args, defaultRuntime) {
|
|
25
|
+
const v = args.values;
|
|
264
26
|
let runtime = defaultRuntime;
|
|
265
27
|
if (defaultRuntime === "auto" && v.runtime) {
|
|
266
28
|
if (!RUNTIME_OVERRIDES.includes(v.runtime)) {
|
|
@@ -295,13 +57,13 @@ async function runManager(argv, defaultRuntime) {
|
|
|
295
57
|
console.log(c.green("✓ manager up") +
|
|
296
58
|
c.dim(` (space ${space} · ${mgr.runtimeKind})`) +
|
|
297
59
|
`\n console: ${mgr.consoleUrl}` +
|
|
298
|
-
c.dim("\n spawn: cotal
|
|
60
|
+
c.dim("\n spawn: cotal spawn --detach <persona> · stop: cotal stop --name <n> (Ctrl-C to shut down)"));
|
|
299
61
|
// Register shutdown handlers before any spawning, so a Ctrl-C during the (possibly slow,
|
|
300
62
|
// staggered) boot tears the manager and its spawned teammates down rather than orphaning them.
|
|
301
63
|
const shutdown = () => void mgr.stop().then(() => process.exit(0));
|
|
302
64
|
process.on("SIGINT", shutdown);
|
|
303
65
|
process.on("SIGTERM", shutdown);
|
|
304
|
-
// Declarative boot: bring up each rostered agent through the same spawn path as
|
|
66
|
+
// Declarative boot: bring up each rostered agent through the same spawn path as a detached spawn.
|
|
305
67
|
// A failed entry is logged but non-fatal — healthy agents stay up and the operator can
|
|
306
68
|
// fix the roster without the supervisor crash-looping.
|
|
307
69
|
for (const entry of roster) {
|
|
@@ -366,44 +128,24 @@ async function runManager(argv, defaultRuntime) {
|
|
|
366
128
|
}
|
|
367
129
|
await new Promise(() => { });
|
|
368
130
|
}
|
|
369
|
-
/** The manager's
|
|
370
|
-
*
|
|
371
|
-
* binary resolves them from the registry. */
|
|
131
|
+
/** The manager's one command: the `supervise` daemon runner. Self-registered on import; the
|
|
132
|
+
* `cotal` binary resolves it from the registry. */
|
|
372
133
|
const managerCommands = [
|
|
373
134
|
{
|
|
374
135
|
kind: "command",
|
|
375
136
|
name: "supervise",
|
|
376
137
|
group: "Manager",
|
|
377
138
|
summary: "run a manager — [--runtime <pty|tmux|cmux>] (default pty; tmux/cmux are explicit-only, each teammate in its own window/tab) [--space <s>] [--server <url>] [--console-port <n>] [--roster <file>] [--launch <spec>]",
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
kind: "command",
|
|
389
|
-
name: "stop",
|
|
390
|
-
group: "Control plane",
|
|
391
|
-
summary: "ask the manager to stop an agent — --name <n>",
|
|
392
|
-
run: stop,
|
|
393
|
-
},
|
|
394
|
-
{
|
|
395
|
-
kind: "command",
|
|
396
|
-
name: "ps",
|
|
397
|
-
group: "Control plane",
|
|
398
|
-
summary: "list managed agents + their mesh status",
|
|
399
|
-
run: ps,
|
|
400
|
-
},
|
|
401
|
-
{
|
|
402
|
-
kind: "command",
|
|
403
|
-
name: "attach",
|
|
404
|
-
group: "Control plane",
|
|
405
|
-
summary: "stream + drive an agent's terminal (pty runtime) — --name <n>",
|
|
406
|
-
run: attach,
|
|
139
|
+
flags: [
|
|
140
|
+
{ name: "space", type: "string", value: "<s>", description: "space to supervise (default: this folder's auth space)" },
|
|
141
|
+
{ name: "server", type: "string", value: "<url>", description: "broker URL (default: the local mesh)" },
|
|
142
|
+
{ name: "runtime", type: "string", value: "<pty|tmux|cmux>", description: "agent runtime (default pty; tmux/cmux are explicit-only)" },
|
|
143
|
+
{ name: "console-port", type: "string", value: "<n>", description: "protocol-console port" },
|
|
144
|
+
{ name: "roster", type: "string", value: "<file>", description: "declarative roster to boot at startup" },
|
|
145
|
+
{ name: "launch", type: "string", value: "<spec>", description: "resolved mesh-manifest launch spec (cotal up -f / spawn -f)" },
|
|
146
|
+
{ name: "spawn", type: "string", value: "<names>", description: "comma-separated personas to pre-spawn at startup" },
|
|
147
|
+
],
|
|
148
|
+
run: (args) => runManager(args, "auto"),
|
|
407
149
|
},
|
|
408
150
|
];
|
|
409
151
|
registry.register(...managerCommands);
|
package/dist/commands.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import "./commands.js";
|
|
2
|
-
export { Manager, type ManagerOptions } from "./manager.js";
|
|
2
|
+
export { Manager, READINESS_TIMEOUT_MS, type ManagerOptions } from "./manager.js";
|
|
3
3
|
export { createRuntime } from "./runtime/index.js";
|
|
4
4
|
export type { Runtime, AgentHandle, AttachSession, RuntimeKind, RuntimeMode } from "./runtime/index.js";
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,OAAO,EAAE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import "./commands.js"; // self-registers the control-plane commands on import
|
|
2
|
-
export { Manager } from "./manager.js";
|
|
2
|
+
export { Manager, READINESS_TIMEOUT_MS } from "./manager.js";
|
|
3
3
|
export { createRuntime } from "./runtime/index.js";
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC,CAAC,sDAAsD;AAE9E,OAAO,EAAE,OAAO,EAAuB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC,CAAC,sDAAsD;AAE9E,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAuB,MAAM,cAAc,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
|
package/dist/manager.d.ts
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
import type { ControlReply, MeshLaunchAgent } from "@cotal-ai/core";
|
|
2
2
|
import { type RuntimeMode } from "./runtime/index.js";
|
|
3
|
+
/** Backstop for the detached-launch readiness race (#159 B1). `startAgent` waits on two REAL outcomes —
|
|
4
|
+
* the assigned id joining the mesh (presence) = started, the child process exiting = failed — NOT a
|
|
5
|
+
* liveness-inferring timer. This is only the last-resort bound for "neither happened in time": the launch
|
|
6
|
+
* is then reported UNCERTAIN (a non-success reply that does NOT deprovision — it may still be booting, or
|
|
7
|
+
* stuck before connector startup). Generous, since a real cold agent join can take several seconds. Held
|
|
8
|
+
* as an instance field ({@link Manager.readinessTimeoutMs}) so a test can shorten it. Exported so the
|
|
9
|
+
* launch-parity smoke can assert every launch client's request timeout OUTLIVES this window — the tier
|
|
10
|
+
* rule forbids the clients importing it directly. */
|
|
11
|
+
export declare const READINESS_TIMEOUT_MS = 30000;
|
|
3
12
|
export interface ManagerOptions {
|
|
4
13
|
space: string;
|
|
5
14
|
servers?: string;
|
|
@@ -17,12 +26,16 @@ export interface StartAgentOpts {
|
|
|
17
26
|
* `.cotal/agents/<name>.md`. NOT the mesh identity: the spawned peer presents under the file's
|
|
18
27
|
* own `name:` (auto-numbered on collision). The file must exist (no silent default-ACL fallback). */
|
|
19
28
|
name: string;
|
|
20
|
-
/** Connector / agent type — resolved from the registry. Defaults to `"cotal"`. */
|
|
29
|
+
/** Connector / agent type — resolved from the registry. Defaults to `COTAL_DEFAULT_AGENT`, else `"cotal"`. */
|
|
21
30
|
agent?: string;
|
|
22
31
|
role?: string;
|
|
23
32
|
/** Explicit agent-file path that overrides the `name` ref for *which file to load* (identity still
|
|
24
33
|
* comes from that file's `name:`). The file must exist. */
|
|
25
34
|
config?: string;
|
|
35
|
+
/** Presence-identity OVERRIDE (the `--name` flag with a positional/`--config` naming the file):
|
|
36
|
+
* wins over the persona file's `name:`, exactly as in foreground `cotal spawn`. Imperative-only —
|
|
37
|
+
* a manifest launch (`resolved`) is the identity authority and rejects it. */
|
|
38
|
+
identity?: string;
|
|
26
39
|
/** Model override (the `--model` flag). Takes precedence over the agent file's `model:`. */
|
|
27
40
|
model?: string;
|
|
28
41
|
/** Opaque host-local session id to FORK into the mesh (the `--resume` flag), forwarded verbatim to
|
|
@@ -32,6 +45,19 @@ export interface StartAgentOpts {
|
|
|
32
45
|
/** Mirror the session's transcript to `tr-<name>`. Defaults to off; `true` (the
|
|
33
46
|
* `--transcript` flag) opts in. */
|
|
34
47
|
transcript?: boolean;
|
|
48
|
+
/** Initial prompt auto-submitted at session start (the `--prompt` flag), forwarded verbatim to
|
|
49
|
+
* the connector. Imperative-only: never set from `resolved` (a manifest carries no prompt). */
|
|
50
|
+
prompt?: string;
|
|
51
|
+
/** Access-policy overrides (the `--subscribe` / `--allow-subscribe` / `--allow-publish` flags):
|
|
52
|
+
* win over the persona file exactly as in foreground `cotal spawn`, and are minted into the
|
|
53
|
+
* creds AND forwarded to the connector from ONE source. Imperative-only — a manifest launch
|
|
54
|
+
* (`resolved`) is the access authority and rejects these. */
|
|
55
|
+
subscribe?: string[];
|
|
56
|
+
allowSubscribe?: string[];
|
|
57
|
+
allowPublish?: string[];
|
|
58
|
+
/** `--share-tools` selection narrowing which of the operator's configured MCP servers this
|
|
59
|
+
* agent gets (absent → all declared for the connector — the pre-merge manager behavior). */
|
|
60
|
+
shareTools?: string;
|
|
35
61
|
/** A fully-resolved launch profile (from a mesh manifest via `supervise --launch`). When present,
|
|
36
62
|
* `startAgent` takes identity/role/ACLs/capabilities/model from here — NOT from a persona file —
|
|
37
63
|
* and `config` points at the materialized transient persona the connector reads. The persona file
|
package/dist/manager.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"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"}
|
package/dist/manager.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { existsSync, rmSync } from "node:fs";
|
|
2
2
|
import { join, dirname, resolve } from "node:path";
|
|
3
|
-
import { CotalEndpoint, DEFAULT_SERVER, MANAGER_LEASE_TTL_MS, agentFilePath, clearSpaceHistory, connectorServers, deprovisionAgent, firstFreeName, loadAgentFile, loadCotalConfig, mintCreds, mkSecretDir, newIdentity, provisionAgent, registry, saveAgentFile, writeSecretFile, subjectMatches, CONTROL_PRIVILEGED, CONTROL_SELF_SERVICE, CONTROL_ADMIN, } from "@cotal-ai/core";
|
|
4
|
-
import { authDir, findCotalRoot, loadSpaceAuth, resolveOnPath } from "@cotal-ai/workspace";
|
|
3
|
+
import { CotalEndpoint, DEFAULT_SERVER, MANAGER_LEASE_TTL_MS, agentFilePath, clearSpaceHistory, connectorServers, deprovisionAgent, firstFreeName, loadAgentFile, loadCotalConfig, mintCreds, mkSecretDir, newIdentity, parseShareSelection, provisionAgent, registry, saveAgentFile, writeSecretFile, subjectMatches, CONTROL_PRIVILEGED, CONTROL_SELF_SERVICE, CONTROL_ADMIN, } from "@cotal-ai/core";
|
|
4
|
+
import { authDir, defaultAgentType, findCotalRoot, loadSpaceAuth, resolveOnPath } from "@cotal-ai/workspace";
|
|
5
5
|
import { createRuntime, } from "./runtime/index.js";
|
|
6
6
|
import { AttachEndpoint } from "./attach-endpoint.js";
|
|
7
7
|
import { launchSpecForRun, materializePersona, launchAgentToStartOpts } from "./launch.js";
|
|
@@ -18,8 +18,10 @@ const MIN_LIFETIME = 10_000;
|
|
|
18
18
|
* liveness-inferring timer. This is only the last-resort bound for "neither happened in time": the launch
|
|
19
19
|
* is then reported UNCERTAIN (a non-success reply that does NOT deprovision — it may still be booting, or
|
|
20
20
|
* stuck before connector startup). Generous, since a real cold agent join can take several seconds. Held
|
|
21
|
-
* as an instance field ({@link Manager.readinessTimeoutMs}) so a test can shorten it.
|
|
22
|
-
|
|
21
|
+
* as an instance field ({@link Manager.readinessTimeoutMs}) so a test can shorten it. Exported so the
|
|
22
|
+
* launch-parity smoke can assert every launch client's request timeout OUTLIVES this window — the tier
|
|
23
|
+
* rule forbids the clients importing it directly. */
|
|
24
|
+
export const READINESS_TIMEOUT_MS = 30_000;
|
|
23
25
|
/** Upper bound on a detached agent-exit deprovision (#159 B2). A wedged broker must not leave the
|
|
24
26
|
* fire-and-forget teardown pending forever with no log — past this it rejects into freeSlot's fail-loud
|
|
25
27
|
* `.catch`. Generous over the helper's 5s connect timeout to allow the two consumer-deletes + ACL purge
|
|
@@ -431,15 +433,39 @@ export class Manager {
|
|
|
431
433
|
// but a raw control message could otherwise slip an empty value through and silently start fresh.
|
|
432
434
|
if (args.resume !== undefined && !String(args.resume).trim())
|
|
433
435
|
return Promise.resolve({ ok: false, error: "resume: session id must not be empty" });
|
|
436
|
+
// ACL overrides arrive as string arrays or not at all — a malformed value is a bad request,
|
|
437
|
+
// not something to coerce (no fallbacks).
|
|
438
|
+
const strList = (v, flag) => {
|
|
439
|
+
if (v === undefined)
|
|
440
|
+
return undefined;
|
|
441
|
+
if (!Array.isArray(v) || v.some((s) => typeof s !== "string"))
|
|
442
|
+
throw new Error(`${flag}: expected an array of strings`);
|
|
443
|
+
return v;
|
|
444
|
+
};
|
|
445
|
+
let subscribe, allowSubscribe, allowPublish;
|
|
446
|
+
try {
|
|
447
|
+
subscribe = strList(args.subscribe, "subscribe");
|
|
448
|
+
allowSubscribe = strList(args.allowSubscribe, "allowSubscribe");
|
|
449
|
+
allowPublish = strList(args.allowPublish, "allowPublish");
|
|
450
|
+
}
|
|
451
|
+
catch (e) {
|
|
452
|
+
return Promise.resolve({ ok: false, error: e.message });
|
|
453
|
+
}
|
|
434
454
|
return this.startAgent({
|
|
435
455
|
name: String(args.name ?? "").trim(),
|
|
436
456
|
agent: args.agent ? String(args.agent) : undefined,
|
|
437
457
|
role: args.role ? String(args.role) : undefined,
|
|
438
458
|
config: args.config ? String(args.config) : undefined,
|
|
459
|
+
identity: args.identity ? String(args.identity) : undefined,
|
|
439
460
|
model: args.model ? String(args.model) : undefined,
|
|
440
461
|
resume: args.resume ? String(args.resume) : undefined,
|
|
441
462
|
transcript: typeof args.transcript === "boolean" ? args.transcript : undefined,
|
|
442
463
|
cwd: args.cwd ? String(args.cwd) : undefined,
|
|
464
|
+
prompt: args.prompt ? String(args.prompt) : undefined,
|
|
465
|
+
subscribe,
|
|
466
|
+
allowSubscribe,
|
|
467
|
+
allowPublish,
|
|
468
|
+
shareTools: args.shareTools !== undefined ? String(args.shareTools) : undefined,
|
|
443
469
|
}, caller);
|
|
444
470
|
}
|
|
445
471
|
/** Boot one resolved agent from a mesh-manifest launch spec, for `cotal spawn -f` onto a RUNNING
|
|
@@ -501,7 +527,7 @@ export class Manager {
|
|
|
501
527
|
if (refErr)
|
|
502
528
|
return { ok: false, error: refErr };
|
|
503
529
|
}
|
|
504
|
-
const agent = opts.agent ?? "cotal";
|
|
530
|
+
const agent = opts.agent ?? defaultAgentType("cotal");
|
|
505
531
|
// Capacity check first (cheap, fail-fast). Everything from here to the reserve below is
|
|
506
532
|
// SYNCHRONOUS (existsSync / registry / accessSync / readFileSync — no await), so the gate stays
|
|
507
533
|
// atomic: the capacity snapshot and the reserve land in one tick (P4a/P4c), and two concurrent
|
|
@@ -555,6 +581,10 @@ export class Manager {
|
|
|
555
581
|
let capabilities;
|
|
556
582
|
let model = opts.model;
|
|
557
583
|
if (opts.resolved) {
|
|
584
|
+
// A manifest launch is the access + identity authority: imperative overrides arriving
|
|
585
|
+
// alongside `resolved` are a caller contract error, not something to merge (no fallbacks).
|
|
586
|
+
if (opts.subscribe || opts.allowSubscribe || opts.allowPublish || opts.prompt || opts.shareTools || opts.identity)
|
|
587
|
+
return { ok: false, error: "a manifest launch (resolved) rejects imperative overrides (identity/subscribe/allow*/prompt/shareTools)" };
|
|
558
588
|
const r = opts.resolved;
|
|
559
589
|
identityName = r.name;
|
|
560
590
|
role = opts.role ?? r.role;
|
|
@@ -572,13 +602,19 @@ export class Manager {
|
|
|
572
602
|
catch (e) {
|
|
573
603
|
return { ok: false, error: e.message };
|
|
574
604
|
}
|
|
575
|
-
|
|
605
|
+
// Identity: the `--name` override wins over the file's `name:` — foreground parity (there,
|
|
606
|
+
// `requested = values.name ?? def.name`). The override is minted into the creds and rides
|
|
607
|
+
// COTAL_NAME below, so the presence identity and its credential can't diverge.
|
|
608
|
+
identityName = opts.identity ?? def.name;
|
|
576
609
|
role = opts.role ?? def.role;
|
|
577
|
-
|
|
610
|
+
// Flags > persona file — the same precedence as foreground `cotal spawn`, so the two launch
|
|
611
|
+
// paths of the merged grammar can't diverge. One source feeds BOTH the minted creds and the
|
|
612
|
+
// connector env below.
|
|
613
|
+
subscribe = opts.subscribe ?? def.subscribe;
|
|
578
614
|
// Defaulted the same way the loader/provisioner do — minted into the creds (the broker
|
|
579
615
|
// boundary); runtime durable joins are re-authorized against the committed ACL by the daemon.
|
|
580
|
-
allowSubscribe =
|
|
581
|
-
allowPublish = def.allowPublish;
|
|
616
|
+
allowSubscribe = opts.allowSubscribe ?? def.allowSubscribe ?? subscribe ?? ["general"];
|
|
617
|
+
allowPublish = opts.allowPublish ?? def.allowPublish;
|
|
582
618
|
capabilities = def.capabilities;
|
|
583
619
|
}
|
|
584
620
|
const idErr = this.nameError(identityName);
|
|
@@ -631,8 +667,9 @@ export class Manager {
|
|
|
631
667
|
provisioned = { id: identity.id, name }; // footprint now exists — the finally rolls it back if the spawn throws
|
|
632
668
|
}
|
|
633
669
|
// Personal MCP servers the operator opted to share with manager-spawned agents of this type
|
|
634
|
-
// (cotal config; default none → isolated, the memory-safe default this guards)
|
|
635
|
-
|
|
670
|
+
// (cotal config; default none → isolated, the memory-safe default this guards), narrowed by
|
|
671
|
+
// an optional --share-tools selection (absent → all declared, the pre-merge behavior).
|
|
672
|
+
const mcpServers = connectorServers(loadCotalConfig(this.workspaceRoot), agent, parseShareSelection(opts.shareTools));
|
|
636
673
|
// Per-agent cwd overrides the manager's shared workspace root, so agents can be rooted at
|
|
637
674
|
// arbitrary folders/repos. A relative path resolves against the workspace root; omitted → the
|
|
638
675
|
// agent shares the workspace root (the prior, unchanged behavior).
|
|
@@ -650,6 +687,8 @@ export class Manager {
|
|
|
650
687
|
// control arg), never from `opts.resolved` — so the manifest launch path carries no resume by
|
|
651
688
|
// construction. An unsupported connector throws here before any process is spawned.
|
|
652
689
|
resume: opts.resume,
|
|
690
|
+
// Initial prompt (imperative-only; the resolved guard above keeps manifests prompt-free).
|
|
691
|
+
prompt: opts.prompt,
|
|
653
692
|
// The SAME access set the creds were minted from (above) — forwarded so the session's
|
|
654
693
|
// runtime read/post set matches its credentials. Without this a manifest-spawned agent
|
|
655
694
|
// (materialized persona has no access frontmatter) falls back to `["general"]`, which its
|
package/dist/manager.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EACL,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,eAAe,EACf,SAAS,EACT,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,QAAQ,EACR,aAAa,EACb,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,GACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAE7G,OAAO,EACL,aAAa,GAId,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD;+FAC+F;AAC/F,MAAM,UAAU,GAAG,EAAE,CAAC;AACtB;;gGAEgG;AAChG,MAAM,YAAY,GAAG,MAAM,CAAC;AAC5B;;;;;;;sDAOsD;AACtD,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAC3C;;;4CAG4C;AAC5C,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAEtC;6GAC6G;AAC7G,SAAS,WAAW,CAAI,CAAa,EAAE,EAAU,EAAE,GAAW;IAC5D,IAAI,KAAoC,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;QAC/C,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AACvE,CAAC;AAoFD;;;;;GAKG;AACH,MAAM,OAAO,OAAO;IACD,KAAK,CAAS;IACd,OAAO,CAAqB;IAC5B,IAAI,CAAS;IACb,aAAa,CAAS;IACtB,OAAO,CAAU;IACjB,MAAM,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC1D;gGAC4F;IAC3E,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9C;gGAC4F;IACpF,OAAO,GAAa,EAAE,CAAC;IACd,MAAM,CAAiB;IAChC,EAAE,CAAiB;IAC3B;+FAC2F;IACnF,IAAI,CAAa;IACzB;;gDAE4C;IACpC,kBAAkB,GAAG,oBAAoB,CAAC;IAC1C,SAAS,CAAmC;IAC5C,aAAa,CAAU;IACvB,UAAU,CAAkC;IAEpD,YAAY,IAAoB;QAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,aAAa,EAAE,CAAC;QAC3D,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,IAAI,MAAM,EAAE,SAAS,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,MAAM,GAAG,IAAI,cAAc,CAC9B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EACvC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE;QACjB,0EAA0E;QAC1E,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,EAC7D,IAAI,CAAC,WAAW,IAAI,CAAC,CACtB,CAAC;IACJ,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED,uDAAuD;IACvD,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAC1B,kFAAkF;QAClF,2EAA2E;QAC3E,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;QACvD,IAAI,KAAyB,CAAC;QAC9B,IAAI,EAAsB,CAAC;QAC3B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;YAC/B,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC;YACjB,qGAAqG;YACrG,oGAAoG;YACpG,qGAAqG;YACrG,kGAAkG;YAClG,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,CAAC,EAAE,GAAG,IAAI,aAAa,CAAC;YAC1B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,EAAE;YACZ,KAAK;YACL,mFAAmF;YACnF,oFAAoF;YACpF,sFAAsF;YACtF,4FAA4F;YAC5F,OAAO,EAAE,KAAK;YACd,uFAAuF;YACvF,4FAA4F;YAC5F,0EAA0E;YAC1E,aAAa,EAAE,KAAK;YACpB,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;SACjE,CAAC,CAAC;QACH,kFAAkF;QAClF,8CAA8C;QAC9C,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACrF,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QACtB,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;QAC/D,mGAAmG;QACnG,oGAAoG;QACpG,+FAA+F;QAC/F,IAAI,CAAC,SAAS,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;QAC/H,IAAI,CAAC;YACH,IAAI,CAAC,aAAa,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,6FAA6F;YAC7F,8FAA8F;YAC9F,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YACrE,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACrB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CACb,IAAI;gBACF,CAAC,CAAC,mCAAmC,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,OAAO,SAAS,IAAI,CAAC,GAAG,UAAU,IAAI,CAAC,IAAI,0CAA0C;gBAClK,CAAC,CAAC,kDAAkD,IAAI,CAAC,KAAK,MAAO,CAAW,CAAC,OAAO,EAAE,CAC7F,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,oBAAoB,GAAG,CAAC,CAAC,CAAC;QAC3F,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC;QAC1B,4FAA4F;QAC5F,8FAA8F;QAC9F,gGAAgG;QAChG,4FAA4F;QAC5F,gGAAgG;QAChG,iDAAiD;QACjD,sFAAsF;QACtF,kGAAkG;QAClG,qGAAqG;QACrG,wGAAwG;QACxG,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,kBAAkB,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9G,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,oBAAoB,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,oBAAoB,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QAClH,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,aAAa,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QACpG,kGAAkG;QAClG,8FAA8F;QAC9F,mGAAmG;QACnG,oGAAoG;QACpG,6FAA6F;IAC/F,CAAC;IAED;;;;;;;;kEAQ8D;IACtD,KAAK,CAAC,qBAAqB;QACjC,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1C,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,kGAAkG;YAClG,0FAA0F;YAC1F,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5B,CAAC;QACD,oGAAoG;QACpG,MAAM,OAAO,CAAC,UAAU,CACtB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAChB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,kBAAmB,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CACxH,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,UAAU;YAAE,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpD,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,6DAA6D;QACjG,MAAM,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACtD,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QACrB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED;;;wGAGoG;IAC5F,KAAK,CAAC,UAAU;QACtB,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS;YAAE,OAAO;QAChE,IAAI,CAAC;YACH,IAAI,CAAC,aAAa,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3F,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,iDAAiD,IAAI,CAAC,KAAK,MAAO,CAAW,CAAC,OAAO,oDAAoD,CAAC,CAAC;YACzJ,IAAI,IAAI,CAAC,UAAU;gBAAE,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACpD,mGAAmG;YACnG,oGAAoG;YACpG,IAAI,CAAC;gBAAC,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YACvE,IAAI,CAAC;gBAAC,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YACzD,IAAI,CAAC;gBAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,GAAmB,EAAE,IAAiB;QACzD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QAC5B,8FAA8F;QAC9F,gGAAgG;QAChG,yFAAyF;QACzF,8FAA8F;QAC9F,6DAA6D;QAC7D,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5C,0FAA0F;QAC1F,6FAA6F;QAC7F,4FAA4F;QAC5F,IAAI,IAAI,KAAK,oBAAoB,EAAE,CAAC;YAClC,kGAAkG;YAClG,gGAAgG;YAChG,8FAA8F;YAC9F,IAAI,GAAG,CAAC,EAAE,KAAK,MAAM;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,+CAA+C,EAAE,CAAC;YACjH,IAAI,IAAI;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,mFAAmF,EAAE,CAAC;YAC3H,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACvC,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,KAAK,aAAa,CAAC;QACrC,iGAAiG;QACjG,QAAQ,GAAG,CAAC,EAAE,EAAE,CAAC;YACf,KAAK,OAAO;gBACV,4FAA4F;gBAC5F,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACpC,KAAK,QAAQ;gBACX,2FAA2F;gBAC3F,4FAA4F;gBAC5F,0FAA0F;gBAC1F,0FAA0F;gBAC1F,yFAAyF;gBACzF,IAAI,CAAC,KAAK;oBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,6DAA6D,EAAE,CAAC;gBACvG,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACrC,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,IAAI,CAAC,IAAI;oBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,kFAAkF,EAAE,CAAC;gBAC3H,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YAC1C,CAAC;YACD,KAAK,eAAe;gBAClB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YACnD,KAAK,OAAO;gBACV,0FAA0F;gBAC1F,6EAA6E;gBAC7E,IAAI,CAAC,KAAK;oBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,4DAA4D,EAAE,CAAC;gBACtG,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACpC,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YAC5C,KAAK,IAAI;gBACP,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACzC,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;gBACnD,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,IAAI,GAAG,EAAE,CAAC;YAChF,CAAC;YACD;gBACE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC;QACzD,CAAC;IACH,CAAC;IAED;;;;yEAIqE;IAC7D,cAAc,CAAC,MAAoB,EAAE,MAAc,EAAE,KAAc;QACzE,IAAI,KAAK;YAAE,OAAO,SAAS,CAAC;QAC5B,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM;YAAE,OAAO,SAAS,CAAC;QAChD,OAAO,mBAAmB,MAAM,CAAC,IAAI,uBAAuB,MAAM,wBAAwB,CAAC;IAC7F,CAAC;IAED;;;;6DAIyD;IACjD,UAAU,CAAC,QAAgB,EAAE,IAA6B;QAChE,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;QACxE,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,qBAAqB,QAAQ,yBAAyB,EAAE,CAAC;QACjG,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC;QACzC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,+CAA+C;QAC5E,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;IAC5E,CAAC;IAED,mGAAmG;IACnG,gGAAgG;IAChG,mGAAmG;IACnG,gGAAgG;IAEhG;;;;;;;;;;;gHAW4G;IACpG,UAAU,CAAC,CAAe,EAAE,QAAiB;QACnD,IAAI,CAAC;YACH,IAAI,QAAQ,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,OAAO;gBAAE,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACtF,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,MAAO,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAED;;;;uGAImG;IAC3F,QAAQ,CAAC,CAAe,EAAE,KAAc;QAC9C,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,2CAA2C;QACtF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,SAAS,GAAG,YAAY;YAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,GAAG,YAAY,CAAC,CAAC;QACpG,gGAAgG;QAChG,qGAAqG;QACrG,oGAAoG;QACpG,qGAAqG;QACrG,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CACnC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,MAAO,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED;;;;;;;;;;;mDAW+C;IACvC,KAAK,CAAC,WAAW,CAAC,CAA+B;QACvD,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO,CAAC,2DAA2D;QACnF,qGAAqG;QACrG,mGAAmG;QACnG,kGAAkG;QAClG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,IAAI,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACvF,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,eAAe,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACtG,oGAAoG;QACpG,gGAAgG;QAChG,oGAAoG;QACpG,MAAM,WAAW,CACf,gBAAgB,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,cAAc,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EACvG,sBAAsB,EACtB,eAAe,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,8BAA8B,CAC7D,CAAC;IACJ,CAAC;IAED;;uGAEmG;IAC3F,cAAc,CAAC,QAAgB;QACrC,KAAK,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;YAC9C,IAAI,KAAK,CAAC,OAAO,KAAK,QAAQ;gBAAE,SAAS;YACzC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAC3B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAED;;oGAEgG;IACxF,WAAW,CAAC,CAAe;QACjC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED;iGAC6F;IACrF,SAAS,CAAC,IAAY;QAC5B,OAAO,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;YAClC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,eAAe,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,kCAAkC,CAAC;IAC5E,CAAC;IAED;;sDAEkD;IAC1C,UAAU,CAAC,IAAY;QAC7B,OAAO,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,CAAC;IAED;;8DAE0D;IAC1D,KAAK,CAAC,WAAW,CAAC,IAAY;QAC5B,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IACnC,CAAC;IAED;;;;0EAIsE;IACtE,KAAK,CAAC,eAAe,CAAC,IAAY,EAAE,SAAS,GAAG,MAAM;QACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAC;YACvE,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,kFAAkF;IAC1E,OAAO,CAAC,IAA6B,EAAE,MAAc;QAC3D,yFAAyF;QACzF,+FAA+F;QAC/F,kGAAkG;QAClG,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE;YAC1D,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,sCAAsC,EAAE,CAAC,CAAC;QACvF,4FAA4F;QAC5F,0CAA0C;QAC1C,MAAM,OAAO,GAAG,CAAC,CAAU,EAAE,IAAY,EAAwB,EAAE;YACjE,IAAI,CAAC,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAC;YACtC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;gBAC3D,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,gCAAgC,CAAC,CAAC;YAC3D,OAAO,CAAa,CAAC;QACvB,CAAC,CAAC;QACF,IAAI,SAA+B,EAAE,cAAoC,EAAE,YAAkC,CAAC;QAC9G,IAAI,CAAC;YACH,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YACjD,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;YAChE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACrE,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CACpB;YACE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;YACpC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;YAClD,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;YACrD,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;YAC3D,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;YAClD,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;YACrD,UAAU,EAAE,OAAO,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;YAC9E,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;YAC5C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;YACrD,SAAS;YACT,cAAc;YACd,YAAY;YACZ,UAAU,EAAE,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;SAChF,EACD,MAAM,CACP,CAAC;IACJ,CAAC;IAED;;;;;;;wCAOoC;IAC5B,KAAK,CAAC,QAAQ,CAAC,IAA6B,EAAE,MAAc;QAClE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC;QACjF,IAAI,IAAI,CAAC;QACT,IAAI,CAAC;YACH,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC;QACpD,CAAC;QACD,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,EAAE;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,IAAI,4BAA4B,KAAK,EAAE,EAAE,CAAC;QAC3F,IAAI,UAAkB,CAAC;QACvB,IAAI,CAAC;YACH,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACjE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC;QACpD,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;QACpF,IAAI,KAAK,CAAC,EAAE;YACV,gGAAgG;YAChG,kGAAkG;YAClG,KAAK,CAAC,IAAI,GAAG,EAAE,GAAI,KAAK,CAAC,IAAe,EAAE,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;QAC3G,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;+DAK2D;IAC3D,KAAK,CAAC,UAAU,CAAC,IAAoB,EAAE,OAAgB;QACrD,iGAAiG;QACjG,8FAA8F;QAC9F,4FAA4F;QAC5F,6FAA6F;QAC7F,iEAAiE;QACjE,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,GAAG;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;QACvD,iGAAiG;QACjG,4DAA4D;QAC5D,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACnC,IAAI,MAAM;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAClD,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAEtD,wFAAwF;QACxF,gGAAgG;QAChG,+FAA+F;QAC/F,4DAA4D;QAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,sDAAsD;QAC3F,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,OAAO,IAAI,UAAU;YAC/D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,gBAAgB,UAAU,yDAAyD,EAAE,CAAC;QAEnH,gGAAgG;QAChG,2FAA2F;QAC3F,4FAA4F;QAC5F,6FAA6F;QAC7F,IAAI,UAAkB,CAAC;QACvB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC5D,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,yBAAyB,UAAU,EAAE,EAAE,CAAC;QAClG,CAAC;aAAM,CAAC;YACN,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;YACpD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;gBACzB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO,UAAU,sEAAsE,EAAE,CAAC;QAC3I,CAAC;QAED,8FAA8F;QAC9F,4FAA4F;QAC5F,yEAAyE;QACzE,IAAI,SAAoB,CAAC;QACzB,IAAI,CAAC;YACH,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAY,WAAW,EAAE,KAAK,CAAC,CAAC;QAC9D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC;QACpD,CAAC;QACD,MAAM,OAAO,GAAG,CAAC,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;QAChF,IAAI,OAAO,CAAC,MAAM;YAChB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,kBAAkB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAClG,mGAAmG;QACnG,iGAAiG;QACjG,oGAAoG;QACpG,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc;YAC1C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,mEAAmE,EAAE,CAAC;QAE3G,iGAAiG;QACjG,gGAAgG;QAChG,2FAA2F;QAC3F,4FAA4F;QAC5F,kGAAkG;QAClG,IAAI,YAAoB,CAAC;QACzB,IAAI,IAAwB,CAAC;QAC7B,IAAI,SAA+B,CAAC;QACpC,IAAI,cAAwB,CAAC;QAC7B,IAAI,YAAkC,CAAC;QACvC,IAAI,YAAkC,CAAC;QACvC,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACvB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,sFAAsF;YACtF,2FAA2F;YAC3F,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ;gBAC/G,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,yGAAyG,EAAE,CAAC;YACzI,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;YACxB,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC;YACtB,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC;YAC3B,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;YACxB,cAAc,GAAG,CAAC,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3E,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC;YAC9B,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC;YAC9B,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,IAAI,GAAa,CAAC;YAClB,IAAI,CAAC;gBACH,GAAG,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;YAClC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC;YACpD,CAAC;YACD,2FAA2F;YAC3F,0FAA0F;YAC1F,+EAA+E;YAC/E,YAAY,GAAG,IAAI,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,CAAC;YACzC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC;YAC7B,4FAA4F;YAC5F,4FAA4F;YAC5F,uBAAuB;YACvB,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,CAAC;YAC5C,uFAAuF;YACvF,8FAA8F;YAC9F,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,GAAG,CAAC,cAAc,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,CAAC;YACvF,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,GAAG,CAAC,YAAY,CAAC;YACrD,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC;QAClC,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC3C,IAAI,KAAK;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,iBAAiB,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,UAAU,KAAK,KAAK,EAAE,EAAE,CAAC;QAErH,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxB,mGAAmG;QACnG,sGAAsG;QACtG,qGAAqG;QACrG,oGAAoG;QACpG,kGAAkG;QAClG,mGAAmG;QACnG,wFAAwF;QACxF,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,GAAG,CAAC;QACnF,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC;gBACjC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,wDAAwD;gBACpF,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,SAAS,CAAC,IAAI,uEAAuE,EAAE,CAAC;YACnI,CAAC;YACD,YAAY,GAAG,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9E,CAAC;QACD,mGAAmG;QACnG,oGAAoG;QACpG,2GAA2G;QAC3G,IAAI,WAAqD,CAAC;QAC1D,IAAI,CAAC;YACH,gGAAgG;YAChG,gEAAgE;YAChE,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;YAC/B,2FAA2F;YAC3F,4FAA4F;YAC5F,uEAAuE;YACvE,IAAI,SAA6B,CAAC;YAClC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,8FAA8F;gBAC9F,iGAAiG;gBACjG,gGAAgG;gBAChG,+FAA+F;gBAC/F,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE,CAChD,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,IAAK,EAAE,QAAQ,EAAE;oBACzC,SAAS;oBACT,cAAc;oBACd,YAAY;oBACZ,IAAI;oBACJ,YAAY;iBACb,CAAC,CACH,CAAC;gBACF,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,QAAQ,CAAC,CAAC;gBACxE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,6CAA6C;gBAC9E,eAAe,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBAClC,WAAW,GAAG,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,uEAAuE;YAClH,CAAC;YACD,4FAA4F;YAC5F,4FAA4F;YAC5F,uFAAuF;YACvF,MAAM,UAAU,GAAG,gBAAgB,CACjC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,EACnC,KAAK,EACL,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CACrC,CAAC;YACF,0FAA0F;YAC1F,8FAA8F;YAC9F,mEAAmE;YACnE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;YAClF,MAAM,IAAI,GAAG,SAAS,CAAC,WAAW,CAAC;gBACjC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI;gBACJ,IAAI;gBACJ,EAAE,EAAE,QAAQ,CAAC,EAAE;gBACf,KAAK,EAAE,SAAS;gBAChB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,UAAU;gBACV,KAAK;gBACL,4FAA4F;gBAC5F,8FAA8F;gBAC9F,oFAAoF;gBACpF,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,0FAA0F;gBAC1F,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,sFAAsF;gBACtF,uFAAuF;gBACvF,0FAA0F;gBAC1F,2CAA2C;gBAC3C,SAAS;gBACT,cAAc;gBACd,YAAY;gBACZ,YAAY;gBACZ,UAAU;gBACV,UAAU;gBACV,wFAAwF;gBACxF,6FAA6F;gBAC7F,aAAa,EAAE,IAAI,CAAC,aAAa;aAClC,CAAC,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;YACnD,MAAM,OAAO,GAAiB;gBAC5B,IAAI;gBACJ,IAAI;gBACJ,KAAK;gBACL,EAAE,EAAE,QAAQ,CAAC,EAAE;gBACf,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE;gBACpC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,MAAM;gBACN,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC/B,yFAAyF;YACzF,wDAAwD;YACxD,WAAW,GAAG,SAAS,CAAC;YACxB,8FAA8F;YAC9F,8FAA8F;YAC9F,8FAA8F;YAC9F,aAAa;YACb,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YACrD,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,0BAA0B;YACpH,mGAAmG;YACnG,uGAAuG;YACvG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACxB,IAAI,CAAC,SAAS,CAAC,EAAE;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,oCAAoC;YACtG,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QACvF,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,8FAA8F;YAC9F,0EAA0E;YAC1E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC;QACpD,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3B,mGAAmG;YACnG,gGAAgG;YAChG,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,MAAM,GAAG,WAAW,CAAC;gBAC3B,KAAK,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CACxC,OAAO,CAAC,KAAK,CAAC,gCAAgC,MAAM,CAAC,IAAI,KAAM,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;qGAYiG;IACzF,KAAK,CAAC,cAAc,CAAC,CAAe;QAC1C,IAAI,OAAkC,CAAC;QACvC,IAAI,CAAC;YACH,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,0DAA0D;QAC5D,CAAC;QACD,MAAM,CAAC,GAAG,OAAO,CAAC;QAClB,MAAM,MAAM,GAAG,GAAY,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;QAE5G,OAAO,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACnC,IAAI,IAAI,GAAG,KAAK,CAAC;YACjB,IAAI,KAAoC,CAAC;YACzC,IAAI,SAAS,GAAG,GAAS,EAAE,GAAE,CAAC,CAAC;YAC/B,MAAM,MAAM,GAAG,CAAC,CAAoE,EAAQ,EAAE;gBAC5F,IAAI,IAAI;oBAAE,OAAO;gBACjB,IAAI,GAAG,IAAI,CAAC;gBACZ,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;gBACpC,SAAS,EAAE,CAAC;gBACZ,OAAO,CAAC,CAAC,CAAC,CAAC;YACb,CAAC,CAAC;YACF,MAAM,UAAU,GAAG,GAAS,EAAE;gBAC5B,IAAI,MAAM,EAAE;oBAAE,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACrC,CAAC,CAAC;YACF,sGAAsG;YACtG,sGAAsG;YACtG,2EAA2E;YAC3E,MAAM,MAAM,GAAG,GAAS,EAAE;gBACxB,IAAI,IAAI,IAAI,CAAC,CAAC;oBAAE,OAAO;gBACvB,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,KAAK,CAAC,KAAK,IAAI,EAAE;oBACf,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC1C,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;oBACpB,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,oBAAoB,IAAI,CAAC,CAAC,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBACtG,CAAC,CAAC,EAAE,CAAC;YACP,CAAC,CAAC;YACF,KAAK,GAAG,UAAU,CAChB,GAAG,EAAE,CACH,MAAM,CAAC;gBACL,EAAE,EAAE,KAAK;gBACT,SAAS,EAAE,IAAI;gBACf,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,4EAA4E,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,6FAA6F,CAAC,CAAC,IAAI,4CAA4C;aAChS,CAAC,EACJ,IAAI,CAAC,kBAAkB,CACxB,CAAC;YACF,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAS,EAAE,GAAE,CAAC,CAAC;YAClD,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YACnC,6FAA6F;YAC7F,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,QAAQ;gBAAE,MAAM,EAAE,CAAC;;gBAC7C,UAAU,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;sBAEkB;IACV,IAAI,CAAC,GAAW;QACtB,MAAM,IAAI,GACR,GAAG;aACA,QAAQ,CAAC,MAAM,CAAC;aAChB,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAC,6BAA6B;aACpE,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC,2CAA2C;aAC1E,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACpB,MAAM,CAAC,OAAO,CAAC;aACf,GAAG,EAAE,IAAI,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3D,CAAC;IAED;;;;;kGAK8F;IACtF,SAAS,CAAC,CAAe;QAC/B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAClC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,+FAA+F;YAC/F,kGAAkG;YAClG,2FAA2F;YAC3F,gGAAgG;YAChG,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,QAAQ;gBAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC1D,CAAC;QAAC,MAAM,CAAC;YACP,yEAAyE;QAC3E,CAAC;IACH,CAAC;IAED;0GACsG;IAC9F,YAAY;QAClB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IAC7B,CAAC;IAEO,MAAM,CAAC,IAA6B,EAAE,MAAc,EAAE,KAAc;QAC1E,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,CAAC;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,IAAI,GAAG,EAAE,CAAC;QAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QACrD,IAAI,MAAM;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC;QACzC,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC7B,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,iEAAiE;QAC3F,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;IAC/D,CAAC;IAED;;;;uGAImG;IAC3F,KAAK,CAAC,eAAe,CAAI,EAAuC;QACtE,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;QACrG,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;QAClE,MAAM,IAAI,GAAG,IAAI,aAAa,CAAC;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,EAAE;YACZ,KAAK;YACL,IAAI,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAAE;YACrF,gBAAgB,EAAE,KAAK;YACvB,aAAa,EAAE,KAAK;YACpB,aAAa,EAAE,KAAK;YACpB,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QACpB,CAAC;IACH,CAAC;IAED;;;gCAG4B;IACpB,KAAK,CAAC,OAAO,CAAC,IAA6B,EAAE,OAAe;QAClE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC;QAC5C,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1F,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC;gBACrC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,cAAc;gBACvC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,KAAK;gBACL,UAAU;aACX,CAAC,CAAC;YACH,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QACpC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC;QACpD,CAAC;IACH,CAAC;IAED;;;;;;;;4GAQwG;IAChG,eAAe,CAAC,IAA6B,EAAE,MAAc,EAAE,KAAc;QACnF,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;QACxD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAClD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAClD,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;QAC9D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1D,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QACrD,IAAI,GAAa,CAAC;QAClB,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,4FAA4F;YAC5F,IAAI,CAAC;gBACH,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC;YACpD,CAAC;YACD,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;gBACnC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,+CAA+C,CAAC;gBACpG,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,8BAA8B,IAAI,KAAK,KAAK,qCAAqC,EAAE,CAAC;YACjH,CAAC;YACD,8GAA8G;YAC9G,IAAI,KAAK,KAAK,SAAS;gBAAE,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC;YAC3C,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,6FAA6F;YAC7F,sEAAsE;YACtE,GAAG,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAChD,CAAC;QACD,IAAI,CAAC;YACH,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC;QACpD,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;IAC5C,CAAC;IAEO,QAAQ,CAAC,IAA6B,EAAE,MAAc,EAAE,KAAc;QAC5E,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,CAAC;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,IAAI,GAAG,EAAE,CAAC;QAC1D,0FAA0F;QAC1F,uCAAuC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QACrD,IAAI,MAAM;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAChD,oFAAoF;QACpF,qFAAqF;QACrF,mEAAmE;QACnE,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACH,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACpB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC;YACpD,CAAC;QACH,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;IAC3D,CAAC;IAED,wFAAwF;IAChF,IAAI;QACV,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3C,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,+FAA+F;YAC/F,gFAAgF;YAChF,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI;YACnB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE;YACzB,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,SAAS;YAClC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,QAAQ;SAC7C,CAAC,CAAC,CAAC;IACN,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cotal-ai/manager",
|
|
3
3
|
"description": "Cotal agent supervisor: spawns and manages mesh nodes via a pluggable runtime (pty/tmux/cmux).",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.10.0",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -27,14 +27,14 @@
|
|
|
27
27
|
"ws": "^8.21.0",
|
|
28
28
|
"yaml": "^2.9.0",
|
|
29
29
|
"zod": "^4.4.3",
|
|
30
|
-
"@cotal-ai/
|
|
31
|
-
"@cotal-ai/
|
|
30
|
+
"@cotal-ai/core": "0.10.0",
|
|
31
|
+
"@cotal-ai/workspace": "0.10.0"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@nats-io/jetstream": "^3.4.0",
|
|
35
35
|
"@nats-io/transport-node": "^3.4.0",
|
|
36
36
|
"@types/ws": "^8.18.1",
|
|
37
|
-
"@cotal-ai/connector-core": "0.
|
|
37
|
+
"@cotal-ai/connector-core": "0.10.0"
|
|
38
38
|
},
|
|
39
39
|
"files": [
|
|
40
40
|
"dist"
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"access": "public"
|
|
44
44
|
},
|
|
45
45
|
"scripts": {
|
|
46
|
-
"test": "tsx smoke/start-model-preflight.smoke.ts",
|
|
46
|
+
"test": "tsx smoke/start-model-preflight.smoke.ts && tsx smoke/start-overrides.smoke.ts",
|
|
47
47
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
48
48
|
"build": "tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); fs.rmSync('dist/console', { recursive: true, force: true }); fs.cpSync('src/console', 'dist/console', { recursive: true })\""
|
|
49
49
|
}
|
package/dist/attach-client.d.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The detach key — Ctrl-] (0x1d) by default, as in telnet/ssh escape conventions. `COTAL_DETACH_KEY`
|
|
3
|
-
* rebinds it to another control key when Ctrl-] clashes with a keybinding inside the agent's TUI;
|
|
4
|
-
* accepts `ctrl-<char>` or `^<char>` (e.g. `ctrl-b`, `^_`). Read at point of use, per the repo's
|
|
5
|
-
* `COTAL_*` convention. An unparseable value — including a set-but-empty or whitespace-only one —
|
|
6
|
-
* throws (named), never silently falling back; the caller turns that into a loud exit. Only an
|
|
7
|
-
* unset var = the Ctrl-] default.
|
|
8
|
-
*/
|
|
9
|
-
export declare function detachKey(): {
|
|
10
|
-
byte: number;
|
|
11
|
-
label: string;
|
|
12
|
-
overridden: boolean;
|
|
13
|
-
};
|
|
14
|
-
/**
|
|
15
|
-
* Drive a manager's attach endpoint from the terminal: raw-mode stdin streams to
|
|
16
|
-
* the PTY, PTY output streams to stdout, and SIGWINCH-style resizes are forwarded.
|
|
17
|
-
* The detach key (Ctrl-] by default, {@link detachKey}) detaches without killing the agent.
|
|
18
|
-
*/
|
|
19
|
-
export declare function attachClient(url: string): Promise<void>;
|
|
20
|
-
//# sourceMappingURL=attach-client.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"attach-client.d.ts","sourceRoot":"","sources":["../src/attach-client.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,wBAAgB,SAAS,IAAI;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CAYhF;AAwDD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAmIvD"}
|
package/dist/attach-client.js
DELETED
|
@@ -1,218 +0,0 @@
|
|
|
1
|
-
import WebSocket from "ws";
|
|
2
|
-
import { c } from "./ui.js";
|
|
3
|
-
/**
|
|
4
|
-
* The detach key — Ctrl-] (0x1d) by default, as in telnet/ssh escape conventions. `COTAL_DETACH_KEY`
|
|
5
|
-
* rebinds it to another control key when Ctrl-] clashes with a keybinding inside the agent's TUI;
|
|
6
|
-
* accepts `ctrl-<char>` or `^<char>` (e.g. `ctrl-b`, `^_`). Read at point of use, per the repo's
|
|
7
|
-
* `COTAL_*` convention. An unparseable value — including a set-but-empty or whitespace-only one —
|
|
8
|
-
* throws (named), never silently falling back; the caller turns that into a loud exit. Only an
|
|
9
|
-
* unset var = the Ctrl-] default.
|
|
10
|
-
*/
|
|
11
|
-
export function detachKey() {
|
|
12
|
-
const spec = process.env.COTAL_DETACH_KEY;
|
|
13
|
-
if (spec === undefined)
|
|
14
|
-
return { byte: 0x1d, label: "Ctrl-]", overridden: false };
|
|
15
|
-
const m = /^(?:ctrl-|\^)([a-z@[\\\]^_])$/i.exec(spec.trim());
|
|
16
|
-
if (!m) {
|
|
17
|
-
throw new Error(`invalid COTAL_DETACH_KEY "${spec}" — expected ctrl-<char> or ^<char> for a control key ` +
|
|
18
|
-
`(a-z, or one of @ [ \\ ] ^ _), e.g. ctrl-b`);
|
|
19
|
-
}
|
|
20
|
-
const ch = m[1].toUpperCase();
|
|
21
|
-
return { byte: ch.charCodeAt(0) & 0x1f, label: `Ctrl-${ch}`, overridden: true };
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Terminal modes a full-screen child (a fullscreen TUI: OpenCode, or Claude under `/tui fullscreen`)
|
|
25
|
-
* commonly turns on but that we must undo locally on detach/exit: the agent keeps running after
|
|
26
|
-
* Ctrl-], so it never restores OUR terminal. Without this, detaching from a mouse-tracking TUI leaves
|
|
27
|
-
* the terminal reporting every cursor move as input (a stream of `ESC[<…M` escape codes), or its
|
|
28
|
-
* focus in/out as `ESC[I`/`ESC[O`. Disables all mouse-report modes + focus reporting + bracketed
|
|
29
|
-
* paste, resets the keypad/cursor-key modes, shows the cursor, and resets attributes. Leaving the
|
|
30
|
-
* alternate screen is handled separately (ALT_LEAVE_SEQ), only when we actually entered it — see
|
|
31
|
-
* cleanup().
|
|
32
|
-
*/
|
|
33
|
-
const MOUSE_OFF = "\x1b[?1000l\x1b[?1002l\x1b[?1003l\x1b[?1005l\x1b[?1006l\x1b[?1015l"; // all mouse tracking off
|
|
34
|
-
const RESTORE = MOUSE_OFF +
|
|
35
|
-
"\x1b[?1004l" + // focus reporting off
|
|
36
|
-
"\x1b[?2004l" + // bracketed paste off
|
|
37
|
-
"\x1b[?1l" + // application cursor keys off (DECCKM): a full-screen TUI enables it; left on, arrows emit ESC O A not ESC [ A
|
|
38
|
-
"\x1b>" + // keypad → numeric (DECKPNM)
|
|
39
|
-
"\x1b[?25h" + // show cursor
|
|
40
|
-
"\x1b[0m"; // reset attributes
|
|
41
|
-
// Leave the alternate screen on detach, but ONLY if the child put us there (altScreen). The attach
|
|
42
|
-
// snapshot faithfully re-enters the child's alt-screen (`?1049h`) on our terminal; without a matching
|
|
43
|
-
// leave we strand it in the alt buffer, which has no scrollback and — with xterm alt-scroll — turns
|
|
44
|
-
// the wheel into ↑/↓ that walk shell history. Leaving the alt buffer IS the whole fix: alt-scroll
|
|
45
|
-
// (`?1007`) only acts inside the alt buffer, so `?1049l` alone makes it inert. We deliberately don't
|
|
46
|
-
// send `?1007l` — nothing on this path ever enabled it (unlike console.ts, which sets `?1007h` on
|
|
47
|
-
// entry), so disabling it would clobber the operator's own alternate-scroll preference for later apps.
|
|
48
|
-
const ALT_LEAVE_SEQ = "\x1b[?1049l"; // leave alt-screen — alt-scroll is inert once back in the main buffer
|
|
49
|
-
// Wheel-scroll for full-screen children. A fullscreen TUI (OpenCode, or Claude under `/tui
|
|
50
|
-
// fullscreen`) runs in the alternate screen — where the terminal's native scrollback is dead — and
|
|
51
|
-
// scrolls its content itself off mouse reports. But it enables that mouse capture on ITS pty, and the
|
|
52
|
-
// enable doesn't reliably survive the attach hop (backlog eviction / nested pty), so our terminal
|
|
53
|
-
// never reports the wheel and scrolling dies. So while the child is in the alternate screen we enable
|
|
54
|
-
// SGR mouse reporting on OUR terminal and translate each wheel tick into PageUp/PageDown — the
|
|
55
|
-
// keystrokes a fullscreen TUI treats as "scroll the view" (OpenCode: `messages_page_up`/`_down`;
|
|
56
|
-
// Claude's fullscreen binds PageUp/PageDown too). A child in the normal screen (inline Claude) keeps
|
|
57
|
-
// altScreen=false, so this stays off and its native terminal-scrollback wheel is untouched.
|
|
58
|
-
const MOUSE_ON = "\x1b[?1002h\x1b[?1006h"; // button+drag tracking, SGR encoding
|
|
59
|
-
const PAGE_UP = "\x1b[5~";
|
|
60
|
-
const PAGE_DOWN = "\x1b[6~";
|
|
61
|
-
// Enter/leave the alternate screen: xterm `?1049`, plus the older `?1047`/`?47`.
|
|
62
|
-
const ALT_ENTER = /\x1b\[\?(?:1049|1047|47)h/g;
|
|
63
|
-
const ALT_LEAVE = /\x1b\[\?(?:1049|1047|47)l/g;
|
|
64
|
-
// A complete SGR mouse report: `ESC [ < btn ; col ; row (M|m)`.
|
|
65
|
-
const SGR_MOUSE = /^\x1b\[<(\d+);\d+;\d+[Mm]/;
|
|
66
|
-
const lastIndexOfRe = (re, s) => {
|
|
67
|
-
re.lastIndex = 0;
|
|
68
|
-
let last = -1;
|
|
69
|
-
for (let m = re.exec(s); m; m = re.exec(s))
|
|
70
|
-
last = m.index;
|
|
71
|
-
return last;
|
|
72
|
-
};
|
|
73
|
-
/**
|
|
74
|
-
* Drive a manager's attach endpoint from the terminal: raw-mode stdin streams to
|
|
75
|
-
* the PTY, PTY output streams to stdout, and SIGWINCH-style resizes are forwarded.
|
|
76
|
-
* The detach key (Ctrl-] by default, {@link detachKey}) detaches without killing the agent.
|
|
77
|
-
*/
|
|
78
|
-
export function attachClient(url) {
|
|
79
|
-
// Resolve the detach key before connecting so a bad COTAL_DETACH_KEY fails loudly up front
|
|
80
|
-
// (matching the manager's other fail-fast exits) instead of after an attach we'd only tear down.
|
|
81
|
-
let detach;
|
|
82
|
-
try {
|
|
83
|
-
detach = detachKey();
|
|
84
|
-
}
|
|
85
|
-
catch (e) {
|
|
86
|
-
console.error(c.red(`✗ ${e.message}`));
|
|
87
|
-
process.exit(1);
|
|
88
|
-
}
|
|
89
|
-
return new Promise((resolve, reject) => {
|
|
90
|
-
const ws = new WebSocket(url);
|
|
91
|
-
const stdin = process.stdin;
|
|
92
|
-
const wasRaw = stdin.isRaw ?? false;
|
|
93
|
-
// A broken local pipe (terminal closed / SIGHUP) makes stdout writes async-error on a later
|
|
94
|
-
// tick; with no listener that EPIPE/EIO becomes an uncaughtException — crashing on the per-frame
|
|
95
|
-
// PTY write or the on-detach restore write. Register a no-op listener once here (not in cleanup,
|
|
96
|
-
// so it outlives the async error tick) to turn it into a handled no-op.
|
|
97
|
-
process.stdout.on("error", () => { });
|
|
98
|
-
// Wheel-scroll state (see MOUSE_ON above): whether the child is in the alternate screen, and a
|
|
99
|
-
// buffer for an SGR mouse report split across stdin reads.
|
|
100
|
-
let altScreen = false;
|
|
101
|
-
let mouseBuf = "";
|
|
102
|
-
// Carry the tail of the previous output frame so an alt-screen escape split across ws frames
|
|
103
|
-
// (e.g. `ESC[?10` then `49h`) is still detected; 16 bytes covers these private-mode sequences.
|
|
104
|
-
// Acting only on state *change* below makes re-scanning the carried bytes idempotent.
|
|
105
|
-
let scanTail = "";
|
|
106
|
-
// Track the child's alt-screen transitions in its output so we can arm/disarm wheel translation.
|
|
107
|
-
const trackAltScreen = (data) => {
|
|
108
|
-
const s = scanTail + data.toString("latin1");
|
|
109
|
-
scanTail = s.slice(-16);
|
|
110
|
-
const enter = lastIndexOfRe(ALT_ENTER, s);
|
|
111
|
-
const leave = lastIndexOfRe(ALT_LEAVE, s);
|
|
112
|
-
if (enter === -1 && leave === -1)
|
|
113
|
-
return;
|
|
114
|
-
const nowAlt = enter > leave;
|
|
115
|
-
if (nowAlt === altScreen)
|
|
116
|
-
return;
|
|
117
|
-
altScreen = nowAlt;
|
|
118
|
-
if (altScreen) {
|
|
119
|
-
if (process.stdout.isTTY)
|
|
120
|
-
process.stdout.write(MOUSE_ON);
|
|
121
|
-
}
|
|
122
|
-
else {
|
|
123
|
-
// Leaving alt-screen mid-session: undo the mouse modes WE enabled so the terminal stops
|
|
124
|
-
// reporting the wheel/clicks and native scrollback works again — don't wait for detach.
|
|
125
|
-
mouseBuf = "";
|
|
126
|
-
if (process.stdout.isTTY)
|
|
127
|
-
process.stdout.write(MOUSE_OFF);
|
|
128
|
-
}
|
|
129
|
-
};
|
|
130
|
-
const sendResize = () => ws.send(`r:${process.stdout.columns ?? 80},${process.stdout.rows ?? 24}`);
|
|
131
|
-
const onInput = (d) => {
|
|
132
|
-
if (d.length === 1 && d[0] === detach.byte) {
|
|
133
|
-
ws.close();
|
|
134
|
-
return;
|
|
135
|
-
}
|
|
136
|
-
// Inline child: forward keystrokes raw (its wheel scrolls the local terminal, not the app).
|
|
137
|
-
if (!altScreen) {
|
|
138
|
-
ws.send(d);
|
|
139
|
-
return;
|
|
140
|
-
}
|
|
141
|
-
// Full-screen child: rewrite wheel reports to PageUp/PageDown, pass everything else through.
|
|
142
|
-
mouseBuf += d.toString("latin1");
|
|
143
|
-
let out = "";
|
|
144
|
-
for (;;) {
|
|
145
|
-
const i = mouseBuf.indexOf("\x1b[<");
|
|
146
|
-
if (i === -1) {
|
|
147
|
-
// A report split right before `<` (`ESC[` now, `<…M` next) would slip through untranslated:
|
|
148
|
-
// hold a trailing `ESC[` for the next read. Never hold a bare trailing `ESC` — that's the
|
|
149
|
-
// Escape key and must forward at once (e.g. OpenCode's interrupt); the rarer `ESC`|`[<…`
|
|
150
|
-
// split stays raw by design.
|
|
151
|
-
const keep = mouseBuf.endsWith("\x1b[") ? 2 : 0;
|
|
152
|
-
out += mouseBuf.slice(0, mouseBuf.length - keep);
|
|
153
|
-
mouseBuf = mouseBuf.slice(mouseBuf.length - keep);
|
|
154
|
-
break;
|
|
155
|
-
}
|
|
156
|
-
out += mouseBuf.slice(0, i);
|
|
157
|
-
const rest = mouseBuf.slice(i);
|
|
158
|
-
const m = SGR_MOUSE.exec(rest);
|
|
159
|
-
if (!m) {
|
|
160
|
-
// Hold only a still-valid partial report (`ESC[<` + digits/semicolons) for the next read;
|
|
161
|
-
// anything else can't become an SGR mouse report, so pass it straight through.
|
|
162
|
-
if (/^\x1b\[<[\d;]*$/.test(rest))
|
|
163
|
-
mouseBuf = rest;
|
|
164
|
-
else {
|
|
165
|
-
out += rest;
|
|
166
|
-
mouseBuf = "";
|
|
167
|
-
}
|
|
168
|
-
break;
|
|
169
|
-
}
|
|
170
|
-
const btn = Number(m[1]);
|
|
171
|
-
if (btn & 0x40)
|
|
172
|
-
out += btn & 1 ? PAGE_DOWN : PAGE_UP; // wheel: 64=up, 65=down
|
|
173
|
-
else
|
|
174
|
-
out += m[0]; // other mouse (click/drag): forward raw so the TUI still gets it
|
|
175
|
-
mouseBuf = rest.slice(m[0].length);
|
|
176
|
-
}
|
|
177
|
-
if (out)
|
|
178
|
-
ws.send(Buffer.from(out, "latin1"));
|
|
179
|
-
};
|
|
180
|
-
const cleanup = () => {
|
|
181
|
-
stdin.off("data", onInput);
|
|
182
|
-
process.stdout.off("resize", sendResize);
|
|
183
|
-
// Undo terminal modes the (still-running) agent's TUI enabled — it won't restore us on detach.
|
|
184
|
-
// If the child put us in its alternate screen (altScreen), leave it too so the terminal isn't
|
|
185
|
-
// stranded in the alt buffer; an inline child (altScreen=false) keeps its scrollback.
|
|
186
|
-
if (process.stdout.isTTY)
|
|
187
|
-
process.stdout.write(RESTORE + (altScreen ? ALT_LEAVE_SEQ : ""));
|
|
188
|
-
if (stdin.isTTY)
|
|
189
|
-
stdin.setRawMode(wasRaw);
|
|
190
|
-
stdin.pause();
|
|
191
|
-
};
|
|
192
|
-
ws.on("open", () => {
|
|
193
|
-
// Make an override visible (the CLI's "attached to X — Ctrl-] to detach" hint still prints the
|
|
194
|
-
// default label). Only on override, so the default case stays free of duplicate noise.
|
|
195
|
-
if (detach.overridden)
|
|
196
|
-
console.error(c.dim(`detach key: ${detach.label} (via COTAL_DETACH_KEY)`));
|
|
197
|
-
if (stdin.isTTY)
|
|
198
|
-
stdin.setRawMode(true);
|
|
199
|
-
stdin.resume();
|
|
200
|
-
sendResize();
|
|
201
|
-
process.stdout.on("resize", sendResize);
|
|
202
|
-
stdin.on("data", onInput);
|
|
203
|
-
});
|
|
204
|
-
ws.on("message", (data) => {
|
|
205
|
-
trackAltScreen(data);
|
|
206
|
-
process.stdout.write(data);
|
|
207
|
-
});
|
|
208
|
-
ws.on("close", () => {
|
|
209
|
-
cleanup();
|
|
210
|
-
resolve();
|
|
211
|
-
});
|
|
212
|
-
ws.on("error", (e) => {
|
|
213
|
-
cleanup();
|
|
214
|
-
reject(e);
|
|
215
|
-
});
|
|
216
|
-
});
|
|
217
|
-
}
|
|
218
|
-
//# sourceMappingURL=attach-client.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"attach-client.js","sourceRoot":"","sources":["../src/attach-client.ts"],"names":[],"mappings":"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"}
|