@spine-event-engine/server 2.0.0-snapshot.23 → 2.0.0-snapshot.24
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/REFERENCE.md +89 -23
- package/dist/bus/event-bus.d.ts +65 -100
- package/dist/bus/event-bus.d.ts.map +1 -1
- package/dist/bus/event-bus.js +46 -116
- package/dist/bus/event-bus.js.map +1 -1
- package/dist/bus/saved-dispatcher-binding.d.ts +1 -44
- package/dist/bus/saved-dispatcher-binding.d.ts.map +1 -1
- package/dist/bus/saved-dispatcher-binding.js +0 -8
- package/dist/bus/saved-dispatcher-binding.js.map +1 -1
- package/dist/context/bounded-context.d.ts +9 -10
- package/dist/context/bounded-context.d.ts.map +1 -1
- package/dist/context/bounded-context.js +64 -43
- package/dist/context/bounded-context.js.map +1 -1
- package/dist/context/entity-inbox.d.ts.map +1 -1
- package/dist/context/entity-inbox.js +21 -7
- package/dist/context/entity-inbox.js.map +1 -1
- package/dist/context/local-inbox-handoff.d.ts +1 -0
- package/dist/context/local-inbox-handoff.d.ts.map +1 -1
- package/dist/context/local-inbox-handoff.js +31 -1
- package/dist/context/local-inbox-handoff.js.map +1 -1
- package/dist/context/projection-handoff.d.ts.map +1 -1
- package/dist/context/projection-handoff.js +2 -0
- package/dist/context/projection-handoff.js.map +1 -1
- package/dist/delivery/delivery-monitor.d.ts +12 -9
- package/dist/delivery/delivery-monitor.d.ts.map +1 -1
- package/dist/delivery/delivery-monitor.js +15 -9
- package/dist/delivery/delivery-monitor.js.map +1 -1
- package/dist/delivery/delivery-ports.d.ts +6 -13
- package/dist/delivery/delivery-ports.d.ts.map +1 -1
- package/dist/delivery/delivery-run-control.d.ts +15 -0
- package/dist/delivery/delivery-run-control.d.ts.map +1 -1
- package/dist/delivery/delivery-run-control.js.map +1 -1
- package/dist/delivery/delivery-supervisor.d.ts +33 -5
- package/dist/delivery/delivery-supervisor.d.ts.map +1 -1
- package/dist/delivery/delivery-supervisor.js +150 -22
- package/dist/delivery/delivery-supervisor.js.map +1 -1
- package/dist/delivery/delivery.d.ts.map +1 -1
- package/dist/delivery/delivery.js +128 -54
- package/dist/delivery/delivery.js.map +1 -1
- package/dist/delivery/inbox-storage.d.ts +8 -11
- package/dist/delivery/inbox-storage.d.ts.map +1 -1
- package/dist/delivery/inbox-storage.js +33 -76
- package/dist/delivery/inbox-storage.js.map +1 -1
- package/dist/delivery/inbox.d.ts +9 -12
- package/dist/delivery/inbox.d.ts.map +1 -1
- package/dist/delivery/inbox.js +10 -13
- package/dist/delivery/inbox.js.map +1 -1
- package/dist/delivery/reception-observation.d.ts +56 -0
- package/dist/delivery/reception-observation.d.ts.map +1 -0
- package/dist/delivery/reception-observation.js +67 -0
- package/dist/delivery/reception-observation.js.map +1 -0
- package/dist/repository/repository.d.ts +3 -4
- package/dist/repository/repository.d.ts.map +1 -1
- package/dist/repository/repository.js +155 -166
- package/dist/repository/repository.js.map +1 -1
- package/dist/runtime/runtime.d.ts +11 -0
- package/dist/runtime/runtime.d.ts.map +1 -1
- package/dist/runtime/runtime.js +13 -0
- package/dist/runtime/runtime.js.map +1 -1
- package/dist/runtime/signal-metadata.d.ts.map +1 -1
- package/dist/runtime/signal-metadata.js +3 -10
- package/dist/runtime/signal-metadata.js.map +1 -1
- package/dist/runtime/signal-publisher.d.ts +11 -33
- package/dist/runtime/signal-publisher.d.ts.map +1 -1
- package/dist/runtime/signal-publisher.js +70 -55
- package/dist/runtime/signal-publisher.js.map +1 -1
- package/dist/runtime/standalone-handler-runtime.d.ts.map +1 -1
- package/dist/runtime/standalone-handler-runtime.js +1 -31
- package/dist/runtime/standalone-handler-runtime.js.map +1 -1
- package/dist/server/environment-delivery-worker.d.ts.map +1 -1
- package/dist/server/environment-delivery-worker.js +305 -5
- package/dist/server/environment-delivery-worker.js.map +1 -1
- package/dist/server/managed-server-application.d.ts +2 -2
- package/dist/server/managed-server-application.d.ts.map +1 -1
- package/dist/server/managed-server-application.js +467 -177
- package/dist/server/managed-server-application.js.map +1 -1
- package/dist/server/node-coordinator.d.ts +14 -0
- package/dist/server/node-coordinator.d.ts.map +1 -1
- package/dist/server/node-coordinator.js +266 -45
- package/dist/server/node-coordinator.js.map +1 -1
- package/dist/server/server-log.d.ts.map +1 -1
- package/dist/server/server-log.js +4 -0
- package/dist/server/server-log.js.map +1 -1
- package/dist/server/server.js +20 -7
- package/dist/server/server.js.map +1 -1
- package/dist/services/spine-services.d.ts.map +1 -1
- package/dist/services/spine-services.js +200 -72
- package/dist/services/spine-services.js.map +1 -1
- package/dist/stand/event-origin-filter.d.ts +16 -0
- package/dist/stand/event-origin-filter.d.ts.map +1 -0
- package/dist/stand/event-origin-filter.js +124 -0
- package/dist/stand/event-origin-filter.js.map +1 -0
- package/dist/stand/subscription-observer.d.ts.map +1 -1
- package/dist/stand/subscription-observer.js +7 -0
- package/dist/stand/subscription-observer.js.map +1 -1
- package/dist/stand/subscription-runtime.d.ts +18 -1
- package/dist/stand/subscription-runtime.d.ts.map +1 -1
- package/dist/stand/subscription-runtime.js +32 -4
- package/dist/stand/subscription-runtime.js.map +1 -1
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +2 -2
- package/dist/testing/index.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +15 -15
|
@@ -20,8 +20,13 @@ import { freezeRegistry, isAiModel, registryOptions } from "@spine-event-engine/
|
|
|
20
20
|
import { TypeUrls } from "@spine-event-engine/core";
|
|
21
21
|
import { EventSchema, EventContextSchema, BoundedContextNameSchema, TenantIdSchema, } from "@spine-event-engine/proto";
|
|
22
22
|
import { SPI_type, internal_all, internal_type } from "@spine-event-engine/proto";
|
|
23
|
-
import { ColumnTypes, EventStore, InMemoryStorageFactory, RecordColumn, } from "@spine-event-engine/storage";
|
|
23
|
+
import { ColumnTypes, EventStore, InMemoryStorageFactory, RecordColumn, StorageGroup, } from "@spine-event-engine/storage";
|
|
24
24
|
import { AgentExecutionStorageFactories, AgentHistoryStorageFactories, TenantBoundary, } from "@spine-event-engine/storage/provider";
|
|
25
|
+
/**
|
|
26
|
+
* Storage family shared by paired System Event publication and trusted reads.
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
29
|
+
export const systemEventGroup = new StorageGroup("spine_system_events");
|
|
25
30
|
import { CommandBus, commandBusAccess } from "../bus/command-bus.js";
|
|
26
31
|
import { EventBus, eventBusAccess, isSystemEventSchema, } from "../bus/event-bus.js";
|
|
27
32
|
import { DeliveryReadiness, } from "./local-inbox-handoff.js";
|
|
@@ -326,11 +331,12 @@ export class BoundedContext {
|
|
|
326
331
|
registerSystemEventSchema: (schema) => {
|
|
327
332
|
eventBusAccess.registerSchemas(this.#systemEventBus, [schema]);
|
|
328
333
|
},
|
|
329
|
-
|
|
334
|
+
publishAgentEvent: (event) => event.context?.rejection === undefined
|
|
335
|
+
? this.#publisher.publishEvent(event)
|
|
336
|
+
: this.#publisher.publishRejectionEvent(event),
|
|
330
337
|
prepareSavedCommand: (command) => commandBusAccess.prepareSaved(this.#commandBus, command),
|
|
331
|
-
publishSavedEvent: (event, plan) => eventBusAccess.postSavedFollowUp(this.#eventBus, event, plan),
|
|
332
338
|
publishSavedCommand: (command, plan) => commandBusAccess.postSavedFollowUp(this.#commandBus, command, plan),
|
|
333
|
-
publishAgentSystemEvent: (event) =>
|
|
339
|
+
publishAgentSystemEvent: (event) => this.#publisher.publishSystemEvent(event),
|
|
334
340
|
recordAcceptedSaved: (signal) => {
|
|
335
341
|
this.#publisher.recordAcceptedSaved(signal);
|
|
336
342
|
},
|
|
@@ -478,7 +484,7 @@ export class BoundedContext {
|
|
|
478
484
|
* - single-tenant contexts reject `tenantId`;
|
|
479
485
|
* - multitenant contexts require the exact non-blank `tenantId`;
|
|
480
486
|
* - process-local sequential execution on the same EventBus runtime queue as
|
|
481
|
-
* live event intake
|
|
487
|
+
* live event intake.
|
|
482
488
|
*
|
|
483
489
|
* Unsupported boundary:
|
|
484
490
|
* - Delivery jobs, schedulers, inbox lifecycle, retries, and transport
|
|
@@ -520,14 +526,8 @@ export class BoundedContext {
|
|
|
520
526
|
});
|
|
521
527
|
}
|
|
522
528
|
/**
|
|
523
|
-
* Closes this context's buses, Stand,
|
|
524
|
-
*
|
|
525
|
-
* Close is idempotent and returns the same close outcome on repeated calls.
|
|
526
|
-
* The context attempts every close hook; when any hook fails, the
|
|
527
|
-
* returned promise rejects with an `AggregateError` after the remaining hooks
|
|
528
|
-
* have also been attempted.
|
|
529
|
-
*
|
|
530
|
-
* @returns A promise that settles after all resources close.
|
|
529
|
+
* Closes this context's buses, Stand, repository storage, and runtime bindings.
|
|
530
|
+
* @returns Completion or an aggregate of close failures.
|
|
531
531
|
*/
|
|
532
532
|
close() {
|
|
533
533
|
this.#beginClose();
|
|
@@ -535,7 +535,7 @@ export class BoundedContext {
|
|
|
535
535
|
return this.#closed;
|
|
536
536
|
}
|
|
537
537
|
/**
|
|
538
|
-
* Stops admission
|
|
538
|
+
* Stops external admission while accepted follow-ups drain.
|
|
539
539
|
*/
|
|
540
540
|
#beginClose() {
|
|
541
541
|
closingContexts.add(this);
|
|
@@ -551,9 +551,10 @@ export class BoundedContext {
|
|
|
551
551
|
* @returns Completion after the context's accepted work settles.
|
|
552
552
|
*/
|
|
553
553
|
async #drainWork() {
|
|
554
|
+
this.#beginClose();
|
|
554
555
|
const errors = [];
|
|
555
|
-
await
|
|
556
|
-
await
|
|
556
|
+
await this.#closePart(() => ContextParts.closeIntegration(this), errors);
|
|
557
|
+
await this.#closePart(() => ContextParts.drainContextWork(this.#commandBus, this.#eventBus, this.#systemEventBus, this.#publisher), errors);
|
|
557
558
|
if (errors.length > 0)
|
|
558
559
|
throw new AggregateError(errors, "BoundedContext drain failed.");
|
|
559
560
|
}
|
|
@@ -564,19 +565,13 @@ export class BoundedContext {
|
|
|
564
565
|
*/
|
|
565
566
|
async #closeOnce() {
|
|
566
567
|
const errors = [];
|
|
567
|
-
await
|
|
568
|
-
await
|
|
569
|
-
this.#
|
|
570
|
-
await
|
|
571
|
-
await
|
|
572
|
-
this.#subscriptionRuntime.
|
|
573
|
-
await
|
|
574
|
-
await ContextParts.closeContextPart(() => this.#subscriptionRuntime.drainClose(), errors);
|
|
575
|
-
await ContextParts.closeContextPart(() => eventBusAccess.finishClose(this.#systemEventBus), errors);
|
|
576
|
-
await ContextParts.closeContextPart(() => this.#stand.close(), errors);
|
|
577
|
-
await ContextParts.closeContextPart(() => this.#systemStand.close(), errors);
|
|
578
|
-
await ContextParts.closeContextPart(() => this.#subscriptionRuntime.finishClose(), errors);
|
|
579
|
-
await ContextParts.closeContextPart(() => {
|
|
568
|
+
await this.#closePart(() => this.#agentScheduler?.close(), errors);
|
|
569
|
+
await this.#closePart(() => this.#drainWork(), errors);
|
|
570
|
+
await this.#closeBuses(errors);
|
|
571
|
+
await this.#closePart(() => this.#stand.close(), errors);
|
|
572
|
+
await this.#closePart(() => this.#systemStand.close(), errors);
|
|
573
|
+
await this.#closePart(() => this.#subscriptionRuntime.finishClose(), errors);
|
|
574
|
+
await this.#closePart(() => {
|
|
580
575
|
ContextParts.requireTenantIndex(this).close();
|
|
581
576
|
}, errors);
|
|
582
577
|
await this.#closeRepositories(errors);
|
|
@@ -586,6 +581,21 @@ export class BoundedContext {
|
|
|
586
581
|
}
|
|
587
582
|
ContextParts.clearContextMetadata(this);
|
|
588
583
|
}
|
|
584
|
+
/**
|
|
585
|
+
* Closes bus intake and subscription drains before the Stands.
|
|
586
|
+
*
|
|
587
|
+
* @param errors Collects independent close failures.
|
|
588
|
+
* @returns Completion after bounded bus close attempts.
|
|
589
|
+
*/
|
|
590
|
+
async #closeBuses(errors) {
|
|
591
|
+
this.#publisher.finishClose();
|
|
592
|
+
await this.#closePart(() => commandBusAccess.finishClose(this.#commandBus), errors);
|
|
593
|
+
await this.#closePart(() => eventBusAccess.finishClose(this.#eventBus), errors);
|
|
594
|
+
this.#subscriptionRuntime.beginClose();
|
|
595
|
+
await this.#closePart(() => eventBusAccess.drain(this.#systemEventBus), errors);
|
|
596
|
+
await this.#closePart(() => this.#subscriptionRuntime.drainClose(), errors);
|
|
597
|
+
await this.#closePart(() => eventBusAccess.finishClose(this.#systemEventBus), errors);
|
|
598
|
+
}
|
|
589
599
|
/**
|
|
590
600
|
* Clears repository runtime registration after Stand closure.
|
|
591
601
|
*
|
|
@@ -593,12 +603,20 @@ export class BoundedContext {
|
|
|
593
603
|
*/
|
|
594
604
|
async #closeRepositories(errors) {
|
|
595
605
|
for (const repository of this.#repositoryViews) {
|
|
596
|
-
await
|
|
606
|
+
await this.#closePart(() => {
|
|
597
607
|
repositoryAccess.clearRuntime(repository);
|
|
598
608
|
registeredRepositories.delete(repository);
|
|
599
609
|
}, errors);
|
|
600
610
|
}
|
|
601
611
|
}
|
|
612
|
+
/**
|
|
613
|
+
* Calls a close action and collects its failure before later cleanup.
|
|
614
|
+
* @param work Close action.
|
|
615
|
+
* @param errors Collects close failures.
|
|
616
|
+
*/
|
|
617
|
+
async #closePart(work, errors) {
|
|
618
|
+
await ContextParts.closeContextPart(work, errors);
|
|
619
|
+
}
|
|
602
620
|
}
|
|
603
621
|
/**
|
|
604
622
|
* Exposes framework-only operations for built contexts and their builders.
|
|
@@ -1082,13 +1100,8 @@ export class BoundedContextBuilder {
|
|
|
1082
1100
|
* Rejects Agent outcomes whose raw matching dispatcher cannot bind a saved plan.
|
|
1083
1101
|
*/
|
|
1084
1102
|
#checkAgentOutputBindings(agents) {
|
|
1085
|
-
const rawEvents = new Set([...this.#eventDispatchers].flatMap((dispatcher) => dispatcher.messageSchemas().map((schema) => TypeUrls.derive(schema))));
|
|
1086
1103
|
const rawCommands = new Set([...this.#commandDispatchers].flatMap((dispatcher) => dispatcher.messageSchemas().map((schema) => TypeUrls.derive(schema))));
|
|
1087
1104
|
for (const repository of agents) {
|
|
1088
|
-
if (repositoryAccess
|
|
1089
|
-
.producedEventSchemas(repository)
|
|
1090
|
-
.some((schema) => rawEvents.has(TypeUrls.derive(schema))))
|
|
1091
|
-
throw new TypeError("Agent Event output requires a durable dispatcher binding.");
|
|
1092
1105
|
if (repositoryAccess
|
|
1093
1106
|
.producedCommandSchemas(repository)
|
|
1094
1107
|
.some((schema) => rawCommands.has(TypeUrls.derive(schema))))
|
|
@@ -1135,7 +1148,7 @@ export class BoundedContextBuilder {
|
|
|
1135
1148
|
#buildSystemBuses(storageFactory, dispatchers, resources) {
|
|
1136
1149
|
const systemSpec = ContextParts.createSystemSpec(this.#specSnapshot, this.#persistSystemEvents);
|
|
1137
1150
|
const systemEventStore = systemSpec.storesEvents
|
|
1138
|
-
? new EventStore(ContextParts.createStorageMode(systemSpec), storageFactory)
|
|
1151
|
+
? new EventStore(ContextParts.createStorageMode(systemSpec), storageFactory, systemEventGroup)
|
|
1139
1152
|
: undefined;
|
|
1140
1153
|
if (systemEventStore !== undefined)
|
|
1141
1154
|
resources.systemEventStore = systemEventStore;
|
|
@@ -1467,11 +1480,7 @@ const ContextParts = Object.freeze({
|
|
|
1467
1480
|
*/
|
|
1468
1481
|
createBoundedContext(specSnapshot, storageFactory, repositories, deliveryStrategy, buses, running, ai) {
|
|
1469
1482
|
return constructBoundedContext({
|
|
1470
|
-
snapshot:
|
|
1471
|
-
name: specSnapshot.name,
|
|
1472
|
-
tenantMode: ContextParts.toTenantMode(specSnapshot.multitenant),
|
|
1473
|
-
spec: specSnapshot,
|
|
1474
|
-
},
|
|
1483
|
+
snapshot: ContextParts.snapshotFor(specSnapshot),
|
|
1475
1484
|
commandBus: buses.commandBus,
|
|
1476
1485
|
eventBus: buses.eventBus,
|
|
1477
1486
|
systemEventBus: buses.systemEventBus,
|
|
@@ -1487,6 +1496,19 @@ const ContextParts = Object.freeze({
|
|
|
1487
1496
|
token: frameworkConstructionToken,
|
|
1488
1497
|
});
|
|
1489
1498
|
},
|
|
1499
|
+
/**
|
|
1500
|
+
* Captures public context identity from the build specification.
|
|
1501
|
+
*
|
|
1502
|
+
* @param specSnapshot Prepared context specification.
|
|
1503
|
+
* @returns Immutable context metadata input.
|
|
1504
|
+
*/
|
|
1505
|
+
snapshotFor(specSnapshot) {
|
|
1506
|
+
return {
|
|
1507
|
+
name: specSnapshot.name,
|
|
1508
|
+
tenantMode: ContextParts.toTenantMode(specSnapshot.multitenant),
|
|
1509
|
+
spec: specSnapshot,
|
|
1510
|
+
};
|
|
1511
|
+
},
|
|
1490
1512
|
/**
|
|
1491
1513
|
* Creates the storage mode represented by a context snapshot.
|
|
1492
1514
|
*
|
|
@@ -2488,9 +2510,8 @@ const ContextParts = Object.freeze({
|
|
|
2488
2510
|
publisher: registration.publisher,
|
|
2489
2511
|
registerEventSchema: registration.registerEventSchema,
|
|
2490
2512
|
registerSystemEventSchema: registration.registerSystemEventSchema,
|
|
2491
|
-
|
|
2513
|
+
publishAgentEvent: registration.publishAgentEvent,
|
|
2492
2514
|
prepareSavedCommand: registration.prepareSavedCommand,
|
|
2493
|
-
publishSavedEvent: registration.publishSavedEvent,
|
|
2494
2515
|
publishSavedCommand: registration.publishSavedCommand,
|
|
2495
2516
|
publishAgentSystemEvent: registration.publishAgentSystemEvent,
|
|
2496
2517
|
recordAcceptedSaved: registration.recordAcceptedSaved,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bounded-context.js","sourceRoot":"","sources":["../../src/context/bounded-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,SAAS,IAAI,WAAW,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGxD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAgB,MAAM,oBAAoB,CAAC;AAEvF,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAEhG,OAAO,EAAE,QAAQ,EAAsB,MAAM,0BAA0B,CAAC;AACxE,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,GAIf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAKlF,OAAO,EACL,WAAW,EACX,UAAU,EACV,sBAAsB,EACtB,YAAY,GAIb,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,EAC5B,cAAc,GACf,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAErE,OAAO,EACL,QAAQ,EACR,cAAc,EACd,mBAAmB,GAGpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAEL,iBAAiB,GAGlB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAoB,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAuB,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EACL,UAAU,EACV,gBAAgB,GAUjB,MAAM,6BAA6B,CAAC;AAMrC,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EACL,uBAAuB,GAIxB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,uBAAuB,GAExB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAClG,OAAO,EACL,2BAA2B,GAE5B,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAyB,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAChG,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EACL,wBAAwB,GAEzB,MAAM,0CAA0C,CAAC;AA6XlD;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAChD,kBAAkB;IAElB;;OAEG;IACM,KAAK,CAAU;IAExB;;;;OAIG;IACH,YAAY,KAAc;QACxB,KAAK,CAAC,0EAA0E,CAAC,CAAC;QAClF,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;CACF;AAMD,MAAM,0BAA0B,GAA+B,MAAM,CAAC,MAAM,CAAC;IAC3E,0BAA0B,EAAE,IAAI;CACjC,CAAC,CAAC;AACH,MAAM,qBAAqB,GAAG,iDAAiD,CAAC;AAChF,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAC7B,MAAM,cAAc,GAAG,0BAA0B,CAAC;AAClD,MAAM,qBAAqB,GAAG,UAAU,CAAC;AACzC,MAAM,6BAA6B,GAAG,IAAI,GAAG,EAAkB,CAAC;AAChE,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAGjC,CAAC;AACJ,MAAM,qBAAqB,GAAG,IAAI,OAAO,EAAyC,CAAC;AACnF,MAAM,oBAAoB,GAAG,IAAI,OAAO,EAA+B,CAAC;AACxE,MAAM,uBAAuB,GAAG,IAAI,OAAO,EAAkC,CAAC;AAC9E,MAAM,0BAA0B,GAAG,IAAI,OAAO,EAA6C,CAAC;AAC5F,MAAM,2BAA2B,GAAG,IAAI,OAAO,EAAuC,CAAC;AACvF,MAAM,cAAc,GAAG,IAAI,OAAO,EAA6B,CAAC;AAChE,MAAM,uBAAuB,GAAG,IAAI,OAAO,EAAmC,CAAC;AAC/E,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAAiD,CAAC;AACvF,MAAM,sBAAsB,GAAG,IAAI,OAAO,EAA+C,CAAC;AAC1F,MAAM,qBAAqB,GAAG,IAAI,OAAO,EAGtC,CAAC;AACJ,MAAM,eAAe,GAAG,IAAI,OAAO,EAAkB,CAAC;AACtD,MAAM,kBAAkB,GAAG,IAAI,OAAO,EAGnC,CAAC;AACJ,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAGpC,CAAC;AACJ,MAAM,kBAAkB,GAAG,IAAI,OAAO,EAAmD,CAAC;AAC1F,MAAM,aAAa,GAAG,IAAI,OAAO,EAG9B,CAAC;AA+QJ,IAAI,uBAAwF,CAAC;AAC7F,IAAI,8BAES,CAAC;AACd,IAAI,oBAC6F,CAAC;AAElG;;GAEG;AACH,MAAM,OAAO,cAAc;IAChB,SAAS,CAAyB;IAElC,WAAW,CAAa;IAExB,SAAS,CAAW;IAEpB,eAAe,CAAW;IAE1B,UAAU,CAAkB;IAE5B,gBAAgB,CAAkB;IAElC,cAAc,CAAgB;IAE9B,YAAY,CAAwB;IAEpC,gBAAgB,CAAW;IAE3B,iBAAiB,CAAmB;IAEpC,uBAAuB,GAA2B,EAAE,CAAC;IAErD,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE7C,eAAe,CAAiB;IAEhC,GAAG,CAAyB;IAE5B,MAAM,CAAQ;IAEd,YAAY,CAAQ;IAEpB,oBAAoB,CAAsB;IAEnD,eAAe,CAA6B;IAEnC,YAAY,GAAc,EAAE,CAAC;IAEtC,OAAO,CAA4B;IAEnC;;OAEG;IACH;QACE,uBAAuB,GAAG,CAAC,KAAK,EAAkB,EAAE,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;IACjF,CAAC;IAED;;;;OAIG;IACH,YAAsB,KAA6B;QACjD,YAAY,CAAC,iCAAiC,CAC5C,KAAK,CAAC,KAAK,EACX,+CAA+C,CAChD,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,cAAc,CAAC;QAC5C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC,mBAAmB,CAAC;QACtD,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,cAAc,CAAC;QAC5C,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC;QACpB,IAAI,CAAC,iBAAiB,GAAG,YAAY,CAAC,wBAAwB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACvF,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC;YACpC,oBAAoB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE;YACnE,IAAI,EAAE,CAAC,OAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;SAC3D,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;YAClC,kBAAkB,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC;YAC3E,IAAI,EAAE,CAAC,KAAY,EAAE,EAAE,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC;SACnE,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC5D,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,WAAW,CAAC;QACzC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC,eAAe,CAAC;QACjD,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;QACjE,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,oBAAoB,CAAC,WAAwB;QAC3C,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS;YAAE,OAAO;QACnC,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,CACpD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,KAAK,OAAO,CAC1C,CAAC;QACF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACtC,IAAI,CAAC,eAAe,GAAG,IAAI,cAAc,CACvC;YACE,YAAY,EAAE,YAAY,CAAC,MAAM;YACjC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CACtB,WAAW,CAAC,IAAI,CAAC;gBACf,KAAK,EAAE,EAAE;gBACT,MAAM;gBACN,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;aAC1C,CAAC;YACJ,KAAK,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;gBACnB,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;gBACvC,IAAI,UAAU,KAAK,SAAS;oBAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;gBACxF,OAAO,IAAI,CAAC,WAAW,CACrB,UAAU,EACV,WAAW,CAAC,UAAU,KAAK,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAC5D,CAAC;YACJ,CAAC;SACF,EACD,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EACpC,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,EAAE;gBAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnE,CAAC,CACF,CAAC;QACF,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;IAC/B,CAAC;IAED;;;;;;OAMG;IACH,WAAW,CAAC,UAA0B,EAAE,QAA8B;QACpE,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CACxC,IAAI,CAAC,SAAS,CAAC,UAAU,KAAK,aAAa,EAC3C,QAAQ,CACT,CAAC;QACF,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC;gBACjB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK;gBACzB,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC;gBAC1C,UAAU,CAAC,iBAAiB;aAC7B,CAAC;YACF,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACxB,gBAAgB,CAAC,qBAAqB,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC;YAC5E,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC;SAC3F,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,eAAe,CAAC,cAA8B;QAC5C,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAClD,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC;YACvC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK;YACtC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU;YACrC,cAAc;SACf,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,CAAC,QAAkB,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtE,MAAM,WAAW,GAAG,IAAI,gBAAgB,CACtC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EACzB,iBAAiB,EACjB,UAAU,EACV,IAAI,CAAC,iBAAiB,CACvB,CAAC;QACF,MAAM,eAAe,GAAG,IAAI,oBAAoB,CAC9C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EACzB,iBAAiB,EACjB,UAAU,CACX,CAAC;QACF,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;IAC1E,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,KAA6B,EAAE,QAA8B;QAC9E,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QACpE,sBAAsB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACxD,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,CACjD,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC,CAC9D,CAAC;QACF,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;QACnF,qBAAqB,CAAC,GAAG,CACvB,IAAI,EACJ,YAAY,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,CACnE,CAAC;QACF,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;QACrD,uBAAuB,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;QACxD,2BAA2B,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACjE,uBAAuB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACnD,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE;YAC3B,KAAK,EAAE,GAAG,EAAE;gBACV,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,CAAC;YACD,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE;SAC/B,CAAC,CAAC;QACH,0BAA0B,CAAC,GAAG,CAC5B,IAAI,EACJ,YAAY,CAAC,wBAAwB,CACnC,IAAI,CAAC,SAAS,EACd,KAAK,CAAC,cAAc,EACpB,QAAQ,CAAC,WAAW,EACpB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,gBAAgB,EACrB,QAAQ,CAAC,iBAAiB,CAC3B,CACF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,YAAuC,EAAE,WAAwB;QACjF,IAAI,CAAC;YACH,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;YACzC,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,CAAC;QACpC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,YAAY,CAAC,oBAAoB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;YACvD,CAAC;YAAC,OAAO,YAAY,EAAE,CAAC;gBACtB,MAAM,IAAI,cAAc,CACtB,CAAC,KAAK,EAAE,YAAY,CAAC,EACrB,qEAAqE,CACtE,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,qBAAqB,CAAC,YAAuC;QAC3D,MAAM,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;QAErE,IAAI,CAAC;YACH,KAAK,MAAM,kBAAkB,IAAI,oBAAoB,EAAE,CAAC;gBACtD,YAAY,CAAC,0BAA0B,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;YACzE,CAAC;YACD,KAAK,MAAM,kBAAkB,IAAI,oBAAoB,EAAE,CAAC;gBACtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,CAAC,WAAW,EAAE;oBAC5D,OAAO,EAAE,YAAY,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,QAAQ,CAAC;iBACrE,CAAC,CAAC;gBACH,kBAAkB,CAAC,MAAM,EAAE,CAAC;gBAC5B,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;gBAC/D,IAAI,kBAAkB,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;oBACvD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;gBACnE,CAAC;gBACD,IAAI,kBAAkB,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;oBAC3D,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,CAAC;gBAC3E,CAAC;gBACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,oBAAoB,CAAC,YAAuC;QAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACpD,MAAM,oBAAoB,GAAyB,EAAE,CAAC;QACtD,IAAI,CAAC;YACH,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;gBACtC,oBAAoB,CAAC,IAAI,CACvB,YAAY,CAAC,2BAA2B,CAAC,UAAU,EAAE,YAAY,CAAC,CACnE,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,uBAAuB;QACrB,MAAM,YAAY,GAA2B;YAC3C,IAAI,EAAE,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YACjD,cAAc,EAAE,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YACnE,cAAc,EAAE,IAAI,CAAC,eAAe;YACpC,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;YACnD,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,eAAe,EAAE,IAAI,CAAC,gBAAgB;YACtC,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,mBAAmB,EAAE,CAAC,MAAM,EAAE,EAAE;gBAC9B,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3D,CAAC;YACD,yBAAyB,EAAE,CAAC,MAAM,EAAE,EAAE;gBACpC,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;YACjE,CAAC;YACD,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC;YAChF,mBAAmB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC;YAC1F,iBAAiB,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CACjC,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC;YAC/D,mBAAmB,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CACrC,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC;YACrE,uBAAuB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC;YAC5F,mBAAmB,EAAE,CAAC,MAAM,EAAE,EAAE;gBAC9B,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;YAC9C,CAAC;YACD,iBAAiB,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,EAAE;gBAC1C,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;YACrE,CAAC;SACF,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,iBAAiB,CAAC,KAAc,EAAE,oBAAmD;QACnF,MAAM,WAAW,GAAG,YAAY,CAAC,yBAAyB,CAAC,oBAAoB,CAAC,CAAC;QACjF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,cAAc,CACtB,CAAC,KAAK,EAAE,GAAG,WAAW,CAAC,EACvB,sFAAsF,CACvF,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,YAAY,CAAC,IAAY;QAC9B,OAAO,YAAY,CAAC,2BAA2B,CAAC,YAAY,CAAC,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAChG,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,IAAY;QAC7B,OAAO,YAAY,CAAC,2BAA2B,CAAC,YAAY,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC/F,CAAC;IAED;;;;OAIG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,KAAK,aAAa,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACH,IAAI,IAAI;QACN,OAAO,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED;;;;OAIG;IACH,IAAI,QAAQ;QACV,OAAO,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3D,CAAC;IAED;;;;OAIG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,sBAAsB;QACpB,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;YAC1D,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,UAAU,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;YACzF,MAAM,IAAI,GAAG,YAAY,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;YACzD,qBAAqB,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;YAC/D,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,aAAa,CACX,UAAsB;QAEtB,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC9E,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC/C,IAAI,UAAU,CAAC,UAAU,KAAK,UAAU;gBAAE,OAAO,UAAoC,CAAC;QACxF,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACnF,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,KAAK,CAAC,eAAe,CAAC,UAA8B,EAAE;QACpD,OAAO,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/F,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,OAA2B;QACpD,MAAM,cAAc,GAAG,YAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxF,MAAM,aAAa,GAAG,YAAY,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;QACvE,MAAM,WAAW,GAAG,YAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC9E,MAAM,YAAY,GAAG,YAAY,CAAC,2BAA2B,CAAC,WAAW,CAAC,CAAC;QAC3E,MAAM,iBAAiB,GAAa,EAAE,CAAC;QACvC,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAE3B,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;YAClC,kBAAkB,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;YAC5E,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAEzF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,YAAY,CAAC,oBAAoB,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;gBACzD,kBAAkB,IAAI,MAAM,YAAY,CAAC,6BAA6B,CACpE,WAAW,EACX,KAAK,EACL,IAAI,CACL,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,YAAY,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,kBAAkB;YAClB,kBAAkB;YAClB,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC;SACpD,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK;QACH,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,WAAW;QACT,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;QAC7B,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC9C,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1C,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAClD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU;QACd,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,MAAM,YAAY,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;QACvF,MAAM,YAAY,CAAC,gBAAgB,CACjC,GAAG,EAAE,CACH,YAAY,CAAC,gBAAgB,CAC3B,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,UAAU,CAChB,EACH,MAAM,CACP,CAAC;QACF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,cAAc,CAAC,MAAM,EAAE,8BAA8B,CAAC,CAAC;IAC1F,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU;QACd,MAAM,MAAM,GAAc,EAAE,CAAC;QAE7B,MAAM,YAAY,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;QAEjF,MAAM,YAAY,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,CAAC;QACrE,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;QAC9B,MAAM,YAAY,CAAC,gBAAgB,CACjC,GAAG,EAAE,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,EACpD,MAAM,CACP,CAAC;QACF,MAAM,YAAY,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;QAC9F,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,CAAC;QACvC,MAAM,YAAY,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,CAAC;QAC9F,MAAM,YAAY,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,CAAC;QAC1F,MAAM,YAAY,CAAC,gBAAgB,CACjC,GAAG,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,EACtD,MAAM,CACP,CAAC;QACF,MAAM,YAAY,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;QACvE,MAAM,YAAY,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;QAC7E,MAAM,YAAY,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,EAAE,MAAM,CAAC,CAAC;QAC3F,MAAM,YAAY,CAAC,gBAAgB,CAAC,GAAG,EAAE;YACvC,YAAY,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QAChD,CAAC,EAAE,MAAM,CAAC,CAAC;QAEX,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,MAAM,IAAI,cAAc,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,8BAA8B,CAAC,CAAC;QAC/F,CAAC;QACD,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,kBAAkB,CAAC,MAAiB;QACxC,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC/C,MAAM,YAAY,CAAC,gBAAgB,CAAC,GAAG,EAAE;gBACvC,gBAAgB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;gBAC1C,sBAAsB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC5C,CAAC,EAAE,MAAM,CAAC,CAAC;QACb,CAAC;IACH,CAAC;CACF;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAyB,MAAM,CAAC,MAAM,CAAC;IACtE;;;;;;OAMG;IACH,iBAAiB,CAAC,OAAuB,EAAE,IAAoB;QAC7D,MAAM,SAAS,GAAG,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QACtC,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/C,OAAO,MAAM,EAAE,OAAO,KAAK,OAAO,IAAI,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC;YACrE,CAAC,CAAC,MAAM,CAAC,UAAU;YACnB,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;IACD,UAAU,CAAC,OAAuB;QAChC,MAAM,KAAK,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAC;QAC7F,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC;IAED,SAAS,CAAC,OAAuB;QAC/B,MAAM,KAAK,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,KAAK,KAAK,SAAS;YACrB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,wCAAwC,CAAC,CAAC,CAAC;QACjF,OAAO,KAAK,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IAED,aAAa,CAAC,OAAuB,EAAE,MAAiB;QACtD,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QAClF,CAAC;QACD,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACpC,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QAClF,CAAC;QACD,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAC/C,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,SAAS,KAAK,SAAS;YACzB,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QAClF,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAChC,MAAM,OAAO,GAAG,2BAA2B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QAClF,CAAC;QACD,yBAAyB,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3D,CAAC;IAED,SAAS,CAAC,OAAuB;QAC/B,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QAClF,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,SAAS,CAAC,KAAc;QACtB,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,KAAK,IAAI;YACd,aAAa,CAAC,GAAG,CAAC,KAA8B,CAAC,CAClD,CAAC;IACJ,CAAC;IAED,KAAK,CACH,OAA8B,EAC9B,qBAAqC,EACrC,SAAsB;QAEtB,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEzC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,SAAS,CAAC,2DAA2D,CAAC,CAAC;QACnF,CAAC;QAED,OAAO,KAAK,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC;IACjD,CAAC;IAED,gBAAgB,CACd,OAAuB,EACvB,OAAe,EACf,UAA2B;QAE3B,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEhD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,SAAS,CAAC,8DAA8D,CAAC,CAAC;QACtF,CAAC;QAED,OAAO,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACxC,CAAC;IAED,eAAe,CAAC,OAAuB,EAAE,KAAY;QACnD,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,SAAS,CAAC,gEAAgE,CAAC,CAAC;QACxF,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,iBAAiB,CAAC,OAAuB,EAAE,KAAY;QACrD,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAC3C,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC,kBAAkB,EAAE,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC7F,QAAQ,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;QACjC,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,sBAAsB,CACpB,OAAuB,EACvB,QAGC;QAED,MAAM,SAAS,GAAG,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,SAAS,CAAC,uEAAuE,CAAC,CAAC;QAC/F,CAAC;QACD,OAAO,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,aAAa,CAAC,OAAuB;QACnC,OAAO,YAAY,CAAC,kBAAkB,CAAC,YAAY,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,WAAW,CAAC,OAAuB;QACjC,OAAO,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,cAAc,CAAC,OAAuB;QACpC,MAAM,cAAc,GAAG,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAE5D,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QAClF,CAAC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,oBAAoB,CAAC,OAAuB;QAC1C,MAAM,OAAO,GAAG,2BAA2B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,SAAS,CAAC,wEAAwE,CAAC,CAAC;QAChG,CAAC;QACD,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAED,mBAAmB,CACjB,OAAuB,EACvB,EAAU,EACV,QAAyF;QAEzF,MAAM,OAAO,GAAG,2BAA2B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,SAAS,CAAC,oEAAoE,CAAC,CAAC;QAC5F,CAAC;QACD,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IACvC,CAAC;IAED,QAAQ,CAAC,OAAuB;QAC9B,MAAM,UAAU,GAAG,0BAA0B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAE3D,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,IAAI,SAAS,CAAC,2DAA2D,CAAC,CAAC;QACnF,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;CACF,CAAC,CAAC;AAwEH;;GAEG;AACH,MAAM,OAAO,qBAAqB;IACvB,aAAa,CAAsB;IAEnC,mBAAmB,GAAG,IAAI,GAAG,EAAqB,CAAC;IAEnD,iBAAiB,GAAG,IAAI,GAAG,EAAmB,CAAC;IAE/C,UAAU,GAAuB,EAAE,CAAC;IAEpC,WAAW,GAAwB,EAAE,CAAC;IAEtC,eAAe,GAAuD,EAAE,CAAC;IAEzE,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE1C,YAAY,GAAG,IAAI,GAAG,EAAwB,CAAC;IAE/C,2BAA2B,GAAG,IAAI,GAAG,EAAgC,CAAC;IAE/E,iBAAiB,GAAqB,sBAAsB,CAAC,WAAW,EAAE,CAAC;IAE3E,eAAe,CAA6B;IAE5C,WAAW,CAAyB;IAEpC,qBAAqB,CAAwC;IAE7D,oBAAoB,GAAG,KAAK,CAAC;IAE7B,sBAAsB,CAA2B;IAEjD;;OAEG;IACH;QACE,8BAA8B,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAyB,EAAE,CAC1E,IAAI,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;OAKG;IACH,YAAsB,YAAiC,EAAE,KAAiC;QACxF,YAAY,CAAC,iCAAiC,CAC5C,KAAK,EACL,sDAAsD,CACvD,CAAC;QACF,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QAClE,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,qBAAqB,EAAE,SAAS,EAAE,EAAE,CAC3D,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,SAAS,CAAC,CACvD,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,IAAI,IAAI;QACN,OAAO,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC5D,CAAC;IAED;;;;OAIG;IACH,IAAI,UAAU;QACZ,OAAO,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IACnE,CAAC;IAED;;;;OAIG;IACH,aAAa;QACX,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;IACxC,CAAC;IA8BD;;;;;;;OAOG;IACH,GAAG,CACD,KAA0C,EAC1C,OAAgD;QAEhD,IAAI,gBAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YACxC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,SAAS,CAAC,gEAAgE,CAAC,CAAC;YACxF,CAAC;YACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,YAAY,CAAC,kBAAkB,CAAC,KAAK,EAAE,uCAAuC,CAAC,CAAC;QAChF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC;QAC7E,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CACJ,UAAkC;QAElC,YAAY,CAAC,yBAAyB,CAAC,UAAU,EAAE,0CAA0C,CAAC,CAAC;QAC/F,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;OASG;IACH,oBAAoB,CAAC,UAAiD;QACpE,IAAI,UAAU,YAAY,iBAAiB,EAAE,CAAC;YAC5C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,uBAAuB,CAAC,UAA6B;QACnD,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACH,kBAAkB,CAChB,UAA4E;QAE5E,IACE,UAAU,YAAY,oBAAoB;YAC1C,UAAU,YAAY,uBAAuB,EAC7C,CAAC;YACD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACtC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;OAQG;IACH,WAAW,CAAC,QAA0B;QACpC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,qBAAqB,CAAC,UAA2B;QAC/C,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,cAA8B;QAC/C,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,QAAoB;QACzB,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACH,mBAAmB;QACjB,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;OAQG;IACH,wBAAwB,CAAC,QAAmC;QAC1D,IAAI,CAAC,qBAAqB,GAAG,QAAQ,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,QAA0B;QAC7C,IAAI,CAAC,iBAAiB,GAAG,YAAY,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,yBAAyB,CAAC,IAAkB;QAC1C,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QACD,YAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,UAAU,CACpB,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,EACvB,IAAI,CAAC,eAAe,IAAI,IAAI,sBAAsB,EAAE,EACpD,EAAE,EACF,IAAI,CAAC,WAAW,CACjB,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,UAAU;QACd,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,qBAAsC,EACtC,SAAsB;QAEtB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QAC7E,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;QAExE,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAC7B,YAAY,EACZ,IAAI,CAAC,eAAe,IAAI,qBAAqB,IAAI,IAAI,sBAAsB,EAAE,EAC7E,SAAS,CAAC,UAAU,EACpB,IAAI,CAAC,WAAW,IAAI,SAAS,CAC9B,CAAC;QACF,IAAI,CAAC;YACH,MAAM,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;YACxB,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,MAAM,IAAI,cAAc,CACtB,CAAC,KAAK,EAAE,UAAU,CAAC,EACnB,mDAAmD,CACpD,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,UAAU,CACR,YAAuC,EACvC,cAA8B,EAC9B,aAAyD,EAAE,EAC3D,EAAe;QAEf,MAAM,SAAS,GACb,IAAI,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC3F,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACvC,MAAM,sBAAsB,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;QACjD,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,gBAAgB,CAC1B,sBAAsB,EACtB,cAAc,EACd,UAAU,EACV,SAAS,EACT,EAAE,CACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,gBAAgB,CACd,YAAuC,EACvC,cAA8B,EAC9B,UAAsD,EACtD,SAAgC,EAChC,EAAe;QAEf,YAAY,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;QACjD,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;QACxD,IAAI,EAAE,KAAK,SAAS;YAAE,cAAc,CAAC,EAAE,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACrF,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACnE,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,MAAM;YAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACjF,cAAc,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE;YAC7C,GAAG,YAAY,CAAC,8BAA8B,CAAC,YAAY,CAAC;YAC5D,GAAG,YAAY,CAAC,8BAA8B,CAAC,UAAU,CAAC;SAC3D,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QACtF,YAAY,CAAC,iBAAiB,CAC5B,OAAO,EACP,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,UAAU,EAChB,YAAY,CAAC,oBAAoB,CAAC;YAChC,GAAG,WAAW,CAAC,MAAM;YACrB,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;SAC5D,CAAC,CACH,CAAC;QACF,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,gBAAgB,CACd,YAAuC,EACvC,cAA8B,EAC9B,EAAe;QAEf,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,YAAY,KAAK,OAAO,CAAC,CAAC;QACxF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAChC,IAAI,EAAE,KAAK,SAAS;YAAE,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;QACzF,eAAe,CAAC,EAAE,CAAC,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,oBAAoB;YAC5B,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAC;QAC9E,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,cAAc,CAAC;YACxD,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAC;QAC9E,IAAI,CAAC,8BAA8B,CAAC,QAAQ,CAAC,cAAc,CAAC;YAC1D,MAAM,IAAI,SAAS,CAAC,wDAAwD,CAAC,CAAC;QAChF,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACvC,KAAK,MAAM,UAAU,IAAI,MAAM,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,gBAAgB,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;YAC/D,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE;gBACxE,MAAM,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAC;YACtE,IAAI,MAAM,CAAC,EAAE,KAAK,SAAS;gBACzB,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAC;YAC9E,IAAI,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBACrD,MAAM,IAAI,SAAS,CAAC,+DAA+D,CAAC,CAAC;QACzF,CAAC;IACH,CAAC;IAED;;OAEG;IACH,yBAAyB,CAAC,MAAiC;QACzD,MAAM,SAAS,GAAG,IAAI,GAAG,CACvB,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CACjD,UAAU,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CACrE,CACF,CAAC;QACF,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CACnD,UAAU,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CACrE,CACF,CAAC;QACF,KAAK,MAAM,UAAU,IAAI,MAAM,EAAE,CAAC;YAChC,IACE,gBAAgB;iBACb,oBAAoB,CAAC,UAAU,CAAC;iBAChC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;gBAE3D,MAAM,IAAI,SAAS,CAAC,2DAA2D,CAAC,CAAC;YACnF,IACE,gBAAgB;iBACb,sBAAsB,CAAC,UAAU,CAAC;iBAClC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;gBAE7D,MAAM,IAAI,SAAS,CAAC,6DAA6D,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;IAED,iBAAiB,CAAC,YAAuC;QACvD,MAAM,KAAK,GAAG;YACZ,GAAG,YAAY,CAAC,0BAA0B,CAAC,YAAY,CAAC;YACxD,GAAG,IAAI,CAAC,iBAAiB;SAC1B,CAAC;QACF,OAAO;YACL,MAAM,EAAE,YAAY,CAAC,sBAAsB,CAAC,KAAK,CAAC;YAClD,MAAM,EAAE;gBACN,GAAG,YAAY,CAAC,sBAAsB,CAAC,KAAK,CAAC;gBAC7C,GAAG,YAAY,CAAC,gCAAgC,CAAC,YAAY,CAAC;aAC/D;SACF,CAAC;IACJ,CAAC;IAED,WAAW,CACT,YAAuC,EACvC,cAA8B,EAC9B,WAAoC,EACpC,SAAgC;QAEhC,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC;YAChC,GAAG,IAAI,CAAC,mBAAmB;YAC3B,GAAG,YAAY,CAAC,4BAA4B,CAAC,YAAY,CAAC;SAC3D,CAAC,CAAC;QACH,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACrF,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;QACzD,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC1C,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC9B,MAAM,SAAS,GAAG,IAAI,eAAe,CACnC,UAAU,EACV,QAAQ,EACR,MAAM,CAAC,QAAQ,EACf,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAC9B,CAAC;QACF,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC;QAChC,OAAO;YACL,UAAU;YACV,UAAU;YACV,gBAAgB,EAAE,MAAM,CAAC,UAAU;YACnC,QAAQ;YACR,cAAc,EAAE,MAAM,CAAC,QAAQ;YAC/B,SAAS;YACT,WAAW,EAAE,MAAM,CAAC,KAAK;YACzB,UAAU,EAAE,MAAM,CAAC,IAAI;SACxB,CAAC;IACJ,CAAC;IAED,iBAAiB,CACf,cAA8B,EAC9B,WAAuC,EACvC,SAAgC;QAEhC,MAAM,UAAU,GAAG,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAChG,MAAM,gBAAgB,GAAG,UAAU,CAAC,YAAY;YAC9C,CAAC,CAAC,IAAI,UAAU,CAAC,YAAY,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC;YAC5E,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,gBAAgB,KAAK,SAAS;YAAE,SAAS,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QAClF,MAAM,cAAc,GAAG,cAAc,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;QACxE,SAAS,CAAC,cAAc,GAAG,cAAc,CAAC;QAC1C,KAAK,MAAM,UAAU,IAAI,WAAW;YAAE,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC1E,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC;YAC5B,OAAO,EAAE,YAAY,CAAC,iBAAiB,CAAC,UAAU,CAAC;YACnD,cAAc;SACf,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC;QACpC,OAAO;YACL,UAAU,EAAE,gBAAgB;YAC5B,QAAQ,EAAE,cAAc;YACxB,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,UAAU;SACjB,CAAC;IACJ,CAAC;IAED,kBAAkB,CAChB,UAAsD,EACtD,KAAwB;QAExB,YAAY,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,OAAO,GACX,UAAU,CAAC,MAAM,KAAK,CAAC;YACrB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,IAAI,wBAAwB,CAC1B,YAAY,CAAC,uBAAuB,CAClC,UAAU,EACV,IAAI,CAAC,oBAAoB,EAAE,EAC3B,KAAK,CAAC,SAAS,CAChB,CACF,CAAC;QACR,MAAM,OAAO,GAAG,OAAO,EAAE,iBAAiB,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,OAAO,EAAE,eAAe,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,OAAO,EAAE,eAAe,EAAE,CAAC;QACzC,IAAI,OAAO,KAAK,SAAS;YAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC9D,IAAI,KAAK,KAAK,SAAS;YAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACxD,IAAI,KAAK,KAAK,SAAS;YAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,aAAa,CACX,cAA8B,EAC9B,KAAwB,EACxB,SAAgC;QAEhC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;YACtB,OAAO,EAAE,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC;YAC3D,cAAc;SACf,CAAC,CAAC;QACH,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC;QACxB,MAAM,QAAQ,GACZ,SAAS,CAAC,QAAQ;YAClB,IAAI,2BAA2B,CAC7B,YAAY,CAAC,gCAAgC,CAAC,IAAI,CAAC,aAAa,CAAC,EACjE,cAAc,CACf,CAAC;QACJ,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,mBAAmB,CACrC,KAAK,EACL,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,cAAc,EACpB,QAAQ,CACT,CAAC;QACF,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC;QAC5B,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IACtC,CAAC;IAED,cAAc,CACZ,YAAuC,EACvC,cAA8B,EAC9B,KAAwB,EACxB,OAA4B,EAC5B,EAAe;QAEf,OAAO,YAAY,CAAC,oBAAoB,CACtC,IAAI,CAAC,aAAa,EAClB,cAAc,EACd,YAAY,EACZ,IAAI,CAAC,iBAAiB,EACtB,KAAK,EACL,OAAO,EACP,EAAE,CACH,CAAC;IACJ,CAAC;IAED,UAAU,CAAC,SAAgC,EAAE,KAAc;QACzD,MAAM,aAAa,GAAc,EAAE,CAAC;QACpC,YAAY,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,aAAa,CAAC,CAAC;QAClF,YAAY,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,aAAa,EAAE,EAAE,aAAa,CAAC,CAAC;QACvF,IAAI,SAAS,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACpC,YAAY,CAAC,cAAc,CACzB,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,EAC7D,aAAa,CACd,CAAC;QACJ,CAAC;QACD,YAAY,CAAC,cAAc,CACzB,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,EAC1D,aAAa,CACd,CAAC;QACF,YAAY,CAAC,cAAc,CACzB,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,EAChE,aAAa,CACd,CAAC;QACF,YAAY,CAAC,iBAAiB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACzD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,cAAc,CACtB,CAAC,KAAK,EAAE,GAAG,aAAa,CAAC,EACzB,8CAA8C,CAC/C,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,WAA4C;QAIxE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC3F,CAAC;QAED,MAAM,IAAI,GAAG,YAAY,CAAC,4BAA4B,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACpF,MAAM,SAAS,GAAG,IAAI,0BAA0B,EAAE,CAAC;QACnD,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;QAC/E,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC;QACxC,MAAM,UAAU,GAAG,CAAC,MAAM,SAAS;aAChC,IAAI,CAAC;YACJ,OAAO,EAAE,CAAC,cAAc,CAAC;YACzB,GAAG,YAAY,CAAC,0BAA0B,CAAC,WAAW,CAAC;SACxD,CAAC;aACD,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YACxB,YAAY,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC;YACzD,MAAM,KAAK,CAAC;QACd,CAAC,CAAC,CAAwC,CAAC;QAC7C,MAAM,QAAQ,GAAG,YAAY,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;QAEpE,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAChC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAC7B,YAAY,CAAC,yBAAyB,CACpC,UAAU,EACV,UAAU,EACV,QAAQ,EACR,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,UAAU,CAAC,CACjD,CACF,CACF,CAAC;QACF,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAC9B,UAAU,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC9B,QAAQ,CAAC,SAAS,CAAC,MAAM,CACvB,CAAC,QAAQ,EAA+C,EAAE,CACxD,QAAQ,CAAC,YAAY,KAAK,YAAY,CACzC,CACF,CACF,CAAC;QACF,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,oBAAoB;QAClB,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IAC3F,CAAC;IAED;;;;;OAKG;IACK,gBAAgB,CAAC,cAA8B;QACrD,OAAO,IAAI,UAAU,CAAC,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,cAAc,CAAC,CAAC;IAC5F,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,WAAW;IACb,SAAS,CAAsB;IAExC;;OAEG;IACH;QACE,oBAAoB,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAe,EAAE,CAAC,IAAI,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC5F,CAAC;IAED;;;;;OAKG;IACH,YAAsB,QAA6B,EAAE,KAAiC;QACpF,YAAY,CAAC,iCAAiC,CAC5C,KAAK,EACL,4CAA4C,CAC7C,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACH,IAAI,UAAU;QACZ,OAAO,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC/D,CAAC;IAED;;;;OAIG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,IAAI,QAAQ;QACV,OAAO,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC;CACF;AAsBD,MAAM,sBAAsB,GAAG,IAAI,OAAO,EAAmC,CAAC;AAoB9E;;GAEG;AACH,MAAM,kBAAmB,SAAQ,KAAK;IAC3B,IAAI,GAAsB,kCAAkC,CAAC;IAE7D,OAAO,CAAS;IAEhB,MAAM,CAAsB;IAErC;;;;;OAKG;IACH,YAAY,OAAe,EAAE,MAA2B;QACtD,KAAK,CAAC,+CAA+C,OAAO,IAAI,CAAC,CAAC;QAClE,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;IACjC;;;;OAIG;IACH,4BAA4B,CAAC,SAAqD;QAChF,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;QACjD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACxC,IAAI,OAAO,CAAC,IAAI,KAAK,oBAAoB,IAAI,OAAO,CAAC,IAAI,KAAK,sBAAsB;oBAClF,SAAS;gBACX,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACvD,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAC3C,IAAI,KAAK,KAAK,SAAS;oBACrB,MAAM,IAAI,KAAK,CACb,8CAA8C,QAAQ,MAAM,KAAK,QAC9D,QAAQ,CAAC,YAAiD,CAAC,IAC9D,GAAG,CACJ,CAAC;gBACJ,cAAc,CAAC,GAAG,CAChB,QAAQ,EACP,QAAQ,CAAC,YAAiD,CAAC,IAAI,CACjE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,uBAAuB,CACrB,SAAqD,EACrD,SAA4B,EAC5B,SAA0B;QAE1B,MAAM,aAAa,GAAG,IAAI,GAAG,EAAiC,CAAC;QAC/D,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAoC,CAAC;YAClE,IAAI,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CAAC,uBAAuB,WAAW,CAAC,IAAI,gCAAgC,CAAC,CAAC;YAC3F,CAAC;YACD,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,QAAQ,GAAwB,EAAE,CAAC;QACzC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAgD,CAAC;YAC/E,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACjD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CACb,iCAAiC,YAAY,CAAC,IAAI,yCAAyC,CAC5F,CAAC;YACJ,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YACvE,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,aAAa,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,kCAAkC,CAAC,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,SAAS,6BAA6B,CAC/G,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACH,cAAc,CAAC,SAAqB,EAAE,MAAiB;QACrD,IAAI,CAAC;YACH,SAAS,EAAE,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,SAAgC,EAAE,MAAiB;QACnE,YAAY,CAAC,cAAc,CAAC,GAAG,EAAE;YAC/B,IAAI,SAAS,CAAC,UAAU,KAAK,SAAS;gBAAE,gBAAgB,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC5F,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,YAAY,CAAC,cAAc,CAAC,GAAG,EAAE;YAC/B,IAAI,SAAS,CAAC,cAAc,KAAK,SAAS;gBACxC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;;gBACjD,SAAS,CAAC,gBAAgB,EAAE,KAAK,EAAE,CAAC;QAC3C,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,YAAY,CAAC,cAAc,CAAC,GAAG,EAAE;YAC/B,IAAI,SAAS,CAAC,QAAQ,KAAK,SAAS;gBAAE,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;;gBAC/E,SAAS,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC;QACrC,CAAC,EAAE,MAAM,CAAC,CAAC;IACb,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,MAA0B;QACtC,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAC9B,KAAK,YAAY,cAAc,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CACrF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,iCAAiC,CAAC,KAAc,EAAE,OAAe;QAC/D,IAAI,KAAK,KAAK,0BAA0B,EAAE,CAAC;YACzC,MAAM,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,YAAiC;QACjD,OAAO,oBAAoB,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;IACxE,CAAC;IAED;;;;;OAKG;IACH,2BAA2B,CAAC,YAAiC;QAC3D,OAAO,8BAA8B,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;IAClF,CAAC;IAED;;;;;;;;;;;OAWG;IACH,oBAAoB,CAClB,YAAiC,EACjC,cAA8B,EAC9B,YAAuC,EACvC,gBAAkC,EAClC,KAAwB,EACxB,OAA4B,EAC5B,EAAe;QAEf,OAAO,uBAAuB,CAAC;YAC7B,QAAQ,EAAE;gBACR,IAAI,EAAE,YAAY,CAAC,IAAI;gBACvB,UAAU,EAAE,YAAY,CAAC,YAAY,CAAC,YAAY,CAAC,WAAW,CAAC;gBAC/D,IAAI,EAAE,YAAY;aACnB;YACD,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,mBAAmB,EAAE,OAAO,CAAC,OAAO;YACpC,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,cAAc;YACd,YAAY;YACZ,gBAAgB;YAChB,GAAG,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC;YACnC,KAAK,EAAE,0BAA0B;SAClC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,YAAiC;QACjD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK;YAC7B,WAAW,EAAE,YAAY,CAAC,WAAW;SACtC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,gCAAgC,CAAC,YAAiC;QAChE,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,gBAAgB;YAChD,WAAW,EAAE,KAAK;SACnB,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,wBAAwB,CAAC,QAA0B;QACjD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC;YAC3E,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;QACvC,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,UAAU;YAEV;;;;;;eAMG;YACH,QAAQ,CAAC,QAAa,EAAE,UAAkB;gBACxC,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,CAAC;gBAC1E,IAAI,KAAK,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;oBACjC,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;gBACxF,CAAC;gBACD,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACpD,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,qBAAqB,CACnB,YAAiC,EACjC,OAA2B;QAE3B,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;YAC9B,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CACb,yCAAyC,YAAY,CAAC,IAAI,CAAC,KAAK,6BAA6B,CAC9F,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9E,CAAC;QAED,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,uCAAuC,YAAY,CAAC,IAAI,CAAC,KAAK,sBAAsB,CACrF,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK;YAC7B,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ;SACjD,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,wBAAwB,CAAC,KAAa;QACpC,IACE,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;YACzB,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC,EACvC,CAAC;YACD,MAAM,IAAI,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;OAMG;IACH,kBAAkB,CAAC,IAAY,EAAE,WAAoB;QACnD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,YAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC;YACjD,WAAW;YACX,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,IAAwB;QAChC,OAAO,YAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,IAAyB;QACzC,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;YACvC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,QAAgC;QACnD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3C,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,IAAI,EAAE,YAAY,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC;SACpD,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,gBAAgB,CAAC,UAA+B,EAAE,YAAqB;QACrE,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,YAAY,CAAC,wBAAwB,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;YAC9E,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,YAAY;SACb,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,mBAAmB,CACjB,QAAgC,EAChC,UAA+B;QAE/B,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,MAAM,EAAE,YAAY,CAAC,oBAAoB,CAAC,QAAQ,CAAC;YACnD,MAAM,EAAE,YAAY,CAAC,iBAAiB,CAAC,UAAU,CAAC;SACnD,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,OAA8B;QAC/C,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,MAAM,EAAE,YAAY,CAAC,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC;YACzD,MAAM,EAAE,YAAY,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC;SACvD,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,QAAkB;QACrC,OAAO,MAAM,CAAC,MAAM,CAClB,cAAc;aACX,YAAY,CAAC,QAAQ,CAAC;aACtB,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;aAC/D,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAC5C,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,WAAsC;QACzD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;QACjD,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,KAAK,MAAM,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC;gBAC/D,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;OAOG;IACH,iBAAiB,CACf,OAAuB,EACvB,QAAkB,EAClB,UAA+B,EAC/B,oBAA6C;QAE7C,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC;YACnC,WAAW,EAAE,MAAM,CAAC,wBAAwB,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC5E,iBAAiB,EAAE,MAAM,CAAC,wBAAwB,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACrF,gBAAgB,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,yBAAyB;YACxE,QAAQ;YACR,oBAAoB;YACpB,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;gBAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;gBAC3C,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS;oBAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBACxF,YAAY,CAAC,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBACvD,QAAQ,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACjC,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;SACF,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAC5B,8EAA8E;QAC9E,2EAA2E;QAC3E,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAClC,mBAAmB,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;OAMG;IACH,gBAAgB,CAAC,OAAuB,EAAE,KAAY;QACpD,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC;QAC9F,IAAI,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;QAChG,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YAC9E,YAAY,CAAC,sBAAsB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACpD,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,OAAuB;QACtC,OAAO,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAC/E,CAAC;IAED;;;;;;OAMG;IACH,eAAe,CAAC,OAAuB,EAAE,KAAY;QACnD,MAAM,WAAW,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,WAAW,KAAK,SAAS;YAC3B,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAC1E,OAAO,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;IACjF,CAAC;IAED;;;;;OAKG;IACH,sBAAsB,CAAC,OAAuB,EAAE,KAAY;QAC1D,MAAM,QAAQ,GAAG,YAAY,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAC3B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,0BAA0B,OAAO,CAAC,IAAI,CAAC,KAAK,6BAA6B,CAAC,CAAC;YAC7F,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,wBAAwB,OAAO,CAAC,IAAI,CAAC,KAAK,sBAAsB,CAAC,CAAC;QACpF,CAAC;QACD,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,OAAuB;QACtC,OAAO,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IACtE,CAAC;IAED;;;;;OAKG;IACH,qBAAqB,CAAC,MAA+B;QACnD,OAAO,CACL,CAAC,SAAS,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;YACtE,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC5D,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAC/E,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,WAAoB;QAC/B,OAAO,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,eAAe,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,OAAuB;QAC1C,MAAM,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEnD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QAClF,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,OAAuB;QACxC,MAAM,WAAW,GAAG,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEtD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,SAAS,CAAC,wDAAwD,CAAC,CAAC;QAChF,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,yBAAyB,CAAC,UAAmB,EAAE,SAAiB;QAC9D,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,SAAS,CAAC,GAAG,SAAS,kCAAkC,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,UAAmB,EAAE,SAAiB;QACvD,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE,CAAC;YACrC,MAAM,IAAI,SAAS,CACjB,GAAG,SAAS,8EAA8E,CAC3F,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,wBAAwB,CAAC,WAA8C;QACrE,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QAED,MAAM,IAAI,KAAK,CACb,wFAAwF;YACtF,mBAAmB,CACtB,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,4BAA4B,CAAC,IAA8B;QACzD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,KAAK,CACb,8EAA8E;YAC5E,yDAAyD,CAC5D,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,8BAA8B,CAAC,IAAkB;QACrD,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;QAC5E,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;QACjE,MAAM,qBAAqB,GAAG,MAAM,YAAY,CAAC,6BAA6B,CAAC,YAAY,CAAC,CAAC;QAE7F,IAAI,YAAY,CAAC,mBAAmB,CAAC,WAAW,EAAE,qBAAqB,CAAC,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CACb,sCAAsC,qBAAqB,wBAAwB;gBACjF,2CAA2C,WAAW,IAAI,CAC7D,CAAC;QACJ,CAAC;QAED,OAAO,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,8BAA8B,CAAC,IAAkB;QACrD,MAAM,QAAQ,GAAG,YAAY,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;QAE9D,IAAI,CAAC;YACH,OAAO,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,4BAA4B,QAAQ,2CAA2C,EAC/E,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,yBAAyB,CAAC,IAAkB;QAC1C,IAAI,IAAI,YAAY,GAAG,EAAE,CAAC;YACxB,OAAO,YAAY,CAAC,WAAW,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,OAAO,YAAY,CAAC,WAAW,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,yBAAyB,CAAC,CAAC;QAC9F,CAAC;QAED,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,WAAW,CAAC,GAAQ,EAAE,KAAa;QACjC,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,GAAG,CAAC,IAAI,kCAAkC,CAAC,CAAC;QAC3E,CAAC;QAED,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,GAAG,CAAC,IAAI,qCAAqC,CAAC,CAAC;QAC9E,CAAC;QAED,OAAO,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,IAAY;QACvB,IAAI,CAAC;YACH,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,uBAAuB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,KAAa;QACrB,OAAO,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,6BAA6B,CAAC,YAAoB;QACtD,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;YAC7C,OAAO,MAAM,QAAQ,CAAC,YAAY,CAAC,CAAC;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,sCAAsC,YAAY,+BAA+B,EACjF,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,mBAAmB,CAAC,aAAqB,EAAE,aAAqB;QAC9D,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QAE5D,OAAO,CACL,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC;YAC7B,YAAY,KAAK,IAAI;YACrB,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;YACtC,UAAU,CAAC,YAAY,CAAC,CACzB,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,0BAA0B,CACxB,WAAmB;QAEnB,MAAM,OAAO,GAAG,6BAA6B,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAEpE,OAAO,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,OAAO,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC3E,CAAC;IAED;;;;OAIG;IACH,8BAA8B,CAAC,WAAmB;QAChD,6BAA6B,CAAC,GAAG,CAC/B,WAAW,EACX,CAAC,6BAA6B,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAC1D,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,yBAAyB,CACvB,UAA+C;QAE/C,MAAM,QAAQ,GAAG,IAAI,uBAAuB,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,IAAI,uBAAuB,EAAE,CAAC;QAE/C,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;OAQG;IACH,yBAAyB,CACvB,UAAgC,EAChC,UAA+C,EAC/C,QAAiC,EACjC,OAAgB;QAEhB,MAAM,SAAS,GAAG,YAAY,CAAC,mBAAmB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC3E,MAAM,QAAQ,GAAG,YAAY,CAAC,qBAAqB,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAErF,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CACrC;YACE,UAAU;YACV,MAAM,EAAE,SAAS,CAAC,WAAW;YAC7B,QAAQ;YACR,MAAM,EAAE,YAAY,CAAC,uBAAuB,CAAC,SAAS,CAAC;SACxD,EACD,OAAO,CACR,CAAC;QACF,OAAO,IAAI,UAAU,CAAC,iBAA0B,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;OAMG;IACH,mBAAmB,CACjB,UAAgC,EAChC,UAA+C;QAE/C,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,IAAI,CACvC,CAAC,QAAQ,EAA2C,EAAE,CACpD,QAAQ,CAAC,YAAY,KAAK,QAAQ,IAAI,QAAQ,CAAC,YAAY,KAAK,UAAU,CAC7E,CAAC;YACF,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,sDAAsD,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC;IAC5F,CAAC;IAED;;;;;;;OAOG;IACH,qBAAqB,CACnB,UAAgC,EAChC,SAAsC,EACtC,QAAiC;QAEjC,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC;QAElF,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,sDAAsD,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC;QAC5F,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACH,uBAAuB,CACrB,SAAsC;QAEtC,OAAO,YAAY,CAAC,aAAa,CAC/B,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YACtC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,oBAAoB,IAAI,OAAO,CAAC,IAAI,KAAK,gBAAgB;gBAC5E,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAC3B,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,oBAAoB,IAAI,OAAO,CAAC,IAAI,KAAK,sBAAsB;gBAClF,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBACzB,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,8BAA8B,CAC5B,SAAqD;QAErD,OAAO,YAAY,CAAC,aAAa,CAC/B,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC7B,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YACrC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,oBAAoB,IAAI,OAAO,CAAC,IAAI,KAAK,gBAAgB;gBAC5E,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAC3B,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,oBAAoB,IAAI,OAAO,CAAC,IAAI,KAAK,sBAAsB;gBAClF,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBACzB,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CACH,CACF,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,aAAa,CACX,OAA0B;QAE1B,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;QAE7C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACjD,CAAC;IAED;;;;OAIG;IACH,qBAAqB,CAAC,YAAuC;QAC3D,MAAM,WAAW,GAAG,IAAI,GAAG,EAAwB,CAAC;QACpD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;QAEzC,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;YACtC,YAAY,CAAC,yBAAyB,CAAC,UAAU,EAAE,uCAAuC,CAAC,CAAC;YAC5F,MAAM,QAAQ,GAAG,YAAY,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;YAC7D,MAAM,YAAY,GAAG,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5D,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CACb,mBAAmB,QAAQ,CAAC,iBAAiB,+CAA+C;oBAC1F,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,IAAI,CAClC,CAAC;YACJ,CAAC;YAED,IAAI,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBACzC,MAAM,IAAI,KAAK,CACb,2BAA2B,QAAQ,CAAC,UAAU,CAAC,IAAI,0BAA0B,CAC9E,CAAC;YACJ,CAAC;YACD,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAErC,IAAI,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACnD,MAAM,IAAI,KAAK,CACb,0BAA0B,QAAQ,CAAC,iBAAiB,0BAA0B,CAC/E,CAAC;YACJ,CAAC;YACD,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QACjD,CAAC;QAED,YAAY,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,YAAuC;QACvD,MAAM,YAAY,GAAG,IAAI,GAAG,EAA6B,CAAC;QAC1D,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,YAAY,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,iBAAiB,CAAC;YAChF,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,gBAAgB,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC,CAAC;QACnF,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;QACnC,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,CAAC,SAAiB,EAAQ,EAAE;YACxC,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;gBAAE,OAAO;YACnC,IAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACtC,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,CAAC;gBAChD,MAAM,IAAI,KAAK,CACb,yDAAyD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAC/E,CAAC;YACJ,CAAC;YACD,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACrB,KAAK,MAAM,UAAU,IAAI,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC3D,IAAI,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC;oBAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YACtD,CAAC;YACD,IAAI,CAAC,GAAG,EAAE,CAAC;YACX,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzB,CAAC,CAAC;QAEF,KAAK,MAAM,SAAS,IAAI,YAAY,CAAC,IAAI,EAAE;YAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC;IAED;;;;;OAKG;IACH,4BAA4B,CAC1B,YAAuC;QAEvC,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACzC,MAAM,UAAU,GAAG,gBAAgB,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YAClE,OAAO,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,0BAA0B,CAAC,YAAuC;QAChE,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACzC,MAAM,UAAU,GAAG,gBAAgB,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YAChE,OAAO,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,gCAAgC,CAC9B,YAAuC;QAEvC,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACzC,MAAM,UAAU,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;YACtE,OAAO,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,sBAAsB,CAAC,WAAuC;QAC5D,OAAO,MAAM,CAAC,MAAM,CAClB,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,CACtF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,sBAAsB,CAAC,WAAuC;QAC5D,OAAO,MAAM,CAAC,MAAM,CAClB,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,YAAY,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,CACrF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,uBAAuB,CAAC,UAA2B;QACjD,MAAM,OAAO,GAAG,CAAC,GAAG,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC;QACjD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAC1D,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;YACxE,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACpF,CAAC;QACD,OAAO,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;IAClC,CAAC;IAED;;;;;OAKG;IACH,8BAA8B,CAC5B,YAAuC;QAEvC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;QAEjD,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;YACtC,KAAK,MAAM,MAAM,IAAI,gBAAgB,CAAC,oBAAoB,CAAC,UAAU,CAAC,EAAE,CAAC;gBACvE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,OAAuB,EAAE,WAAwB;QACpE,YAAY,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC3C,WAAW,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,oBAAoB,CAAC,OAAuB;QAC1C,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACrC,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,MAAM,OAAO,GAAG,2BAA2B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,OAAO,KAAK,SAAS;YAAE,yBAAyB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC1E,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;QACpD,uBAAuB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC/B,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACtC,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrC,uBAAuB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxC,0BAA0B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3C,2BAA2B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5C,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACpC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED;;;;;;;;;;OAUG;IACH,wBAAwB,CACtB,OAA+B,EAC/B,cAA8B,EAC9B,WAAwB,EACxB,WAAkC,EAClC,WAAqB,EACrB,SAA4B;QAE5B,OAAO,MAAM,CAAC,MAAM,CAA4B;YAC9C,cAAc;YACd,aAAa,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,qBAAqB,CAAC,WAAW,CAAC;YACpE,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,sBAAsB,CAAC,OAAO,EAAE,KAAK,CAAC;YAC9E,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,WAAW,CAAC,SAAS,EAAE,EAAE,GAAG,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC;YACxF,MAAM,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAC5B,OAAO,CAAC,KAAK,KAAK,mBAAmB;gBACnC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC;gBACvC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC;YAC3C,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;YAChD,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;SACzF,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,qBAAqB,CAAC,WAAwB;QAClD,IAAI,WAAW,CAAC,UAAU,KAAK,eAAe,EAAE,CAAC;YAC/C,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IACjG,CAAC;IAED;;;;;;OAMG;IACH,sBAAsB,CACpB,OAA+B,EAC/B,KAA0B;QAE1B,IAAI,OAAO,CAAC,UAAU,KAAK,eAAe,EAAE,CAAC;YAC3C,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,0BAA0B,OAAO,CAAC,IAAI,CAAC,KAAK,6BAA6B,CAAC,CAAC;YAC7F,CAAC;YACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAChC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,wBAAwB,OAAO,CAAC,IAAI,CAAC,KAAK,sBAAsB,CAAC,CAAC;QACpF,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK;YACxB,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ;SACjD,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,yBAAyB,CACvB,oBAAmD;QAEnD,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,KAAK,MAAM,kBAAkB,IAAI,oBAAoB,EAAE,CAAC;YACtD,IAAI,CAAC;gBACH,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAC7B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,gBAAgB,CAAC,KAAoB,EAAE,MAAiB;QAC5D,IAAI,CAAC;YACH,MAAM,KAAK,EAAE,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,YAAY,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,gBAAgB,CACpB,UAAsB,EACtB,QAAkB,EAClB,cAAwB,EACxB,SAA0B;QAE1B,IAAI,mBAAmB,GAAG,CAAC,CAAC,CAAC;QAC7B,IAAI,iBAAiB,GAAG,CAAC,CAAC,CAAC;QAC3B,IAAI,uBAAuB,GAAG,CAAC,CAAC,CAAC;QAEjC,GAAG,CAAC;YACF,mBAAmB,GAAG,gBAAgB,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACrE,iBAAiB,GAAG,cAAc,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAC/D,uBAAuB,GAAG,cAAc,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;YAC3E,MAAM,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACzC,MAAM,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACrC,MAAM,cAAc,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAC3C,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC,QACC,gBAAgB,CAAC,iBAAiB,CAAC,UAAU,CAAC,KAAK,mBAAmB;YACtE,cAAc,CAAC,iBAAiB,CAAC,QAAQ,CAAC,KAAK,iBAAiB;YAChE,cAAc,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,uBAAuB,EAC5E;IACJ,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,KAAc,EAAE,MAAiB;QACjD,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;YACpC,MAAM,MAAM,GAAG,KAAK,CAAC,MAA4B,CAAC;YAClD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;YACD,OAAO;QACT,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED;;;;;;OAMG;IACH,2BAA2B,CACzB,UAA0B,EAC1B,YAAoC;QAEpC,YAAY,CAAC,yBAAyB,CAAC,UAAU,EAAE,wCAAwC,CAAC,CAAC;QAC7F,MAAM,QAAQ,GAAG,YAAY,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC7D,YAAY,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAC;QACpD,YAAY,CAAC,qBAAqB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAE7D,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QACzE,MAAM,qBAAqB,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QAEjF,OAAO;YACL,UAAU;YACV,QAAQ;YACR,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC;YACjE,GAAG,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,CAAC;YACzE,MAAM,EAAE,GAAG,EAAE;gBACX,sBAAsB,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,KAAK,EAAE,GAAG,EAAE;gBACV,gBAAgB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YAC5C,CAAC;SACF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,qBAAqB,CAAC,UAA0B,EAAE,YAAoC;QACpF,gBAAgB,CAAC,WAAW,CAAC,UAAU,EAAE;YACvC,OAAO,EAAE,YAAY,CAAC,cAAc;YACpC,cAAc,EAAE,YAAY,CAAC,cAAc;YAC3C,GAAG,CAAC,YAAY,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC;YACjE,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,cAAc,EAAE,IAAI,cAAc,EAAE;YACpC,WAAW,EAAE,YAAY,CAAC,WAAW;YACrC,eAAe,EAAE,YAAY,CAAC,eAAe;YAC7C,SAAS,EAAE,YAAY,CAAC,SAAS;YACjC,mBAAmB,EAAE,YAAY,CAAC,mBAAmB;YACrD,yBAAyB,EAAE,YAAY,CAAC,yBAAyB;YACjE,iBAAiB,EAAE,YAAY,CAAC,iBAAiB;YACjD,mBAAmB,EAAE,YAAY,CAAC,mBAAmB;YACrD,iBAAiB,EAAE,YAAY,CAAC,iBAAiB;YACjD,mBAAmB,EAAE,YAAY,CAAC,mBAAmB;YACrD,uBAAuB,EAAE,YAAY,CAAC,uBAAuB;YAC7D,mBAAmB,EAAE,YAAY,CAAC,mBAAmB;YACrD,iBAAiB,EAAE,YAAY,CAAC,iBAAiB;SAClD,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,UAA0B;QAC3C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAEvD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;YAC7C,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,QAAQ;SACT,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,0BAA0B,CAAC,UAA0B;QACnD,MAAM,QAAQ,GAAG,YAAY,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC7D,MAAM,YAAY,GAAG,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAE5D,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CACb,mBAAmB,QAAQ,CAAC,iBAAiB,+CAA+C;gBAC1F,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,IAAI,CAClC,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,QAA8B;QAC9C,OAAO,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAClC,CAAC,KAAK,EAAE,EAAE,CACR,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAC/E,YAAY,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CACtD,CACJ,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,QAA8B;QACjD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;YAC7C,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;SAC5B,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,qBAAqB,CAAC,YAAsC;QAC1D,MAAM,WAAW,GAAyB,EAAE,CAAC;QAE7C,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACvD,MAAM,UAAU,GAAG,gBAAgB,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YAEhE,IAAI,QAAQ,CAAC,YAAY,KAAK,YAAY,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBACvE,SAAS;YACX,CAAC;YAED,WAAW,CAAC,IAAI,CACd,MAAM,CAAC,MAAM,CAAC;gBACZ,UAAU;gBACV,UAAU;gBACV,aAAa,EAAE,IAAI,GAAG,CACpB,UAAU,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CACrE;gBACD,MAAM,EAAE,QAAQ,CAAC,WAAW;gBAC5B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;aAC/C,CAAC,CACH,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;IAED;;;;;OAKG;IACH,2BAA2B,CACzB,WAA0C;QAE1C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAsC,CAAC;QAE7D,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpC,MAAM,CAAC,GAAG,CACR,UAAU,CAAC,OAAO,EAClB,MAAM,CAAC,MAAM,CAAC;oBACZ,MAAM,EAAE,UAAU,CAAC,MAAM;oBACzB,OAAO,EAAE,UAAU,CAAC,OAAO;iBAC5B,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,gBAAgB,CACpB,OAAuB,EACvB,cAA8B;QAE9B,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAE3D,IAAI,CAAC;YACH,OAAO,MAAM,UAAU,CAAC,IAAI,CAAC;gBAC3B,IAAI,EAAE;oBACJ,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE;oBACxC,EAAE,KAAK,EAAE,0BAA0B,EAAE,SAAS,EAAE,KAAK,EAAE;oBACvD,EAAE,KAAK,EAAE,wBAAwB,EAAE,SAAS,EAAE,KAAK,EAAE;oBACrD,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE;iBACxC;aACF,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,mBAAmB,CAAC,OAAuB;QACzC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACzB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,cAAc,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,OAAuB,EAAE,KAAY;QACxD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,MAAM,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;QAE1C,MAAM,gBAAgB,GAAG,YAAY,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC9D,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,CAAC;QACD,IAAI,cAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,GAAG,KAAK,cAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,GAAG,EAAE,CAAC;YAC5F,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,KAAY;QAC3B,QAAQ,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;YACnC,KAAK,eAAe;gBAClB,OAAO,YAAY,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACzE,KAAK,aAAa;gBAChB,OAAO,YAAY,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YACvF;gBACE,OAAO,SAAS,CAAC;QACrB,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,QAA8B;QAC1C,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,6BAA6B,CACjC,WAA0C,EAC1C,KAAY,EACZ,OAAgB;QAEhB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC;QAEvC,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QAE3F,KAAK,MAAM,UAAU,IAAI,QAAQ,EAAE,CAAC;YAClC,MAAM,UAAU,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;QAClE,CAAC;QACD,KAAK,MAAM,UAAU,IAAI,QAAQ,EAAE,CAAC;YAClC,MAAM,gBAAgB,CAAC,wBAAwB,CAC7C,UAAU,CAAC,UAAU,EACrB,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,EACzB,OAAO,CACR,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IAED;;;;;;OAMG;IACH,kBAAkB,CAAC,KAAY,EAAE,KAAc;QAC7C,OAAO,IAAI,kBAAkB,CAC3B,KAAK,CAAC,EAAE,EAAE,KAAK,IAAI,WAAW,EAC9B,YAAY,CAAC,mBAAmB,CAAC,KAAK,CAAC,CACxC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,kBAAkB,CAAC,KAAa,EAAE,KAAa;QAC7C,OAAO,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IAC3E,CAAC;IAED;;;;;OAKG;IACH,mBAAmB,CAAC,KAAc;QAChC,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO,MAAM,CAAC,MAAM,CAAC;gBACnB,IAAI,EAAE,YAAY,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,EAAE,gBAAgB,CAAC,IAAI,OAAO;gBAC9E,OAAO,EAAE,YAAY,CAAC,kBAAkB,CAAC,KAAK,CAAC,OAAO,EAAE,gBAAgB,CAAC;aAC1E,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,YAAY,CAAC,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC;SAC1E,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,YAAY,CAAC,MAAe,EAAE,QAA8B;QAC1D,MAAM,KAAK,GAAG,YAAY,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAE/E,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CACb,qBAAqB,QAAQ,CAAC,iBAAiB,wBAAwB,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CACjG,CAAC;QACJ,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;OAMG;IACH,eAAe,CAAC,MAAe,EAAE,SAA+C;QAC9E,OAAQ,MAAkC,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC;CACF,CAAC,CAAC;AAMH;;;;GAIG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAGvC,MAAM,CAAC,MAAM,CAAC;IACjB,eAAe,CAAC,OAAuB,EAAE,KAAY;QACnD,OAAO,YAAY,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IACD,KAAK,CAAC,OAAuB;QAC3B,OAAO,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;CACF,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"bounded-context.js","sourceRoot":"","sources":["../../src/context/bounded-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,SAAS,IAAI,WAAW,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGxD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAgB,MAAM,oBAAoB,CAAC;AAEvF,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAEhG,OAAO,EAAE,QAAQ,EAAsB,MAAM,0BAA0B,CAAC;AACxE,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,GAIf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAKlF,OAAO,EACL,WAAW,EACX,UAAU,EACV,sBAAsB,EACtB,YAAY,EACZ,YAAY,GAIb,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,EAC5B,cAAc,GACf,MAAM,sCAAsC,CAAC;AAE9C;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAiB,IAAI,YAAY,CAAC,qBAAqB,CAAC,CAAC;AAEtF,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAErE,OAAO,EACL,QAAQ,EACR,cAAc,EACd,mBAAmB,GAGpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAEL,iBAAiB,GAGlB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAoB,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAuB,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EACL,UAAU,EACV,gBAAgB,GAUjB,MAAM,6BAA6B,CAAC;AAMrC,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EACL,uBAAuB,GAIxB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,uBAAuB,GAExB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAClG,OAAO,EACL,2BAA2B,GAE5B,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAyB,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAChG,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EACL,wBAAwB,GAEzB,MAAM,0CAA0C,CAAC;AAwXlD;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAChD,kBAAkB;IAElB;;OAEG;IACM,KAAK,CAAU;IAExB;;;;OAIG;IACH,YAAY,KAAc;QACxB,KAAK,CAAC,0EAA0E,CAAC,CAAC;QAClF,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;CACF;AAMD,MAAM,0BAA0B,GAA+B,MAAM,CAAC,MAAM,CAAC;IAC3E,0BAA0B,EAAE,IAAI;CACjC,CAAC,CAAC;AACH,MAAM,qBAAqB,GAAG,iDAAiD,CAAC;AAChF,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAC7B,MAAM,cAAc,GAAG,0BAA0B,CAAC;AAClD,MAAM,qBAAqB,GAAG,UAAU,CAAC;AACzC,MAAM,6BAA6B,GAAG,IAAI,GAAG,EAAkB,CAAC;AAChE,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAGjC,CAAC;AACJ,MAAM,qBAAqB,GAAG,IAAI,OAAO,EAAyC,CAAC;AACnF,MAAM,oBAAoB,GAAG,IAAI,OAAO,EAA+B,CAAC;AACxE,MAAM,uBAAuB,GAAG,IAAI,OAAO,EAAkC,CAAC;AAC9E,MAAM,0BAA0B,GAAG,IAAI,OAAO,EAA6C,CAAC;AAC5F,MAAM,2BAA2B,GAAG,IAAI,OAAO,EAAuC,CAAC;AACvF,MAAM,cAAc,GAAG,IAAI,OAAO,EAA6B,CAAC;AAChE,MAAM,uBAAuB,GAAG,IAAI,OAAO,EAAmC,CAAC;AAC/E,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAAiD,CAAC;AACvF,MAAM,sBAAsB,GAAG,IAAI,OAAO,EAA+C,CAAC;AAC1F,MAAM,qBAAqB,GAAG,IAAI,OAAO,EAGtC,CAAC;AACJ,MAAM,eAAe,GAAG,IAAI,OAAO,EAAkB,CAAC;AACtD,MAAM,kBAAkB,GAAG,IAAI,OAAO,EAGnC,CAAC;AACJ,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAGpC,CAAC;AACJ,MAAM,kBAAkB,GAAG,IAAI,OAAO,EAAmD,CAAC;AAC1F,MAAM,aAAa,GAAG,IAAI,OAAO,EAG9B,CAAC;AA+QJ,IAAI,uBAAwF,CAAC;AAC7F,IAAI,8BAES,CAAC;AACd,IAAI,oBAC6F,CAAC;AAElG;;GAEG;AACH,MAAM,OAAO,cAAc;IAChB,SAAS,CAAyB;IAElC,WAAW,CAAa;IAExB,SAAS,CAAW;IAEpB,eAAe,CAAW;IAE1B,UAAU,CAAkB;IAE5B,gBAAgB,CAAkB;IAElC,cAAc,CAAgB;IAE9B,YAAY,CAAwB;IAEpC,gBAAgB,CAAW;IAE3B,iBAAiB,CAAmB;IAEpC,uBAAuB,GAA2B,EAAE,CAAC;IAErD,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE7C,eAAe,CAAiB;IAEhC,GAAG,CAAyB;IAE5B,MAAM,CAAQ;IAEd,YAAY,CAAQ;IAEpB,oBAAoB,CAAsB;IAEnD,eAAe,CAA6B;IAEnC,YAAY,GAAc,EAAE,CAAC;IAEtC,OAAO,CAA4B;IAEnC;;OAEG;IACH;QACE,uBAAuB,GAAG,CAAC,KAAK,EAAkB,EAAE,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;IACjF,CAAC;IAED;;;;OAIG;IACH,YAAsB,KAA6B;QACjD,YAAY,CAAC,iCAAiC,CAC5C,KAAK,CAAC,KAAK,EACX,+CAA+C,CAChD,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,cAAc,CAAC;QAC5C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC,mBAAmB,CAAC;QACtD,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,cAAc,CAAC;QAC5C,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC;QACpB,IAAI,CAAC,iBAAiB,GAAG,YAAY,CAAC,wBAAwB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACvF,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC;YACpC,oBAAoB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE;YACnE,IAAI,EAAE,CAAC,OAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;SAC3D,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;YAClC,kBAAkB,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC;YAC3E,IAAI,EAAE,CAAC,KAAY,EAAE,EAAE,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC;SACnE,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC5D,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,WAAW,CAAC;QACzC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC,eAAe,CAAC;QACjD,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;QACjE,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,oBAAoB,CAAC,WAAwB;QAC3C,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS;YAAE,OAAO;QACnC,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,CACpD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,KAAK,OAAO,CAC1C,CAAC;QACF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACtC,IAAI,CAAC,eAAe,GAAG,IAAI,cAAc,CACvC;YACE,YAAY,EAAE,YAAY,CAAC,MAAM;YACjC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CACtB,WAAW,CAAC,IAAI,CAAC;gBACf,KAAK,EAAE,EAAE;gBACT,MAAM;gBACN,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;aAC1C,CAAC;YACJ,KAAK,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;gBACnB,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;gBACvC,IAAI,UAAU,KAAK,SAAS;oBAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;gBACxF,OAAO,IAAI,CAAC,WAAW,CACrB,UAAU,EACV,WAAW,CAAC,UAAU,KAAK,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAC5D,CAAC;YACJ,CAAC;SACF,EACD,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EACpC,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,EAAE;gBAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnE,CAAC,CACF,CAAC;QACF,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;IAC/B,CAAC;IAED;;;;;;OAMG;IACH,WAAW,CAAC,UAA0B,EAAE,QAA8B;QACpE,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CACxC,IAAI,CAAC,SAAS,CAAC,UAAU,KAAK,aAAa,EAC3C,QAAQ,CACT,CAAC;QACF,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC;gBACjB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK;gBACzB,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC;gBAC1C,UAAU,CAAC,iBAAiB;aAC7B,CAAC;YACF,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACxB,gBAAgB,CAAC,qBAAqB,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC;YAC5E,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC;SAC3F,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,eAAe,CAAC,cAA8B;QAC5C,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAClD,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC;YACvC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK;YACtC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU;YACrC,cAAc;SACf,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,CAAC,QAAkB,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtE,MAAM,WAAW,GAAG,IAAI,gBAAgB,CACtC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EACzB,iBAAiB,EACjB,UAAU,EACV,IAAI,CAAC,iBAAiB,CACvB,CAAC;QACF,MAAM,eAAe,GAAG,IAAI,oBAAoB,CAC9C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EACzB,iBAAiB,EACjB,UAAU,CACX,CAAC;QACF,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;IAC1E,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,KAA6B,EAAE,QAA8B;QAC9E,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QACpE,sBAAsB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACxD,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,CACjD,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC,CAC9D,CAAC;QACF,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;QACnF,qBAAqB,CAAC,GAAG,CACvB,IAAI,EACJ,YAAY,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,CACnE,CAAC;QACF,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;QACrD,uBAAuB,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;QACxD,2BAA2B,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACjE,uBAAuB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACnD,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE;YAC3B,KAAK,EAAE,GAAG,EAAE;gBACV,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,CAAC;YACD,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE;SAC/B,CAAC,CAAC;QACH,0BAA0B,CAAC,GAAG,CAC5B,IAAI,EACJ,YAAY,CAAC,wBAAwB,CACnC,IAAI,CAAC,SAAS,EACd,KAAK,CAAC,cAAc,EACpB,QAAQ,CAAC,WAAW,EACpB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,gBAAgB,EACrB,QAAQ,CAAC,iBAAiB,CAC3B,CACF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,YAAuC,EAAE,WAAwB;QACjF,IAAI,CAAC;YACH,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;YACzC,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,CAAC;QACpC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,YAAY,CAAC,oBAAoB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;YACvD,CAAC;YAAC,OAAO,YAAY,EAAE,CAAC;gBACtB,MAAM,IAAI,cAAc,CACtB,CAAC,KAAK,EAAE,YAAY,CAAC,EACrB,qEAAqE,CACtE,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,qBAAqB,CAAC,YAAuC;QAC3D,MAAM,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;QAErE,IAAI,CAAC;YACH,KAAK,MAAM,kBAAkB,IAAI,oBAAoB,EAAE,CAAC;gBACtD,YAAY,CAAC,0BAA0B,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;YACzE,CAAC;YACD,KAAK,MAAM,kBAAkB,IAAI,oBAAoB,EAAE,CAAC;gBACtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,CAAC,WAAW,EAAE;oBAC5D,OAAO,EAAE,YAAY,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,QAAQ,CAAC;iBACrE,CAAC,CAAC;gBACH,kBAAkB,CAAC,MAAM,EAAE,CAAC;gBAC5B,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;gBAC/D,IAAI,kBAAkB,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;oBACvD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;gBACnE,CAAC;gBACD,IAAI,kBAAkB,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;oBAC3D,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,CAAC;gBAC3E,CAAC;gBACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,oBAAoB,CAAC,YAAuC;QAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACpD,MAAM,oBAAoB,GAAyB,EAAE,CAAC;QACtD,IAAI,CAAC;YACH,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;gBACtC,oBAAoB,CAAC,IAAI,CACvB,YAAY,CAAC,2BAA2B,CAAC,UAAU,EAAE,YAAY,CAAC,CACnE,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,uBAAuB;QACrB,MAAM,YAAY,GAA2B;YAC3C,IAAI,EAAE,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YACjD,cAAc,EAAE,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YACnE,cAAc,EAAE,IAAI,CAAC,eAAe;YACpC,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;YACnD,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,eAAe,EAAE,IAAI,CAAC,gBAAgB;YACtC,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,mBAAmB,EAAE,CAAC,MAAM,EAAE,EAAE;gBAC9B,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3D,CAAC;YACD,yBAAyB,EAAE,CAAC,MAAM,EAAE,EAAE;gBACpC,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;YACjE,CAAC;YACD,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC3B,KAAK,CAAC,OAAO,EAAE,SAAS,KAAK,SAAS;gBACpC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC;gBACrC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,KAAK,CAAC;YAClD,mBAAmB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC;YAC1F,mBAAmB,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CACrC,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC;YACrE,uBAAuB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC;YAC7E,mBAAmB,EAAE,CAAC,MAAM,EAAE,EAAE;gBAC9B,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;YAC9C,CAAC;YACD,iBAAiB,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,EAAE;gBAC1C,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;YACrE,CAAC;SACF,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,iBAAiB,CAAC,KAAc,EAAE,oBAAmD;QACnF,MAAM,WAAW,GAAG,YAAY,CAAC,yBAAyB,CAAC,oBAAoB,CAAC,CAAC;QACjF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,cAAc,CACtB,CAAC,KAAK,EAAE,GAAG,WAAW,CAAC,EACvB,sFAAsF,CACvF,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,YAAY,CAAC,IAAY;QAC9B,OAAO,YAAY,CAAC,2BAA2B,CAAC,YAAY,CAAC,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAChG,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,IAAY;QAC7B,OAAO,YAAY,CAAC,2BAA2B,CAAC,YAAY,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC/F,CAAC;IAED;;;;OAIG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,KAAK,aAAa,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACH,IAAI,IAAI;QACN,OAAO,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED;;;;OAIG;IACH,IAAI,QAAQ;QACV,OAAO,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3D,CAAC;IAED;;;;OAIG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,sBAAsB;QACpB,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;YAC1D,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,UAAU,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;YACzF,MAAM,IAAI,GAAG,YAAY,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;YACzD,qBAAqB,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;YAC/D,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,aAAa,CACX,UAAsB;QAEtB,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC9E,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC/C,IAAI,UAAU,CAAC,UAAU,KAAK,UAAU;gBAAE,OAAO,UAAoC,CAAC;QACxF,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACnF,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,KAAK,CAAC,eAAe,CAAC,UAA8B,EAAE;QACpD,OAAO,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/F,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,OAA2B;QACpD,MAAM,cAAc,GAAG,YAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxF,MAAM,aAAa,GAAG,YAAY,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;QACvE,MAAM,WAAW,GAAG,YAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC9E,MAAM,YAAY,GAAG,YAAY,CAAC,2BAA2B,CAAC,WAAW,CAAC,CAAC;QAC3E,MAAM,iBAAiB,GAAa,EAAE,CAAC;QACvC,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAE3B,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;YAClC,kBAAkB,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;YAC5E,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAEzF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,YAAY,CAAC,oBAAoB,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;gBACzD,kBAAkB,IAAI,MAAM,YAAY,CAAC,6BAA6B,CACpE,WAAW,EACX,KAAK,EACL,IAAI,CACL,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,YAAY,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,kBAAkB;YAClB,kBAAkB;YAClB,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC;SACpD,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,WAAW;QACT,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;QAC7B,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC9C,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1C,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAClD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;QACzE,MAAM,IAAI,CAAC,UAAU,CACnB,GAAG,EAAE,CACH,YAAY,CAAC,gBAAgB,CAC3B,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,UAAU,CAChB,EACH,MAAM,CACP,CAAC;QACF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,cAAc,CAAC,MAAM,EAAE,8BAA8B,CAAC,CAAC;IAC1F,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU;QACd,MAAM,MAAM,GAAc,EAAE,CAAC;QAE7B,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;QACnE,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,CAAC;QACvD,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC/B,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;QAC/D,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,EAAE,MAAM,CAAC,CAAC;QAC7E,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE;YACzB,YAAY,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QAChD,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,MAAM,IAAI,cAAc,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,8BAA8B,CAAC,CAAC;QAC/F,CAAC;QACD,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CAAC,MAAiB;QACjC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;QAC9B,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;QACpF,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;QAChF,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,CAAC;QACvC,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,CAAC;QAChF,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,CAAC;QAC5E,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,CAAC;IACxF,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,kBAAkB,CAAC,MAAiB;QACxC,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC/C,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE;gBACzB,gBAAgB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;gBAC1C,sBAAsB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC5C,CAAC,EAAE,MAAM,CAAC,CAAC;QACb,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,IAAmB,EAAE,MAAiB;QACrD,MAAM,YAAY,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACpD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAyB,MAAM,CAAC,MAAM,CAAC;IACtE;;;;;;OAMG;IACH,iBAAiB,CAAC,OAAuB,EAAE,IAAoB;QAC7D,MAAM,SAAS,GAAG,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QACtC,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/C,OAAO,MAAM,EAAE,OAAO,KAAK,OAAO,IAAI,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC;YACrE,CAAC,CAAC,MAAM,CAAC,UAAU;YACnB,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;IACD,UAAU,CAAC,OAAuB;QAChC,MAAM,KAAK,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAC;QAC7F,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC;IAED,SAAS,CAAC,OAAuB;QAC/B,MAAM,KAAK,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,KAAK,KAAK,SAAS;YACrB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,wCAAwC,CAAC,CAAC,CAAC;QACjF,OAAO,KAAK,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IAED,aAAa,CAAC,OAAuB,EAAE,MAAiB;QACtD,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QAClF,CAAC;QACD,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACpC,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QAClF,CAAC;QACD,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAC/C,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,SAAS,KAAK,SAAS;YACzB,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QAClF,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAChC,MAAM,OAAO,GAAG,2BAA2B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QAClF,CAAC;QACD,yBAAyB,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3D,CAAC;IAED,SAAS,CAAC,OAAuB;QAC/B,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QAClF,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,SAAS,CAAC,KAAc;QACtB,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,KAAK,IAAI;YACd,aAAa,CAAC,GAAG,CAAC,KAA8B,CAAC,CAClD,CAAC;IACJ,CAAC;IAED,KAAK,CACH,OAA8B,EAC9B,qBAAqC,EACrC,SAAsB;QAEtB,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEzC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,SAAS,CAAC,2DAA2D,CAAC,CAAC;QACnF,CAAC;QAED,OAAO,KAAK,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC;IACjD,CAAC;IAED,gBAAgB,CACd,OAAuB,EACvB,OAAe,EACf,UAA2B;QAE3B,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEhD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,SAAS,CAAC,8DAA8D,CAAC,CAAC;QACtF,CAAC;QAED,OAAO,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACxC,CAAC;IAED,eAAe,CAAC,OAAuB,EAAE,KAAY;QACnD,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,SAAS,CAAC,gEAAgE,CAAC,CAAC;QACxF,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,iBAAiB,CAAC,OAAuB,EAAE,KAAY;QACrD,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAC3C,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC,kBAAkB,EAAE,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC7F,QAAQ,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;QACjC,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,sBAAsB,CACpB,OAAuB,EACvB,QAGC;QAED,MAAM,SAAS,GAAG,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,SAAS,CAAC,uEAAuE,CAAC,CAAC;QAC/F,CAAC;QACD,OAAO,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,aAAa,CAAC,OAAuB;QACnC,OAAO,YAAY,CAAC,kBAAkB,CAAC,YAAY,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,WAAW,CAAC,OAAuB;QACjC,OAAO,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,cAAc,CAAC,OAAuB;QACpC,MAAM,cAAc,GAAG,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAE5D,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QAClF,CAAC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,oBAAoB,CAAC,OAAuB;QAC1C,MAAM,OAAO,GAAG,2BAA2B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,SAAS,CAAC,wEAAwE,CAAC,CAAC;QAChG,CAAC;QACD,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAED,mBAAmB,CACjB,OAAuB,EACvB,EAAU,EACV,QAAyF;QAEzF,MAAM,OAAO,GAAG,2BAA2B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,SAAS,CAAC,oEAAoE,CAAC,CAAC;QAC5F,CAAC;QACD,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IACvC,CAAC;IAED,QAAQ,CAAC,OAAuB;QAC9B,MAAM,UAAU,GAAG,0BAA0B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAE3D,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,IAAI,SAAS,CAAC,2DAA2D,CAAC,CAAC;QACnF,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;CACF,CAAC,CAAC;AAwEH;;GAEG;AACH,MAAM,OAAO,qBAAqB;IACvB,aAAa,CAAsB;IAEnC,mBAAmB,GAAG,IAAI,GAAG,EAAqB,CAAC;IAEnD,iBAAiB,GAAG,IAAI,GAAG,EAAmB,CAAC;IAE/C,UAAU,GAAuB,EAAE,CAAC;IAEpC,WAAW,GAAwB,EAAE,CAAC;IAEtC,eAAe,GAAuD,EAAE,CAAC;IAEzE,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE1C,YAAY,GAAG,IAAI,GAAG,EAAwB,CAAC;IAE/C,2BAA2B,GAAG,IAAI,GAAG,EAAgC,CAAC;IAE/E,iBAAiB,GAAqB,sBAAsB,CAAC,WAAW,EAAE,CAAC;IAE3E,eAAe,CAA6B;IAE5C,WAAW,CAAyB;IAEpC,qBAAqB,CAAwC;IAE7D,oBAAoB,GAAG,KAAK,CAAC;IAE7B,sBAAsB,CAA2B;IAEjD;;OAEG;IACH;QACE,8BAA8B,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAyB,EAAE,CAC1E,IAAI,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;OAKG;IACH,YAAsB,YAAiC,EAAE,KAAiC;QACxF,YAAY,CAAC,iCAAiC,CAC5C,KAAK,EACL,sDAAsD,CACvD,CAAC;QACF,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QAClE,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,qBAAqB,EAAE,SAAS,EAAE,EAAE,CAC3D,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,SAAS,CAAC,CACvD,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,IAAI,IAAI;QACN,OAAO,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC5D,CAAC;IAED;;;;OAIG;IACH,IAAI,UAAU;QACZ,OAAO,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IACnE,CAAC;IAED;;;;OAIG;IACH,aAAa;QACX,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;IACxC,CAAC;IA8BD;;;;;;;OAOG;IACH,GAAG,CACD,KAA0C,EAC1C,OAAgD;QAEhD,IAAI,gBAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YACxC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,SAAS,CAAC,gEAAgE,CAAC,CAAC;YACxF,CAAC;YACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,YAAY,CAAC,kBAAkB,CAAC,KAAK,EAAE,uCAAuC,CAAC,CAAC;QAChF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC;QAC7E,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CACJ,UAAkC;QAElC,YAAY,CAAC,yBAAyB,CAAC,UAAU,EAAE,0CAA0C,CAAC,CAAC;QAC/F,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;OASG;IACH,oBAAoB,CAAC,UAAiD;QACpE,IAAI,UAAU,YAAY,iBAAiB,EAAE,CAAC;YAC5C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,uBAAuB,CAAC,UAA6B;QACnD,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACH,kBAAkB,CAChB,UAA4E;QAE5E,IACE,UAAU,YAAY,oBAAoB;YAC1C,UAAU,YAAY,uBAAuB,EAC7C,CAAC;YACD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACtC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;OAQG;IACH,WAAW,CAAC,QAA0B;QACpC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,qBAAqB,CAAC,UAA2B;QAC/C,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,cAA8B;QAC/C,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,QAAoB;QACzB,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACH,mBAAmB;QACjB,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;OAQG;IACH,wBAAwB,CAAC,QAAmC;QAC1D,IAAI,CAAC,qBAAqB,GAAG,QAAQ,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,QAA0B;QAC7C,IAAI,CAAC,iBAAiB,GAAG,YAAY,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,yBAAyB,CAAC,IAAkB;QAC1C,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QACD,YAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,UAAU,CACpB,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,EACvB,IAAI,CAAC,eAAe,IAAI,IAAI,sBAAsB,EAAE,EACpD,EAAE,EACF,IAAI,CAAC,WAAW,CACjB,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,UAAU;QACd,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,qBAAsC,EACtC,SAAsB;QAEtB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QAC7E,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;QAExE,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAC7B,YAAY,EACZ,IAAI,CAAC,eAAe,IAAI,qBAAqB,IAAI,IAAI,sBAAsB,EAAE,EAC7E,SAAS,CAAC,UAAU,EACpB,IAAI,CAAC,WAAW,IAAI,SAAS,CAC9B,CAAC;QACF,IAAI,CAAC;YACH,MAAM,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;YACxB,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,MAAM,IAAI,cAAc,CACtB,CAAC,KAAK,EAAE,UAAU,CAAC,EACnB,mDAAmD,CACpD,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,UAAU,CACR,YAAuC,EACvC,cAA8B,EAC9B,aAAyD,EAAE,EAC3D,EAAe;QAEf,MAAM,SAAS,GACb,IAAI,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC3F,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACvC,MAAM,sBAAsB,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;QACjD,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,gBAAgB,CAC1B,sBAAsB,EACtB,cAAc,EACd,UAAU,EACV,SAAS,EACT,EAAE,CACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,gBAAgB,CACd,YAAuC,EACvC,cAA8B,EAC9B,UAAsD,EACtD,SAAgC,EAChC,EAAe;QAEf,YAAY,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;QACjD,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;QACxD,IAAI,EAAE,KAAK,SAAS;YAAE,cAAc,CAAC,EAAE,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACrF,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACnE,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,MAAM;YAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACjF,cAAc,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE;YAC7C,GAAG,YAAY,CAAC,8BAA8B,CAAC,YAAY,CAAC;YAC5D,GAAG,YAAY,CAAC,8BAA8B,CAAC,UAAU,CAAC;SAC3D,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QACtF,YAAY,CAAC,iBAAiB,CAC5B,OAAO,EACP,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,UAAU,EAChB,YAAY,CAAC,oBAAoB,CAAC;YAChC,GAAG,WAAW,CAAC,MAAM;YACrB,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;SAC5D,CAAC,CACH,CAAC;QACF,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,gBAAgB,CACd,YAAuC,EACvC,cAA8B,EAC9B,EAAe;QAEf,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,YAAY,KAAK,OAAO,CAAC,CAAC;QACxF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAChC,IAAI,EAAE,KAAK,SAAS;YAAE,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;QACzF,eAAe,CAAC,EAAE,CAAC,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,oBAAoB;YAC5B,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAC;QAC9E,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,cAAc,CAAC;YACxD,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAC;QAC9E,IAAI,CAAC,8BAA8B,CAAC,QAAQ,CAAC,cAAc,CAAC;YAC1D,MAAM,IAAI,SAAS,CAAC,wDAAwD,CAAC,CAAC;QAChF,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACvC,KAAK,MAAM,UAAU,IAAI,MAAM,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,gBAAgB,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;YAC/D,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE;gBACxE,MAAM,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAC;YACtE,IAAI,MAAM,CAAC,EAAE,KAAK,SAAS;gBACzB,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAC;YAC9E,IAAI,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBACrD,MAAM,IAAI,SAAS,CAAC,+DAA+D,CAAC,CAAC;QACzF,CAAC;IACH,CAAC;IAED;;OAEG;IACH,yBAAyB,CAAC,MAAiC;QACzD,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CACnD,UAAU,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CACrE,CACF,CAAC;QACF,KAAK,MAAM,UAAU,IAAI,MAAM,EAAE,CAAC;YAChC,IACE,gBAAgB;iBACb,sBAAsB,CAAC,UAAU,CAAC;iBAClC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;gBAE7D,MAAM,IAAI,SAAS,CAAC,6DAA6D,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;IAED,iBAAiB,CAAC,YAAuC;QACvD,MAAM,KAAK,GAAG;YACZ,GAAG,YAAY,CAAC,0BAA0B,CAAC,YAAY,CAAC;YACxD,GAAG,IAAI,CAAC,iBAAiB;SAC1B,CAAC;QACF,OAAO;YACL,MAAM,EAAE,YAAY,CAAC,sBAAsB,CAAC,KAAK,CAAC;YAClD,MAAM,EAAE;gBACN,GAAG,YAAY,CAAC,sBAAsB,CAAC,KAAK,CAAC;gBAC7C,GAAG,YAAY,CAAC,gCAAgC,CAAC,YAAY,CAAC;aAC/D;SACF,CAAC;IACJ,CAAC;IAED,WAAW,CACT,YAAuC,EACvC,cAA8B,EAC9B,WAAoC,EACpC,SAAgC;QAEhC,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC;YAChC,GAAG,IAAI,CAAC,mBAAmB;YAC3B,GAAG,YAAY,CAAC,4BAA4B,CAAC,YAAY,CAAC;SAC3D,CAAC,CAAC;QACH,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACrF,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;QACzD,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC1C,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC9B,MAAM,SAAS,GAAG,IAAI,eAAe,CACnC,UAAU,EACV,QAAQ,EACR,MAAM,CAAC,QAAQ,EACf,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAC9B,CAAC;QACF,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC;QAChC,OAAO;YACL,UAAU;YACV,UAAU;YACV,gBAAgB,EAAE,MAAM,CAAC,UAAU;YACnC,QAAQ;YACR,cAAc,EAAE,MAAM,CAAC,QAAQ;YAC/B,SAAS;YACT,WAAW,EAAE,MAAM,CAAC,KAAK;YACzB,UAAU,EAAE,MAAM,CAAC,IAAI;SACxB,CAAC;IACJ,CAAC;IAED,iBAAiB,CACf,cAA8B,EAC9B,WAAuC,EACvC,SAAgC;QAEhC,MAAM,UAAU,GAAG,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAChG,MAAM,gBAAgB,GAAG,UAAU,CAAC,YAAY;YAC9C,CAAC,CAAC,IAAI,UAAU,CAAC,YAAY,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,cAAc,EAAE,gBAAgB,CAAC;YAC9F,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,gBAAgB,KAAK,SAAS;YAAE,SAAS,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QAClF,MAAM,cAAc,GAAG,cAAc,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;QACxE,SAAS,CAAC,cAAc,GAAG,cAAc,CAAC;QAC1C,KAAK,MAAM,UAAU,IAAI,WAAW;YAAE,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC1E,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC;YAC5B,OAAO,EAAE,YAAY,CAAC,iBAAiB,CAAC,UAAU,CAAC;YACnD,cAAc;SACf,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC;QACpC,OAAO;YACL,UAAU,EAAE,gBAAgB;YAC5B,QAAQ,EAAE,cAAc;YACxB,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,UAAU;SACjB,CAAC;IACJ,CAAC;IAED,kBAAkB,CAChB,UAAsD,EACtD,KAAwB;QAExB,YAAY,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,OAAO,GACX,UAAU,CAAC,MAAM,KAAK,CAAC;YACrB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,IAAI,wBAAwB,CAC1B,YAAY,CAAC,uBAAuB,CAClC,UAAU,EACV,IAAI,CAAC,oBAAoB,EAAE,EAC3B,KAAK,CAAC,SAAS,CAChB,CACF,CAAC;QACR,MAAM,OAAO,GAAG,OAAO,EAAE,iBAAiB,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,OAAO,EAAE,eAAe,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,OAAO,EAAE,eAAe,EAAE,CAAC;QACzC,IAAI,OAAO,KAAK,SAAS;YAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC9D,IAAI,KAAK,KAAK,SAAS;YAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACxD,IAAI,KAAK,KAAK,SAAS;YAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,aAAa,CACX,cAA8B,EAC9B,KAAwB,EACxB,SAAgC;QAEhC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;YACtB,OAAO,EAAE,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC;YAC3D,cAAc;SACf,CAAC,CAAC;QACH,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC;QACxB,MAAM,QAAQ,GACZ,SAAS,CAAC,QAAQ;YAClB,IAAI,2BAA2B,CAC7B,YAAY,CAAC,gCAAgC,CAAC,IAAI,CAAC,aAAa,CAAC,EACjE,cAAc,CACf,CAAC;QACJ,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,mBAAmB,CACrC,KAAK,EACL,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,cAAc,EACpB,QAAQ,CACT,CAAC;QACF,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC;QAC5B,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IACtC,CAAC;IAED,cAAc,CACZ,YAAuC,EACvC,cAA8B,EAC9B,KAAwB,EACxB,OAA4B,EAC5B,EAAe;QAEf,OAAO,YAAY,CAAC,oBAAoB,CACtC,IAAI,CAAC,aAAa,EAClB,cAAc,EACd,YAAY,EACZ,IAAI,CAAC,iBAAiB,EACtB,KAAK,EACL,OAAO,EACP,EAAE,CACH,CAAC;IACJ,CAAC;IAED,UAAU,CAAC,SAAgC,EAAE,KAAc;QACzD,MAAM,aAAa,GAAc,EAAE,CAAC;QACpC,YAAY,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,aAAa,CAAC,CAAC;QAClF,YAAY,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,aAAa,EAAE,EAAE,aAAa,CAAC,CAAC;QACvF,IAAI,SAAS,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACpC,YAAY,CAAC,cAAc,CACzB,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,EAC7D,aAAa,CACd,CAAC;QACJ,CAAC;QACD,YAAY,CAAC,cAAc,CACzB,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,EAC1D,aAAa,CACd,CAAC;QACF,YAAY,CAAC,cAAc,CACzB,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,EAChE,aAAa,CACd,CAAC;QACF,YAAY,CAAC,iBAAiB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACzD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,cAAc,CACtB,CAAC,KAAK,EAAE,GAAG,aAAa,CAAC,EACzB,8CAA8C,CAC/C,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,WAA4C;QAIxE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC3F,CAAC;QAED,MAAM,IAAI,GAAG,YAAY,CAAC,4BAA4B,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACpF,MAAM,SAAS,GAAG,IAAI,0BAA0B,EAAE,CAAC;QACnD,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;QAC/E,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC;QACxC,MAAM,UAAU,GAAG,CAAC,MAAM,SAAS;aAChC,IAAI,CAAC;YACJ,OAAO,EAAE,CAAC,cAAc,CAAC;YACzB,GAAG,YAAY,CAAC,0BAA0B,CAAC,WAAW,CAAC;SACxD,CAAC;aACD,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YACxB,YAAY,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC;YACzD,MAAM,KAAK,CAAC;QACd,CAAC,CAAC,CAAwC,CAAC;QAC7C,MAAM,QAAQ,GAAG,YAAY,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;QAEpE,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAChC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAC7B,YAAY,CAAC,yBAAyB,CACpC,UAAU,EACV,UAAU,EACV,QAAQ,EACR,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,UAAU,CAAC,CACjD,CACF,CACF,CAAC;QACF,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAC9B,UAAU,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC9B,QAAQ,CAAC,SAAS,CAAC,MAAM,CACvB,CAAC,QAAQ,EAA+C,EAAE,CACxD,QAAQ,CAAC,YAAY,KAAK,YAAY,CACzC,CACF,CACF,CAAC;QACF,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,oBAAoB;QAClB,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IAC3F,CAAC;IAED;;;;;OAKG;IACK,gBAAgB,CAAC,cAA8B;QACrD,OAAO,IAAI,UAAU,CAAC,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,cAAc,CAAC,CAAC;IAC5F,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,WAAW;IACb,SAAS,CAAsB;IAExC;;OAEG;IACH;QACE,oBAAoB,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAe,EAAE,CAAC,IAAI,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC5F,CAAC;IAED;;;;;OAKG;IACH,YAAsB,QAA6B,EAAE,KAAiC;QACpF,YAAY,CAAC,iCAAiC,CAC5C,KAAK,EACL,4CAA4C,CAC7C,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACH,IAAI,UAAU;QACZ,OAAO,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC/D,CAAC;IAED;;;;OAIG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,IAAI,QAAQ;QACV,OAAO,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC;CACF;AAsBD,MAAM,sBAAsB,GAAG,IAAI,OAAO,EAAmC,CAAC;AAoB9E;;GAEG;AACH,MAAM,kBAAmB,SAAQ,KAAK;IAC3B,IAAI,GAAsB,kCAAkC,CAAC;IAE7D,OAAO,CAAS;IAEhB,MAAM,CAAsB;IAErC;;;;;OAKG;IACH,YAAY,OAAe,EAAE,MAA2B;QACtD,KAAK,CAAC,+CAA+C,OAAO,IAAI,CAAC,CAAC;QAClE,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;IACjC;;;;OAIG;IACH,4BAA4B,CAAC,SAAqD;QAChF,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;QACjD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACxC,IAAI,OAAO,CAAC,IAAI,KAAK,oBAAoB,IAAI,OAAO,CAAC,IAAI,KAAK,sBAAsB;oBAClF,SAAS;gBACX,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACvD,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAC3C,IAAI,KAAK,KAAK,SAAS;oBACrB,MAAM,IAAI,KAAK,CACb,8CAA8C,QAAQ,MAAM,KAAK,QAC9D,QAAQ,CAAC,YAAiD,CAAC,IAC9D,GAAG,CACJ,CAAC;gBACJ,cAAc,CAAC,GAAG,CAChB,QAAQ,EACP,QAAQ,CAAC,YAAiD,CAAC,IAAI,CACjE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,uBAAuB,CACrB,SAAqD,EACrD,SAA4B,EAC5B,SAA0B;QAE1B,MAAM,aAAa,GAAG,IAAI,GAAG,EAAiC,CAAC;QAC/D,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAoC,CAAC;YAClE,IAAI,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CAAC,uBAAuB,WAAW,CAAC,IAAI,gCAAgC,CAAC,CAAC;YAC3F,CAAC;YACD,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,QAAQ,GAAwB,EAAE,CAAC;QACzC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAgD,CAAC;YAC/E,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACjD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CACb,iCAAiC,YAAY,CAAC,IAAI,yCAAyC,CAC5F,CAAC;YACJ,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YACvE,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,aAAa,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,kCAAkC,CAAC,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,SAAS,6BAA6B,CAC/G,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACH,cAAc,CAAC,SAAqB,EAAE,MAAiB;QACrD,IAAI,CAAC;YACH,SAAS,EAAE,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,SAAgC,EAAE,MAAiB;QACnE,YAAY,CAAC,cAAc,CAAC,GAAG,EAAE;YAC/B,IAAI,SAAS,CAAC,UAAU,KAAK,SAAS;gBAAE,gBAAgB,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC5F,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,YAAY,CAAC,cAAc,CAAC,GAAG,EAAE;YAC/B,IAAI,SAAS,CAAC,cAAc,KAAK,SAAS;gBACxC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;;gBACjD,SAAS,CAAC,gBAAgB,EAAE,KAAK,EAAE,CAAC;QAC3C,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,YAAY,CAAC,cAAc,CAAC,GAAG,EAAE;YAC/B,IAAI,SAAS,CAAC,QAAQ,KAAK,SAAS;gBAAE,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;;gBAC/E,SAAS,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC;QACrC,CAAC,EAAE,MAAM,CAAC,CAAC;IACb,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,MAA0B;QACtC,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAC9B,KAAK,YAAY,cAAc,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CACrF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,iCAAiC,CAAC,KAAc,EAAE,OAAe;QAC/D,IAAI,KAAK,KAAK,0BAA0B,EAAE,CAAC;YACzC,MAAM,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,YAAiC;QACjD,OAAO,oBAAoB,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;IACxE,CAAC;IAED;;;;;OAKG;IACH,2BAA2B,CAAC,YAAiC;QAC3D,OAAO,8BAA8B,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;IAClF,CAAC;IAED;;;;;;;;;;;OAWG;IACH,oBAAoB,CAClB,YAAiC,EACjC,cAA8B,EAC9B,YAAuC,EACvC,gBAAkC,EAClC,KAAwB,EACxB,OAA4B,EAC5B,EAAe;QAEf,OAAO,uBAAuB,CAAC;YAC7B,QAAQ,EAAE,YAAY,CAAC,WAAW,CAAC,YAAY,CAAC;YAChD,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,mBAAmB,EAAE,OAAO,CAAC,OAAO;YACpC,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,cAAc;YACd,YAAY;YACZ,gBAAgB;YAChB,GAAG,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC;YACnC,KAAK,EAAE,0BAA0B;SAClC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,WAAW,CAAC,YAAiC;QAC3C,OAAO;YACL,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,UAAU,EAAE,YAAY,CAAC,YAAY,CAAC,YAAY,CAAC,WAAW,CAAC;YAC/D,IAAI,EAAE,YAAY;SACnB,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,YAAiC;QACjD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK;YAC7B,WAAW,EAAE,YAAY,CAAC,WAAW;SACtC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,gCAAgC,CAAC,YAAiC;QAChE,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,gBAAgB;YAChD,WAAW,EAAE,KAAK;SACnB,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,wBAAwB,CAAC,QAA0B;QACjD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC;YAC3E,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;QACvC,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,UAAU;YAEV;;;;;;eAMG;YACH,QAAQ,CAAC,QAAa,EAAE,UAAkB;gBACxC,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,CAAC;gBAC1E,IAAI,KAAK,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;oBACjC,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;gBACxF,CAAC;gBACD,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACpD,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,qBAAqB,CACnB,YAAiC,EACjC,OAA2B;QAE3B,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;YAC9B,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CACb,yCAAyC,YAAY,CAAC,IAAI,CAAC,KAAK,6BAA6B,CAC9F,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9E,CAAC;QAED,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,uCAAuC,YAAY,CAAC,IAAI,CAAC,KAAK,sBAAsB,CACrF,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK;YAC7B,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ;SACjD,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,wBAAwB,CAAC,KAAa;QACpC,IACE,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;YACzB,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC,EACvC,CAAC;YACD,MAAM,IAAI,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;OAMG;IACH,kBAAkB,CAAC,IAAY,EAAE,WAAoB;QACnD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,YAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC;YACjD,WAAW;YACX,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,IAAwB;QAChC,OAAO,YAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,IAAyB;QACzC,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;YACvC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,QAAgC;QACnD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3C,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,IAAI,EAAE,YAAY,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC;SACpD,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,gBAAgB,CAAC,UAA+B,EAAE,YAAqB;QACrE,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,YAAY,CAAC,wBAAwB,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;YAC9E,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,YAAY;SACb,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,mBAAmB,CACjB,QAAgC,EAChC,UAA+B;QAE/B,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,MAAM,EAAE,YAAY,CAAC,oBAAoB,CAAC,QAAQ,CAAC;YACnD,MAAM,EAAE,YAAY,CAAC,iBAAiB,CAAC,UAAU,CAAC;SACnD,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,OAA8B;QAC/C,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,MAAM,EAAE,YAAY,CAAC,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC;YACzD,MAAM,EAAE,YAAY,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC;SACvD,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,QAAkB;QACrC,OAAO,MAAM,CAAC,MAAM,CAClB,cAAc;aACX,YAAY,CAAC,QAAQ,CAAC;aACtB,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;aAC/D,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAC5C,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,WAAsC;QACzD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;QACjD,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,KAAK,MAAM,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC;gBAC/D,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;OAOG;IACH,iBAAiB,CACf,OAAuB,EACvB,QAAkB,EAClB,UAA+B,EAC/B,oBAA6C;QAE7C,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC;YACnC,WAAW,EAAE,MAAM,CAAC,wBAAwB,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC5E,iBAAiB,EAAE,MAAM,CAAC,wBAAwB,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACrF,gBAAgB,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,yBAAyB;YACxE,QAAQ;YACR,oBAAoB;YACpB,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;gBAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;gBAC3C,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS;oBAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBACxF,YAAY,CAAC,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBACvD,QAAQ,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACjC,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;SACF,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAC5B,8EAA8E;QAC9E,2EAA2E;QAC3E,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAClC,mBAAmB,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;OAMG;IACH,gBAAgB,CAAC,OAAuB,EAAE,KAAY;QACpD,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC;QAC9F,IAAI,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;QAChG,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YAC9E,YAAY,CAAC,sBAAsB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACpD,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,OAAuB;QACtC,OAAO,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAC/E,CAAC;IAED;;;;;;OAMG;IACH,eAAe,CAAC,OAAuB,EAAE,KAAY;QACnD,MAAM,WAAW,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,WAAW,KAAK,SAAS;YAC3B,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAC1E,OAAO,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;IACjF,CAAC;IAED;;;;;OAKG;IACH,sBAAsB,CAAC,OAAuB,EAAE,KAAY;QAC1D,MAAM,QAAQ,GAAG,YAAY,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAC3B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,0BAA0B,OAAO,CAAC,IAAI,CAAC,KAAK,6BAA6B,CAAC,CAAC;YAC7F,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,wBAAwB,OAAO,CAAC,IAAI,CAAC,KAAK,sBAAsB,CAAC,CAAC;QACpF,CAAC;QACD,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,OAAuB;QACtC,OAAO,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IACtE,CAAC;IAED;;;;;OAKG;IACH,qBAAqB,CAAC,MAA+B;QACnD,OAAO,CACL,CAAC,SAAS,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;YACtE,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC5D,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAC/E,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,WAAoB;QAC/B,OAAO,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,eAAe,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,OAAuB;QAC1C,MAAM,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEnD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QAClF,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,OAAuB;QACxC,MAAM,WAAW,GAAG,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEtD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,SAAS,CAAC,wDAAwD,CAAC,CAAC;QAChF,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,yBAAyB,CAAC,UAAmB,EAAE,SAAiB;QAC9D,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,SAAS,CAAC,GAAG,SAAS,kCAAkC,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,UAAmB,EAAE,SAAiB;QACvD,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE,CAAC;YACrC,MAAM,IAAI,SAAS,CACjB,GAAG,SAAS,8EAA8E,CAC3F,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,wBAAwB,CAAC,WAA8C;QACrE,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QAED,MAAM,IAAI,KAAK,CACb,wFAAwF;YACtF,mBAAmB,CACtB,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,4BAA4B,CAAC,IAA8B;QACzD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,KAAK,CACb,8EAA8E;YAC5E,yDAAyD,CAC5D,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,8BAA8B,CAAC,IAAkB;QACrD,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;QAC5E,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;QACjE,MAAM,qBAAqB,GAAG,MAAM,YAAY,CAAC,6BAA6B,CAAC,YAAY,CAAC,CAAC;QAE7F,IAAI,YAAY,CAAC,mBAAmB,CAAC,WAAW,EAAE,qBAAqB,CAAC,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CACb,sCAAsC,qBAAqB,wBAAwB;gBACjF,2CAA2C,WAAW,IAAI,CAC7D,CAAC;QACJ,CAAC;QAED,OAAO,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,8BAA8B,CAAC,IAAkB;QACrD,MAAM,QAAQ,GAAG,YAAY,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;QAE9D,IAAI,CAAC;YACH,OAAO,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,4BAA4B,QAAQ,2CAA2C,EAC/E,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,yBAAyB,CAAC,IAAkB;QAC1C,IAAI,IAAI,YAAY,GAAG,EAAE,CAAC;YACxB,OAAO,YAAY,CAAC,WAAW,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,OAAO,YAAY,CAAC,WAAW,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,yBAAyB,CAAC,CAAC;QAC9F,CAAC;QAED,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,WAAW,CAAC,GAAQ,EAAE,KAAa;QACjC,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,GAAG,CAAC,IAAI,kCAAkC,CAAC,CAAC;QAC3E,CAAC;QAED,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,GAAG,CAAC,IAAI,qCAAqC,CAAC,CAAC;QAC9E,CAAC;QAED,OAAO,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,IAAY;QACvB,IAAI,CAAC;YACH,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,uBAAuB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,KAAa;QACrB,OAAO,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,6BAA6B,CAAC,YAAoB;QACtD,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;YAC7C,OAAO,MAAM,QAAQ,CAAC,YAAY,CAAC,CAAC;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,sCAAsC,YAAY,+BAA+B,EACjF,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,mBAAmB,CAAC,aAAqB,EAAE,aAAqB;QAC9D,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QAE5D,OAAO,CACL,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC;YAC7B,YAAY,KAAK,IAAI;YACrB,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;YACtC,UAAU,CAAC,YAAY,CAAC,CACzB,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,0BAA0B,CACxB,WAAmB;QAEnB,MAAM,OAAO,GAAG,6BAA6B,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAEpE,OAAO,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,OAAO,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC3E,CAAC;IAED;;;;OAIG;IACH,8BAA8B,CAAC,WAAmB;QAChD,6BAA6B,CAAC,GAAG,CAC/B,WAAW,EACX,CAAC,6BAA6B,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAC1D,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,yBAAyB,CACvB,UAA+C;QAE/C,MAAM,QAAQ,GAAG,IAAI,uBAAuB,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,IAAI,uBAAuB,EAAE,CAAC;QAE/C,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;OAQG;IACH,yBAAyB,CACvB,UAAgC,EAChC,UAA+C,EAC/C,QAAiC,EACjC,OAAgB;QAEhB,MAAM,SAAS,GAAG,YAAY,CAAC,mBAAmB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC3E,MAAM,QAAQ,GAAG,YAAY,CAAC,qBAAqB,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAErF,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CACrC;YACE,UAAU;YACV,MAAM,EAAE,SAAS,CAAC,WAAW;YAC7B,QAAQ;YACR,MAAM,EAAE,YAAY,CAAC,uBAAuB,CAAC,SAAS,CAAC;SACxD,EACD,OAAO,CACR,CAAC;QACF,OAAO,IAAI,UAAU,CAAC,iBAA0B,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;OAMG;IACH,mBAAmB,CACjB,UAAgC,EAChC,UAA+C;QAE/C,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,IAAI,CACvC,CAAC,QAAQ,EAA2C,EAAE,CACpD,QAAQ,CAAC,YAAY,KAAK,QAAQ,IAAI,QAAQ,CAAC,YAAY,KAAK,UAAU,CAC7E,CAAC;YACF,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,sDAAsD,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC;IAC5F,CAAC;IAED;;;;;;;OAOG;IACH,qBAAqB,CACnB,UAAgC,EAChC,SAAsC,EACtC,QAAiC;QAEjC,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC;QAElF,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,sDAAsD,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC;QAC5F,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACH,uBAAuB,CACrB,SAAsC;QAEtC,OAAO,YAAY,CAAC,aAAa,CAC/B,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YACtC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,oBAAoB,IAAI,OAAO,CAAC,IAAI,KAAK,gBAAgB;gBAC5E,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAC3B,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,oBAAoB,IAAI,OAAO,CAAC,IAAI,KAAK,sBAAsB;gBAClF,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBACzB,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,8BAA8B,CAC5B,SAAqD;QAErD,OAAO,YAAY,CAAC,aAAa,CAC/B,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC7B,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YACrC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,oBAAoB,IAAI,OAAO,CAAC,IAAI,KAAK,gBAAgB;gBAC5E,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAC3B,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,oBAAoB,IAAI,OAAO,CAAC,IAAI,KAAK,sBAAsB;gBAClF,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBACzB,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CACH,CACF,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,aAAa,CACX,OAA0B;QAE1B,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;QAE7C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACjD,CAAC;IAED;;;;OAIG;IACH,qBAAqB,CAAC,YAAuC;QAC3D,MAAM,WAAW,GAAG,IAAI,GAAG,EAAwB,CAAC;QACpD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;QAEzC,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;YACtC,YAAY,CAAC,yBAAyB,CAAC,UAAU,EAAE,uCAAuC,CAAC,CAAC;YAC5F,MAAM,QAAQ,GAAG,YAAY,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;YAC7D,MAAM,YAAY,GAAG,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5D,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CACb,mBAAmB,QAAQ,CAAC,iBAAiB,+CAA+C;oBAC1F,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,IAAI,CAClC,CAAC;YACJ,CAAC;YAED,IAAI,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBACzC,MAAM,IAAI,KAAK,CACb,2BAA2B,QAAQ,CAAC,UAAU,CAAC,IAAI,0BAA0B,CAC9E,CAAC;YACJ,CAAC;YACD,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAErC,IAAI,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACnD,MAAM,IAAI,KAAK,CACb,0BAA0B,QAAQ,CAAC,iBAAiB,0BAA0B,CAC/E,CAAC;YACJ,CAAC;YACD,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QACjD,CAAC;QAED,YAAY,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,YAAuC;QACvD,MAAM,YAAY,GAAG,IAAI,GAAG,EAA6B,CAAC;QAC1D,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,YAAY,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,iBAAiB,CAAC;YAChF,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,gBAAgB,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC,CAAC;QACnF,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;QACnC,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,CAAC,SAAiB,EAAQ,EAAE;YACxC,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;gBAAE,OAAO;YACnC,IAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACtC,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,CAAC;gBAChD,MAAM,IAAI,KAAK,CACb,yDAAyD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAC/E,CAAC;YACJ,CAAC;YACD,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACrB,KAAK,MAAM,UAAU,IAAI,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC3D,IAAI,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC;oBAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YACtD,CAAC;YACD,IAAI,CAAC,GAAG,EAAE,CAAC;YACX,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzB,CAAC,CAAC;QAEF,KAAK,MAAM,SAAS,IAAI,YAAY,CAAC,IAAI,EAAE;YAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC;IAED;;;;;OAKG;IACH,4BAA4B,CAC1B,YAAuC;QAEvC,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACzC,MAAM,UAAU,GAAG,gBAAgB,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YAClE,OAAO,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,0BAA0B,CAAC,YAAuC;QAChE,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACzC,MAAM,UAAU,GAAG,gBAAgB,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YAChE,OAAO,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,gCAAgC,CAC9B,YAAuC;QAEvC,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACzC,MAAM,UAAU,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;YACtE,OAAO,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,sBAAsB,CAAC,WAAuC;QAC5D,OAAO,MAAM,CAAC,MAAM,CAClB,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,CACtF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,sBAAsB,CAAC,WAAuC;QAC5D,OAAO,MAAM,CAAC,MAAM,CAClB,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,YAAY,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,CACrF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,uBAAuB,CAAC,UAA2B;QACjD,MAAM,OAAO,GAAG,CAAC,GAAG,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC;QACjD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAC1D,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;YACxE,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACpF,CAAC;QACD,OAAO,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;IAClC,CAAC;IAED;;;;;OAKG;IACH,8BAA8B,CAC5B,YAAuC;QAEvC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;QAEjD,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;YACtC,KAAK,MAAM,MAAM,IAAI,gBAAgB,CAAC,oBAAoB,CAAC,UAAU,CAAC,EAAE,CAAC;gBACvE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,OAAuB,EAAE,WAAwB;QACpE,YAAY,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC3C,WAAW,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,oBAAoB,CAAC,OAAuB;QAC1C,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACrC,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,MAAM,OAAO,GAAG,2BAA2B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,OAAO,KAAK,SAAS;YAAE,yBAAyB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC1E,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;QACpD,uBAAuB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC/B,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACtC,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrC,uBAAuB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxC,0BAA0B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3C,2BAA2B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5C,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACpC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED;;;;;;;;;;OAUG;IACH,wBAAwB,CACtB,OAA+B,EAC/B,cAA8B,EAC9B,WAAwB,EACxB,WAAkC,EAClC,WAAqB,EACrB,SAA4B;QAE5B,OAAO,MAAM,CAAC,MAAM,CAA4B;YAC9C,cAAc;YACd,aAAa,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,qBAAqB,CAAC,WAAW,CAAC;YACpE,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,sBAAsB,CAAC,OAAO,EAAE,KAAK,CAAC;YAC9E,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,WAAW,CAAC,SAAS,EAAE,EAAE,GAAG,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC;YACxF,MAAM,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAC5B,OAAO,CAAC,KAAK,KAAK,mBAAmB;gBACnC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC;gBACvC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC;YAC3C,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;YAChD,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;SACzF,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,qBAAqB,CAAC,WAAwB;QAClD,IAAI,WAAW,CAAC,UAAU,KAAK,eAAe,EAAE,CAAC;YAC/C,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IACjG,CAAC;IAED;;;;;;OAMG;IACH,sBAAsB,CACpB,OAA+B,EAC/B,KAA0B;QAE1B,IAAI,OAAO,CAAC,UAAU,KAAK,eAAe,EAAE,CAAC;YAC3C,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,0BAA0B,OAAO,CAAC,IAAI,CAAC,KAAK,6BAA6B,CAAC,CAAC;YAC7F,CAAC;YACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAChC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,wBAAwB,OAAO,CAAC,IAAI,CAAC,KAAK,sBAAsB,CAAC,CAAC;QACpF,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK;YACxB,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ;SACjD,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,yBAAyB,CACvB,oBAAmD;QAEnD,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,KAAK,MAAM,kBAAkB,IAAI,oBAAoB,EAAE,CAAC;YACtD,IAAI,CAAC;gBACH,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAC7B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,gBAAgB,CAAC,KAAoB,EAAE,MAAiB;QAC5D,IAAI,CAAC;YACH,MAAM,KAAK,EAAE,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,YAAY,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,gBAAgB,CACpB,UAAsB,EACtB,QAAkB,EAClB,cAAwB,EACxB,SAA0B;QAE1B,IAAI,mBAAmB,GAAG,CAAC,CAAC,CAAC;QAC7B,IAAI,iBAAiB,GAAG,CAAC,CAAC,CAAC;QAC3B,IAAI,uBAAuB,GAAG,CAAC,CAAC,CAAC;QAEjC,GAAG,CAAC;YACF,mBAAmB,GAAG,gBAAgB,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACrE,iBAAiB,GAAG,cAAc,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAC/D,uBAAuB,GAAG,cAAc,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;YAC3E,MAAM,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACzC,MAAM,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACrC,MAAM,cAAc,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAC3C,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC,QACC,gBAAgB,CAAC,iBAAiB,CAAC,UAAU,CAAC,KAAK,mBAAmB;YACtE,cAAc,CAAC,iBAAiB,CAAC,QAAQ,CAAC,KAAK,iBAAiB;YAChE,cAAc,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,uBAAuB,EAC5E;IACJ,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,KAAc,EAAE,MAAiB;QACjD,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;YACpC,MAAM,MAAM,GAAG,KAAK,CAAC,MAA4B,CAAC;YAClD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;YACD,OAAO;QACT,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED;;;;;;OAMG;IACH,2BAA2B,CACzB,UAA0B,EAC1B,YAAoC;QAEpC,YAAY,CAAC,yBAAyB,CAAC,UAAU,EAAE,wCAAwC,CAAC,CAAC;QAC7F,MAAM,QAAQ,GAAG,YAAY,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC7D,YAAY,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAC;QACpD,YAAY,CAAC,qBAAqB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAE7D,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QACzE,MAAM,qBAAqB,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QAEjF,OAAO;YACL,UAAU;YACV,QAAQ;YACR,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC;YACjE,GAAG,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,CAAC;YACzE,MAAM,EAAE,GAAG,EAAE;gBACX,sBAAsB,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,KAAK,EAAE,GAAG,EAAE;gBACV,gBAAgB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YAC5C,CAAC;SACF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,qBAAqB,CAAC,UAA0B,EAAE,YAAoC;QACpF,gBAAgB,CAAC,WAAW,CAAC,UAAU,EAAE;YACvC,OAAO,EAAE,YAAY,CAAC,cAAc;YACpC,cAAc,EAAE,YAAY,CAAC,cAAc;YAC3C,GAAG,CAAC,YAAY,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC;YACjE,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,cAAc,EAAE,IAAI,cAAc,EAAE;YACpC,WAAW,EAAE,YAAY,CAAC,WAAW;YACrC,eAAe,EAAE,YAAY,CAAC,eAAe;YAC7C,SAAS,EAAE,YAAY,CAAC,SAAS;YACjC,mBAAmB,EAAE,YAAY,CAAC,mBAAmB;YACrD,yBAAyB,EAAE,YAAY,CAAC,yBAAyB;YACjE,iBAAiB,EAAE,YAAY,CAAC,iBAAiB;YACjD,mBAAmB,EAAE,YAAY,CAAC,mBAAmB;YACrD,mBAAmB,EAAE,YAAY,CAAC,mBAAmB;YACrD,uBAAuB,EAAE,YAAY,CAAC,uBAAuB;YAC7D,mBAAmB,EAAE,YAAY,CAAC,mBAAmB;YACrD,iBAAiB,EAAE,YAAY,CAAC,iBAAiB;SAClD,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,UAA0B;QAC3C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAEvD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;YAC7C,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,QAAQ;SACT,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,0BAA0B,CAAC,UAA0B;QACnD,MAAM,QAAQ,GAAG,YAAY,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC7D,MAAM,YAAY,GAAG,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAE5D,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CACb,mBAAmB,QAAQ,CAAC,iBAAiB,+CAA+C;gBAC1F,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,IAAI,CAClC,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,QAA8B;QAC9C,OAAO,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAClC,CAAC,KAAK,EAAE,EAAE,CACR,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAC/E,YAAY,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CACtD,CACJ,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,QAA8B;QACjD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;YAC7C,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;SAC5B,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,qBAAqB,CAAC,YAAsC;QAC1D,MAAM,WAAW,GAAyB,EAAE,CAAC;QAE7C,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACvD,MAAM,UAAU,GAAG,gBAAgB,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YAEhE,IAAI,QAAQ,CAAC,YAAY,KAAK,YAAY,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBACvE,SAAS;YACX,CAAC;YAED,WAAW,CAAC,IAAI,CACd,MAAM,CAAC,MAAM,CAAC;gBACZ,UAAU;gBACV,UAAU;gBACV,aAAa,EAAE,IAAI,GAAG,CACpB,UAAU,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CACrE;gBACD,MAAM,EAAE,QAAQ,CAAC,WAAW;gBAC5B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;aAC/C,CAAC,CACH,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;IAED;;;;;OAKG;IACH,2BAA2B,CACzB,WAA0C;QAE1C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAsC,CAAC;QAE7D,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpC,MAAM,CAAC,GAAG,CACR,UAAU,CAAC,OAAO,EAClB,MAAM,CAAC,MAAM,CAAC;oBACZ,MAAM,EAAE,UAAU,CAAC,MAAM;oBACzB,OAAO,EAAE,UAAU,CAAC,OAAO;iBAC5B,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,gBAAgB,CACpB,OAAuB,EACvB,cAA8B;QAE9B,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAE3D,IAAI,CAAC;YACH,OAAO,MAAM,UAAU,CAAC,IAAI,CAAC;gBAC3B,IAAI,EAAE;oBACJ,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE;oBACxC,EAAE,KAAK,EAAE,0BAA0B,EAAE,SAAS,EAAE,KAAK,EAAE;oBACvD,EAAE,KAAK,EAAE,wBAAwB,EAAE,SAAS,EAAE,KAAK,EAAE;oBACrD,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE;iBACxC;aACF,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,mBAAmB,CAAC,OAAuB;QACzC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACzB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,cAAc,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,OAAuB,EAAE,KAAY;QACxD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,MAAM,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;QAE1C,MAAM,gBAAgB,GAAG,YAAY,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC9D,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,CAAC;QACD,IAAI,cAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,GAAG,KAAK,cAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,GAAG,EAAE,CAAC;YAC5F,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,KAAY;QAC3B,QAAQ,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;YACnC,KAAK,eAAe;gBAClB,OAAO,YAAY,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACzE,KAAK,aAAa;gBAChB,OAAO,YAAY,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YACvF;gBACE,OAAO,SAAS,CAAC;QACrB,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,QAA8B;QAC1C,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,6BAA6B,CACjC,WAA0C,EAC1C,KAAY,EACZ,OAAgB;QAEhB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC;QAEvC,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QAE3F,KAAK,MAAM,UAAU,IAAI,QAAQ,EAAE,CAAC;YAClC,MAAM,UAAU,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;QAClE,CAAC;QACD,KAAK,MAAM,UAAU,IAAI,QAAQ,EAAE,CAAC;YAClC,MAAM,gBAAgB,CAAC,wBAAwB,CAC7C,UAAU,CAAC,UAAU,EACrB,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,EACzB,OAAO,CACR,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IAED;;;;;;OAMG;IACH,kBAAkB,CAAC,KAAY,EAAE,KAAc;QAC7C,OAAO,IAAI,kBAAkB,CAC3B,KAAK,CAAC,EAAE,EAAE,KAAK,IAAI,WAAW,EAC9B,YAAY,CAAC,mBAAmB,CAAC,KAAK,CAAC,CACxC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,kBAAkB,CAAC,KAAa,EAAE,KAAa;QAC7C,OAAO,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IAC3E,CAAC;IAED;;;;;OAKG;IACH,mBAAmB,CAAC,KAAc;QAChC,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO,MAAM,CAAC,MAAM,CAAC;gBACnB,IAAI,EAAE,YAAY,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,EAAE,gBAAgB,CAAC,IAAI,OAAO;gBAC9E,OAAO,EAAE,YAAY,CAAC,kBAAkB,CAAC,KAAK,CAAC,OAAO,EAAE,gBAAgB,CAAC;aAC1E,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,YAAY,CAAC,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC;SAC1E,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,YAAY,CAAC,MAAe,EAAE,QAA8B;QAC1D,MAAM,KAAK,GAAG,YAAY,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAE/E,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CACb,qBAAqB,QAAQ,CAAC,iBAAiB,wBAAwB,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CACjG,CAAC;QACJ,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;OAMG;IACH,eAAe,CAAC,MAAe,EAAE,SAA+C;QAC9E,OAAQ,MAAkC,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC;CACF,CAAC,CAAC;AAMH;;;;GAIG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAGvC,MAAM,CAAC,MAAM,CAAC;IACjB,eAAe,CAAC,OAAuB,EAAE,KAAY;QACnD,OAAO,YAAY,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IACD,KAAK,CAAC,OAAuB;QAC3B,OAAO,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-inbox.d.ts","sourceRoot":"","sources":["../../src/context/entity-inbox.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAG1D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"entity-inbox.d.ts","sourceRoot":"","sources":["../../src/context/entity-inbox.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAG1D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,OAAO,EAAE,KAAK,gBAAgB,EAA0B,MAAM,iCAAiC,CAAC;AAChG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAEL,KAAK,gBAAgB,EACrB,iBAAiB,EAGjB,KAAK,eAAe,EACrB,MAAM,0BAA0B,CAAC;AAElC;;GAEG;AACH,qBAAa,gBAAiB,YAAW,WAAW;;IA6BlD;;;;;;OAMG;gBAED,WAAW,EAAE,MAAM,EACnB,SAAS,GAAE,iBAAiB,GAAG,eAAyC,EACxE,UAAU,GAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAA2B,EAC3E,QAAQ,GAAE,gBAAuD;IASnE;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAkBzC;;;OAGG;IACH,SAAS,IAAI,SAAS,gBAAgB,EAAE;IAIxC;;;;OAIG;IACH,QAAQ,IAAI,gBAAgB;IAI5B;;;;;OAKG;IACH,MAAM,CAAC,OAAO,EAAE,YAAY,EAAE,gBAAgB,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAMzE;;;;;;OAMG;IACG,OAAO,CACX,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,WAAW,EAClB,gBAAgB,CAAC,EAAE,QAAQ,GAC1B,OAAO,CAAC,YAAY,CAAC;IAUxB;;;;;;OAMG;IACG,UAAU,CACd,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,EACpB,gBAAgB,CAAC,EAAE,QAAQ,GAC1B,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC;CA2YpC;AAED,KAAK,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzD,KAAK,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -16,6 +16,7 @@ import { AsyncLocalStorage } from "node:async_hooks";
|
|
|
16
16
|
import { Time } from "@spine-event-engine/core/time";
|
|
17
17
|
import { TenantBoundary } from "@spine-event-engine/storage/provider";
|
|
18
18
|
import { Delivery } from "../delivery/delivery.js";
|
|
19
|
+
import { receptionObservation } from "../delivery/reception-observation.js";
|
|
19
20
|
import { UniformAcrossAllShards } from "../delivery/delivery-builder.js";
|
|
20
21
|
import { ShardIndex } from "../delivery/shard-index.js";
|
|
21
22
|
import { DeliveryReadiness, InboxHandoff, } from "./local-inbox-handoff.js";
|
|
@@ -234,13 +235,25 @@ export class LocalEntityInbox {
|
|
|
234
235
|
};
|
|
235
236
|
}
|
|
236
237
|
async #drainInboxRow(delivery, message, deliveryTenantId, expectedShard) {
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
238
|
+
const followUps = [];
|
|
239
|
+
try {
|
|
240
|
+
await InboxHandoff.drain(this.#drainOptions(message, delivery, deliveryTenantId, expectedShard, (value) => {
|
|
241
|
+
if (value !== undefined)
|
|
242
|
+
followUps.push(value);
|
|
243
|
+
}));
|
|
244
|
+
}
|
|
245
|
+
finally {
|
|
246
|
+
if (followUps.length > 0)
|
|
247
|
+
this.#chainFollowUp(message, deliveryTenantId, async () => {
|
|
248
|
+
for (const followUp of followUps) {
|
|
249
|
+
try {
|
|
250
|
+
await followUp();
|
|
251
|
+
}
|
|
252
|
+
catch {
|
|
253
|
+
// A failed initial publication must not suppress a later Command's one attempt.
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
});
|
|
244
257
|
}
|
|
245
258
|
}
|
|
246
259
|
#drainOptions(message, delivery, deliveryTenantId, expectedShard, onSetFollowUp) {
|
|
@@ -338,6 +351,7 @@ export class LocalEntityInbox {
|
|
|
338
351
|
return `${key}:${String(shard.index)}:${String(shard.ofTotal)}`;
|
|
339
352
|
}
|
|
340
353
|
async #replay(message, deliveryTenantId, runFollowUp = true, expectedShard = this.#expectedShard(message)) {
|
|
354
|
+
receptionObservation.markManaged();
|
|
341
355
|
_a.#assert(message);
|
|
342
356
|
const target = this.#targets.get(message.inboxId.targetTypeUrl);
|
|
343
357
|
if (target === undefined) {
|