@bubblelab/bubble-core 0.1.126 → 0.1.128
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bubble-bundle.d.ts +7 -5
- package/dist/bubbles/service-bubble/ai-agent.d.ts +3 -5
- package/dist/bubbles/service-bubble/ai-agent.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/ai-agent.js +4 -91
- package/dist/bubbles/service-bubble/ai-agent.js.map +1 -1
- package/dist/bubbles/service-bubble/capability-pipeline.d.ts +15 -0
- package/dist/bubbles/service-bubble/capability-pipeline.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/capability-pipeline.js +114 -0
- package/dist/bubbles/service-bubble/capability-pipeline.js.map +1 -0
- package/dist/bubbles/service-bubble/notion/notion.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/notion/notion.js +14 -1
- package/dist/bubbles/service-bubble/notion/notion.js.map +1 -1
- package/dist/bubbles.json +1 -1
- package/package.json +2 -2
|
@@ -344,19 +344,19 @@ declare const AIAgentResultSchema: z.ZodObject<{
|
|
|
344
344
|
reasoning?: string | null | undefined;
|
|
345
345
|
totalCost?: number | undefined;
|
|
346
346
|
}>;
|
|
347
|
-
type AIAgentParams = z.input<typeof AIAgentParamsSchema> & {
|
|
347
|
+
export type AIAgentParams = z.input<typeof AIAgentParamsSchema> & {
|
|
348
348
|
beforeToolCall?: ToolHookBefore;
|
|
349
349
|
afterToolCall?: ToolHookAfter;
|
|
350
350
|
afterLLMCall?: AfterLLMCallHook;
|
|
351
351
|
streamingCallback?: StreamingCallback;
|
|
352
352
|
};
|
|
353
|
-
type AIAgentParamsParsed = z.output<typeof AIAgentParamsSchema> & {
|
|
353
|
+
export type AIAgentParamsParsed = z.output<typeof AIAgentParamsSchema> & {
|
|
354
354
|
beforeToolCall?: ToolHookBefore;
|
|
355
355
|
afterToolCall?: ToolHookAfter;
|
|
356
356
|
afterLLMCall?: AfterLLMCallHook;
|
|
357
357
|
streamingCallback?: StreamingCallback;
|
|
358
358
|
};
|
|
359
|
-
type AIAgentResult = z.output<typeof AIAgentResultSchema>;
|
|
359
|
+
export type AIAgentResult = z.output<typeof AIAgentResultSchema>;
|
|
360
360
|
export declare class AIAgentBubble extends ServiceBubble<AIAgentParamsParsed, AIAgentResult> {
|
|
361
361
|
static readonly type: "service";
|
|
362
362
|
static readonly service = "ai-agent";
|
|
@@ -696,8 +696,6 @@ export declare class AIAgentBubble extends ServiceBubble<AIAgentParamsParsed, AI
|
|
|
696
696
|
* Modify params before execution - centralizes all param transformations
|
|
697
697
|
*/
|
|
698
698
|
private beforeAction;
|
|
699
|
-
/** Appends text from capability responseAppend factories to the final response. */
|
|
700
|
-
private applyCapabilityResponseAppend;
|
|
701
699
|
protected performAction(context?: BubbleContext): Promise<AIAgentResult>;
|
|
702
700
|
protected getCredentialType(): CredentialType;
|
|
703
701
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-agent.d.ts","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/ai-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAmB,MAAM,KAAK,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EACL,cAAc,EAGf,MAAM,2BAA2B,CAAC;AAInC,OAAO,EAEL,SAAS,EAET,cAAc,EACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG5D,OAAO,EAEL,KAAK,aAAa,EACnB,MAAM,gCAAgC,CAAC;AAExC,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"ai-agent.d.ts","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/ai-agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,7 @@ import { HarmBlockThreshold, HarmCategory } from '@google/generative-ai';
|
|
|
16
16
|
import { SafeGeminiChat } from '../../utils/safe-gemini-chat.js';
|
|
17
17
|
import { zodSchemaToJsonString, buildJsonSchemaInstruction, } from '../../utils/zod-schema.js';
|
|
18
18
|
import { getCapability, } from '../../capabilities/index.js';
|
|
19
|
+
import { applyCapabilityPostprocessing, applyCapabilityPreprocessing, } from './capability-pipeline.js';
|
|
19
20
|
// Define backup model configuration schema
|
|
20
21
|
const BackupModelConfigSchema = z.object({
|
|
21
22
|
model: AvailableModels.describe('Backup AI model to use if the primary model fails (format: provider/model-name).'),
|
|
@@ -371,96 +372,8 @@ export class AIAgentBubble extends ServiceBubble {
|
|
|
371
372
|
timeZoneName: 'short',
|
|
372
373
|
});
|
|
373
374
|
this.params.systemPrompt = `${this.params.systemPrompt}\n\nCurrent time: ${now}`;
|
|
374
|
-
// Apply capability model
|
|
375
|
-
|
|
376
|
-
if (caps.length > 1) {
|
|
377
|
-
// Multi-capability delegator: use Gemini 3 Pro for reliable tool-calling / routing.
|
|
378
|
-
// Sub-agents apply their own modelConfigOverride in single-cap mode.
|
|
379
|
-
this.params.model.model =
|
|
380
|
-
RECOMMENDED_MODELS.BEST;
|
|
381
|
-
this.params.model.reasoningEffort = undefined;
|
|
382
|
-
}
|
|
383
|
-
else {
|
|
384
|
-
// Single-cap: apply that capability's model override directly
|
|
385
|
-
for (const capConfig of caps) {
|
|
386
|
-
const capDef = getCapability(capConfig.id);
|
|
387
|
-
const override = capDef?.metadata.modelConfigOverride;
|
|
388
|
-
if (!override)
|
|
389
|
-
continue;
|
|
390
|
-
if (override.model)
|
|
391
|
-
this.params.model.model =
|
|
392
|
-
override.model;
|
|
393
|
-
if (override.reasoningEffort)
|
|
394
|
-
this.params.model.reasoningEffort = override.reasoningEffort;
|
|
395
|
-
if (override.maxTokens)
|
|
396
|
-
this.params.model.maxTokens = Math.max(this.params.model.maxTokens ?? 0, override.maxTokens);
|
|
397
|
-
}
|
|
398
|
-
}
|
|
399
|
-
// Inject capability system prompts
|
|
400
|
-
if (caps.length > 1) {
|
|
401
|
-
// Multi-capability: summaries with tool names + delegation hints — sub-agents get full prompts
|
|
402
|
-
const summaries = caps
|
|
403
|
-
.map((c, idx) => {
|
|
404
|
-
const def = getCapability(c.id);
|
|
405
|
-
if (!def)
|
|
406
|
-
return null;
|
|
407
|
-
const toolNames = def.metadata.tools.map((t) => t.name).join(', ');
|
|
408
|
-
let summary = `${idx + 1}. "${def.metadata.name}" (id: ${c.id})\n Purpose: ${def.metadata.description}`;
|
|
409
|
-
if (toolNames)
|
|
410
|
-
summary += `\n Tools: ${toolNames}`;
|
|
411
|
-
if (def.metadata.delegationHint)
|
|
412
|
-
summary += `\n When to use: ${def.metadata.delegationHint}`;
|
|
413
|
-
return summary;
|
|
414
|
-
})
|
|
415
|
-
.filter(Boolean);
|
|
416
|
-
this.params.systemPrompt += `\n\n---\nSYSTEM CAPABILITY EXTENSIONS:\nMultiple specialized capabilities are available. You MUST delegate to them using the 'use-capability' tool.\n\nAvailable Capabilities:\n${summaries.join('\n\n')}\n\nDELEGATION RULES:\n- Use 'use-capability' tool to delegate tasks to the appropriate capability\n- Do NOT attempt to handle capability tasks yourself\n- Include full context when delegating\n- Can chain multiple capabilities if needed\n- Only respond directly for: greetings, clarifications, or tasks outside all capabilities\n---\n\nYour role is to understand the user's request and delegate to the appropriate capability or respond directly when appropriate.`;
|
|
417
|
-
}
|
|
418
|
-
else {
|
|
419
|
-
// Single or zero capabilities: eager load as before
|
|
420
|
-
for (const capConfig of caps) {
|
|
421
|
-
const capDef = getCapability(capConfig.id);
|
|
422
|
-
if (!capDef)
|
|
423
|
-
continue;
|
|
424
|
-
const ctx = {
|
|
425
|
-
credentials: this.resolveCapabilityCredentials(capDef, capConfig),
|
|
426
|
-
inputs: capConfig.inputs ?? {},
|
|
427
|
-
bubbleContext: this.context,
|
|
428
|
-
};
|
|
429
|
-
const addition = (await capDef.createSystemPrompt?.(ctx)) ??
|
|
430
|
-
capDef.metadata.systemPromptAddition;
|
|
431
|
-
if (addition) {
|
|
432
|
-
this.params.systemPrompt = `${this.params.systemPrompt}\n\n---\nSYSTEM CAPABILITY EXTENSION:\nThe following capability has been added to enhance your functionality:\n\n[${capDef.metadata.name}]\n${addition}\n---\n\nYour primary objective is to fulfill the user's request using both your base capabilities and the extended capability above.`;
|
|
433
|
-
}
|
|
434
|
-
}
|
|
435
|
-
}
|
|
436
|
-
}
|
|
437
|
-
/** Appends text from capability responseAppend factories to the final response. */
|
|
438
|
-
async applyCapabilityResponseAppend(result) {
|
|
439
|
-
const caps = this.params.capabilities ?? [];
|
|
440
|
-
// Multi-cap: sub-agents handle their own responseAppend
|
|
441
|
-
if (caps.length > 1)
|
|
442
|
-
return result;
|
|
443
|
-
const appendParts = [];
|
|
444
|
-
for (const capConfig of caps) {
|
|
445
|
-
const capDef = getCapability(capConfig.id);
|
|
446
|
-
if (!capDef?.createResponseAppend)
|
|
447
|
-
continue;
|
|
448
|
-
const ctx = {
|
|
449
|
-
credentials: this.resolveCapabilityCredentials(capDef, capConfig),
|
|
450
|
-
inputs: capConfig.inputs ?? {},
|
|
451
|
-
bubbleContext: this.context,
|
|
452
|
-
};
|
|
453
|
-
const text = await capDef.createResponseAppend(ctx);
|
|
454
|
-
if (text)
|
|
455
|
-
appendParts.push(text);
|
|
456
|
-
}
|
|
457
|
-
if (appendParts.length > 0) {
|
|
458
|
-
return {
|
|
459
|
-
...result,
|
|
460
|
-
response: `${result.response}\n\n${appendParts.join('\n\n')}`,
|
|
461
|
-
};
|
|
462
|
-
}
|
|
463
|
-
return result;
|
|
375
|
+
// Apply capability model overrides and system prompt injections
|
|
376
|
+
await applyCapabilityPreprocessing(this.params, this.context, this.resolveCapabilityCredentials.bind(this));
|
|
464
377
|
}
|
|
465
378
|
async performAction(context) {
|
|
466
379
|
// Context is available but not currently used in this implementation
|
|
@@ -479,7 +392,7 @@ export class AIAgentBubble extends ServiceBubble {
|
|
|
479
392
|
}
|
|
480
393
|
// Append capability response additions (e.g. tips, blurbs)
|
|
481
394
|
if (result.success) {
|
|
482
|
-
result = await this.
|
|
395
|
+
result = await applyCapabilityPostprocessing(result, this.params, this.context, this.resolveCapabilityCredentials.bind(this));
|
|
483
396
|
}
|
|
484
397
|
return result;
|
|
485
398
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-agent.js","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/ai-agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ai-agent.js","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/ai-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAmB,MAAM,KAAK,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEpE,OAAO,EACL,cAAc,EACd,yBAAyB,EACzB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EACL,YAAY,EACZ,SAAS,EACT,WAAW,EACX,cAAc,GACf,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EACL,cAAc,GAEf,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAGxD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EACL,8BAA8B,EAC9B,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EACL,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,aAAa,GAEd,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,0BAA0B,CAAC;AAoClC,2CAA2C;AAC3C,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,KAAK,EAAE,eAAe,CAAC,QAAQ,CAC7B,kFAAkF,CACnF;IACD,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,iFAAiF,CAClF;IACH,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CACP,8EAA8E,CAC/E;IACH,eAAe,EAAE,CAAC;SACf,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CACP,0FAA0F,CAC3F;IACH,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,QAAQ,EAAE;SACV,QAAQ,CACP,gFAAgF,CACjF;CACJ,CAAC,CAAC;AAEH,6BAA6B;AAC7B,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,KAAK,EAAE,eAAe,CAAC,QAAQ,CAC7B,gDAAgD,CACjD;IACD,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,CAAC,CAAC;SACN,OAAO,CAAC,CAAC,CAAC;SACV,QAAQ,CACP,0EAA0E,CAC3E;IACH,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CACP,iIAAiI,CAClI;IACH,eAAe,EAAE,CAAC;SACf,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CACP,mFAAmF,CACpF;IACH,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,OAAO,CAAC,CAAC,CAAC;SACV,QAAQ,CACP,0HAA0H,CAC3H;IACH,QAAQ,EAAE,CAAC;SACR,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CAAC,4CAA4C,CAAC;IACzD,QAAQ,EAAE,CAAC;SACR,OAAO,EAAE;SACT,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CACP,qGAAqG,CACtG;IACH,WAAW,EAAE,uBAAuB,CAAC,OAAO,CAAC;QAC3C,KAAK,EAAE,kBAAkB,CAAC,IAAI;KAC/B,CAAC;SACC,QAAQ,EAAE;SACV,QAAQ,CAAC,+DAA+D,CAAC;CAC7E,CAAC,CAAC;AAEH,qDAAqD;AACrD,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,IAAI,EAAE,cAAc,CAAC,QAAQ,CAC3B,iEAAiE,CAClE;IACD,WAAW,EAAE,CAAC;SACX,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAChD,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,EAAE;SACV,QAAQ,CACP,mEAAmE,CACpE;IACH,MAAM,EAAE,CAAC;SACN,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CAAC,2CAA2C,CAAC;CACzD,CAAC,CAAC;AAEH,sDAAsD;AACtD,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,0DAA0D,CAAC;IACvE,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CACP,sEAAsE,CACvE;IACH,MAAM,EAAE,CAAC;SACN,KAAK,CAAC;QACL,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;QACjC,CAAC,CAAC,MAAM,CACN,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,CACzD;KACF,CAAC;SACD,QAAQ,CACP,gLAAgL,CACjL;IACH,IAAI,EAAE,CAAC;SACJ,QAAQ,EAAE;SACV,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;SACvC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;SAC/B,QAAQ,CACP,wGAAwG,CACzG;CACJ,CAAC,CAAC;AAEH,kEAAkE;AAClE,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IAC3C,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,CAAC,2DAA2D,CAAC;IACxE,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,OAAO,CAAC,WAAW,CAAC;SACpB,QAAQ,CAAC,sDAAsD,CAAC;IACnE,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+CAA+C,CAAC;CAC7D,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACtB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IAC/D,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+CAA+C,CAAC;CAC7D,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACpD,iBAAiB;IACjB,cAAc;CACf,CAAC,CAAC;AAEH,sGAAsG;AACtG,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC;IACnC,CAAC,CAAC,MAAM,CAAa,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,SAAS,CAAC;IACtD,CAAC,CAAC,MAAM,EAAE;CACX,CAAC,CAAC;AAKH,+DAA+D;AAC/D,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,EAAE,EAAE,CAAC;SACF,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,mDAAmD,CAAC;IAChE,MAAM,EAAE,CAAC;SACN,MAAM,CACL,CAAC,CAAC,MAAM,EAAE,EACV,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CACpE;SACA,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CAAC,4CAA4C,CAAC;IACzD,WAAW,EAAE,CAAC;SACX,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAChD,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,EAAE;SACV,QAAQ,CAAC,uDAAuD,CAAC;CACrE,CAAC,CAAC;AAEH,uDAAuD;AACvD,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;SAC7B,QAAQ,CAAC,iDAAiD,CAAC;IAC9D,MAAM,EAAE,CAAC;SACN,KAAK,CAAC,gBAAgB,CAAC;SACvB,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CACP,6SAA6S,CAC9S;IACH,mBAAmB,EAAE,CAAC;SACnB,KAAK,CAAC,yBAAyB,CAAC;SAChC,QAAQ,EAAE;SACV,QAAQ,CACP,qOAAqO,CACtO;IACH,YAAY,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,OAAO,CAAC,gCAAgC,CAAC;SACzC,QAAQ,CACP,mEAAmE,CACpE;IACH,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,OAAO,CAAC,UAAU,CAAC;SACnB,QAAQ,EAAE;SACV,QAAQ,CAAC,kCAAkC,CAAC;IAC/C,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC;QAC/B,KAAK,EAAE,kBAAkB,CAAC,IAAI;QAC9B,WAAW,EAAE,CAAC;QACd,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,CAAC;QACb,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC,QAAQ,CACT,kHAAkH,CACnH;IACD,KAAK,EAAE,CAAC;SACL,KAAK,CAAC,gBAAgB,CAAC;SACvB,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CACP,wMAAwM,CACzM;IACH,WAAW,EAAE,CAAC;SACX,KAAK,CAAC,gBAAgB,CAAC;SACvB,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,EAAE;SACV,QAAQ,CACP,qRAAqR,CACtR;IACH,aAAa,EAAE,CAAC;SACb,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,GAAG,CAAC,CAAC,CAAC;SACN,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CACP,4FAA4F,CAC7F;IACH,WAAW,EAAE,CAAC;SACX,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAChD,QAAQ,EAAE;SACV,QAAQ,CACP,iEAAiE,CAClE;IACH,SAAS,EAAE,CAAC;SACT,OAAO,EAAE;SACT,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CACP,0EAA0E,CAC3E;IACH,YAAY,EAAE,CAAC;SACZ,KAAK,CAAC,sBAAsB,CAAC;SAC7B,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,EAAE;SACV,QAAQ,CACP,mKAAmK,CACpK;IACH,oBAAoB,EAAE,oBAAoB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC5D,2SAA2S,CAC5S;IACD,2FAA2F;IAC3F,wEAAwE;CACzE,CAAC,CAAC;AACH,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,QAAQ,CACP,iSAAiS,CAClS;IACH,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CACP,qHAAqH,CACtH;IACH,SAAS,EAAE,CAAC;SACT,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;QAC7D,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;QAClE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;KAC5D,CAAC,CACH;SACA,QAAQ,CAAC,kDAAkD,CAAC;IAC/D,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,CAAC,2DAA2D,CAAC;IACxE,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,4FAA4F,CAC7F;IACH,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,CAAC,mDAAmD,CAAC;IAChE,OAAO,EAAE,CAAC;SACP,OAAO,EAAE;SACT,QAAQ,CAAC,oDAAoD,CAAC;CAClE,CAAC,CAAC;AAmBH,MAAM,OAAO,aAAc,SAAQ,aAGlC;IACC,MAAM,CAAU,IAAI,GAAG,SAAkB,CAAC;IAC1C,MAAM,CAAU,OAAO,GAAG,UAAU,CAAC;IACrC,MAAM,CAAU,QAAQ,GAAG,QAAiB,CAAC;IAC7C,MAAM,CAAU,UAAU,GAAe,UAAU,CAAC;IACpD,MAAM,CAAU,MAAM,GAAG,mBAAmB,CAAC;IAC7C,MAAM,CAAU,YAAY,GAAG,mBAAmB,CAAC;IACnD,MAAM,CAAU,gBAAgB,GAC9B,2FAA2F,CAAC;IAC9F,MAAM,CAAU,eAAe,GAAG;;;;;;;GAOjC,CAAC;IACF,MAAM,CAAU,KAAK,GAAG,OAAO,CAAC;IAExB,OAAO,CAAgB;IACvB,kBAAkB,CAA6B;IAC/C,iBAAiB,CAA4B;IAC7C,gBAAgB,CAA+B;IAC/C,iBAAiB,CAAgC;IACjD,oBAAoB,GAAG,KAAK,CAAC;IAC7B,qBAAqB,GAAG,KAAK,CAAC;IAEtC,YACE,SAAwB;QACtB,OAAO,EAAE,qBAAqB;QAC9B,YAAY,EAAE,gCAAgC;QAC9C,KAAK,EAAE,EAAE,KAAK,EAAE,kBAAkB,CAAC,IAAI,EAAE;KAC1C,EACD,OAAuB,EACvB,UAAmB;QAEnB,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QACnC,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,cAAc,CAAC;QAChD,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,YAAY,CAAC;QAC5C,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,IAAI,aAAa,EAAE,CAAC;IACrC,CAAC;IAEM,KAAK,CAAC,cAAc;QACzB,6CAA6C;QAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAEpD,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC3D,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,gBAAgB,CACtB,aAA2C,EAC3C,YAAsD;QAEtD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,OAAO;YACL,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,WAAW,EAAE,YAAY,CAAC,WAAW,IAAI,aAAa,CAAC,WAAW;YAClE,SAAS,EAAE,YAAY,CAAC,SAAS,IAAI,aAAa,CAAC,SAAS;YAC5D,UAAU,EAAE,YAAY,CAAC,UAAU,IAAI,aAAa,CAAC,UAAU;YAC/D,QAAQ,EAAE,aAAa,CAAC,QAAQ;YAChC,QAAQ,EAAE,aAAa,CAAC,QAAQ;YAChC,WAAW,EAAE,SAAS,EAAE,4BAA4B;SACrD,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,gBAAgB,CAC5B,WAAyC;QAEzC,MAAM,EACJ,OAAO,EACP,MAAM,EACN,YAAY,EACZ,KAAK,EACL,WAAW,EACX,aAAa,EACb,mBAAmB,GACpB,GAAG,IAAI,CAAC,MAAM,CAAC;QAEhB,gCAAgC;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAE9C,oDAAoD;QACpD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAElE,yBAAyB;QACzB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;QAEzE,oBAAoB;QACpB,OAAO,IAAI,CAAC,YAAY,CACtB,KAAK,EACL,OAAO,EACP,MAAM,EACN,aAAa,EACb,WAAW,EACX,mBAAmB,CACpB,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,YAAY;QACxB,qEAAqE;QACrE,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC/D,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBAAE,OAAO,KAAK,CAAC;gBACjC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACf,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC;QAED,qCAAqC;QACrC,IACE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS;YACzC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,EACnC,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;QACtC,CAAC;QAED,8DAA8D;QAC9D,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;YAElC,sDAAsD;YACtD,MAAM,YAAY,GAAG,qBAAqB,CACxC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CACjC,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,OAAO,0BAA0B,CAAC,YAAY,CAAC,EAAE,CAAC;QAC1G,CAAC;QAED,6CAA6C;QAC7C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE;YAC7C,OAAO,EAAE,MAAM;YACf,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,MAAM;YACb,GAAG,EAAE,SAAS;YACd,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,OAAO;SACtB,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,qBAAqB,GAAG,EAAE,CAAC;QAEjF,gEAAgE;QAChE,MAAM,4BAA4B,CAChC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAC7C,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,aAAa,CAC3B,OAAuB;QAEvB,qEAAqE;QACrE,KAAK,OAAO,CAAC;QAEb,+CAA+C;QAC/C,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAE1B,IAAI,CAAC;YACH,IAAI,MAAqB,CAAC;YAE1B,yFAAyF;YACzF,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBACtD,OAAO,CAAC,GAAG,CACT,qEAAqE,CACtE,CAAC;gBACF,MAAM,GAAG,MAAM,IAAI,CAAC,gCAAgC,EAAE,CAAC;YACzD,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC1D,CAAC;YAED,2DAA2D;YAC3D,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,GAAG,MAAM,6BAA6B,CAC1C,MAAM,EACN,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAC7C,CAAC;YACJ,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC3D,OAAO,CAAC,IAAI,CAAC,4BAA4B,EAAE,YAAY,CAAC,CAAC;YAEzD,mDAAmD;YACnD,OAAO;gBACL,QAAQ,EAAE,UAAU,YAAY,EAAE;gBAClC,OAAO,EAAE,KAAK;gBACd,SAAS,EAAE,EAAE;gBACb,KAAK,EAAE,YAAY;gBACnB,UAAU,EAAE,CAAC;aACd,CAAC;QACJ,CAAC;IACH,CAAC;IAES,iBAAiB;QACzB,OAAO,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACK,yBAAyB,CAAC,KAAa;QAC7C,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpC,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,QAAQ;gBACX,OAAO,cAAc,CAAC,WAAW,CAAC;YACpC,KAAK,QAAQ;gBACX,OAAO,cAAc,CAAC,kBAAkB,CAAC;YAC3C,KAAK,WAAW;gBACd,OAAO,cAAc,CAAC,cAAc,CAAC;YACvC,KAAK,YAAY;gBACf,OAAO,cAAc,CAAC,eAAe,CAAC;YACxC;gBACE,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,EAAE,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAES,gBAAgB;QACxB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;QAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAEnB,CAAC;QACd,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE1C,6EAA6E;QAC7E,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC;QACvE,CAAC;QAED,gDAAgD;QAChD,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,QAAQ;gBACX,OAAO,WAAW,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;YACjD,KAAK,QAAQ;gBACX,OAAO,WAAW,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;YACxD,KAAK,WAAW;gBACd,OAAO,WAAW,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YACpD,KAAK,YAAY;gBACf,OAAO,WAAW,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;YACrD;gBACE,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,EAAE,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,KAAa;QACvC,OAAO,CACL,KAAK,KAAK,oCAAoC;YAC9C,KAAK,KAAK,yCAAyC,CACpD,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,gCAAgC;QAC5C,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1E,sDAAsD;QACtD,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QAEzD,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAEnB,CAAC;QACd,MAAM,MAAM,GAAG,WAAW,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAE7D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CACb,yDAAyD,CAC1D,CAAC;QACJ,CAAC;QAED,uBAAuB;QACvB,MAAM,QAAQ,GAA6C,EAAE,CAAC;QAE9D,oBAAoB;QACpB,IAAI,YAAY,EAAE,CAAC;YACjB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,uCAAuC;QACvC,IAAI,mBAAmB,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1D,KAAK,MAAM,UAAU,IAAI,mBAAmB,EAAE,CAAC;gBAC7C,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,UAAU,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAClE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC;QACH,CAAC;QAED,sBAAsB;QACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QAElD,mBAAmB;QACnB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC7B,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE;gBACJ,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,WAAW,EAAE,KAAK,CAAC,WAAW;aAC/B;SACF,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,+CAA+C,EAC/C;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,MAAM,EAAE;oBACjC,cAAc,EAAE,kBAAkB;oBAClC,cAAc,EAAE,sBAAsB;oBACtC,SAAS,EAAE,WAAW;iBACvB;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,KAAK,EAAE,SAAS;oBAChB,QAAQ;oBACR,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,UAAU,EAAE,KAAK,CAAC,SAAS;oBAC3B,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;iBACzB,CAAC;aACH,CACF,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,SAAS,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAEvC,CAAC;gBACF,MAAM,IAAI,KAAK,CACb,yBAAyB,QAAQ,CAAC,MAAM,MAAM,SAAS,EAAE,KAAK,EAAE,OAAO,IAAI,QAAQ,CAAC,UAAU,EAAE,CACjG,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAiBlC,CAAC;YAEF,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;YAChE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC;YACxD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC;YAEnC,8BAA8B;YAC9B,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;gBAC1D,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAC/B;oBACE,KAAK,EAAE,SAAS;oBAChB,OAAO,EAAE,cAAc,CAAC,eAAe;oBACvC,IAAI,EAAE,gBAAgB;oBACtB,UAAU,EAAE,KAAK,CAAC,KAAuB;iBAC1C,EACD,8BAA8B,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EACpD;oBACE,UAAU,EAAE,UAAU;oBACtB,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU;oBACpC,aAAa,EAAE,kBAAkB;iBAClC,CACF,CAAC;YACJ,CAAC;YAED,sBAAsB;YACtB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC7B,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE;oBACJ,SAAS,EAAE,IAAI,CAAC,EAAE;oBAClB,OAAO,EAAE,aAAa;oBACtB,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,YAAY;iBACtC;aACF,CAAC,CAAC;YAEH,OAAO;gBACL,QAAQ,EAAE,aAAa;gBACvB,SAAS;gBACT,SAAS,EAAE,EAAE;gBACb,UAAU,EAAE,CAAC;gBACb,SAAS;gBACT,KAAK,EAAE,EAAE;gBACT,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAE3D,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC7B,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE;oBACJ,KAAK,EAAE,YAAY;oBACnB,WAAW,EAAE,KAAK;iBACnB;aACF,CAAC,CAAC;YAEH,OAAO;gBACL,QAAQ,EAAE,wBAAwB,YAAY,EAAE;gBAChD,SAAS,EAAE,EAAE;gBACb,UAAU,EAAE,CAAC;gBACb,KAAK,EAAE,YAAY;gBACnB,OAAO,EAAE,KAAK;aACf,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,WAAyC;QAC/D,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC;QAClE,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;QAClD,MAAM,eAAe,GAAG,WAAW,CAAC,eAAe,CAAC;QAEpD,6EAA6E;QAC7E,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAEnB,CAAC;QAEd,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,MAA0B,CAAC;QAC/B,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,QAAQ;gBACX,MAAM,GAAG,WAAW,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;gBACjD,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,GAAG,WAAW,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;gBACxD,MAAM;YACR,KAAK,WAAW;gBACd,MAAM,GAAG,WAAW,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;gBACpD,MAAM;YACR,KAAK,YAAY;gBACf,MAAM,GAAG,WAAW,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;gBACrD,MAAM;YACR;gBACE,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,qCAAqC,QAAQ,EAAE,CAAC,CAAC;QACnE,CAAC;QAED,oDAAoD;QACpD,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;QAEjD,wCAAwC;QACxC,MAAM,OAAO,GAAG,UAAU,IAAI,CAAC,CAAC;QAEhC,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,QAAQ;gBACX,OAAO,IAAI,UAAU,CAAC;oBACpB,KAAK,EAAE,SAAS;oBAChB,WAAW;oBACX,SAAS;oBACT,MAAM;oBACN,GAAG,CAAC,eAAe,IAAI;wBACrB,SAAS,EAAE;4BACT,MAAM,EAAE,eAAe;4BACvB,OAAO,EAAE,MAAM;yBAChB;qBACF,CAAC;oBACF,SAAS,EAAE,eAAe;oBAC1B,UAAU,EAAE,OAAO;iBACpB,CAAC,CAAC;YACL,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,cAAc,GAAG,eAAe;oBACpC,CAAC,CAAC;wBACE,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;wBAC/C,cAAc,EACZ,eAAe,KAAK,KAAK;4BACvB,CAAC,CAAC,IAAI;4BACN,CAAC,CAAC,eAAe,KAAK,QAAQ;gCAC5B,CAAC,CAAC,IAAI;gCACN,CAAC,CAAC,KAAK;qBACd;oBACH,CAAC,CAAC,SAAS,CAAC;gBACd,OAAO,IAAI,cAAc,CAAC;oBACxB,KAAK,EAAE,SAAS;oBAChB,WAAW;oBACX,eAAe,EAAE,SAAS;oBAC1B,GAAG,CAAC,cAAc,IAAI,EAAE,cAAc,EAAE,CAAC;oBACzC,MAAM;oBACN,+EAA+E;oBAC/E,SAAS,EAAE,KAAK;oBAChB,UAAU,EAAE,OAAO;oBACnB,6EAA6E;oBAC7E,0EAA0E;oBAC1E,cAAc,EAAE;wBACd;4BACE,QAAQ,EAAE,YAAY,CAAC,wBAAwB;4BAC/C,SAAS,EAAE,kBAAkB,CAAC,UAAU;yBACzC;wBACD;4BACE,QAAQ,EAAE,YAAY,CAAC,yBAAyB;4BAChD,SAAS,EAAE,kBAAkB,CAAC,UAAU;yBACzC;wBACD;4BACE,QAAQ,EAAE,YAAY,CAAC,+BAA+B;4BACtD,SAAS,EAAE,kBAAkB,CAAC,UAAU;yBACzC;wBACD;4BACE,QAAQ,EAAE,YAAY,CAAC,+BAA+B;4BACtD,SAAS,EAAE,kBAAkB,CAAC,UAAU;yBACzC;qBACF;iBACF,CAAC,CAAC;YACL,CAAC;YACD,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,iEAAiE;gBACjE,4EAA4E;gBAC5E,MAAM,cAAc,GAClB,eAAe,IAAI,IAAI;oBACrB,CAAC,CAAC;wBACE,IAAI,EAAE,SAAkB;wBACxB,aAAa,EACX,eAAe,KAAK,KAAK;4BACvB,CAAC,CAAC,IAAI;4BACN,CAAC,CAAC,eAAe,KAAK,QAAQ;gCAC5B,CAAC,CAAC,IAAI;gCACN,CAAC,CAAC,KAAK;qBACd;oBACH,CAAC,CAAC,SAAS,CAAC;gBAEhB,OAAO,IAAI,aAAa,CAAC;oBACvB,KAAK,EAAE,SAAS;oBAChB,WAAW;oBACX,eAAe,EAAE,MAAM;oBACvB,SAAS;oBACT,SAAS,EAAE,IAAI;oBACf,MAAM;oBACN,GAAG,CAAC,cAAc,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC;oBACnD,UAAU,EAAE,OAAO;iBACpB,CAAC,CAAC;YACL,CAAC;YACD,KAAK,YAAY;gBACf,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;gBACrC,OAAO,IAAI,UAAU,CAAC;oBACpB,KAAK,EAAE,SAAS;oBAChB,oBAAoB,EAAE,IAAI;oBAC1B,WAAW;oBACX,SAAS;oBACT,MAAM;oBACN,SAAS,EAAE,eAAe;oBAC1B,UAAU,EAAE,OAAO;oBACnB,aAAa,EAAE;wBACb,OAAO,EAAE,8BAA8B;qBACxC;oBACD,WAAW,EAAE;wBACX,QAAQ,EAAE;4BACR,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ;yBAClC;wBACD,SAAS,EAAE;4BACT,MAAM,EAAE,eAAe,IAAI,QAAQ;4BACnC,OAAO,EAAE,KAAK;yBACf;qBACF;iBACF,CAAC,CAAC;YACL;gBACE,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,EAAE,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,WAAyC,EACzC,oBAAwD,EAAE;QAE1D,MAAM,KAAK,GAA4B,EAAE,CAAC;QAC1C,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAEtC,iCAAiC;QACjC,KAAK,MAAM,UAAU,IAAI,iBAAiB,EAAE,CAAC;YAC3C,IAAI,CAAC;gBACH,OAAO,CAAC,GAAG,CACT,2CAA2C,UAAU,CAAC,IAAI,EAAE,CAC7D,CAAC;gBAEF,kDAAkD;gBAClD,IAAI,MAAoB,CAAC;gBACzB,IACE,UAAU,CAAC,MAAM;oBACjB,OAAO,UAAU,CAAC,MAAM,KAAK,QAAQ;oBACrC,MAAM,IAAI,UAAU,CAAC,MAAM,EAC3B,CAAC;oBACD,+CAA+C;oBAC/C,MAAM,GAAG,UAAU,CAAC,MAAsB,CAAC;gBAC7C,CAAC;qBAAM,CAAC;oBACN,sCAAsC;oBACtC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,MAAuB,CAAiB,CAAC;gBACxE,CAAC;gBAED,MAAM,WAAW,GAAG,IAAI,qBAAqB,CAAC;oBAC5C,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,WAAW,EAAE,UAAU,CAAC,WAAW;oBACnC,MAAM,EAAE,MAAM;oBACd,IAAI,EAAE,UAAU,CAAC,IAAoC;iBAC/C,CAAC,CAAC;gBAEV,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC1B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CACX,mCAAmC,UAAU,CAAC,IAAI,IAAI,EACtD,KAAK,CACN,CAAC;gBACF,8CAA8C;gBAC9C,SAAS;YACX,CAAC;QACH,CAAC;QAED,qDAAqD;QACrD,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,CAAC;gBACH,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,IAAkB,CAAC,CAAC;gBAExE,IAAI,CAAC,eAAe,EAAE,CAAC;oBACrB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;wBACxC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CACtB,gBAAgB,UAAU,CAAC,IAAI,qDAAqD,CACrF,CAAC;oBACJ,CAAC;oBACD,OAAO,CAAC,IAAI,CACV,gBAAgB,UAAU,CAAC,IAAI,qDAAqD,CACrF,CAAC;oBACF,SAAS;gBACX,CAAC;gBAED,uDAAuD;gBACvD,IAAI,CAAC,CAAC,MAAM,IAAI,eAAe,CAAC,IAAI,eAAe,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBACpE,OAAO,CAAC,IAAI,CAAC,WAAW,UAAU,CAAC,IAAI,wBAAwB,CAAC,CAAC;oBACjE,SAAS;gBACX,CAAC;gBAED,mDAAmD;gBACnD,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;oBAC/B,OAAO,CAAC,IAAI,CACV,gBAAgB,UAAU,CAAC,IAAI,oCAAoC,CACpE,CAAC;oBACF,SAAS;gBACX,CAAC;gBAED,iFAAiF;gBACjF,MAAM,qBAAqB,GACzB,yBAAyB,CAAC,UAAU,CAAC,IAAkB,CAAC,IAAI,EAAE,CAAC;gBACjE,MAAM,eAAe,GAA2B,EAAE,CAAC;gBAEnD,sDAAsD;gBACtD,KAAK,MAAM,QAAQ,IAAI,qBAAqB,EAAE,CAAC;oBAC7C,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACjE,eAAe,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;oBAChE,CAAC;gBACH,CAAC;gBAED,sFAAsF;gBACtF,MAAM,oBAAoB,GAAG;oBAC3B,GAAG,eAAe;oBAClB,GAAG,CAAC,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC;iBAClC,CAAC;gBAEF,OAAO,CAAC,GAAG,CACT,uCAAuC,UAAU,CAAC,IAAI,GAAG,EACzD,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAClC,CAAC;gBAEF,MAAM,aAAa,GAAG,eAAe,CAAC,SAAS,CAC7C,oBAAoB,EACpB,UAAU,CAAC,MAAM,IAAI,EAAE,EACvB,IAAI,CAAC,OAAO,CACb,CAAC;gBAEF,MAAM,WAAW,GAAG,IAAI,qBAAqB,CAAC;oBAC5C,IAAI,EAAE,aAAa,CAAC,IAAI;oBACxB,WAAW,EAAE,aAAa,CAAC,WAAW;oBACtC,MAAM,EAAE,aAAa,CAAC,MAAiC;oBACvD,IAAI,EAAE,aAAa,CAAC,IAAoC;iBAClD,CAAC,CAAC;gBAEV,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC1B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,4BAA4B,UAAU,CAAC,IAAI,IAAI,EAAE,KAAK,CAAC,CAAC;gBACtE,8CAA8C;gBAC9C,SAAS;YACX,CAAC;QACH,CAAC;QAED,sBAAsB;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;QAC5C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,4EAA4E;YAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrC,KAAK,CAAC,IAAI,CACR,IAAI,qBAAqB,CAAC;gBACxB,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EACT,+GAA+G;gBACjH,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;oBACf,YAAY,EAAE,CAAC;yBACZ,IAAI,CAAC,MAA+B,CAAC;yBACrC,QAAQ,CAAC,iCAAiC,CAAC;oBAC9C,IAAI,EAAE,CAAC;yBACJ,MAAM,EAAE;yBACR,QAAQ,CACP,sFAAsF,CACvF;iBACJ,CAAC;gBACF,IAAI,EAAE,KAAK,EAAE,KAA8B,EAAE,EAAE;oBAC7C,MAAM,YAAY,GAAG,KAAK,CAAC,YAAsB,CAAC;oBAClD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAc,CAAC;oBAClC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,CAAC;oBAC1D,MAAM,MAAM,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;oBAC3C,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM;wBACvB,OAAO,EAAE,KAAK,EAAE,eAAe,YAAY,aAAa,EAAE,CAAC;oBAE7D,MAAM,QAAQ,GAAG,IAAI,aAAa,CAChC;wBACE,OAAO,EAAE,IAAI;wBACb,YAAY,EAAE,EAAE,EAAE,wDAAwD;wBAC1E,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;wBAC/B,YAAY,EAAE,CAAC,SAAS,CAAC,EAAE,uCAAuC;wBAClE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;qBACrC,EACD,IAAI,CAAC,OAAO,CACb,CAAC;oBAEF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACvC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;oBACjD,CAAC;oBACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC;gBAC5D,CAAC;aACK,CAAC,CACV,CAAC;YACF,OAAO,CAAC,GAAG,CACT,sFAAsF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAC3G,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,+DAA+D;YAC/D,KAAK,MAAM,SAAS,IAAI,IAAI,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO,CAAC,IAAI,CACV,yBAAyB,SAAS,CAAC,EAAE,oCAAoC,CAC1E,CAAC;oBACF,SAAS;gBACX,CAAC;gBAED,IAAI,CAAC;oBACH,uFAAuF;oBACvF,MAAM,GAAG,GAA6B;wBACpC,WAAW,EAAE,IAAI,CAAC,4BAA4B,CAAC,MAAM,EAAE,SAAS,CAAC;wBACjE,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,EAAE;wBAC9B,aAAa,EAAE,IAAI,CAAC,OAAO;qBAC5B,CAAC;oBACF,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;oBAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC;oBAEpC,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;wBAC7C,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;wBACtC,IAAI,CAAC,IAAI;4BAAE,SAAS;wBAEpB,mFAAmF;wBACnF,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,QAAQ,EAAE,eAAe,EAAE,GAChE,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;wBAEhD,qFAAqF;wBACrF,MAAM,cAAc,GAA8B,IAAI,CAAC,OAAO;4BAC5D,CAAC,CAAC;gCACE,GAAG,IAAI,CAAC,OAAO;gCACf,UAAU,EAAE,iBAAiB;gCAC7B,eAAe,EAAE,eAAe;gCAChC,oBAAoB,EAAE,EAAE;6BACzB;4BACH,CAAC,CAAC,SAAS,CAAC;wBAEd,qEAAqE;wBACrE,MAAM,WAAW,GAAG,KAAK,EACvB,KAA8B,EACZ,EAAE;4BACpB,MAAM,EAAE,kBAAkB,CACxB,iBAAiB,EACjB,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,IAAI,EACb,KAAK,CACN,CAAC;4BAEF,IAAI,CAAC;gCACH,iFAAiF;gCACjF,GAAG,CAAC,aAAa,GAAG,cAAc,CAAC;gCACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC;gCACjC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,UAAU;gCAE5C,MAAM,EAAE,0BAA0B,CAChC,iBAAiB,EACjB,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,IAAI,EACb,MAAM,CACP,CAAC;gCACF,OAAO,MAAM,CAAC;4BAChB,CAAC;4BAAC,OAAO,KAAK,EAAE,CAAC;gCACf,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,mBAAmB;gCACrD,MAAM,EAAE,0BAA0B,CAChC,iBAAiB,EACjB,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,IAAI,EACb,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CACzC,CAAC;gCACF,MAAM,KAAK,CAAC;4BACd,CAAC;wBACH,CAAC,CAAC;wBAEF,4DAA4D;wBAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;wBAElE,MAAM,WAAW,GAAG,IAAI,qBAAqB,CAAC;4BAC5C,IAAI,EAAE,QAAQ,CAAC,IAAI;4BACnB,WAAW,EAAE,QAAQ,CAAC,WAAW;4BACjC,MAAM,EAAE,UAAU;4BAClB,IAAI,EAAE,WAEe;yBACf,CAAC,CAAC;wBAEV,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;wBACxB,OAAO,CAAC,GAAG,CACT,4CAA4C,QAAQ,CAAC,IAAI,UAAU,SAAS,CAAC,EAAE,iBAAiB,iBAAiB,GAAG,CACrH,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,kCAAkC,SAAS,CAAC,EAAE,IAAI,EAClD,KAAK,CACN,CAAC;oBACF,SAAS;gBACX,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACK,4BAA4B,CAClC,MAKC,EACD,SAAmD;QAEnD,MAAM,QAAQ,GAA4C,EAAE,CAAC;QAE7D,wEAAwE;QACxE,MAAM,YAAY,GAAG;YACnB,GAAG,MAAM,CAAC,QAAQ,CAAC,mBAAmB;YACtC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,IAAI,EAAE,CAAC;SAC/C,CAAC;QACF,KAAK,MAAM,QAAQ,IAAI,YAAY,EAAE,CAAC;YACpC,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACjE,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;QAED,4EAA4E;QAC5E,IAAI,SAAS,CAAC,WAAW,EAAE,CAAC;YAC1B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC;gBACjE,QAAQ,CAAC,GAAqB,CAAC,GAAG,KAAK,CAAC;YAC1C,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACK,yBAAyB,CAAC,QAAgB;QAIhD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC;QAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC;QAChD,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAEtD,yDAAyD;QACzD,MAAM,cAAc,GAAG,CACrB,IAQC,EACD,MAAc,EAOP,EAAE;YACT,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM;gBAAE,OAAO,IAAI,CAAC;YAC1C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC;gBAC5C,MAAM,KAAK,GAAG,cAAc,CAAC,KAAoB,EAAE,MAAM,CAAC,CAAC;gBAC3D,IAAI,KAAK;oBAAE,OAAO,KAAK,CAAC;YAC1B,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACxE,IAAI,CAAC,UAAU,EAAE,YAAY;YAAE,OAAO,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAEzE,wDAAwD;QACxD,MAAM,aAAa,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAChD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAC3B,CAAC;QACF,OAAO;YACL,UAAU,EAAE,aAAa,EAAE,UAAU,IAAI,CAAC,GAAG;YAC7C,QAAQ,EAAE,aAAa,EAAE,QAAQ,IAAI,EAAE;SACxC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,eAAe,CACrB,UAAmC;QAEnC,MAAM,UAAU,GACd,UACD,CAAC,UAAU,CAAC;QACb,MAAM,QAAQ,GAAI,UAAsC,CAAC,QAAQ,IAAI,EAAE,CAAC;QAExE,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxD,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC;QAED,MAAM,KAAK,GAAkB,EAAE,CAAC;QAChC,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YACrD,IAAI,WAAyB,CAAC;YAE9B,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;gBAClB,KAAK,QAAQ;oBACX,WAAW,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;oBACzB,IAAI,IAAI,CAAC,WAAW;wBAClB,WAAW,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAqB,CAAC,CAAC;oBACjE,MAAM;gBACR,KAAK,QAAQ,CAAC;gBACd,KAAK,SAAS;oBACZ,WAAW,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;oBACzB,IAAI,IAAI,CAAC,WAAW;wBAClB,WAAW,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAqB,CAAC,CAAC;oBACjE,MAAM;gBACR,KAAK,SAAS;oBACZ,WAAW,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;oBAC1B,IAAI,IAAI,CAAC,WAAW;wBAClB,WAAW,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAqB,CAAC,CAAC;oBACjE,MAAM;gBACR,KAAK,OAAO;oBACV,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;oBACnC,IAAI,IAAI,CAAC,WAAW;wBAClB,WAAW,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAqB,CAAC,CAAC;oBACjE,MAAM;gBACR;oBACE,WAAW,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;oBAC1B,IAAI,IAAI,CAAC,WAAW;wBAClB,WAAW,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAqB,CAAC,CAAC;oBACjE,MAAM;YACV,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5B,WAAW,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;YACvC,CAAC;YAED,KAAK,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;QAC3B,CAAC;QAED,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,qBAAqB,CACjC,KAAsC,EACtC,KAA8B;QAE9B,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;QAC3B,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAc,CAAC;QAC/D,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,IAAI,EAAE,CAAC;QAE/C,MAAM,YAAY,GAAkB,EAAE,CAAC;QACvC,IAAI,eAAe,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;QAEpC,iDAAiD;QACjD,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;QAElC,yBAAyB;QACzB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzD,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,CAAC,IAAI,CAAC,QAAQ,QAAQ,CAAC,IAAI,YAAY,CAAC,CAAC;gBAChD,MAAM,kBAAkB,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/D,MAAM,YAAY,GAAG,gBAAgB,QAAQ,CAAC,IAAI,iCAAiC,kBAAkB,EAAE,CAAC;gBACxG,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAE7B,kEAAkE;gBAClE,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACvB,IAAI,EAAE,iBAAiB;oBACvB,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,KAAK,EAAE,QAAQ,CAAC,IAAI;wBACpB,MAAM,EAAE,QAAQ,CAAC,EAAG;wBACpB,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU;qBACrC;iBACF,CAAC,CAAC;gBAEH,sCAAsC;gBACtC,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACvB,IAAI,EAAE,oBAAoB;oBAC1B,IAAI,EAAE;wBACJ,MAAM,EAAE,QAAQ,CAAC,EAAG;wBACpB,KAAK,EAAE,QAAQ,CAAC,IAAyB;wBACzC,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,MAAM,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;wBAC/B,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;wBAChC,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU;qBACrC;iBACF,CAAC,CAAC;gBAEH,MAAM,YAAY,GAAG,IAAI,WAAW,CAAC;oBACnC,OAAO,EAAE,YAAY;oBACrB,YAAY,EAAE,QAAQ,CAAC,EAAG;iBAC3B,CAAC,CAAC;gBACH,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAChC,eAAe,GAAG,CAAC,GAAG,eAAe,EAAE,YAAY,CAAC,CAAC;gBACrD,SAAS;YACX,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,IAAI,CAAC;gBACH,uCAAuC;gBACvC,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxD,QAAQ,EAAE,QAAQ,CAAC,IAAqB;oBACxC,SAAS,EAAE,QAAQ,CAAC,IAAI;oBACxB,QAAQ,EAAE,eAAe;iBAC1B,CAAC,CAAC;gBAEH,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACvB,IAAI,EAAE,iBAAiB;oBACvB,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,KAAK,EAAE,QAAQ,CAAC,IAAI;wBACpB,MAAM,EAAE,QAAQ,CAAC,EAAG;wBACpB,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU;qBACrC;iBACF,CAAC,CAAC;gBAEH,0DAA0D;gBAC1D,IAAI,iBAAiB,EAAE,CAAC;oBACtB,IAAI,iBAAiB,CAAC,QAAQ,EAAE,CAAC;wBAC/B,eAAe,GAAG,iBAAiB,CAAC,QAAQ,CAAC;oBAC/C,CAAC;oBACD,QAAQ,CAAC,IAAI,GAAG,iBAAiB,CAAC,SAAS,CAAC;gBAC9C,CAAC;gBAED,mBAAmB;gBACnB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAEpD,sBAAsB;gBACtB,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC;oBAClC,OAAO,EACL,OAAO,UAAU,KAAK,QAAQ;wBAC5B,CAAC,CAAC,UAAU;wBACZ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;oBAChC,YAAY,EAAE,QAAQ,CAAC,EAAG;iBAC3B,CAAC,CAAC;gBAEH,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC/B,eAAe,GAAG,CAAC,GAAG,eAAe,EAAE,WAAW,CAAC,CAAC;gBAEpD,sCAAsC;gBACtC,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACtD,QAAQ,EAAE,QAAQ,CAAC,IAAqB;oBACxC,SAAS,EAAE,QAAQ,CAAC,IAAI;oBACxB,UAAU;oBACV,QAAQ,EAAE,eAAe;iBAC1B,CAAC,CAAC;gBAEH,6DAA6D;gBAC7D,IAAI,gBAAgB,EAAE,CAAC;oBACrB,IAAI,gBAAgB,CAAC,QAAQ,EAAE,CAAC;wBAC9B,eAAe,GAAG,gBAAgB,CAAC,QAAQ,CAAC;oBAC9C,CAAC;oBACD,wCAAwC;oBACxC,IAAI,gBAAgB,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;wBACzC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;oBACnC,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACvB,IAAI,EAAE,oBAAoB;oBAC1B,IAAI,EAAE;wBACJ,MAAM,EAAE,QAAQ,CAAC,EAAG;wBACpB,KAAK,EAAE,QAAQ,CAAC,IAAyB;wBACzC,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,MAAM,EAAE,UAAU;wBAClB,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;wBAChC,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU;qBACrC;iBACF,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,wBAAwB,QAAQ,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;gBAC/D,MAAM,YAAY,GAAG,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC;gBAC1F,MAAM,YAAY,GAAG,IAAI,WAAW,CAAC;oBACnC,OAAO,EAAE,YAAY;oBACrB,YAAY,EAAE,QAAQ,CAAC,EAAG;iBAC3B,CAAC,CAAC;gBACH,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAChC,eAAe,GAAG,CAAC,GAAG,eAAe,EAAE,YAAY,CAAC,CAAC;gBAErD,6EAA6E;gBAC7E,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACvB,IAAI,EAAE,oBAAoB;oBAC1B,IAAI,EAAE;wBACJ,MAAM,EAAE,QAAQ,CAAC,EAAG;wBACpB,KAAK,EAAE,QAAQ,CAAC,IAAyB;wBACzC,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,MAAM,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;wBAC/B,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;wBAChC,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU;qBACrC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,8BAA8B;QAC9B,6FAA6F;QAC7F,IAAI,eAAe,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;YACrE,OAAO,CAAC,KAAK,CACX,kEAAkE,EAClE,eAAe,CAAC,MAAM,EACtB,QAAQ,CAAC,MAAM,EACf,YAAY,CAAC,MAAM,CACpB,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;QACvC,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC;IACpC,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,GAAgD,EAChD,KAA8B,EAC9B,YAAoB;QAEpB,wBAAwB;QACxB,MAAM,SAAS,GAAG,KAAK,EAAE,EAAE,QAAQ,EAAmC,EAAE,EAAE;YACxE,0FAA0F;YAC1F,MAAM,aAAa,GAAG,IAAI,YAAY,CAAC,YAAY,CAAC,CAAC;YACrD,MAAM,WAAW,GAAG,CAAC,aAAa,EAAE,GAAG,QAAQ,CAAC,CAAC;YAEjD,sDAAsD;YACtD,MAAM,kBAAkB,GAAG,CAAC,aAAqB,EAAiB,EAAE;gBAClE,sEAAsE;gBACtE,MAAM,SAAS,GAAG,IAAI,CAAC;gBACvB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,oBAAoB;gBAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,GAAG,CAAC,CAAC,EAC1C,QAAQ,CACT,CAAC;gBAEF,gEAAgE;gBAChE,MAAM,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;gBACpD,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,CAAC;gBAElC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;YACnE,CAAC,CAAC;YAEF,uDAAuD;YACvD,MAAM,eAAe,GAAG,KAAK,EAAE,KAAU,EAAE,EAAE;gBAC3C,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;gBAC1C,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;gBAEtC,4CAA4C;gBAC5C,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;gBACpD,IACE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC;oBACzC,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC;oBACrC,YAAY,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EACnD,CAAC;oBACD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CACzB,6DAA6D,aAAa,0DAA0D,CACrI,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CACxB,sCAAsC,aAAa,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,oBAAoB,WAAW,YAAY,KAAK,CAAC,OAAO,EAAE,CAC9I,CAAC;gBAEF,4CAA4C;gBAC5C,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC3B,MAAM,IAAI,CAAC,iBAAiB,CAAC;wBAC3B,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE;4BACJ,KAAK,EAAE,iBAAiB,aAAa,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,OAAO,EAAE;4BACzF,WAAW,EAAE,WAAW,GAAG,CAAC;yBAC7B;qBACF,CAAC,CAAC;gBACL,CAAC;gBAED,gDAAgD;gBAChD,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;oBACpB,MAAM,kBAAkB,CAAC,aAAa,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC,CAAC;YAEF,+DAA+D;YAC/D,8EAA8E;YAC9E,MAAM,cAAc,GAClB,KAAK,CAAC,MAAM,GAAG,CAAC;gBACd,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC;oBAC7B,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU;oBAC9C,eAAe;iBAChB,CAAC;gBACJ,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;oBACZ,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU;oBAC9C,eAAe;iBAChB,CAAC,CAAC;YAET,IAAI,CAAC;gBACH,iDAAiD;gBACjD,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC3B,MAAM,SAAS,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;oBAEpF,0CAA0C;oBAC1C,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,WAAW,EAAE;wBACxD,SAAS,EAAE;4BACT;gCACE,cAAc,EAAE,KAAK,IAAmB,EAAE;oCACxC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;wCAC7B,IAAI,EAAE,WAAW;wCACjB,IAAI,EAAE;4CACJ,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK;4CAC9B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW;yCAC3C;qCACF,CAAC,CAAC;gCACL,CAAC;gCACD,YAAY,EAAE,KAAK,EAAE,MAAM,EAAiB,EAAE;oCAC5C,yDAAyD;oCACzD,MAAM,QAAQ,GAAG,8BAA8B,CAAC,MAAM,CAAC,CAAC;oCACxD,IAAI,QAAQ,EAAE,CAAC;wCACb,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;4CAC7B,IAAI,EAAE,OAAO;4CACb,IAAI,EAAE;gDACJ,OAAO,EAAE,QAAQ;gDACjB,SAAS;6CACV;yCACF,CAAC,CAAC;oCACL,CAAC;oCACD,MAAM,OAAO,GAAG,mBAAmB,CACjC,2BAA2B,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,EACtD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CACxB,CAAC,QAAQ,CAAC;oCACX,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;wCAC7B,IAAI,EAAE,cAAc;wCACpB,IAAI,EAAE;4CACJ,SAAS;4CACT,OAAO,EAAE,OAAO;4CAChB,WAAW,EACT,MAAM,CAAC,SAAS,EAAE,cAAc,EAAE,YAAY;yCACjD;qCACF,CAAC,CAAC;gCACL,CAAC;6BACF;yBACF;qBACF,CAAC,CAAC;oBAEH,OAAO,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClC,CAAC;qBAAM,CAAC;oBACN,yBAAyB;oBACzB,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;oBAC1D,OAAO,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClC,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,iEAAiE;gBACjE,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAEzD,IACE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC;oBACzC,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC;oBACrC,YAAY,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EACnD,CAAC;oBACD,OAAO,CAAC,KAAK,CACX,uDAAuD,EACvD,YAAY,CACb,CAAC;oBAEF,gDAAgD;oBAChD,OAAO;wBACL,QAAQ,EAAE;4BACR,IAAI,SAAS,CAAC;gCACZ,OAAO,EAAE,+EAA+E,YAAY,EAAE;gCACtG,iBAAiB,EAAE;oCACjB,YAAY,EAAE,OAAO;oCACrB,KAAK,EAAE,YAAY;iCACpB;6BACF,CAAC;yBACH;qBACF,CAAC;gBACJ,CAAC;gBAED,uBAAuB;gBACvB,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC,CAAC;QAEF,uEAAuE;QACvE,MAAM,iBAAiB,GAAG,KAAK,EAAE,EAC/B,QAAQ,GACwB,EAAE,EAAE;YACpC,8BAA8B;YAC9B,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;YAEnC,0BAA0B;YAC1B,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAE9B,CAAC;YAEnB,MAAM,YAAY,GAAG,CAAC,CAAC,CACrB,WAAW,CAAC,UAAU,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAC5D,CAAC;YAEF,4EAA4E;YAC5E,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC3C,OAAO,CAAC,GAAG,CACT,6DAA6D,CAC9D,CAAC;gBAEF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC;oBAC7C,QAAQ;oBACR,aAAa,EAAE,WAAW;oBAC1B,YAAY;iBACb,CAAC,CAAC;gBAEH,4EAA4E;gBAC5E,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;oBAC/B,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;oBACpE,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;oBAClC,6CAA6C;oBAC7C,oDAAoD;oBACpD,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBAC/D,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;gBACnC,CAAC;YACH,CAAC;YAED,0BAA0B;YAC1B,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAC1B,CAAC,CAAC;QAEF,mDAAmD;QACnD,MAAM,2BAA2B,GAAG,CAAC,EACnC,QAAQ,GACwB,EAAE,EAAE;YACpC,iEAAiE;YACjE,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC/B,OAAO,OAAO,CAAC;YACjB,CAAC;YAED,2EAA2E;YAC3E,MAAM,UAAU,GAAmC,EAAE,CAAC;YACtD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;gBAC3B,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;oBACrB,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACvB,CAAC;qBAAM,IACL,YAAY,IAAI,GAAG;oBAClB,GAAsB,CAAC,WAAW,EAAE,IAAI,KAAK,gBAAgB,EAC9D,CAAC;oBACD,UAAU,CAAC,IAAI,CAAC,GAAqB,CAAC,CAAC;gBACzC,CAAC;YACH,CAAC;YACD,MAAM,aAAa,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAExD,8CAA8C;YAC9C,IAAI,aAAa,EAAE,UAAU,IAAI,aAAa,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrE,OAAO,OAAO,CAAC;YACjB,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC;QAEF,iEAAiE;QACjE,MAAM,wBAAwB,GAAG,GAAG,EAAE;YACpC,qDAAqD;YACrD,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC9B,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,mCAAmC;YACnC,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC;QAEF,kBAAkB;QAClB,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,kBAAkB,CAAC,CAAC,OAAO,CACtD,OAAO,EACP,SAAS,CACV,CAAC;QAEF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,0CAA0C;YAC1C,MAAM,QAAQ,GAAG,KAAK,EAAE,KAAsC,EAAE,EAAE;gBAChE,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACxD,CAAC,CAAC;YAEF,KAAK;iBACF,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC;iBAC1B,OAAO,CAAC,eAAe,EAAE,iBAAiB,CAAC;iBAC3C,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC;iBAC7B,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC;iBACjC,mBAAmB,CAAC,eAAe,EAAE,2BAA2B,CAAC;iBACjE,mBAAmB,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,kEAAkE;YAClE,KAAK;iBACF,OAAO,CAAC,eAAe,EAAE,iBAAiB,CAAC;iBAC3C,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC;iBAC7B,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC;iBACjC,mBAAmB,CAAC,eAAe,EAAE,2BAA2B,CAAC,CAAC;QACvE,CAAC;QAED,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC;IAEO,KAAK,CAAC,YAAY,CACxB,KAAsD,EACtD,OAAe,EACf,MAAqC,EACrC,aAAqB,EACrB,WAAyC,EACzC,mBAAgE;QAEhE,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC;QACtC,MAAM,SAAS,GAA+B,EAAE,CAAC;QACjD,IAAI,UAAU,GAAG,CAAC,CAAC;QAEnB,IAAI,CAAC;YACH,sFAAsF;YACtF,MAAM,eAAe,GAAkB,EAAE,CAAC;YAE1C,iEAAiE;YACjE,oFAAoF;YACpF,IAAI,mBAAmB,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1D,KAAK,MAAM,UAAU,IAAI,mBAAmB,EAAE,CAAC;oBAC7C,QAAQ,UAAU,CAAC,IAAI,EAAE,CAAC;wBACxB,KAAK,MAAM;4BACT,eAAe,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;4BAC3D,MAAM;wBACR,KAAK,WAAW;4BACd,eAAe,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;4BACxD,MAAM;wBACR,KAAK,MAAM;4BACT,uCAAuC;4BACvC,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;gCAC1B,eAAe,CAAC,IAAI,CAClB,IAAI,WAAW,CAAC;oCACd,OAAO,EAAE,UAAU,CAAC,OAAO;oCAC3B,YAAY,EAAE,UAAU,CAAC,UAAU;oCACnC,IAAI,EAAE,UAAU,CAAC,IAAI;iCACtB,CAAC,CACH,CAAC;4BACJ,CAAC;4BACD,MAAM;oBACV,CAAC;gBACH,CAAC;YACH,CAAC;YAED,iEAAiE;YACjE,IAAI,YAA0B,CAAC;YAE/B,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,OAAO,CAAC,GAAG,CACT,4CAA4C,EAC5C,MAAM,CAAC,MAAM,EACb,QAAQ,CACT,CAAC;gBAEF,kCAAkC;gBAClC,MAAM,OAAO,GAIR,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;gBAEvC,wBAAwB;gBACxB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,IAAI,QAAgB,CAAC;oBAErB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC5B,uBAAuB;wBACvB,QAAQ,GAAG,QAAQ,KAAK,CAAC,QAAQ,WAAW,KAAK,CAAC,IAAI,EAAE,CAAC;oBAC3D,CAAC;yBAAM,CAAC;wBACN,0EAA0E;wBAC1E,IAAI,CAAC;4BACH,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;4BAC7D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;4BACxC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gCACjB,MAAM,IAAI,KAAK,CACb,0BAA0B,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CACnE,CAAC;4BACJ,CAAC;4BAED,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;4BACjD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;4BAE/D,mDAAmD;4BACnD,MAAM,WAAW,GACf,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,WAAW,CAAC;4BACtD,QAAQ,GAAG,QAAQ,WAAW,WAAW,UAAU,EAAE,CAAC;4BAEtD,OAAO,CAAC,GAAG,CACT,sDAAsD,CACvD,CAAC;wBACJ,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,KAAK,CAAC,CAAC;4BACjE,MAAM,IAAI,KAAK,CACb,iCAAiC,KAAK,CAAC,GAAG,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAC1G,CAAC;wBACJ,CAAC;oBACH,CAAC;oBAED,OAAO,CAAC,IAAI,CAAC;wBACX,IAAI,EAAE,WAAW;wBACjB,SAAS,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE;qBAC7B,CAAC,CAAC;oBAEH,oCAAoC;oBACpC,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;wBACtB,OAAO,CAAC,IAAI,CAAC;4BACX,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,sBAAsB,KAAK,CAAC,WAAW,EAAE;yBAChD,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBAED,YAAY,GAAG,IAAI,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,oBAAoB;gBACpB,YAAY,GAAG,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC;YAC3C,CAAC;YAED,8CAA8C;YAC9C,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAEnC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAC/B,EAAE,QAAQ,EAAE,eAAe,EAAE,EAC7B,EAAE,cAAc,EAAE,aAAa,EAAE,CAClC,CAAC;YAEF,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjE,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YAEpC,kEAAkE;YAClE,6DAA6D;YAC7D,MAAM,WAAW,GAAG,IAAI,GAAG,EAA2C,CAAC;YAEvE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC/B,IACE,GAAG,YAAY,SAAS;oBACxB,CAAC,GAAG,YAAY,cAAc,IAAI,GAAG,CAAC,UAAU,CAAC,EACjD,CAAC;oBACD,MAAM,cAAc,GAAG,GAAG,CAAC,UAAU,CAAC;oBACtC,2BAA2B;oBAC3B,KAAK,MAAM,QAAQ,IAAI,cAAc,IAAI,EAAE,EAAE,CAAC;wBAC5C,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAG,EAAE;4BAC5B,IAAI,EAAE,QAAQ,CAAC,IAAI;4BACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;yBACpB,CAAC,CAAC;wBAEH,OAAO,CAAC,GAAG,CACT,sBAAsB,EACtB,QAAQ,CAAC,IAAI,EACb,YAAY,EACZ,QAAQ,CAAC,IAAI,CACd,CAAC;oBACJ,CAAC;gBACH,CAAC;qBAAM,IAAI,GAAG,YAAY,WAAW,EAAE,CAAC;oBACtC,kCAAkC;oBAClC,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;oBACnD,IAAI,QAAQ,EAAE,CAAC;wBACb,sCAAsC;wBACtC,IAAI,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;wBACzB,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;4BAC/B,IAAI,CAAC;gCACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;4BAC9B,CAAC;4BAAC,MAAM,CAAC;gCACP,mCAAmC;4BACrC,CAAC;wBACH,CAAC;wBAED,OAAO,CAAC,GAAG,CACT,gCAAgC,EAChC,OAAO,MAAM,KAAK,QAAQ;4BACxB,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK;4BAClC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CACrD,CAAC;wBAEF,SAAS,CAAC,IAAI,CAAC;4BACb,IAAI,EAAE,QAAQ,CAAC,IAAI;4BACnB,KAAK,EAAE,QAAQ,CAAC,IAAI;4BACpB,MAAM;yBACP,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YAED,oCAAoC;YACpC,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;YAClD,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CACvC,CAAC,GAAQ,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,gBAAgB,CAAC,GAAG,CAAC,CACxD,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,UAAU,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;YACjE,MAAM,YAAY,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAEnC,CAAC;YAEnB,IAAI,YAAY,EAAE,iBAAiB,EAAE,YAAY,KAAK,gBAAgB,EAAE,CAAC;gBACvE,MAAM,IAAI,KAAK,CACb,qIAAqI,CACtI,CAAC;YACJ,CAAC;YACD,qCAAqC;YACrC,IAAI,YAAY,EAAE,iBAAiB,EAAE,YAAY,KAAK,YAAY,EAAE,CAAC;gBACnE,MAAM,IAAI,KAAK,CACb,mGAAmG,CACpG,CAAC;YACJ,CAAC;YAED,kEAAkE;YAClE,4FAA4F;YAC5F,IAAI,gBAAgB,GAAG,CAAC,CAAC;YACzB,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,IAAI,cAAc,GAAG,CAAC,CAAC;YAEvB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBAClC,IACE,GAAG,YAAY,SAAS;oBACxB,CAAC,GAAG,YAAY,cAAc,IAAI,GAAG,CAAC,cAAc,CAAC,EACrD,CAAC;oBACD,gBAAgB;wBACb,GAAkC,CAAC,cAAc,EAAE,YAAY;4BAChE,CAAC,CAAC;oBACJ,iBAAiB;wBACd,GAAkC,CAAC,cAAc,EAAE,aAAa;4BACjE,CAAC,CAAC;oBACJ,cAAc;wBACX,GAAkC,CAAC,cAAc,EAAE,YAAY;4BAChE,CAAC,CAAC;gBACN,CAAC;YACH,CAAC;YAED,IAAI,cAAc,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC9D,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAC/B;oBACE,KAAK,EAAE,gBAAgB;oBACvB,OAAO,EAAE,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,KAAK,CAAC;oBAC1D,IAAI,EAAE,cAAc;oBACpB,UAAU,EAAE,WAAW,CAAC,KAAuB;iBAChD,EACD,mBAAmB,gBAAgB,QAAQ,EAC3C;oBACE,UAAU,EAAE,UAAU;oBACtB,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU;oBACpC,aAAa,EAAE,kBAAkB;iBAClC,CACF,CAAC;gBACF,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAC/B;oBACE,KAAK,EAAE,iBAAiB;oBACxB,OAAO,EAAE,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,KAAK,CAAC;oBAC1D,IAAI,EAAE,eAAe;oBACrB,UAAU,EAAE,WAAW,CAAC,KAAuB;iBAChD,EACD,mBAAmB,iBAAiB,SAAS,EAC7C;oBACE,UAAU,EAAE,UAAU;oBACtB,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU;oBACpC,aAAa,EAAE,kBAAkB;iBAClC,CACF,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,YAAY,EAAE,OAAO,IAAI,EAAE,CAAC;YAE7C,+BAA+B;YAC/B,MAAM,eAAe,GAAG,mBAAmB,CACzC,QAAQ,EACR,WAAW,CAAC,KAAK,EACjB,QAAQ,CACT,CAAC;YACF,yEAAyE;YACzE,IAAI,eAAe,CAAC,KAAK,EAAE,CAAC;gBAC1B,OAAO;oBACL,QAAQ,EAAE,eAAe,CAAC,QAAQ;oBAClC,SAAS,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;oBAChD,UAAU;oBACV,KAAK,EAAE,eAAe,CAAC,KAAK;oBAC5B,OAAO,EAAE,KAAK;iBACf,CAAC;YACJ,CAAC;YAED,MAAM,aAAa,GAAG,eAAe,CAAC,QAAQ,CAAC;YAE/C,OAAO,CAAC,GAAG,CACT,kCAAkC,EAClC,OAAO,aAAa,KAAK,QAAQ;gBAC/B,CAAC,CAAC,aAAa,CAAC,MAAM;gBACtB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,MAAM,CACzC,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;YAC5D,OAAO,CAAC,GAAG,CACT,oCAAoC,EACpC,UAAU,EACV,YAAY,CACb,CAAC;YAEF,OAAO;gBACL,QAAQ,EACN,OAAO,aAAa,KAAK,QAAQ;oBAC/B,CAAC,CAAC,aAAa;oBACf,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;gBACnC,SAAS,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;gBAChD,UAAU;gBACV,KAAK,EAAE,EAAE;gBACT,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;YACpE,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,UAAU,CAAC,CAAC;YAE9D,sEAAsE;YACtE,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC;gBAC5B,OAAO,CAAC,GAAG,CACT,yCAAyC,WAAW,CAAC,WAAW,CAAC,KAAK,EAAE,CACzE,CAAC;gBACF,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CACxB,iBAAiB,WAAW,CAAC,KAAK,YAAY,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,mCAAmC,WAAW,CAAC,WAAW,CAAC,KAAK,EAAE,CACzK,CAAC;gBACF,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACvB,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE;wBACJ,KAAK,EAAE,iBAAiB,WAAW,CAAC,KAAK,YAAY,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,mCAAmC,WAAW,CAAC,WAAW,CAAC,KAAK,EAAE;wBAC/K,WAAW,EAAE,IAAI;qBAClB;iBACF,CAAC,CAAC;gBACH,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAC7C,WAAW,EACX,WAAW,CAAC,WAAW,CACxB,CAAC;gBACF,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;gBACpE,OAAO,YAAY,CAAC;YACtB,CAAC;YAED,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAE3D,wDAAwD;YACxD,8DAA8D;YAC9D,OAAO;gBACL,QAAQ,EAAE,oBAAoB,YAAY,EAAE;gBAC5C,OAAO,EAAE,KAAK,EAAE,kDAAkD;gBAClE,UAAU;gBACV,SAAS,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,gCAAgC;gBAClF,KAAK,EAAE,YAAY;aACpB,CAAC;QACJ,CAAC;IACH,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { BubbleContext } from '../../types/bubble.js';
|
|
2
|
+
import { type CredentialType } from '@bubblelab/shared-schemas';
|
|
3
|
+
import type { AIAgentParamsParsed, AIAgentResult } from './ai-agent.js';
|
|
4
|
+
type ResolveCapabilityCredentials = (capDef: {
|
|
5
|
+
metadata: {
|
|
6
|
+
requiredCredentials: CredentialType[];
|
|
7
|
+
optionalCredentials?: CredentialType[];
|
|
8
|
+
};
|
|
9
|
+
}, capConfig: {
|
|
10
|
+
credentials?: Record<string, string>;
|
|
11
|
+
}) => Partial<Record<CredentialType, string>>;
|
|
12
|
+
export declare function applyCapabilityPreprocessing(params: AIAgentParamsParsed, bubbleContext: BubbleContext | undefined, resolveCapabilityCredentials: ResolveCapabilityCredentials): Promise<AIAgentParamsParsed>;
|
|
13
|
+
export declare function applyCapabilityPostprocessing(result: AIAgentResult, params: AIAgentParamsParsed, bubbleContext: BubbleContext | undefined, resolveCapabilityCredentials: ResolveCapabilityCredentials): Promise<AIAgentResult>;
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=capability-pipeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capability-pipeline.d.ts","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/capability-pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,2BAA2B,CAAC;AAKnC,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAExE,KAAK,4BAA4B,GAAG,CAClC,MAAM,EAAE;IACN,QAAQ,EAAE;QACR,mBAAmB,EAAE,cAAc,EAAE,CAAC;QACtC,mBAAmB,CAAC,EAAE,cAAc,EAAE,CAAC;KACxC,CAAC;CACH,EACD,SAAS,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,KAChD,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;AAE7C,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,mBAAmB,EAC3B,aAAa,EAAE,aAAa,GAAG,SAAS,EACxC,4BAA4B,EAAE,4BAA4B,GACzD,OAAO,CAAC,mBAAmB,CAAC,CAiE9B;AAED,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,mBAAmB,EAC3B,aAAa,EAAE,aAAa,GAAG,SAAS,EACxC,4BAA4B,EAAE,4BAA4B,GACzD,OAAO,CAAC,aAAa,CAAC,CAUxB"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { RECOMMENDED_MODELS, } from '@bubblelab/shared-schemas';
|
|
2
|
+
import { getCapability, } from '../../capabilities/index.js';
|
|
3
|
+
export async function applyCapabilityPreprocessing(params, bubbleContext, resolveCapabilityCredentials) {
|
|
4
|
+
const caps = params.capabilities ?? [];
|
|
5
|
+
if (caps.length > 1) {
|
|
6
|
+
// Multi-capability delegator: use Gemini 3 Pro for reliable tool-calling / routing.
|
|
7
|
+
// Sub-agents apply their own modelConfigOverride in single-cap mode.
|
|
8
|
+
params.model.model = RECOMMENDED_MODELS.BEST;
|
|
9
|
+
params.model.reasoningEffort = undefined;
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
// Single-cap: apply that capability's model override directly
|
|
13
|
+
for (const capConfig of caps) {
|
|
14
|
+
const capDef = getCapability(capConfig.id);
|
|
15
|
+
const override = capDef?.metadata.modelConfigOverride;
|
|
16
|
+
if (!override)
|
|
17
|
+
continue;
|
|
18
|
+
if (override.model)
|
|
19
|
+
params.model.model = override.model;
|
|
20
|
+
if (override.reasoningEffort)
|
|
21
|
+
params.model.reasoningEffort = override.reasoningEffort;
|
|
22
|
+
if (override.maxTokens)
|
|
23
|
+
params.model.maxTokens = Math.max(params.model.maxTokens ?? 0, override.maxTokens);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
// Inject capability system prompts
|
|
27
|
+
if (caps.length > 1) {
|
|
28
|
+
// Multi-capability: summaries with tool names + delegation hints — sub-agents get full prompts
|
|
29
|
+
const summaries = caps
|
|
30
|
+
.map((c, idx) => {
|
|
31
|
+
const def = getCapability(c.id);
|
|
32
|
+
if (!def)
|
|
33
|
+
return null;
|
|
34
|
+
const toolNames = def.metadata.tools.map((t) => t.name).join(', ');
|
|
35
|
+
let summary = `${idx + 1}. "${def.metadata.name}" (id: ${c.id})\n Purpose: ${def.metadata.description}`;
|
|
36
|
+
if (toolNames)
|
|
37
|
+
summary += `\n Tools: ${toolNames}`;
|
|
38
|
+
if (def.metadata.delegationHint)
|
|
39
|
+
summary += `\n When to use: ${def.metadata.delegationHint}`;
|
|
40
|
+
return summary;
|
|
41
|
+
})
|
|
42
|
+
.filter((summary) => Boolean(summary));
|
|
43
|
+
params.systemPrompt += `\n\n---\nSYSTEM CAPABILITY EXTENSIONS:\nMultiple specialized capabilities are available. You MUST delegate to them using the 'use-capability' tool.\n\nAvailable Capabilities:\n${summaries.join('\n\n')}\n\nDELEGATION RULES:\n- Use 'use-capability' tool to delegate tasks to the appropriate capability\n- Do NOT attempt to handle capability tasks yourself\n- Include full context when delegating\n- Can chain multiple capabilities if needed\n- Only respond directly for: greetings, clarifications, or tasks outside all capabilities\n---\n\nYour role is to understand the user's request and delegate to the appropriate capability or respond directly when appropriate.`;
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
// Single or zero capabilities: eager load as before
|
|
47
|
+
for (const capConfig of caps) {
|
|
48
|
+
const capDef = getCapability(capConfig.id);
|
|
49
|
+
if (!capDef)
|
|
50
|
+
continue;
|
|
51
|
+
const ctx = {
|
|
52
|
+
credentials: resolveCapabilityCredentials(capDef, capConfig),
|
|
53
|
+
inputs: capConfig.inputs ?? {},
|
|
54
|
+
bubbleContext,
|
|
55
|
+
};
|
|
56
|
+
const addition = (await capDef.createSystemPrompt?.(ctx)) ??
|
|
57
|
+
capDef.metadata.systemPromptAddition;
|
|
58
|
+
if (addition) {
|
|
59
|
+
params.systemPrompt = `${params.systemPrompt}\n\n---\nSYSTEM CAPABILITY EXTENSION:\nThe following capability has been added to enhance your functionality:\n\n[${capDef.metadata.name}]\n${addition}\n---\n\nYour primary objective is to fulfill the user's request using both your base capabilities and the extended capability above.`;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return params;
|
|
64
|
+
}
|
|
65
|
+
export async function applyCapabilityPostprocessing(result, params, bubbleContext, resolveCapabilityCredentials) {
|
|
66
|
+
let updated = result;
|
|
67
|
+
updated = await applyCapabilityResponseAppend(updated, params, bubbleContext, resolveCapabilityCredentials);
|
|
68
|
+
updated = applyConversationHistoryNotice(updated, params);
|
|
69
|
+
return updated;
|
|
70
|
+
}
|
|
71
|
+
async function applyCapabilityResponseAppend(result, params, bubbleContext, resolveCapabilityCredentials) {
|
|
72
|
+
const caps = params.capabilities ?? [];
|
|
73
|
+
// Multi-cap: sub-agents handle their own responseAppend
|
|
74
|
+
if (caps.length > 1)
|
|
75
|
+
return result;
|
|
76
|
+
const appendParts = [];
|
|
77
|
+
for (const capConfig of caps) {
|
|
78
|
+
const capDef = getCapability(capConfig.id);
|
|
79
|
+
if (!capDef?.createResponseAppend)
|
|
80
|
+
continue;
|
|
81
|
+
const ctx = {
|
|
82
|
+
credentials: resolveCapabilityCredentials(capDef, capConfig),
|
|
83
|
+
inputs: capConfig.inputs ?? {},
|
|
84
|
+
bubbleContext,
|
|
85
|
+
};
|
|
86
|
+
const text = await capDef.createResponseAppend(ctx);
|
|
87
|
+
if (text)
|
|
88
|
+
appendParts.push(text);
|
|
89
|
+
}
|
|
90
|
+
if (appendParts.length > 0) {
|
|
91
|
+
return {
|
|
92
|
+
...result,
|
|
93
|
+
response: `${result.response}\n\n${appendParts.join('\n\n')}`,
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
return result;
|
|
97
|
+
}
|
|
98
|
+
function applyConversationHistoryNotice(result, params) {
|
|
99
|
+
const caps = params.capabilities ?? [];
|
|
100
|
+
if (caps.length === 0)
|
|
101
|
+
return result;
|
|
102
|
+
const hasHistory = params.conversationHistory && params.conversationHistory.length > 0;
|
|
103
|
+
if (hasHistory)
|
|
104
|
+
return result;
|
|
105
|
+
const notice = '---\n💡 **Conversation History Not Available**\n\n' +
|
|
106
|
+
"I don't have access to our previous conversation or know what time it is for you, so I might ask you to repeat some information. " +
|
|
107
|
+
'To enable conversation history and make our chat more seamless, you can ask Pearl in Bubble Studio to add conversation history support to this bubble.';
|
|
108
|
+
const separator = result.response?.trim().length ? '\n\n' : '';
|
|
109
|
+
return {
|
|
110
|
+
...result,
|
|
111
|
+
response: `${result.response}${separator}${notice}`,
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
//# sourceMappingURL=capability-pipeline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capability-pipeline.js","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/capability-pipeline.ts"],"names":[],"mappings":"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"}
|