@perkos/perkos-a2a 0.12.46 → 0.12.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -328,24 +328,31 @@ Hermes does **not** load OpenClaw plugins directly. PerkOS ships a
328
328
  **Hermes-native plugin** with the same install ergonomics as the
329
329
  OpenClaw plugin: one install command, then a supervised service.
330
330
 
331
- #### Option A — one-shot service install (parity with `openclaw plugins install`)
331
+ #### Option A — official native macOS connection
332
332
 
333
333
  ```bash
334
- npm install -g @perkos/perkos-a2a
335
-
336
- # Generate + activate a systemd unit (Linux) or launchd plist (macOS):
337
- npx -p @perkos/perkos-a2a install-hermes --write \
334
+ A2A_RELAY_API_KEY="$RELAY_KEY_FROM_INVITATION" \
335
+ npx --yes @perkos/perkos-a2a@0.12.48 connect-hermes \
338
336
  --agent-name Apollo \
339
- --relay-url wss://transport.perkos.xyz/a2a \
340
- --relay-key "$A2A_RELAY_API_KEY"
341
-
342
- # Linux: sudo systemctl enable --now perkos-a2a-hermes
343
- # macOS: launchctl load -w ~/Library/LaunchAgents/xyz.perkos.a2a-hermes.plist
337
+ --agent-id "$PERKOS_AGENT_ID" \
338
+ --json
344
339
  ```
345
340
 
346
- The installer pre-flights the Hermes API for reachability before
347
- emitting the unit. Use `--emit` instead of `--write` to print the
348
- config to stdout for review/pipe-to-tee.
341
+ `connect-hermes` is the plug-and-play path used by official PerkOS
342
+ invitations. On macOS it preserves the existing Hermes credential and model
343
+ routing, enables the local `/v1/responses` API when needed, installs the exact
344
+ package version into a private managed directory, and supervises the bridge
345
+ with one identity-scoped `launchd` service. The JSON result contains no
346
+ secrets and verifies relay registration, PerkOS Chat authentication, and the
347
+ platform heartbeat.
348
+
349
+ If the command is executed from inside a Hermes conversation and the API
350
+ server needs enabling, it returns `status: "restart-scheduled"`. The CLI has
351
+ already requested Hermes' graceful self-restart and the supervised bridge
352
+ will reconnect automatically; no second shell command is required.
353
+
354
+ Linux Hermes hosts continue to use the pinned container workflow while the
355
+ native systemd installer is promoted to the same health-gated contract.
349
356
 
350
357
  #### Option B — programmatic embed
351
358
 
@@ -400,7 +400,14 @@ async function main() {
400
400
  // Hermes has had a chance to actually attempt platform connect.
401
401
  // No-ops cleanly when PERKOS_AGENT_ID/A2A_AGENT_NAME/A2A_RELAY_API_KEY
402
402
  // aren't set (older deploys).
403
- void startGatewayHealthReporter({ logger });
403
+ void startGatewayHealthReporter({
404
+ logger,
405
+ env: {
406
+ ...process.env,
407
+ A2A_AGENT_NAME: config.agentName,
408
+ A2A_RELAY_API_KEY: config.relay?.apiKey || process.env.A2A_RELAY_API_KEY,
409
+ },
410
+ });
404
411
  // Keep API presence fresh for managed and BYO agents. The relay websocket
405
412
  // has its own heartbeat, but the app's Available/Offline label is derived
406
413
  // from this API timestamp.
@@ -408,7 +415,16 @@ async function main() {
408
415
  // and other pre-0.2 deploys don't need it). The URL must already
409
416
  // include the agent id (the wizard renders the per-agent endpoint
410
417
  // into the bundle); the bridge does not perform path templating.
411
- const platformHeartbeat = startPlatformHeartbeat({ logger });
418
+ const runtimeKind = config.runtime?.kind === "openclaw"
419
+ ? "openclaw"
420
+ : "hermes";
421
+ const platformHeartbeat = startPlatformHeartbeat({
422
+ logger,
423
+ url: process.env.PERKOS_HEARTBEAT_URL,
424
+ relayKey: config.relay?.apiKey,
425
+ runtimeKind,
426
+ version: process.env.PERKOS_A2A_VERSION,
427
+ });
412
428
  // -------------------------------------------------------------------------
413
429
  // Optional: PerkOS-Chat client for user-facing conversations.
414
430
  //
@@ -1 +1 @@
1
- {"version":3,"file":"bridge-agent.js","sourceRoot":"","sources":["../src/bridge-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bridge-agent.js","sourceRoot":"","sources":["../src/bridge-agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,90 @@
1
+ export type HermesConnectPhase = "detect" | "configure-runtime" | "install-bridge" | "restart-runtime" | "start-bridge" | "verify";
2
+ export declare class HermesConnectFailure extends Error {
3
+ readonly code: string;
4
+ readonly phase: HermesConnectPhase;
5
+ readonly retryable: boolean;
6
+ readonly requiresProductFix: boolean;
7
+ constructor(code: string, message: string, phase: HermesConnectPhase, retryable?: boolean, requiresProductFix?: boolean);
8
+ }
9
+ export type HermesConnectOptions = {
10
+ agentName: string;
11
+ agentId: string;
12
+ relayApiKey: string;
13
+ hermesHome?: string;
14
+ hermesBin?: string;
15
+ timeoutMs?: number;
16
+ };
17
+ export type HermesConnectResult = {
18
+ schemaVersion: 1;
19
+ ok: true;
20
+ runtime: "hermes";
21
+ status: "ready" | "restart-scheduled";
22
+ version: string;
23
+ agentName: string;
24
+ agentId: string;
25
+ mode: "installed" | "repaired";
26
+ service: {
27
+ manager: "launchd";
28
+ label: string;
29
+ pid: number;
30
+ };
31
+ hermes: {
32
+ executable: string;
33
+ apiUrl: string;
34
+ apiReachable: boolean;
35
+ gatewayRestarted: boolean;
36
+ restartScheduled: boolean;
37
+ };
38
+ checks: {
39
+ relayConnected: true;
40
+ relayRegistered: true;
41
+ chatAuthenticated: true;
42
+ heartbeatAccepted: true;
43
+ duplicateRegistration: false;
44
+ };
45
+ secretsRedacted: true;
46
+ };
47
+ type CommandResult = {
48
+ stdout: string;
49
+ stderr: string;
50
+ };
51
+ type Runner = (file: string, args: string[], timeoutMs?: number) => Promise<CommandResult>;
52
+ export declare function updateHermesEnvText(original: string, generatedKey: string): {
53
+ text: string;
54
+ apiKey: string;
55
+ port: number;
56
+ changed: boolean;
57
+ };
58
+ export declare function serviceIdentity(agentId: string): {
59
+ label: string;
60
+ suffix: string;
61
+ };
62
+ export declare function servicePorts(agentId: string): {
63
+ a2a: number;
64
+ chatReply: number;
65
+ tools: number;
66
+ board: number;
67
+ };
68
+ export declare function renderHermesBridgeConfig(input: {
69
+ agentName: string;
70
+ relayApiKey: string;
71
+ apiUrl: string;
72
+ apiKey: string;
73
+ a2aPort: number;
74
+ }): string;
75
+ export declare function renderLaunchAgent(input: {
76
+ label: string;
77
+ nodePath: string;
78
+ bridgePath: string;
79
+ configPath: string;
80
+ logPath: string;
81
+ errorLogPath: string;
82
+ agentId: string;
83
+ version: string;
84
+ chatReplyPort: number;
85
+ toolsPort: number;
86
+ boardPort: number;
87
+ }): string;
88
+ export declare function connectHermes(options: HermesConnectOptions, runner?: Runner): Promise<HermesConnectResult>;
89
+ export {};
90
+ //# sourceMappingURL=hermes-connect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hermes-connect.d.ts","sourceRoot":"","sources":["../src/hermes-connect.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,426 @@
1
+ import { execFile } from "node:child_process";
2
+ import { createHash, randomBytes } from "node:crypto";
3
+ import { access, chmod, copyFile, mkdir, readFile, rename, stat, writeFile, } from "node:fs/promises";
4
+ import { homedir } from "node:os";
5
+ import { dirname, join } from "node:path";
6
+ import { promisify } from "node:util";
7
+ const execFileAsync = promisify(execFile);
8
+ const RELAY_URL = "wss://transport.perkos.xyz/a2a";
9
+ const CHAT_URL = "wss://chat.perkos.xyz/chat";
10
+ const API_URL = "https://api.perkos.xyz";
11
+ export class HermesConnectFailure extends Error {
12
+ code;
13
+ phase;
14
+ retryable;
15
+ requiresProductFix;
16
+ constructor(code, message, phase, retryable = false, requiresProductFix = false) {
17
+ super(message);
18
+ this.code = code;
19
+ this.phase = phase;
20
+ this.retryable = retryable;
21
+ this.requiresProductFix = requiresProductFix;
22
+ this.name = "HermesConnectFailure";
23
+ }
24
+ }
25
+ async function defaultRunner(file, args, timeoutMs = 120_000) {
26
+ try {
27
+ const result = await execFileAsync(file, args, {
28
+ timeout: timeoutMs,
29
+ maxBuffer: 4 * 1024 * 1024,
30
+ encoding: "utf8",
31
+ });
32
+ return { stdout: result.stdout, stderr: result.stderr };
33
+ }
34
+ catch (error) {
35
+ const err = error;
36
+ const detail = [err.message, err.stderr, err.stdout].filter(Boolean).join("\n").slice(0, 2_000);
37
+ throw new Error(`${file} ${args.join(" ")} failed${err.code ? ` (${err.code})` : ""}: ${detail}`);
38
+ }
39
+ }
40
+ function escapeXml(value) {
41
+ return value
42
+ .replaceAll("&", "&amp;")
43
+ .replaceAll("<", "&lt;")
44
+ .replaceAll(">", "&gt;")
45
+ .replaceAll('"', "&quot;")
46
+ .replaceAll("'", "&apos;");
47
+ }
48
+ function envValue(text, key) {
49
+ const line = text.split(/\r?\n/).find((entry) => entry.trimStart().startsWith(`${key}=`));
50
+ if (!line)
51
+ return undefined;
52
+ const raw = line.slice(line.indexOf("=") + 1).trim();
53
+ if ((raw.startsWith('"') && raw.endsWith('"')) || (raw.startsWith("'") && raw.endsWith("'"))) {
54
+ return raw.slice(1, -1);
55
+ }
56
+ return raw;
57
+ }
58
+ function quoteEnv(value) {
59
+ return `'${value.replaceAll("'", `'"'"'`)}'`;
60
+ }
61
+ export function updateHermesEnvText(original, generatedKey) {
62
+ const existingKey = envValue(original, "API_SERVER_KEY")?.trim();
63
+ const apiKey = existingKey || generatedKey;
64
+ const parsedPort = Number(envValue(original, "API_SERVER_PORT") || "8642");
65
+ const port = Number.isInteger(parsedPort) && parsedPort > 0 && parsedPort <= 65_535
66
+ ? parsedPort
67
+ : 8642;
68
+ const desired = {
69
+ API_SERVER_ENABLED: "true",
70
+ API_SERVER_KEY: quoteEnv(apiKey),
71
+ API_SERVER_HOST: quoteEnv(envValue(original, "API_SERVER_HOST") || "127.0.0.1"),
72
+ API_SERVER_PORT: String(port),
73
+ };
74
+ const seen = new Set();
75
+ const lines = original.split(/\r?\n/).map((line) => {
76
+ for (const [key, value] of Object.entries(desired)) {
77
+ if (line.trimStart().startsWith(`${key}=`)) {
78
+ seen.add(key);
79
+ return `${key}=${value}`;
80
+ }
81
+ }
82
+ return line;
83
+ });
84
+ for (const [key, value] of Object.entries(desired)) {
85
+ if (!seen.has(key))
86
+ lines.push(`${key}=${value}`);
87
+ }
88
+ const text = `${lines.join("\n").replace(/\n+$/, "")}\n`;
89
+ return { text, apiKey, port, changed: text !== original };
90
+ }
91
+ export function serviceIdentity(agentId) {
92
+ const suffix = createHash("sha256").update(agentId).digest("hex").slice(0, 12);
93
+ return { label: `xyz.perkos.a2a-hermes.${suffix}`, suffix };
94
+ }
95
+ export function servicePorts(agentId) {
96
+ const offset = Number.parseInt(createHash("sha256").update(agentId).digest("hex").slice(0, 4), 16) % 400;
97
+ return {
98
+ a2a: 52_000 + offset,
99
+ chatReply: 53_000 + offset,
100
+ tools: 54_000 + offset,
101
+ board: 55_000 + offset,
102
+ };
103
+ }
104
+ export function renderHermesBridgeConfig(input) {
105
+ return `${JSON.stringify({
106
+ agentName: input.agentName,
107
+ port: input.a2aPort,
108
+ bindHost: "127.0.0.1",
109
+ mode: "client-only",
110
+ skills: [],
111
+ peers: {},
112
+ relay: { enabled: true, url: RELAY_URL, apiKey: input.relayApiKey },
113
+ runtime: {
114
+ kind: "hermes-api",
115
+ sessionKey: "perkos",
116
+ hermesUrl: input.apiUrl,
117
+ hermesEndpoint: "/v1/responses",
118
+ hermesToken: input.apiKey,
119
+ },
120
+ chat: {
121
+ enabled: true,
122
+ url: CHAT_URL,
123
+ apiKey: input.relayApiKey,
124
+ },
125
+ }, null, 2)}\n`;
126
+ }
127
+ export function renderLaunchAgent(input) {
128
+ const env = {
129
+ PERKOS_AGENT_ID: input.agentId,
130
+ PERKOS_HEARTBEAT_URL: `${API_URL}/agents/${input.agentId}/heartbeat`,
131
+ PERKOS_A2A_VERSION: input.version,
132
+ A2A_RUNTIME: "hermes-api",
133
+ A2A_HERMES_AUTO_REPLY: "true",
134
+ A2A_CHAT_REPLY_PORT: String(input.chatReplyPort),
135
+ A2A_TOOLS_TOKEN_PORT: String(input.toolsPort),
136
+ A2A_BOARD_MCP_PORT: String(input.boardPort),
137
+ };
138
+ const envXml = Object.entries(env)
139
+ .map(([key, value]) => ` <key>${escapeXml(key)}</key>\n <string>${escapeXml(value)}</string>`)
140
+ .join("\n");
141
+ return `<?xml version="1.0" encoding="UTF-8"?>
142
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
143
+ <plist version="1.0">
144
+ <dict>
145
+ <key>Label</key><string>${escapeXml(input.label)}</string>
146
+ <key>ProgramArguments</key>
147
+ <array>
148
+ <string>${escapeXml(input.nodePath)}</string>
149
+ <string>${escapeXml(input.bridgePath)}</string>
150
+ <string>--config</string>
151
+ <string>${escapeXml(input.configPath)}</string>
152
+ </array>
153
+ <key>RunAtLoad</key><true/>
154
+ <key>KeepAlive</key><true/>
155
+ <key>ThrottleInterval</key><integer>5</integer>
156
+ <key>EnvironmentVariables</key>
157
+ <dict>
158
+ ${envXml}
159
+ </dict>
160
+ <key>StandardOutPath</key><string>${escapeXml(input.logPath)}</string>
161
+ <key>StandardErrorPath</key><string>${escapeXml(input.errorLogPath)}</string>
162
+ </dict>
163
+ </plist>
164
+ `;
165
+ }
166
+ async function pathExists(path) {
167
+ try {
168
+ await access(path);
169
+ return true;
170
+ }
171
+ catch {
172
+ return false;
173
+ }
174
+ }
175
+ async function atomicPrivateWrite(path, content) {
176
+ await mkdir(dirname(path), { recursive: true, mode: 0o700 });
177
+ const temp = `${path}.tmp-${process.pid}`;
178
+ await writeFile(temp, content, { mode: 0o600 });
179
+ await chmod(temp, 0o600);
180
+ await rename(temp, path);
181
+ }
182
+ async function packageVersion() {
183
+ const raw = await readFile(new URL("../package.json", import.meta.url), "utf8");
184
+ return String(JSON.parse(raw).version || "").trim();
185
+ }
186
+ async function findHermesBinary(explicit, home) {
187
+ const candidates = [
188
+ explicit,
189
+ process.env.HERMES_BIN,
190
+ join(homedir(), ".local", "bin", "hermes"),
191
+ join(home, "hermes-agent", "venv", "bin", "hermes"),
192
+ "/opt/homebrew/bin/hermes",
193
+ "/usr/local/bin/hermes",
194
+ ].filter((entry) => Boolean(entry));
195
+ for (const candidate of candidates) {
196
+ if (await pathExists(candidate))
197
+ return candidate;
198
+ }
199
+ throw new HermesConnectFailure("HERMES_CLI_NOT_FOUND", "Hermes CLI was not found. Install Hermes Agent first, then rerun the same invitation command.", "detect", false);
200
+ }
201
+ async function readGatewayPid(home) {
202
+ try {
203
+ const parsed = JSON.parse(await readFile(join(home, "gateway.pid"), "utf8"));
204
+ return Number.isInteger(parsed.pid) ? parsed.pid : null;
205
+ }
206
+ catch {
207
+ return null;
208
+ }
209
+ }
210
+ async function waitForHermesApi(apiUrl, apiKey, timeoutMs) {
211
+ const deadline = Date.now() + timeoutMs;
212
+ let detail = "not reachable";
213
+ while (Date.now() < deadline) {
214
+ try {
215
+ const health = await fetch(`${apiUrl}/health`, { signal: AbortSignal.timeout(5_000) });
216
+ if (health.ok) {
217
+ const capabilities = await fetch(`${apiUrl}/v1/capabilities`, {
218
+ headers: { authorization: `Bearer ${apiKey}` },
219
+ signal: AbortSignal.timeout(5_000),
220
+ });
221
+ if (capabilities.ok)
222
+ return;
223
+ detail = `capabilities returned ${capabilities.status}`;
224
+ }
225
+ else {
226
+ detail = `health returned ${health.status}`;
227
+ }
228
+ }
229
+ catch (error) {
230
+ detail = error instanceof Error ? error.message : String(error);
231
+ }
232
+ await new Promise((resolve) => setTimeout(resolve, 1_000));
233
+ }
234
+ throw new HermesConnectFailure("HERMES_API_UNAVAILABLE", `Hermes API did not become ready (${detail}). The CLI already preserved a backup of the original Hermes environment.`, "restart-runtime", true);
235
+ }
236
+ async function hermesApiReady(apiUrl, apiKey) {
237
+ try {
238
+ const health = await fetch(`${apiUrl}/health`, { signal: AbortSignal.timeout(5_000) });
239
+ if (!health.ok)
240
+ return false;
241
+ const capabilities = await fetch(`${apiUrl}/v1/capabilities`, {
242
+ headers: { authorization: `Bearer ${apiKey}` },
243
+ signal: AbortSignal.timeout(5_000),
244
+ });
245
+ return capabilities.ok;
246
+ }
247
+ catch {
248
+ return false;
249
+ }
250
+ }
251
+ async function launchdPid(runner, label) {
252
+ try {
253
+ const result = await runner("/bin/launchctl", ["print", `gui/${process.getuid?.() ?? 0}/${label}`], 15_000);
254
+ const match = result.stdout.match(/\bpid\s*=\s*(\d+)/);
255
+ return match ? Number(match[1]) : null;
256
+ }
257
+ catch {
258
+ return null;
259
+ }
260
+ }
261
+ async function waitForBridge(logPath, errorLogPath, baseline, runner, label, agentName, timeoutMs) {
262
+ const deadline = Date.now() + timeoutMs;
263
+ let observed = "";
264
+ while (Date.now() < deadline) {
265
+ const out = await readFile(logPath, "utf8").catch(() => "");
266
+ const err = await readFile(errorLogPath, "utf8").catch(() => "");
267
+ observed = `${out.slice(baseline.out)}\n${err.slice(baseline.err)}`;
268
+ if (/duplicate registration replaced/i.test(observed)) {
269
+ throw new HermesConnectFailure("DUPLICATE_REGISTRATION", "The official bridge detected a competing registration for this agent identity.", "verify", false, true);
270
+ }
271
+ const checks = {
272
+ relayConnected: /Connected to relay hub/.test(observed),
273
+ relayRegistered: /Registered with relay hub/.test(observed),
274
+ chatAuthenticated: new RegExp(`\\[perkos-chat\\] authed as agent:${agentName.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}`).test(observed),
275
+ heartbeatAccepted: /\[perkos-heartbeat\].*status=200/.test(observed),
276
+ };
277
+ const pid = await launchdPid(runner, label);
278
+ if (pid && Object.values(checks).every(Boolean))
279
+ return { pid };
280
+ await new Promise((resolve) => setTimeout(resolve, 1_000));
281
+ }
282
+ throw new HermesConnectFailure("BRIDGE_HEALTH_TIMEOUT", "The native bridge did not reach relay + chat + heartbeat healthy state before the timeout. Inspect the secret-free launchd logs reported by the CLI.", "verify", true);
283
+ }
284
+ export async function connectHermes(options, runner = defaultRunner) {
285
+ if (process.platform !== "darwin") {
286
+ throw new HermesConnectFailure("UNSUPPORTED_PLATFORM", "connect-hermes currently supports native macOS launchd. Linux Hermes agents should use the published container workflow.", "detect", false, true);
287
+ }
288
+ const version = await packageVersion();
289
+ if (!version)
290
+ throw new HermesConnectFailure("PACKAGE_VERSION_MISSING", "Package version is missing.", "detect", false, true);
291
+ const home = options.hermesHome || process.env.HERMES_HOME || join(homedir(), ".hermes");
292
+ if (!await pathExists(home)) {
293
+ throw new HermesConnectFailure("HERMES_HOME_NOT_FOUND", `Hermes home was not found at ${home}.`, "detect");
294
+ }
295
+ const hermesBin = await findHermesBinary(options.hermesBin, home);
296
+ await runner(hermesBin, ["--version"], 20_000);
297
+ const root = join(homedir(), ".perkos", "a2a", "hermes", options.agentId);
298
+ const runtimeRoot = join(root, "runtime");
299
+ const configPath = join(root, "a2a.config.json");
300
+ const logsDir = join(root, "logs");
301
+ const logPath = join(logsDir, "bridge.log");
302
+ const errorLogPath = join(logsDir, "bridge.err.log");
303
+ const plistPath = join(homedir(), "Library", "LaunchAgents", `${serviceIdentity(options.agentId).label}.plist`);
304
+ const alreadyInstalled = await pathExists(configPath);
305
+ const envPath = join(home, ".env");
306
+ const originalEnv = await readFile(envPath, "utf8").catch(() => "");
307
+ const envUpdate = updateHermesEnvText(originalEnv, `perkos_${randomBytes(32).toString("hex")}`);
308
+ const previousGatewayPid = await readGatewayPid(home);
309
+ if (envUpdate.changed) {
310
+ if (originalEnv) {
311
+ const backup = `${envPath}.perkos-backup-${new Date().toISOString().replace(/[:.]/g, "-")}`;
312
+ await copyFile(envPath, backup);
313
+ await chmod(backup, 0o600);
314
+ }
315
+ await atomicPrivateWrite(envPath, envUpdate.text);
316
+ }
317
+ const apiUrl = `http://127.0.0.1:${envUpdate.port}`;
318
+ await mkdir(runtimeRoot, { recursive: true, mode: 0o700 });
319
+ await runner("npm", [
320
+ "install",
321
+ "--prefix", runtimeRoot,
322
+ "--omit=dev",
323
+ "--ignore-scripts",
324
+ "--no-audit",
325
+ "--no-fund",
326
+ "--save-exact",
327
+ `@perkos/perkos-a2a@${version}`,
328
+ ], Math.max(120_000, options.timeoutMs || 0));
329
+ const bridgePath = join(runtimeRoot, "node_modules", "@perkos", "perkos-a2a", "dist", "bridge-agent.js");
330
+ if (!await pathExists(bridgePath)) {
331
+ throw new HermesConnectFailure("BRIDGE_INSTALL_MISSING", "The exact-version npm install did not contain the bridge entrypoint.", "install-bridge", false, true);
332
+ }
333
+ const ports = servicePorts(options.agentId);
334
+ await atomicPrivateWrite(configPath, renderHermesBridgeConfig({
335
+ agentName: options.agentName,
336
+ relayApiKey: options.relayApiKey,
337
+ apiUrl,
338
+ apiKey: envUpdate.apiKey,
339
+ a2aPort: ports.a2a,
340
+ }));
341
+ await mkdir(logsDir, { recursive: true, mode: 0o700 });
342
+ const baseline = {
343
+ out: (await stat(logPath).catch(() => ({ size: 0 }))).size,
344
+ err: (await stat(errorLogPath).catch(() => ({ size: 0 }))).size,
345
+ };
346
+ const identity = serviceIdentity(options.agentId);
347
+ const plist = renderLaunchAgent({
348
+ label: identity.label,
349
+ nodePath: process.execPath,
350
+ bridgePath,
351
+ configPath,
352
+ logPath,
353
+ errorLogPath,
354
+ agentId: options.agentId,
355
+ version,
356
+ chatReplyPort: ports.chatReply,
357
+ toolsPort: ports.tools,
358
+ boardPort: ports.board,
359
+ });
360
+ await atomicPrivateWrite(plistPath, plist);
361
+ const domain = `gui/${process.getuid?.() ?? 0}`;
362
+ await runner("/bin/launchctl", ["bootout", domain, plistPath], 20_000).catch(() => ({ stdout: "", stderr: "" }));
363
+ await runner("/bin/launchctl", ["bootstrap", domain, plistPath], 30_000);
364
+ await runner("/bin/launchctl", ["kickstart", "-k", `${domain}/${identity.label}`], 30_000);
365
+ const healthy = await waitForBridge(logPath, errorLogPath, baseline, runner, identity.label, options.agentName, options.timeoutMs || 120_000);
366
+ let apiReachable = await hermesApiReady(apiUrl, envUpdate.apiKey);
367
+ let gatewayRestarted = false;
368
+ let restartScheduled = false;
369
+ if (!apiReachable) {
370
+ const gatewayPid = await readGatewayPid(home);
371
+ if (gatewayPid) {
372
+ // The invitation is normally executed by the Hermes agent itself. Calling
373
+ // `hermes gateway restart` from that child is intentionally refused by
374
+ // Hermes, and waiting for the restart would deadlock while the current
375
+ // turn is still active. SIGUSR1 is Hermes' supported graceful self-restart
376
+ // request: the gateway drains this command, returns the JSON below, then
377
+ // restarts and loads the API server configuration without another user
378
+ // action. The already-supervised bridge keeps reconnecting meanwhile.
379
+ try {
380
+ process.kill(gatewayPid, "SIGUSR1");
381
+ restartScheduled = true;
382
+ }
383
+ catch (error) {
384
+ throw new HermesConnectFailure("HERMES_RESTART_SIGNAL_FAILED", `Could not schedule the Hermes gateway restart: ${error instanceof Error ? error.message : String(error)}`, "restart-runtime", true);
385
+ }
386
+ }
387
+ else {
388
+ await runner(hermesBin, ["gateway", "start"], Math.max(120_000, options.timeoutMs || 0));
389
+ await waitForHermesApi(apiUrl, envUpdate.apiKey, Math.min(options.timeoutMs || 120_000, 180_000));
390
+ apiReachable = true;
391
+ gatewayRestarted = true;
392
+ }
393
+ }
394
+ else if (envUpdate.changed && previousGatewayPid) {
395
+ // The API was already active with the preserved credential, so the extra
396
+ // default-only env normalization does not require disrupting the runtime.
397
+ gatewayRestarted = false;
398
+ }
399
+ return {
400
+ schemaVersion: 1,
401
+ ok: true,
402
+ runtime: "hermes",
403
+ status: restartScheduled ? "restart-scheduled" : "ready",
404
+ version,
405
+ agentName: options.agentName,
406
+ agentId: options.agentId,
407
+ mode: alreadyInstalled ? "repaired" : "installed",
408
+ service: { manager: "launchd", label: identity.label, pid: healthy.pid },
409
+ hermes: {
410
+ executable: hermesBin,
411
+ apiUrl,
412
+ apiReachable,
413
+ gatewayRestarted,
414
+ restartScheduled,
415
+ },
416
+ checks: {
417
+ relayConnected: true,
418
+ relayRegistered: true,
419
+ chatAuthenticated: true,
420
+ heartbeatAccepted: true,
421
+ duplicateRegistration: false,
422
+ },
423
+ secretsRedacted: true,
424
+ };
425
+ }
426
+ //# sourceMappingURL=hermes-connect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hermes-connect.js","sourceRoot":"","sources":["../src/hermes-connect.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { connectOpenClaw } from "./connect.js";
3
+ import { connectHermes, HermesConnectFailure } from "./hermes-connect.js";
3
4
  import { RepairFailure, repairOpenClaw } from "./repair.js";
4
5
  function value(flag) {
5
6
  const index = process.argv.indexOf(flag);
@@ -13,8 +14,24 @@ function required(flag) {
13
14
  }
14
15
  async function main() {
15
16
  const command = process.argv[2];
17
+ if (command === "connect-hermes") {
18
+ const relayApiKey = value("--relay-api-key") ?? process.env.A2A_RELAY_API_KEY;
19
+ if (!relayApiKey) {
20
+ throw new HermesConnectFailure("RELAY_CREDENTIAL_MISSING", "missing relay credential: set A2A_RELAY_API_KEY or pass --relay-api-key", "detect");
21
+ }
22
+ const result = await connectHermes({
23
+ agentName: required("--agent-name"),
24
+ agentId: required("--agent-id"),
25
+ relayApiKey,
26
+ hermesHome: value("--hermes-home"),
27
+ hermesBin: value("--hermes-bin"),
28
+ timeoutMs: value("--timeout-ms") ? Number(value("--timeout-ms")) : undefined,
29
+ });
30
+ process.stdout.write(`${JSON.stringify(result)}\n`);
31
+ return;
32
+ }
16
33
  if (command !== "repair" && command !== "connect") {
17
- throw new Error("usage: perkos-a2a <connect|repair> --artifact <plugin.tgz> --sha256 <digest> --agent-name <name> --agent-id <id> [--relay-api-key <key>] [--json]");
34
+ throw new Error("usage: perkos-a2a <connect|repair|connect-hermes> --agent-name <name> --agent-id <id> [runtime-specific options] [--json]");
18
35
  }
19
36
  const common = {
20
37
  artifactPath: required("--artifact"),
@@ -49,20 +66,37 @@ main().catch((error) => {
49
66
  safeForUser: true,
50
67
  }],
51
68
  }
52
- : {
53
- schemaVersion: 1,
54
- ok: false,
55
- phase: "detect",
56
- acceptanceBlockedReason: "UNEXPECTED_ERROR",
57
- errors: [{
58
- code: "UNEXPECTED_ERROR",
59
- message,
60
- phase: "detect",
61
- retryable: false,
62
- requiresProductFix: false,
63
- safeForUser: true,
64
- }],
65
- };
69
+ : error instanceof HermesConnectFailure
70
+ ? {
71
+ schemaVersion: 1,
72
+ ok: false,
73
+ runtime: "hermes",
74
+ phase: error.phase,
75
+ acceptanceBlockedReason: error.code,
76
+ errors: [{
77
+ code: error.code,
78
+ message,
79
+ phase: error.phase,
80
+ retryable: error.retryable,
81
+ requiresProductFix: error.requiresProductFix,
82
+ safeForUser: true,
83
+ }],
84
+ secretsRedacted: true,
85
+ }
86
+ : {
87
+ schemaVersion: 1,
88
+ ok: false,
89
+ phase: "detect",
90
+ acceptanceBlockedReason: "UNEXPECTED_ERROR",
91
+ errors: [{
92
+ code: "UNEXPECTED_ERROR",
93
+ message,
94
+ phase: "detect",
95
+ retryable: false,
96
+ requiresProductFix: false,
97
+ safeForUser: true,
98
+ }],
99
+ };
66
100
  process.stdout.write(`${JSON.stringify(failure)}\n`);
67
101
  process.exitCode = 1;
68
102
  });
@@ -1 +1 @@
1
- {"version":3,"file":"repair-cli.js","sourceRoot":"","sources":["../src/repair-cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repair-cli.js","sourceRoot":"","sources":["../src/repair-cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"repair.d.ts","sourceRoot":"","sources":["../src/repair.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repair.d.ts","sourceRoot":"","sources":["../src/repair.ts"],"names":[],"mappings":"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"}
package/dist/repair.js CHANGED
@@ -798,9 +798,13 @@ export async function repairOpenClaw(options, suppliedRun = defaultCommandRunner
798
798
  // package is replaced. Keep a certified runtime enabled while staging
799
799
  // the target; the CLI will request a real restart immediately instead
800
800
  // of stopping transport and waiting for evidence the hot reload cannot
801
- // produce. Pre-supervisor/invalid migrations remain disabled, but still
802
- // retain normalized identity so no generation observes config={}.
803
- replacePluginEntry(document, normalized.value, journal.migrationReason === "CERTIFIED_VERSION_UPGRADE_REQUIRES_RESTART");
801
+ // produce. Pre-supervisor/invalid migrations remain disabled on their
802
+ // first pass, but a resumed pass after a verified external restart must
803
+ // stay enabled. Otherwise an immediate rerun can race gateway startup:
804
+ // OpenClaw reads the temporary disabled state and never loads the new
805
+ // plugin generation that the CLI is waiting on for runtime evidence.
806
+ replacePluginEntry(document, normalized.value, journal.migrationReason === "CERTIFIED_VERSION_UPGRADE_REQUIRES_RESTART"
807
+ || realRestartObserved);
804
808
  configWriteMode = mergeWriteMode(configWriteMode, await writeJsonConfig(configPath, document));
805
809
  if (await pathExists(legacyExtension)) {
806
810
  const legacyManifest = JSON.parse(await readFile(join(legacyExtension, "openclaw.plugin.json"), "utf8"));
@@ -1 +1 @@
1
- {"version":3,"file":"repair.js","sourceRoot":"","sources":["../src/repair.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repair.js","sourceRoot":"","sources":["../src/repair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC3G,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EACL,aAAa,EACb,oBAAoB,GAErB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,8BAA8B,GAG/B,MAAM,uBAAuB,CAAC;AA2D/B,MAAM,OAAO,aAAc,SAAQ,KAAK;IAEpB;IACA;IAEA;IACA;IALlB,YACkB,IAAY,EACZ,KAAkB,EAClC,OAAe,EACC,SAAkB,EAClB,kBAA2B;QAE3C,KAAK,CAAC,OAAO,CAAC,CAAC;QANC,SAAI,GAAJ,IAAI,CAAQ;QACZ,UAAK,GAAL,KAAK,CAAa;QAElB,cAAS,GAAT,SAAS,CAAS;QAClB,uBAAkB,GAAlB,kBAAkB,CAAS;QAG3C,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAC9B,CAAC;CACF;AA2DD,MAAM,eAAe,GAAG;IACtB,WAAW;IACX,cAAc;IACd,WAAW;IACX,aAAa;IACb,UAAU;IACV,kBAAkB;IAClB,uBAAuB;IACvB,cAAc;IACd,oBAAoB;CACZ,CAAC;AAEX,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,KAAK,CAAC,KAAc,EAAE,MAAc;IAC3C,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAU,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAClH,CAAC;AAED,SAAS,SAAS,CAAC,IAAa,EAAE,KAAc;IAC9C,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAc,EAAE,MAAe,EAAE,EAAE,GAAG,EAAE;IAIxE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/D,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;QACtG,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;IAC9G,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAEpD,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5C,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC;IAC7C,MAAM,MAAM,GAAe,EAAE,CAAC;IAC9B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,MAAM,SAAS,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAC5C,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACvF,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACxB,SAAS;QACX,CAAC;QACD,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACpE,MAAM,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AACpC,CAAC;AAED,SAAS,eAAe,CAAC,MAAkB,EAAE,KAAiB;IAC5D,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACvC,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,sCAAsC,MAAM,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAe,EAAE,MAAkB;IAChE,IAAI,QAAQ,GAAG,OAAO,CAAC;IACvB,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACnD,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,IAAY;IACpC,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAMD,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,IAAI,KAAK;QACnE,CAAC,CAAC,MAAM,CAAE,KAA4B,CAAC,IAAI,IAAI,EAAE,CAAC;QAClD,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,MAAc,EACd,WAAmB,EACnB,aAAyB,MAAM;IAE/B,IAAI,CAAC;QACH,MAAM,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACtC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,OAAO;YAAE,MAAM,KAAK,CAAC;IAChD,CAAC;IAED,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE;QAC5B,SAAS,EAAE,IAAI;QACf,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,KAAK;QACZ,kBAAkB,EAAE,IAAI;KACzB,CAAC,CAAC;IACH,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,MAAM,KAAK,CAAC;IACd,CAAC;IACD,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAY,EACZ,KAAc,EACd,aAAyB,MAAM;IAE/B,MAAM,UAAU,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;IACzD,MAAM,SAAS,GAAG,GAAG,IAAI,kBAAkB,OAAO,CAAC,GAAG,MAAM,CAAC;IAC7D,MAAM,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACxD,IAAI,CAAC;QACH,MAAM,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAClC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,OAAO;YAAE,MAAM,KAAK,CAAC;QAC1E,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACzB,MAAM,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC3C,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACtB,CAAC;gBAAS,CAAC;YACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;QACD,OAAO,wBAAwB,CAAC;IAClC,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,QAAgB;IACtD,MAAM,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,yBAAyB,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACxD,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,OAAO,EAAE,CAAC;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,QAAQ;YAAE,MAAM,KAAK,CAAC;QAC/C,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAA2C,CAAC;YACpG,MAAM,GAAG,GAAG,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;YACjE,MAAM,SAAS,GAAG,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;YAC/F,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC;oBAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBAAC,CAAC;gBAAC,OAAO,UAAU,EAAE,CAAC;oBAAC,KAAK,GAAG,SAAS,CAAC,UAAU,CAAC,KAAK,OAAO,CAAC;gBAAC,CAAC;YACjG,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,EAAE,GAAG,MAAM;gBAAE,KAAK,GAAG,IAAI,CAAC;QAChH,CAAC;QAAC,MAAM,CAAC,CAAC,uDAAuD,CAAC,CAAC;QACnE,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;QACxF,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC,MAAM,GAAG,MAAM,OAAO,EAAE,CAAC;IAC3B,CAAC;IACD,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACjH,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IACpB,OAAO,KAAK,IAAI,EAAE;QAChB,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,MAAc;IACrC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IAC9B,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC1D,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;QAC7C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC;gBAAC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,KAAc,EAAE,IAAiB;IACnD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACvC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC;YAAE,OAAO,KAAK,CAAC;IAC9F,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACtC,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;IACxC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,eAAe,CAAC,MAAe;IACtC,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACnE,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAC1G,OAAO;QACL,GAAG,EAAE,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;QACrI,SAAS,EAAE,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;KACnE,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,wBAAwB,CAAC,GAAkB,EAAE,MAAe;IACzE,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IACzC,IAAI,QAAQ,CAAC,GAAG,KAAK,SAAS,IAAI,QAAQ,CAAC,SAAS;QAAE,OAAO,QAAQ,CAAC;IACtE,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC1E,MAAM,SAAS,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,OAAO,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC3D,CAAC;AAED,SAAS,cAAc,CAAC,MAA4C,EAAE,KAA2C;IAC/G,IAAI,MAAM,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,MAAM,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACjG,IAAI,MAAM,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS;QAAE,OAAO,MAAM,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC;IACrF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CAAC,MAAc,EAAE,SAAiB;IACrD,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC;YAC3C,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACrB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC;gBAC7D,MAAM,SAAS,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;gBACzH,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;oBAAE,OAAO,EAAE,CAAC;gBAC3C,MAAM,YAAY,GAAG,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;gBAChF,IAAI,YAAY,GAAG,SAAS,GAAG,KAAK;oBAAE,OAAO,EAAE,CAAC;gBAChD,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,CAAC;QAChC,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAc,EAAE,SAAiB,EAAE,SAAiB;IAC3F,OAAO,cAAc,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,cAAc,CAAC,IAAY,EAAE,SAAiB;IACrD,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,oCAAoC,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC;IACrF,OAAO;QACL,YAAY,EAAE,KAAK;QACnB,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC;QAClD,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,2BAA2B,CAAC;QACtD,YAAY,EAAE,cAAc,GAAG,CAAC;QAChC,cAAc;QACd,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,iCAAiC,SAAS,EAAE,CAAC;QACvE,eAAe,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QAC5E,qBAAqB,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;QACrF,aAAa,EAAE,CAAC;KACjB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAkB,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,GAAG,EAAE,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,EAAE;IACxH,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAClG,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,SAAoD,CAAC;IACzD,MAAM,MAAM,GAAG,CAAC,QAAoB,EAAE,EAAE;QACtC,IAAI,OAAO;YAAE,OAAO;QACpB,OAAO,GAAG,IAAI,CAAC;QACf,IAAI,YAAY;YAAE,YAAY,CAAC,YAAY,CAAC,CAAC;QAC7C,IAAI,SAAS;YAAE,YAAY,CAAC,SAAS,CAAC,CAAC;QACvC,OAAO,CAAC,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACxD,QAAQ,EAAE,CAAC;IACb,CAAC,CAAC;IACF,MAAM,SAAS,GAAG,GAAG,EAAE;QACrB,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI;YAAE,OAAO;QACpC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtB,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAC1B,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI;gBAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrD,CAAC,EAAE,GAAG,CAAC,CAAC;QACR,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC;IACtB,CAAC,CAAC;IACF,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC;QAC1E,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QACvD,CAAC,CAAC,SAAS,CAAC;IACd,YAAY,EAAE,KAAK,EAAE,EAAE,CAAC;IACxB,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACrE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5D,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;AAClG,CAAC,CAAC,CAAC;AAEH,KAAK,UAAU,OAAO,CAAC,GAAkB,EAAE,OAAe,EAAE,IAAc,EAAE,KAAa;IACvF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IACnD,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,YAAY,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IACpH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,IAAY;IAC3C,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAqB,CAAC;QAC3E,OAAO,CAAC,KAAK,EAAE,aAAa,KAAK,CAAC,IAAI,KAAK,EAAE,aAAa,KAAK,CAAC,CAAC;eAC5D,KAAK,CAAC,SAAS,KAAK,6BAA6B;YACpD,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,QAAgB;IACjD,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAoB,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;IACtF,IAAI,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC;QAC7D,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC3D,OAAO;YACL,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,SAAS,EAAE,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,IAAI,SAAS;YACrG,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,aAAa,EAAE;SACzC,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,eAAe,EAAE,EAAE,CAAC;QAC5B,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC;IACjF,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,sBAAsB,CAAC,MAA0C,EAAE,KAAoC;IAC9G,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACpC,OAAO,MAAM,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,IAAI,MAAM,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC;AAC5G,CAAC;AAED,SAAS,yBAAyB,CAAC,MAA+B;IAChE,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC1B,OAAO,MAAM,CAAC,KAAK,KAAK,SAAS;WAC5B,MAAM,CAAC,gBAAgB,KAAK,CAAC;WAC7B,CAAC,MAAM,CAAC,mBAAmB;WAC3B,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC;WAC5B,MAAM,CAAC,GAAG,GAAG,CAAC;WACd,MAAM,CAAC,mBAAmB,KAAK,oBAAoB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACvE,CAAC;AAED,KAAK,UAAU,eAAe;IAC5B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;QAC1D,OAAO,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,QAAoB;IAC1C,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAChE,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpE,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1D,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,+BAA+B,CACtC,QAAoB,EACpB,UAAkC;IAElC,IAAI,CAAC,UAAU,IAAI,QAAQ,CAAC,SAAS,KAAK,UAAU,CAAC,SAAS;QAAE,OAAO,QAAQ,CAAC;IAChF,MAAM,eAAe,GAAG,KAAK,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IAC5D,MAAM,oBAAoB,GAAG,KAAK,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;IACtE,IACE,CAAC,OAAO,eAAe,KAAK,QAAQ,IAAI,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;WACnE,CAAC,OAAO,oBAAoB,KAAK,QAAQ,IAAI,oBAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;QACnF,OAAO,QAAQ,CAAC;IAElB,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC1C,KAAK,MAAM,OAAO,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,CAAU,EAAE,CAAC;QACxE,MAAM,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAe,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1F,MAAM,iBAAiB,GAAG,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAe,CAAC,CAAC,CAAC,EAAE,CAAC;QACjG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,eAAe,CAAC,iBAAiB,CAAC,EAAE,CAAC;IAClF,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAoB,EAAE,MAAkB,EAAE,OAAgB;IACpF,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,QAAQ,CAAC,OAAO,GAAG,EAAE,CAAC;IACvD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAqB,CAAC;IAC/C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;IACrD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAqB,CAAC;IAC9C,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5F,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC3D,CAAC;AAED,SAAS,cAAc,CAAC,MAAkB,EAAE,YAAoB,EAAE,UAAkB;IAClF,IAAI,MAAM,CAAC,SAAS,KAAK,YAAY;QAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IAC9G,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,uBAAuB,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1E,IAAI,OAAO,KAAK,UAAU,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,WAAW,UAAU,YAAY,CAAC,EAAE,CAAC;QACxF,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,WAAW,CAAC,MAAc,EAAE,KAAa;IAChD,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACpC,IAAI,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,GAAG,EAAE,CAAC,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO;IAC5F,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;AACnE,CAAC;AA+CD,KAAK,UAAU,UAAU,CAAC,IAAY;IACpC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACzE,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAI,IAAY;IAC7C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAM,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAAY,EAAE,KAAc;IAC1D,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7D,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAChD,MAAM,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACzB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB;IACvC,OAAO,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,WAAW,CAAC,QAAgB,EAAE,OAAe,EAAE,cAAsB;IAC5E,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,GAAG,OAAO,IAAI,cAAc,OAAO,CAAC,CAAC;AAC1F,CAAC;AAED,SAAS,WAAW,CAAC,QAAgB;IACnC,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,qBAAqB,CAAC,CAAC;AAChE,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,KAKpC;IACC,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,mBAAmB,CAAC,CAAC;IACpI,MAAM,OAAO,GAAG,eAAe,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACtD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IAC/E,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9D,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,MAAM,gBAAgB,GAAG,OAAO,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC;IACnE,IAAI,MAAM,CAAC,EAAE,KAAK,YAAY,IAAI,OAAO,gBAAgB,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC7G,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClD,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAClC,IAAI,UAAU,KAAK,WAAW;QAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAE5G,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IACxD,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;IACjE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAe,CAAC;IAClF,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAe,CAAC;IACzF,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7D,IACE,WAAW,CAAC,IAAI,KAAK,oBAAoB;WACtC,WAAW,CAAC,OAAO,KAAK,KAAK,CAAC,aAAa;WAC3C,iBAAiB,CAAC,EAAE,KAAK,YAAY;WACrC,iBAAiB,CAAC,OAAO,KAAK,KAAK,CAAC,aAAa;WACjD,GAAG,CAAC,YAAY,CAAC,KAAK,oBAAoB;WAC1C,CAAC,MAAM,UAAU,CAAC,SAAS,CAAC;WAC5B,CAAC,MAAM,UAAU,CAAC,aAAa,CAAC,EACnC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5H,MAAM,eAAe,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1F,MAAM,WAAW,GAAG,OAAO,EAAE,KAAK,CAAC,kCAAkC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5E,MAAM,aAAa,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,eAAe,KAAK,KAAK,CAAC,aAAa,CAAC;WAC3F,CAAC,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,KAAK,CAAC,aAAa,CAAC,CAAC;IACxE,OAAO;QACL,WAAW,EAAE,WAAW;QACxB,YAAY,EAAE,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;QACzF,MAAM,EAAE,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;QAC3H,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO;QACzC,cAAc,EAAE,aAAa,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS;QAC3D,eAAe,EAAE,MAAM,UAAU,CAAC,WAAW,CAAC;QAC9C,YAAY,EAAE,MAAM,UAAU,CAAC,YAAY,CAAC;QAC5C,SAAS,EAAE,MAAM,UAAU,CAAC,SAAS,CAAC;QACtC,aAAa,EAAE,MAAM,UAAU,CAAC,aAAa,CAAC;KAC/C,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,OAAmC,EAAE,QAAgC,EAAE,OAAe,EAAE,cAAsB;IACpI,OAAO,OAAO,CAAC,OAAO,CAAC;WAClB,OAAO,EAAE,aAAa,KAAK,CAAC;WAC5B,OAAO,CAAC,aAAa,KAAK,OAAO;WACjC,OAAO,CAAC,cAAc,KAAK,cAAc;WACzC,OAAO,CAAC,mBAAmB,KAAK,QAAQ,CAAC,WAAW;WACpD,OAAO,CAAC,eAAe,KAAK,QAAQ,CAAC,eAAe;WACpD,OAAO,CAAC,YAAY,KAAK,QAAQ,CAAC,YAAY;WAC9C,OAAO,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS;WACxC,OAAO,CAAC,aAAa,KAAK,QAAQ,CAAC,aAAa,CAAC;AACxD,CAAC;AAED,SAAS,cAAc,CAAC,OAAwB,EAAE,IAAqB;IACrE,OAAO,OAAO,KAAK,wBAAwB,IAAI,IAAI,KAAK,wBAAwB;QAC9E,CAAC,CAAC,wBAAwB;QAC1B,CAAC,CAAC,QAAQ,CAAC;AACf,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY,EAAE,KAK7C;IACC,OAAO,IAAI,CAAC,QAAQ,CAClB,sCAAsC,KAAK,CAAC,OAAO,YAAY,KAAK,CAAC,OAAO,cAAc,KAAK,CAAC,SAAS,gBAAgB,KAAK,CAAC,WAAW,EAAE,CAC7I,CAAC;AACJ,CAAC;AAiBD,KAAK,UAAU,qBAAqB,CAAC,IAAY,EAAE,KAQlD;IACC,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAsB,IAAI,CAAC,CAAC;IACjE,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC7C,IACE,CAAC,MAAM,CAAC,aAAa,KAAK,CAAC,IAAI,MAAM,CAAC,aAAa,KAAK,CAAC,CAAC;WACvD,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;WAChC,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;WAChC,MAAM,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;WACpC,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;WAC1B,QAAQ,GAAG,KAAK,CAAC,SAAS,GAAG,KAAK;QACrC,OAAO,IAAI,CAAC;IACd,IAAI,CAAC;QACH,IAAI,MAAM,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,KAAK,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC;QACzE,OAAO;YACL,MAAM;YACN,kBAAkB,EAAE,MAAM,CAAC,WAAW,KAAK,KAAK,CAAC,WAAW;YAC5D,mBAAmB,EAAE,MAAM,CAAC,aAAa,KAAK,CAAC,IAAI,MAAM,CAAC,YAAY,KAAK,KAAK,CAAC,YAAY;YAC7F,aAAa,EAAE,MAAM,CAAC,aAAa,KAAK,CAAC;mBACpC,MAAM,CAAC,UAAU,KAAK,cAAc;mBACpC,OAAO,MAAM,CAAC,cAAc,KAAK,QAAQ;mBACzC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC;SACzC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,OAAe;IAC5D,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACzE,OAAO,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,IAAI,CAAC,KAAK,KAAK,EAAE,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,8BAA8B,GAAG,MAAM,CAAC;AAC9C,MAAM,sBAAsB,GAAG,OAAO,CAAC;AACvC,MAAM,wBAAwB,GAAG,MAAM,CAAC;AAExC;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,iBAAyB,EACzB,sBAA8B;IAE9B,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,sBAAsB,CAAC,GAAG,8BAA8B,CAAC;IAC/F,OAAO,sBAAsB;UACzB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;UAC3D,wBAAwB,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,KASvC;IACC,OAAO,KAAK,CAAC,eAAe;WACvB,KAAK,CAAC,KAAK,KAAK,SAAS;WACzB,KAAK,CAAC,SAAS,KAAK,6BAA6B;WACjD,KAAK,CAAC,gBAAgB,KAAK,CAAC;WAC5B,KAAK,CAAC,SAAS;WACf,KAAK,CAAC,UAAU;WAChB,KAAK,CAAC,UAAU;WAChB,CAAC,KAAK,CAAC,qBAAqB,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAMnC;IACC,OAAO,KAAK,CAAC,gBAAgB;WACxB,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,iBAAiB;WAC5C,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,sBAAsB,CAAC;AAC5D,CAAC;AAED,KAAK,UAAU,IAAI,CAAC,EAAU;IAC5B,MAAM,IAAI,OAAO,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAsB,EAAE,cAA6B,oBAAoB;IAC5G,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACtC,MAAM,UAAU,GAAG,kBAAkB,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,CAAC;IACvE,IAAI,YAAY,GAAgB,QAAQ,CAAC;IACzC,MAAM,GAAG,GAAkB,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,GAAG,EAAE,EAAE,EAAE;QAClE,MAAM,WAAW,GAAG,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxF,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,aAAa,CACrB,iBAAiB,EACjB,YAAY,EACZ,oCAAoC,YAAY,UAAU,KAAK,cAAc,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,gBAAgB,EAC5H,IAAI,EACJ,KAAK,CACN,CAAC;QACJ,CAAC;QACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,IAAI,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;QACjG,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM;YAC9B,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;YACzD,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;QACtB,IAAI,KAAgD,CAAC;QACrD,IAAI,CAAC;YACH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC;gBACxB,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,GAAG,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC;gBACzF,IAAI,OAAO,CAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;oBACtC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;wBACtB,UAAU,CAAC,KAAK,EAAE,CAAC;wBACnB,MAAM,CAAC,IAAI,aAAa,CACtB,iBAAiB,EACjB,YAAY,EACZ,4BAA4B,YAAY,UAAU,KAAK,cAAc,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,gBAAgB,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,EAC1J,IAAI,EACJ,KAAK,CACN,CAAC,CAAC;oBACL,CAAC,EAAE,gBAAgB,CAAC,CAAC;oBACrB,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;gBAClB,CAAC,CAAC;aACH,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,YAAY,aAAa,CAAC,EAAE,CAAC;gBACnE,MAAM,IAAI,aAAa,CACrB,iBAAiB,EACjB,YAAY,EACZ,4BAA4B,YAAY,UAAU,KAAK,cAAc,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,gBAAgB,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,EAC1J,IAAI,EACJ,KAAK,CACN,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,IAAI,KAAK;gBAAE,YAAY,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,IAAI,UAAU,CAAC;IACnD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;IAC7G,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;IACtH,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3E,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAe,CAAC;IAChF,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC;IACtD,IAAI,QAAQ,CAAC,EAAE,KAAK,YAAY,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC/H,IAAI,CAAC,MAAM,UAAU,CAAC,YAAY,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IAC5F,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,CAAC;IACtD,IAAI,cAAc,KAAK,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,cAAc,EAAE,CAAC,CAAC;IAErI,MAAM,iBAAiB,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC5D,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAgB,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;QAClF,MAAM,SAAS,GAAG,YAAY,EAAE,aAAa,KAAK,CAAC;eAC9C,YAAY,CAAC,KAAK,KAAK,MAAM;eAC7B,YAAY,CAAC,aAAa,KAAK,OAAO;eACtC,YAAY,CAAC,cAAc,KAAK,cAAc;eAC9C,YAAY,CAAC,iBAAiB,KAAK,OAAO,CAAC,iBAAiB;eAC5D,YAAY,CAAC,eAAe,KAAK,OAAO,CAAC,eAAe,CAAC;QAC9D,MAAM,gBAAgB,GAAG,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QACpE,IAAI,OAAO,GAAkB,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;YACtD,aAAa,EAAE,CAAC;YAChB,SAAS,EAAE,UAAU,EAAE;YACvB,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC3C,aAAa,EAAE,OAAO;YACtB,cAAc,EAAE,cAAc;YAC9B,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;YAC5C,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,KAAK,EAAE,QAAQ;YACf,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC;QACF,MAAM,QAAQ,GAAG,KAAK,EAAE,KAAkB,EAAiB,EAAE;YAC3D,YAAY,GAAG,KAAK,CAAC;YACrB,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;YACrE,MAAM,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;QACzD,CAAC,CAAC;QACF,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEzB,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE,0BAA0B,CAAC,CAAC;QAC9D,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1D,MAAM,cAAc,GAAG,SAAS,IAAI,YAAY,CAAC,UAAU,IAAI,MAAM,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC;YACtG,CAAC,CAAC,YAAY,CAAC,UAAU;YACzB,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,UAAU,GAAG,cAAc,IAAI,IAAI,CAAC,UAAU,EAAE,YAAY,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAC5F,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;QACnE,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,EAAE,wBAAwB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC9E,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACvD,MAAM,iBAAiB,GAAG,cAAc,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QAChG,IAAI,QAAoB,CAAC;QACzB,IAAI,CAAC;YAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAe,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;QAAC,CAAC;QACrJ,IAAI,cAA0B,CAAC;QAC/B,IAAI,CAAC;YAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAe,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAAC,CAAC;QAC9I,MAAM,cAAc,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;QACtD,MAAM,WAAW,GAAG,SAAS,IAAI,YAAY,CAAC,WAAW;YACvD,CAAC,CAAC,YAAY,CAAC,WAAW;YAC1B,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC;QACnD,MAAM,MAAM,GAAG,eAAe,CAC5B,cAAc;YACZ,CAAC,CAAC,+BAA+B,CAAC,cAAc,EAAE,OAAO,CAAC,aAAa,CAAC;YACxE,CAAC,CAAC,OAAO,CAAC,aAAa,CAC1B,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QACnF,MAAM,YAAY,GAAG,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1E,MAAM,sBAAsB,GAAG,MAAM,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACnE,MAAM,kBAAkB,GAAG,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9E,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,kBAAkB,EAAE,sBAAsB,CAAC,CAAC;QAC/F,MAAM,sCAAsC,GAAG,OAAO,CACpD,cAAc;eACX,yBAAyB,CAAC,YAAY,CAAC;eACvC,YAAY,EAAE,aAAa;eAC3B,YAAY,CAAC,aAAa,KAAK,OAAO;eACtC,CAAC,mBAAmB,CACxB,CAAC;QACF,MAAM,iCAAiC,GAAG,OAAO,CAAC,cAAc,CAAC;eAC5D,CAAC,yBAAyB,CAAC,YAAY,CAAC;eACxC,CAAC,mBAAmB,CAAC;QAC1B,MAAM,iBAAiB,GAAG,sCAAsC,IAAI,iCAAiC,CAAC;QACtG,MAAM,eAAe,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;eAC1E,CAAC,sCAAsC;gBACxC,CAAC,CAAC,4CAA4C;gBAC9C,CAAC,CAAC,iCAAiC;oBACjC,CAAC,CAAC,uCAAuC;oBACzC,CAAC,CAAC,SAAS,CAAC,CAAC;QACnB,MAAM,aAAa,GAAG,kBAAkB,IAAI,sBAAsB,IAAI,SAAS,CAAC;QAChF,OAAO,GAAG;YACR,GAAG,OAAO;YACV,WAAW;YACX,iBAAiB,EAAE,iBAAiB,IAAI,CAAC,SAAS,IAAI,YAAY,EAAE,iBAAiB,KAAK,IAAI,CAAC;YAC/F,eAAe;YACf,aAAa;YACb,mBAAmB;SACpB,CAAC;QACF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,SAAS,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC1D,MAAM,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,UAAU,EAAE,CAAC;QACrC,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC3B,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;QACpE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACxF,eAAe,CAAC,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QAC1C,cAAc,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;QAErF,yEAAyE;QACzE,2EAA2E;QAC3E,0EAA0E;QAC1E,yEAAyE;QACzE,IAAI,eAAyF,CAAC;QAC9F,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;YACnF,IAAI,CAAC;gBACH,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAe,CAAC;gBAC5G,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,sBAAsB,CAAC,EAAE,MAAM,CAAC,CAAe,CAAC;gBACrH,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnG,IACE,eAAe,CAAC,IAAI,KAAK,oBAAoB;uBAC1C,gBAAgB,CAAC,EAAE,KAAK,YAAY;uBACpC,gBAAgB,CAAC,OAAO,KAAK,eAAe;uBAC5C,eAAe;uBACf,eAAe,KAAK,OAAO,EAC9B,CAAC;oBACD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,sBAAsB,eAAe,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBAC3F,MAAM,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;oBACzF,eAAe,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;gBAC1E,CAAC;YACH,CAAC;YAAC,MAAM,CAAC,CAAC,qDAAqD,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,KAAK,IAAI,CAAC;QACzD,IAAI,eAAe,GAAG,KAAK,CAAC;QAC5B,IAAI,eAAe,GAAoB,QAAQ,CAAC;QAChD,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,IAAI,eAAmD,CAAC;QACxD,IAAI,CAAC;YACH,wEAAwE;YACxE,sEAAsE;YACtE,sEAAsE;YACtE,uEAAuE;YACvE,sEAAsE;YACtE,wEAAwE;YACxE,uEAAuE;YACvE,sEAAsE;YACtE,qEAAqE;YACrE,kBAAkB,CAChB,QAAQ,EACR,UAAU,CAAC,KAAK,EAChB,OAAO,CAAC,eAAe,KAAK,4CAA4C;mBACnE,mBAAmB,CACzB,CAAC;YACF,eAAe,GAAG,cAAc,CAAC,eAAe,EAAE,MAAM,eAAe,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;YAE/F,IAAI,MAAM,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;gBACtC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,sBAAsB,CAAC,EAAE,MAAM,CAAC,CAAe,CAAC;gBACvH,IAAI,cAAc,CAAC,EAAE,KAAK,YAAY;oBAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;gBACzG,MAAM,+BAA+B,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;gBACvE,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;YAED,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC1B,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;YACnE,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAiB,WAAW,CAAC,CAAC;YACpE,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC;oBACnG,IAAI,cAAc,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,CAAC;wBAChE,eAAe,GAAG,SAAS,CAAC;wBAC5B,WAAW,GAAG,IAAI,CAAC;oBACrB,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC,CAAC,sDAAsD,CAAC,CAAC;YACpE,CAAC;YAED,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,YAAY,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC;gBAC9I,MAAM,YAAY,GAAG,GAAG,aAAa,CAAC,MAAM,KAAK,aAAa,CAAC,MAAM,EAAE,CAAC;gBACxE,IAAI,aAAa,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;oBACnF,MAAM,IAAI,KAAK,CAAC,kCAAkC,YAAY,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBACzF,CAAC;gBACD,gBAAgB,GAAG,IAAI,CAAC;gBACxB,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;gBACjD,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC;gBAC1B,eAAe,GAAG,MAAM,qBAAqB,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC;gBACnG,MAAM,UAAU,GAAmB;oBACjC,aAAa,EAAE,CAAC;oBAChB,aAAa,EAAE,OAAO;oBACtB,cAAc,EAAE,cAAc;oBAC9B,eAAe,EAAE,eAAe,CAAC,eAAe;oBAChD,YAAY,EAAE,eAAe,CAAC,YAAY;oBAC1C,SAAS,EAAE,eAAe,CAAC,SAAS;oBACpC,aAAa,EAAE,eAAe,CAAC,aAAa;oBAC5C,mBAAmB,EAAE,eAAe,CAAC,WAAW;oBAChD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACpC,CAAC;gBACF,MAAM,gBAAgB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;gBAChD,cAAc,GAAG,IAAI,CAAC;YACxB,CAAC;YACD,gBAAgB,GAAG,IAAI,CAAC;YACxB,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;YAEjD,IAAI,cAAkD,CAAC;YACvD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;gBACzB,MAAM,gBAAgB,GAAG,OAAO,CAAC,uBAAuB,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBACrF,cAAc,GAAG;oBACf,aAAa,EAAE,CAAC;oBAChB,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,aAAa,EAAE,OAAO;oBACtB,eAAe,EAAE,OAAO,CAAC,eAAe;oBACxC,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,SAAS,EAAE,gBAAgB;iBAC5B,CAAC;gBACF,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,CAAC;gBACpE,mEAAmE;gBACnE,wEAAwE;gBACxE,wEAAwE;gBACxE,2DAA2D;gBAC3D,MAAM,gBAAgB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC,CAAC;YACvE,CAAC;YAED,MAAM,QAAQ,CAAC,gBAAgB,CAAC,CAAC;YACjC,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACtD,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAe,CAAC;YAC7D,kBAAkB,CAAC,eAAe,EAAE,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAC5D,eAAe,GAAG,cAAc,CAAC,eAAe,EAAE,MAAM,eAAe,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC;YACtG,eAAe,GAAG,IAAI,CAAC;YAEvB,MAAM,QAAQ,CAAC,iBAAiB,CAAC,CAAC;YAClC,MAAM,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,mBAAmB,CAAC,CAAC;YAC1E,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,eAAe,CAAC,CAAC;YACpF,MAAM,UAAU,GAAG,GAAG,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC;YACtE,IAAI,UAAU,CAAC,QAAQ,CAAC,8BAA8B,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;YAC5H,MAAM,cAAc,GAAG,MAAM,qBAAqB,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC;YACxG,IAAI,cAAc,CAAC,WAAW,KAAK,eAAe,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;YAEvI,MAAM,gBAAgB,GAAG,cAAc,CAAC,EAAE,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;YACvE,MAAM,aAAa,GAA4B,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;YACrF,MAAM,SAAS,GAA8B;gBAC3C,QAAQ,EAAE,OAAO,CAAC,iBAAiB,KAAK,IAAI;gBAC5C,MAAM,EAAE,OAAO,CAAC,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS;gBAChF,mBAAmB;gBACnB,QAAQ,EAAE,OAAO,CAAC,iBAAiB,KAAK,IAAI;oBAC1C,CAAC,CAAC,uBAAuB;oBACzB,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,kBAAkB;aAC1E,CAAC;YACF,aAAa,CAAC,SAAS,GAAG,aAAa,EAAE,GAAG,CAAC;YAC7C,aAAa,CAAC,eAAe,GAAG,aAAa,EAAE,SAAS,CAAC;YACzD,IAAI,WAAW,GAAG,gBAAgB,CAAC;YACnC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;YACpF,MAAM,oBAAoB,GAAG,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAC5D,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;gBACzB,IAAI,CAAC,cAAc;oBAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;gBACrF,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;gBAC9D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;gBACzG,IAAI,SAAS,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,CAAC;oBACzD,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC;oBAC1B,MAAM,IAAI,aAAa,CACrB,8BAA8B,EAC9B,SAAS,EACT,SAAS,CAAC,MAAM,KAAK,4CAA4C;wBAC/D,CAAC,CAAC,wJAAwJ;wBAC1J,CAAC,CAAC,8JAA8J,EAClK,IAAI,EACJ,KAAK,CACN,CAAC;gBACJ,CAAC;gBACD,IAAI,SAAS,CAAC,QAAQ;oBAAE,aAAa,CAAC,MAAM,GAAG,uBAAuB,CAAC;gBACvE,MAAM,QAAQ,CAAC,gBAAgB,CAAC,CAAC;gBAEjC,MAAM,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,OAAO,CAAC;gBAC/D,MAAM,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,IAAI,CAAC,CAAC;gBACnE,MAAM,sBAAsB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC1C,MAAM,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,KAAK,SAAS;oBAC1E,CAAC,CAAC,sBAAsB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC;oBACtE,CAAC,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS;wBAC/B,CAAC,CAAC,UAAU;wBACZ,CAAC,CAAC,sBAAsB,GAAG,qBAAqB,CAAC,iBAAiB,EAAE,sBAAsB,CAAC,CAAC;gBAChG,IAAI,YAAgC,CAAC;gBACrC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,uBAAuB,EAAE,CAAC;oBAC5C,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;oBACzG,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAC3E,MAAM,kBAAkB,GAAG,MAAM,qBAAqB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE;wBAClF,OAAO;wBACP,OAAO,EAAE,OAAO,CAAC,eAAe;wBAChC,SAAS,EAAE,OAAO,CAAC,SAAS;wBAC5B,WAAW,EAAE,mBAAmB;wBAChC,YAAY,EAAE,oBAAoB;wBAClC,WAAW,EAAE,eAAe,CAAC,WAAW;wBACxC,SAAS,EAAE,gBAAgB;qBAC5B,CAAC,CAAC;oBACH,MAAM,aAAa,GAAG,kBAAkB,EAAE,MAAM,CAAC;oBACjD,MAAM,WAAW,GAAG,OAAO,CACzB,kBAAkB,EAAE,aAAa;2BAC9B,aAAa,EAAE,UAAU,KAAK,aAAa,EAAE,UAAU,CAC3D,CAAC;oBACF,MAAM,iBAAiB,GAAG,OAAO,CAC/B,kBAAkB,EAAE,mBAAmB;2BACpC,kBAAkB,CAAC,kBAAkB;2BACrC,aAAa,EAAE,YAAY,KAAK,aAAa,EAAE,YAAY,CAC/D,CAAC;oBACF,WAAW,GAAG;wBACZ,YAAY,EAAE,WAAW,IAAI,OAAO,CAAC,aAAa,IAAI,aAAa,CAAC,aAAa,KAAK,CAAC,CAAC;wBACxF,SAAS,EAAE,aAAa,EAAE,cAAc,KAAK,IAAI;wBACjD,UAAU,EAAE,aAAa,EAAE,eAAe,KAAK,IAAI;wBACnD,YAAY,EAAE,CAAC,aAAa,EAAE,iBAAiB,IAAI,CAAC,CAAC,GAAG,CAAC;wBACzD,cAAc,EAAE,aAAa,EAAE,iBAAiB,IAAI,CAAC;wBACrD,UAAU,EAAE,aAAa,EAAE,aAAa,KAAK,IAAI;wBACjD,eAAe,EAAE,KAAK;wBACtB,qBAAqB,EAAE,OAAO,CAAC,aAAa,EAAE,mBAAmB,CAAC;wBAClE,aAAa,EAAE,CAAC;wBAChB,iBAAiB;qBAClB,CAAC;oBACF,aAAa,CAAC,QAAQ,GAAG,aAAa,EAAE,GAAG,CAAC;oBAC5C,aAAa,CAAC,cAAc,GAAG,aAAa,EAAE,gBAAgB,CAAC;oBAC/D,MAAM,YAAY,GAAkC,aAAa,CAAC,CAAC,CAAC;wBAClE,GAAG,EAAE,aAAa,CAAC,GAAG;wBACtB,SAAS,EAAE,aAAa,CAAC,gBAAgB;wBACzC,MAAM,EAAE,aAAa,CAAC,MAAM;qBAC7B,CAAC,CAAC,CAAC,IAAI,CAAC;oBACT,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;oBAC9E,IAAI,iBAAiB;wBAAE,SAAS,CAAC,mBAAmB,GAAG,IAAI,CAAC;oBAC5D,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,aAAa,CAAC;2BAC5D,aAAa,EAAE,aAAa,KAAK,OAAO;2BACxC,OAAO,CAAC,aAAa,CAAC,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,eAAe,CAAC,WAAW,CAAC;2BACxG,OAAO,CAAC,aAAa,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,gBAAgB,GAAG,KAAK,CAAC;2BACnG,OAAO,CAAC,aAAa,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,gBAAgB,GAAG,KAAK,CAAC,CAAC;oBACzG,MAAM,sBAAsB,GAAG,OAAO,CACpC,gBAAgB;2BACb,aAAa;2BACb,aAAa,CAAC,YAAY,KAAK,oBAAoB;2BACnD,8BAA8B,CAAC,aAAa,EAAE,cAAc,CAAC,CACjE,CAAC;oBACF,MAAM,sBAAsB,GAAG,OAAO,CACpC,gBAAgB;2BACb,CAAC,8BAA8B,CAAC,OAAO,CAAC;2BACxC,kBAAkB,CACtB,CAAC;oBACF,aAAa,CAAC,aAAa,GAAG,sBAAsB;wBAClD,CAAC,CAAC,0BAA0B;wBAC5B,CAAC,CAAC,sBAAsB;4BACtB,CAAC,CAAC,0BAA0B;4BAC5B,CAAC,CAAC,SAAS,CAAC;oBAChB,MAAM,mBAAmB,GAAG,CAAC,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,mBAAmB,CAAC;oBACjF,aAAa,CAAC,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,mBAAmB,CAAC;oBACrF,aAAa,CAAC,UAAU,GAAG,aAAa,CAAC,QAAQ;wBAC/C,CAAC,CAAC,sBAAsB;4BACtB,CAAC,CAAC,wBAAwB;4BAC1B,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,kBAAkB;wBAChE,CAAC,CAAC,SAAS,CAAC;oBACd,MAAM,gBAAgB,GAAG,uBAAuB,CAAC;wBAC/C,eAAe,EAAE,aAAa,CAAC,QAAQ;wBACvC,KAAK,EAAE,aAAa,EAAE,KAAK;wBAC3B,SAAS,EAAE,aAAa,EAAE,SAAS;wBACnC,gBAAgB,EAAE,aAAa,EAAE,gBAAgB;wBACjD,SAAS,EAAE,WAAW,CAAC,SAAS;wBAChC,UAAU,EAAE,WAAW,CAAC,UAAU;wBAClC,UAAU,EAAE,WAAW,CAAC,UAAU;wBAClC,qBAAqB,EAAE,WAAW,CAAC,qBAAqB;qBACzD,CAAC,CAAC;oBACH,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACtB,YAAY,GAAG,SAAS,CAAC;wBACzB,SAAS;oBACX,CAAC;oBACD,YAAY,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;oBAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC;oBAC9C,WAAW,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,CAAC;oBAC5D,IAAI,mBAAmB,CAAC;wBACtB,gBAAgB;wBAChB,WAAW;wBACX,iBAAiB;wBACjB,cAAc,EAAE,WAAW,CAAC,cAAc;wBAC1C,sBAAsB;qBACvB,CAAC;wBAAE,MAAM;gBACZ,CAAC;gBACD,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;oBAC5B,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;wBACxB,MAAM,IAAI,aAAa,CACrB,gCAAgC,EAChC,gBAAgB,EAChB,iHAAiH,EACjH,IAAI,EACJ,IAAI,CACL,CAAC;oBACJ,CAAC;oBACD,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;gBAClG,CAAC;gBACD,IACE,CAAC,WAAW,CAAC,SAAS;uBACnB,CAAC,WAAW,CAAC,UAAU;uBACvB,WAAW,CAAC,cAAc,GAAG,sBAAsB;uBACnD,CAAC,WAAW,CAAC,UAAU;uBACvB,WAAW,CAAC,qBAAqB;oBACpC,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBACjF,IAAI,YAAY,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,GAAG,iBAAiB,EAAE,CAAC;oBAChF,MAAM,IAAI,KAAK,CAAC,gDAAgD,iBAAiB,IAAI,CAAC,CAAC;gBACzF,CAAC;YACH,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,WAAW;gBAAE,MAAM,EAAE,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAClF,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC;YACvB,OAAO;gBACL,aAAa,EAAE,CAAC;gBAChB,EAAE,EAAE,IAAI;gBACR,KAAK,EAAE,MAAM;gBACb,OAAO;gBACP,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW;gBAC/C,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,IAAI;gBAChB,gBAAgB;gBAChB,gBAAgB,EAAE,IAAI;gBACtB,MAAM,EAAE,aAAa;gBACrB,eAAe,EAAE;oBACf,YAAY,EAAE,eAAe,CAAC,YAAY;oBAC1C,MAAM,EAAE,eAAe,CAAC,MAAM;oBAC9B,IAAI,EAAE,eAAe,CAAC,IAAI;oBAC1B,cAAc,EAAE,eAAe,CAAC,cAAc;oBAC9C,WAAW;oBACX,cAAc;oBACd,WAAW,EAAE,eAAe,CAAC,WAAW;iBACzC;gBACD,eAAe;gBACf,UAAU,EAAE,IAAI;gBAChB,uBAAuB,EAAE,UAAU,CAAC,OAAO;gBAC3C,0BAA0B,EAAE,WAAW;gBACvC,WAAW,EAAE,IAAI;gBACjB,iBAAiB,EAAE,IAAI;gBACvB,OAAO,EAAE,aAAa;gBACtB,SAAS;gBACT,WAAW;aACZ,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,mBAAuC,CAAC;YAC5C,IAAI,gBAAgB,IAAI,eAAe,IAAI,OAAO,CAAC,KAAK,KAAK,gBAAgB,IAAI,eAAe,EAAE,CAAC;gBACjG,MAAM,EAAE,CAAC,eAAe,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBACxE,MAAM,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;gBACpF,MAAM,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,eAAe,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;gBACzH,MAAM,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;gBAC3D,oEAAoE;gBACpE,qEAAqE;gBACrE,sEAAsE;gBACtE,MAAM,gBAAgB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE;oBACnD,aAAa,EAAE,CAAC;oBAChB,SAAS,EAAE,GAAG,OAAO,CAAC,SAAS,WAAW;oBAC1C,aAAa,EAAE,eAAe,CAAC,OAAO;oBACtC,eAAe,EAAE,OAAO,CAAC,eAAe;oBACxC,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACH,CAAC,CAAC;gBACpC,mBAAmB,GAAG,eAAe,CAAC,OAAO,CAAC;YAChD,CAAC;YACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,MAAM,SAAS,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC1D,IAAI,WAAW,IAAI,MAAM,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;oBAC1F,MAAM,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC3D,MAAM,+BAA+B,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;gBACzE,CAAC;YACH,CAAC;YACD,MAAM,UAAU,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC1E,MAAM,OAAO,GAAG,qBAAqB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC1D,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;gBACnC,IAAI,CAAC,mBAAmB;oBAAE,MAAM,KAAK,CAAC;gBACtC,MAAM,IAAI,aAAa,CACrB,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,KAAK,EACX,GAAG,KAAK,CAAC,OAAO,wCAAwC,mBAAmB,EAAE,EAC7E,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,kBAAkB,CACzB,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,aAAa,CACrB,gBAAgB,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,eAAe,EACjF,OAAO,CAAC,KAAK,EACb,mBAAmB,CAAC,CAAC,CAAC,GAAG,OAAO,wCAAwC,mBAAmB,EAAE,CAAC,CAAC,CAAC,OAAO,EACvG,gBAAgB,EAChB,KAAK,CACN,CAAC;QACJ,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,iBAAiB,EAAE,CAAC;IAC5B,CAAC;AACH,CAAC"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "id": "perkos-a2a",
3
3
  "name": "PerkOS A2A",
4
- "version": "0.12.46",
4
+ "version": "0.12.48",
5
5
  "description": "Agent-to-Agent (A2A) protocol communication for OpenClaw agents",
6
6
  "author": "PerkOS",
7
7
  "configSchema": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@perkos/perkos-a2a",
3
- "version": "0.12.46",
3
+ "version": "0.12.48",
4
4
  "description": "A2A Protocol communication plugin for OpenClaw — Agent-to-Agent protocol implementation",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",