@perkos/perkos-a2a 0.12.31 → 0.12.32

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.
Files changed (42) hide show
  1. package/README.md +27 -9
  2. package/dist/chat-client.d.ts +6 -0
  3. package/dist/chat-client.d.ts.map +1 -1
  4. package/dist/chat-client.js +80 -22
  5. package/dist/chat-client.js.map +1 -1
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +702 -421
  8. package/dist/index.js.map +4 -4
  9. package/dist/openclaw-supervisor-cli.d.ts +3 -0
  10. package/dist/openclaw-supervisor-cli.d.ts.map +1 -0
  11. package/dist/openclaw-supervisor-cli.js +18 -0
  12. package/dist/openclaw-supervisor-cli.js.map +1 -0
  13. package/dist/openclaw-supervisor-client.d.ts +68 -0
  14. package/dist/openclaw-supervisor-client.d.ts.map +1 -0
  15. package/dist/openclaw-supervisor-client.js +301 -0
  16. package/dist/openclaw-supervisor-client.js.map +1 -0
  17. package/dist/openclaw-supervisor.d.ts +49 -0
  18. package/dist/openclaw-supervisor.d.ts.map +1 -0
  19. package/dist/openclaw-supervisor.js +443 -0
  20. package/dist/openclaw-supervisor.js.map +1 -0
  21. package/dist/platform-heartbeat.d.ts +5 -0
  22. package/dist/platform-heartbeat.d.ts.map +1 -1
  23. package/dist/platform-heartbeat.js +3 -0
  24. package/dist/platform-heartbeat.js.map +1 -1
  25. package/dist/repair.d.ts +3 -1
  26. package/dist/repair.d.ts.map +1 -1
  27. package/dist/repair.js +42 -35
  28. package/dist/repair.js.map +1 -1
  29. package/dist/runtime-evidence.d.ts +1 -0
  30. package/dist/runtime-evidence.d.ts.map +1 -1
  31. package/dist/runtime-evidence.js +3 -0
  32. package/dist/runtime-evidence.js.map +1 -1
  33. package/dist/server.d.ts +17 -1
  34. package/dist/server.d.ts.map +1 -1
  35. package/dist/server.js +41 -6
  36. package/dist/server.js.map +1 -1
  37. package/dist/supervisor-protocol.d.ts +123 -0
  38. package/dist/supervisor-protocol.d.ts.map +1 -0
  39. package/dist/supervisor-protocol.js +57 -0
  40. package/dist/supervisor-protocol.js.map +1 -0
  41. package/openclaw.plugin.json +1 -1
  42. package/package.json +2 -1
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=openclaw-supervisor-cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openclaw-supervisor-cli.d.ts","sourceRoot":"","sources":["../src/openclaw-supervisor-cli.ts"],"names":[],"mappings":""}
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env node
2
+ import { OpenClawSupervisor } from "./openclaw-supervisor.js";
3
+ function arg(name) {
4
+ const index = process.argv.indexOf(name);
5
+ const value = index >= 0 ? process.argv[index + 1] : undefined;
6
+ if (!value)
7
+ throw new Error(`missing ${name}`);
8
+ return value;
9
+ }
10
+ const supervisor = new OpenClawSupervisor({
11
+ stateDir: arg("--state-dir"),
12
+ ownerHash: arg("--owner-key"),
13
+ });
14
+ const shutdown = () => void supervisor.close().finally(() => process.exit(0));
15
+ process.once("SIGTERM", shutdown);
16
+ process.once("SIGINT", shutdown);
17
+ await supervisor.listen();
18
+ //# sourceMappingURL=openclaw-supervisor-cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openclaw-supervisor-cli.js","sourceRoot":"","sources":["../src/openclaw-supervisor-cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,SAAS,GAAG,CAAC,IAAY;IACvB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,KAAK,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/D,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;IAC/C,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,GAAG,IAAI,kBAAkB,CAAC;IACxC,QAAQ,EAAE,GAAG,CAAC,aAAa,CAAC;IAC5B,SAAS,EAAE,GAAG,CAAC,aAAa,CAAC;CAC9B,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,KAAK,UAAU,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9E,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AAClC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAEjC,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC"}
@@ -0,0 +1,68 @@
1
+ import { type SupervisorHealth, type SupervisorRuntimeConfig } from "./supervisor-protocol.js";
2
+ import type { RelayAgentEntry, RelayMessage } from "./types.js";
3
+ import type { ChatDeliverFrame, ChatMessageInboundFrame, ChannelJoinFrame } from "./chat-types.js";
4
+ type Logger = {
5
+ info: (...args: unknown[]) => void;
6
+ error: (...args: unknown[]) => void;
7
+ };
8
+ export interface OpenClawSupervisorHandlers {
9
+ onRelayTask(message: RelayMessage): Promise<Record<string, unknown>>;
10
+ onChatDeliver(frame: ChatDeliverFrame | ChatMessageInboundFrame): Promise<void> | void;
11
+ onChannelJoin(frame: ChannelJoinFrame): Promise<void> | void;
12
+ }
13
+ export declare class OpenClawSupervisorClient {
14
+ private readonly stateDir;
15
+ private readonly ownerHash;
16
+ private readonly socketPath;
17
+ private readonly config;
18
+ private readonly logger;
19
+ private readonly handlers;
20
+ private readonly lease;
21
+ private socket;
22
+ private startPromise;
23
+ private stopPromise;
24
+ private renewTimer;
25
+ private pending;
26
+ private health;
27
+ private stopped;
28
+ constructor(input: {
29
+ stateDir?: string;
30
+ ownerHash: string;
31
+ generation: number;
32
+ instanceId: string;
33
+ config: SupervisorRuntimeConfig;
34
+ logger: Logger;
35
+ handlers: OpenClawSupervisorHandlers;
36
+ });
37
+ isConnected(): boolean;
38
+ isChatConnected(): boolean;
39
+ currentHealth(): SupervisorHealth | null;
40
+ start(): Promise<void>;
41
+ stop(): Promise<void>;
42
+ stopAndWait(): Promise<{
43
+ closeTimedOut: boolean;
44
+ }>;
45
+ sendTask(targetAgent: string, payload: Record<string, unknown>, taskId?: string): Promise<RelayMessage>;
46
+ discover(): Promise<RelayAgentEntry[]>;
47
+ sendTaskResponse(original: RelayMessage, result: Record<string, unknown>): void;
48
+ sendChatReply(payload: {
49
+ convId: string;
50
+ walletAddress: string;
51
+ text: string;
52
+ replyTo?: string | null;
53
+ }): Promise<{
54
+ id: string;
55
+ delivered: boolean;
56
+ }>;
57
+ private request;
58
+ private requestWithMessage;
59
+ private freshLease;
60
+ private renew;
61
+ private connectOrSpawn;
62
+ private connectSocket;
63
+ private handleEvent;
64
+ private write;
65
+ private closeSocket;
66
+ }
67
+ export {};
68
+ //# sourceMappingURL=openclaw-supervisor-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openclaw-supervisor-client.d.ts","sourceRoot":"","sources":["../src/openclaw-supervisor-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,301 @@
1
+ import { randomUUID } from "node:crypto";
2
+ import { spawn } from "node:child_process";
3
+ import { homedir } from "node:os";
4
+ import net from "node:net";
5
+ import { resolve } from "node:path";
6
+ import { fileURLToPath } from "node:url";
7
+ import { SUPERVISOR_PROTOCOL_VERSION, SUPERVISOR_RENEW_MS, currentBootId, encodeSupervisorMessage, processStartIdentity, supervisorSocketPath, } from "./supervisor-protocol.js";
8
+ export class OpenClawSupervisorClient {
9
+ stateDir;
10
+ ownerHash;
11
+ socketPath;
12
+ config;
13
+ logger;
14
+ handlers;
15
+ lease;
16
+ socket = null;
17
+ startPromise = null;
18
+ stopPromise = null;
19
+ renewTimer = null;
20
+ pending = new Map();
21
+ health = null;
22
+ stopped = true;
23
+ constructor(input) {
24
+ this.stateDir = resolve(input.stateDir ?? process.env.OPENCLAW_STATE_DIR ?? `${homedir()}/.openclaw`);
25
+ this.ownerHash = input.ownerHash;
26
+ this.socketPath = supervisorSocketPath(this.stateDir, this.ownerHash);
27
+ this.config = input.config;
28
+ this.logger = input.logger;
29
+ this.handlers = input.handlers;
30
+ this.lease = {
31
+ ownerKey: input.ownerHash,
32
+ instanceId: input.instanceId,
33
+ generation: input.generation,
34
+ parentPid: process.pid,
35
+ parentStartTime: processStartIdentity(),
36
+ bootId: currentBootId(),
37
+ lastRenewedAt: new Date().toISOString(),
38
+ };
39
+ }
40
+ isConnected() {
41
+ return this.health?.relayConnected === true && this.health?.relayRegistered === true;
42
+ }
43
+ isChatConnected() {
44
+ return this.health?.chatConnected === true;
45
+ }
46
+ currentHealth() {
47
+ return this.health;
48
+ }
49
+ start() {
50
+ if (!this.stopped && this.socket && !this.socket.destroyed)
51
+ return Promise.resolve();
52
+ if (this.startPromise)
53
+ return this.startPromise;
54
+ this.stopped = false;
55
+ const starting = (async () => {
56
+ await this.connectOrSpawn();
57
+ await this.requestWithMessage({
58
+ protocolVersion: 1,
59
+ type: "claim",
60
+ requestId: randomUUID(),
61
+ lease: this.freshLease(),
62
+ config: this.config,
63
+ }, 15_000);
64
+ this.renewTimer = setInterval(() => this.renew(), SUPERVISOR_RENEW_MS);
65
+ this.renewTimer.unref?.();
66
+ this.logger.info(`[perkos-a2a] Supervisor owner ready generation=${this.lease.generation} instanceId=${this.lease.instanceId}`);
67
+ })().finally(() => {
68
+ if (this.startPromise === starting)
69
+ this.startPromise = null;
70
+ });
71
+ this.startPromise = starting;
72
+ return starting;
73
+ }
74
+ stop() {
75
+ if (this.stopPromise)
76
+ return this.stopPromise;
77
+ if (this.stopped && !this.socket)
78
+ return Promise.resolve();
79
+ this.stopped = true;
80
+ if (this.renewTimer)
81
+ clearInterval(this.renewTimer);
82
+ this.renewTimer = null;
83
+ const stopping = (async () => {
84
+ if (this.socket && !this.socket.destroyed) {
85
+ const requestId = randomUUID();
86
+ try {
87
+ await this.requestWithMessage({
88
+ protocolVersion: 1,
89
+ type: "release",
90
+ requestId,
91
+ lease: this.freshLease(),
92
+ }, 8_000);
93
+ }
94
+ catch (error) {
95
+ const message = error instanceof Error ? error.message : String(error);
96
+ // A newer VM generation may have already fenced this client and
97
+ // closed its socket. That is successful stop evidence for the stale
98
+ // client, not a lifecycle failure that should keep OpenClaw reloads
99
+ // alive or surface as an unhandled rejection.
100
+ if (!message.includes("NOT_OWNER") && !message.includes("SUPERVISOR_DISCONNECTED"))
101
+ throw error;
102
+ }
103
+ }
104
+ this.closeSocket(new Error("CLIENT_STOPPED"));
105
+ this.logger.info(`[perkos-a2a] A2A server stopped generation=${this.lease.generation} instanceId=${this.lease.instanceId}`);
106
+ })().finally(() => {
107
+ if (this.stopPromise === stopping)
108
+ this.stopPromise = null;
109
+ });
110
+ this.stopPromise = stopping;
111
+ return stopping;
112
+ }
113
+ async stopAndWait() {
114
+ await this.stop();
115
+ return { closeTimedOut: false };
116
+ }
117
+ async sendTask(targetAgent, payload, taskId) {
118
+ return await this.request("sendTask", { target: targetAgent, payload, ...(taskId ? { taskId } : {}) }, 70_000);
119
+ }
120
+ async discover() {
121
+ return await this.request("discover", {}, 15_000);
122
+ }
123
+ sendTaskResponse(original, result) {
124
+ this.write({ protocolVersion: 1, type: "relayTaskResult", lease: this.freshLease(), eventId: randomUUID(), original, result });
125
+ }
126
+ async sendChatReply(payload) {
127
+ return await this.request("chatReply", payload, 15_000);
128
+ }
129
+ async request(method, payload, timeoutMs) {
130
+ const requestId = randomUUID();
131
+ return this.requestWithMessage({ protocolVersion: 1, type: "request", requestId, lease: this.freshLease(), method, payload }, timeoutMs);
132
+ }
133
+ async requestWithMessage(message, timeoutMs) {
134
+ return new Promise((resolveRequest, rejectRequest) => {
135
+ const timer = setTimeout(() => {
136
+ this.pending.delete(message.requestId);
137
+ rejectRequest(new Error(`SUPERVISOR_REQUEST_TIMEOUT:${message.type}`));
138
+ }, timeoutMs);
139
+ timer.unref?.();
140
+ this.pending.set(message.requestId, { resolve: resolveRequest, reject: rejectRequest, timer });
141
+ try {
142
+ this.write(message);
143
+ }
144
+ catch (error) {
145
+ clearTimeout(timer);
146
+ this.pending.delete(message.requestId);
147
+ rejectRequest(error instanceof Error ? error : new Error(String(error)));
148
+ }
149
+ });
150
+ }
151
+ freshLease() {
152
+ this.lease.lastRenewedAt = new Date().toISOString();
153
+ return { ...this.lease };
154
+ }
155
+ renew() {
156
+ if (this.stopped || !this.socket || this.socket.destroyed)
157
+ return;
158
+ this.write({ protocolVersion: 1, type: "renew", lease: this.freshLease() });
159
+ }
160
+ async connectOrSpawn() {
161
+ try {
162
+ await this.connectSocket(1_000);
163
+ return;
164
+ }
165
+ catch { /* spawn canonical supervisor */ }
166
+ const cliPath = fileURLToPath(new URL("./openclaw-supervisor-cli.js", import.meta.url));
167
+ const child = spawn(process.execPath, [cliPath, "--state-dir", this.stateDir, "--owner-key", this.ownerHash], {
168
+ detached: true,
169
+ stdio: "ignore",
170
+ env: { ...process.env },
171
+ });
172
+ child.unref();
173
+ const deadline = Date.now() + 10_000;
174
+ let lastError;
175
+ while (Date.now() < deadline) {
176
+ await new Promise((resolveWait) => setTimeout(resolveWait, 100));
177
+ try {
178
+ await this.connectSocket(1_000);
179
+ return;
180
+ }
181
+ catch (error) {
182
+ lastError = error;
183
+ }
184
+ }
185
+ throw new Error(`OWNERSHIP_PRIMITIVE_UNAVAILABLE:${lastError instanceof Error ? lastError.message : String(lastError)}`);
186
+ }
187
+ connectSocket(timeoutMs) {
188
+ this.closeSocket(new Error("SUPERVISOR_RECONNECT"));
189
+ return new Promise((resolveConnect, rejectConnect) => {
190
+ const socket = net.createConnection(this.socketPath);
191
+ socket.setEncoding("utf8");
192
+ let buffered = "";
193
+ let settled = false;
194
+ const timer = setTimeout(() => {
195
+ if (settled)
196
+ return;
197
+ settled = true;
198
+ socket.destroy();
199
+ rejectConnect(new Error("supervisor socket connect timeout"));
200
+ }, timeoutMs);
201
+ timer.unref?.();
202
+ socket.once("connect", () => {
203
+ if (settled)
204
+ return;
205
+ settled = true;
206
+ clearTimeout(timer);
207
+ this.socket = socket;
208
+ resolveConnect();
209
+ });
210
+ socket.once("error", (error) => {
211
+ if (!settled) {
212
+ settled = true;
213
+ clearTimeout(timer);
214
+ rejectConnect(error);
215
+ }
216
+ });
217
+ socket.on("data", (chunk) => {
218
+ buffered += chunk;
219
+ for (;;) {
220
+ const newline = buffered.indexOf("\n");
221
+ if (newline < 0)
222
+ break;
223
+ const line = buffered.slice(0, newline);
224
+ buffered = buffered.slice(newline + 1);
225
+ if (line.trim())
226
+ void this.handleEvent(JSON.parse(line));
227
+ }
228
+ });
229
+ socket.on("close", () => {
230
+ if (this.socket === socket)
231
+ this.closeSocket(new Error("SUPERVISOR_DISCONNECTED"));
232
+ });
233
+ });
234
+ }
235
+ async handleEvent(event) {
236
+ if (event.protocolVersion !== SUPERVISOR_PROTOCOL_VERSION)
237
+ return;
238
+ if (event.type === "response") {
239
+ const pending = this.pending.get(event.requestId);
240
+ if (!pending)
241
+ return;
242
+ this.pending.delete(event.requestId);
243
+ clearTimeout(pending.timer);
244
+ if (event.ok)
245
+ pending.resolve(event.result);
246
+ else
247
+ pending.reject(new Error(`${event.error?.code || "SUPERVISOR_ERROR"}:${event.error?.message || "request failed"}`));
248
+ return;
249
+ }
250
+ if (event.type === "health") {
251
+ this.health = event.health;
252
+ return;
253
+ }
254
+ if (event.type === "log") {
255
+ (event.level === "error" ? this.logger.error : this.logger.info)(event.message);
256
+ return;
257
+ }
258
+ if (event.type === "relayTask") {
259
+ try {
260
+ const result = await this.handlers.onRelayTask(event.message);
261
+ this.write({ protocolVersion: 1, type: "relayTaskResult", lease: this.freshLease(), eventId: event.eventId, original: event.message, result });
262
+ }
263
+ catch (error) {
264
+ const message = error instanceof Error ? error.message : String(error);
265
+ this.write({
266
+ protocolVersion: 1,
267
+ type: "relayTaskResult",
268
+ lease: this.freshLease(),
269
+ eventId: event.eventId,
270
+ original: event.message,
271
+ result: { jsonrpc: "2.0", id: event.message.id, error: { code: -32603, message } },
272
+ });
273
+ }
274
+ return;
275
+ }
276
+ if (event.type === "chatDeliver")
277
+ await this.handlers.onChatDeliver(event.frame);
278
+ if (event.type === "channelJoin")
279
+ await this.handlers.onChannelJoin(event.frame);
280
+ }
281
+ write(message) {
282
+ if (!this.socket || this.socket.destroyed)
283
+ throw new Error("SUPERVISOR_DISCONNECTED");
284
+ this.socket.write(encodeSupervisorMessage(message));
285
+ }
286
+ closeSocket(error) {
287
+ if (this.renewTimer)
288
+ clearInterval(this.renewTimer);
289
+ this.renewTimer = null;
290
+ const socket = this.socket;
291
+ this.socket = null;
292
+ if (socket && !socket.destroyed)
293
+ socket.destroy();
294
+ for (const pending of this.pending.values()) {
295
+ clearTimeout(pending.timer);
296
+ pending.reject(error);
297
+ }
298
+ this.pending.clear();
299
+ }
300
+ }
301
+ //# sourceMappingURL=openclaw-supervisor-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openclaw-supervisor-client.js","sourceRoot":"","sources":["../src/openclaw-supervisor-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ type SupervisorLogger = {
2
+ info: (...args: unknown[]) => void;
3
+ error: (...args: unknown[]) => void;
4
+ };
5
+ export declare class OpenClawSupervisor {
6
+ private readonly stateDir;
7
+ private readonly ownerHash;
8
+ private readonly socketPath;
9
+ private readonly lockPath;
10
+ private readonly logger;
11
+ private readonly exitProcess;
12
+ private server;
13
+ private lockFd;
14
+ private activeSocket;
15
+ private activeLease;
16
+ private activeConfig;
17
+ private relayClient;
18
+ private chatClient;
19
+ private heartbeat;
20
+ private stopping;
21
+ private ownerStopFailed;
22
+ private leaseTimer;
23
+ private exitTimer;
24
+ private health;
25
+ constructor(input: {
26
+ stateDir: string;
27
+ ownerHash: string;
28
+ logger?: SupervisorLogger;
29
+ exitProcess?: () => void;
30
+ });
31
+ listen(): Promise<void>;
32
+ close(): Promise<void>;
33
+ private acquireLock;
34
+ private handleConnection;
35
+ private handleLine;
36
+ private claim;
37
+ private startTransports;
38
+ private stopTransports;
39
+ private handleRequest;
40
+ private transportLog;
41
+ private respond;
42
+ private emit;
43
+ private updateHealth;
44
+ private writeLease;
45
+ private checkLease;
46
+ private scheduleExit;
47
+ }
48
+ export {};
49
+ //# sourceMappingURL=openclaw-supervisor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openclaw-supervisor.d.ts","sourceRoot":"","sources":["../src/openclaw-supervisor.ts"],"names":[],"mappings":"AAyBA,KAAK,gBAAgB,GAAG;IAAE,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;CAAE,CAAC;AAmBpG,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmB;IAC1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;IACzC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,YAAY,CAAwC;IAC5D,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,SAAS,CAAwC;IACzD,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,UAAU,CAA+C;IACjE,OAAO,CAAC,SAAS,CAA8C;IAC/D,OAAO,CAAC,MAAM,CAAmB;gBAErB,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE;IAuBzG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB5B,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,gBAAgB;YAqBV,UAAU;YAsCV,KAAK;YA8BL,eAAe;YAwEf,cAAc;YAuDd,aAAa;IA0B3B,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,OAAO;IAOf,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,UAAU;YAIJ,UAAU;IAYxB,OAAO,CAAC,YAAY;CAOrB"}