@tyvm/knowhow 0.0.123 → 0.0.124

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tyvm/knowhow",
3
- "version": "0.0.123",
3
+ "version": "0.0.124",
4
4
  "description": "ai cli with plugins and agents",
5
5
  "main": "ts_build/src/index.js",
6
6
  "bin": {
@@ -17,26 +17,16 @@ export class GenericFireworksClient extends HttpClient {
17
17
  }
18
18
 
19
19
  /**
20
- * Supplement the live /v1/models response with any models we have in the
21
- * pricing table. The Fireworks API sometimes doesn't return newly-released
22
- * models (e.g. minimax-m3, kimi-k2p7-code) even though they are available
23
- * for inference — so we use the pricing map as the source of truth for
24
- * "models we know exist on this provider".
20
+ * Skip the live /v1/models API call entirely — Fireworks' model listing
21
+ * endpoint frequently returns 500s and triggers slow exponential backoff.
22
+ * Our pricing map is the authoritative source of truth for available models.
25
23
  */
26
- async getModels(type = "all"): Promise<ModelInfo[]> {
27
- let liveModels: ModelInfo[] = [];
28
- try {
29
- liveModels = await super.getModels(type);
30
- } catch (_err) {
31
- // Live API call failed — fall back to pricing map only
32
- }
33
-
34
- const liveIds = new Set(liveModels.map((m) => m.id));
35
- const pricingModels: ModelInfo[] = Object.keys(FireworksTextPricing)
36
- .filter((id) => !liveIds.has(id))
37
- .map((id) => ({ id, object: "model", owned_by: "fireworks" }));
38
-
39
- return [...liveModels, ...pricingModels];
24
+ async getModels(_type = "all"): Promise<ModelInfo[]> {
25
+ return Object.keys(FireworksTextPricing).map((id) => ({
26
+ id,
27
+ object: "model",
28
+ owned_by: "fireworks",
29
+ }));
40
30
  }
41
31
 
42
32
  /**
@@ -51,56 +51,59 @@ export class McpService {
51
51
  }
52
52
 
53
53
  this.config = mcpServers;
54
- this.transports = mcpServers.map((mcp) => {
55
- const commandString = mcp.command
56
- ? `${mcp.command} ${mcp.args?.join(" ")}`
57
- : "";
58
- const logFormat = `${mcp.name}: Command: ${commandString}, URL: ${mcp.url}`;
59
-
60
- console.log("Creating transport for", logFormat);
61
- if (mcp.command) {
62
- const stdioParams: StdioServerParameters = {
63
- command: mcp.command,
64
- args: mcp.args,
65
- env: mcp.env
66
- ? {
67
- ...process.env,
68
- ...mcp.env,
69
- }
70
- : undefined,
71
- };
72
- return new StdioClientTransport(stdioParams);
73
- }
74
- if (mcp?.params?.socket) {
75
- return new MCPWebSocketTransport(mcp.params.socket);
76
- }
77
- if (mcp.url) {
78
- // TODO: also support refresh tokens
79
- if (mcp.authorization_token_file) {
80
- const token = fs.readFileSync(mcp.authorization_token_file, "utf-8");
81
- mcp.authorization_token = token.trim();
82
- }
54
+ this.transports = mcpServers.map((mcp) => this.createTransport(mcp));
55
+ this.clients = this.transports.map(() => new Client(knowhowMcpClient, knowhowConfig));
83
56
 
84
- const scheme = mcp.authorization_scheme === "basic" ? "Basic" : "Bearer";
57
+ return this.clients;
58
+ }
85
59
 
86
- return new StreamableHTTPClientTransport(new URL(mcp.url), {
87
- requestInit: {
88
- headers: {
89
- "User-Agent": knowhowMcpClient.name,
90
- ...(mcp.authorization_token && {
91
- Authorization: `${scheme} ${mcp.authorization_token}`,
92
- }),
93
- },
94
- },
95
- });
60
+ /**
61
+ * Create a fresh Transport for a given McpConfig entry.
62
+ * Re-reads authorization_token_file every time so that token refreshes
63
+ * are picked up without restarting the agent process.
64
+ */
65
+ createTransport(mcp: McpConfig): Transport {
66
+ if (mcp.command) {
67
+ const stdioParams: StdioServerParameters = {
68
+ command: mcp.command,
69
+ args: mcp.args,
70
+ env: mcp.env ? { ...process.env, ...mcp.env } : undefined,
71
+ };
72
+ return new StdioClientTransport(stdioParams);
73
+ }
74
+ if (mcp?.params?.socket) {
75
+ return new MCPWebSocketTransport(mcp.params.socket);
76
+ }
77
+ if (mcp.url) {
78
+ // Always re-read the token file so refreshed tokens are picked up
79
+ if (mcp.authorization_token_file) {
80
+ const token = fs.readFileSync(mcp.authorization_token_file, "utf-8");
81
+ mcp.authorization_token = token.trim();
96
82
  }
97
- });
98
-
99
- this.clients = this.transports.map((transport) => {
100
- return new Client(knowhowMcpClient, knowhowConfig);
101
- });
102
-
103
- return this.clients;
83
+ const scheme = mcp.authorization_scheme === "basic" ? "Basic" : "Bearer";
84
+ const transport = new StreamableHTTPClientTransport(new URL(mcp.url), {
85
+ requestInit: {
86
+ headers: {
87
+ "User-Agent": knowhowMcpClient.name,
88
+ ...(mcp.authorization_token && {
89
+ Authorization: `${scheme} ${mcp.authorization_token}`,
90
+ }),
91
+ },
92
+ },
93
+ });
94
+ // Fix SDK bug: close() aborts _abortController but never resets it to
95
+ // undefined, so start() throws "already started" on reconnect.
96
+ // Patch the instance directly so it works regardless of which SDK
97
+ // copy is loaded at runtime (knowhow vs knowhow-web node_modules).
98
+ const t = transport as any;
99
+ const origClose = t.close.bind(t);
100
+ t.close = async () => {
101
+ await origClose();
102
+ t._abortController = undefined;
103
+ };
104
+ return transport;
105
+ }
106
+ throw new Error(`Cannot create transport for MCP '${mcp.name}': no command, socket, or url configured`);
104
107
  }
105
108
 
106
109
  setMcpPrefix(prefix: string) {
@@ -208,6 +211,12 @@ export class McpService {
208
211
  }
209
212
 
210
213
  try {
214
+ // Always create a fresh transport + client before connecting.
215
+ // This handles cases where a previous connection attempt failed and left
216
+ // the transport in a started-but-not-connected state.
217
+ this.transports[index] = this.createTransport(this.config[index]);
218
+ this.clients[index] = new Client(knowhowMcpClient, knowhowConfig);
219
+
211
220
  const client = this.clients[index];
212
221
  const transport = this.transports[index];
213
222
 
@@ -282,10 +291,31 @@ export class McpService {
282
291
  .filter((t) => this.getToolClientIndex(t.function.name) === index)
283
292
  .map((t) => t.function.name);
284
293
 
285
- // Close connection
286
- await this.transports[index]?.close();
294
+ // Close client first (resets Protocol._transport = undefined)
295
+ // then close transport (aborts the SSE/HTTP connection).
296
+ // Closing client before transport prevents the "Already connected to a
297
+ // transport" error on the next connectSingle call.
298
+ try { await this.clients[index]?.close(); } catch (_) {}
299
+ try { await this.transports[index]?.close(); } catch (_) {}
300
+
301
+ // Patch old transport to prevent any async SSE reconnection from
302
+ // firing start() after we've already replaced the transport instance.
303
+ // This avoids "StreamableHTTPClientTransport already started" errors.
304
+ const oldTransport = this.transports[index] as any;
305
+ if (oldTransport) {
306
+ oldTransport._abortController = undefined;
307
+ oldTransport._startOrAuthSse = async () => {};
308
+ oldTransport._scheduleReconnection = () => {};
309
+ }
310
+
287
311
  this.connected[index] = false;
288
312
 
313
+ // Replace with a fresh transport + client so connectSingle() can reconnect
314
+ // without hitting "StreamableHTTPClientTransport already started".
315
+ // createTransport() re-reads authorization_token_file, picking up refreshed tokens.
316
+ this.transports[index] = this.createTransport(this.config[index]);
317
+ this.clients[index] = new Client(knowhowMcpClient, knowhowConfig);
318
+
289
319
  // Remove tools from cache
290
320
  this.tools = this.tools.filter(
291
321
  (t) => this.getToolClientIndex(t.function.name) !== index
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tyvm/knowhow",
3
- "version": "0.0.123",
3
+ "version": "0.0.124",
4
4
  "description": "ai cli with plugins and agents",
5
5
  "main": "ts_build/src/index.js",
6
6
  "bin": {
@@ -7,7 +7,7 @@ type ModelInfo = {
7
7
  };
8
8
  export declare class GenericFireworksClient extends HttpClient {
9
9
  constructor(apiKey?: string);
10
- getModels(type?: string): Promise<ModelInfo[]>;
10
+ getModels(_type?: string): Promise<ModelInfo[]>;
11
11
  createChatCompletion(options: CompletionOptions): Promise<CompletionResponse>;
12
12
  }
13
13
  export {};
@@ -10,18 +10,12 @@ class GenericFireworksClient extends http_1.HttpClient {
10
10
  this.setJwt(apiKey);
11
11
  this.setPrices(fireworks_1.FireworksTextPricing);
12
12
  }
13
- async getModels(type = "all") {
14
- let liveModels = [];
15
- try {
16
- liveModels = await super.getModels(type);
17
- }
18
- catch (_err) {
19
- }
20
- const liveIds = new Set(liveModels.map((m) => m.id));
21
- const pricingModels = Object.keys(fireworks_1.FireworksTextPricing)
22
- .filter((id) => !liveIds.has(id))
23
- .map((id) => ({ id, object: "model", owned_by: "fireworks" }));
24
- return [...liveModels, ...pricingModels];
13
+ async getModels(_type = "all") {
14
+ return Object.keys(fireworks_1.FireworksTextPricing).map((id) => ({
15
+ id,
16
+ object: "model",
17
+ owned_by: "fireworks",
18
+ }));
25
19
  }
26
20
  async createChatCompletion(options) {
27
21
  const sanitized = {
@@ -1 +1 @@
1
- {"version":3,"file":"fireworks.js","sourceRoot":"","sources":["../../../src/clients/fireworks.ts"],"names":[],"mappings":";;;AAAA,iCAAoC;AACpC,mDAA2D;AAU3D,MAAa,sBAAuB,SAAQ,iBAAU;IACpD,YAAY,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAChD,KAAK,CAAC,oCAAoC,CAAC,CAAC;QAC5C,IAAI,MAAM;YAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,SAAS,CAAC,gCAAoB,CAAC,CAAC;IACvC,CAAC;IASD,KAAK,CAAC,SAAS,CAAC,IAAI,GAAG,KAAK;QAC1B,IAAI,UAAU,GAAgB,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,UAAU,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC3C,CAAC;QAAC,OAAO,IAAI,EAAE,CAAC;QAEhB,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACrD,MAAM,aAAa,GAAgB,MAAM,CAAC,IAAI,CAAC,gCAAoB,CAAC;aACjE,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aAChC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QAEjE,OAAO,CAAC,GAAG,UAAU,EAAE,GAAG,aAAa,CAAC,CAAC;IAC3C,CAAC;IAQD,KAAK,CAAC,oBAAoB,CACxB,OAA0B;QAE1B,MAAM,SAAS,GAAsB;YACnC,GAAG,OAAO;YAEV,cAAc,EAAE,SAAS;SAC1B,CAAC;QAEF,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;YACpB,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC7C,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC,QAAe,CAAC;gBACpD,OAAO;oBACL,GAAG,IAAI;oBACP,QAAQ,EAAE,MAAM;iBACjB,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC;CACF;AAzDD,wDAyDC"}
1
+ {"version":3,"file":"fireworks.js","sourceRoot":"","sources":["../../../src/clients/fireworks.ts"],"names":[],"mappings":";;;AAAA,iCAAoC;AACpC,mDAA2D;AAU3D,MAAa,sBAAuB,SAAQ,iBAAU;IACpD,YAAY,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAChD,KAAK,CAAC,oCAAoC,CAAC,CAAC;QAC5C,IAAI,MAAM;YAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,SAAS,CAAC,gCAAoB,CAAC,CAAC;IACvC,CAAC;IAOD,KAAK,CAAC,SAAS,CAAC,KAAK,GAAG,KAAK;QAC3B,OAAO,MAAM,CAAC,IAAI,CAAC,gCAAoB,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACpD,EAAE;YACF,MAAM,EAAE,OAAO;YACf,QAAQ,EAAE,WAAW;SACtB,CAAC,CAAC,CAAC;IACN,CAAC;IAQD,KAAK,CAAC,oBAAoB,CACxB,OAA0B;QAE1B,MAAM,SAAS,GAAsB;YACnC,GAAG,OAAO;YAEV,cAAc,EAAE,SAAS;SAC1B,CAAC;QAEF,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;YACpB,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC7C,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC,QAAe,CAAC;gBACpD,OAAO;oBACL,GAAG,IAAI;oBACP,QAAQ,EAAE,MAAM;iBACjB,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC;CACF;AA/CD,wDA+CC"}
@@ -59,6 +59,7 @@ export declare class McpService {
59
59
  };
60
60
  };
61
61
  }>[]>;
62
+ createTransport(mcp: McpConfig): Transport;
62
63
  setMcpPrefix(prefix: string): void;
63
64
  createClient(mcp: McpConfig, transport: Transport): void;
64
65
  connectToConfigured(tools?: ToolsService): Promise<void>;
@@ -47,50 +47,47 @@ class McpService {
47
47
  return this.clients;
48
48
  }
49
49
  this.config = mcpServers;
50
- this.transports = mcpServers.map((mcp) => {
51
- const commandString = mcp.command
52
- ? `${mcp.command} ${mcp.args?.join(" ")}`
53
- : "";
54
- const logFormat = `${mcp.name}: Command: ${commandString}, URL: ${mcp.url}`;
55
- console.log("Creating transport for", logFormat);
56
- if (mcp.command) {
57
- const stdioParams = {
58
- command: mcp.command,
59
- args: mcp.args,
60
- env: mcp.env
61
- ? {
62
- ...process.env,
63
- ...mcp.env,
64
- }
65
- : undefined,
66
- };
67
- return new stdio_js_1.StdioClientTransport(stdioParams);
68
- }
69
- if (mcp?.params?.socket) {
70
- return new McpWebsocketTransport_1.MCPWebSocketTransport(mcp.params.socket);
50
+ this.transports = mcpServers.map((mcp) => this.createTransport(mcp));
51
+ this.clients = this.transports.map(() => new index_js_1.Client(exports.knowhowMcpClient, exports.knowhowConfig));
52
+ return this.clients;
53
+ }
54
+ createTransport(mcp) {
55
+ if (mcp.command) {
56
+ const stdioParams = {
57
+ command: mcp.command,
58
+ args: mcp.args,
59
+ env: mcp.env ? { ...process.env, ...mcp.env } : undefined,
60
+ };
61
+ return new stdio_js_1.StdioClientTransport(stdioParams);
62
+ }
63
+ if (mcp?.params?.socket) {
64
+ return new McpWebsocketTransport_1.MCPWebSocketTransport(mcp.params.socket);
65
+ }
66
+ if (mcp.url) {
67
+ if (mcp.authorization_token_file) {
68
+ const token = fs_1.default.readFileSync(mcp.authorization_token_file, "utf-8");
69
+ mcp.authorization_token = token.trim();
71
70
  }
72
- if (mcp.url) {
73
- if (mcp.authorization_token_file) {
74
- const token = fs_1.default.readFileSync(mcp.authorization_token_file, "utf-8");
75
- mcp.authorization_token = token.trim();
76
- }
77
- const scheme = mcp.authorization_scheme === "basic" ? "Basic" : "Bearer";
78
- return new streamableHttp_js_1.StreamableHTTPClientTransport(new URL(mcp.url), {
79
- requestInit: {
80
- headers: {
81
- "User-Agent": exports.knowhowMcpClient.name,
82
- ...(mcp.authorization_token && {
83
- Authorization: `${scheme} ${mcp.authorization_token}`,
84
- }),
85
- },
71
+ const scheme = mcp.authorization_scheme === "basic" ? "Basic" : "Bearer";
72
+ const transport = new streamableHttp_js_1.StreamableHTTPClientTransport(new URL(mcp.url), {
73
+ requestInit: {
74
+ headers: {
75
+ "User-Agent": exports.knowhowMcpClient.name,
76
+ ...(mcp.authorization_token && {
77
+ Authorization: `${scheme} ${mcp.authorization_token}`,
78
+ }),
86
79
  },
87
- });
88
- }
89
- });
90
- this.clients = this.transports.map((transport) => {
91
- return new index_js_1.Client(exports.knowhowMcpClient, exports.knowhowConfig);
92
- });
93
- return this.clients;
80
+ },
81
+ });
82
+ const t = transport;
83
+ const origClose = t.close.bind(t);
84
+ t.close = async () => {
85
+ await origClose();
86
+ t._abortController = undefined;
87
+ };
88
+ return transport;
89
+ }
90
+ throw new Error(`Cannot create transport for MCP '${mcp.name}': no command, socket, or url configured`);
94
91
  }
95
92
  setMcpPrefix(prefix) {
96
93
  this.mcpPrefix = prefix;
@@ -161,6 +158,8 @@ class McpService {
161
158
  };
162
159
  }
163
160
  try {
161
+ this.transports[index] = this.createTransport(this.config[index]);
162
+ this.clients[index] = new index_js_1.Client(exports.knowhowMcpClient, exports.knowhowConfig);
164
163
  const client = this.clients[index];
165
164
  const transport = this.transports[index];
166
165
  await Promise.race([
@@ -213,8 +212,23 @@ class McpService {
213
212
  const toolsToRemove = this.tools
214
213
  .filter((t) => this.getToolClientIndex(t.function.name) === index)
215
214
  .map((t) => t.function.name);
216
- await this.transports[index]?.close();
215
+ try {
216
+ await this.clients[index]?.close();
217
+ }
218
+ catch (_) { }
219
+ try {
220
+ await this.transports[index]?.close();
221
+ }
222
+ catch (_) { }
223
+ const oldTransport = this.transports[index];
224
+ if (oldTransport) {
225
+ oldTransport._abortController = undefined;
226
+ oldTransport._startOrAuthSse = async () => { };
227
+ oldTransport._scheduleReconnection = () => { };
228
+ }
217
229
  this.connected[index] = false;
230
+ this.transports[index] = this.createTransport(this.config[index]);
231
+ this.clients[index] = new index_js_1.Client(exports.knowhowMcpClient, exports.knowhowConfig);
218
232
  this.tools = this.tools.filter((t) => this.getToolClientIndex(t.function.name) !== index);
219
233
  return {
220
234
  success: true,
@@ -1 +1 @@
1
- {"version":3,"file":"Mcp.js","sourceRoot":"","sources":["../../../src/services/Mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Mcp.js","sourceRoot":"","sources":["../../../src/services/Mcp.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,wEAAiF;AACjF,wEAAmE;AAGnE,4CAAoB;AAGpB,sCAAsC;AAGtC,iEAA0E;AAE1E,0FAAmG;AACnG,mEAAgE;AAOnD,QAAA,gBAAgB,GAAG;IAC9B,IAAI,EAAE,oBAAoB;IAC1B,OAAO,EAAE,OAAO;CACjB,CAAC;AACW,QAAA,aAAa,GAAG;IAC3B,YAAY,EAAE,EAAE;CACjB,CAAC;AAEF,8CAA4B;AAC5B,0DAAwC;AASxC,MAAa,UAAU;IACrB,SAAS,GAAG,EAAE,CAAC;IACf,UAAU,GAAgB,EAAE,CAAC;IAC7B,OAAO,GAAa,EAAE,CAAC;IACvB,MAAM,GAAgB,EAAE,CAAC;IACzB,KAAK,GAAW,EAAE,CAAC;IACnB,SAAS,GAAG,KAAK,CAAC;IAClB,WAAW,GAA2B,EAAE,CAAC;IAEzC,KAAK,CAAC,kBAAkB,CAAC,aAA0B,EAAE;QACnD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,iBAAM,CAAC,wBAAgB,EAAE,qBAAa,CAAC,CAAC,CAAC;QAEtF,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAOD,eAAe,CAAC,GAAc;QAC5B,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,MAAM,WAAW,GAA0B;gBACzC,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS;aAC1D,CAAC;YACF,OAAO,IAAI,+BAAoB,CAAC,WAAW,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YACxB,OAAO,IAAI,6CAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;YAEZ,IAAI,GAAG,CAAC,wBAAwB,EAAE,CAAC;gBACjC,MAAM,KAAK,GAAG,YAAE,CAAC,YAAY,CAAC,GAAG,CAAC,wBAAwB,EAAE,OAAO,CAAC,CAAC;gBACrE,GAAG,CAAC,mBAAmB,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YACzC,CAAC;YACD,MAAM,MAAM,GAAG,GAAG,CAAC,oBAAoB,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;YACzE,MAAM,SAAS,GAAG,IAAI,iDAA6B,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBACpE,WAAW,EAAE;oBACX,OAAO,EAAE;wBACP,YAAY,EAAE,wBAAgB,CAAC,IAAI;wBACnC,GAAG,CAAC,GAAG,CAAC,mBAAmB,IAAI;4BAC7B,aAAa,EAAE,GAAG,MAAM,IAAI,GAAG,CAAC,mBAAmB,EAAE;yBACtD,CAAC;qBACH;iBACF;aACF,CAAC,CAAC;YAKH,MAAM,CAAC,GAAG,SAAgB,CAAC;YAC3B,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClC,CAAC,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE;gBACnB,MAAM,SAAS,EAAE,CAAC;gBAClB,CAAC,CAAC,gBAAgB,GAAG,SAAS,CAAC;YACjC,CAAC,CAAC;YACF,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,oCAAoC,GAAG,CAAC,IAAI,0CAA0C,CAAC,CAAC;IAC1G,CAAC;IAED,YAAY,CAAC,MAAc;QACzB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;IAC1B,CAAC;IAED,YAAY,CAAC,GAAc,EAAE,SAAoB;QAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,iBAAM,CAAC,wBAAgB,EAAE,qBAAa,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,KAAoB;QAC5C,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;QAEjC,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,aAA0B,EAAE,EAAE,KAAoB;QAChE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAEhC,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,kBAAkB;QACtB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YACvC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,iBAAiB,GAAG,MAAM,CAAC,WAAW,KAAK,KAAK,CAAC;YAEvD,IAAI,iBAAiB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChD,OAAO,CAAC,GAAG,CAAC,6BAA6B,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;gBACxD,IAAI,CAAC;oBAIH,MAAM,IAAI,OAAO,CAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;wBAChD,IAAI,CAAC;4BACH,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;4BAC7C,OAAO,EAAE,CAAC;wBACZ,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,MAAM,CAAC,GAAG,CAAC,CAAC;wBACd,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,oCAAoC,MAAM,CAAC,IAAI,IAAI,EACnD,KAAK,CAAC,OAAO,IAAI,KAAK,CACvB,CAAC;oBAEF,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;YAC/B,CAAC;iBAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC9B,OAAO,CAAC,GAAG,CACT,yCAAyC,MAAM,CAAC,IAAI,uBAAuB,CAC5E,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CACH,CAAC;QAGF,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;QAE1E,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAChC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CACtE,CAAC,MAAM,CAAC;QACT,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CACV,kBAAkB,UAAU,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,iBAAiB,MAAM,UAAU,CACrF,CAAC;QACJ,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,aAAa,CACjB,UAAkB,EAClB,UAAkB,KAAK;QAOvB,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAE9C,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,UAAU,EAAE,EAAE;gBACd,KAAK,EAAE,eAAe,UAAU,8BAA8B;aAC/D,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,EAAE;gBACd,KAAK,EAAE,eAAe,UAAU,qBAAqB;aACtD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YAIH,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAClE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,iBAAM,CAAC,wBAAgB,EAAE,qBAAa,CAAC,CAAC;YAElE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACnC,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAGzC,MAAM,OAAO,CAAC,IAAI,CAAC;gBACjB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;gBACzB,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CACxB,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC,EAAE,OAAO,CAAC,CACnE;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;YAG7B,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;YAC7C,MAAM,SAAS,GAAa,EAAE,CAAC;YAE/B,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;gBACrC,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAW,CAAC,CAAC;gBAC1D,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC5C,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;gBAC1D,CAAC;gBACD,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAG1C,IACE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EACtE,CAAC;oBACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,SAAS;aACtB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,UAAU,EAAE,EAAE;gBACd,KAAK,EAAE,KAAK,CAAC,OAAO;aACrB,CAAC;QACJ,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,gBAAgB,CAAC,UAAkB;QAKvC,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAE9C,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,EAAE;gBAChB,KAAK,EAAE,eAAe,UAAU,aAAa;aAC9C,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,EAAE;gBAChB,KAAK,EAAE,eAAe,UAAU,iBAAiB;aAClD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK;iBAC7B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC;iBACjE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAM/B,IAAI,CAAC;gBAAC,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC;YAAC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;YACxD,IAAI,CAAC;gBAAC,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC;YAAC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;YAK3D,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAQ,CAAC;YACnD,IAAI,YAAY,EAAE,CAAC;gBACjB,YAAY,CAAC,gBAAgB,GAAG,SAAS,CAAC;gBAC1C,YAAY,CAAC,eAAe,GAAG,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC;gBAC9C,YAAY,CAAC,qBAAqB,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;YAChD,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;YAK9B,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAClE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,iBAAM,CAAC,wBAAgB,EAAE,qBAAa,CAAC,CAAC;YAGlE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAC5B,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,KAAK,CAC1D,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,aAAa;aAC5B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,EAAE;gBAChB,KAAK,EAAE,KAAK,CAAC,OAAO;aACrB,CAAC;QACJ,CAAC;IACH,CAAC;IAGD,mBAAmB;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACvC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;gBACrC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CACf,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,KAAK,CAC1D,CAAC,MAAM;gBACV,CAAC,CAAC,CAAC,CAAC;YAEN,OAAO;gBACL,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK;gBACzC,WAAW,EAAE,MAAM,CAAC,WAAW,KAAK,KAAK;gBACzC,SAAS;aACV,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAmB;QAChC,KAAK,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtC,KAAK,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,GAAe;QAC5B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE;YAC7C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;YAC9B,OAAO,SAAS,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;QACxC,CAAC,CAAC,CACH,CAAC;QAGF,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAC1B,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC,CAAC,CACH,CAAC;QAEF,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;IAC5B,CAAC;IAED,cAAc,CAAC,UAAkB;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,aAAa,CAAC,WAAmB;QAC/B,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC;IACtD,CAAC;IAED,kBAAkB,CAAC,QAAgB;QACjC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,CAAC;QACX,CAAC;QAED,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAElC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO,CAAC,CAAC,CAAC;QACZ,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,aAAa,CAAC,QAAgB;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAEhD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,WAAW,CAAC,QAAgB,EAAE,OAAgB;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAG5C,IACE,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;YAC3B,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC;YACpC,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EACzB,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAC7D,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC;QACpE,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC9C,OAAO,KAAK,EAAE,IAAS,EAAE,EAAE;YACzB,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;YACxE,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,QAAQ,CAChC;gBACE,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,IAAI;aAChB,EACD,+BAAoB,EACpB;gBACE,OAAO,EAAE,OAAO,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;gBAClC,eAAe,EAAE,OAAO,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;aAC3C,CACF,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;IACJ,CAAC;IAQD,KAAK,CAAC,YAAY,CAAU,QAAgB,EAAE,OAAY,EAAE;QAC1D,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YACtC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;YAG9B,IAAI,MAAM,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpD,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;gBACvE,IAAI,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;oBACpC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBAClD,OAAO,YAAiB,CAAC;gBAC3B,CAAC;YACH,CAAC;YAED,MAAM,IAAI,KAAK,CACb,qDAAqD,QAAQ,EAAE,CAChE,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACzD,MAAM,IAAI,KAAK,CACb,+BAA+B,QAAQ,KAAK,YAAY,EAAE,CAC3D,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACxB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YAChC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC/D,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YACvC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1B,OAAO;YACT,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CACX,oCAAoC,MAAM,EAAE,IAAI,IAAI,SAAS,KAAK,EAAE,IAAI,EACxE,KAAK,CAAC,OAAO,IAAI,KAAK,CACvB,CAAC;gBACF,MAAM,KAAK,CAAC;YACd,CAAC;YACD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;QAC/B,CAAC,CAAC,CACH,CAAC;QAGF,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;QAC1E,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;QACrE,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CACV,aAAa,UAAU,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,iBAAiB,MAAM,UAAU,CAChF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS;QACb,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE1D,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;QAED,MAAM,KAAK,GAAG,EAAY,CAAC;QAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAE/B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;gBAEvB,SAAS;YACX,CAAC;YAED,IAAI,WAAyD,CAAC;YAC9D,IAAI,CAAC;gBACH,WAAW,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;YACzC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAIf,OAAO,CAAC,IAAI,CACV,iBAAiB,MAAM,CAAC,IAAI,qDAAqD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAClI,CAAC;gBACF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;gBAC1B,SAAS;YACX,CAAC;YAED,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;gBACrC,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,IAAsB,CAAC,CAAC;gBACjE,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC5C,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;gBAC1D,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,aAAa,CAAC,KAAK,GAAG,CAAC;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI;YACtC,EAAE,WAAW,EAAE;YACf,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAEzB,MAAM,MAAM,GAAG,OAAO;YACpB,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,IAAI,KAAK,IAAI,OAAO,EAAE;YACzC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,IAAI,KAAK,EAAE,CAAC;QAEjC,OAAO,MAAM,CAAC;IAChB,CAAC;IAGD,sBAAsB,CAAC,QAAgB,EAAE,KAAK,GAAG,CAAC;QAChD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACzC,OAAO,GAAG,MAAM,IAAI,QAAQ,EAAE,CAAC;IACjC,CAAC;IAED,YAAY,CAAC,KAAa,EAAE,IAAa;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAE3D,MAAM,WAAW,GAAS;YACxB,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI;gBACJ,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC;oBAChD,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,UAAiB;oBAC9C,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,QAAoB;iBAChD;aACF;SACF,CAAC;QAEF,OAAO,WAAW,CAAC;IACrB,CAAC;CACF;AA7kBD,gCA6kBC"}