kiokuko-dsh 0.2.9 → 0.2.11
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/dsh/agenticreplay-libraries.d.ts +12 -0
- package/dist/dsh/agenticreplay-libraries.d.ts.map +1 -1
- package/dist/dsh/agenticreplay-libraries.js.map +1 -1
- package/dist/dsh/agenticreplay-recorder.d.ts.map +1 -1
- package/dist/dsh/agenticreplay-recorder.js +5 -2
- package/dist/dsh/agenticreplay-recorder.js.map +1 -1
- package/dist/dsh/agenticreplay-types.d.ts +1 -1
- package/dist/dsh/agenticreplay-types.d.ts.map +1 -1
- package/dist/dsh/agenticreplay-writer.d.ts +4 -0
- package/dist/dsh/agenticreplay-writer.d.ts.map +1 -0
- package/dist/dsh/agenticreplay-writer.js +50 -0
- package/dist/dsh/agenticreplay-writer.js.map +1 -0
- package/dist/dsh/coding-workflow/host.d.ts +2 -0
- package/dist/dsh/coding-workflow/host.d.ts.map +1 -1
- package/dist/dsh/coding-workflow/host.js +2 -0
- package/dist/dsh/coding-workflow/host.js.map +1 -1
- package/dist/dsh/coding-workflow/service.d.ts.map +1 -1
- package/dist/dsh/coding-workflow/service.js +11 -4
- package/dist/dsh/coding-workflow/service.js.map +1 -1
- package/dist/dsh/core/host.d.ts.map +1 -1
- package/dist/dsh/core/host.js +4 -0
- package/dist/dsh/core/host.js.map +1 -1
- package/dist/dsh/decisions/akinator-classification.d.ts +1 -1
- package/dist/dsh/decisions/akinator-classification.d.ts.map +1 -1
- package/dist/dsh/decisions/akinator-classification.js +4 -0
- package/dist/dsh/decisions/akinator-classification.js.map +1 -1
- package/dist/dsh/host-adapter.d.ts.map +1 -1
- package/dist/dsh/host-adapter.js +4 -0
- package/dist/dsh/host-adapter.js.map +1 -1
- package/dist/dsh/lifecycle-memory.d.ts +1 -0
- package/dist/dsh/lifecycle-memory.d.ts.map +1 -1
- package/dist/dsh/lifecycle-memory.js +16 -5
- package/dist/dsh/lifecycle-memory.js.map +1 -1
- package/dist/dsh/lisp/http.d.ts +1 -1
- package/dist/dsh/lisp/http.d.ts.map +1 -1
- package/dist/dsh/lisp/http.js +5 -3
- package/dist/dsh/lisp/http.js.map +1 -1
- package/dist/dsh/lisp/manager.d.ts +5 -1
- package/dist/dsh/lisp/manager.d.ts.map +1 -1
- package/dist/dsh/lisp/manager.js +30 -4
- package/dist/dsh/lisp/manager.js.map +1 -1
- package/dist/dsh/lisp/surface.d.ts.map +1 -1
- package/dist/dsh/lisp/surface.js +82 -11
- package/dist/dsh/lisp/surface.js.map +1 -1
- package/dist/dsh/lisp/task-authority.d.ts +3 -1
- package/dist/dsh/lisp/task-authority.d.ts.map +1 -1
- package/dist/dsh/lisp/task-authority.js +5 -3
- package/dist/dsh/lisp/task-authority.js.map +1 -1
- package/dist/dsh/lisp-tool-identity.d.ts +33 -0
- package/dist/dsh/lisp-tool-identity.d.ts.map +1 -0
- package/dist/dsh/lisp-tool-identity.js +37 -0
- package/dist/dsh/lisp-tool-identity.js.map +1 -0
- package/dist/dsh/memory-failure.d.ts +17 -0
- package/dist/dsh/memory-failure.d.ts.map +1 -0
- package/dist/dsh/memory-failure.js +38 -0
- package/dist/dsh/memory-failure.js.map +1 -0
- package/dist/dsh/models/opencode-session.d.ts +6 -0
- package/dist/dsh/models/opencode-session.d.ts.map +1 -0
- package/dist/dsh/models/opencode-session.js +21 -0
- package/dist/dsh/models/opencode-session.js.map +1 -0
- package/dist/dsh/models/profiles.d.ts.map +1 -1
- package/dist/dsh/models/profiles.js +2 -0
- package/dist/dsh/models/profiles.js.map +1 -1
- package/dist/dsh/on-demand-intake.d.ts +6 -2
- package/dist/dsh/on-demand-intake.d.ts.map +1 -1
- package/dist/dsh/on-demand-intake.js +70 -2
- package/dist/dsh/on-demand-intake.js.map +1 -1
- package/dist/dsh/owned-execution.d.ts +2 -0
- package/dist/dsh/owned-execution.d.ts.map +1 -1
- package/dist/dsh/owned-execution.js +4 -3
- package/dist/dsh/owned-execution.js.map +1 -1
- package/dist/dsh/runtime-evidence.d.ts +10 -0
- package/dist/dsh/runtime-evidence.d.ts.map +1 -0
- package/dist/dsh/runtime-evidence.js +38 -0
- package/dist/dsh/runtime-evidence.js.map +1 -0
- package/dist/dsh/session-memory-finalizer.d.ts.map +1 -1
- package/dist/dsh/session-memory-finalizer.js +7 -13
- package/dist/dsh/session-memory-finalizer.js.map +1 -1
- package/dist/dsh/skill-prompts.json +1 -1
- package/dist/dsh/task-state-surface.js +1 -1
- package/dist/dsh/task-state-surface.js.map +1 -1
- package/dist/locale/en.json +1 -1
- package/dist/locale/ja.json +1 -1
- package/dist/locale/ko.json +1 -1
- package/dist/locale/zh-CN.json +1 -1
- package/dist/memory/replay-review.d.ts +3 -0
- package/dist/memory/replay-review.d.ts.map +1 -1
- package/dist/memory/replay-review.js +15 -2
- package/dist/memory/replay-review.js.map +1 -1
- package/docs/agenticreplay-recording.md +6 -4
- package/docs/dsh-plugin.md +4 -4
- package/docs/getting-started.ja.md +1 -1
- package/docs/lisp.md +9 -2
- package/docs/model-selection.ja.md +2 -0
- package/docs/model-selection.md +2 -0
- package/docs/replay-memory-review.md +2 -0
- package/docs/token-efficiency.md +10 -2
- package/docs/verification.md +8 -0
- package/lisp/supervisor.mjs +8 -3
- package/package.json +16 -16
- package/skills/kiokuko-lisp/SKILL.md +1 -1
package/dist/dsh/lisp/surface.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
2
|
+
import { rememberLispImplementation, isLispConversation, rootLispAdmission, withLispNativeCommand } from '../lisp-tool-identity.js';
|
|
2
3
|
import { assertProtocolRoute } from '../guardrail/service.js';
|
|
3
4
|
import { isOwnedExecutionCall } from '../owned-execution.js';
|
|
4
5
|
import { CodeIntelligenceAdapterV1 } from './code-intelligence.js';
|
|
@@ -423,7 +424,57 @@ export async function mountLispSurface(ctx, runtime, config, skillPrompts, decis
|
|
|
423
424
|
execute: async (args, execution) => {
|
|
424
425
|
try {
|
|
425
426
|
const binding = owner(execution.agent), parsed = ToolInput.parse(args);
|
|
426
|
-
|
|
427
|
+
const admission = development ? rootLispAdmission(execution) : undefined;
|
|
428
|
+
const agentSession = binding.agent.session, agentContext = binding.agent.ctx;
|
|
429
|
+
const bash = admission ? tools.get('bash', binding.agent) : undefined;
|
|
430
|
+
const pinned = bash ? { definition: bash, execute: bash.execute } : undefined;
|
|
431
|
+
const nativeCommands = admission ? {
|
|
432
|
+
assertCurrent() {
|
|
433
|
+
const current = owner(execution.agent);
|
|
434
|
+
if (!admission.current() || binding.signal.aborted || execution.signal?.aborted || current.signal !== binding.signal
|
|
435
|
+
|| current.owner.root !== binding.owner.root || binding.agent.session !== agentSession || binding.agent.ctx !== agentContext)
|
|
436
|
+
fail('STALE_NATIVE_COMMAND', 'Native Lisp caller, turn or arguments changed.');
|
|
437
|
+
},
|
|
438
|
+
async run(input, signal) {
|
|
439
|
+
this.assertCurrent();
|
|
440
|
+
if (!pinned)
|
|
441
|
+
fail('HOST_ADAPTER_UNAVAILABLE', 'The native Bash tool is unavailable.');
|
|
442
|
+
if (tools.get('bash', binding.agent) !== pinned.definition || tools.get('bash', binding.agent)?.execute !== pinned.execute)
|
|
443
|
+
fail('STALE_NATIVE_COMMAND', 'Native Bash implementation changed.');
|
|
444
|
+
const quote = (value) => "'" + value.replaceAll("'", "'\\''") + "'";
|
|
445
|
+
const child = { name: 'bash', callId: `lisp-native-${randomUUID()}`, agent: binding.agent, parent: Symbol('lisp-native-command'),
|
|
446
|
+
arguments: { command: [input.program, ...input.argv].map(quote).join(' '), description: 'Run the requested Lisp command through native Bash',
|
|
447
|
+
workdir: input.directory ?? binding.owner.root, timeoutMs: input.timeoutMs }, signal: AbortSignal.any([binding.signal, signal]) };
|
|
448
|
+
const commandAdmission = { current: () => {
|
|
449
|
+
try {
|
|
450
|
+
this.assertCurrent();
|
|
451
|
+
return true;
|
|
452
|
+
}
|
|
453
|
+
catch {
|
|
454
|
+
return false;
|
|
455
|
+
}
|
|
456
|
+
} };
|
|
457
|
+
const result = await withLispNativeCommand(child, pinned.execute, commandAdmission, () => tools.execute(child));
|
|
458
|
+
if (result.isError)
|
|
459
|
+
fail('NATIVE_COMMAND_DENIED', JSON.stringify(result.content));
|
|
460
|
+
const value = result.value;
|
|
461
|
+
if (value.kind === 'background' || value.kind === 'promoted') {
|
|
462
|
+
const jobs = ctx.get('jobs', false);
|
|
463
|
+
if (!jobs)
|
|
464
|
+
fail('STOP_UNCONFIRMED', `Native job ${value.jobId} requires cancellation.`);
|
|
465
|
+
jobs.kill(value.jobId, binding.agent.id, 'Lisp foreground deadline');
|
|
466
|
+
const terminal = await jobs.wait(value.jobId, 5000, binding.agent.id);
|
|
467
|
+
if (['running', 'stopping'].includes(terminal.status))
|
|
468
|
+
fail('STOP_UNCONFIRMED', `Native job ${value.jobId} has not stopped.`);
|
|
469
|
+
jobs.remove(value.jobId, binding.agent.id);
|
|
470
|
+
return { code: null, stdout: value.output ?? '', stderr: '', timedOut: true, receipt: { route: 'native', processStopped: true } };
|
|
471
|
+
}
|
|
472
|
+
this.assertCurrent();
|
|
473
|
+
return { code: value.exitCode, stdout: value.stdout?.text ?? '', stderr: value.stderr?.text ?? '',
|
|
474
|
+
timedOut: value.timedOut, sandbox: value.sandbox, receipt: { route: 'native', callId: child.callId, processStopped: true } };
|
|
475
|
+
},
|
|
476
|
+
} : undefined;
|
|
477
|
+
if (development && !admission && ctx.get('planMode', false)?.get(binding.agent)?.active && !['lisp_status', 'lisp_hot_status', 'lisp_inspect', 'lisp_cancel'].includes(name))
|
|
427
478
|
fail('PLAN_ACTIVE', 'Plan 中の Lisp 実行・変更はできません。実装指示またはPlan承認後に実行してください。');
|
|
428
479
|
if (name === 'lisp_cancel' && !await manager.isTaskMode(binding.owner)) {
|
|
429
480
|
identifier.parse(parsed.operationId);
|
|
@@ -431,12 +482,13 @@ export async function mountLispSurface(ctx, runtime, config, skillPrompts, decis
|
|
|
431
482
|
}
|
|
432
483
|
if (name !== 'lisp_status' && name !== 'lisp_hot_status' && !isSavedLispResultRead({ name, arguments: parsed, parent: undefined }))
|
|
433
484
|
parsed.operationId = await store.bind(binding.owner, identifier.parse(execution.callId), identifier.parse(parsed.operationId), { name, input: parsed });
|
|
434
|
-
return await manager.execute(binding.owner, name, parsed, execution.signal ? AbortSignal.any([binding.signal, execution.signal]) : binding.signal);
|
|
485
|
+
return await manager.execute(binding.owner, name, parsed, execution.signal ? AbortSignal.any([binding.signal, execution.signal]) : binding.signal, nativeCommands);
|
|
435
486
|
}
|
|
436
487
|
catch (error) {
|
|
437
488
|
return failure(error);
|
|
438
489
|
}
|
|
439
490
|
} };
|
|
491
|
+
rememberLispImplementation(definition.execute);
|
|
440
492
|
fence.definitions.set(`${agent.id}:${name}`, definition);
|
|
441
493
|
local.push(scopedTools.register(definition));
|
|
442
494
|
}
|
|
@@ -449,10 +501,26 @@ export async function mountLispSurface(ctx, runtime, config, skillPrompts, decis
|
|
|
449
501
|
}
|
|
450
502
|
};
|
|
451
503
|
const guide = skillPrompts ? await skillPrompts.require('kiokuko-lisp') : await readFile(fileURLToPath(new URL('../../../skills/kiokuko-lisp/SKILL.md', import.meta.url)), 'utf8');
|
|
504
|
+
const modeOnly = (binding, run) => {
|
|
505
|
+
const agentContext = binding.agent.ctx;
|
|
506
|
+
return manager.taskAuthority.run(binding.owner, run, {
|
|
507
|
+
assertCurrent() {
|
|
508
|
+
const current = owner(binding.agent);
|
|
509
|
+
if (binding.signal.aborted || current.signal.aborted || current.agent !== binding.agent || binding.agent.ctx !== agentContext
|
|
510
|
+
|| current.owner.sessionId !== binding.owner.sessionId || current.owner.agentId !== binding.owner.agentId || current.owner.root !== binding.owner.root)
|
|
511
|
+
fail('SESSION_MISMATCH', 'Lisp mode owner changed.');
|
|
512
|
+
},
|
|
513
|
+
async run() { return fail('CAPABILITY_DENIED', 'Mode control cannot execute a command.'); },
|
|
514
|
+
});
|
|
515
|
+
};
|
|
516
|
+
const recover = async (binding, signal) => {
|
|
517
|
+
const restart = () => manager.recover(binding.owner, signal);
|
|
518
|
+
return await manager.canRecoverWorkerWithoutTask(binding.owner) ? modeOnly(binding, restart) : restart();
|
|
519
|
+
};
|
|
452
520
|
fence.prepareAgent = async (candidate) => {
|
|
453
521
|
const binding = owner(candidate);
|
|
454
522
|
const workflow = await runtime.withDatabase(db => sessionCodingWorkflow(db, binding.owner.sessionId));
|
|
455
|
-
if (workflow && (workflow.choice.state !== 'yes' || ['preparing', 'awaiting_lisp_choice', 'cancelled', 'superseded'].includes(workflow.state))) {
|
|
523
|
+
if (workflow && (!development || workflow.protocol || !isLispConversation(candidate)) && (workflow.choice.state !== 'yes' || ['preparing', 'awaiting_lisp_choice', 'cancelled', 'superseded'].includes(workflow.state))) {
|
|
456
524
|
unregister(binding.agent);
|
|
457
525
|
return true;
|
|
458
526
|
}
|
|
@@ -464,7 +532,8 @@ export async function mountLispSurface(ctx, runtime, config, skillPrompts, decis
|
|
|
464
532
|
register(binding.agent);
|
|
465
533
|
return true;
|
|
466
534
|
}
|
|
467
|
-
const
|
|
535
|
+
const prepare = () => manager.prepare(binding.owner);
|
|
536
|
+
const status = await (development && isLispConversation(candidate) ? modeOnly(binding, prepare) : prepare());
|
|
468
537
|
binding.signal.throwIfAborted();
|
|
469
538
|
register(binding.agent);
|
|
470
539
|
const prompt = binding.agent.ctx.get('systemPrompt', false);
|
|
@@ -500,13 +569,15 @@ export async function mountLispSurface(ctx, runtime, config, skillPrompts, decis
|
|
|
500
569
|
unregister(agent);
|
|
501
570
|
}
|
|
502
571
|
}, { global: true }));
|
|
503
|
-
const enable = async (binding) => {
|
|
572
|
+
const enable = async (binding, standalone = false) => {
|
|
504
573
|
const wasEnabled = manager.enabled.has(binding.owner.sessionId);
|
|
505
574
|
hostFence?.protect(binding.owner.sessionId);
|
|
506
575
|
try {
|
|
507
576
|
const result = await manager.isTaskMode(binding.owner)
|
|
508
577
|
? await manager.status(binding.owner)
|
|
509
|
-
: await
|
|
578
|
+
: await (standalone && development
|
|
579
|
+
? modeOnly(binding, () => manager.enable(binding.owner, binding.agent.status !== undefined && binding.agent.status !== 'idle', binding.signal))
|
|
580
|
+
: manager.enable(binding.owner, binding.agent.status !== undefined && binding.agent.status !== 'idle', binding.signal));
|
|
510
581
|
binding.signal.throwIfAborted();
|
|
511
582
|
register(binding.agent);
|
|
512
583
|
return result;
|
|
@@ -583,7 +654,7 @@ export async function mountLispSurface(ctx, runtime, config, skillPrompts, decis
|
|
|
583
654
|
async project(candidate, assembly) {
|
|
584
655
|
const binding = owner(candidate);
|
|
585
656
|
const workflow = await runtime.withDatabase(db => sessionCodingWorkflow(db, binding.owner.sessionId));
|
|
586
|
-
if (workflow && (workflow.choice.state !== 'yes' || ['preparing', 'awaiting_lisp_choice', 'cancelled', 'superseded', 'completed'].includes(workflow.state))) {
|
|
657
|
+
if (workflow && (!development || workflow.protocol || !isLispConversation(candidate)) && (workflow.choice.state !== 'yes' || ['preparing', 'awaiting_lisp_choice', 'cancelled', 'superseded', 'completed'].includes(workflow.state))) {
|
|
587
658
|
unregister(binding.agent);
|
|
588
659
|
const surface = assembly;
|
|
589
660
|
return { ...assembly, tools: surface.tools?.filter(tool => !LISP_TOOLS.includes(tool.name)) ?? [] };
|
|
@@ -613,7 +684,7 @@ export async function mountLispSurface(ctx, runtime, config, skillPrompts, decis
|
|
|
613
684
|
if (recover && manager.enabled.has(sessionId))
|
|
614
685
|
register(binding.agent);
|
|
615
686
|
return binding.owner;
|
|
616
|
-
}));
|
|
687
|
+
}, (sessionId, signal) => recover(owner(agents.get(sessionId)), signal)));
|
|
617
688
|
disposers.push(commands.register({ name: 'kioku-lisp', description: 'Common Lisp の開始・状態・停止・復旧', input: { hint: 'approval ask|auto|status | enable | enable-task | status [--json] | cancel | recover | abandon ID | restore ID | disable' },
|
|
618
689
|
handler: async (invocation) => {
|
|
619
690
|
try {
|
|
@@ -632,12 +703,12 @@ export async function mountLispSurface(ctx, runtime, config, skillPrompts, decis
|
|
|
632
703
|
if (['enable', 'enable-task', 'disable'].includes(action)) {
|
|
633
704
|
await runtime.withDatabase(db => {
|
|
634
705
|
const workflow = sessionCodingWorkflow(db, binding.owner.sessionId);
|
|
635
|
-
if (workflow)
|
|
706
|
+
if (workflow && (action === 'enable-task' || workflow.definition))
|
|
636
707
|
overrideCodingChoice(db, { runId: workflow.runId, sessionId: binding.owner.sessionId, repositoryRoot: binding.owner.root }, action === 'disable' ? 'no' : 'yes', `human-command:${randomUUID()}:${action}`);
|
|
637
708
|
});
|
|
638
709
|
}
|
|
639
710
|
if (action === 'enable')
|
|
640
|
-
result = await enable(binding);
|
|
711
|
+
result = await enable(binding, true);
|
|
641
712
|
else if (action === 'enable-task') {
|
|
642
713
|
const wasEnabled = manager.enabled.has(binding.owner.sessionId);
|
|
643
714
|
hostFence?.protect(binding.owner.sessionId);
|
|
@@ -661,7 +732,7 @@ export async function mountLispSurface(ctx, runtime, config, skillPrompts, decis
|
|
|
661
732
|
else if (action === 'recover') {
|
|
662
733
|
if (manager.enabled.has(binding.owner.sessionId))
|
|
663
734
|
register(binding.agent);
|
|
664
|
-
result = await
|
|
735
|
+
result = await recover(binding, invocation.signal);
|
|
665
736
|
}
|
|
666
737
|
else if (action === 'abandon')
|
|
667
738
|
result = await manager.abandon(binding.owner, argument ?? '');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"surface.js","sourceRoot":"","sources":["../../../src/dsh/lisp/surface.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"surface.js","sourceRoot":"","sources":["../../../src/dsh/lisp/surface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,qBAAqB,EAA2B,MAAM,0BAA0B,CAAA;AAC5J,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAA;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAG5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAE1D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAGzD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxH,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAChF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAE,qBAAqB,EAA4B,MAAM,sBAAsB,CAAA;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAC7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAA;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,EAAE,cAAc,EAAkB,MAAM,kBAAkB,CAAA;AACjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAA;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAChE,OAAO,EAAE,eAAe,EAAwD,MAAM,uBAAuB,CAAA;AAC7G,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAyD,MAAM,gBAAgB,CAAA;AAQ3I,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;AACzD,MAAM,oBAAoB,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,CAAU,CAAA;AAC/G,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAS,CAAC,aAAa,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAA;AAC3F,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,CAAU,CAAA;AACtF,kGAAkG;AAClG,kFAAkF;AAClF,MAAM,iBAAiB,GAAG,CAAC,GAAG,eAAe,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,gBAAgB,CAAU,CAAA;AAE7K,oFAAoF;AACpF,SAAS,sBAAsB,CAAC,KAAY,EAAE,WAAkB,EAAE,KAAY,EAAE,KAAe;IAC7F,yEAAyE;IACzE,4EAA4E;IAC5E,wEAAwE;IACxE,8EAA8E;IAC9E,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAA;IACnD,IAAI,SAAmB,CAAA;IACvB,IAAI,CAAC;QAAC,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;IAAC,CAAC;YACzD,CAAC;QAAC,OAAO,EAAE,CAAA;IAAC,CAAC;IACrB,OAAO,WAAW,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;AACnD,CAAC;AAED,SAAS,IAAI,CAAC,KAAc;IAC1B,MAAM,MAAM,GAAG,KAAgM,CAAA;IAC/M,MAAM,GAAG,GAAG,KAAoK,CAAA;IAChL,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,GAAG,EAAE,KAAK,CAAA;IAC1C,IAAI,MAAM,CAAC,OAAO;QAAE,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAA;IACxE,OAAO,SAAS,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE,KAAK,MAAM,CAAC,KAAK,EAAE,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE,KAAK,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAA;AAChX,CAAC;AACD,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,UAAU,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACxK,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE;IAC5H,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACrL,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,mBAAmB,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IACtL,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IACzD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC5I,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC5G,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAC1H,eAAe,EAAE,UAAU,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACrH,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAC9H,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,UAAU,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,QAAQ,EAAE;IAClK,iBAAiB,EAAE,UAAU,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE;IACxH,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IACxC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAA;AAEpH,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAY,EAAE,OAAmB,EAAE,MAAyB,EAAE,YAA8B,EAAE,SAA2B,EAAE,kBAAkD;IAClN,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAgD,CAAA;IAC7E,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAsB,CAAA;IAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAuD,CAAA;IAC9F,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAyD,CAAA;IACpG,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAiF,CAAA;IAC3H,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ;QAAE,IAAI,CAAC,yBAAyB,EAAE,uCAAuC,CAAC,CAAA;IACzH,MAAM,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,KAAK,CAAiC,CAAA;IACjF,MAAM,cAAc,GAAG,mBAAmB,CAAC,GAAG,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE;QACzF,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACjC,MAAM,KAAK,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,KAAK,IAAI,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,QAAQ,CAAC,SAAS,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO;YAC5M,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC;YAC/E,IAAI,CAAC,kBAAkB,EAAE,yCAAyC,CAAC,CAAA;IACvE,CAAC,CAAC,CAAA;IACF,MAAM,WAAW,GAAC,MAAM,CAAC,aAAa,KAAG,aAAa,CAAA;IAItD,MAAM,mBAAmB,GAAG,IAAI,iBAAiB,EAAuE,CAAA;IACxH,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAuB,CAAA;IAC1D,MAAM,cAAc,GAAsB,EAAE,aAAa,EAAC,MAAM,CAAC,aAAa,EAAE,cAAc,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE;YAC7G,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAM,CAAC,EAAE,CAAC,CAAA;YAC1C,OAAO,SAAS,EAAE,GAAG,CAAC,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,KAAM,CAAC,EAAE,CAAE,EAAE,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAA;QACtI,CAAC,EAAE,CAAA;IACH,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAA;IAClE,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACrE,MAAM,QAAQ,GAAG,IAAI,kBAAkB,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAA;IACjE,IAAI,aAAuD,CAAA;IAC3D,MAAM,SAAS,GAAG,KAAK,EAAC,KAAe,EAAC,IAAW,EAAC,IAA2B,EAAC,MAAmB,EAAC,MAAc,EAAE,SAAoB,EAAe,EAAE;QACvJ,MAAM,KAAK,GAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACrC,IAAG,CAAC,KAAK,IAAE,KAAK,CAAC,OAAO,CAAC,EAAE,KAAG,KAAK,CAAC,SAAS,IAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,KAAG,KAAK,CAAC,OAAO,IAAE,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAG,KAAK,CAAC,IAAI;YAAC,IAAI,CAAC,kBAAkB,EAAC,4BAA4B,CAAC,CAAA;QACvM,MAAM,OAAO,GAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAClC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,EAAC,MAAM,EAAC,MAAM,IAAE,cAAc,MAAM,CAAC,UAAU,EAAE,EAAE,EAAC,IAAI,EAAC,SAAS,EAAC,IAAI,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,CAAC,YAAY,CAAC,EAAC,MAAM,EAAC,MAAM,CAAA,CAAC,CAAA,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAC,MAAM,CAAC,CAAC,CAAA,CAAC,CAAA,OAAO,CAAC,MAAM;YACjN,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAC,CAAC,CAAA;QACzD,MAAM,MAAM,GAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAQ,CAAA;QACzF,IAAG,MAAM,CAAC,OAAO;YAAC,IAAI,CAAC,wBAAwB,EAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;QAC/E,OAAO,MAAM,CAAC,KAAK,CAAA;IACrB,CAAC,CAAA;IACD,MAAM,eAAe,GAAG,KAAK,EAAE,KAAgB,EAAiB,EAAE,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA,CAAC,CAAC,CAAA;IACzH,MAAM,cAAc,GAAG,wBAAwB,CAAC,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,CAAC,CAAA;IACtG,MAAM,kBAAkB,GAAG,4BAA4B,CAAC,OAAO,EAAE;QAC/D,oBAAoB,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,0BAA0B,CAAC,EAAE,EAAE,KAAK,CAAC;KACjG,CAAC,CAAA;IACF,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,EAAE,KAAK,EAAE,MAAM;QAC7C,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;YAChC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;YACzC,IAAI,CAAC,KAAK;gBAAE,IAAI,CAAC,kBAAkB,EAAE,yBAAyB,CAAC,CAAA;YAC/D,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAA;YAC9B,MAAM,aAAa,GAAG,GAAG,EAAE;gBACzB,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;gBACtC,IAAI,KAAK,EAAE,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,OAAO,CAAC,SAAS,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO;oBACrS,IAAI,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAA;YACxE,CAAC,CAAA;YACD,aAAa,EAAE,CAAA;YACf,OAAO,IAAI,yBAAyB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAAA;QACrM,CAAC;QACD,WAAW,EAAC,KAAK,CAAA,EAAE,CAAA,CAAC,aAAa,EAAC,YAAY,EAAC,aAAa,EAAC,YAAY,EAAC,cAAc,EAAC,YAAY,EAAC,cAAc,CAAC,CAAC,OAAO,CAAC,IAAI,CAAA,EAAE;YAClI,MAAM,IAAI,GAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;YACpD,OAAO,IAAI,CAAA,CAAC,CAAA,CAAC,EAAC,IAAI,EAAC,UAAU,EAAC,IAAI,CAAC,UAAU,EAAC,cAAc,EAAC,CAAC,EAAC,CAAC,CAAA,CAAC,CAAA,EAAE,CAAA;QACrE,CAAC,CAAC;QACF,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC,YAAY,EAAE,GAAG,YAAY,MAAM,EAAE,GAAG,YAAY,MAAM,CAAC;QAC3H,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YAC7C,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACvC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI;gBAC5J,IAAI,CAAC,kBAAkB,EAAE,mCAAmC,CAAC,CAAA;YAC/D,MAAM,CAAC,cAAc,EAAE,CAAA;YACvB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;YAC3D,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI;gBACjJ,IAAI,CAAC,kBAAkB,EAAE,gEAAgE,CAAC,CAAA;YAC5F,OAAO,MAAM,CAAA;QACf,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE;YACpD,oEAAoE;YACpE,sEAAsE;YACtE,IAAG,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAC,CAAC;gBAAA,MAAM,kBAAkB,CAAC,UAAU,CAAC,KAAK,EAAC,OAAO,CAAC,CAAC;gBAAA,OAAO,mBAAmB,CAAC,cAAc,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC,KAAK,EAAC,OAAO,EAAC,MAAM,EAAC,WAAW,CAAC,CAAA;YAAA,CAAC;YAC1M,MAAM,SAAS,GAAC,mBAAmB,CAAC,cAAc,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAC,EAAE;gBAC3E,MAAM,KAAK,GAAC,CAAC,KAAY,EAAC,EAAE,CAAA,GAAG,GAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAC,OAAO,CAAC,GAAC,GAAG,CAAA;gBACjE,MAAM,KAAK,GAAC,MAAM,SAAS,CAAC,KAAK,EAAC,YAAY,EAAC,EAAC,OAAO,EAAC,CAAC,IAAI,EAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAC,GAAG,EAAC,OAAO,CAAC,GAAG,EAAC,SAAS,EAAC,OAAO,CAAC,SAAS,EAAC,EAAC,OAAO,CAAC,MAAM,EAAC,SAAS,EAC/J,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;gBAC7F,OAAO,EAAC,IAAI,EAAC,KAAK,CAAC,QAAQ,IAAE,CAAC,EAAC,MAAM,EAAC,KAAK,CAAC,MAAM,IAAE,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,OAAO,EAAC,KAAK,CAAC,OAAO,EAAC,CAAA;YACzF,CAAC,EAAE,eAAe,CAAC,CAAA;YACnB,OAAO,SAAS,CAAC,KAAK,EAAC,OAAO,EAAC,MAAM,EAAC,WAAW,CAAC,CAAA;QACpD,CAAC;QACD,YAAY,EAAE,kBAAkB,CAAC,SAAS;QAC1C,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YACnD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACvC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI;gBAAE,IAAI,CAAC,kBAAkB,EAAE,oCAAoC,CAAC,CAAA;YAC9N,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;YAC/B,IAAI,CAAC,SAAS;gBAAE,MAAM,IAAI,aAAa,CAAC,aAAa,CAAC,CAAA;YACtD,IAAI,MAAM,KAAK,kBAAkB;gBAAE,OAAO,SAAS,CAAC,MAAM,EAAE,CAAA;YAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,EAAwE,CAAA;YACrH,MAAM,IAAI,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAA;YAC5E,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC;gBAAE,IAAI,CAAC,kBAAkB,EAAE,+CAA+C,CAAC,CAAA;YAC1G,OAAO,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,IAAK,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;QACnH,CAAC;QACD,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YACnD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACvC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI;gBAAE,IAAI,CAAC,kBAAkB,EAAE,0BAA0B,CAAC,CAAA;YACpN,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;YAC/B,OAAO,MAAM,KAAK,iBAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;QACnG,CAAC;QACD,eAAe,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;YACvC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACvC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI;gBAAE,IAAI,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,CAAA;YAC/M,OAAO,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAoC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;QAC7H,CAAC;QACD,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAC,MAAM,EAAC,SAAS,EAAE,EAAE;YAC7D,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACvC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI;gBAAE,IAAI,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,CAAA;YAC/M,IAAI,WAAW;gBAAE,OAAO,SAAS,CAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,CAAC,CAAA;YAC1E,IAAK,oBAA0C,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/D,MAAM,MAAM,GAAG,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;gBAC/C,IAAI,MAAM,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC;oBAAE,IAAI,CAAC,eAAe,EAAE,4EAA4E,CAAC,CAAA;gBAC1I,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE;oBAC9B,MAAM,QAAQ,GAAG,qBAAqB,CAAC,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;oBAC3D,IAAI,CAAC,QAAQ,EAAE,QAAQ,IAAI,QAAQ,CAAC,cAAc,KAAK,KAAK,CAAC,IAAI,IAAI,SAAS,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,CAAC,MAAM;wBACnH,IAAI,CAAC,yBAAyB,EAAE,+DAA+D,CAAC,CAAA;oBAClG,qEAAqE;oBACrE,qEAAqE;oBACrE,IAAI,MAAM;wBAAE,mBAAmB,CAAC,EAAE,EAAE,SAAU,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;gBAC7D,CAAC,CAAC,CAAA;gBACF,MAAM,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,CAAA;gBAC7D,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,MAAM,CAAC,UAAU,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,MAAM,CAAC,OAAO;oBAC/G,IAAI,CAAC,yBAAyB,EAAE,4DAA4D,CAAC,CAAA;gBAC/F,MAAM,EAAE,GAAG,MAAM,IAAI,qBAAqB,UAAU,EAAE,EAAE,CAAA;gBACxD,OAAO,mBAAmB,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAChE,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC,CAAA;YAC9D,CAAC;YACD,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,EAAC,MAAM,EAAC,aAAa,MAAM,CAAC,UAAU,EAAE,EAAE,EAAC,IAAI,EAAC,SAAS,EAAC,IAAI,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,CAAC,gBAAgB,CAAC,EAAC,MAAM,EAAC,MAAM,IAAE,IAAI,eAAe,EAAE,CAAC,MAAM;gBAClL,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAC,CAAC,CAAA;YACzD,OAAO,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;QACtE,CAAC;QACD,yEAAyE;QACzE,uEAAuE;KACxE,CAAC,CAAA;IACF,MAAM,YAAY,GAAG,CAAC,KAAwB,EAAE,KAAY,EAAsB,EAAE;QAClF,IAAI,OAAO,GAAG,KAAK,EAAE,OAAO,CAAA;QAC5B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;QAC9B,OAAO,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YACpB,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBAAE,OAAO,OAAO,CAAC,EAAE,CAAA;YACrD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACjG,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC,CAAA;IACD,2EAA2E;IAC3E,+DAA+D;IAC/D,MAAM,UAAU,GAAG,GAAG,CAAC,GAAG,CAAC,iBAAiB,EAAE,KAAK,CAAgC,CAAA;IACnF,IAAI,SAAqC,CAAA;IACzC,IAAI,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACnD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,KAAK,GAAG,EAAE,QAAQ,EAAE,IAAI,GAAG,EAAE,EAAE,WAAW,EAAE,IAAI,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAC,MAAM,CAAC,aAAa,EAAE,CAAA;QAC1G,MAAM,UAAU,GAAG,KAAK,CAAA;QACxB,MAAM,KAAK,GAAG,CAAC,SAAc,EAAsB,EAAE;YACnD,MAAM,KAAK,GAAG,SAAS,CAAC,KAA0B,CAAA;YAClD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;YAC7C,IAAI,CAAC,KAAK;gBAAE,OAAO,UAAU,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,SAAS,CAAA;YAChH,IAAI,UAAU,CAAC,aAAa,KAAG,aAAa,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC;gBAAE,OAAO,SAAS,CAAA;YACtG,IAAI,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU;gBAAE,OAAO,UAAU,CAAC,aAAa,KAAG,aAAa,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,uDAAuD,CAAA;YACzL,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,OAAO;gBAAE,OAAO,sBAAsB,CAAA;YAC/H,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK;gBAAE,OAAO,mDAAmD,CAAA;YAC1F,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC,SAAS,CAAC;gBAAE,OAAO,SAAS,CAAA;YAC5D,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC,CAAA;YAC9E,IAAI,UAAU,IAAI,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,OAAO,KAAM,UAAmC,CAAC,OAAO;gBAAE,OAAO,SAAS,CAAA;YAC9H,OAAO,iGAAiG,CAAA;QAC1G,CAAC,CAAA;QACD,MAAM,OAAO,GAAG,KAAK,EAAE,KAAY,EAAoB,EAAE;YACvD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;YAC7C,IAAI,CAAC,KAAK;gBAAE,OAAO,CAAC,UAAU,CAAA;YAC9B,IAAG,UAAU,CAAC,aAAa,KAAG,WAAW,EAAC,CAAC;gBAAA,IAAG,UAAU,CAAC,OAAO,IAAE,CAAC,UAAU,CAAC,UAAU,IAAE,KAAK,KAAG,KAAK,CAAC,OAAO,CAAC,EAAE;oBAAC,OAAO,KAAK,CAAC;gBAAA,OAAO,MAAM,UAAU,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,KAAG,IAAI,CAAA;YAAA,CAAC;YACrL,IAAI,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,IAAI,KAAK,KAAK,KAAK,CAAC,OAAO,CAAC,EAAE;gBAAE,OAAO,IAAI,CAAA;YAC3F,IAAI,CAAC;gBAAC,MAAM,UAAU,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,gEAAgE,CAAC,CAAC;YACzH,OAAO,IAAI,CAAA;QACb,CAAC,CAAA;QACD,IAAI,UAAU;YAAE,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAA;aAClH,CAAC;YACJ,IAAI,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAA;YACtB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAClB,IAAI,CAAC,EAAE,CAAC,gBAAyB,EAAE,CAAC,KAAK,EAAE,OAAyB,EAAE,IAA4B,EAAE,EAAE,CACpG,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAU,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QAC1G,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO;QAAE,IAAI,CAAC,eAAe,EAAE,wBAAwB,CAAC,CAAA;IACvF,KAAK,MAAM,KAAK,IAAI,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,oEAAoE,CAAC,CAAC,GAAG,EAAwC,CAAC,EAAE,CAAC;QACnL,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QACpC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;IACvD,CAAC;IACD,MAAM,OAAO,CAAC,KAAK,EAAE,CAAA;IACrB,KAAK,CAAC,aAAa,GAAC,MAAM,CAAC,aAAa,CAAA;IACxC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAAC,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC;IAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAA;IACnF,KAAK,CAAC,cAAc,GAAG,SAAS,CAAC,EAAE;QACjC,MAAM,MAAM,GAAG,mBAAmB,CAAC,QAAQ,EAAE,CAAA;QAC7C,OAAO,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM;eAC5H,mBAAmB,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM;eAC9E,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,UAAU;eACjE,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAA;IAClH,CAAC,CAAA;IACD,MAAM,SAAS,GAAmB,EAAE,CAAA;IACpC,IAAI,kBAAkB;QAAE,KAAK,MAAM,IAAI,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC;YAAE,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAA;IACzJ,IAAI,CAAC;QACL,MAAM,eAAe,GAAG,IAAI,GAAG,EAAwD,CAAA;QACvF,MAAM,cAAc,GAAG,IAAI,OAAO,EAAW,CAAA;QAC7C,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,OAAO,IAAI,eAAe,CAAC,MAAM,EAAE;YAAE,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,eAAe,CAAC,KAAK,EAAE,CAAA,CAAC,CAAC,CAAC,CAAA;QACxH,MAAM,KAAK,GAAG,CAAC,SAAqC,EAA2D,EAAE;YAC/G,IAAI,CAAC,SAAS;gBAAE,IAAI,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAA;YACzD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;YACtC,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,SAAS,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,OAAO;gBAAE,IAAI,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAA;YACpI,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC;gBAAE,IAAI,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAA;YACnF,IAAI,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YACnD,IAAI,OAAO,EAAE,OAAO,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;gBACvC,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE,CAAA;gBACtB,OAAO,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,eAAe,EAAE,EAAE,CAAC;gBAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;YACpH,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAA;QAC7L,CAAC,CAAA;QACD,aAAa,GAAC,CAAC,OAAiB,EAAC,EAAE,CAAA,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;QACrE,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,wBAAwB,MAAM,CAAC,aAAa,oBAAoB,cAAc,CAAC,IAAI,EAAE,qBAAqB,GAAG,CAAC,CAAC,WAAW;YACnJ,CAAC,CAAC,gJAAgJ,GAAC,CAAC,cAAc,CAAC,IAAI,EAAE,KAAG,MAAM,CAAA,CAAC,CAAA,8GAA8G,CAAA,CAAC,CAAA,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,MAAM;YACxU,CAAC,CAAC,yMAAyM;YAC3M,CAAC,CAAC,2NAA2N,CAAC,CAAA;QAChO,+EAA+E;QAC/E,+EAA+E;QAC/E,MAAM,YAAY,GAAG,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAwD,CAAA;QAC1G,IAAI,YAAY;YAAE,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,CAAC,KAAK;gBAClG,IAAI,EAAE,CAAC,EAAC,KAAK,EAAkB,EAAE,EAAE,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QAC9G,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAAU,CAAA;QAC9C,MAAM,cAAc,GAAG,IAAI,GAAG,EAA0B,CAAA;QACxD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAiB,CAAA;QAC5C,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAA8C,CAAA;QAC9E,MAAM,cAAc,GAAG,IAAI,GAAG,EAAsB,CAAA;QACpD,MAAM,UAAU,GAAG,CAAC,KAAY,EAAE,EAAE;YAClC,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK;gBAAE,OAAM;YAC/C,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAC/F,KAAK,MAAM,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;gBAAE,OAAO,EAAE,CAAA;YAC9E,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC/D,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,UAAU,EAAE,GAAG,iBAAiB,CAAC;gBAAE,KAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,CAAA;YAC1G,KAAK,MAAM,IAAI,IAAI,oBAAoB;gBAAE,mBAAmB,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,CAAA;QAC5F,CAAC,CAAA;QACD,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,OAAO,IAAI,cAAc,CAAC,MAAM,EAAE;YAAE,OAAO,EAAE,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,MAAM,IAAI,IAAI,cAAc,CAAC,MAAM,EAAE;YAAE,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE;gBAAE,OAAO,EAAE,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,KAAM,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAA,CAAC,CAAC,CAAC,CAAA;QAC7S,MAAM,QAAQ,GAAG,CAAC,KAAY,EAAE,EAAE;YAChC,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,OAAM;YACvC,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAE,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAE,CAAC,CAAA;YACrE,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;YAChC,MAAM,KAAK,GAAmB,EAAE,CAAA;YAChC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;YACnC,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAU,CAAA;YACnD,8EAA8E;YAC9E,IAAG,WAAW,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,KAAG,QAAQ;gBAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAA;YACtF,+FAA+F;YAC/F,4EAA4E;YAC5E,8EAA8E;YAC9E,MAAM,WAAW,GAAa,EAAE,CAAA;YAChC,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;gBACrC,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;gBACzC,IAAI,UAAU,EAAE,CAAC;oBAAC,KAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC;oBAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAAC,CAAC;YACvG,CAAC;YACD,IAAG,CAAC,WAAW,EAAE,CAAC;gBAChB,KAAK,MAAM,IAAI,IAAI,oBAAoB,EAAE,CAAC;oBACxC,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;oBACzC,IAAI,UAAU,EAAE,CAAC;wBAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;wBAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;oBAAC,CAAC;gBACxJ,CAAC;gBACD,IAAI,OAAO,GAAG,sBAAsB,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,CAAC,CAAA;gBAC5E,0EAA0E;gBAC1E,2EAA2E;gBAC3E,kEAAkE;gBAClE,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE;oBAClC,OAAO,EAAE,CAAA;oBACT,IAAI,CAAC;wBAAC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;oBAAC,CAAC;4BAC3B,CAAC;wBAAC,OAAO,GAAG,sBAAsB,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAClE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,KAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,IAAI,mBAAmB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;oBAAC,CAAC;gBAC3K,CAAC,CAAC,CAAA;gBACF,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA,CAAC,CAAC,CAAC,CAAA;YACpE,CAAC;YACD,0EAA0E;YAC1E,qCAAqC;YACrC,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,EAAE,IAAI,EAAE,IAAI,WAAW,KAAK,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,gCAAgC,cAAc,CAAC,IAAI,EAAE,aAAa,CAAA,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI;oBAC/J,UAAU,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAU,EAAE,MAAe,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;oBACjJ,OAAO,EAAE,KAAK,EAAE,IAAa,EAAE,SAAmE,EAAE,EAAE;wBACpG,IAAI,CAAC;4BACH,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;4BACtE,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;4BACxE,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAA;4BAC5E,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;4BACrE,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;4BAC7E,MAAM,cAAc,GAAmC,SAAS,CAAC,CAAC,CAAC;gCACjE,aAAa;oCACX,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;oCACtC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,SAAS,CAAC,MAAM,EAAE,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;2CAC/G,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,YAAY,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,YAAY;wCAC5H,IAAI,CAAC,sBAAsB,EAAE,gDAAgD,CAAC,CAAA;gCAClF,CAAC;gCACD,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM;oCACrB,IAAI,CAAC,aAAa,EAAE,CAAA;oCACpB,IAAI,CAAC,MAAM;wCAAE,IAAI,CAAC,0BAA0B,EAAE,sCAAsC,CAAC,CAAA;oCACrF,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,UAAU,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,MAAM,CAAC,OAAO;wCACxH,IAAI,CAAC,sBAAsB,EAAE,qCAAqC,CAAC,CAAA;oCACrE,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,GAAG,CAAA;oCAC3E,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,qBAAqB,CAAC;wCAC9H,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,oDAAoD;4CAC1I,OAAO,EAAE,KAAK,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAA;oCACrI,MAAM,gBAAgB,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE;4CACvC,IAAI,CAAC;gDAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gDAAC,OAAO,IAAI,CAAA;4CAAC,CAAC;4CAAC,MAAM,CAAC;gDAAC,OAAO,KAAK,CAAA;4CAAC,CAAC;wCAClE,CAAC,EAAE,CAAA;oCACH,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAQ,CAAA;oCACtH,IAAI,MAAM,CAAC,OAAO;wCAAE,IAAI,CAAC,uBAAuB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;oCACjF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;oCAC1B,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;wCAC7D,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAQ,CAAA;wCAC1C,IAAI,CAAC,IAAI;4CAAE,IAAI,CAAC,kBAAkB,EAAE,cAAc,KAAK,CAAC,KAAK,yBAAyB,CAAC,CAAA;wCACvF,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,0BAA0B,CAAC,CAAA;wCACpE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;wCACrE,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;4CAAE,IAAI,CAAC,kBAAkB,EAAE,cAAc,KAAK,CAAC,KAAK,mBAAmB,CAAC,CAAA;wCAC7H,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;wCAC1C,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,CAAA;oCACnI,CAAC;oCACD,IAAI,CAAC,aAAa,EAAE,CAAA;oCACpB,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE;wCAC/F,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,CAAA;gCAChI,CAAC;6BACF,CAAC,CAAC,CAAC,SAAS,CAAA;4BACb,IAAG,WAAW,IAAI,CAAC,SAAS,IAAK,GAAG,CAAC,GAAG,CAAC,UAAU,EAAC,KAAK,CAAS,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,aAAa,EAAC,iBAAiB,EAAC,cAAc,EAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;gCAAC,IAAI,CAAC,aAAa,EAAC,mDAAmD,CAAC,CAAA;4BACxP,IAAI,IAAI,KAAK,aAAa,IAAI,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gCAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gCAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;4BAAC,CAAC;4BACrJ,IAAI,IAAI,KAAK,aAAa,IAAI,IAAI,KAAK,iBAAiB,IAAI,CAAC,qBAAqB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;gCAChI,MAAM,CAAC,WAAW,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;4BACzJ,OAAO,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;wBACpK,CAAC;wBACD,OAAO,KAAK,EAAE,CAAC;4BAAC,OAAO,OAAO,CAAC,KAAK,CAAC,CAAA;wBAAC,CAAC;oBACzC,CAAC,EAAE,CAAA;gBACL,0BAA0B,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;gBAC9C,KAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,UAAU,CAAC,CAAA;gBACzD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAA;YAC9C,CAAC;YACD,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAwD,CAAA;YAC1G,IAAI,MAAM,EAAE,CAAC;gBACX,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;gBAChF,IAAI,CAAC,YAAY;oBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC,CAAA;YACrH,CAAC;QACH,CAAC,CAAA;QACD,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,uCAAuC,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;QAClL,MAAM,QAAQ,GAAG,CAAI,OAAiC,EAAE,GAAqB,EAAc,EAAE;YAC3F,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAA;YACtC,OAAO,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE;gBACnD,aAAa;oBACX,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;oBACpC,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,YAAY;2BACxH,OAAO,CAAC,KAAK,CAAC,SAAS,KAAK,OAAO,CAAC,KAAK,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,IAAI;wBACtJ,IAAI,CAAC,kBAAkB,EAAE,0BAA0B,CAAC,CAAA;gBACxD,CAAC;gBACD,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,mBAAmB,EAAE,wCAAwC,CAAC,CAAA,CAAC,CAAC;aAC3F,CAAC,CAAA;QACJ,CAAC,CAAA;QACD,MAAM,OAAO,GAAG,KAAK,EAAE,OAAiC,EAAE,MAAoB,EAAE,EAAE;YAChF,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;YAC5D,OAAO,MAAM,OAAO,CAAC,2BAA2B,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;QAC1G,CAAC,CAAA;QACD,KAAK,CAAC,YAAY,GAAG,KAAK,EAAC,SAAS,EAAC,EAAE;YACrC,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAA;YAChC,MAAM,QAAQ,GAAC,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,CAAA,EAAE,CAAA,qBAAqB,CAAC,EAAE,EAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;YAChG,IAAG,QAAQ,IAAE,CAAC,CAAC,WAAW,IAAE,QAAQ,CAAC,QAAQ,IAAE,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,IAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,KAAG,KAAK,IAAE,CAAC,WAAW,EAAC,sBAAsB,EAAC,WAAW,EAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAC,CAAC;gBAAA,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAAA,OAAO,IAAI,CAAA;YAAA,CAAC;YAC/O,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;YACzE,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YACzC,IAAI,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5C,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;gBAC/B,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBACvB,OAAO,IAAI,CAAA;YACb,CAAC;YACD,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YACpD,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,IAAI,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAA8D,CAAA;YACzK,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;YAC/B,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YACvB,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAwD,CAAA;YAClH,IAAI,MAAM,EAAE,CAAC;gBAAC,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAAC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,KAAK;oBAC1I,IAAI,EAAE,4BAA4B,MAAM,CAAC,UAAU,IAAI,MAAM,YAAY,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO;wBACxG,CAAC,CAAC,yRAAyR,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,QAAQ,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAA,CAAC,CAAC,CAAC,CAAA;YAAC,CAAC;YAC9W,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACvD,CAAC,CAAA;QACD,SAAS,CAAC,IAAI,CAAE,GAAW,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,KAAuC,EAAE,EAAE;YACzF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,KAAK,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,OAAO;gBAAE,OAAM;YACtK,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;QACzE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QACrB,SAAS,CAAC,IAAI,CAAE,GAAW,CAAC,EAAE,CAAC,kBAAkB,EAAE,KAAK,EAAE,OAAgB,EAAE,EAAE;YAC5E,6EAA6E;YAC7E,yEAAyE;YACzE,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YAC/C,IAAI,OAAO,EAAE,OAAO,KAAK,OAAO;gBAAE,OAAM;YACxC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YAAC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YACtF,MAAM,QAAQ,GAAG,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,CAAA;YACrF,IAAI,CAAC;gBAAC,MAAM,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YAAC,CAAC;oBACxC,CAAC;gBAAC,KAAK,MAAM,KAAK,IAAI,QAAQ;oBAAE,UAAU,CAAC,KAAK,CAAC,CAAA;YAAC,CAAC;QAC7D,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QACrB,MAAM,MAAM,GAAG,KAAK,EAAE,OAAiC,EAAE,UAAU,GAAG,KAAK,EAAoB,EAAE;YAC/F,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YAC/D,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YAC3C,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC;oBACpD,CAAC,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;oBACrC,CAAC,CAAC,MAAM,CAAC,UAAU,IAAI,WAAW;wBAChC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;wBAC/I,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;gBAC3H,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;gBAC/B,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBACvB,OAAO,MAAM,CAAA;YACf,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;oBAAE,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;gBAC7G,mEAAmE;gBACnE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;oBAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBACnH,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC,CAAA;QACD,IAAI,MAAM,CAAC,OAAO;YAAE,SAAS,CAAC,IAAI,CAAE,GAAW,CAAC,OAAO,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,EAAE,QAAQ,EAAC,WAAW;gBACxH,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnC,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;gBAC3E,OAAO,EAAE,KAAK,EAAC,SAAS,EAAC,EAAE;oBACzB,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;oBACtF,IAAI,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,OAAO,CAAC,KAAK,CAAC,IAAI;wBAAE,IAAI,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAA;oBAClG,OAAO,KAAK,KAAK,SAAS,CAAA;gBAC5B,CAAC;gBACD,OAAO,EAAE,KAAK,EAAC,SAAS,EAAC,EAAE,GAAE,MAAM,OAAO,GAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA,IAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;oBAAC,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;;oBAAK,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA,CAAA,CAAC;gBAC/P,MAAM,EAAE,KAAK,EAAC,SAAS,EAAC,EAAE;oBACxB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAuB,CAAA;oBACnE,IAAI,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;wBAAE,IAAI,CAAC,mBAAmB,EAAE,mDAAmD,CAAC,CAAA;gBACzJ,CAAC;aACF,CAAC,CAAC,CAAC,CAAA;QACJ,MAAM,cAAc,GAAwB;YAC1C,YAAY,EAAE,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAChF,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;YAC1F,KAAK,CAAC,QAAQ,CAAC,SAAS;gBACtB,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAA;gBAChC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;oBAAE,OAAM;gBACzD,MAAM,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;gBACrD,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAA;gBAChC,IAAI,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,IAAI;oBAC9E,IAAI,CAAC,kBAAkB,EAAE,yBAAyB,CAAC,CAAA;YACvD,CAAC;YACD,KAAK,CAAC,YAAY,CAAC,SAAS;gBAC1B,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAA;oBACjE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;oBACtD,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAA;oBAChC,OAAO,IAAI,IAAI,CAAC,KAAM,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK;2BACvF,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;2BACtE,OAAO,CAAC,KAAK,CAAC,SAAS,KAAK,OAAO,CAAC,KAAK,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK,CAAC,OAAO;2BACtG,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,IAAI,CAAA;gBAChD,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,KAAK,CAAA;gBAAC,CAAC;YAC1B,CAAC;YACD,gBAAgB,CAAC,SAAS;gBACxB,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAA;oBACjE,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;oBAChD,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAA;oBAChC,OAAO,IAAI,IAAI,CAAC,KAAM,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK;2BACvF,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;2BACtE,OAAO,CAAC,KAAK,CAAC,SAAS,KAAK,OAAO,CAAC,KAAK,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK,CAAC,OAAO;2BACtG,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,IAAI,CAAA;gBAChD,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,KAAK,CAAA;gBAAC,CAAC;YAC1B,CAAC;YACD,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ;gBAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAA;gBAChC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC,qBAAqB,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;gBACrG,IAAI,QAAQ,IAAI,CAAC,CAAC,WAAW,IAAI,QAAQ,CAAC,QAAQ,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,WAAW,EAAE,sBAAsB,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;oBACrO,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;oBACzB,MAAM,OAAO,GAAG,QAA4D,CAAA;oBAC5E,OAAO,EAAE,GAAG,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAgB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAA;gBACjH,CAAC;gBACD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;oBAAE,OAAO,QAAQ,CAAA;gBAClE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBACvB,0EAA0E;gBAC1E,0EAA0E;gBAC1E,0EAA0E;gBAC1E,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAA,EAAE,CAAA,WAAW,IAAI,KAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC7K,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;oBAAE,IAAI,CAAC,yBAAyB,EAAE,yBAAyB,CAAC,CAAA;gBACvI,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,cAAc,CAAC,CAAA;gBACrF,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAChG,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAA;gBACrD,MAAM,SAAS,GAAG,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,GAAG,QAAQ,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE;oBAClG,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAA;gBAC/D,OAAO,SAAS,CAAA;YAClB,CAAC;SACF,CAAA;QACD,SAAS,CAAC,IAAI,CAAE,GAAW,CAAC,OAAO,CAAC,qBAAqB,EAAE,cAAc,CAAC,CAAC,CAAA;QAC3E,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;YAChE,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YACnC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;YAC5B,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS;gBAAE,IAAI,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAA;YACpF,IAAI,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;gBAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YACtE,OAAO,OAAO,CAAC,KAAK,CAAA;QACtB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;QACzE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,0BAA0B,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,0HAA0H,EAAE;YACzO,OAAO,EAAE,KAAK,EAAC,UAAU,EAAC,EAAE;gBAC1B,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;oBACvC,MAAM,CAAC,MAAM,GAAG,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;oBACxG,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;wBAAE,IAAI,CAAC,iBAAiB,EAAE,gHAAgH,CAAC,CAAA;oBACjQ,IAAI,MAAe,CAAA;oBACnB,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;wBAC1B,IAAI,QAAQ,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;4BAAE,IAAI,CAAC,iBAAiB,EAAE,0CAA0C,CAAC,CAAA;wBAClI,IAAI,QAAQ,KAAK,KAAK,IAAI,QAAQ,KAAK,MAAM;4BAAE,MAAM,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;wBACjF,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,mBAAmB,cAAc,CAAC,IAAI,EAAE,YAAY,EAAE,CAAA;oBACxF,CAAC;oBACD,IAAI,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC1D,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE;4BAC9B,MAAM,QAAQ,GAAG,qBAAqB,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;4BACnE,IAAI,QAAQ,IAAI,CAAC,MAAM,KAAK,aAAa,IAAI,QAAQ,CAAC,UAAU,CAAC;gCAAE,oBAAoB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,cAAc,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,EAC3L,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,iBAAiB,UAAU,EAAE,IAAI,MAAM,EAAE,CAAC,CAAA;wBACnF,CAAC,CAAC,CAAA;oBACJ,CAAC;oBACD,IAAI,MAAM,KAAK,QAAQ;wBAAE,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;yBACxD,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;wBAClC,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;wBAC/D,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;wBAC3C,IAAI,CAAC;4BAAC,MAAM,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;4BAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;wBAAC,CAAC;wBACjG,OAAO,KAAK,EAAE,CAAC;4BACb,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;gCAAE,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;4BAC7G,MAAM,KAAK,CAAA;wBACb,CAAC;oBACH,CAAC;yBACI,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;wBAAC,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;wBAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;wBAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;oBAAC,CAAC;yBACnJ,IAAI,MAAM,KAAK,QAAQ;wBAAE,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,aAAa,EAAE,EAAE,CAAC,CAAA;yBACzF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;wBAC9B,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;4BAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;wBACzE,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;oBACpD,CAAC;yBACI,IAAI,MAAM,KAAK,SAAS;wBAAE,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAA;yBACvF,IAAI,MAAM,KAAK,SAAS;wBAAE,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,IAAI,EAAE,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;yBAC1G,IAAI,MAAM,KAAK,aAAa;wBAAE,MAAM,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;yBAC7H,IAAI,MAAM,KAAK,KAAK;wBAAE,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,iBAAiB,EAAE,QAAQ,IAAI,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;yBACnK,IAAI,MAAM,KAAK,QAAQ;wBAAE,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;;wBACrE,IAAI,CAAC,iBAAiB,EAAE,8EAA8E,CAAC,CAAA;oBAC5G,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,KAAK,QAAQ,IAAI,MAAM,KAAK,aAAa,IAAK,MAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAA;gBACzK,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAAC,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;oBAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAA;gBAAC,CAAC;YAC/H,CAAC,EAAE,CAAC,CAAC,CAAA;QACP,OAAO,EAAE,OAAO,EAAE,IAAI,KAAK,KAAM,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE;gBAAE,OAAO,EAAE,CAAA,CAAC,CAAC;YAChH,KAAK,CAAC,OAAO,KAAK,KAAM,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,KAAM,CAAC,UAAU,CAAC,CAAC,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE;gBAAE,OAAO,EAAE,CAAA,CAAC,CAAC,EAAE,CAAA;IAChK,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,KAAK,CAAC,OAAO,GAAG,IAAI,CAAA;QACpB,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE;YAAE,OAAO,EAAE,CAAA;QAC9D,MAAM,OAAO,CAAC,OAAO,EAAE,CAAA;QACvB,OAAO,KAAK,CAAC,UAAU,CAAA;QACvB,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC;AACD,SAAS,WAAW,CAAC,IAAc;IACjC,OAAO,CAAC,EAAE,SAAS,EAAE,qTAAqT;QACxU,iBAAiB,EAAE,uPAAuP;QAC1Q,gBAAgB,EAAE,oOAAoO;QACtP,aAAa,EAAE,0LAA0L;QACzM,eAAe,EAAE,iNAAiN;QAClO,mBAAmB,EAAE,gKAAgK;QACrL,WAAW,EAAE,gLAAgL;QAC7L,SAAS,EAAE,sIAAsI;QACjJ,YAAY,EAAE,gIAAgI;QAC9I,UAAU,EAAE,gIAAgI;QAC5I,WAAW,EAAE,iMAAiM;QAC9M,UAAU,EAAE,6HAA6H;QACzI,YAAY,EAAE,uIAAuI;QACrJ,aAAa,EAAE,0MAA0M,EAAE,YAAY,EAAE,4FAA4F,EAAE,WAAW,EAAE,gFAAgF;QACpa,WAAW,EAAE,gEAAgE,EAAE,UAAU,EAAE,iFAAiF,EAAE,CAAC,CAAC,IAAI,CAAC,CAAA;AACzL,CAAC;AACD,MAAM,UAAU,cAAc,CAAC,IAAc;IAC3C,MAAM,UAAU,GAAG,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe;QACzF,aAAa,EAAE,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,eAAe,EAAE,cAAc,EAAE,CAAA;IACzG,IAAI,IAAI,IAAI,UAAU,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,UAAU,CAAC,IAA+B,CAAC,CAAA;QAC1D,wEAAwE;QACxE,wEAAwE;QACxE,0FAA0F;QAC1F,MAAM,eAAe,GAAG,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC5H,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,eAAe,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAW,CAAA;IAC/F,CAAC;IACD,MAAM,UAAU,GAA4B,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,CAAA;IAC3I,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IACxC,IAAI,IAAI,KAAK,aAAa;QAAE,UAAU,CAAC,MAAM,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,wDAAwD,EAAE,CAAA;IACtJ,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;QAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,WAAW,EAAE,iJAAiJ,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAAC,CAAC;IACna,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;QAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,CAAC,CAAA;IAAC,CAAC;IACzf,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;QAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAAC,CAAC;IAC/P,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;QAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAAC,CAAC;IAC3N,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;IAAC,CAAC;IAC/L,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;QAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAA;IAAC,CAAC;IACnS,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;IAAC,CAAC;IAClM,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;QAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;IAAC,CAAC;IAC/L,IAAI,IAAI,KAAK,eAAe,EAAE,CAAC;QAAC,UAAU,CAAC,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;QAAC,UAAU,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;IAAC,CAAC;IACjJ,IAAI,IAAI,KAAK,cAAc;QAAE,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE;YACrD,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,EAAE,wDAAwD,EAAE;YAC9G,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,EAAE,sFAAsF,EAAE;YAC1J,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE;YACrF,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,mFAAmF,EAAE;YAC9I,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,wDAAwD,EAAE;YAC9G,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;SACtD,CAAC,CAAA;IACF,IAAI,IAAI,KAAK,aAAa;QAAE,UAAU,CAAC,UAAU,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,EAAE,sDAAsD,EAAE,CAAA;IAC3J,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAA;AAC9E,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { LispNativeCommands } from '../lisp-tool-identity.js';
|
|
1
2
|
import type { SqliteDatabase } from '../../db/adapter.js';
|
|
2
3
|
import { type TaskLease } from '../task-state.js';
|
|
3
4
|
import { type LispOwner } from './contracts.js';
|
|
@@ -5,6 +6,7 @@ import type { LispDatabase } from './store.js';
|
|
|
5
6
|
export interface LispTaskExecution {
|
|
6
7
|
readonly owner: LispOwner;
|
|
7
8
|
readonly lease?: TaskLease;
|
|
9
|
+
readonly nativeCommands?: LispNativeCommands;
|
|
8
10
|
readonly unavailable?: unknown;
|
|
9
11
|
performedEffect: boolean;
|
|
10
12
|
}
|
|
@@ -15,7 +17,7 @@ export declare class LispTaskAuthority {
|
|
|
15
17
|
private readonly database;
|
|
16
18
|
constructor(database: LispDatabase);
|
|
17
19
|
current(): LispTaskExecution | undefined;
|
|
18
|
-
run<T>(owner: LispOwner, action: () => Promise<T
|
|
20
|
+
run<T>(owner: LispOwner, action: () => Promise<T>, nativeCommands?: LispNativeCommands): Promise<T>;
|
|
19
21
|
bound<T>(binding: LispTaskExecution | undefined, action: () => Promise<T>): Promise<T>;
|
|
20
22
|
private checkOwner;
|
|
21
23
|
authorizeEffect(owner: LispOwner, route?: 'direct' | 'owned' | 'protected'): Promise<TaskLease>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-authority.d.ts","sourceRoot":"","sources":["../../../src/dsh/lisp/task-authority.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"task-authority.d.ts","sourceRoot":"","sources":["../../../src/dsh/lisp/task-authority.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAGlE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EAAuC,KAAK,SAAS,EAAqB,MAAM,kBAAkB,CAAA;AACzG,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAG9C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAA;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAA;IAC1B,QAAQ,CAAC,cAAc,CAAC,EAAE,kBAAkB,CAAA;IAC5C,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,eAAe,EAAE,OAAO,CAAA;CACzB;AAED;kFACkF;AAClF,qBAAa,iBAAiB;;IAEhB,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,YAAY;IAEnD,OAAO,IAAI,iBAAiB,GAAG,SAAS;IAElC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAsBzG,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,iBAAiB,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAKtF,OAAO,CAAC,UAAU;IAKZ,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,GAAE,QAAQ,GAAG,OAAO,GAAG,WAAsB,GAAG,OAAO,CAAC,SAAS,CAAC;IAU/G;sFACkF;IAClF,oBAAoB,CAAC,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI;IAMhE,gFAAgF;IAChF,0BAA0B,CAAC,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI;IAOtE,OAAO,CAAC,QAAQ;CAIjB"}
|
|
@@ -12,19 +12,20 @@ export class LispTaskAuthority {
|
|
|
12
12
|
this.database = database;
|
|
13
13
|
}
|
|
14
14
|
current() { return this.#scope.getStore(); }
|
|
15
|
-
async run(owner, action) {
|
|
15
|
+
async run(owner, action, nativeCommands) {
|
|
16
16
|
const current = this.current();
|
|
17
17
|
if (current) {
|
|
18
18
|
this.checkOwner(current, owner);
|
|
19
19
|
return action();
|
|
20
20
|
}
|
|
21
|
-
|
|
21
|
+
nativeCommands?.assertCurrent();
|
|
22
|
+
const inherited = nativeCommands ? undefined : currentTaskAuthority();
|
|
22
23
|
if (inherited && (inherited.sessionId !== owner.sessionId || inherited.repositoryRoot !== owner.root))
|
|
23
24
|
fail('TASK_OWNER_MISMATCH', '呼び出し元のタスクと Lisp のセッションが一致しません。');
|
|
24
25
|
let task, unavailable;
|
|
25
26
|
// A compiled outer execution which began without a task cannot acquire one
|
|
26
27
|
// merely because another turn admitted work while it was awaiting.
|
|
27
|
-
if (!inherited && !hasNoTaskAuthority()) {
|
|
28
|
+
if (!nativeCommands && !inherited && !hasNoTaskAuthority()) {
|
|
28
29
|
try {
|
|
29
30
|
task = await this.database(db => findSessionTask(db, { sessionId: owner.sessionId, repositoryRoot: owner.root }));
|
|
30
31
|
}
|
|
@@ -33,6 +34,7 @@ export class LispTaskAuthority {
|
|
|
33
34
|
}
|
|
34
35
|
}
|
|
35
36
|
const binding = { owner: { ...owner }, performedEffect: false,
|
|
37
|
+
...(nativeCommands ? { nativeCommands } : {}),
|
|
36
38
|
...(unavailable ? { unavailable } : {}),
|
|
37
39
|
...(inherited ? { lease: Object.freeze({ ...inherited }) } : task ? { lease: Object.freeze({ taskId: task.taskId, sessionId: task.sessionId, repositoryRoot: task.repositoryRoot,
|
|
38
40
|
revision: task.revision, generation: task.generation }) } : {}) };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-authority.js","sourceRoot":"","sources":["../../../src/dsh/lisp/task-authority.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"task-authority.js","sourceRoot":"","sources":["../../../src/dsh/lisp/task-authority.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export declare function rememberLispImplementation(execute: object): void;
|
|
2
|
+
export declare function isLispImplementation(execute: unknown): boolean;
|
|
3
|
+
export declare function rememberLispConversation(agent: object, current: () => boolean): void;
|
|
4
|
+
export declare function isLispConversation(agent: object): boolean;
|
|
5
|
+
export interface RootLispAdmission {
|
|
6
|
+
current(): boolean;
|
|
7
|
+
}
|
|
8
|
+
/** Lives only while this exact native root dispatch is awaiting its implementation. */
|
|
9
|
+
export declare function withRootLispAdmission<T>(execution: object, current: () => boolean, run: () => Promise<T>): Promise<T>;
|
|
10
|
+
export declare function rootLispAdmission(execution: object): RootLispAdmission | undefined;
|
|
11
|
+
interface CommandExecution {
|
|
12
|
+
name: string;
|
|
13
|
+
callId: string;
|
|
14
|
+
agent?: unknown;
|
|
15
|
+
parent?: unknown;
|
|
16
|
+
arguments: unknown;
|
|
17
|
+
signal: AbortSignal;
|
|
18
|
+
}
|
|
19
|
+
/** A host-only, exact-call bridge. Arbitrary nested tools cannot inherit the exception. */
|
|
20
|
+
export declare function withLispNativeCommand<T>(execution: CommandExecution, execute: unknown, admission: RootLispAdmission, run: () => Promise<T>): Promise<T>;
|
|
21
|
+
export declare function isLispNativeCommand(execution: CommandExecution, execute: unknown): boolean;
|
|
22
|
+
/** A capability created by the Lisp surface from the admitted root execution. */
|
|
23
|
+
export interface LispNativeCommands {
|
|
24
|
+
assertCurrent(): void;
|
|
25
|
+
run(input: {
|
|
26
|
+
program: string;
|
|
27
|
+
argv: string[];
|
|
28
|
+
directory?: string | undefined;
|
|
29
|
+
timeoutMs: number;
|
|
30
|
+
}, signal: AbortSignal): Promise<unknown>;
|
|
31
|
+
}
|
|
32
|
+
export {};
|
|
33
|
+
//# sourceMappingURL=lisp-tool-identity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lisp-tool-identity.d.ts","sourceRoot":"","sources":["../../src/dsh/lisp-tool-identity.ts"],"names":[],"mappings":"AAKA,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAiC;AAClG,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAyE;AAGxI,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,OAAO,GAAG,IAAI,CAAsC;AAC3H,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAiD;AAE3G,MAAM,WAAW,iBAAiB;IAAG,OAAO,IAAI,OAAO,CAAA;CAAE;AAEzD,uFAAuF;AACvF,wBAAsB,qBAAqB,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAI3H;AACD,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAGlF;AAED,UAAU,gBAAgB;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,WAAW,CAAA;CAAE;AAGvI,2FAA2F;AAC3F,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAEvJ;AACD,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAK1F;AAED,iFAAiF;AACjF,MAAM,WAAW,kBAAkB;IACjC,aAAa,IAAI,IAAI,CAAA;IACrB,GAAG,CAAC,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CAC1I"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
2
|
+
import { canonicalContentHash } from '../serialization/validate.js';
|
|
3
|
+
/** Host-minted implementation identity, never a tool-name permission grant. */
|
|
4
|
+
const implementations = new WeakSet();
|
|
5
|
+
export function rememberLispImplementation(execute) { implementations.add(execute); }
|
|
6
|
+
export function isLispImplementation(execute) { return typeof execute === 'function' && implementations.has(execute); }
|
|
7
|
+
const conversations = new WeakMap();
|
|
8
|
+
export function rememberLispConversation(agent, current) { conversations.set(agent, current); }
|
|
9
|
+
export function isLispConversation(agent) { return conversations.get(agent)?.() === true; }
|
|
10
|
+
const admissions = new WeakMap();
|
|
11
|
+
/** Lives only while this exact native root dispatch is awaiting its implementation. */
|
|
12
|
+
export async function withRootLispAdmission(execution, current, run) {
|
|
13
|
+
const admission = { current: () => admissions.get(execution) === admission && current() };
|
|
14
|
+
admissions.set(execution, admission);
|
|
15
|
+
try {
|
|
16
|
+
return await run();
|
|
17
|
+
}
|
|
18
|
+
finally {
|
|
19
|
+
admissions.delete(execution);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
export function rootLispAdmission(execution) {
|
|
23
|
+
const admission = admissions.get(execution);
|
|
24
|
+
return admission?.current() ? admission : undefined;
|
|
25
|
+
}
|
|
26
|
+
const commands = new AsyncLocalStorage();
|
|
27
|
+
/** A host-only, exact-call bridge. Arbitrary nested tools cannot inherit the exception. */
|
|
28
|
+
export function withLispNativeCommand(execution, execute, admission, run) {
|
|
29
|
+
return commands.run({ execution, execute, admission, digest: canonicalContentHash(execution.arguments) }, run);
|
|
30
|
+
}
|
|
31
|
+
export function isLispNativeCommand(execution, execute) {
|
|
32
|
+
const scope = commands.getStore(), expected = scope?.execution;
|
|
33
|
+
return !!scope && !!expected && scope.admission.current() && !execution.signal.aborted && !expected.signal.aborted
|
|
34
|
+
&& execution.name === expected.name && execution.callId === expected.callId && execution.agent === expected.agent
|
|
35
|
+
&& execution.parent === expected.parent && scope.execute === execute && scope.digest === canonicalContentHash(execution.arguments);
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=lisp-tool-identity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lisp-tool-identity.js","sourceRoot":"","sources":["../../src/dsh/lisp-tool-identity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAEnE,+EAA+E;AAC/E,MAAM,eAAe,GAAG,IAAI,OAAO,EAAU,CAAA;AAC7C,MAAM,UAAU,0BAA0B,CAAC,OAAe,IAAU,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA,CAAC,CAAC;AAClG,MAAM,UAAU,oBAAoB,CAAC,OAAgB,IAAa,OAAO,OAAO,OAAO,KAAK,UAAU,IAAI,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA,CAAC,CAAC;AAExI,MAAM,aAAa,GAAG,IAAI,OAAO,EAAyB,CAAA;AAC1D,MAAM,UAAU,wBAAwB,CAAC,KAAa,EAAE,OAAsB,IAAU,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA,CAAC,CAAC;AAC3H,MAAM,UAAU,kBAAkB,CAAC,KAAa,IAAa,OAAO,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,IAAI,CAAA,CAAC,CAAC;AAG3G,MAAM,UAAU,GAAG,IAAI,OAAO,EAA6B,CAAA;AAC3D,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAI,SAAiB,EAAE,OAAsB,EAAE,GAAqB;IAC7G,MAAM,SAAS,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,SAAS,IAAI,OAAO,EAAE,EAAE,CAAA;IACzF,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;IACpC,IAAI,CAAC;QAAC,OAAO,MAAM,GAAG,EAAE,CAAA;IAAC,CAAC;YAAS,CAAC;QAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAAC,CAAC;AACrE,CAAC;AACD,MAAM,UAAU,iBAAiB,CAAC,SAAiB;IACjD,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IAC3C,OAAO,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;AACrD,CAAC;AAID,MAAM,QAAQ,GAAG,IAAI,iBAAiB,EAAsB,CAAA;AAC5D,2FAA2F;AAC3F,MAAM,UAAU,qBAAqB,CAAI,SAA2B,EAAE,OAAgB,EAAE,SAA4B,EAAE,GAAqB;IACzI,OAAO,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,oBAAoB,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;AAChH,CAAC;AACD,MAAM,UAAU,mBAAmB,CAAC,SAA2B,EAAE,OAAgB;IAC/E,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,QAAQ,GAAG,KAAK,EAAE,SAAS,CAAA;IAC9D,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO;WAC7G,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,IAAI,SAAS,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,IAAI,SAAS,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK;WAC9G,SAAS,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,IAAI,KAAK,CAAC,MAAM,KAAK,oBAAoB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;AACtI,CAAC"}
|