@ozaiya/openclaw-channel 0.10.33 → 0.10.35
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/src/addonProvisioner.d.ts +70 -0
- package/dist/src/addonProvisioner.js +280 -0
- package/dist/src/addonProvisioner.js.map +1 -0
- package/dist/src/desktopContainer.d.ts +5 -0
- package/dist/src/desktopContainer.js +8 -2
- package/dist/src/desktopContainer.js.map +1 -1
- package/dist/src/gateway.js +128 -8
- package/dist/src/gateway.js.map +1 -1
- package/dist/src/sandboxIdentity.d.ts +5 -0
- package/dist/src/sandboxIdentity.js +93 -0
- package/dist/src/sandboxIdentity.js.map +1 -0
- package/dist/src/sandboxScreenH264.d.ts +7 -0
- package/dist/src/sandboxScreenH264.js +38 -4
- package/dist/src/sandboxScreenH264.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
export declare const DEFAULT_BROWSER_IMAGE: string;
|
|
2
|
+
export declare const DEFAULT_DESKTOP_IMAGE: string;
|
|
3
|
+
export type AddonResourceClass = "browser-container" | "desktop-container";
|
|
4
|
+
export type ScreenMode = "cdp" | "vnc";
|
|
5
|
+
/** Stable error codes (the errorContract) — the app maps these to i18n strings + Retry. */
|
|
6
|
+
export type ProvisionErrorCode = "docker_missing" | "image_pull_failed" | "container_unhealthy" | "provision_failed";
|
|
7
|
+
export interface AddonProvisionParams {
|
|
8
|
+
botId: string;
|
|
9
|
+
addonKey: string;
|
|
10
|
+
resourceClass: AddonResourceClass;
|
|
11
|
+
screenMode?: ScreenMode;
|
|
12
|
+
/** Server-owned image pin (ADDON_CONTAINER_IMAGE[resourceClass]); falls back to a constant. */
|
|
13
|
+
image?: string;
|
|
14
|
+
/** Non-secret per-addon config (channels.ozaiya.addons[key]); carried for completeness. */
|
|
15
|
+
config?: Record<string, unknown>;
|
|
16
|
+
}
|
|
17
|
+
export interface AddonProvisionResult {
|
|
18
|
+
status: "ready" | "failed";
|
|
19
|
+
novncPort?: number;
|
|
20
|
+
cdpPort?: number;
|
|
21
|
+
error?: ProvisionErrorCode;
|
|
22
|
+
}
|
|
23
|
+
export type ProvisionStepKey = "reserve" | "allocate" | "install" | "warm";
|
|
24
|
+
export type ProvisionStepStatus = "pending" | "in_progress" | "completed" | "failed";
|
|
25
|
+
export interface ProvisionStepState {
|
|
26
|
+
key: ProvisionStepKey;
|
|
27
|
+
status: ProvisionStepStatus;
|
|
28
|
+
}
|
|
29
|
+
export interface ProvisionDetail {
|
|
30
|
+
step: ProvisionStepKey | null;
|
|
31
|
+
steps: ProvisionStepState[];
|
|
32
|
+
etaSeconds?: number;
|
|
33
|
+
}
|
|
34
|
+
/** Fire-and-forget progress sink (the gateway wires this to sock.emit('gateway-provision-progress', …)). */
|
|
35
|
+
export type ProvisionProgress = (update: {
|
|
36
|
+
botId: string;
|
|
37
|
+
addonKey: string;
|
|
38
|
+
status: "queued" | "preparing" | "ready" | "failed";
|
|
39
|
+
detail: ProvisionDetail | null;
|
|
40
|
+
error?: string | null;
|
|
41
|
+
}) => void;
|
|
42
|
+
export interface ProvisionLog {
|
|
43
|
+
info: (msg: string) => void;
|
|
44
|
+
warn: (msg: string) => void;
|
|
45
|
+
}
|
|
46
|
+
/** Per-bot container name — the idempotency + deprovision key. */
|
|
47
|
+
export declare function containerName(botId: string): string;
|
|
48
|
+
/**
|
|
49
|
+
* Provision (or reconverge) a self-hosted container addon's sandbox on the gateway host. Walks the 4
|
|
50
|
+
* canonical steps, emitting progress, and returns the terminal result for the RPC ack. Never throws —
|
|
51
|
+
* all failures are mapped to a ProvisionErrorCode and reported as status:'failed'.
|
|
52
|
+
*/
|
|
53
|
+
export declare function provisionAddon(params: AddonProvisionParams, ctx: {
|
|
54
|
+
stateDir: string;
|
|
55
|
+
progress: ProvisionProgress;
|
|
56
|
+
log?: ProvisionLog;
|
|
57
|
+
}): Promise<AddonProvisionResult>;
|
|
58
|
+
/**
|
|
59
|
+
* Tear down a self-hosted addon's container (disable / retry-cleanup). Removes by the per-bot label so a
|
|
60
|
+
* renamed/recreated container is still caught. Idempotent: a missing container is a no-op success. The
|
|
61
|
+
* host profile dir is intentionally LEFT so a later re-enable keeps the login.
|
|
62
|
+
*/
|
|
63
|
+
export declare function deprovisionAddon(params: {
|
|
64
|
+
botId: string;
|
|
65
|
+
addonKey?: string;
|
|
66
|
+
}, ctx: {
|
|
67
|
+
log?: ProvisionLog;
|
|
68
|
+
}): Promise<{
|
|
69
|
+
ok: true;
|
|
70
|
+
}>;
|
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Self-hosted addon provisioner — the LOCAL mirror of clider-cloud's container provisioning, run on
|
|
3
|
+
* the USER's own machine by the gateway. When a self-hosted bot enables a container addon
|
|
4
|
+
* (browser-container goofish/web_browse; desktop-container wechat is deferred to a follow-up), the
|
|
5
|
+
* server issues an `addon-provision` RPC; this module stands up the sandbox container on the gateway
|
|
6
|
+
* host and reports progress back over the gateway's authenticated socket (gateway-provision-progress),
|
|
7
|
+
* mirroring the EXACT status protocol the server's FSM uses (the 4 canonical steps
|
|
8
|
+
* reserve → allocate → install → warm).
|
|
9
|
+
*
|
|
10
|
+
* It codifies the PROVEN goofish-seller container shape (Xvfb :1 + x11vnc + websockify 6080 + chromium
|
|
11
|
+
* CDP 9222 + persistent profile bind-mount), pulling the image from GHCR. It labels/names/ports the
|
|
12
|
+
* container exactly the way gateway.ts's existing discovery (label=openclaw.sandboxBrowser=1, mapped
|
|
13
|
+
* 6080/9222) already greps for, and re-tags the GHCR image to the bare local name so the ancestor
|
|
14
|
+
* filters match with no discovery change.
|
|
15
|
+
*
|
|
16
|
+
* Idempotent: re-provision reconverges on the per-bot name (running → reuse, exited → start, absent →
|
|
17
|
+
* run). Deprovision removes the container by label but LEAVES the host profile dir so a later re-enable
|
|
18
|
+
* keeps the login.
|
|
19
|
+
*/
|
|
20
|
+
import fs from "node:fs";
|
|
21
|
+
import path from "node:path";
|
|
22
|
+
import net from "node:net";
|
|
23
|
+
import { randomBytes } from "node:crypto";
|
|
24
|
+
import * as desktop from "./desktopContainer.js";
|
|
25
|
+
// ── Image resolution ─────────────────────────────────────────────────────────
|
|
26
|
+
//
|
|
27
|
+
// The server owns the image pin (addonCatalog.ADDON_CONTAINER_IMAGE), passed in the RPC params. The
|
|
28
|
+
// gateway only falls back to these constants/env when an older server omits params.image. The bare
|
|
29
|
+
// local tag is what the existing discovery filters (gateway.ts ancestor=...) grep for, so after pulling
|
|
30
|
+
// the GHCR image we `docker tag` it to this name and the discovery needs NO change.
|
|
31
|
+
export const DEFAULT_BROWSER_IMAGE = process.env.OPENCLAW_SANDBOX_BROWSER_IMAGE || "ghcr.io/tangojet/openclaw-sandbox-browser:bookworm-slim";
|
|
32
|
+
export const DEFAULT_DESKTOP_IMAGE = process.env.OPENCLAW_SANDBOX_DESKTOP_IMAGE || "ghcr.io/tangojet/openclaw-sandbox-desktop:bookworm-slim";
|
|
33
|
+
/** Bare local tag the existing ancestor-discovery filters already match (gateway.ts). */
|
|
34
|
+
const BARE_BROWSER_IMAGE = "openclaw-sandbox-browser:bookworm-slim";
|
|
35
|
+
const BARE_DESKTOP_IMAGE = "openclaw-sandbox-desktop:bookworm-slim";
|
|
36
|
+
const PROVISION_STEPS = ["reserve", "allocate", "install", "warm"];
|
|
37
|
+
// ── Step helpers (mirror the server's buildStepStates) ───────────────────────
|
|
38
|
+
function buildSteps(doneCount, current) {
|
|
39
|
+
return PROVISION_STEPS.map((key, i) => ({
|
|
40
|
+
key,
|
|
41
|
+
status: i < doneCount ? "completed" : key === current ? "in_progress" : "pending",
|
|
42
|
+
}));
|
|
43
|
+
}
|
|
44
|
+
function detailFor(current, doneCount) {
|
|
45
|
+
return {
|
|
46
|
+
step: current,
|
|
47
|
+
steps: buildSteps(doneCount, current),
|
|
48
|
+
etaSeconds: current ? (PROVISION_STEPS.length - doneCount) * 8 : 0,
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
// ── Constants ────────────────────────────────────────────────────────────────
|
|
52
|
+
const HEALTH_TIMEOUT_MS = 60_000;
|
|
53
|
+
const HEALTH_POLL_MS = 1500;
|
|
54
|
+
const CDP_PORT = 9222; // reconciled to 9222 (matches gateway.ts discovery + the in-repo entrypoint)
|
|
55
|
+
const NOVNC_PORT = 6080;
|
|
56
|
+
const RESOLUTION = "1280x800x24";
|
|
57
|
+
/** Per-bot container name — the idempotency + deprovision key. */
|
|
58
|
+
export function containerName(botId) {
|
|
59
|
+
return `openclaw-sandbox-${botId}`;
|
|
60
|
+
}
|
|
61
|
+
/** Per-bot persistent profile dir (login survives restart). Bind-mounted to /tmp/openclaw-home. */
|
|
62
|
+
function profileDir(stateDir, botId) {
|
|
63
|
+
return path.join(stateDir, "sandbox-profiles", botId);
|
|
64
|
+
}
|
|
65
|
+
function resolveImage(params) {
|
|
66
|
+
if (params.resourceClass === "desktop-container") {
|
|
67
|
+
return { pull: params.image || DEFAULT_DESKTOP_IMAGE, bare: BARE_DESKTOP_IMAGE };
|
|
68
|
+
}
|
|
69
|
+
return { pull: params.image || DEFAULT_BROWSER_IMAGE, bare: BARE_BROWSER_IMAGE };
|
|
70
|
+
}
|
|
71
|
+
// ── Docker presence + low-level helpers (REUSE desktopContainer's binary detection) ──
|
|
72
|
+
function ensureDocker() {
|
|
73
|
+
// dockerBin() throws "Docker not found …" when neither docker nor Docker Desktop is present.
|
|
74
|
+
desktop.dockerBin();
|
|
75
|
+
// Verify the daemon is actually up (binary present but daemon down = same user-facing failure).
|
|
76
|
+
desktop.docker("info --format '{{.ServerVersion}}'", 8000);
|
|
77
|
+
}
|
|
78
|
+
/** Existing container for this bot, or null if none. Idempotency probe. */
|
|
79
|
+
function findExistingContainer(botId) {
|
|
80
|
+
try {
|
|
81
|
+
const out = desktop.docker(`ps -a --filter 'label=openclaw.botId=${botId}' --format '{{.ID}}\\t{{.Status}}'`, 8000);
|
|
82
|
+
const line = out.split("\n").filter(Boolean)[0];
|
|
83
|
+
if (!line)
|
|
84
|
+
return null;
|
|
85
|
+
const [id, status] = line.split("\t");
|
|
86
|
+
return { id: id.slice(0, 12), running: /^Up/i.test(status || "") };
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
return null;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
/** TCP-probe a host port (the websockify / CDP health check). */
|
|
93
|
+
function probeTcp(port, timeoutMs = 1200) {
|
|
94
|
+
return new Promise((resolve) => {
|
|
95
|
+
const sock = net.connect({ host: "127.0.0.1", port });
|
|
96
|
+
let done = false;
|
|
97
|
+
const finish = (ok) => {
|
|
98
|
+
if (done)
|
|
99
|
+
return;
|
|
100
|
+
done = true;
|
|
101
|
+
try {
|
|
102
|
+
sock.destroy();
|
|
103
|
+
}
|
|
104
|
+
catch { /* ignore */ }
|
|
105
|
+
resolve(ok);
|
|
106
|
+
};
|
|
107
|
+
sock.setTimeout(timeoutMs);
|
|
108
|
+
sock.once("connect", () => finish(true));
|
|
109
|
+
sock.once("timeout", () => finish(false));
|
|
110
|
+
sock.once("error", () => finish(false));
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
|
|
114
|
+
// ── Browser container runner (the codified goofish-seller template) ──────────
|
|
115
|
+
/**
|
|
116
|
+
* Idempotently bring up the per-bot browser sandbox container. Returns the container id. The caller
|
|
117
|
+
* resolves the mapped host ports afterwards via desktop.findContainerPort.
|
|
118
|
+
*/
|
|
119
|
+
function runBrowserContainer(opts) {
|
|
120
|
+
const name = containerName(opts.botId);
|
|
121
|
+
const args = [
|
|
122
|
+
"run -d",
|
|
123
|
+
`--name ${name}`,
|
|
124
|
+
"--label openclaw.sandboxBrowser=1", // discovery filter #1 (gateway.ts)
|
|
125
|
+
`--label openclaw.botId=${opts.botId}`, // per-bot discovery for deprovision/idempotency
|
|
126
|
+
`--label openclaw.addonKey=${opts.addonKey}`,
|
|
127
|
+
`-p 0:${NOVNC_PORT}`, // websockify noVNC → ephemeral host port (discovered via docker port)
|
|
128
|
+
`-p 127.0.0.1:0:${CDP_PORT}`, // CDP — localhost-only, ephemeral host port
|
|
129
|
+
`-e OPENCLAW_BROWSER_NOVNC_PASSWORD=${opts.novncPassword}`,
|
|
130
|
+
"-e OPENCLAW_BROWSER_NO_SANDBOX=1",
|
|
131
|
+
"-e ENABLE_NOVNC=1", // entrypoint boot gate
|
|
132
|
+
`-e OPENCLAW_BROWSER_CDP_PORT=${CDP_PORT}`, // in-container code agrees on 9222
|
|
133
|
+
`-e RESOLUTION=${RESOLUTION}`,
|
|
134
|
+
`-v ${opts.profilePath}:/tmp/openclaw-home`, // persistent login (host dir → container home)
|
|
135
|
+
"--restart unless-stopped",
|
|
136
|
+
"--shm-size=1g", // chromium needs it
|
|
137
|
+
opts.bareImage,
|
|
138
|
+
].join(" ");
|
|
139
|
+
const id = desktop.docker(args, 60_000);
|
|
140
|
+
return id.slice(0, 12);
|
|
141
|
+
}
|
|
142
|
+
// ── Public actions ───────────────────────────────────────────────────────────
|
|
143
|
+
/**
|
|
144
|
+
* Provision (or reconverge) a self-hosted container addon's sandbox on the gateway host. Walks the 4
|
|
145
|
+
* canonical steps, emitting progress, and returns the terminal result for the RPC ack. Never throws —
|
|
146
|
+
* all failures are mapped to a ProvisionErrorCode and reported as status:'failed'.
|
|
147
|
+
*/
|
|
148
|
+
export async function provisionAddon(params, ctx) {
|
|
149
|
+
const { botId, addonKey, resourceClass } = params;
|
|
150
|
+
const { stateDir, progress, log } = ctx;
|
|
151
|
+
const emit = (status, detail, error) => progress({ botId, addonKey, status, detail, error: error ?? null });
|
|
152
|
+
const fail = (code) => {
|
|
153
|
+
emit("failed", { step: null, steps: buildSteps(0, null), etaSeconds: 0 }, code);
|
|
154
|
+
return { status: "failed", error: code };
|
|
155
|
+
};
|
|
156
|
+
// ── reserve ── docker present + daemon up; resolve image + profile dir.
|
|
157
|
+
emit("preparing", detailFor("reserve", 0));
|
|
158
|
+
try {
|
|
159
|
+
ensureDocker();
|
|
160
|
+
}
|
|
161
|
+
catch {
|
|
162
|
+
log?.warn(`[gateway] addon-provision: docker missing botId=${botId}`);
|
|
163
|
+
return fail("docker_missing");
|
|
164
|
+
}
|
|
165
|
+
const { pull, bare } = resolveImage(params);
|
|
166
|
+
const profilePath = profileDir(stateDir, botId);
|
|
167
|
+
try {
|
|
168
|
+
fs.mkdirSync(profilePath, { recursive: true });
|
|
169
|
+
}
|
|
170
|
+
catch { /* best-effort; bind-mount creates it too */ }
|
|
171
|
+
// ── allocate ── pull the GHCR image (cache hit is fast) then retag to the bare local name so the
|
|
172
|
+
// existing ancestor-discovery filters keep matching with no gateway-discovery change.
|
|
173
|
+
emit("preparing", detailFor("allocate", 1));
|
|
174
|
+
try {
|
|
175
|
+
desktop.docker(`pull ${pull}`, 180_000); // cold GHCR pull can be slow → matches raised RPC timeout
|
|
176
|
+
if (pull !== bare) {
|
|
177
|
+
try {
|
|
178
|
+
desktop.docker(`tag ${pull} ${bare}`, 15_000);
|
|
179
|
+
}
|
|
180
|
+
catch { /* tag is best-effort */ }
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
catch {
|
|
184
|
+
log?.warn(`[gateway] addon-provision: image pull failed image=${pull} botId=${botId}`);
|
|
185
|
+
return fail("image_pull_failed");
|
|
186
|
+
}
|
|
187
|
+
// ── install ── idempotent docker run (running → reuse, exited → start, absent → run).
|
|
188
|
+
emit("preparing", detailFor("install", 2));
|
|
189
|
+
let containerId = "";
|
|
190
|
+
try {
|
|
191
|
+
const existing = findExistingContainer(botId);
|
|
192
|
+
if (existing && existing.running) {
|
|
193
|
+
containerId = existing.id;
|
|
194
|
+
log?.info(`[gateway] addon-provision: reusing running container botId=${botId} id=${containerId}`);
|
|
195
|
+
}
|
|
196
|
+
else if (existing && !existing.running) {
|
|
197
|
+
desktop.docker(`start ${existing.id}`, 30_000);
|
|
198
|
+
containerId = existing.id;
|
|
199
|
+
log?.info(`[gateway] addon-provision: started existing container botId=${botId} id=${containerId}`);
|
|
200
|
+
}
|
|
201
|
+
else if (resourceClass === "desktop-container") {
|
|
202
|
+
// Reuse the extended desktop runner (wechat); it stamps the openclaw.botId label + profile mount.
|
|
203
|
+
const created = desktop.createContainer({
|
|
204
|
+
name: botId,
|
|
205
|
+
image: bare,
|
|
206
|
+
botId,
|
|
207
|
+
profileMount: `${profilePath}:/tmp/openclaw-home`,
|
|
208
|
+
resolution: RESOLUTION,
|
|
209
|
+
});
|
|
210
|
+
containerId = created.id;
|
|
211
|
+
log?.info(`[gateway] addon-provision: created desktop container botId=${botId} id=${containerId}`);
|
|
212
|
+
}
|
|
213
|
+
else {
|
|
214
|
+
const novncPassword = randomBytes(16).toString("hex");
|
|
215
|
+
containerId = runBrowserContainer({ botId, addonKey, bareImage: bare, profilePath, novncPassword });
|
|
216
|
+
log?.info(`[gateway] addon-provision: created browser container botId=${botId} id=${containerId}`);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
catch (err) {
|
|
220
|
+
log?.warn(`[gateway] addon-provision: docker run failed botId=${botId}: ${String(err)}`);
|
|
221
|
+
return fail("provision_failed");
|
|
222
|
+
}
|
|
223
|
+
// ── warm ── wait for websockify 6080 + CDP 9222 to answer on their mapped host ports.
|
|
224
|
+
emit("preparing", detailFor("warm", 3));
|
|
225
|
+
const deadline = Date.now() + HEALTH_TIMEOUT_MS;
|
|
226
|
+
let novncPort = null;
|
|
227
|
+
let cdpPort = null;
|
|
228
|
+
while (Date.now() < deadline) {
|
|
229
|
+
novncPort = novncPort ?? desktop.findContainerPort(containerId, NOVNC_PORT);
|
|
230
|
+
cdpPort = cdpPort ?? desktop.findContainerPort(containerId, CDP_PORT);
|
|
231
|
+
if (novncPort && cdpPort) {
|
|
232
|
+
const [novncUp, cdpUp] = await Promise.all([probeTcp(novncPort), probeTcp(cdpPort)]);
|
|
233
|
+
if (novncUp && cdpUp) {
|
|
234
|
+
log?.info(`[gateway] addon-provision: healthy botId=${botId} novnc=${novncPort} cdp=${cdpPort}`);
|
|
235
|
+
emit("ready", { step: null, steps: buildSteps(PROVISION_STEPS.length, null), etaSeconds: 0 });
|
|
236
|
+
return { status: "ready", novncPort, cdpPort };
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
await sleep(HEALTH_POLL_MS);
|
|
240
|
+
}
|
|
241
|
+
// Health timed out — LEAVE the container for log inspection (deprovision/retry removes it).
|
|
242
|
+
log?.warn(`[gateway] addon-provision: container unhealthy botId=${botId} (novnc=${novncPort} cdp=${cdpPort})`);
|
|
243
|
+
return fail("container_unhealthy");
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Tear down a self-hosted addon's container (disable / retry-cleanup). Removes by the per-bot label so a
|
|
247
|
+
* renamed/recreated container is still caught. Idempotent: a missing container is a no-op success. The
|
|
248
|
+
* host profile dir is intentionally LEFT so a later re-enable keeps the login.
|
|
249
|
+
*/
|
|
250
|
+
export async function deprovisionAddon(params, ctx) {
|
|
251
|
+
try {
|
|
252
|
+
desktop.dockerBin();
|
|
253
|
+
}
|
|
254
|
+
catch {
|
|
255
|
+
return { ok: true }; // no docker → nothing to remove
|
|
256
|
+
}
|
|
257
|
+
try {
|
|
258
|
+
const filter = params.addonKey
|
|
259
|
+
? `--filter 'label=openclaw.botId=${params.botId}' --filter 'label=openclaw.addonKey=${params.addonKey}'`
|
|
260
|
+
: `--filter 'label=openclaw.botId=${params.botId}'`;
|
|
261
|
+
const ids = desktop
|
|
262
|
+
.docker(`ps -aq ${filter}`, 8000)
|
|
263
|
+
.split("\n")
|
|
264
|
+
.map((s) => s.trim())
|
|
265
|
+
.filter(Boolean);
|
|
266
|
+
for (const id of ids) {
|
|
267
|
+
try {
|
|
268
|
+
desktop.docker(`rm -f ${id}`, 20_000);
|
|
269
|
+
}
|
|
270
|
+
catch { /* best-effort */ }
|
|
271
|
+
}
|
|
272
|
+
if (ids.length)
|
|
273
|
+
ctx.log?.info(`[gateway] addon-deprovision: removed ${ids.length} container(s) botId=${params.botId}`);
|
|
274
|
+
}
|
|
275
|
+
catch (err) {
|
|
276
|
+
ctx.log?.warn(`[gateway] addon-deprovision: error botId=${params.botId}: ${String(err)}`);
|
|
277
|
+
}
|
|
278
|
+
return { ok: true };
|
|
279
|
+
}
|
|
280
|
+
//# sourceMappingURL=addonProvisioner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addonProvisioner.js","sourceRoot":"","sources":["../../src/addonProvisioner.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,11 @@ export interface CreateContainerParams {
|
|
|
30
30
|
appArgs?: string;
|
|
31
31
|
resolution?: string;
|
|
32
32
|
vncPassword?: string;
|
|
33
|
+
/** Per-bot id — stamps an `openclaw.botId` label so the addon provisioner finds/tears down this
|
|
34
|
+
* container the same way as the browser variant (deprovision + idempotency key). */
|
|
35
|
+
botId?: string;
|
|
36
|
+
/** Persistent profile bind-mount "hostDir:containerDir" — makes the in-sandbox login durable. */
|
|
37
|
+
profileMount?: string;
|
|
33
38
|
}
|
|
34
39
|
export interface ContainerInfo {
|
|
35
40
|
id: string;
|
|
@@ -56,7 +56,7 @@ export function dockerExec(containerId, cmd, timeout = 30_000) {
|
|
|
56
56
|
}
|
|
57
57
|
// ── Container lifecycle ──────────────────────────────────────────────────────
|
|
58
58
|
export function createContainer(params) {
|
|
59
|
-
const { name, image = "ozaiya-desktop:latest", app, appArgs, resolution = "1280x800x24", vncPassword = Math.random().toString(36).slice(2, 10), } = params;
|
|
59
|
+
const { name, image = "ozaiya-desktop:latest", app, appArgs, resolution = "1280x800x24", vncPassword = Math.random().toString(36).slice(2, 10), botId, profileMount, } = params;
|
|
60
60
|
const containerName = `ozaiya-desktop-${name}`;
|
|
61
61
|
const envArgs = [
|
|
62
62
|
`-e VNC_PASSWORD=${vncPassword}`,
|
|
@@ -66,11 +66,17 @@ export function createContainer(params) {
|
|
|
66
66
|
envArgs.push(`-e TARGET_APP=${app}`);
|
|
67
67
|
if (appArgs)
|
|
68
68
|
envArgs.push(`-e TARGET_APP_ARGS='${appArgs}'`);
|
|
69
|
+
const labelArgs = ["--label ozaiya.desktop=1"];
|
|
70
|
+
if (botId)
|
|
71
|
+
labelArgs.push(`--label openclaw.botId=${botId}`);
|
|
72
|
+
const mountArgs = profileMount ? [`-v ${profileMount}`] : [];
|
|
69
73
|
const containerId = docker([
|
|
70
74
|
"run -d",
|
|
71
75
|
`--name ${containerName}`,
|
|
72
|
-
|
|
76
|
+
...labelArgs,
|
|
73
77
|
"-p 0:5900 -p 0:6080 -p 0:8080",
|
|
78
|
+
...mountArgs,
|
|
79
|
+
"--restart unless-stopped",
|
|
74
80
|
...envArgs,
|
|
75
81
|
image,
|
|
76
82
|
].join(" "));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"desktopContainer.js","sourceRoot":"","sources":["../../src/desktopContainer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"desktopContainer.js","sourceRoot":"","sources":["../../src/desktopContainer.ts"],"names":[],"mappings":"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"}
|
package/dist/src/gateway.js
CHANGED
|
@@ -30,7 +30,9 @@ import { acquireCdpScreencast, releaseCdpScreencast } from "./sandboxScreenCdp.j
|
|
|
30
30
|
import { createSandboxRtcSession } from "./sandboxScreenRtc.js";
|
|
31
31
|
import { probeFfmpeg, createH264Transcoder } from "./sandboxScreenH264.js";
|
|
32
32
|
import { unsealScreenKey, encryptScreenPayload, decryptScreenPayload, E2E_INPUT_MARKER } from "./sandboxScreenE2E.js";
|
|
33
|
+
import { readSandboxIdentity } from "./sandboxIdentity.js";
|
|
33
34
|
import { WeChatMonitorSession, getMonitor, getAllMonitors } from "./wechatMonitor.js";
|
|
35
|
+
import { provisionAddon, deprovisionAddon } from "./addonProvisioner.js";
|
|
34
36
|
let sodiumReady = false;
|
|
35
37
|
async function ensureSodium() {
|
|
36
38
|
if (!sodiumReady) {
|
|
@@ -425,6 +427,24 @@ export async function startGatewayMode(options) {
|
|
|
425
427
|
try {
|
|
426
428
|
if (payload.method === 'list-screens') {
|
|
427
429
|
const screens = [];
|
|
430
|
+
// The browser sidecar (record-control.py on RECORD_CONTROL_PORT) lists the Chrome
|
|
431
|
+
// profile-dirs = switchable logged-in accounts (+ any auto-captured id/nick).
|
|
432
|
+
// Best-effort; absent/old sidecar → no list.
|
|
433
|
+
const fetchSandboxProfiles = async () => {
|
|
434
|
+
if (!(desktop.isInContainer && process.env.NOVNC_HOST))
|
|
435
|
+
return null;
|
|
436
|
+
try {
|
|
437
|
+
const base = `http://${process.env.NOVNC_HOST}:${process.env.RECORD_CONTROL_PORT || '8091'}`;
|
|
438
|
+
const res = await fetch(`${base}/list-profiles`, { signal: AbortSignal.timeout(2500) });
|
|
439
|
+
if (!res.ok)
|
|
440
|
+
return null;
|
|
441
|
+
const data = await res.json();
|
|
442
|
+
return Array.isArray(data.profiles) && data.profiles.length ? data.profiles : null;
|
|
443
|
+
}
|
|
444
|
+
catch {
|
|
445
|
+
return null;
|
|
446
|
+
}
|
|
447
|
+
};
|
|
428
448
|
// Browser profile metadata for the sandbox screen — lets the app show WHICH
|
|
429
449
|
// logged-in profile the bot's browser uses and where it lives on disk. In-container
|
|
430
450
|
// we know the CDP endpoint (NOVNC_HOST) + the image's user-data-dir; the host-side
|
|
@@ -443,7 +463,35 @@ export async function startGatewayMode(options) {
|
|
|
443
463
|
// id MUST be 'sandbox' so the server routes it via sandbox-screen-open (any other
|
|
444
464
|
// id is treated as a desktop container and routed to desktop-screen-open).
|
|
445
465
|
if (process.env.NOVNC_HOST) {
|
|
446
|
-
|
|
466
|
+
const profile = sandboxProfile();
|
|
467
|
+
const profiles = await fetchSandboxProfiles();
|
|
468
|
+
if (profiles) {
|
|
469
|
+
const act = profiles.find(p => p.active);
|
|
470
|
+
if (act) {
|
|
471
|
+
profile.name = act.label; // reflect the active account's label
|
|
472
|
+
// Lazily auto-capture the active account's identity (id+nick) the first
|
|
473
|
+
// time it's unknown, then persist it to the sidecar so it shows for that
|
|
474
|
+
// account even when another is active. No manual step.
|
|
475
|
+
if (!act.id && !act.nick) {
|
|
476
|
+
const cdpPort = Number(process.env.OPENCLAW_BROWSER_CDP_PORT || process.env.CDP_PORT || '9222');
|
|
477
|
+
const ident = await readSandboxIdentity(process.env.NOVNC_HOST, cdpPort);
|
|
478
|
+
if (ident && (ident.id || ident.nick)) {
|
|
479
|
+
act.id = ident.id;
|
|
480
|
+
act.nick = ident.nick;
|
|
481
|
+
if (ident.nick) {
|
|
482
|
+
act.label = ident.nick;
|
|
483
|
+
profile.name = ident.nick;
|
|
484
|
+
}
|
|
485
|
+
const base = `http://${process.env.NOVNC_HOST}:${process.env.RECORD_CONTROL_PORT || '8091'}`;
|
|
486
|
+
fetch(`${base}/set-identity?dir=${encodeURIComponent(act.dir)}`, {
|
|
487
|
+
method: 'POST', headers: { 'Content-Type': 'application/json' },
|
|
488
|
+
body: JSON.stringify(ident), signal: AbortSignal.timeout(3000),
|
|
489
|
+
}).catch(() => { });
|
|
490
|
+
}
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
}
|
|
494
|
+
screens.push({ id: 'sandbox', type: 'sandbox', name: 'Browser', profile, ...(profiles ? { profiles } : {}) });
|
|
447
495
|
}
|
|
448
496
|
}
|
|
449
497
|
else {
|
|
@@ -486,6 +534,37 @@ export async function startGatewayMode(options) {
|
|
|
486
534
|
const files = await fileBrowser.listDirectory(payload.params.path ?? '.');
|
|
487
535
|
ack({ ok: true, result: files });
|
|
488
536
|
}
|
|
537
|
+
else if (payload.method === 'switch-profile') {
|
|
538
|
+
// Switch the sandbox browser to a different Chrome profile-dir (= logged-in account).
|
|
539
|
+
// Relays to the browser sidecar, which kills + relaunches Chromium under
|
|
540
|
+
// --profile-directory (the socat CDP proxy keeps :9222 stable, so the viewer
|
|
541
|
+
// reconnects on re-open). No dir => the sidecar creates the next free profile
|
|
542
|
+
// ("add account"). Container-mode bots only (host-mode browsers aren't wired).
|
|
543
|
+
const { dir, label } = (payload.params || {});
|
|
544
|
+
if (!(desktop.isInContainer && process.env.NOVNC_HOST)) {
|
|
545
|
+
ack({ ok: false, error: 'profile switching not available for this bot' });
|
|
546
|
+
}
|
|
547
|
+
else {
|
|
548
|
+
try {
|
|
549
|
+
const base = `http://${process.env.NOVNC_HOST}:${process.env.RECORD_CONTROL_PORT || '8091'}`;
|
|
550
|
+
const qs = new URLSearchParams();
|
|
551
|
+
if (dir)
|
|
552
|
+
qs.set('dir', dir);
|
|
553
|
+
if (label)
|
|
554
|
+
qs.set('label', label);
|
|
555
|
+
const res = await fetch(`${base}/switch-profile?${qs.toString()}`, { method: 'POST', signal: AbortSignal.timeout(30_000) });
|
|
556
|
+
if (!res.ok) {
|
|
557
|
+
ack({ ok: false, error: `switch failed (${res.status})` });
|
|
558
|
+
}
|
|
559
|
+
else {
|
|
560
|
+
ack({ ok: true, result: await res.json() });
|
|
561
|
+
}
|
|
562
|
+
}
|
|
563
|
+
catch (e) {
|
|
564
|
+
ack({ ok: false, error: e?.message || 'switch failed' });
|
|
565
|
+
}
|
|
566
|
+
}
|
|
567
|
+
}
|
|
489
568
|
else if (payload.method === 'sandbox-screen-open') {
|
|
490
569
|
// Open the bot computer view — Manus-style CDP screencast of the sandbox
|
|
491
570
|
// browser's Chromium (JPEG frames over the relay → the viewer's canvas).
|
|
@@ -598,8 +677,13 @@ export async function startGatewayMode(options) {
|
|
|
598
677
|
const expectE2E = !!supportsE2E && botPrivateKeysById.has(botId);
|
|
599
678
|
let e2eKey = null;
|
|
600
679
|
// Viewer control-panel overrides (null ⇒ use the transport-tier default).
|
|
601
|
-
//
|
|
680
|
+
// The "Image Quality" dial sends a Mbps bitrate (2/4/8/16/32 — same value
|
|
681
|
+
// the machine view uses as its H.264 ceiling): it drives the media-track
|
|
682
|
+
// encoder bitrate (userBitrateKbps) and, for the stateless JPEG fallback
|
|
683
|
+
// where bitrate is meaningless, a derived JPEG quality (userQuality).
|
|
684
|
+
// minInterval = ms between captures (frame-rate cap).
|
|
602
685
|
let userQuality = null;
|
|
686
|
+
let userBitrateKbps = null;
|
|
603
687
|
let userMinIntervalMs = null;
|
|
604
688
|
log?.info(`[gateway] sandbox-screen-open channelId=${channelId} botId=${botId} (cdp${supportsRtc ? '+rtc' : ''}${expectE2E ? '+e2e' : ''})`);
|
|
605
689
|
// Resolve the browser container's CDP host:port (the socat-proxied DevTools
|
|
@@ -719,15 +803,22 @@ export async function startGatewayMode(options) {
|
|
|
719
803
|
// latency stat permanently empty on the bot view).
|
|
720
804
|
else if (msg.type === 'ping' && typeof msg.ts === 'number')
|
|
721
805
|
sendToViewer(JSON.stringify({ type: 'pong', ts: msg.ts }));
|
|
722
|
-
// Control-panel overrides for the CDP capture. quality =
|
|
723
|
-
// frameRate = fps → min capture interval. They win over the tier
|
|
806
|
+
// Control-panel overrides for the CDP capture. quality = Mbps bitrate
|
|
807
|
+
// dial; frameRate = fps → min capture interval. They win over the tier
|
|
724
808
|
// default in getQuality/getMinIntervalMs below. (resolution stays a
|
|
725
809
|
// no-op — see cdp.resize: we capture the agent's native viewport.)
|
|
726
810
|
else if (msg.type === 'display-settings') {
|
|
727
811
|
if (msg.setting === 'quality') {
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
812
|
+
// value is Mbps (2/4/8/16/32). Drive the H.264 media-track bitrate
|
|
813
|
+
// directly, and live-retarget a running encoder. The same pick maps
|
|
814
|
+
// to a JPEG quality for the stateless fallback transport (bitrate is
|
|
815
|
+
// meaningless there) — monotonic 2→55 … 32→95.
|
|
816
|
+
const mbps = Number(msg.value);
|
|
817
|
+
if (isFinite(mbps) && mbps > 0) {
|
|
818
|
+
userBitrateKbps = Math.max(300, Math.min(40000, Math.round(mbps * 1000)));
|
|
819
|
+
userQuality = Math.max(40, Math.min(95, Math.round(45 + Math.log2(mbps) * 10)));
|
|
820
|
+
transcoder?.updateBitrate(userBitrateKbps);
|
|
821
|
+
}
|
|
731
822
|
}
|
|
732
823
|
else if (msg.setting === 'frameRate') {
|
|
733
824
|
const f = Number(msg.value);
|
|
@@ -777,7 +868,8 @@ export async function startGatewayMode(options) {
|
|
|
777
868
|
cmdPrefix: ffmpegCmd,
|
|
778
869
|
env: dockerEnvLocal,
|
|
779
870
|
fps: 25,
|
|
780
|
-
|
|
871
|
+
// Honor a quality pick made before the media track came up.
|
|
872
|
+
bitrateKbps: userBitrateKbps ?? 1200,
|
|
781
873
|
onAccessUnit: (au) => { rtc?.sendVideoFrame(au); },
|
|
782
874
|
onExit: () => { transcoder = null; transcoderDead = true; log?.warn(`[gateway] sandbox-screen: encoder gone channelId=${channelId} — JPEG fallback`); },
|
|
783
875
|
log: { info: (m) => log?.info(m), warn: (m) => log?.warn(m) },
|
|
@@ -1062,6 +1154,34 @@ export async function startGatewayMode(options) {
|
|
|
1062
1154
|
relayWs.on("close", () => cleanupFile('relay-ws-close'));
|
|
1063
1155
|
relayWs.on("error", (err) => cleanupFile(`relay-ws-error(${err.message})`));
|
|
1064
1156
|
ack({ ok: true });
|
|
1157
|
+
// ── Self-hosted addon provisioning (local mirror of clider-cloud) ───
|
|
1158
|
+
}
|
|
1159
|
+
else if (payload.method === 'addon-provision') {
|
|
1160
|
+
// Stand up the per-bot sandbox container for a self-hosted CONTAINER addon and report each
|
|
1161
|
+
// step back over THIS authenticated socket (gateway-provision-progress) — the server maps it
|
|
1162
|
+
// onto the same bot-provisioning FSM the app already renders. The ack carries the terminal
|
|
1163
|
+
// result + mapped ports.
|
|
1164
|
+
const provisionParams = payload.params;
|
|
1165
|
+
if (provisionParams.resourceClass !== 'browser-container' && provisionParams.resourceClass !== 'desktop-container') {
|
|
1166
|
+
ack({ ok: false, error: `addon-provision: unsupported resourceClass ${String(provisionParams.resourceClass)}` });
|
|
1167
|
+
return;
|
|
1168
|
+
}
|
|
1169
|
+
log?.info(`[gateway] addon-provision botId=${provisionParams.botId} addon=${provisionParams.addonKey} class=${provisionParams.resourceClass}`);
|
|
1170
|
+
const provisionResult = await provisionAddon(provisionParams, {
|
|
1171
|
+
stateDir,
|
|
1172
|
+
progress: (update) => { try {
|
|
1173
|
+
sock.emit('gateway-provision-progress', update);
|
|
1174
|
+
}
|
|
1175
|
+
catch { /* fire-and-forget */ } },
|
|
1176
|
+
log: { info: (m) => log?.info(m), warn: (m) => log?.warn(m) },
|
|
1177
|
+
});
|
|
1178
|
+
ack({ ok: true, result: provisionResult });
|
|
1179
|
+
}
|
|
1180
|
+
else if (payload.method === 'addon-deprovision') {
|
|
1181
|
+
const { botId: deprovBotId, addonKey: deprovAddonKey } = payload.params;
|
|
1182
|
+
log?.info(`[gateway] addon-deprovision botId=${deprovBotId} addon=${deprovAddonKey ?? 'all'}`);
|
|
1183
|
+
await deprovisionAddon({ botId: deprovBotId, addonKey: deprovAddonKey }, { log: { info: (m) => log?.info(m), warn: (m) => log?.warn(m) } });
|
|
1184
|
+
ack({ ok: true });
|
|
1065
1185
|
// ── Desktop container lifecycle ─────────────────────────────────────
|
|
1066
1186
|
}
|
|
1067
1187
|
else if (payload.method === 'desktop-container-create') {
|
package/dist/src/gateway.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../src/gateway.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,OAAO,MAAM,oBAAoB,CAAC;AACzC,OAAO,EAAE,EAAE,IAAI,SAAS,EAA+B,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,OAAO,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAsB,MAAM,uBAAuB,CAAC;AACvG,OAAO,EAAE,uBAAuB,EAA0B,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAuB,MAAM,wBAAwB,CAAC;AAChG,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACtH,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,cAAc,EAA2B,MAAM,oBAAoB,CAAC;AAG/G,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB,KAAK,UAAU,YAAY;IACzB,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,OAAO,CAAC,KAAK,CAAC;QACpB,WAAW,GAAG,IAAI,CAAC;IACrB,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,oBAAoB,GAAG,wBAAwB,CAAC;AACtD,MAAM,wBAAwB,GAAG,MAAM,CAAC;AACxC,MAAM,cAAc,GAAG,IAAI,CAAC;AAE5B,uEAAuE;AACvE,iFAAiF;AACjF,qFAAqF;AACrF,oFAAoF;AACpF,sEAAsE;AACtE,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;AAC9C,MAAM,qBAAqB,GAAa,EAAE,CAAC;AAE3C,SAAS,oBAAoB,CAAC,SAAiB;IAC7C,IAAI,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAC;IACrD,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACnC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtC,OAAO,qBAAqB,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,EAAG,CAAC;QAC9C,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AA4BD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,QAAgB;IAKjE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IAC1D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAmB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAChD,MAAM,MAAM,GAAG,MAAM,YAAY,EAAE,CAAC;YACpC,OAAO;gBACL,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC;gBAC9E,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC;aAC/E,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,2BAA2B;IAC7B,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,YAAY,EAAE,CAAC;IACpC,MAAM,OAAO,GAAG,MAAM,CAAC,kBAAkB,EAAE,CAAC;IAC5C,MAAM,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrF,MAAM,IAAI,GAAmB;QAC3B,EAAE;QACF,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC;QAC/E,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC;KACjF,CAAC;IACF,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,MAAM,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3D,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;AAC7E,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,eAAe,CAC5B,UAAkB,EAClB,SAAiB,EACjB,EAAU,EACV,SAAqB,EACrB,IAAY,EACZ,WAAoB;IAEpB,MAAM,MAAM,GAAG,MAAM,YAAY,EAAE,CAAC;IACpC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,cAAc,EAAE;QACnD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,SAAS,EAAE;SACrC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,EAAE;YACF,IAAI;YACJ,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC;YACvE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxC,CAAC;QACF,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA6B,CAAC;IAC5D,OAAO,IAAI,CAAC,YAAY,CAAC;AAC3B,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,uBAAuB,CACpC,UAAkB,EAClB,eAAuB,EACvB,EAAU,EACV,SAAqB,EACrB,IAAY,EACZ,WAAoB;IAEpB,MAAM,MAAM,GAAG,MAAM,YAAY,EAAE,CAAC;IACpC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,uBAAuB,EAAE;QAC5D,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,oBAAoB,EAAE,eAAe;SACtC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,EAAE;YACF,IAAI;YACJ,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC;YACvE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxC,CAAC;QACF,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,wCAAwC,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IACjF,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA6B,CAAC;IAC5D,OAAO,IAAI,CAAC,YAAY,CAAC;AAC3B,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,mBAAmB,CAChC,UAAkB,EAClB,SAAiB,EACjB,YAAoB,EACpB,SAAqB,EACrB,UAA+B;IAE/B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,gBAAgB,SAAS,OAAO,EAAE;QACrE,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,YAAY,EAAE,EAAE;QACpD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,6BAA6B,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,YAAY,EAAE,CAAC;IACpC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAkC,CAAC;IAErE,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAC7C,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC1F,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACtD,IAAI,CAAC,SAAS;YAAE,SAAS;QACzB,IAAI,CAAC;YACH,MAAM,GAAG,GAAuB,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;YAChF,QAAQ,CAAC,IAAI,CAAC;gBACZ,SAAS,EAAE,KAAK,CAAC,KAAK;gBACtB,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,aAAa,EAAE,GAAG,CAAC,aAAa;gBAChC,aAAa,EAAE,GAAG,CAAC,aAAa;gBAChC,UAAU;gBACV,WAAW,EAAE,mBAAmB,KAAK,CAAC,KAAK,EAAE;gBAC7C,GAAG,EAAE,sBAAsB,CAAC,UAAU,CAAC;gBACvC,WAAW,EAAE,GAAG,CAAC,WAAW;gBAC5B,KAAK,EAAE,KAAK,CAAC,aAAa,IAAI,SAAS;gBACvC,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,yBAAyB;QAC3B,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,oBAAoB,CACjC,UAAkB,EAClB,SAAiB,EACjB,YAAoB,EACpB,KAAa,EACb,WAA0B;IAE1B,MAAM,KAAK,CAAC,GAAG,UAAU,gBAAgB,SAAS,SAAS,KAAK,EAAE,EAAE;QAClE,MAAM,EAAE,OAAO;QACf,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,YAAY,EAAE;SACxC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;QACrC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,wBAAwB,CACrC,UAAkB,EAClB,SAAiB,EACjB,YAAoB,EACpB,WAAmB;IAEnB,MAAM,KAAK,CAAC,GAAG,UAAU,gBAAgB,SAAS,EAAE,EAAE;QACpD,MAAM,EAAE,OAAO;QACf,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,YAAY,EAAE;SACxC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;QACrC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,OAOtC;IACC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAC1F,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,oBAAoB,CAAC;IACjE,MAAM,eAAe,GAAG,UAAU,CAAC,eAAe,CAAC;IACnD,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACvC,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,IAAI,kBAAkB,CAAC;IACjE,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAE9E,IAAI,WAAW,CAAC,OAAO;QAAE,OAAO;IAEhC,2BAA2B;IAC3B,MAAM,OAAO,GAAG,MAAM,4BAA4B,CAAC,QAAQ,CAAC,CAAC;IAC7D,GAAG,EAAE,IAAI,CAAC,gBAAgB,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAExC,mGAAmG;IACnG,qGAAqG;IACrG,IAAI,YAAoB,CAAC;IACzB,IAAI,CAAC;QACH,IAAI,eAAe,EAAE,CAAC;YACpB,YAAY,GAAG,MAAM,uBAAuB,CAC1C,UAAU,EACV,eAAe,EACf,OAAO,CAAC,EAAE,EACV,OAAO,CAAC,SAAS,EACjB,WAAW,EACX,WAAW,CACZ,CAAC;YACF,GAAG,EAAE,IAAI,CAAC,iDAAiD,CAAC,CAAC;QAC/D,CAAC;aAAM,IAAI,SAAS,EAAE,CAAC;YACrB,YAAY,GAAG,MAAM,eAAe,CAClC,UAAU,EACV,SAAS,EACT,OAAO,CAAC,EAAE,EACV,OAAO,CAAC,SAAS,EACjB,WAAW,EACX,WAAW,CACZ,CAAC;YACF,GAAG,EAAE,IAAI,CAAC,mCAAmC,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAC;QACrG,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,EAAE,IAAI,CAAC,kCAAkC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3D,MAAM,GAAG,CAAC;IACZ,CAAC;IAED,8CAA8C;IAC9C,IAAI,WAAW,EAAE,CAAC;QAChB,IAAI,CAAC;YACH,MAAM,wBAAwB,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;QACpF,CAAC;QAAC,MAAM,CAAC;YACP,YAAY;QACd,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,MAAM,eAAe,GAAG,UAAU,CAAC,eAAe,CAAC;IACnD,IAAI,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,8EAA8E;IAC9E,2EAA2E;IAC3E,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAsB,CAAC;IACzD,MAAM,YAAY,GAAG,KAAK,EAAE,QAAiC,EAAE,EAAE;QAC/D,MAAM,MAAM,GAAG,MAAM,YAAY,EAAE,CAAC;QACpC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAC3B,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,IAAI,CAAC;gBAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,EAAE,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,CAAC;QACnJ,CAAC;IACH,CAAC,CAAC;IACF,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CACxC,UAAU,EACV,OAAO,CAAC,EAAE,EACV,YAAY,EACZ,OAAO,CAAC,SAAS,EACjB,UAAU,CACX,CAAC;QACF,GAAG,EAAE,IAAI,CAAC,oBAAoB,QAAQ,CAAC,MAAM,SAAS,CAAC,CAAC;QACxD,aAAa,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QAC1D,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC7B,aAAa,CAAC,QAAQ,CAAC,CAAC;QAExB,sCAAsC;QACtC,IAAI,eAAe,EAAE,CAAC;YACpB,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;gBAClC,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;gBACxC,IAAI,QAAQ,EAAE,CAAC;oBACb,IAAI,CAAC;wBACH,MAAM,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;wBAClF,GAAG,EAAE,IAAI,CAAC,wCAAwC,KAAK,EAAE,CAAC,CAAC;oBAC7D,CAAC;oBAAC,MAAM,CAAC;wBACP,YAAY;oBACd,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,EAAE,IAAI,CAAC,uCAAuC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,WAAW,CAAC,OAAO;QAAE,OAAO;IAEhC,yEAAyE;IAEzE,4CAA4C;IAC5C,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;QACtB,IAAI,WAAW,CAAC,OAAO;YAAE,OAAO;QAChC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CACxC,UAAU,EACV,OAAO,CAAC,EAAE,EACV,YAAY,EACZ,OAAO,CAAC,SAAS,EACjB,UAAU,CACX,CAAC;YACF,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5D,MAAM,OAAO,GACX,SAAS,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI;gBACrC,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACnD,CAAC,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACtD,IAAI,OAAO,EAAE,CAAC;gBACZ,GAAG,EAAE,IAAI,CACP,+BAA+B,aAAa,CAAC,IAAI,OAAO,SAAS,CAAC,IAAI,cAAc,CACrF,CAAC;gBACF,aAAa,GAAG,SAAS,CAAC;gBAC1B,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;gBAC7B,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,EAAE,IAAI,CAAC,yBAAyB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpD,CAAC;IACH,CAAC,CAAC;IAEF,8BAA8B;IAC9B,IAAI,SAAS,GAAyC,IAAI,CAAC;IAC3D,IAAI,aAAa,GAAG,KAAK,CAAC;IAE1B,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,aAAa,IAAI,WAAW,CAAC,OAAO;YAAE,OAAO;QACjD,aAAa,GAAG,IAAI,CAAC;QACrB,GAAG,EAAE,IAAI,CAAC,qCAAqC,CAAC,CAAC;QACjD,MAAM,YAAY,GAAG,GAAG,EAAE;YACxB,IAAI,WAAW,CAAC,OAAO,IAAI,CAAC,aAAa;gBAAE,OAAO;YAClD,SAAS,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE;gBAChC,MAAM,IAAI,EAAE,CAAC;gBACb,YAAY,EAAE,CAAC;YACjB,CAAC,EAAE,wBAAwB,CAAC,CAAC;QAC/B,CAAC,CAAC;QACF,YAAY,EAAE,CAAC;IACjB,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,IAAI,CAAC,aAAa;YAAE,OAAO;QAC3B,aAAa,GAAG,KAAK,CAAC;QACtB,IAAI,SAAS,EAAE,CAAC;YACd,YAAY,CAAC,SAAS,CAAC,CAAC;YACxB,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;IACH,CAAC,CAAC;IAEF,2CAA2C;IAC3C,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAChD,IAAI,MAAM,GAAwB,IAAI,CAAC;IAEvC,IAAI,CAAC;QACH,MAAM,GAAG,SAAS,CAAC,UAAU,EAAE;YAC7B,IAAI,EAAE,aAAa;YACnB,UAAU,EAAE,CAAC,WAAW,CAAC;YACzB,IAAI,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;YAC7B,YAAY,EAAE,IAAI;YAClB,iBAAiB,EAAE,IAAI;YACvB,oBAAoB,EAAE,MAAM;SAC7B,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;YACxB,GAAG,EAAE,IAAI,CAAC,2CAA2C,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;YACnE,WAAW,EAAE,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE;YACjC,GAAG,EAAE,IAAI,CAAC,qCAAqC,MAAM,EAAE,CAAC,CAAC;YACzD,YAAY,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,GAAG,EAAE,EAAE;YACjC,GAAG,EAAE,IAAI,CAAC,yCAAyC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClE,YAAY,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,kEAAkE;QAClE,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAgJ,CAAC;QAElL,sDAAsD;QACtD,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAwE,CAAC;QAE5G,2DAA2D;QAC3D,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkC,CAAC;QAElE,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAoH,EAAE,EAAE;YAC3I,MAAM,IAAI,GAAG,OAAO,EAAE,IAAI,CAAC;YAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;gBAAE,OAAO;YAErB,IAAI,IAAI,CAAC,CAAC,KAAK,sBAAsB,EAAE,CAAC;gBACtC,gCAAgC;gBAChC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACzB,CAAC;iBAAM,IAAI,IAAI,CAAC,CAAC,KAAK,iBAAiB,IAAI,cAAc,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACxF,2CAA2C;gBAC3C,MAAM,cAAc,GAAG,IAAI,CAAC,OAA+B,CAAC;gBAC5D,MAAM,SAAS,GAAI,cAAsB,EAAE,OAAO,EAAE,EAAE,CAAC;gBACvD,IAAI,SAAS,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;oBAClD,OAAO,CAAC,0EAA0E;gBACpF,CAAC;gBACD,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;YAC7C,CAAC;YACD,iFAAiF;QACnF,CAAC,CAAC,CAAC;QAEH,8CAA8C;QAC9C,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACrD,WAAW,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAErC,wEAAwE;QACxE,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,wCAAwC;QAC7D,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,KAAK,EAC5B,OAAwD,EACxD,GAAsE,EACtE,EAAE;YACF,IAAI,CAAC;gBACH,IAAI,OAAO,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;oBACtC,MAAM,OAAO,GAA+I,EAAE,CAAC;oBAE/J,4EAA4E;oBAC5E,oFAAoF;oBACpF,mFAAmF;oBACnF,mFAAmF;oBACnF,kFAAkF;oBAClF,qEAAqE;oBACrE,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,CAAC;wBAC5B,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,IAAI;wBAClF,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;4BAC5B,CAAC,CAAC,UAAU,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,MAAM,CAAC,EAAE;4BACvH,CAAC,CAAC,IAAI;wBACR,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,8BAA8B,IAAI,4BAA4B;qBACxF,CAAC,CAAC;oBAEH,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;wBAC1B,iFAAiF;wBACjF,kFAAkF;wBAClF,2EAA2E;wBAC3E,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;4BAC3B,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;wBAC/F,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,6CAA6C;wBAC7C,IAAI,CAAC;4BACH,MAAM,cAAc,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,iEAAiE,EAAE,CAAC;4BACtI,IAAI,WAAW,GAAG,EAAE,CAAC;4BACrB,IAAI,CAAC;gCACH,WAAW,GAAG,QAAQ,CACpB,mEAAmE,EACnE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,CACvC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;4BACtB,CAAC;4BAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;4BACxB,IAAI,CAAC,WAAW,EAAE,CAAC;gCACjB,IAAI,CAAC;oCACH,WAAW,GAAG,QAAQ,CACpB,wDAAwD,EACxD,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,CACvC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;gCACtB,CAAC;gCAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;4BAC1B,CAAC;4BACD,sFAAsF;4BACtF,IAAI,CAAC,WAAW,EAAE,CAAC;gCACjB,IAAI,CAAC;oCACH,WAAW,GAAG,QAAQ,CACpB,mFAAmF,EACnF,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,CACvC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;gCACtB,CAAC;gCAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;4BAC1B,CAAC;4BACD,IAAI,WAAW,EAAE,CAAC;gCAChB,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;4BACvG,CAAC;wBACH,CAAC;wBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;wBAExB,6BAA6B;wBAC7B,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;4BACzC,IAAI,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gCACxD,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;4BAC5F,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;gBAEzC,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;oBAC3C,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;oBAC1E,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBACnC,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,qBAAqB,EAAE,CAAC;oBACpD,yEAAyE;oBACzE,yEAAyE;oBACzE,8DAA8D;oBAC9D,wEAAwE;oBACxE,0EAA0E;oBAC1E,wEAAwE;oBACxE,gEAAgE;oBAChE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,MAGtF,CAAC;oBAEF,6FAA6F;oBAC7F,uFAAuF;oBACvF,0FAA0F;oBAC1F,wFAAwF;oBACxF,0FAA0F;oBAC1F,qFAAqF;oBACrF,IAAI,UAAU,EAAE,CAAC;wBACf,MAAM,YAAY,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,iEAAiE,EAAE,CAAC;wBACpI,IAAI,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,WAAW,CAAC;wBACtD,IAAI,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;wBAChF,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;4BAC3B,+EAA+E;4BAC/E,IAAI,GAAG,GAAG,EAAE,CAAC;4BACb,KAAK,MAAM,GAAG,IAAI;gCAChB,4CAA4C;gCAC5C,iCAAiC;gCACjC,4DAA4D;6BAC7D,EAAE,CAAC;gCACF,IAAI,CAAC;oCAAC,GAAG,GAAG,QAAQ,CAAC,gBAAgB,GAAG,wBAAwB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gCAAC,CAAC;gCAAC,MAAM,CAAC;oCAAC,GAAG,GAAG,EAAE,CAAC;gCAAC,CAAC;gCACrK,IAAI,GAAG;oCAAE,MAAM;4BACjB,CAAC;4BACD,IAAI,GAAG,EAAE,CAAC;gCACR,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gCACpD,IAAI,MAAM,EAAE,CAAC;oCAAC,SAAS,GAAG,WAAW,CAAC;oCAAC,SAAS,GAAG,MAAM,CAAC;gCAAC,CAAC;4BAC9D,CAAC;wBACH,CAAC;wBACD,GAAG,EAAE,IAAI,CAAC,2CAA2C,SAAS,UAAU,KAAK,SAAS,SAAS,IAAI,SAAS,GAAG,CAAC,CAAC;wBAEjH,IAAI,WAAmC,CAAC;wBACxC,IAAI,UAAkC,CAAC;wBACvC,IAAI,CAAC;4BACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;4BACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC;4BAC5C,WAAW,GAAG,IAAK,MAAc,CAAC,QAAQ,SAAS,IAAI,SAAS,aAAa,CAAC,CAAC;4BAC/E,WAAW,CAAC,UAAU,GAAG,aAAa,CAAC;4BACvC,UAAU,GAAG,IAAK,MAAc,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,SAAS,aAAa,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;wBACjJ,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,uBAAuB,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;4BAChE,OAAO;wBACT,CAAC;wBACD,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;wBACjF,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,EAAE;4BACpC,MAAM,CAAC,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;4BAC3C,IAAI,CAAC,CAAC;gCAAE,OAAO;4BACf,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;4BACpC,IAAI,CAAC;gCAAC,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,KAAK,CAAC;oCAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;4BAAC,CAAC;4BAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;4BACjG,IAAI,CAAC;gCAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,KAAK,CAAC;oCAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;4BAAC,CAAC;4BAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;4BACjF,GAAG,EAAE,IAAI,CAAC,mDAAmD,SAAS,WAAW,MAAM,EAAE,CAAC,CAAC;wBAC7F,CAAC,CAAC;wBACF,MAAM,YAAY,GAAa,EAAE,CAAC;wBAClC,IAAI,YAAY,GAAG,KAAK,CAAC;wBACzB,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,0DAA0D,SAAS,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC;wBAC5H,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;4BACzB,YAAY,GAAG,IAAI,CAAC;4BACpB,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;gCAAC,IAAI,UAAU,CAAC,UAAU,KAAK,CAAC;oCAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;4BAAC,CAAC;4BACtF,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;wBAC1B,CAAC,CAAC,CAAC;wBACH,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAA0B,EAAE,EAAE;4BACvD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BAC7D,IAAI,YAAY,IAAI,UAAU,CAAC,UAAU,KAAK,CAAC;gCAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;gCACjE,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBAC9B,CAAC,CAAC,CAAC;wBACH,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAA0B,EAAE,EAAE;4BACtD,IAAI,WAAW,CAAC,UAAU,KAAK,CAAC;gCAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBACvG,CAAC,CAAC,CAAC;wBACH,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;wBAC7D,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE,CAAC,UAAU,CAAC,mBAAmB,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;wBACvF,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC;wBAC3D,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE,CAAC,UAAU,CAAC,kBAAkB,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;wBACrF,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;wBAClB,OAAO;oBACT,CAAC;oBACD,0EAA0E;oBAC1E,wEAAwE;oBACxE,mEAAmE;oBACnE,sEAAsE;oBACtE,MAAM,SAAS,GAAG,CAAC,CAAC,WAAW,IAAI,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBACjE,IAAI,MAAM,GAAkB,IAAI,CAAC;oBACjC,0EAA0E;oBAC1E,4EAA4E;oBAC5E,IAAI,WAAW,GAAkB,IAAI,CAAC;oBACtC,IAAI,iBAAiB,GAAkB,IAAI,CAAC;oBAC5C,GAAG,EAAE,IAAI,CAAC,2CAA2C,SAAS,UAAU,KAAK,QAAQ,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;oBAE7I,4EAA4E;oBAC5E,4EAA4E;oBAC5E,IAAI,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,WAAW,CAAC;oBACpD,IAAI,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC;oBAC9F,MAAM,cAAc,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,iEAAiE,EAAE,CAAC;oBACtI,IAAI,kBAAkB,GAAG,EAAE,CAAC;oBAC5B,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;wBAC3B,IAAI,CAAC;4BACH,KAAK,MAAM,GAAG,IAAI;gCAChB,4CAA4C;gCAC5C,iCAAiC;gCACjC,4DAA4D;6BAC7D,EAAE,CAAC;gCACF,IAAI,CAAC;oCAAC,kBAAkB,GAAG,QAAQ,CAAC,gBAAgB,GAAG,wBAAwB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gCAAC,CAAC;gCAAC,MAAM,CAAC;oCAAC,kBAAkB,GAAG,EAAE,CAAC;gCAAC,CAAC;gCACrM,IAAI,kBAAkB;oCAAE,MAAM;4BAChC,CAAC;4BACD,IAAI,kBAAkB,EAAE,CAAC;gCACvB,MAAM,MAAM,GAAG,QAAQ,CAAC,eAAe,kBAAkB,mBAAmB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;gCACxI,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,IAAI,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;gCACrE,IAAI,MAAM;oCAAE,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;4BACvC,CAAC;wBACH,CAAC;wBAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;oBAChC,CAAC;oBAED,sEAAsE;oBACtE,wEAAwE;oBACxE,oEAAoE;oBACpE,2DAA2D;oBAC3D,MAAM,gBAAgB,GAAe,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAClD,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,kBAAkB,EAAE,CAAC;wBACjD,gBAAgB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC,CAAC;oBAChF,CAAC;oBACD,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;oBACtE,IAAI,SAAS;wBAAE,GAAG,EAAE,IAAI,CAAC,sDAAsD,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBAEhG,wCAAwC;oBACxC,MAAM,QAAQ,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,SAAS,aAAa,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;oBAC9H,IAAI,OAA+B,CAAC;oBACpC,IAAI,CAAC;wBACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;wBACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC;wBAC5C,OAAO,GAAG,IAAK,MAAc,CAAC,QAAQ,CAAC,CAAC;oBAC1C,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,GAAG,EAAE,IAAI,CAAC,wDAAwD,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACjF,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,+BAA+B,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;wBACxE,OAAO;oBACT,CAAC;oBAED,MAAM,KAAK,GAAyI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC;oBAC1M,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;oBAExC,IAAI,SAAS,GAAG,KAAK,CAAC;oBACtB,MAAM,WAAW,GAAa,EAAE,CAAC;oBAEjC,yEAAyE;oBACzE,wEAAwE;oBACxE,6EAA6E;oBAC7E,MAAM,gBAAgB,GAAG,CAAC,IAAqB,EAAE,QAAiB,EAAE,EAAE;wBACpE,IAAI,QAAQ,EAAE,CAAC;4BACb,MAAM,GAAG,GAAG,IAAc,CAAC;4BAC3B,uEAAuE;4BACvE,4DAA4D;4BAC5D,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,gBAAgB,EAAE,CAAC;gCAClD,IAAI,CAAC,MAAM;oCAAE,OAAO;gCACpB,MAAM,EAAE,GAAG,oBAAoB,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gCACzD,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;oCAAE,OAAO;gCACjC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;oCAAE,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;qCACzD,CAAC;oCAAC,IAAI,CAAC;wCAAC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;wCAAC,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO;4CAAE,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;6CAAM,IAAI,CAAC,CAAC,IAAI,KAAK,eAAe;4CAAE,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;oCAAC,CAAC;oCAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;gCAAC,CAAC;gCACtO,OAAO;4BACT,CAAC;4BACD,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC;4BAClC,OAAO;wBACT,CAAC;wBACD,IAAI,CAAC;4BACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;4BACxC,uEAAuE;4BACvE,oEAAoE;4BACpE,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gCAC7D,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gCAC3C,IAAI,IAAI,EAAE,CAAC;oCACT,KAAK,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;wCAChD,IAAI,CAAC,EAAE,CAAC;4CAAC,MAAM,GAAG,CAAC,CAAC;4CAAC,GAAG,EAAE,IAAI,CAAC,2DAA2D,SAAS,EAAE,CAAC,CAAC;wCAAC,CAAC;;4CACpG,GAAG,EAAE,IAAI,CAAC,6DAA6D,SAAS,EAAE,CAAC,CAAC;oCAC3F,CAAC,CAAC,CAAC;gCACL,CAAC;gCACD,OAAO;4BACT,CAAC;4BACD,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO;gCAAE,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;iCACjD,IAAI,GAAG,CAAC,IAAI,KAAK,eAAe;gCAAE,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;4BAChG,sEAAsE;4BACtE,gEAAgE;4BAChE,mDAAmD;iCAC9C,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ;gCAAE,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;4BACvH,qEAAqE;4BACrE,iEAAiE;4BACjE,oEAAoE;4BACpE,mEAAmE;iCAC9D,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gCACzC,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oCAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oCAAC,IAAI,QAAQ,CAAC,CAAC,CAAC;wCAAE,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC;qCACpI,IAAI,GAAG,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;oCAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oCAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;wCAAE,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC;4BACvK,CAAC;wBACH,CAAC;wBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;oBAC1B,CAAC,CAAC;oBACF,IAAI,GAAG,GAA6B,IAAI,CAAC;oBACzC,uEAAuE;oBACvE,IAAI,UAAU,GAA0B,IAAI,CAAC;oBAC7C,IAAI,cAAc,GAAG,KAAK,CAAC,CAAC,mDAAmD;oBAC/E,MAAM,cAAc,GAAG,GAAG,EAAE,GAAG,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC;wBAAC,CAAC,EAAE,KAAK,EAAE,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;oBACrH,IAAI,WAAW,EAAE,CAAC;wBAChB,qEAAqE;wBACrE,kEAAkE;wBAClE,gEAAgE;wBAChE,MAAM,SAAS,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;wBAC3F,GAAG,EAAE,IAAI,CAAC,mDAAmD,SAAS,KAAK,UAAU,EAAE,MAAM,IAAI,CAAC,iBAAiB,SAAS,QAAQ,CAAC,CAAC;wBACtI,GAAG,GAAG,uBAAuB,CAAC;4BAC5B,UAAU;4BACV,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;gCACnB,IAAI,SAAS,IAAI,OAAO,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;oCAC1C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oCACnB,mEAAmE;oCACnE,sDAAsD;oCACtD,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;wCAAE,GAAG,EAAE,IAAI,CAAC,8CAA8C,IAAI,CAAC,MAAM,eAAe,OAAO,CAAC,cAAc,GAAG,CAAC,CAAC;gCAClJ,CAAC;qCAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;oCACzC,GAAG,EAAE,IAAI,CAAC,2DAA2D,SAAS,eAAe,OAAO,CAAC,UAAU,GAAG,CAAC,CAAC;gCACtH,CAAC;4BACH,CAAC;4BACD,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,IAAI,KAAK,QAAQ,CAAC;4BAClE,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,8DAA8D,SAAS,oCAAoC,CAAC;4BACtI,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,kDAAkD,SAAS,yBAAyB,CAAC;4BAC/G,WAAW,EAAE,CAAC,CAAC,SAAS;4BACxB,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE;gCAC5B,IAAI,KAAK,IAAI,SAAS,IAAI,CAAC,UAAU,IAAI,CAAC,cAAc,EAAE,CAAC;oCACzD,GAAG,EAAE,IAAI,CAAC,4DAA4D,SAAS,qBAAqB,CAAC,CAAC;oCACtG,UAAU,GAAG,oBAAoB,CAAC;wCAChC,SAAS,EAAE,SAAS;wCACpB,GAAG,EAAE,cAAc;wCACnB,GAAG,EAAE,EAAE;wCACP,WAAW,EAAE,IAAI;wCACjB,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,GAAG,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;wCAClD,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,oDAAoD,SAAS,kBAAkB,CAAC,CAAC,CAAC,CAAC;wCACvJ,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE;qCAC9D,CAAC,CAAC;gCACL,CAAC;qCAAM,IAAI,CAAC,KAAK,EAAE,CAAC;oCAClB,cAAc,EAAE,CAAC;gCACnB,CAAC;4BACH,CAAC;4BACD,mEAAmE;4BACnE,gEAAgE;4BAChE,iBAAiB,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE;4BACpD,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE;yBAC9D,CAAC,CAAC;oBACL,CAAC;oBAED,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,EAAE;wBACvC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC;4BAAE,OAAO;wBAC9C,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;wBACpC,cAAc,EAAE,CAAC;wBACjB,qEAAqE;wBACrE,wDAAwD;wBACxD,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;wBAClD,KAAK,CAAC,GAAG,GAAG,SAAS,CAAC;wBACtB,IAAI,CAAC;4BAAC,GAAG,EAAE,KAAK,EAAE,CAAC;wBAAC,CAAC;wBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;wBAC5C,IAAI,CAAC;4BAAC,IAAI,OAAO,CAAC,UAAU,KAAK,CAAC,CAAC,YAAY;gCAAE,OAAO,CAAC,KAAK,EAAE,CAAC;wBAAC,CAAC;wBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;wBAC1F,GAAG,EAAE,IAAI,CAAC,8CAA8C,SAAS,WAAW,MAAM,EAAE,CAAC,CAAC;oBACxF,CAAC,CAAC;oBAEF,uEAAuE;oBACvE,yEAAyE;oBACzE,wEAAwE;oBACxE,oEAAoE;oBACpE,qEAAqE;oBACrE,4CAA4C;oBAC5C,EAAE;oBACF,yEAAyE;oBACzE,0EAA0E;oBAC1E,iEAAiE;oBACjE,8DAA8D;oBAC9D,yEAAyE;oBACzE,mEAAmE;oBACnE,MAAM,sBAAsB,GAAG,EAAE,GAAG,IAAI,CAAC;oBACzC,MAAM,YAAY,GAAG,CAAC,IAAqB,EAAE,EAAE;wBAC7C,IAAI,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC;4BACpB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,iBAAiB,EAAE,GAAG,sBAAsB;gCAAE,OAAO;4BACzF,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;4BACvB,OAAO;wBACT,CAAC;wBACD,IAAI,SAAS,IAAI,OAAO,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC;4BACrD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,cAAc,GAAG,sBAAsB;gCAAE,OAAO;4BACxF,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACrB,CAAC;6BAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;4BACpC,kEAAkE;4BAClE,iEAAiE;4BACjE,iEAAiE;4BACjE,oEAAoE;4BACpE,kEAAkE;4BAClE,oBAAoB;4BACpB,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;4BACvB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACzB,CAAC;oBACH,CAAC,CAAC;oBAEF,wEAAwE;oBACxE,wDAAwD;oBACxD,oBAAoB,CAAC;wBACnB,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,OAAO;wBACb,aAAa,EAAE,EAAE;wBACjB,OAAO,EAAE,EAAE;wBACX,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE;qBAC9D,EAAE,SAAS,EAAE;wBACZ,wEAAwE;wBACxE,uEAAuE;wBACvE,yEAAyE;wBACzE,mEAAmE;wBACnE,yEAAyE;wBACzE,wEAAwE;wBACxE,sEAAsE;wBACtE,uEAAuE;wBACvE,iEAAiE;wBACjE,yEAAyE;wBACzE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC,WAAW,IAAI,CAAC,UAAU,IAAI,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBACvG,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC,iBAAiB,IAAI,CAAC,UAAU,IAAI,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBACnH,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;4BAChB,oEAAoE;4BACpE,kDAAkD;4BAClD,IAAI,UAAU,IAAI,GAAG,EAAE,YAAY,EAAE,EAAE,CAAC;gCAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gCAAC,OAAO;4BAAC,CAAC;4BACzE,gEAAgE;4BAChE,mEAAmE;4BACnE,oEAAoE;4BACpE,sBAAsB;4BACtB,IAAI,SAAS,EAAE,CAAC;gCAAC,IAAI,CAAC,MAAM;oCAAE,OAAO;gCAAC,YAAY,CAAC,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;gCAAC,OAAO;4BAAC,CAAC;4BACjG,YAAY,CAAC,IAAI,CAAC,CAAC;wBACrB,CAAC;wBACD,uEAAuE;wBACvE,uEAAuE;wBACvE,mEAAmE;wBACnE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;4BAC/B,MAAM,GAAG,GAA4B,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;4BAC9D,IAAI,KAAK;gCAAE,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC;4BAC5B,IAAI,KAAK;gCAAE,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC;4BAC7B,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;wBACpC,CAAC;wBACD,uEAAuE;wBACvE,oEAAoE;wBACpE,wEAAwE;wBACxE,oEAAoE;wBACpE,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE;4BACpB,IAAI,SAAS,EAAE,CAAC;gCACd,IAAI,CAAC,MAAM;oCAAE,OAAO;gCACpB,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;4BACxI,CAAC;iCAAM,CAAC;gCACN,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;4BAC5D,CAAC;wBACH,CAAC;wBACD,eAAe,EAAE,GAAG,EAAE;4BACpB,IAAI,UAAU,IAAI,GAAG,EAAE,YAAY,EAAE;gCAAE,OAAO,CAAC,CAAC,CAAC,2CAA2C;4BAC5F,OAAO,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC9F,CAAC;qBACF,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;wBAClB,IAAI,CAAC,OAAO,EAAE,CAAC;4BAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;4BAAC,OAAO;wBAAC,CAAC;wBAC3D,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;4BAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;4BAAC,OAAO;wBAAC,CAAC,CAAC,qBAAqB;wBAC3H,KAAK,CAAC,GAAG,GAAG,OAAO,CAAC;wBACpB,GAAG,EAAE,IAAI,CAAC,+DAA+D,SAAS,KAAK,OAAO,IAAI,OAAO,GAAG,CAAC,CAAC;oBAChH,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,IAAI,CAAC,4CAA4C,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAEzH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;wBACtB,IAAI,CAAC;4BAAE,OAA0E,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC;wBAAC,CAAC;wBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;wBACvI,GAAG,EAAE,IAAI,CAAC,0DAA0D,SAAS,EAAE,CAAC,CAAC;wBACjF,SAAS,GAAG,IAAI,CAAC;wBACjB,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;4BAAC,IAAI,OAAO,CAAC,UAAU,KAAK,CAAC;gCAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBAAC,CAAC;wBAC/E,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;wBACvB,IAAI,GAAG,EAAE,CAAC;4BACR,sEAAsE;4BACtE,oEAAoE;4BACpE,wCAAwC;4BACxC,MAAM,QAAQ,GAAG,GAAG,EAAE,GAAG,IAAI,OAAO,CAAC,UAAU,KAAK,CAAC,IAAI,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC;gCAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BAClJ,QAAQ,EAAE,CAAC;4BACX,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;wBAC5B,CAAC;oBACH,CAAC,CAAC,CAAC;oBAEH,qEAAqE;oBACrE,2EAA2E;oBAC3E,mCAAmC;oBACnC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAA0B,EAAE,QAAiB,EAAE,EAAE;wBACtE,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC7D,IAAI,CAAC,QAAQ,IAAI,GAAG,EAAE,CAAC;4BACrB,IAAI,CAAC;gCACH,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC;gCAC3C,IAAI,CAAC,KAAK,WAAW,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;oCAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;oCAAC,OAAO;gCAAC,CAAC;4BAC5F,CAAC;4BAAC,MAAM,CAAC,CAAC,oCAAoC,CAAC,CAAC;wBAClD,CAAC;wBACD,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC;oBAC9D,CAAC,CAAC,CAAC;oBACH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC;oBAC3D,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE,CAAC,aAAa,CAAC,kBAAkB,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;oBAErF,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;gBACpB,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,yBAAyB,EAAE,CAAC;oBACxD,mEAAmE;oBACnE,IAAI,QAAQ,GAAG,EAAE,CAAC;oBAClB,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;wBAC1B,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,EAAE,CAAC;oBAC3F,CAAC;;wBAAM,IAAI,CAAC;4BACV,MAAM,cAAc,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,iEAAiE,EAAE,CAAC;4BACtI,IAAI,WAAW,GAAG,EAAE,CAAC;4BACrB,IAAI,CAAC;gCACH,WAAW,GAAG,QAAQ,CACpB,mEAAmE,EACnE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,CACvC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;4BACtB,CAAC;4BAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;4BACxB,IAAI,CAAC,WAAW,EAAE,CAAC;gCACjB,IAAI,CAAC;oCACH,WAAW,GAAG,QAAQ,CACpB,wDAAwD,EACxD,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,CACvC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;gCACtB,CAAC;gCAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;4BAC1B,CAAC;4BACD,IAAI,WAAW,EAAE,CAAC;gCAChB,MAAM,SAAS,GAAG,QAAQ,CACxB,kBAAkB,WAAW,iDAAiD,EAC9E,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,CACvC,CAAC,QAAQ,EAAE,CAAC;gCACb,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oCACzC,IAAI,IAAI,CAAC,UAAU,CAAC,kCAAkC,CAAC,EAAE,CAAC;wCACxD,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,kCAAkC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;wCACxE,MAAM;oCACR,CAAC;gCACH,CAAC;4BACH,CAAC;wBACH,CAAC;wBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;oBACxB,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;gBAE1C,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;oBAClD,qEAAqE;oBACrE,oEAAoE;oBACpE,sDAAsD;oBACtD,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,MAAkD,CAAC;oBAC3F,GAAG,EAAE,IAAI,CAAC,yCAAyC,SAAS,aAAa,QAAQ,IAAI,SAAS,EAAE,CAAC,CAAC;oBAElG,MAAM,OAAO,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;oBACnD,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;wBACnD,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,EAAE,CAAC,CAAC;wBACxD,OAAO;oBACT,CAAC;oBAED,MAAM,YAAY,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,SAAS,aAAa,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;oBAClI,IAAI,OAA+B,CAAC;oBACpC,IAAI,CAAC;wBACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;wBACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC;wBAC5C,OAAO,GAAG,IAAK,MAAc,CAAC,YAAY,CAAC,CAAC;wBAC5C,OAAO,CAAC,UAAU,GAAG,YAAY,CAAC;oBACpC,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,GAAG,EAAE,IAAI,CAAC,sDAAsD,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBAC/E,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,+BAA+B,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;wBACxE,OAAO;oBACT,CAAC;oBAED,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;oBAExC,MAAM,IAAI,GAAG,CAAC,IAAqB,EAAE,EAAE;wBACrC,IAAI,OAAO,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU;4BAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC9D,CAAC,CAAC;oBAEF,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,EAAE;wBACrC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC;4BAAE,OAAO;wBAC5C,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;wBAClC,IAAI,CAAC;4BAAC,IAAI,OAAO,CAAC,UAAU,KAAK,CAAC,CAAC,YAAY;gCAAE,OAAO,CAAC,KAAK,EAAE,CAAC;wBAAC,CAAC;wBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;wBAC1F,GAAG,EAAE,IAAI,CAAC,4CAA4C,SAAS,WAAW,MAAM,EAAE,CAAC,CAAC;oBACtF,CAAC,CAAC;oBAEF,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;wBACtB,GAAG,EAAE,IAAI,CAAC,wDAAwD,SAAS,cAAc,OAAO,CAAC,WAAW,IAAI,OAAO,EAAE,CAAC,CAAC;oBAC7H,CAAC,CAAC,CAAC;oBACH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAY,EAAE,QAAiB,EAAE,EAAE;wBACxD,IAAI,CAAC;4BACH,wBAAwB,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;wBACtG,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,GAAG,EAAE,IAAI,CAAC,0CAA0C,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACrE,CAAC;oBACH,CAAC,CAAC,CAAC;oBACH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC;oBACzD,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE,CAAC,WAAW,CAAC,kBAAkB,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;oBAEnF,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;oBAEpB,uEAAuE;gBACvE,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,0BAA0B,EAAE,CAAC;oBACzD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,MAAuC,CAAC,EAAE,CAAC,CAAC;gBACtG,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,wBAAwB,EAAE,CAAC;oBACvD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;gBACtD,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,yBAAyB,EAAE,CAAC;oBACxD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACvE,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,wBAAwB,EAAE,CAAC;oBACvD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACtE,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,0BAA0B,EAAE,CAAC;oBACzD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACxE,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,wBAAwB,EAAE,CAAC;oBACvD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBACxG,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,8BAA8B,EAAE,CAAC;oBAC7D,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAE9G,uEAAuE;gBACvE,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,sBAAsB,EAAE,CAAC;oBACrD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAC3E,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,oBAAoB,EAAE,CAAC;oBACnD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBACzE,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,oBAAoB,EAAE,CAAC;oBACnD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;gBACzI,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,oBAAoB,EAAE,CAAC;oBACnD,MAAM,EAAE,SAAS,EAAE,GAAG,QAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;oBAClD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;gBACpE,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,sBAAsB,EAAE,CAAC;oBACrD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACvH,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,oBAAoB,EAAE,CAAC;oBACnD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACnH,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;oBAClD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBACtH,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,qBAAqB,EAAE,CAAC;oBACpD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACrI,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,0BAA0B,EAAE,CAAC;oBACzD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBAE7J,uEAAuE;gBACvE,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,wBAAwB,EAAE,CAAC;oBACvD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC3F,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,qBAAqB,EAAE,CAAC;oBACpD,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAExF,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,qBAAqB,EAAE,CAAC;oBACpD,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAoD,CAAC;oBAChG,GAAG,EAAE,IAAI,CAAC,2CAA2C,SAAS,gBAAgB,WAAW,EAAE,CAAC,CAAC;oBAE7F,gDAAgD;oBAChD,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa;wBACrC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,MAAM,EAAE,EAAE,CAAC;wBAChD,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;oBACjD,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,wCAAwC,EAAE,CAAC,CAAC;wBACpE,OAAO;oBACT,CAAC;oBAED,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,WAAW,CAAC;oBACxD,IAAI,QAAgC,CAAC;oBACrC,IAAI,CAAC;wBACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;wBACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC;wBAC5C,QAAQ,GAAG,IAAK,MAAc,CAAC,QAAQ,SAAS,IAAI,SAAS,aAAa,CAAC,CAAC;wBAC5E,QAAQ,CAAC,UAAU,GAAG,aAAa,CAAC;oBACtC,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,+BAA+B,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;wBACxE,OAAO;oBACT,CAAC;oBAED,6CAA6C;oBAC7C,MAAM,eAAe,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,SAAS,aAAa,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;oBACrI,IAAI,OAA+B,CAAC;oBACpC,IAAI,CAAC;wBACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;wBACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC;wBAC5C,OAAO,GAAG,IAAK,MAAc,CAAC,eAAe,CAAC,CAAC;oBACjD,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,IAAI,CAAC;4BAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;wBAAC,CAAC;wBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;wBAChD,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,+BAA+B,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;wBACxE,OAAO;oBACT,CAAC;oBAED,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;oBAExD,MAAM,cAAc,GAAG,CAAC,MAAc,EAAE,EAAE;wBACxC,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;wBAC/C,IAAI,CAAC,KAAK;4BAAE,OAAO;wBACnB,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;wBACpC,IAAI,CAAC;4BAAC,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,KAAK,CAAC,CAAC,YAAY;gCAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;wBAAC,CAAC;wBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;wBAC1H,IAAI,CAAC;4BAAC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,KAAK,CAAC,CAAC,YAAY;gCAAE,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;wBAAC,CAAC;wBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;wBACtG,GAAG,EAAE,IAAI,CAAC,8CAA8C,SAAS,WAAW,MAAM,EAAE,CAAC,CAAC;oBACxF,CAAC,CAAC;oBAEF,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;wBACvB,GAAG,EAAE,IAAI,CAAC,wDAAwD,SAAS,EAAE,CAAC,CAAC;oBACjF,CAAC,CAAC,CAAC;oBAEH,4EAA4E;oBAC5E,MAAM,gBAAgB,GAAa,EAAE,CAAC;oBACtC,IAAI,gBAAgB,GAAG,KAAK,CAAC;oBAE7B,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;wBACtB,GAAG,EAAE,IAAI,CAAC,0DAA0D,SAAS,EAAE,CAAC,CAAC;wBACjF,gBAAgB,GAAG,IAAI,CAAC;wBACxB,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;4BACnC,IAAI,OAAO,CAAC,UAAU,KAAK,CAAC;gCAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBAClD,CAAC;wBACD,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;oBAC9B,CAAC,CAAC,CAAC;oBAEH,8DAA8D;oBAC9D,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAA0B,EAAE,EAAE;wBACpD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC7D,IAAI,gBAAgB,IAAI,OAAO,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC;4BAC5D,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBACpB,CAAC;6BAAM,CAAC;4BACN,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBAC7B,CAAC;oBACH,CAAC,CAAC,CAAC;oBAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAA0B,EAAE,EAAE;wBACnD,IAAI,QAAQ,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC;4BACzC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBAClE,CAAC;oBACH,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,CAAC;oBAC9D,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE,CAAC,cAAc,CAAC,mBAAmB,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;oBACxF,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC;oBAC5D,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE,CAAC,cAAc,CAAC,kBAAkB,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;oBAEtF,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;gBAEpB,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,yBAAyB,EAAE,CAAC;oBACxD,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAiC,CAAC;oBAClE,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;oBAE/E,wEAAwE;gBACxE,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;oBAClD,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAoE,CAAC;oBAChH,GAAG,EAAE,IAAI,CAAC,yCAAyC,SAAS,gBAAgB,WAAW,IAAI,MAAM,EAAE,CAAC,CAAC;oBAErG,IAAI,CAAC;wBACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;wBACzC,MAAM,IAAI,GAAG,EAAE,CAAC;wBAChB,MAAM,IAAI,GAAG,EAAE,CAAC;wBAChB,MAAM,GAAG,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;wBAEvD,IAAI,UAAmC,CAAC;wBACxC,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;4BAC1B,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;wBACjF,CAAC;6BAAM,CAAC;4BACN,MAAM,cAAc,GAAG,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,iEAAiE,EAAE,CAAC;4BACpI,IAAI,eAAe,GAAG,WAAW,CAAC;4BAClC,IAAI,CAAC,eAAe,EAAE,CAAC;gCACrB,IAAI,CAAC;oCACH,eAAe,GAAG,QAAQ,CACxB,mEAAmE,EACnE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,CACvC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;gCACtB,CAAC;gCAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;gCACxB,IAAI,CAAC,eAAe,EAAE,CAAC;oCACrB,IAAI,CAAC;wCACH,eAAe,GAAG,QAAQ,CACxB,wDAAwD,EACxD,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,CACvC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;oCACtB,CAAC;oCAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;gCAC1B,CAAC;4BACH,CAAC;4BACD,IAAI,CAAC,eAAe,EAAE,CAAC;gCACrB,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,wCAAwC,EAAE,CAAC,CAAC;gCACpE,OAAO;4BACT,CAAC;4BACD,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,CAAC,EAAE;gCAClF,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,cAAc;6BAC1C,CAAC,CAAC;wBACL,CAAC;wBAED,sDAAsD;wBACtD,MAAM,QAAQ,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,SAAS,aAAa,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;wBAC9H,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;wBACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC;wBAC5C,MAAM,OAAO,GAAG,IAAK,MAAc,CAAC,QAAQ,CAA2B,CAAC;wBAExE,mBAAmB,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;wBAErE,MAAM,eAAe,GAAG,CAAC,MAAc,EAAE,EAAE;4BACzC,MAAM,KAAK,GAAG,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;4BACjD,IAAI,CAAC,KAAK;gCAAE,OAAO;4BACnB,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;4BACtC,IAAI,CAAC;gCAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;4BAAC,CAAC;4BAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;4BAChD,IAAI,CAAC;gCAAC,IAAI,KAAK,CAAC,EAAE,CAAC,UAAU,KAAK,CAAC,CAAC,YAAY;oCAAE,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;4BAAC,CAAC;4BAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;4BAC5F,GAAG,EAAE,IAAI,CAAC,4CAA4C,SAAS,WAAW,MAAM,EAAE,CAAC,CAAC;wBACtF,CAAC,CAAC;wBAEF,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;4BACtB,GAAG,EAAE,IAAI,CAAC,wDAAwD,SAAS,EAAE,CAAC,CAAC;wBACjF,CAAC,CAAC,CAAC;wBAEH,0BAA0B;wBAC1B,UAAU,CAAC,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE;4BACjC,IAAI,OAAO,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC;gCACxC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;4BAClC,CAAC;wBACH,CAAC,CAAC,CAAC;wBAEH,uDAAuD;wBACvD,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAyB,EAAE,EAAE;4BAClD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;4BAC1D,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;4BAC3B,2CAA2C;4BAC3C,IAAI,CAAC;gCACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gCAC5B,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oCAC1F,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;oCACtC,OAAO;gCACT,CAAC;4BACH,CAAC;4BAAC,MAAM,CAAC;gCACP,qCAAqC;4BACvC,CAAC;4BACD,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBACxB,CAAC,CAAC,CAAC;wBAEH,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;4BACjC,+CAA+C;4BAC/C,IAAI,OAAO,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC;gCACxC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;4BAC/D,CAAC;4BACD,eAAe,CAAC,YAAY,QAAQ,GAAG,CAAC,CAAC;wBAC3C,CAAC,CAAC,CAAC;wBAEH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC,CAAC;wBAC7D,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE,CAAC,eAAe,CAAC,kBAAkB,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;wBAEvF,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;oBACpB,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,GAAG,EAAE,IAAI,CAAC,uCAAuC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBAChE,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;oBACvE,CAAC;oBAEH,uEAAuE;gBACvE,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,sBAAsB,EAAE,CAAC;oBACrD,MAAM,EAAE,WAAW,EAAE,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC,MASjD,CAAC;oBAEF,MAAM,QAAQ,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;oBACzC,IAAI,QAAQ,EAAE,CAAC;wBACb,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;wBAChD,OAAO;oBACT,CAAC;oBAED,MAAM,OAAO,GAAG,IAAI,oBAAoB,CAAC,WAAW,EAAE;wBACpD,GAAG,aAAa;wBAChB,YAAY,EAAE,CAAC,KAAyB,EAAE,EAAE;4BAC1C,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;wBAC3C,CAAC;wBACD,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;4BACxB,GAAG,EAAE,IAAI,CAAC,2BAA2B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;wBACxD,CAAC;qBACF,EAAE,GAAG,CAAC,CAAC;oBAER,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;oBACtB,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;gBAEjD,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,qBAAqB,EAAE,CAAC;oBACpD,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAiC,CAAC;oBAClE,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;oBACxC,IAAI,OAAO,EAAE,CAAC;wBACZ,OAAO,CAAC,IAAI,EAAE,CAAC;wBACf,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;oBAC/C,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;oBACvE,CAAC;gBAEH,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,uBAAuB,EAAE,CAAC;oBACtD,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAiC,CAAC;oBAClE,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;oBACxC,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;gBAE7F,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,uBAAuB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBACrE,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC;YACtF,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,2FAA2F;QAC3F,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE;YACzB,KAAK,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,iBAAiB,EAAE,CAAC;gBACnD,IAAI,KAAK,CAAC,MAAM;oBAAE,oBAAoB,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;gBACxF,IAAI,CAAC;oBAAC,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,KAAK,CAAC;wBAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;gBAC7G,IAAI,CAAC;oBAAC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,KAAK,CAAC;wBAAE,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;YAC3F,CAAC;YACD,iBAAiB,CAAC,KAAK,EAAE,CAAC;YAC1B,KAAK,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,mBAAmB,EAAE,CAAC;gBAC5C,IAAI,CAAC;oBAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;gBAChD,IAAI,CAAC;oBAAC,IAAI,KAAK,CAAC,EAAE,CAAC,UAAU,KAAK,CAAC;wBAAE,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;YACjF,CAAC;YACD,mBAAmB,CAAC,KAAK,EAAE,CAAC;YAC5B,KAAK,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,cAAc,EAAE,EAAE,CAAC;gBAC3C,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,EAAE,IAAI,CAAC,qCAAqC,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC7E,YAAY,EAAE,CAAC;IACjB,CAAC;IAED,6EAA6E;IAC7E,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;QACvB,YAAY,EAAE,CAAC;IACjB,CAAC;IAED,mBAAmB;IACnB,WAAW,CAAC,gBAAgB,CAC1B,OAAO,EACP,GAAG,EAAE;QACH,WAAW,EAAE,CAAC;QACd,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,UAAU,EAAE,CAAC;YACpB,MAAM,GAAG,IAAI,CAAC;QAChB,CAAC;IACH,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;IAEF,oBAAoB;IACpB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAClC,IAAI,WAAW,CAAC,OAAO;YAAE,OAAO,OAAO,EAAE,CAAC;QAC1C,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../src/gateway.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Read the sandbox browser's logged-in account identity over CDP.
|
|
3
|
+
*
|
|
4
|
+
* The bot's Chromium holds a 闲鱼/淘宝 session whose cookies carry the account's
|
|
5
|
+
* numeric user id (`unb`) and login nick (`tracknick`). We read them via CDP
|
|
6
|
+
* `Network.getCookies` (Chrome returns decrypted values, incl. httpOnly), which is
|
|
7
|
+
* far more robust than decrypting the on-disk Cookies SQLite ourselves.
|
|
8
|
+
*
|
|
9
|
+
* Chromium rejects DevTools HTTP/WS whose Host header isn't an IP or `localhost`
|
|
10
|
+
* (DNS-rebind guard), so we spoof `Host: localhost` — same as sandboxScreenCdp.ts.
|
|
11
|
+
*
|
|
12
|
+
* Best-effort: any failure (browser absent, logged out, timeout) returns null.
|
|
13
|
+
*/
|
|
14
|
+
import * as http from "http";
|
|
15
|
+
function cdpGet(host, port, path) {
|
|
16
|
+
return new Promise((resolve, reject) => {
|
|
17
|
+
const req = http.get({ host, port, path, headers: { Host: "localhost" }, timeout: 5000 }, (res) => {
|
|
18
|
+
let data = "";
|
|
19
|
+
res.on("data", (c) => { data += c; });
|
|
20
|
+
res.on("end", () => resolve(data));
|
|
21
|
+
});
|
|
22
|
+
req.on("error", reject);
|
|
23
|
+
req.on("timeout", () => req.destroy(new Error("cdp timeout")));
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
export async function readSandboxIdentity(host, port) {
|
|
27
|
+
try {
|
|
28
|
+
const targets = JSON.parse(await cdpGet(host, port, "/json"));
|
|
29
|
+
const page = targets.find((t) => t.type === "page" && t.webSocketDebuggerUrl);
|
|
30
|
+
if (!page?.webSocketDebuggerUrl)
|
|
31
|
+
return null;
|
|
32
|
+
const wsPath = new URL(page.webSocketDebuggerUrl).pathname;
|
|
33
|
+
const WsModule = await import("ws");
|
|
34
|
+
const WSImpl = (WsModule.default ?? WsModule);
|
|
35
|
+
const sock = new WSImpl(`ws://${host}:${port}${wsPath}`, { headers: { Host: "localhost" } });
|
|
36
|
+
const cookies = await new Promise((resolve) => {
|
|
37
|
+
let id = 0;
|
|
38
|
+
const pending = new Map();
|
|
39
|
+
const send = (method, params) => {
|
|
40
|
+
const i = ++id;
|
|
41
|
+
return new Promise((r) => { pending.set(i, r); sock.send(JSON.stringify({ id: i, method, params })); });
|
|
42
|
+
};
|
|
43
|
+
const done = (v) => { clearTimeout(timer); try {
|
|
44
|
+
sock.close();
|
|
45
|
+
}
|
|
46
|
+
catch { /* ignore */ } resolve(v); };
|
|
47
|
+
const timer = setTimeout(() => done([]), 6000);
|
|
48
|
+
sock.on("open", async () => {
|
|
49
|
+
try {
|
|
50
|
+
await send("Network.enable", {});
|
|
51
|
+
const res = await send("Network.getCookies", {
|
|
52
|
+
urls: ["https://www.goofish.com/", "https://www.taobao.com/", "https://i.goofish.com/", "https://h5api.m.goofish.com/"],
|
|
53
|
+
});
|
|
54
|
+
done(res?.cookies ?? []);
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
done([]);
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
sock.on("message", (data) => {
|
|
61
|
+
try {
|
|
62
|
+
const m = JSON.parse(data.toString());
|
|
63
|
+
if (m.id && pending.has(m.id)) {
|
|
64
|
+
pending.get(m.id)(m.result);
|
|
65
|
+
pending.delete(m.id);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
catch { /* ignore */ }
|
|
69
|
+
});
|
|
70
|
+
sock.on("error", () => done([]));
|
|
71
|
+
});
|
|
72
|
+
const get = (name) => {
|
|
73
|
+
const c = cookies.find((x) => x.name === name);
|
|
74
|
+
if (!c)
|
|
75
|
+
return "";
|
|
76
|
+
try {
|
|
77
|
+
return decodeURIComponent(c.value);
|
|
78
|
+
}
|
|
79
|
+
catch {
|
|
80
|
+
return c.value;
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
const idVal = get("unb");
|
|
84
|
+
const nick = get("tracknick") || get("lgc") || get("_nk_");
|
|
85
|
+
if (!idVal && !nick)
|
|
86
|
+
return null;
|
|
87
|
+
return { id: idVal, nick };
|
|
88
|
+
}
|
|
89
|
+
catch {
|
|
90
|
+
return null;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=sandboxIdentity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandboxIdentity.js","sourceRoot":"","sources":["../../src/sandboxIdentity.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,13 @@ export interface H264Transcoder {
|
|
|
8
8
|
* produced by a recent respawn / the natural GOP) is a no-op.
|
|
9
9
|
*/
|
|
10
10
|
forceKeyframe: () => void;
|
|
11
|
+
/**
|
|
12
|
+
* Retarget the output bitrate (kbps) — backs the control-panel "Image Quality"
|
|
13
|
+
* dial. libx264 can't change its target on a running process, so this respawns
|
|
14
|
+
* the encoder (a fresh process emits SPS+PPS+IDR, like forceKeyframe). No-op
|
|
15
|
+
* when the bitrate is unchanged or the transcoder is closed.
|
|
16
|
+
*/
|
|
17
|
+
updateBitrate: (kbps: number) => void;
|
|
11
18
|
close: () => void;
|
|
12
19
|
}
|
|
13
20
|
export interface H264TranscoderOptions {
|
|
@@ -61,8 +61,10 @@ function isAudAt(buf, p) {
|
|
|
61
61
|
}
|
|
62
62
|
export function createH264Transcoder(opts) {
|
|
63
63
|
const fps = opts.fps ?? 20;
|
|
64
|
-
|
|
65
|
-
|
|
64
|
+
// Mutable: updateBitrate() retargets it and respawns the encoder with fresh
|
|
65
|
+
// args (libx264 can't change -b:v on a running process).
|
|
66
|
+
let kbps = Math.max(200, Math.min(50000, Math.round(opts.bitrateKbps ?? 1200)));
|
|
67
|
+
const buildArgs = () => [
|
|
66
68
|
...opts.cmdPrefix.slice(1),
|
|
67
69
|
"-hide_banner", "-loglevel", "error",
|
|
68
70
|
// probesize 32 (the minimum) is LOAD-BEARING: with the default (5MB/5s of
|
|
@@ -167,7 +169,8 @@ export function createH264Transcoder(opts) {
|
|
|
167
169
|
const spawnEncoder = () => {
|
|
168
170
|
let p;
|
|
169
171
|
try {
|
|
170
|
-
|
|
172
|
+
// Rebuild args every spawn so a bitrate change (updateBitrate) takes effect.
|
|
173
|
+
p = spawn(opts.cmdPrefix[0], buildArgs(), { stdio: ["pipe", "pipe", "pipe"], env: opts.env });
|
|
171
174
|
}
|
|
172
175
|
catch (err) {
|
|
173
176
|
opts.log?.warn?.(`[sandbox-h264] spawn failed: ${String(err)}`);
|
|
@@ -180,7 +183,7 @@ export function createH264Transcoder(opts) {
|
|
|
180
183
|
};
|
|
181
184
|
if (!spawnEncoder()) {
|
|
182
185
|
setImmediate(() => opts.onExit?.());
|
|
183
|
-
return { feed: () => { }, forceKeyframe: () => { }, close: () => { } };
|
|
186
|
+
return { feed: () => { }, forceKeyframe: () => { }, updateBitrate: () => { }, close: () => { } };
|
|
184
187
|
}
|
|
185
188
|
opts.log?.info?.(`[sandbox-h264] encoder started (${opts.cmdPrefix.join(" ")} @ ${fps}fps/${kbps}k)`);
|
|
186
189
|
return {
|
|
@@ -224,6 +227,37 @@ export function createH264Transcoder(opts) {
|
|
|
224
227
|
}
|
|
225
228
|
catch { /* ignore */ } }, 500).unref?.();
|
|
226
229
|
},
|
|
230
|
+
updateBitrate: (next) => {
|
|
231
|
+
if (closed)
|
|
232
|
+
return;
|
|
233
|
+
const clamped = Math.max(200, Math.min(50000, Math.round(next)));
|
|
234
|
+
if (clamped === kbps)
|
|
235
|
+
return;
|
|
236
|
+
kbps = clamped;
|
|
237
|
+
// Respawn so the new -b:v/-maxrate/-bufsize apply; the fresh process emits
|
|
238
|
+
// SPS+PPS+IDR, so the viewer's decoder re-syncs cleanly. Not debounced —
|
|
239
|
+
// this is a deliberate, infrequent user action (control-panel pick).
|
|
240
|
+
const old = proc;
|
|
241
|
+
if (flushTimer) {
|
|
242
|
+
clearTimeout(flushTimer);
|
|
243
|
+
flushTimer = null;
|
|
244
|
+
}
|
|
245
|
+
pending = Buffer.alloc(0);
|
|
246
|
+
if (!spawnEncoder()) {
|
|
247
|
+
proc = old;
|
|
248
|
+
return;
|
|
249
|
+
} // keep the old one if respawn fails
|
|
250
|
+
opts.log?.info?.(`[sandbox-h264] bitrate → ${kbps}k — encoder respawned`);
|
|
251
|
+
try {
|
|
252
|
+
old?.stdin.end();
|
|
253
|
+
}
|
|
254
|
+
catch { /* ignore */ }
|
|
255
|
+
const dying = old;
|
|
256
|
+
setTimeout(() => { try {
|
|
257
|
+
dying?.kill("SIGKILL");
|
|
258
|
+
}
|
|
259
|
+
catch { /* ignore */ } }, 500).unref?.();
|
|
260
|
+
},
|
|
227
261
|
close: () => {
|
|
228
262
|
const p = proc;
|
|
229
263
|
if (closed) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandboxScreenH264.js","sourceRoot":"","sources":["../../src/sandboxScreenH264.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAuC,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"sandboxScreenH264.js","sourceRoot":"","sources":["../../src/sandboxScreenH264.ts"],"names":[],"mappings":"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"}
|