@telorun/kernel 0.80.0 → 0.82.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/controller-loaders/npm-install-root.d.ts +56 -0
- package/dist/controller-loaders/npm-install-root.d.ts.map +1 -0
- package/dist/controller-loaders/npm-install-root.js +109 -0
- package/dist/controller-loaders/npm-install-root.js.map +1 -0
- package/dist/controller-loaders/npm-loader.d.ts +3 -0
- package/dist/controller-loaders/npm-loader.d.ts.map +1 -1
- package/dist/controller-loaders/npm-loader.js +11 -1
- package/dist/controller-loaders/npm-loader.js.map +1 -1
- package/dist/controllers/logging/console-sink-controller.d.ts.map +1 -1
- package/dist/controllers/logging/console-sink-controller.js +19 -9
- package/dist/controllers/logging/console-sink-controller.js.map +1 -1
- package/dist/controllers/logging/file-sink-controller.d.ts.map +1 -1
- package/dist/controllers/logging/file-sink-controller.js +17 -6
- package/dist/controllers/logging/file-sink-controller.js.map +1 -1
- package/dist/controllers/module/import-controller.d.ts.map +1 -1
- package/dist/controllers/module/import-controller.js +36 -15
- package/dist/controllers/module/import-controller.js.map +1 -1
- package/dist/controllers/resource-definition/resource-template-controller.d.ts.map +1 -1
- package/dist/controllers/resource-definition/resource-template-controller.js +7 -5
- package/dist/controllers/resource-definition/resource-template-controller.js.map +1 -1
- package/dist/effect-scope.d.ts +132 -0
- package/dist/effect-scope.d.ts.map +1 -0
- package/dist/effect-scope.js +253 -0
- package/dist/effect-scope.js.map +1 -0
- package/dist/evaluation-context.d.ts +26 -1
- package/dist/evaluation-context.d.ts.map +1 -1
- package/dist/evaluation-context.js +156 -12
- package/dist/evaluation-context.js.map +1 -1
- package/dist/init-failure-diagnostics.d.ts +10 -0
- package/dist/init-failure-diagnostics.d.ts.map +1 -1
- package/dist/init-failure-diagnostics.js +7 -1
- package/dist/init-failure-diagnostics.js.map +1 -1
- package/dist/kernel.d.ts +6 -2
- package/dist/kernel.d.ts.map +1 -1
- package/dist/kernel.js +23 -14
- package/dist/kernel.js.map +1 -1
- package/dist/manifest-schemas.d.ts +4 -1
- package/dist/manifest-schemas.d.ts.map +1 -1
- package/dist/manifest-schemas.js +4 -10
- package/dist/manifest-schemas.js.map +1 -1
- package/dist/module-context.d.ts +10 -0
- package/dist/module-context.d.ts.map +1 -1
- package/dist/module-context.js +15 -0
- package/dist/module-context.js.map +1 -1
- package/dist/observed-state.d.ts.map +1 -1
- package/dist/observed-state.js +2 -4
- package/dist/observed-state.js.map +1 -1
- package/dist/resource-context.d.ts +18 -1
- package/dist/resource-context.d.ts.map +1 -1
- package/dist/resource-context.js +27 -0
- package/dist/resource-context.js.map +1 -1
- package/dist/schema-compiled-values.d.ts +2 -1
- package/dist/schema-compiled-values.d.ts.map +1 -1
- package/dist/schema-compiled-values.js +23 -20
- package/dist/schema-compiled-values.js.map +1 -1
- package/package.json +4 -3
- package/src/controller-loaders/npm-install-root.ts +131 -0
- package/src/controller-loaders/npm-loader.ts +12 -1
- package/src/controllers/logging/console-sink-controller.ts +19 -9
- package/src/controllers/logging/file-sink-controller.ts +17 -6
- package/src/controllers/module/import-controller.ts +50 -27
- package/src/controllers/resource-definition/resource-template-controller.ts +14 -11
- package/src/effect-scope.ts +340 -0
- package/src/evaluation-context.ts +165 -10
- package/src/init-failure-diagnostics.ts +8 -1
- package/src/kernel.ts +26 -13
- package/src/manifest-schemas.ts +4 -9
- package/src/module-context.ts +16 -0
- package/src/observed-state.ts +2 -4
- package/src/resource-context.ts +32 -0
- package/src/schema-compiled-values.ts +35 -21
|
@@ -3,7 +3,8 @@ import { formatSpanCounter } from "./logging/span-id.js";
|
|
|
3
3
|
import { deriveContext, getRefIdentity, isCompiledValue, isInvokeError, isCancellationError, isSuspension, resourceKey, UNCANCELLABLE_CONTEXT, } from "@telorun/sdk";
|
|
4
4
|
import { RuntimeError } from "@telorun/sdk";
|
|
5
5
|
import { evalPathCovers } from "@telorun/analyzer";
|
|
6
|
-
import {
|
|
6
|
+
import { effectOwnerOf, executeReturnedChain } from "./effect-scope.js";
|
|
7
|
+
import { classifyInitFailures, isDeferral, renderInitFailureText, summarizeInitFailures, } from "./init-failure-diagnostics.js";
|
|
7
8
|
import { acceptReportedStatus, buildPublishedProps, diagnoseObservedStateAccess, } from "./observed-state.js";
|
|
8
9
|
export { resourceKey };
|
|
9
10
|
/** A pure resolved reference is a `{ kind, name, alias? }` object and nothing
|
|
@@ -398,8 +399,22 @@ export class EvaluationContext {
|
|
|
398
399
|
state = "Pending";
|
|
399
400
|
/** Resource instances owned by this context node, keyed by resourceKey(). */
|
|
400
401
|
resourceInstances = new Map();
|
|
401
|
-
/** Resources that have been created but not yet initialized (between phases).
|
|
402
|
+
/** Resources that have been created but not yet initialized (between phases).
|
|
403
|
+
* `source` is the manifest as REGISTERED, kept so a discarded instance is
|
|
404
|
+
* rebuilt from what the author wrote rather than from the create-time
|
|
405
|
+
* expansion of it. */
|
|
402
406
|
createdInstances = new Map();
|
|
407
|
+
/**
|
|
408
|
+
* Resources whose failed `init()` could not be rolled back.
|
|
409
|
+
*
|
|
410
|
+
* Withheld rather than retried: re-running `init()` from a state an inverse
|
|
411
|
+
* refused to restore is worse than not retrying, so the loop skips them and
|
|
412
|
+
* they are reported with both the init error and the refusing inverse.
|
|
413
|
+
*/
|
|
414
|
+
withheldResources = new Set();
|
|
415
|
+
/** Resources discarded after a failed `init()` and re-queued for creation.
|
|
416
|
+
* Their re-creation is not progress — see the create sub-phase. */
|
|
417
|
+
recreatedResources = new Set();
|
|
403
418
|
/** Resources queued for initialization on this context node. */
|
|
404
419
|
pendingResources = [];
|
|
405
420
|
/**
|
|
@@ -614,6 +629,20 @@ export class EvaluationContext {
|
|
|
614
629
|
* Attach a child context to this node. The child's parent is set to this
|
|
615
630
|
* context and the child is registered under the given name.
|
|
616
631
|
*/
|
|
632
|
+
/**
|
|
633
|
+
* Detach a child from this node — the inverse of {@link spawnChild}.
|
|
634
|
+
*
|
|
635
|
+
* A child is normally torn down in place, so this exists for the one case
|
|
636
|
+
* that discards it instead: an import whose instance is dropped and rebuilt
|
|
637
|
+
* must not leave its child in `children`, or this context's teardown cascades
|
|
638
|
+
* into a context whose replacement is already live. Here rather than in the
|
|
639
|
+
* controller, because how children are tracked is this class's own fact.
|
|
640
|
+
*/
|
|
641
|
+
detachChild(child) {
|
|
642
|
+
const index = this.children.indexOf(child);
|
|
643
|
+
if (index >= 0)
|
|
644
|
+
this.children.splice(index, 1);
|
|
645
|
+
}
|
|
617
646
|
spawnChild(child) {
|
|
618
647
|
child.parent = this;
|
|
619
648
|
this.children.push(child);
|
|
@@ -698,12 +727,20 @@ export class EvaluationContext {
|
|
|
698
727
|
resource: created.resource,
|
|
699
728
|
instance: created.instance,
|
|
700
729
|
ctx: created.ctx,
|
|
730
|
+
source: resource,
|
|
701
731
|
});
|
|
702
732
|
const idx = this.pendingResources.findIndex((m) => m.metadata.name === name);
|
|
703
733
|
if (idx >= 0)
|
|
704
734
|
this.pendingResources.splice(idx, 1);
|
|
705
735
|
errors.delete(name);
|
|
706
|
-
progress
|
|
736
|
+
// A FIRST creation is progress; RE-creating a resource whose init
|
|
737
|
+
// failed is not. Counting it would keep the loop alive on a
|
|
738
|
+
// permanently failing resource for every remaining pass, re-running
|
|
739
|
+
// `create()` each time — ten module loads for a broken import, ten
|
|
740
|
+
// pools for an unreachable database. Its retry still happens; what
|
|
741
|
+
// it no longer does is claim the environment moved.
|
|
742
|
+
if (!this.recreatedResources.has(name))
|
|
743
|
+
progress = true;
|
|
707
744
|
const createdRes = created.resource;
|
|
708
745
|
const refs = collectResourceRefs(createdRes);
|
|
709
746
|
this.resourceDependencies.set(name, localDependencyNames(refs));
|
|
@@ -738,8 +775,8 @@ export class EvaluationContext {
|
|
|
738
775
|
}
|
|
739
776
|
}
|
|
740
777
|
// Init sub-phase
|
|
741
|
-
for (const [name, { resource, instance, ctx }] of [...this.createdInstances]) {
|
|
742
|
-
if (this.resourceInstances.has(name))
|
|
778
|
+
for (const [name, { resource, instance, ctx, source }] of [...this.createdInstances]) {
|
|
779
|
+
if (this.resourceInstances.has(name) || this.withheldResources.has(name))
|
|
743
780
|
continue;
|
|
744
781
|
try {
|
|
745
782
|
if (this.preInitHook) {
|
|
@@ -747,8 +784,67 @@ export class EvaluationContext {
|
|
|
747
784
|
? this.resolveImportedInstance(alias, n)
|
|
748
785
|
: this.resourceInstances.get(n)?.instance, (n) => this.hasManifest(n) && !this.resourceInstances.has(n), this);
|
|
749
786
|
}
|
|
750
|
-
|
|
751
|
-
|
|
787
|
+
const scope = effectOwnerOf(instance)?.effects;
|
|
788
|
+
scope?.openFrame("init");
|
|
789
|
+
try {
|
|
790
|
+
// What `init()` RETURNS is what undoes it. A controller that
|
|
791
|
+
// allocates nothing returns nothing; there is no `teardown()`, so an
|
|
792
|
+
// allocation outside the chain is one nothing will reclaim.
|
|
793
|
+
if (instance.init)
|
|
794
|
+
await executeReturnedChain(await instance.init(ctx), scope);
|
|
795
|
+
}
|
|
796
|
+
catch (error) {
|
|
797
|
+
// Recover before the next pass: the loop retries a failed init, and
|
|
798
|
+
// an init that registered a listener before it failed to connect
|
|
799
|
+
// would otherwise register that listener again on every pass.
|
|
800
|
+
//
|
|
801
|
+
// HOW MUCH unwinds depends on whether the instance survives. A
|
|
802
|
+
// deferral keeps it, so only the init frame goes — unwinding the
|
|
803
|
+
// create frame there would destroy what construction built (a
|
|
804
|
+
// connection's pool) and then re-init the same instance against it.
|
|
805
|
+
// A real failure discards the instance, so everything `create()`
|
|
806
|
+
// allocated on its behalf goes with it or nothing reclaims it.
|
|
807
|
+
const deferred = isDeferral(error);
|
|
808
|
+
const refused = (await (deferred ? scope?.unwindFrame() : scope?.unwindAll())) ?? [];
|
|
809
|
+
if (refused.length > 0) {
|
|
810
|
+
// Retrying from a state that could not be rolled back is worse
|
|
811
|
+
// than not retrying, so the resource is withheld with a cause
|
|
812
|
+
// naming both the init error and the inverse that refused. The
|
|
813
|
+
// entry stays in `createdInstances` so it is still reported as a
|
|
814
|
+
// failure; the loop skips it from here on.
|
|
815
|
+
this.withheldResources.add(name);
|
|
816
|
+
throw new RuntimeError("ERR_EFFECT_RECOVERY_FAILED", `${resource.kind} '${name}' failed to initialize and could not be rolled back: ` +
|
|
817
|
+
`${refused.map((f) => `'${f.reason}' (${errorText(f.error)})`).join(", ")}`, [
|
|
818
|
+
{ severity: "error", message: errorText(error), resource: name },
|
|
819
|
+
...refused.map((f) => ({
|
|
820
|
+
severity: "error",
|
|
821
|
+
message: `inverse '${f.reason}' refused: ${errorText(f.error)}`,
|
|
822
|
+
resource: name,
|
|
823
|
+
})),
|
|
824
|
+
]);
|
|
825
|
+
}
|
|
826
|
+
// A DEFERRAL is not a failure: it is the loop's own "your turn has
|
|
827
|
+
// not come" signal, raised when a ref names a resource that has not
|
|
828
|
+
// initialized yet. The instance stays — re-creating it would re-run
|
|
829
|
+
// `create()`, which for an import re-registers its alias and reloads
|
|
830
|
+
// its module, and for a template re-registers its children. Its init
|
|
831
|
+
// frame alone was unwound above, so the next pass re-inits a
|
|
832
|
+
// constructed resource rather than a dismantled one.
|
|
833
|
+
if (deferred)
|
|
834
|
+
throw error;
|
|
835
|
+
// The inverses restored what init() touched OUTSIDE the instance;
|
|
836
|
+
// the instance's own half-built fields are beyond their reach, so
|
|
837
|
+
// the object goes too and the next pass builds a fresh one. That is
|
|
838
|
+
// what makes "retry from a clean state" literal rather than a
|
|
839
|
+
// convention each controller has to honour.
|
|
840
|
+
this.createdInstances.delete(name);
|
|
841
|
+
this.recreatedResources.add(name);
|
|
842
|
+
// Re-queued as REGISTERED, not as created: the create-time manifest
|
|
843
|
+
// has already been through compile-field expansion, and expanding
|
|
844
|
+
// it a second time would evaluate an author's expression twice.
|
|
845
|
+
this.pendingResources.push(source);
|
|
846
|
+
throw error;
|
|
847
|
+
}
|
|
752
848
|
// Publish BEFORE registering: publication can fail (a kind returning
|
|
753
849
|
// the reserved `status` key without declaring it, a report that does
|
|
754
850
|
// not match `status:`), and a resource that failed must not be left
|
|
@@ -956,9 +1052,26 @@ export class EvaluationContext {
|
|
|
956
1052
|
reportedStatus.delete(instance);
|
|
957
1053
|
startedInstances.delete(instance);
|
|
958
1054
|
completedInstances.delete(instance);
|
|
1055
|
+
// Tearing a resource down IS unwinding its effects — every frame, newest
|
|
1056
|
+
// first, LIFO within each. There is no `teardown()` to call: what undoes a
|
|
1057
|
+
// resource is what its `init()` and `run()` returned.
|
|
1058
|
+
const owner = effectOwnerOf(instance);
|
|
1059
|
+
const refused = (await owner?.effects.unwindAll()) ?? [];
|
|
1060
|
+
if (refused.length > 0) {
|
|
1061
|
+
// Aggregate and continue: one refusing inverse must not strand the log
|
|
1062
|
+
// sinks pinned last to outlive everything that might log on the way
|
|
1063
|
+
// down.
|
|
1064
|
+
failures.push({
|
|
1065
|
+
resource: label,
|
|
1066
|
+
error: new RuntimeError("ERR_EFFECT_RECOVERY_FAILED", `${refused.length} inverse(s) refused: ` +
|
|
1067
|
+
refused.map((f) => `'${f.reason}' (${errorText(f.error)})`).join(", ")),
|
|
1068
|
+
});
|
|
1069
|
+
}
|
|
1070
|
+
// A drain waits for in-flight background work under a bound and then
|
|
1071
|
+
// abandons it — not an inverse, so it is not on a frame; it runs here,
|
|
1072
|
+
// once the resource's own effects are undone.
|
|
959
1073
|
try {
|
|
960
|
-
|
|
961
|
-
await instance.teardown();
|
|
1074
|
+
await owner?.drainDetached();
|
|
962
1075
|
}
|
|
963
1076
|
catch (err) {
|
|
964
1077
|
// Aggregate rather than abort. A single throwing resource used to
|
|
@@ -1357,12 +1470,26 @@ export class EvaluationContext {
|
|
|
1357
1470
|
// the whole point — `ctx.setStatus()` is an error until the resource counts
|
|
1358
1471
|
// as started, so this has to happen first.
|
|
1359
1472
|
await this.markStarted(name, instance);
|
|
1473
|
+
// A frame of its own: what `run()` allocates (a listening socket, a kernel
|
|
1474
|
+
// hold) is undone when the run's frame unwinds, without disturbing what
|
|
1475
|
+
// `init()` built underneath it.
|
|
1476
|
+
const effects = effectOwnerOf(instance)?.effects;
|
|
1477
|
+
effects?.openFrame("run");
|
|
1360
1478
|
try {
|
|
1361
1479
|
// Runnable: run inside the ALS scope so nested invokes inherit the token and
|
|
1362
1480
|
// trace id (skip the redundant `run` when the token is already ambient).
|
|
1363
1481
|
// Service: call directly with the explicit context and NO ambient scope, so
|
|
1364
1482
|
// its long-lived async work does not capture this scope.
|
|
1365
|
-
|
|
1483
|
+
// What `run()` returns is what undoes it — the socket it opened, the hold
|
|
1484
|
+
// it took. The chain executes INSIDE the same ambient scope as the call
|
|
1485
|
+
// that produced it: its bodies are the work `run()` would otherwise have
|
|
1486
|
+
// done inline, so running them outside would silently strip the
|
|
1487
|
+
// cancellation token and trace parent from exactly the code that moved
|
|
1488
|
+
// into a chain.
|
|
1489
|
+
const call = async () => {
|
|
1490
|
+
const returned = await instance.run(invokeCtx);
|
|
1491
|
+
await executeReturnedChain(returned, effects);
|
|
1492
|
+
};
|
|
1366
1493
|
await (isService || invokeCtx === ambient ? call() : cancellationStore.run(invokeCtx, call));
|
|
1367
1494
|
// A one-shot Runnable that discovered something during run() publishes it
|
|
1368
1495
|
// without an explicit call; a Service never reaches this until teardown.
|
|
@@ -1371,15 +1498,28 @@ export class EvaluationContext {
|
|
|
1371
1498
|
await this.emit(`${name}.Run`, span("end", "ok", {}));
|
|
1372
1499
|
}
|
|
1373
1500
|
catch (err) {
|
|
1501
|
+
// A run that did not complete leaves nothing of its own behind: its frame
|
|
1502
|
+
// unwinds here, so a `listen()` that threw releases the hold it took a
|
|
1503
|
+
// line earlier instead of holding the process open for a server that
|
|
1504
|
+
// never came up.
|
|
1505
|
+
const refused = (await effects?.unwindFrame()) ?? [];
|
|
1506
|
+
const recovery = refused.length > 0
|
|
1507
|
+
? {
|
|
1508
|
+
recoveryFailures: refused.map((f) => ({
|
|
1509
|
+
reason: f.reason,
|
|
1510
|
+
message: errorText(f.error),
|
|
1511
|
+
})),
|
|
1512
|
+
}
|
|
1513
|
+
: {};
|
|
1374
1514
|
if (isCancellationError(err)) {
|
|
1375
1515
|
const reason = err instanceof Error ? err.message : String(err);
|
|
1376
|
-
await this.emit(`${name}.RunCancelled`, span("end", "cancelled", { reason }));
|
|
1516
|
+
await this.emit(`${name}.RunCancelled`, span("end", "cancelled", { reason, ...recovery }));
|
|
1377
1517
|
throw err;
|
|
1378
1518
|
}
|
|
1379
1519
|
const detail = err instanceof Error
|
|
1380
1520
|
? { name: err.name, message: err.message }
|
|
1381
1521
|
: { name: "UnknownError", message: String(err) };
|
|
1382
|
-
await this.emit(`${name}.RunFailed`, span("end", "failed", detail));
|
|
1522
|
+
await this.emit(`${name}.RunFailed`, span("end", "failed", { ...detail, ...recovery }));
|
|
1383
1523
|
throw err;
|
|
1384
1524
|
}
|
|
1385
1525
|
}
|
|
@@ -1714,6 +1854,10 @@ function locateFailedAccess(source, ctx, msg) {
|
|
|
1714
1854
|
}
|
|
1715
1855
|
return null;
|
|
1716
1856
|
}
|
|
1857
|
+
/** One line for an inverse's refusal, quoted into a recovery aggregate. */
|
|
1858
|
+
function errorText(err) {
|
|
1859
|
+
return err instanceof Error ? err.message : String(err);
|
|
1860
|
+
}
|
|
1717
1861
|
function describeMissingAccess(value, key) {
|
|
1718
1862
|
if (value === null)
|
|
1719
1863
|
return `cannot read '${key}' — value is null`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evaluation-context.js","sourceRoot":"","sources":["../src/evaluation-context.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"evaluation-context.js","sourceRoot":"","sources":["../src/evaluation-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EACL,aAAa,EACb,cAAc,EACd,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,qBAAqB,GAkBtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EACL,oBAAoB,EACpB,UAAU,EACV,qBAAqB,EACrB,qBAAqB,GAEtB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,CAAC;AAKvB;;;;yCAIyC;AACzC,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9E,MAAM,CAAC,GAAG,KAAgC,CAAC;IAC3C,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC3E,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC;AACpF,CAAC;AAED;;;;;;0EAM0E;AAC1E,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC,CAAC,iBAAiB,EAAE,eAAe,EAAE,WAAW,CAAC,CAAC,CAAC;AAE5F;;;;;;;;;GASG;AACH,SAAS,mBAAmB,CAAC,QAA0B;IACrD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC7C,MAAM,UAAU,GAAG,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAc,CAAC,CAAC;IACzE,MAAM,KAAK,GAAG,CAAC,KAAc,EAAQ,EAAE;QACrC,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;YAClD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC5H,OAAO;QACT,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,KAAK,MAAM,IAAI,IAAI,KAAK;gBAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;aAAM,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9C,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;gBACtE,IAAI,CAAC,KAAK,UAAU,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,QAAQ,CAAC;oBAAE,SAAS;gBACjE,KAAK,CAAC,CAAC,CAAC,CAAC;YACX,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IACF,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAmC,CAAC,EAAE,CAAC;QACzE,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,UAAU,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,QAAQ,CAAC;YAAE,SAAS;QACjF,KAAK,CAAC,CAAC,CAAC,CAAC;IACX,CAAC;IACD,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,IAAmB;IAC/C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH;;qCAEqC;AACrC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAElC,MAAM,UAAU,uBAAuB,CACrC,QAA0B,EAC1B,YAAyB;IAEzB,MAAM,UAAU,GAAG,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAc,CAAC,CAAC;IACzE,MAAM,KAAK,GAAG,CAAC,CAAS,EAAU,EAAE;QAClC,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;YAClC,IAAI,CAAC,MAAM;gBAAE,SAAS;YACtB,2EAA2E;YAC3E,oEAAoE;YACpE,IAAI,GAAG,KAAK,MAAM;gBAAE,GAAG,GAAG,UAAU,CAAC;iBAChC,IAAI,MAAM,CAAC,MAAM,IAAI,uBAAuB,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1E,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,CAAC,KAAc,EAAW,EAAE;QACxC,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAI,KAA8B,CAAC,MAAM,CAAC;YACnD,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC;QACrE,CAAC;QACD,IAAI,aAAa,CAAC,KAAK,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;QACxE,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACvC,wEAAwE;YACxE,4EAA4E;YAC5E,wEAAwE;YACxE,MAAM,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YACjC,IAAI,EAAE;gBAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;YAChD,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAI,KAAK,KAAK,MAAM,CAAC,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACjD,OAAO,IAAK,KAA6C,CAAC,WAAW,EAAE,IAAI,IAAI,QAAQ,GAAG,CAAC;YAC7F,CAAC;YACD,MAAM,GAAG,GAA4B,EAAE,CAAC;YACxC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC;gBAAE,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACzF,OAAO,GAAG,CAAC;QACb,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAmC,CAAC,EAAE,CAAC;QACzE,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,UAAU,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,QAAQ,CAAC;YAAE,SAAS;QACjF,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;GAMG;AACH,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,EAAiB,CAAC;AAEjE;;;;;;;;;GASG;AACH,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAAU,CAAC;AAE/C;;;;;;;GAOG;AACH,MAAM,cAAc,GAAG,IAAI,OAAO,EAAmC,CAAC;AAEtE;;;;;;;GAOG;AACH,MAAM,kBAAkB,GAAG,IAAI,OAAO,EAAU,CAAC;AAEjD;;;;;;;;;;GAUG;AACH;;;;;;;;;;;;;;GAcG;AACH,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAAmC,CAAC;AAE3E;iFACiF;AACjF,MAAM,UAAU,yBAAyB,CACvC,QAAiB;IAEjB,OAAO,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAC7C,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAkB,CAAC;QAC7C,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AA+BD,MAAM,SAAS,GAAG,IAAI,OAAO,EAAoB,CAAC;AAElD,SAAS,aAAa,CAAC,MAAgB;IACrC,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAC/C,IAAI,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,KAAK;YAAE,OAAO,KAAK,CAAC;IAChE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAA6B;IACvD,4EAA4E;IAC5E,6EAA6E;IAC7E,YAAY;IACZ,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC;IAExD,MAAM,OAAO,GAAwC,EAAE,CAAC;IACxD,IAAI,IAAyC,CAAC;IAC9C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACjD,IAAI,WAAW,KAAK,KAAK;YAAE,SAAS;QACpC,IAAI,KAAK,EAAE,GAAG,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;IAC1B,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,IAAI,IAAI,CAAC;IAC9B,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IACjD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,YAAY,CACnB,KAAc,EACd,OAA4C;IAE5C,MAAM,SAAS,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACnD,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,CAAC,KAAe,EAAE,SAAS,CAAC,CAAC,CAAC;QAC3C,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACxC,IAAI,IAA2B,CAAC;IAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACpD,IAAI,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC;YAAE,SAAS;QACvC,IAAI,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;QACpB,IAAI,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC;IACxB,CAAC;IACD,OAAO,IAAI,IAAI,KAAK,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAY,EACZ,IAAY,EACZ,QAA0B,EAC1B,aAA6E;IAE7E,MAAM,IAAI,GACR,OAAO,QAAQ,CAAC,QAAQ,KAAK,UAAU;QACrC,CAAC,CAAE,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAyC;QACvF,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,EAAE;QACtC,IAAI;QACJ,IAAI;QACJ,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC1B,YAAY,EAAE,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM;QAC3C,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC;QACpC,OAAO,EAAE,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC;QACvC,SAAS,EAAE,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC;KAC5C,CAAC,CAAC;IACH,mBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACzC,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB;IAClC,OAAO,iBAAiB,CAAC,QAAQ,EAAE,CAAC;AACtC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAI,GAAkB,EAAE,EAAW;IACtE,OAAO,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AACxC,CAAC;AAED;;yEAEyE;AACzE,MAAM,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAI5C;;;;iEAIiE;AACjE,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,KAAK,CAAC;QACvB,OAAO,CAAC,GAAG,EAAE,EAAE;YACb,IAAI,CAAC;gBACH,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC;gBACnF,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,yEAAyE;gBACzE,oEAAoE;gBACpE,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM;oBAC9B,CAAC,CAAC,4BAA4B,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC;oBACzD,CAAC,CAAC,IAAI,CAAC;gBACT,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,IAAI,YAAY,CAAC,gCAAgC,EAAE,GAAG,IAAI,KAAK,QAAQ,EAAE,CAAC,CAAC;gBACnF,CAAC;gBACD,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBACtF,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzC,MAAM,IAAI,KAAK,CAAC,cAAc,IAAI,YAAY,GAAG,GAAG,MAAM,EAAE,CAAC,CAAC;YAChE,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC9C,MAAM,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC;QAC9B,OAAO,CAAC,GAAG,EAAE,EAAE;YACb,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;YACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBAAE,GAAG,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC,CAAC;YAC3D,OAAO,GAAG,CAAC;QACb,CAAC,CAAC;IACJ,CAAC;IACD,6EAA6E;IAC7E,uEAAuE;IACvE,oEAAoE;IACpE,8EAA8E;IAC9E,4EAA4E;IAC5E,eAAe;IACf,MAAM,KAAK,GAAG,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACjG,IAAI,KAAK,KAAK,MAAM,CAAC,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACjD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAC,GAAG,CAClE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAU,CAC3C,CAAC;QACF,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;QACzB,OAAO,CAAC,GAAG,EAAE,EAAE;YACb,MAAM,GAAG,GAA4B,EAAE,CAAC;YACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3B,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;gBAC5B,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,OAAO,iBAAiB;IAoHjB;IAnHF,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3C,QAAQ,CAA0B;IAClC,aAAa,CAAc;IAC3B,eAAe,CAAkB;IAClC,IAAI,CAAY;IAEzB,sCAAsC;IACtC,MAAM,GAAmC,SAAS,CAAC;IAC1C,QAAQ,GAAyB,EAAE,CAAC;IAE7C,oDAAoD;IACpD,KAAK,GAAmB,SAAS,CAAC;IAElC,6EAA6E;IACpE,iBAAiB,GAAG,IAAI,GAAG,EAGjC,CAAC;IAEJ;;;2BAGuB;IACJ,gBAAgB,GAAG,IAAI,GAAG,EAG1C,CAAC;IAEJ;;;;;;OAMG;IACc,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;IAEvD;wEACoE;IACnD,kBAAkB,GAAG,IAAI,GAAG,EAAU,CAAC;IAExD,gEAAgE;IACxD,gBAAgB,GAAuB,EAAE,CAAC;IAElD;;;;;;;;;;OAUG;IACgB,iBAAiB,GAAG,IAAI,GAAG,EAA4B,CAAC;IAE3E;;;mEAG+D;IAC9C,oBAAoB,GAAG,IAAI,GAAG,EAAoB,CAAC;IAEpE;;;OAGG;IACH,WAAW,CAAe;IAE1B;;;;OAIG;IACH,aAAa,CAAoD;IAEjE;;;OAGG;IACH,MAAM,CAAU;IAEhB;;;;;;;OAOG;IACH,KAAK,CAAiB;IAEtB;uFACmF;IACnF,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/C,CAAC;IAED,wEAAwE;IAChE,UAAU,CAAC,IAAY,EAAE,IAAY;QAC3C,OAAO,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;IAC9C,CAAC;IAED;;;yEAGqE;IAC7D,WAAW,CAAC,IAAmB;QACrC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACxB,GAAG,GAAG;YACN,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC;SAChF,CAAC,CAAC,CAAC;IACN,CAAC;IAED,YACW,MAAc,EACvB,OAAgC,EAChC,iBAAkC,KAAK,IAAI,EAAE,CAAC,IAAI,EAClD,YAAyB,EACzB,IAAe;QAJN,WAAM,GAAN,MAAM,CAAQ;QAMvB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,IAAI,CAAC,aAAa,GAAG,YAAY,IAAI,IAAI,GAAG,EAAE,CAAC;QAC/C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED;iFAC6E;IACnE,qBAAqB,CAAC,IAAY,EAAE,IAA6B;QACzE,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAClC,CAAC;IAED;;4CAEwC;IAC9B,YAAY,CAAsE;IAE5F;;mCAE+B;IACvB,KAAK,CAAC,WAAW,CAAC,IAAY,EAAE,QAA0B;QAChE,IAAI,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO;QAC3C,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC/B,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,iBAAiB,CAAC,IAAY,EAAE,MAA+B;QACnE,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClF,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAc,CAAC;QAC3C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,YAAY,CACpB,iCAAiC,EACjC,GAAG,IAAI,KAAK,IAAI,gLAAgL,CACjM,CAAC;QACJ,CAAC;QACD,cAAc,CAAC,GAAG,CAChB,KAAK,CAAC,QAAQ,EACd,oBAAoB,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CACtF,CAAC;QACF,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED;;;8EAG0E;IAClE,cAAc,CAAC,IAAY;QACjC,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC;QAC3F,OAAO,GAAG,EAAE,MAAM,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,eAAe,CAAC,IAAY;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClF,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ;YAAE,OAAO;QACtC,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAEjD,CAAC;QACd,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAc,CAAC;QAC3C,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,EAAE;YACtC,IAAI;YACJ,IAAI;YACJ,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAA4B;YAC7D,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;YACvC,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC1C,OAAO,EAAE,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC7C,SAAS,EAAE,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC;SAClD,CAAC,CAAC;QACH,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/C,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,KAAe;QAC1B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAClC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAc,CAAC,IAAI,QAAQ,CAAC;YAC3D,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAc,CAAC,IAAI,QAAQ,CAAC;YAC3D,OAAO,EAAE,GAAG,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,IAAY;QACtB,OAAO,CACL,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;YAChC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC;YAC/B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,CAC5D,CAAC;IACJ,CAAC;IAED,gBAAgB,CAAC,QAA0B;QACzC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACvB,QAAQ,CAAC,QAAQ,GAAG,EAAE,IAAI,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;QACnF,CAAC;QACD,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;QACpC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,YAAY,CAAC,wBAAwB,EAAE,aAAa,IAAI,yBAAyB,CAAC,CAAC;QAC/F,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;;;;;;OAUG;IACH,uBAAuB,CAAC,IAAY,EAAE,KAAc;QAClD,IAAI,KAAK,IAAI,KAAK,KAAK,MAAM;YAAE,OAAO,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAChF,IAAI,IAAI,GAAkC,IAAI,CAAC;QAC/C,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,KAAK;gBAAE,OAAO,KAAK,CAAC;YACxB,IAAI,GAAG,IAAI,CAAC,MAAuC,CAAC;QACtD,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;oEACgE;IAChE,uBAAuB,CAAC,KAAa,EAAE,IAAY;QACjD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACH;;;;;;;;OAQG;IACH,WAAW,CAAC,KAAyB;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,KAAK,IAAI,CAAC;YAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,UAAU,CAA+B,KAAQ;QAC/C,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,sFAAsF;QACtF,mFAAmF;QACnF,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YAC3C,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACvC,CAAC;QACD,IAAI,IAAI,CAAC,aAAa,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;YAC/C,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QAC3C,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACjC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC7B,CAAC;QACD,uEAAuE;QACvE,sEAAsE;QACtE,qEAAqE;QACrE,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;4DAMwD;IACxD,iBAAiB;QACf,MAAM,KAAK,GAAG,IAAI,iBAAiB,CACjC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,IAAI,CACV,CAAC;QACF,KAAK,CAAC,uBAAuB,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC3F,KAAK,CAAC,uBAAuB,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC3F,KAAK,CAAC,YAAY,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,uBAAuB,CAAC,KAAa,EAAE,IAAY;QACjD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,mBAAmB;QACvB,MAAM,UAAU,GAAG,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,IAAI,GAAG,EAGnB,CAAC;QAEJ,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,GAAG,CAAC;YACF,IAAI,QAAQ,GAAG,KAAK,CAAC;YAErB,mBAAmB;YACnB,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBAClD,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACpC,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC;oBAAE,SAAS;gBAC9C,IAAI,CAAC;oBACH,8DAA8D;oBAC9D,mEAAmE;oBACnE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBAC3D,IAAI,OAAO,EAAE,CAAC;wBACZ,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE;4BAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;4BAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;4BAC1B,GAAG,EAAE,OAAO,CAAC,GAAG;4BAChB,MAAM,EAAE,QAAQ;yBACjB,CAAC,CAAC;wBACH,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;wBAC7E,IAAI,GAAG,IAAI,CAAC;4BAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;wBACnD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wBACpB,kEAAkE;wBAClE,4DAA4D;wBAC5D,oEAAoE;wBACpE,mEAAmE;wBACnE,mEAAmE;wBACnE,oDAAoD;wBACpD,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC;4BAAE,QAAQ,GAAG,IAAI,CAAC;wBACxD,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC;wBACpC,MAAM,IAAI,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;wBAC7C,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;wBAChE,MAAM,OAAO,GAA4B;4BACvC,QAAQ,EAAE;gCACR,IAAI,EAAE,UAAU,CAAC,IAAI;gCACrB,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI;gCAC9B,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM;gCAClC,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;6BAC/D;4BACD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC5C,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;yBACrC,CAAC;wBACF,uEAAuE;wBACvE,oEAAoE;wBACpE,qEAAqE;wBACrE,sEAAsE;wBACtE,oDAAoD;wBACpD,IAAI,KAA0C,CAAC;wBAC/C,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE;4BAC3C,UAAU,EAAE,IAAI;4BAChB,YAAY,EAAE,IAAI;4BAClB,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,KAAK,uBAAuB,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;yBAC9E,CAAC,CAAC;wBACH,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,UAAU,EAAE,OAAO,CAAC,CAAC;oBACrF,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,KAAK,YAAY,YAAY,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,uBAAuB,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC;wBAAE,MAAM,KAAK,CAAC;oBACzH,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;gBACpD,CAAC;YACH,CAAC;YAED,iBAAiB;YACjB,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACrF,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;oBAAE,SAAS;gBACnF,IAAI,CAAC;oBACH,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;wBACrB,IAAI,CAAC,WAAW,CACd,QAAQ,EACR,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CACX,KAAK,IAAI,KAAK,KAAK,MAAM;4BACvB,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAC;4BACxC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,EAC7C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAC5D,IAAI,CACL,CAAC;oBACJ,CAAC;oBACD,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;oBAC/C,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;oBACzB,IAAI,CAAC;wBACH,6DAA6D;wBAC7D,qEAAqE;wBACrE,4DAA4D;wBAC5D,IAAI,QAAQ,CAAC,IAAI;4BAAE,MAAM,oBAAoB,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;oBACjF,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,oEAAoE;wBACpE,iEAAiE;wBACjE,8DAA8D;wBAC9D,EAAE;wBACF,+DAA+D;wBAC/D,iEAAiE;wBACjE,8DAA8D;wBAC9D,oEAAoE;wBACpE,iEAAiE;wBACjE,+DAA+D;wBAC/D,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;wBACnC,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;wBACrF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACvB,+DAA+D;4BAC/D,8DAA8D;4BAC9D,+DAA+D;4BAC/D,iEAAiE;4BACjE,2CAA2C;4BAC3C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;4BACjC,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,GAAG,QAAQ,CAAC,IAAI,KAAK,IAAI,uDAAuD;gCAC9E,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,MAAM,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC7E;gCACE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;gCAChE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oCACrB,QAAQ,EAAE,OAAgB;oCAC1B,OAAO,EAAE,YAAY,CAAC,CAAC,MAAM,cAAc,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;oCAC/D,QAAQ,EAAE,IAAI;iCACf,CAAC,CAAC;6BACJ,CACF,CAAC;wBACJ,CAAC;wBACD,mEAAmE;wBACnE,oEAAoE;wBACpE,oEAAoE;wBACpE,qEAAqE;wBACrE,qEAAqE;wBACrE,6DAA6D;wBAC7D,qDAAqD;wBACrD,IAAI,QAAQ;4BAAE,MAAM,KAAK,CAAC;wBAC1B,kEAAkE;wBAClE,kEAAkE;wBAClE,oEAAoE;wBACpE,8DAA8D;wBAC9D,4CAA4C;wBAC5C,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wBACnC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBAClC,oEAAoE;wBACpE,kEAAkE;wBAClE,gEAAgE;wBAChE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBACnC,MAAM,KAAK,CAAC;oBACd,CAAC;oBACD,qEAAqE;oBACrE,qEAAqE;oBACrE,oEAAoE;oBACpE,kEAAkE;oBAClE,qEAAqE;oBACrE,iCAAiC;oBACjC,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;oBACjC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;oBACzD,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACnC,qEAAqE;oBACrE,oEAAoE;oBACpE,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACvC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACpB,QAAQ,GAAG,IAAI,CAAC;oBAChB,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,cAAc,EAAE;wBACxE,QAAQ,EAAE;4BACR,IAAI,EAAE,QAAQ,CAAC,IAAI;4BACnB,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI;4BAC5B,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;yBAC3D;wBACD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC7C,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,KAAK,YAAY,YAAY,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,uBAAuB,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC;wBAAE,MAAM,KAAK,CAAC;oBACzH,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;gBACpD,CAAC;YACH,CAAC;YAED,IAAI,EAAE,CAAC;YACP,IAAI,CAAC,QAAQ;gBAAE,MAAM;QACvB,CAAC,QAAQ,IAAI,IAAI,UAAU,EAAE;QAE7B,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACvE,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,IAAY,EAAE,IAAc,EAAkB,EAAE;gBAC/E,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;gBAC9D,OAAO;oBACL,QAAQ,EAAE,IAAI;oBACd,IAAI;oBACJ,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,IAAI;iBACL,CAAC;YACJ,CAAC,CAAC;YACF,MAAM,QAAQ,GAAqB;gBACjC,sEAAsE;gBACtE,yEAAyE;gBACzE,4DAA4D;gBAC5D,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACjC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,oBAAoB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CACjF;gBACD,GAAG,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CACzD,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAC1E;aACF,CAAC;YACF,MAAM,WAAW,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;YACnD,MAAM,IAAI,YAAY,CACpB,oCAAoC,EACpC,GAAG,qBAAqB,CAAC,WAAW,CAAC,MAAM,qBAAqB,CAAC,WAAW,CAAC,EAAE,EAC/E,WAAW,CACZ,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC;IAC7B,CAAC;IAED,aAAa,CAAI,SAAgB,EAAE,EAAW;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAC3B,IAAI,iBAAiB,CACnB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,IAAI,CACV,CACF,CAAC;QACF,IAAI,CAAC;YACH,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YACnC,CAAC;YACD,OAAO,EAAE,EAAE,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,8EAA8E;YAC9E,4EAA4E;YAC5E,2CAA2C;YAC3C,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,iBAAiB,CAAC,SAA6B;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC;QACpB,OAAO;YACL,KAAK,CAAC,GAAG,CAAI,EAAuC;gBAClD,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAC7B,IAAI,iBAAiB,CACnB,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,IAAI,CACZ,CACF,CAAC;gBACF,KAAK,CAAC,YAAY,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;gBAE5D,kEAAkE;gBAClE,mEAAmE;gBACnE,oEAAoE;gBACpE,wEAAwE;gBACxE,wEAAwE;gBACxE,qEAAqE;gBACrE,MAAM,UAAU,GAAG,IAAI,GAAG,EAAmC,CAAC;gBAC9D,KAAK,CAAC,YAAY,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;oBAClC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC7B,CAAC,CAAC;gBAEF,2FAA2F;gBAC3F,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;oBACvB,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC;oBACtC,KAAK,CAAC,WAAW,GAAG,CAAC,QAAQ,EAAE,gBAAgB,EAAE,cAAc,EAAE,KAAK,EAAE,EAAE;wBACxE,UAAU,CACR,QAAQ,EACR,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;4BACd,IAAI,KAAK,IAAI,KAAK,KAAK,MAAM;gCAAE,OAAO,MAAM,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;4BAClF,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;4BACtC,IAAI,MAAM;gCAAE,OAAO,MAAM,CAAC;4BAC1B,oEAAoE;4BACpE,kEAAkE;4BAClE,qEAAqE;4BACrE,kEAAkE;4BAClE,+DAA+D;4BAC/D,+DAA+D;4BAC/D,oEAAoE;4BACpE,wBAAwB;4BACxB,IAAI,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;gCAAE,OAAO,SAAS,CAAC;4BAC9C,OAAO,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;wBACtD,CAAC;wBACD,yEAAyE;wBACzE,6EAA6E;wBAC7E,cAAc;wBACd,uEAAuE;wBACvE,oEAAoE;wBACpE,KAAK,CACN,CAAC;oBACJ,CAAC,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC;oBACH,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;wBACjC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;oBACnC,CAAC;oBACD,MAAM,KAAK,CAAC,mBAAmB,EAAE,CAAC;oBAClC,MAAM,KAAK,GAAiB;wBAC1B,WAAW,CAAC,IAAY,EAAE,KAAc;4BACtC,wEAAwE;4BACxE,2EAA2E;4BAC3E,IAAI,KAAK,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;gCAC9B,MAAM,QAAQ,GAAG,MAAM,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gCAC7D,IAAI,QAAQ;oCAAE,OAAO,QAAQ,CAAC;gCAC9B,MAAM,IAAI,YAAY,CACpB,8BAA8B,EAC9B,2BAA2B,KAAK,IAAI,IAAI,4CAA4C,CACrF,CAAC;4BACJ,CAAC;4BACD,MAAM,UAAU,GAAG,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;4BACrD,IAAI,UAAU;gCAAE,OAAO,UAAU,CAAC,QAAQ,CAAC;4BAC3C,MAAM,WAAW,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;4BACvD,IAAI,WAAW;gCAAE,OAAO,WAAW,CAAC,QAAQ,CAAC;4BAC7C,MAAM,IAAI,YAAY,CACpB,8BAA8B,EAC9B,aAAa,IAAI,4DAA4D,CAAC,GAAG,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC9H,CAAC;wBACJ,CAAC;wBACD,KAAK,CAAC,GAAG,CAAC,IAAY;4BACpB,+DAA+D;4BAC/D,gEAAgE;4BAChE,yDAAyD;4BACzD,2CAA2C;4BAC3C,MAAM,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBACxB,CAAC;wBACD,IAAI,SAAS;4BACX,iEAAiE;4BACjE,+DAA+D;4BAC/D,MAAM,MAAM,GAA4B;gCACtC,GAAG,CAAE,MAAM,CAAC,QAAQ,CAAC,SAAiD,IAAI,EAAE,CAAC;6BAC9E,CAAC;4BACF,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,UAAU;gCAAE,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;4BAC3D,OAAO,MAAM,CAAC;wBAChB,CAAC;qBACF,CAAC;oBACF,OAAO,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;gBACzB,CAAC;wBAAS,CAAC;oBACT,MAAM,KAAK,CAAC,iBAAiB,EAAE,CAAC;oBAChC,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAC3C,IAAI,GAAG,IAAI,CAAC;wBAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,8DAA8D;IAC9D,KAAK,CAAC,iBAAiB;QACrB,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC;QACxB,MAAM,QAAQ,GAAgD,EAAE,CAAC;QAEjE,KAAK,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YACjD,IAAI,CAAC;gBACH,MAAM,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAClC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;YACjE,MAAM,KAAK,GAAG,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3D,2EAA2E;YAC3E,4EAA4E;YAC5E,2EAA2E;YAC3E,kCAAkC;YAClC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAChC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAClC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACpC,yEAAyE;YACzE,2EAA2E;YAC3E,sDAAsD;YACtD,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,CAAC,MAAM,KAAK,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC;YACzD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,uEAAuE;gBACvE,oEAAoE;gBACpE,QAAQ;gBACR,QAAQ,CAAC,IAAI,CAAC;oBACZ,QAAQ,EAAE,KAAK;oBACf,KAAK,EAAE,IAAI,YAAY,CACrB,4BAA4B,EAC5B,GAAG,OAAO,CAAC,MAAM,uBAAuB;wBACtC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,MAAM,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACzE;iBACF,CAAC,CAAC;YACL,CAAC;YACD,qEAAqE;YACrE,uEAAuE;YACvE,8CAA8C;YAC9C,IAAI,CAAC;gBACH,MAAM,KAAK,EAAE,aAAa,EAAE,CAAC;YAC/B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,kEAAkE;gBAClE,qEAAqE;gBACrE,yEAAyE;gBACzE,iEAAiE;gBACjE,8DAA8D;gBAC9D,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YACjD,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,WAAW,EAAE;oBACnC,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI;wBAC5B,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;qBAC3D;oBACD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC7C,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,mBAAmB,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YACvE,CAAC;YACD,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC;QAExB,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,YAAY,CACpB,qBAAqB,EACrB,GAAG,QAAQ,CAAC,MAAM,qCAAqC,EACvD,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;gBACrC,QAAQ,EAAE,OAAgB;gBAC1B,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC/D,QAAQ;aACT,CAAC,CAAC,CACJ,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,aAAa;QACnB,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;QAChE,0EAA0E;QAC1E,yDAAyD;QACzD,OAAO,OAAO,CAAC,IAAI,CACjB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CACf,CAAE,CAAC,CAAC,QAA0C,EAAE,gBAAgB,IAAI,CAAC,CAAC;YACtE,CAAE,CAAC,CAAC,QAA0C,EAAE,gBAAgB,IAAI,CAAC,CAAC,CACzE,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,OAA4B;QACzC,OAAO,IAAI,iBAAiB,CAC1B,IAAI,CAAC,MAAM,EACX,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,OAAO,EAAE,EAC/B,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,IAAI,CACV,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,IAAY,EACZ,IAAY,EACZ,MAAe,EACf,GAAmB;QAEnB,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAE/C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,YAAY,CACpB,wBAAwB,EACxB,sCAAsC,IAAI,IAAI,IAAI,0BAA0B,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC5H,CAAC;QACJ,CAAC;QAED,qEAAqE;QACrE,0EAA0E;QAC1E,0EAA0E;QAC1E,0DAA0D;QAC1D,MAAM,aAAa,GAAG,IAAI,IAAK,KAAK,CAAC,QAAQ,CAAC,IAAe,CAAC;QAE9D,IACE,OAAO,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,UAAU;YAC3C,OAAO,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK,UAAU,EACxC,CAAC;YACD,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,YAAY,aAAa,IAAI,IAAI,wCAAwC,CAC1E,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1E,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,cAAc,CAClB,IAAY,EACZ,IAAY,EACZ,QAA0B,EAC1B,MAAe,EACf,GAAmB;QAEnB,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,UAAU,IAAI,OAAO,QAAQ,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;YAChF,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,YAAY,IAAI,IAAI,IAAI,wCAAwC,CACjE,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;;;;OAUG;IACH;;;;;;OAMG;IACO,cAAc;QACtB,OAAO,SAAS,CAAC;IACnB,CAAC;IAES,YAAY,CACpB,IAAY,EACZ,IAAY,EACZ,MAA0B,EAC1B,YAAgC,EAChC,OAA2B,EAC3B,UAAoD,EACpD,KAAsB,EACtB,OAAgC,EAChC,MAA+B;QAE/B,OAAO;YACL,OAAO;YACP,qEAAqE;YACrE,qEAAqE;YACrE,wEAAwE;YACxE,sEAAsE;YACtE,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC;YACpE,YAAY,EAAE,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,YAAY,CAAC;YACtF,UAAU;YACV,KAAK;YACL,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7C,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;YACpD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5C,GAAG,MAAM;SACV,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,SAAS,CACrB,IAAY,EACZ,IAAY,EACZ,QAA0B,EAC1B,MAAe,EACf,GAAmB;QAEnB,yEAAyE;QACzE,yEAAyE;QACzE,8DAA8D;QAC9D,MAAM,OAAO,GAAG,iBAAiB,CAAC,QAAQ,EAAE,CAAC;QAC7C,MAAM,OAAO,GAAG,GAAG,IAAI,OAAO,IAAI,qBAAqB,CAAC;QACxD,MAAM,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC;QAEnC,4EAA4E;QAC5E,2EAA2E;QAC3E,sEAAsE;QACtE,4EAA4E;QAC5E,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;QAC9C,MAAM,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/D,6EAA6E;QAC7E,+EAA+E;QAC/E,wEAAwE;QACxE,MAAM,kBAAkB,GAAG,GAAG,EAAE,YAAY,IAAI,OAAO,EAAE,YAAY,CAAC;QACtE,8EAA8E;QAC9E,6EAA6E;QAC7E,8CAA8C;QAC9C,MAAM,OAAO,GAAG,OAAO;YACrB,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC,MAAO,CAAC,UAAU,EAAE,CAAC;YACjE,CAAC,CAAC,SAAS,CAAC;QACd,8EAA8E;QAC9E,MAAM,SAAS,GAAG,OAAO,IAAI,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAClG,MAAM,IAAI,GAAG,CACX,KAAsB,EACtB,OAAgC,EAChC,MAA+B,EAC/B,EAAE,CACF,IAAI,CAAC,YAAY,CACf,IAAI,EACJ,IAAI,EACJ,YAAY,EACZ,kBAAkB,EAClB,OAAO,EACP,QAAQ,EACR,KAAK,EACL,OAAO,EACP,KAAK,KAAK,KAAK,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,MAAM,CAC1E,CAAC;QACJ,6EAA6E;QAC7E,0EAA0E;QAC1E,0EAA0E;QAC1E,kEAAkE;QAClE,iDAAiD;QACjD,MAAM,SAAS,GAAkB,OAAO;YACtC,CAAC,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,kBAAkB,EAAE,OAAO,EAAE,CAAC;YACvE,CAAC,CAAC,OAAO,CAAC;QAEZ,0EAA0E;QAC1E,gDAAgD;QAChD,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,kBAAkB,EAAE,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACvG,MAAM,IAAI,YAAY,CACpB,sBAAsB,EACtB,UAAU,IAAI,IAAI,IAAI,iBAAiB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CACjF,CAAC;QACJ,CAAC;QAED,yEAAyE;QACzE,gFAAgF;QAChF,IAAI,OAAO;YAAE,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAEvF,IAAI,CAAC;YACH,2EAA2E;YAC3E,mEAAmE;YACnE,sEAAsE;YACtE,sEAAsE;YACtE,uEAAuE;YACvE,uEAAuE;YACvE,+CAA+C;YAC/C,uEAAuE;YACvE,2EAA2E;YAC3E,6EAA6E;YAC7E,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,UAAU;gBAAE,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAClF,MAAM,IAAI,GAAG,GAAG,EAAE,CAChB,OAAO,QAAQ,CAAC,MAAM,KAAK,UAAU;gBACnC,CAAC,CAAE,QAAQ,CAAC,MAA6C,CAAC,MAAa,EAAE,SAAS,CAAC;gBACnF,CAAC,CAAE,QAAQ,CAAC,GAAkC,CAAC,SAAS,CAAC,CAAC;YAC9D,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,KAAK,OAAO;gBAC1C,CAAC,CAAC,IAAI,EAAE;gBACR,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;YAC5C,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,UAAU;gBAAE,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC5E,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,UAAU,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;YAC3E,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,0EAA0E;YAC1E,2EAA2E;YAC3E,IAAI,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChE,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,kBAAkB,EAAE,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;gBACzF,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,yEAAyE;YACzE,0EAA0E;YAC1E,wEAAwE;YACxE,2EAA2E;YAC3E,iEAAiE;YACjE,sEAAsE;YACtE,wEAAwE;YACxE,SAAS;YACT,EAAE;YACF,mEAAmE;YACnE,wEAAwE;YACxE,0DAA0D;YAC1D,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,CAAC,IAAI,CACb,GAAG,IAAI,eAAe,EACtB,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAC1E,CAAC;gBACF,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,IAAI,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;gBAChF,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,iBAAiB,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;gBAC3E,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;gBACvD,IAAI,aAAa,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBAClD,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,4BAA4B,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;gBACxF,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;gBACzB,MAAM,IAAI,CAAC,IAAI,CACb,GAAG,IAAI,eAAe,EACtB,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CACxE,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,IAAI,CACb,GAAG,IAAI,eAAe,EACtB,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAC9E,CAAC;YACJ,CAAC;YACD,gEAAgE;YAChE,8CAA8C;YAC9C,IAAI,GAAG,YAAY,YAAY,IAAI,GAAG,CAAC,WAAW,EAAE,MAAM;gBAAE,MAAM,GAAG,CAAC;YACtE,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,MAAM,IAAI,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACzD,wEAAwE;YACxE,wEAAwE;YACxE,oEAAoE;YACpE,2DAA2D;YAC3D,uEAAuE;YACvE,mEAAmE;YACnE,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,sBAAsB,EAAE,OAAO,EAAE;gBAChE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;aACxC,CAAC,CAAC;YACF,OAA+B,CAAC,KAAK,GAAG,GAAG,CAAC;YAC7C,MAAM,OAAO,CAAC;QAChB,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH;;;gFAG4E;IAClE,eAAe,CAAC,IAAY;QACpC,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IAC3C,CAAC;IAED;;;0EAGsE;IACtE,YAAY,CAAyC;IAE7C,YAAY,CAAC,IAAY;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,EAAE,UAAU,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;IAC9F,CAAC;IAEO,qBAAqB,CAAC,IAAY;QACxC,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO,IAAI,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QACtB,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,GAAG,EAAE,CAAC;QAC9B,wEAAwE;QACxE,0EAA0E;QAC1E,mEAAmE;QACnE,yBAAyB;QACzB,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC;QACtD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,GAAG,EAAE,CAAC;QAC7B,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,GAAmB;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK,UAAU,CAAC,EAAE,CAAC;YACzD,MAAM,IAAI,YAAY,CACpB,2BAA2B,EAC3B,YAAY,IAAI,uDAAuD,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACvH,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAc,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACpF,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CACf,IAAY,EACZ,IAAY,EACZ,QAA0B,EAC1B,GAAmB;QAEnB,IAAI,OAAO,QAAQ,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;YACvC,MAAM,IAAI,YAAY,CACpB,2BAA2B,EAC3B,YAAY,IAAI,IAAI,IAAI,6BAA6B,CACtD,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,CAAC,IAA+B,EAAE,IAAqB;QACnE,MAAM,GAAG,GAAG,IAAI,IAAI,qBAAqB,CAAC;QAC1C,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,EAAE,CAAC;YAClC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC,EAAE,CAAC;QAClD,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QAClE,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC;QAChD,iFAAiF;QACjF,MAAM,SAAS,GAAG,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACjF,MAAM,MAAM,GAAG;YACb,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1E,CAAC;QACF,MAAM,OAAO,GAAG,CACd,KAAsB,EACtB,OAAgC,EAChC,QAAiC,EAAE,EACnC,EAAE,CACF,IAAI,CAAC,YAAY,CACf,IAAI,CAAC,GAAG,CAAC,IAAI,EACb,IAAI,CAAC,GAAG,CAAC,IAAI,EACb,MAAM,EACN,YAAY,EACZ,OAAO,EACP,SAAS,EACT,KAAK,EACL,OAAO,EACP,EAAE,GAAG,MAAM,EAAE,GAAG,KAAK,EAAE,CACxB,CAAC;QAEJ,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,aAAa,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;QAC5E,4EAA4E;QAC5E,2EAA2E;QAC3E,mCAAmC;QACnC,MAAM,OAAO,GAAkB,aAAa,CAAC,GAAG,EAAE;YAChD,YAAY,EAAE,MAAM;YACpB,kBAAkB,EAAE,YAAY;YAChC,OAAO;SACR,CAAC,CAAC;QACH,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,OAAO;YACL,OAAO;YACP,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;gBAC/B,IAAI,OAAO;oBAAE,OAAO;gBACpB,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,IAAI,CAAC,IAAI,CACb,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,UAAU,EAC1B,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAC9E,CAAC;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,WAAW,CACvB,IAAY,EACZ,IAAY,EACZ,QAA0B,EAC1B,GAAmB;QAEnB,MAAM,OAAO,GAAG,iBAAiB,CAAC,QAAQ,EAAE,CAAC;QAC7C,MAAM,OAAO,GAAG,GAAG,IAAI,OAAO,IAAI,qBAAqB,CAAC;QACxD,MAAM,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC;QAEnC,8EAA8E;QAC9E,+EAA+E;QAC/E,+EAA+E;QAC/E,2EAA2E;QAC3E,+EAA+E;QAC/E,2EAA2E;QAC3E,wEAAwE;QACxE,6EAA6E;QAC7E,0DAA0D;QAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,cAAc,CAAC;QAE7D,sEAAsE;QACtE,8EAA8E;QAC9E,8EAA8E;QAC9E,8EAA8E;QAC9E,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;QAC9C,MAAM,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/D,MAAM,kBAAkB,GAAG,GAAG,EAAE,YAAY,IAAI,OAAO,EAAE,YAAY,CAAC;QACtE,MAAM,OAAO,GAAG,OAAO;YACrB,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC,MAAO,CAAC,UAAU,EAAE,CAAC;YACjE,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,SAAS,GAAG,OAAO,IAAI,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAClG,MAAM,IAAI,GAAG,CACX,KAAsB,EACtB,OAAkD,EAClD,MAA+B,EAC/B,EAAE,CACF,IAAI,CAAC,YAAY,CACf,IAAI,EACJ,IAAI,EACJ,YAAY,EACZ,kBAAkB,EAClB,OAAO,EACP,KAAK,EACL,KAAK,EACL,OAAO,EACP,KAAK,KAAK,KAAK,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,MAAM,CAC1E,CAAC;QACJ,MAAM,SAAS,GAAkB,OAAO;YACtC,CAAC,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,kBAAkB,EAAE,OAAO,EAAE,CAAC;YACvE,CAAC,CAAC,OAAO,CAAC;QAEZ,4DAA4D;QAC5D,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,eAAe,EAAE,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC5F,MAAM,IAAI,YAAY,CACpB,sBAAsB,EACtB,OAAO,IAAI,IAAI,IAAI,iBAAiB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9E,CAAC;QACJ,CAAC;QAED,IAAI,OAAO;YAAE,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC;QAE9E,2EAA2E;QAC3E,4EAA4E;QAC5E,4EAA4E;QAC5E,2CAA2C;QAC3C,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAEvC,2EAA2E;QAC3E,wEAAwE;QACxE,gCAAgC;QAChC,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;QACjD,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;QAE1B,IAAI,CAAC;YACH,6EAA6E;YAC7E,yEAAyE;YACzE,4EAA4E;YAC5E,yDAAyD;YACzD,0EAA0E;YAC1E,wEAAwE;YACxE,yEAAyE;YACzE,gEAAgE;YAChE,uEAAuE;YACvE,gBAAgB;YAChB,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;gBACtB,MAAM,QAAQ,GAAG,MAAO,QAAQ,CAAC,GAA+C,CAAC,SAAS,CAAC,CAAC;gBAC5F,MAAM,oBAAoB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAChD,CAAC,CAAC;YACF,MAAM,CAAC,SAAS,IAAI,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;YAC7F,0EAA0E;YAC1E,yEAAyE;YACzE,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACjC,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,0EAA0E;YAC1E,uEAAuE;YACvE,qEAAqE;YACrE,iBAAiB;YACjB,MAAM,OAAO,GAAG,CAAC,MAAM,OAAO,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;YACrD,MAAM,QAAQ,GACZ,OAAO,CAAC,MAAM,GAAG,CAAC;gBAChB,CAAC,CAAC;oBACE,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBACpC,MAAM,EAAE,CAAC,CAAC,MAAM;wBAChB,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;qBAC5B,CAAC,CAAC;iBACJ;gBACH,CAAC,CAAC,EAAE,CAAC;YACT,IAAI,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChE,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,eAAe,EAAE,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC;gBAC3F,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,MAAM,MAAM,GACV,GAAG,YAAY,KAAK;gBAClB,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE;gBAC1C,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YACrD,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,GAAG,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC;YACxF,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,WAAW,CAAI,EAAoB;QACjC,OAAO,iBAAiB,CAAC,GAAG,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;;;;;OAUG;IACH,MAAM,CAAC,KAAc;QACnB,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAe,CAAC,CAAC;QACrD,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAe,EAAE,MAAM,CAAC,CAAC;QAC9C,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED;;;;;;;;OAQG;IACH,UAAU,CAAC,KAAc,EAAE,YAAqC;QAC9D,IAAK,YAAwC,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE,CAAC;YACnE,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QACvD,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,QAAmC,CAAC;QACrD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACvC,MAAM,WAAW,GAAc,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtD,MAAM,MAAM,GAAc,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;YACnB,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;YACrB,IAAI,MAAM,CAAC,CAAC,CAAC;gBAAE,WAAW,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACvC,GAAG,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;QACD,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;gBAAS,CAAC;YACT,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;gBACnB,IAAI,MAAM,CAAC,CAAC,CAAC;oBAAE,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;;oBAClC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACK,mBAAmB,CAAC,KAAc,EAAE,YAAqC;QAC/E,MAAM,GAAG,GAAG,IAAI,CAAC,QAAmC,CAAC;QACrD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACvC,MAAM,KAAK,GAAuC,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;YACrB,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACrD,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE;gBAC9B,GAAG,MAAM,CAAC,wBAAwB,CAAC,YAAY,EAAE,GAAG,CAAE;gBACtD,YAAY,EAAE,IAAI;aACnB,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;gBAAS,CAAC;YACT,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;gBACrB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAI,QAAQ;oBAAE,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;;oBACnD,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,SAAS,CACP,QAA6C,EAC7C,IAA6B;QAE7B,IAAI,QAAQ,KAAK,IAAI,IAAI,OAAO,QAAQ,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QACnE,6EAA6E;QAC7E,4EAA4E;QAC5E,4EAA4E;QAC5E,4EAA4E;QAC5E,sDAAsD;QACtD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CACxC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,CACtD,CAAC;QACF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAEpC,MAAM,KAAK,GAA4B,EAAE,GAAG,IAAI,EAAE,CAAC;QACnD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAmB,CAAC;QAC5C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE;gBACjC,UAAU,EAAE,IAAI;gBAChB,YAAY,EAAE,IAAI;gBAClB,GAAG,EAAE,GAAG,EAAE;oBACR,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;wBAAE,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAClD,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;wBACxB,MAAM,IAAI,YAAY,CACpB,mBAAmB,EACnB,YAAY,IAAI,8BAA8B,CAAC,GAAG,SAAS,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK;4BACjF,+EAA+E,CAClF,CAAC;oBACJ,CAAC;oBACD,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACpB,IAAI,CAAC;wBACH,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;wBACrD,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;wBAC1B,OAAO,KAAK,CAAC;oBACf,CAAC;4BAAS,CAAC;wBACT,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACzB,CAAC;gBACH,CAAC;aACF,CAAC,CAAC;QACL,CAAC;QACD,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,OAAO,KAAK,CAAC;IACf,CAAC;IAED;mEAC+D;IAC9C,WAAW,GAAG,IAAI,OAAO,EAGvC,CAAC;IAEN;;;;SAIK;IACH,WAAW,CACT,KAA8B,EAC9B,KAAe,EACf,eAAyB,EAAE;QAE3B,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,MAAM,MAAM,GAA4B,EAAE,CAAC;YAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7C,MAAM,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACnE,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,MAAM,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;QAC5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,UAAU,CAAC,IAAI,EAAE,YAAY,CAAC;gBAAE,SAAS;YAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9B,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC9C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED;;;qFAGqF;AACrF,SAAS,UAAU,CAAC,IAAY,EAAE,YAAsB;IACtD,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,cAAc,CAAC,GAA4B,EAAE,KAAe;IACnE,IAAI,OAAO,GAAY,GAAG,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QACtE,OAAO,GAAI,OAAmC,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,cAAc,CAAC,GAA4B,EAAE,KAAe,EAAE,KAAc;IACnF,IAAI,OAAO,GAA4B,GAAG,CAAC;IAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO;QACtD,OAAO,GAAG,IAA+B,CAAC;IAC5C,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AAC3C,CAAC;AAID;;;;;;GAMG;AACH,SAAS,kBAAkB,CAAC,MAAc;IACxC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IACxB,MAAM,IAAI,GAAG,yBAAyB,CAAC;IACvC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1B,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,MAAM,MAAM,GAAkB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC9D,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACvB,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YACd,CAAC,EAAE,CAAC;YACJ,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG;gBAAE,OAAO,IAAI,CAAC;YAC9B,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAChC,IAAI,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC;YACpB,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAChC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG;gBAAE,OAAO,IAAI,CAAC;YACpC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACxC,CAAC,GAAG,OAAO,CAAC;QACd,CAAC;aAAM,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YACrB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG;gBAAE,OAAO,IAAI,CAAC;YAClC,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAChC,IAAI,KAAK,KAAK,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC9B,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;YAC3C,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YAC7D,CAAC;iBAAM,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC;YACd,CAAC;YACD,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAClC,MAAc,EACd,GAAY,EACZ,GAAW;IAEX,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACrD,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO,MAAM,OAAO,CAAC,MAAM,KAAK,qBAAqB,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;AACjG,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAC1C,MAAc,EACd,GAAY,EACZ,GAAW;IAEX,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACrD,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO,2BAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;AAC5E,CAAC;AAED;;kFAEkF;AAClF,SAAS,kBAAkB,CACzB,MAAc,EACd,GAAY,EACZ,GAAW;IAEX,MAAM,CAAC,GAAG,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5C,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpB,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAExB,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACzC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAEzD,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChC,IAAI,CAAC,CAAC,QAAQ,IAAK,GAA+B,CAAC;QAAE,OAAO,IAAI,CAAC;IACjE,IAAI,OAAO,GAAa,GAA+B,CAAC,QAAQ,CAAC,CAAC;IAClE,MAAM,MAAM,GAAa,CAAC,QAAQ,CAAC,CAAC;IAEpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YACtB,IACE,OAAO,KAAK,IAAI;gBAChB,OAAO,KAAK,SAAS;gBACrB,OAAO,OAAO,KAAK,QAAQ;gBAC3B,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;gBACtB,CAAC,CAAC,GAAG,CAAC,IAAI,IAAK,OAAmC,CAAC,EACnD,CAAC;gBACD,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU;oBAAE,OAAO,IAAI,CAAC;gBACzC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YACrE,CAAC;YACD,OAAO,GAAI,OAAmC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACzD,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAC7E,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,GAAI,OAAmC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC1D,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,2EAA2E;AAC3E,SAAS,SAAS,CAAC,GAAY;IAC7B,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc,EAAE,GAAW;IACxD,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,gBAAgB,GAAG,mBAAmB,CAAC;IAClE,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,gBAAgB,GAAG,wBAAwB,CAAC;IAC5E,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,gBAAgB,GAAG,mCAAmC,KAAK,CAAC,MAAM,EAAE,CAAC;IAC9E,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAgC,CAAC,CAAC;QAC3D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,gBAAgB,GAAG,iCAAiC,CAAC;QACnF,OAAO,gBAAgB,GAAG,uBAAuB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACrE,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;QACrE,OAAO,gBAAgB,GAAG,0BAA0B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC;IACjF,CAAC;IACD,OAAO,gBAAgB,GAAG,gBAAgB,OAAO,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;AAC9E,CAAC;AAED;;;;;GAKG;AACH,SAAS,wBAAwB,CAAC,GAAY;IAM5C,IAAI,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,CAAC;IAED,qEAAqE;IACrE,8EAA8E;IAC9E,uEAAuE;IACvE,6EAA6E;IAC7E,4EAA4E;IAC5E,8EAA8E;IAC9E,oDAAoD;IACpD,IACE,GAAG,YAAY,YAAY;QAC3B,GAAG,CAAC,IAAI,KAAK,oCAAoC;QACjD,GAAG,CAAC,WAAW,EAAE,MAAM,EACvB,CAAC;QACD,OAAO;YACL,OAAO,EAAE,qBAAqB,CAAC,GAAG,CAAC,WAAW,CAAC;YAC/C,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,QAAQ,EAAE,GAAG,CAAC,WAAW;SAC1B,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAW,CAAC;IAChC,IAAI,OAAO,GAAY,GAAG,CAAC;IAC3B,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,OAA2B,CAAC;IAChC,IAAI,UAAU,GAAG,EAAE,CAAC;IAEpB,OAAO,OAAO,YAAY,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QACtD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClB,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAChB,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC;YAC1B,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACjD,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;QACD,OAAO,GAAI,OAA+B,CAAC,KAAK,CAAC;QACjD,KAAK,EAAE,CAAC;IACV,CAAC;IAED,OAAO;QACL,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC;QAC7D,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;KACjE,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAQ;IAChC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,CAAuC,CAAC;IAErD,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7E,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3F,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC;IAE3E,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;IAEvD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAgD,CAAC;IACvE,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC7C,IAAI,QAAQ,CAAC,cAAc,IAAI,IAAI;YAAE,MAAM,CAAC,IAAI,CAAC,gBAAgB,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC;QAC5F,IAAI,QAAQ,CAAC,SAAS;YAAE,MAAM,CAAC,IAAI,CAAC,eAAe,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;QACzE,IAAI,QAAQ,CAAC,iBAAiB;YAAE,MAAM,CAAC,IAAI,CAAC,wBAAwB,QAAQ,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAClG,IAAI,QAAQ,CAAC,IAAI;YAAE,MAAM,CAAC,IAAI,CAAC,UAAU,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1D,IAAI,QAAQ,CAAC,QAAQ,IAAI,IAAI;YAAE,MAAM,CAAC,IAAI,CAAC,aAAa,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC7E,IAAI,QAAQ,CAAC,eAAe,IAAI,IAAI;YAAE,MAAM,CAAC,IAAI,CAAC,sBAAsB,QAAQ,CAAC,eAAe,IAAI,CAAC,CAAC;IACxG,CAAC;IACD,IAAI,IAAI,CAAC,MAAM;QAAE,MAAM,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAE9D,IAAI,IAAI,CAAC,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrE,IAAI,IAAI,CAAC,MAAM;QAAE,MAAM,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC/D,IAAI,IAAI,CAAC,IAAI;QAAE,MAAM,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzD,IAAI,IAAI,CAAC,MAAM;QAAE,MAAM,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC/D,IAAI,IAAI,CAAC,KAAK;QAAE,MAAM,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC5D,IAAI,IAAI,CAAC,MAAM;QAAE,MAAM,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC/D,IAAI,IAAI,CAAC,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACtE,IAAI,IAAI,CAAC,UAAU;QAAE,MAAM,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC3E,IAAI,IAAI,CAAC,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,YAAY,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAClE,IAAI,IAAI,CAAC,KAAK;QAAE,MAAM,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC5D,IAAI,IAAI,CAAC,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrE,IAAI,IAAI,CAAC,gBAAgB;QAAE,MAAM,CAAC,IAAI,CAAC,sBAAsB,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;IAC9F,IAAI,IAAI,CAAC,aAAa;QAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAErF,IAAI,IAAI,CAAC,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,YAAY,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAClE,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI;QAAE,MAAM,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACpE,IAAI,IAAI,CAAC,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,YAAY,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAClE,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI;QAAE,MAAM,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjE,IAAI,IAAI,CAAC,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrE,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAE1E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AACnC,CAAC"}
|
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
import type { RuntimeDiagnostic } from "@telorun/sdk";
|
|
2
|
+
/**
|
|
3
|
+
* Codes that mean "this resource never got its turn": the multi-pass init loop
|
|
4
|
+
* deferred it because a dependency had not initialized, so it never produced a
|
|
5
|
+
* failure of its own. This is the ONLY signal that an entry may be collapsed —
|
|
6
|
+
* see {@link classifyInitFailures}.
|
|
7
|
+
*/
|
|
8
|
+
export declare const DEPENDENCY_PENDING_CODES: Set<string>;
|
|
9
|
+
/** Whether a thrown error is the loop's own "not your turn yet" signal rather
|
|
10
|
+
* than a failure of the resource. */
|
|
11
|
+
export declare function isDeferral(err: unknown): boolean;
|
|
2
12
|
/** One resource that did not reach the `Initialized` state, with the outbound
|
|
3
13
|
* edges (names of resources in the SAME context) captured for it. */
|
|
4
14
|
export interface FailedResource {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-failure-diagnostics.d.ts","sourceRoot":"","sources":["../src/init-failure-diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"init-failure-diagnostics.d.ts","sourceRoot":"","sources":["../src/init-failure-diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,aAGnC,CAAC;AAEH;sCACsC;AACtC,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAGhD;AAED;sEACsE;AACtE,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC/B,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,iBAAiB,EAAE,CA6CpF;AAED;;+EAE+E;AAC/E,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,iBAAiB,EAAE,GAC/B,GAAG,CAAC,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,CAAC,CAUnC;AAED;uEACuE;AACvE,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAI3F;AAED;;oEAEoE;AACpE,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAQ9E;AAED;;;+CAG+C;AAC/C,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAuB9E"}
|
|
@@ -4,10 +4,16 @@
|
|
|
4
4
|
* failure of its own. This is the ONLY signal that an entry may be collapsed —
|
|
5
5
|
* see {@link classifyInitFailures}.
|
|
6
6
|
*/
|
|
7
|
-
const DEPENDENCY_PENDING_CODES = new Set([
|
|
7
|
+
export const DEPENDENCY_PENDING_CODES = new Set([
|
|
8
8
|
"ERR_LOCAL_REF_PENDING",
|
|
9
9
|
"ERR_CROSS_MODULE_REF_PENDING",
|
|
10
10
|
]);
|
|
11
|
+
/** Whether a thrown error is the loop's own "not your turn yet" signal rather
|
|
12
|
+
* than a failure of the resource. */
|
|
13
|
+
export function isDeferral(err) {
|
|
14
|
+
const code = err?.code;
|
|
15
|
+
return code !== undefined && DEPENDENCY_PENDING_CODES.has(code);
|
|
16
|
+
}
|
|
11
17
|
/**
|
|
12
18
|
* Split a failed-resource set into the ones that failed on their own (root
|
|
13
19
|
* causes) and the ones that only failed because something else in the set did.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-failure-diagnostics.js","sourceRoot":"","sources":["../src/init-failure-diagnostics.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"init-failure-diagnostics.js","sourceRoot":"","sources":["../src/init-failure-diagnostics.ts"],"names":[],"mappings":"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"}
|
package/dist/kernel.d.ts
CHANGED
|
@@ -234,8 +234,12 @@ export declare class Kernel implements IKernel {
|
|
|
234
234
|
* `@telorun/sdk`).
|
|
235
235
|
*/
|
|
236
236
|
getEntryUrl(): string | undefined;
|
|
237
|
-
/** The npm install
|
|
238
|
-
* controller loader so it doesn't re-derive it from the entry URL.
|
|
237
|
+
/** The npm install BASE for this load (`<cache-root>/npm`), threaded to the
|
|
238
|
+
* controller loader so it doesn't re-derive it from the entry URL. The base
|
|
239
|
+
* holds one root per (entry path, host platform); the loader picks which one
|
|
240
|
+
* this runner uses, so two runners over one workspace — a host and a
|
|
241
|
+
* bind-mounting container — never share a tree whose `package.json` can only
|
|
242
|
+
* be true for one of them. */
|
|
239
243
|
getInstallRoot(): string | undefined;
|
|
240
244
|
/** The `.telo` cache root resolved for this load. The bundle loader builds a
|
|
241
245
|
* local module's controller source under it; `null`/`undefined` when the load
|