@superdurable/dex 1.26.0 → 1.28.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/src/step.js CHANGED
@@ -5,12 +5,16 @@
5
5
  // See the LICENSE file in the repository root.
6
6
  //
7
7
  // SPDX-License-Identifier: LicenseRef-Sustainable-Use-1.0
8
+ import { requireName } from "./validation.js";
8
9
  /** Creates execute-failure routing settings. */
9
10
  export const ExecuteFailure = Object.freeze({
10
11
  /**
11
12
  * Routes exhausted execution retries to another Step.
13
+ *
14
+ * The fallback Step receives the failing Step's input. Registry rejects a fallback whose
15
+ * built-in scalar input codec differs from the failing Step's. Other codecs are not compared.
12
16
  * @typeParam Input - Fallback Step input type.
13
- * @param step - Registered fallback Step class.
17
+ * @param step - Fallback class, registered instance, or StepRef; validated at registration.
14
18
  * @param options - Optional options for the fallback movement.
15
19
  * @returns The failure-routing settings.
16
20
  */
@@ -21,6 +25,37 @@ export const ExecuteFailure = Object.freeze({
21
25
  };
22
26
  },
23
27
  });
28
+ /**
29
+ * Addresses a registered Step by its stable Step type without an implementation.
30
+ *
31
+ * Use with goTo, StepMovement, failure routing, or cancellation. References cannot
32
+ * execute or appear in a StepList. Registry validates execute-failure routes declared
33
+ * by getStepOptions. Client validates timeout-handler failure routes when it maps
34
+ * start options. A StepRef returned from a handler, in a movement or cancellation
35
+ * selection, is validated only when the Worker applies that returned result. The
36
+ * constructor never checks that the Step type exists. Invalid declarations raise
37
+ * FlowDefinitionError. Invalid handler targets are reported as InvalidStepResultError.
38
+ * The destination codec validates input at runtime.
39
+ * @example
40
+ * ```ts
41
+ * const movement = StepMovement.of(new StepRef("Charge"), { orderId: "42" });
42
+ * ```
43
+ */
44
+ export class StepRef {
45
+ stepType;
46
+ /**
47
+ * Creates a reference to a Step type registered in the containing Flow.
48
+ * @param stepType - Non-empty type returned by the destination's getStepType.
49
+ * @throws TypeError If stepType is empty or whitespace-only.
50
+ */
51
+ constructor(
52
+ /** Stable destination Step type. */
53
+ stepType) {
54
+ this.stepType = stepType;
55
+ requireName(stepType);
56
+ Object.freeze(this);
57
+ }
58
+ }
24
59
  /**
25
60
  * Builds the ordered Step definitions for a Flow.
26
61
  * @typeParam StartInput - Input type of the optional starting Step.
@@ -79,8 +114,12 @@ export class StepList {
79
114
  export const StepMovement = Object.freeze({
80
115
  /**
81
116
  * Creates a movement to one Step.
117
+ *
118
+ * The Worker validates the target when it applies the handler result that returns
119
+ * this movement. An unknown StepRef, ambiguous class, or unregistered instance then
120
+ * fails that result with InvalidStepResultError.
82
121
  * @typeParam Input - Destination Step input type.
83
- * @param step - Registered destination Step class.
122
+ * @param step - Destination class, registered instance, or StepRef in this Flow.
84
123
  * @param input - Typed destination input.
85
124
  * @param options - Optional per-movement options.
86
125
  * @returns The new Step movement.
@@ -95,8 +134,12 @@ export const StepMovement = Object.freeze({
95
134
  });
96
135
  /**
97
136
  * Creates a decision scheduling one next Step.
137
+ *
138
+ * The Worker validates the target when it applies the returned decision. An unknown
139
+ * StepRef, ambiguous class, or unregistered instance fails the handler result with
140
+ * InvalidStepResultError.
98
141
  * @typeParam Input - Destination Step input type.
99
- * @param step - Registered destination Step.
142
+ * @param step - Registered destination class, instance, or StepRef.
100
143
  * @param input - Typed destination input.
101
144
  * @returns A next decision containing one movement.
102
145
  */
@@ -150,8 +193,10 @@ export const deadEnd = () => ({ kind: "deadEnd" });
150
193
  * Dex resolves one snapshot after `execute` succeeds. Finished, already-canceled,
151
194
  * and absent executions are no-ops. Steps scheduled by the same decision are excluded.
152
195
  * Repeated calls take the union, and Flow-wide selection supersedes sibling selection.
196
+ * The Worker validates each target when it applies the returned decision; an invalid
197
+ * target fails the handler result with InvalidStepResultError.
153
198
  * @param decision - Decision to copy.
154
- * @param steps - Step classes registered with the current Flow.
199
+ * @param steps - Registered instances, StepRef values, or unambiguous Step classes.
155
200
  * @returns A new decision containing the combined Flow-wide selectors.
156
201
  */
157
202
  export const withCancelingSteps = (decision, ...steps) => {
@@ -165,7 +210,7 @@ export const withCancelingSteps = (decision, ...steps) => {
165
210
  * A sibling has the same `Context.fromStepExecutionId` as the execution returning
166
211
  * the decision. Snapshot and no-op behavior match {@link withCancelingSteps}.
167
212
  * @param decision - Decision to copy.
168
- * @param steps - Step classes registered with the current Flow.
213
+ * @param steps - Registered instances, StepRef values, or unambiguous Step classes.
169
214
  * @returns A new decision containing the combined sibling selectors.
170
215
  */
171
216
  export const withCancelingSiblingSteps = (decision, ...steps) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"step.js","sourceRoot":"","sources":["../../src/step.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"step.js","sourceRoot":"","sources":["../../src/step.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,8 @@ export declare class WorkerDispatcher {
7
7
  private readonly hydrator;
8
8
  private readonly negotiatedServerProtocolVersion;
9
9
  constructor(registry: Registry, hydrator: ValueHydrator, negotiatedServerProtocolVersion: () => number);
10
- invokeWaitFor(original: InvokeWaitForMethodRequest, cancellationSignal?: AbortSignal, stepOutput?: StepOutputEmitter): Promise<InvokeWaitForMethodResponse>;
11
- invokeExecute(original: InvokeExecuteMethodRequest, cancellationSignal?: AbortSignal, stepOutput?: StepOutputEmitter): Promise<InvokeExecuteMethodResponse>;
10
+ invokeWaitFor(original: InvokeWaitForMethodRequest, cancellationSignal?: AbortSignal, stepOutput?: StepOutputEmitter, deadline?: Date): Promise<InvokeWaitForMethodResponse>;
11
+ invokeExecute(original: InvokeExecuteMethodRequest, cancellationSignal?: AbortSignal, stepOutput?: StepOutputEmitter, deadline?: Date): Promise<InvokeExecuteMethodResponse>;
12
12
  private invokeTimeoutHandler;
13
13
  invokeRPC(original: InvokeWorkerRPCRequest, cancellationSignal?: AbortSignal): Promise<InvokeWorkerRPCResponse>;
14
14
  private requireHardDeleteAttributeWriteSupport;
@@ -7,7 +7,7 @@
7
7
  // SPDX-License-Identifier: LicenseRef-Sustainable-Use-1.0
8
8
  import { ChannelCondition, CloseDecision, CloseDecisionType, ConditionCombination as ProtoConditionCombination, ExecuteMethodFailurePolicy, InvokeExecuteMethodResponse, InvokeWaitForMethodResponse, InvokeWorkerRPCResponse, StepDecision as ProtoStepDecision, StepMovement as ProtoStepMovement, StepOptions as ProtoStepOptions, TimerCondition, SubFlowCondition as ProtoSubFlowCondition, SubFlowOptions as ProtoSubFlowOptions, SubFlowReusePolicy as ProtoSubFlowReusePolicy, FlowRetryPolicy, FlowTimeoutHandlerOptions as ProtoFlowTimeoutHandlerOptions, FlowTimeoutPolicy as ProtoFlowTimeoutPolicy, FlowConfig as ProtoFlowConfig, ActiveStepSearchMode as ProtoActiveStepSearchMode, StepDurability as ProtoStepDurability, IndexType as ProtoIndexType, WaitForMethodFailurePolicy, WaitingCondition, WaitingConditionType, } from "./gen/dex.js";
9
9
  import { InvalidStepResultError, ValueMappingError } from "./errors.js";
10
- import { registeredFlowByName, registeredFlow, registeredRPCByName, registeredStep, } from "./flow.js";
10
+ import { registeredFlowByName, registeredFlow, registeredStepTarget, registeredRPCByName, registeredStep, } from "./flow.js";
11
11
  import { InvocationContext } from "./invocation-context.js";
12
12
  import { AttributeMap, IndexType, } from "./persistence.js";
13
13
  import { isHardDeleteOnNullDefinition, requireHardDeleteAttributeWriteSupport, requireHardDeleteOnNullValueKind, } from "./attribute-hard-delete.js";
@@ -28,12 +28,12 @@ export class WorkerDispatcher {
28
28
  this.hydrator = hydrator;
29
29
  this.negotiatedServerProtocolVersion = negotiatedServerProtocolVersion;
30
30
  }
31
- async invokeWaitFor(original, cancellationSignal = new AbortController().signal, stepOutput) {
31
+ async invokeWaitFor(original, cancellationSignal = new AbortController().signal, stepOutput, deadline) {
32
32
  const request = await this.hydrateWaitFor(original);
33
33
  cancellationSignal.throwIfAborted();
34
34
  const flow = registeredFlowByName(this.registry, request.flowType);
35
35
  const step = registeredStep(flow, request.stepType);
36
- const context = new InvocationContext("waitFor", flow, request.context, request.attributes, [], undefined, request.channelInfos, cancellationSignal, stepOutput, request.loadedChannelMessages, request.loadedAttributeMapInstances, request.loadedChannelNames, request.loadedChannelMapInstances);
36
+ const context = new InvocationContext("waitFor", flow, request.context, request.attributes, [], undefined, request.channelInfos, cancellationSignal, stepOutput, request.loadedChannelMessages, request.loadedAttributeMapInstances, request.loadedChannelNames, request.loadedChannelMapInstances, deadline);
37
37
  const input = decodeValue(codecOrJson(step.step.inputCodec), requireValue(request.stepInput, "Step input"));
38
38
  if (step.step.waitFor === undefined) {
39
39
  throw new TypeError(`Step ${step.name} does not implement waitFor`);
@@ -69,15 +69,15 @@ export class WorkerDispatcher {
69
69
  throw context.finalizeStepOutputs(failure);
70
70
  }
71
71
  }
72
- async invokeExecute(original, cancellationSignal = new AbortController().signal, stepOutput) {
72
+ async invokeExecute(original, cancellationSignal = new AbortController().signal, stepOutput, deadline) {
73
73
  const request = await this.hydrateExecute(original);
74
74
  cancellationSignal.throwIfAborted();
75
75
  const flow = registeredFlowByName(this.registry, request.flowType);
76
76
  if (request.stepType === timeoutHandlerStepType) {
77
- return this.invokeTimeoutHandler(request, flow, cancellationSignal, stepOutput);
77
+ return this.invokeTimeoutHandler(request, flow, cancellationSignal, stepOutput, deadline);
78
78
  }
79
79
  const step = registeredStep(flow, request.stepType);
80
- const context = new InvocationContext("execute", flow, request.context, request.attributes, request.stepExeLocals, request.conditionResults, request.channelInfos, cancellationSignal, stepOutput, request.loadedChannelMessages, request.loadedAttributeMapInstances, request.loadedChannelNames, request.loadedChannelMapInstances);
80
+ const context = new InvocationContext("execute", flow, request.context, request.attributes, request.stepExeLocals, request.conditionResults, request.channelInfos, cancellationSignal, stepOutput, request.loadedChannelMessages, request.loadedAttributeMapInstances, request.loadedChannelNames, request.loadedChannelMapInstances, deadline);
81
81
  const input = decodeValue(codecOrJson(step.step.inputCodec), requireValue(request.stepInput, "Step input"));
82
82
  try {
83
83
  const decision = await step.step.execute(context, input);
@@ -106,7 +106,7 @@ export class WorkerDispatcher {
106
106
  throw context.finalizeStepOutputs(failure);
107
107
  }
108
108
  }
109
- async invokeTimeoutHandler(request, flow, cancellationSignal, stepOutput) {
109
+ async invokeTimeoutHandler(request, flow, cancellationSignal, stepOutput, deadline) {
110
110
  try {
111
111
  if (request.stepInput !== undefined) {
112
112
  throw new TypeError("timeout handler input must be absent");
@@ -114,7 +114,7 @@ export class WorkerDispatcher {
114
114
  if (flow.flow.handleTimeout === undefined) {
115
115
  throw new TypeError(`Flow ${flow.name} does not implement handleTimeout`);
116
116
  }
117
- const context = new InvocationContext("execute", flow, request.context, request.attributes, request.stepExeLocals, request.conditionResults, request.channelInfos, cancellationSignal, stepOutput, request.loadedChannelMessages, request.loadedAttributeMapInstances, request.loadedChannelNames, request.loadedChannelMapInstances);
117
+ const context = new InvocationContext("execute", flow, request.context, request.attributes, request.stepExeLocals, request.conditionResults, request.channelInfos, cancellationSignal, stepOutput, request.loadedChannelMessages, request.loadedAttributeMapInstances, request.loadedChannelNames, request.loadedChannelMapInstances, deadline);
118
118
  try {
119
119
  const decision = await flow.flow.handleTimeout(context);
120
120
  const response = InvokeExecuteMethodResponse.create({
@@ -363,10 +363,7 @@ function mapCancellationSteps(flow, steps) {
363
363
  const stepTypes = [];
364
364
  const seen = new Set();
365
365
  for (const step of steps ?? []) {
366
- const target = flow.stepsByClass.get(step);
367
- if (target === undefined) {
368
- throw new TypeError("cancellation Step must belong to the Flow");
369
- }
366
+ const target = registeredStepTarget(flow, step);
370
367
  if (seen.has(target.name)) {
371
368
  continue;
372
369
  }
@@ -390,10 +387,7 @@ function mapMovements(flow, movements) {
390
387
  return movements.map((movement) => mapMovement(flow, movement));
391
388
  }
392
389
  function mapMovement(flow, movement) {
393
- const target = flow.stepsByClass.get(movement.step);
394
- if (target === undefined) {
395
- throw new TypeError("Step movement target does not belong to Flow");
396
- }
390
+ const target = registeredStepTarget(flow, movement.step);
397
391
  return ProtoStepMovement.create({
398
392
  stepType: target.name,
399
393
  stepInput: encodeValue(codecOrJson(target.step.inputCodec), movement.input),
@@ -404,10 +398,7 @@ function mapStepOptions(flow, options, skipWaitFor) {
404
398
  const failureTarget = options?.executeFailure?.step;
405
399
  const failureDefinition = failureTarget === undefined
406
400
  ? undefined
407
- : flow.stepsByClass.get(failureTarget);
408
- if (failureTarget !== undefined && failureDefinition === undefined) {
409
- throw new TypeError("execute failure Step must belong to the Flow");
410
- }
401
+ : registeredStepTarget(flow, failureTarget);
411
402
  const failureOptions = options?.executeFailure?.options ?? failureDefinition?.step.getStepOptions?.();
412
403
  const waitForLoads = mapHandlerStateLoads(flow, {
413
404
  attributeMaps: options?.waitForLoadAttributeMaps,
@@ -606,10 +597,7 @@ function mapFlowTimeoutHandlerOptions(flow, timeoutSeconds, timeoutPolicy, optio
606
597
  const failureStep = options.failure?.step;
607
598
  const failureDefinition = failureStep === undefined
608
599
  ? undefined
609
- : flow.stepsByClass.get(failureStep);
610
- if (failureStep !== undefined && failureDefinition === undefined) {
611
- throw new TypeError("timeout handler failure Step must belong to the Flow");
612
- }
600
+ : registeredStepTarget(flow, failureStep);
613
601
  if (failureDefinition !== undefined && failureDefinition.step.inputCodec !== voidCodec) {
614
602
  throw new TypeError("timeout handler failure Step must use voidCodec");
615
603
  }
@@ -1 +1 @@
1
- {"version":3,"file":"worker-dispatcher.js","sourceRoot":"","sources":["../../src/worker-dispatcher.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,kDAAkD;AAClD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,0DAA0D;AAE1D,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,oBAAoB,IAAI,yBAAyB,EACjD,0BAA0B,EAC1B,2BAA2B,EAC3B,2BAA2B,EAC3B,uBAAuB,EACvB,YAAY,IAAI,iBAAiB,EACjC,YAAY,IAAI,iBAAiB,EACjC,WAAW,IAAI,gBAAgB,EAC/B,cAAc,EACd,gBAAgB,IAAI,qBAAqB,EACzC,cAAc,IAAI,mBAAmB,EACrC,kBAAkB,IAAI,uBAAuB,EAC7C,eAAe,EACf,yBAAyB,IAAI,8BAA8B,EAC3D,iBAAiB,IAAI,sBAAsB,EAC3C,UAAU,IAAI,eAAe,EAC7B,oBAAoB,IAAI,yBAAyB,EACjD,cAAc,IAAI,mBAAmB,EACrC,SAAS,IAAI,cAAc,EAC3B,0BAA0B,EAC1B,gBAAgB,EAChB,oBAAoB,GAWrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EACnB,cAAc,GAIf,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,iBAAiB,EAA0B,MAAM,yBAAyB,CAAC;AACpF,OAAO,EAEL,YAAY,EACZ,SAAS,GAEV,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,4BAA4B,EAC5B,sCAAsC,EACtC,gCAAgC,GACjC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,OAAO,EACL,oBAAoB,EACpB,iBAAiB,GAGlB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,kBAAkB,EAAuB,MAAM,cAAc,CAAC;AAUvE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EACL,WAAW,EACX,WAAW,EACX,aAAa,EACb,WAAW,GAEZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,OAAO,EAAE,UAAU,EAA6B,MAAM,WAAW,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;AAErD,MAAM,OAAO,gBAAgB;IAER;IACA;IACA;IAHnB,YACmB,QAAkB,EAClB,QAAuB,EACvB,+BAA6C;QAF7C,aAAQ,GAAR,QAAQ,CAAU;QAClB,aAAQ,GAAR,QAAQ,CAAe;QACvB,oCAA+B,GAA/B,+BAA+B,CAAc;IAC7D,CAAC;IAEG,KAAK,CAAC,aAAa,CACxB,QAAoC,EACpC,qBAAkC,IAAI,eAAe,EAAE,CAAC,MAAM,EAC9D,UAA8B;QAE9B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QACpD,kBAAkB,CAAC,cAAc,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,oBAAoB,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnE,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,IAAI,iBAAiB,CACnC,SAAS,EACT,IAAI,EACJ,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,UAAU,EAClB,EAAE,EACF,SAAS,EACT,OAAO,CAAC,YAAY,EACpB,kBAAkB,EAClB,UAAU,EACV,OAAO,CAAC,qBAAqB,EAC7B,OAAO,CAAC,2BAA2B,EACnC,OAAO,CAAC,kBAAkB,EAC1B,OAAO,CAAC,yBAAyB,CAClC,CAAC;QACF,MAAM,KAAK,GAAG,WAAW,CACvB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EACjC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC,CAC9C,CAAC;QACF,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,IAAI,SAAS,CAAC,QAAQ,IAAI,CAAC,IAAI,6BAA6B,CAAC,CAAC;QACtE,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACrD,IAAI,QAAqC,CAAC;YAC1C,IAAI,CAAC;gBACH,QAAQ,GAAG,2BAA2B,CAAC,MAAM,CAAC;oBAC5C,gBAAgB,EAAE,CAAC,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;oBACnD,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC;oBACpD,mBAAmB,EAAE,CAAC,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;oBAClD,YAAY,EAAE,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;oBACtC,gBAAgB,EAAE,CAAC,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;oBAChD,iBAAiB,EAAE,CAAC,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;iBACtD,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,OAAO,EAAE,CAAC;gBACjB,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YACpE,CAAC;YACD,IAAI,CAAC,sCAAsC,CAAC;gBAC1C,GAAG,QAAQ,CAAC,gBAAgB;gBAC5B,GAAG,CAAC,QAAQ,CAAC,gBAAgB,EAAE,iBAAiB,IAAI,EAAE,CAAC;qBACpD,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC;aAC/D,CAAC,CAAC;YACH,MAAM,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;YAC1D,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;gBACtC,MAAM,mBAAmB,CAAC;YAC5B,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,OAAO,EAAE,CAAC;YACjB,MAAM,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,aAAa,CACxB,QAAoC,EACpC,qBAAkC,IAAI,eAAe,EAAE,CAAC,MAAM,EAC9D,UAA8B;QAE9B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QACpD,kBAAkB,CAAC,cAAc,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,oBAAoB,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnE,IAAI,OAAO,CAAC,QAAQ,KAAK,sBAAsB,EAAE,CAAC;YAChD,OAAO,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,UAAU,CAAC,CAAC;QAClF,CAAC;QACD,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,IAAI,iBAAiB,CACnC,SAAS,EACT,IAAI,EACJ,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,gBAAgB,EACxB,OAAO,CAAC,YAAY,EACpB,kBAAkB,EAClB,UAAU,EACV,OAAO,CAAC,qBAAqB,EAC7B,OAAO,CAAC,2BAA2B,EACnC,OAAO,CAAC,kBAAkB,EAC1B,OAAO,CAAC,yBAAyB,CAClC,CAAC;QACF,MAAM,KAAK,GAAG,WAAW,CACvB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EACjC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC,CAC9C,CAAC;QACF,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACzD,IAAI,QAAqC,CAAC;YAC1C,IAAI,CAAC;gBACH,QAAQ,GAAG,2BAA2B,CAAC,MAAM,CAAC;oBAC5C,YAAY,EAAE,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC;oBACzC,gBAAgB,EAAE,CAAC,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;oBACnD,YAAY,EAAE,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;oBACtC,mBAAmB,EAAE,CAAC,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;oBAClD,gBAAgB,EAAE,CAAC,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;oBAChD,iBAAiB,EAAE,CAAC,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;iBACtD,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,OAAO,EAAE,CAAC;gBACjB,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YACpE,CAAC;YACD,IAAI,CAAC,sCAAsC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;YACvE,MAAM,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;YAC1D,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;gBACtC,MAAM,mBAAmB,CAAC;YAC5B,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,OAAO,EAAE,CAAC;YACjB,MAAM,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAChC,OAAmC,EACnC,IAAoB,EACpB,kBAA+B,EAC/B,UAA8B;QAE9B,IAAI,CAAC;YACH,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACpC,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;YAC9D,CAAC;YACD,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;gBAC1C,MAAM,IAAI,SAAS,CAAC,QAAQ,IAAI,CAAC,IAAI,mCAAmC,CAAC,CAAC;YAC5E,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,iBAAiB,CACnC,SAAS,EACT,IAAI,EACJ,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,gBAAgB,EACxB,OAAO,CAAC,YAAY,EACpB,kBAAkB,EAClB,UAAU,EACV,OAAO,CAAC,qBAAqB,EAC7B,OAAO,CAAC,2BAA2B,EACnC,OAAO,CAAC,kBAAkB,EAC1B,OAAO,CAAC,yBAAyB,CAClC,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBACxD,MAAM,QAAQ,GAAG,2BAA2B,CAAC,MAAM,CAAC;oBAClD,YAAY,EAAE,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC;oBACzC,gBAAgB,EAAE,CAAC,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;oBACnD,YAAY,EAAE,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;oBACtC,mBAAmB,EAAE,CAAC,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;oBAClD,gBAAgB,EAAE,CAAC,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;oBAChD,iBAAiB,EAAE,CAAC,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;iBACtD,CAAC,CAAC;gBACH,IAAI,CAAC,sCAAsC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;gBACvE,MAAM,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;gBAC1D,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;oBACtC,MAAM,mBAAmB,CAAC;gBAC5B,CAAC;gBACD,OAAO,QAAQ,CAAC;YAClB,CAAC;YAAC,OAAO,OAAO,EAAE,CAAC;gBACjB,MAAM,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QAAC,OAAO,OAAO,EAAE,CAAC;YACjB,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,sBAAsB,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,SAAS,CACpB,QAAgC,EAChC,qBAAkC,IAAI,eAAe,EAAE,CAAC,MAAM;QAE9D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAChD,kBAAkB,CAAC,cAAc,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,oBAAoB,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnE,MAAM,GAAG,GAAG,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,IAAI,iBAAiB,CACnC,KAAK,EACL,IAAI,EACJ,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,UAAU,EAClB,EAAE,EACF,SAAS,EACT,OAAO,CAAC,YAAY,EACpB,kBAAkB,EAClB,SAAS,EACT,OAAO,CAAC,qBAAqB,EAC7B,OAAO,CAAC,2BAA2B,EACnC,OAAO,CAAC,kBAAkB,EAC1B,OAAO,CAAC,yBAAyB,CAClC,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACpE,IAAI,QAAiC,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YACxC,QAAQ,GAAG,uBAAuB,CAAC,MAAM,CAAC;gBACxC,MAAM,EACJ,MAAM,KAAK,SAAS;oBAClB,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC;oBAC1B,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;gBACtE,YAAY,EAAE,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC;gBACvC,gBAAgB,EAAE,CAAC,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;gBACnD,YAAY,EAAE,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;gBACtC,gBAAgB,EAAE,CAAC,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;gBAChD,iBAAiB,EAAE,CAAC,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;aACtD,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,OAAO,EAAE,CAAC;YACjB,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,CAAC,sCAAsC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QACvE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,sCAAsC,CAAC,MAAiC;QAC9E,sCAAsC,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAAE,MAAM,CAAC,CAAC;IACzF,CAAC;IAEO,KAAK,CAAC,cAAc,CAC1B,OAAmC;QAEnC,MAAM,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,kBAAkB,CAAC;QAC/D,MAAM,qBAAqB,GAAG,kBAAkB,KAAK,SAAS,CAAC;QAC/D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE;YAC3E,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,SAAS;YACjB,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;YACjD,GAAG,mBAAmB,CAAC,OAAO,CAAC,qBAAqB,CAAC;SACtD,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,MAAM,qBAAqB,GAAG,iCAAiC,CAC7D,OAAO,CAAC,qBAAqB,EAC7B,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CACrD,CAAC;QACF,OAAO;YACL,GAAG,OAAO;YACV,OAAO,EAAE,qBAAqB;gBAC5B,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,OAAQ,EAAE,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE;gBACxD,CAAC,CAAC,OAAO,CAAC,OAAO;YACnB,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC;YACzB,UAAU,EAAE,kBAAkB,CAC5B,OAAO,CAAC,UAAU,EAClB,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CACjE;YACD,qBAAqB;SACtB,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,cAAc,CAC1B,OAAmC;QAEnC,MAAM,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,kBAAkB,CAAC;QAC/D,MAAM,qBAAqB,GAAG,kBAAkB,KAAK,SAAS,CAAC;QAC/D,MAAM,aAAa,GAAG,OAAO,CAAC,gBAAgB,EAAE,cAAc,CAAC,OAAO,CACpE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAC1B,IAAI,EAAE,CAAC;QACR,MAAM,aAAa,GAAG,OAAO,CAAC,gBAAgB,EAAE,cAAc,CAAC,OAAO,CACpE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAC/E,IAAI,EAAE,CAAC;QACR,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE;YAC3E,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtD,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACxC,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;YACjD,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;YACpD,GAAG,aAAa;YAChB,GAAG,aAAa;YAChB,GAAG,mBAAmB,CAAC,OAAO,CAAC,qBAAqB,CAAC;SACtD,CAAC,CAAC;QACH,IAAI,MAAM,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1D,MAAM,UAAU,GAAG,kBAAkB,CACnC,OAAO,CAAC,UAAU,EAClB,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,MAAM,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAC5D,CAAC;QACF,MAAM,aAAa,GAAG,kBAAkB,CACtC,OAAO,CAAC,aAAa,EACrB,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAC/D,CAAC;QACF,MAAM,gBAAgB,GAAG,sBAAsB,CAC7C,OAAO,CAAC,gBAAgB,EACxB,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAC3E,CAAC;QACF,MAAM,IAAI,aAAa,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;QACtD,MAAM,qBAAqB,GAAG,iCAAiC,CAC7D,OAAO,CAAC,qBAAqB,EAC7B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CACrB,CAAC;QACF,OAAO;YACL,GAAG,OAAO;YACV,OAAO,EAAE,qBAAqB;gBAC5B,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,OAAQ,EAAE,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE;gBACxD,CAAC,CAAC,OAAO,CAAC,OAAO;YACnB,SAAS;YACT,UAAU;YACV,aAAa;YACb,gBAAgB;YAChB,qBAAqB;SACtB,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,OAA+B;QACtD,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC;QAC7C,MAAM,eAAe,GAAG,mBAAmB,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE;YAC3E,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACpC,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;YACjD,GAAG,eAAe;SACnB,CAAC,CAAC;QACH,IAAI,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,UAAU,GAAG,kBAAkB,CACnC,OAAO,CAAC,UAAU,EAClB,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,MAAM,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAC5D,CAAC;QACF,MAAM,qBAAqB,GAAG,iCAAiC,CAC7D,OAAO,CAAC,qBAAqB,EAC7B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CACrB,CAAC;QACF,OAAO;YACL,GAAG,OAAO;YACV,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;YACvC,UAAU;YACV,qBAAqB;SACtB,CAAC;IACJ,CAAC;CACF;AAED,SAAS,SAAS,CAChB,IAAoB,EACpB,GAAkB,EAClB,OAA0B,EAC1B,KAAwB;IAExB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAClB,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CACpB,IAAI,CAAC,IAAI,EACT,OAAO,EACP,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CACnF,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAChB,GAAkB,EAClB,QAAiB;IAEjB,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YAC1C,MAAM,IAAI,SAAS,CAAC,gBAAgB,GAAG,CAAC,IAAI,wBAAwB,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,IAAI,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,CAAC;QACjF,MAAM,IAAI,SAAS,CACjB,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,CAAC,GAAG,CAAC,QAAQ;YACpD,CAAC,CAAC,iBAAiB,GAAG,CAAC,IAAI,0BAA0B;YACrD,CAAC,CAAC,gBAAgB,GAAG,CAAC,IAAI,wBAAwB,CACrD,CAAC;IACJ,CAAC;IACD,OAAO,QAAyE,CAAC;AACnF,CAAC;AAED,SAAS,OAAO,CACd,QAAkB,EAClB,IAAoB,EACpB,IAAsB;IAEtB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,IAAI,SAAS,CAAC,4BAA4B,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;QACpC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACnD,IAAI,oBAA0C,CAAC;IAC/C,MAAM,YAAY,GAAgC,EAAE,CAAC;IACrD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACnD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QAC9D,CAAC;QACD,oBAAoB;YAClB,IAAI,CAAC,IAAI,KAAK,OAAO;gBACnB,CAAC,CAAC,oBAAoB,CAAC,oCAAoC;gBAC3D,CAAC,CAAC,oBAAoB,CAAC,oCAAoC,CAAC;QAChE,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;SAAM,CAAC;QACN,oBAAoB;YAClB,oBAAoB,CAAC,gDAAgD,CAAC;QACxE,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YAC5C,YAAY,CAAC,IAAI,CACf,yBAAyB,CAAC,MAAM,CAAC;gBAC/B,YAAY,EAAE,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;aACrF,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,gBAAgB,CAAC,MAAM,CAAC;QAC7B,oBAAoB;QACpB,eAAe,EAAE,MAAM,CAAC,MAAM;QAC9B,iBAAiB,EAAE,MAAM,CAAC,QAAQ;QAClC,iBAAiB,EAAE,MAAM,CAAC,QAAQ;QAClC,qBAAqB,EAAE,YAAY;KACpC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,WAAW,CAAC,IAAoB,EAAE,QAAkC;IAC3E,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,SAAS,CAAC,4BAA4B,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC7B,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,SAAS,CAAC,8BAA8B,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,yBAAyB,CAC9B,IAAI,EACJ,QAAQ,EACR,iBAAiB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAChF,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,yBAAyB,CAAC,IAAI,EAAE,QAAQ,EAAE,iBAAiB,CAAC,MAAM,CAAC;YACxE,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC;gBAClC,iBAAiB,EAAE,iBAAiB,CAAC,4BAA4B;aAClE,CAAC;SACH,CAAC,CAAC,CAAC;IACN,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,KAAK,8BAA8B,EAAE,CAAC;QACrD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACjD,IAAI,CAAC,CAAC,OAAO,YAAY,OAAO,CAAC,IAAI,OAAO,YAAY,UAAU,EAAE,CAAC;gBACnE,MAAM,IAAI,SAAS,CAAC,4CAA4C,CAAC,CAAC;YACpE,CAAC;YACD,OAAO,OAAO,CAAC,IAAI,CAAC;QACtB,CAAC,CAAC,CAAC;QACH,OAAO,yBAAyB,CAAC,IAAI,EAAE,QAAQ,EAAE,iBAAiB,CAAC,MAAM,CAAC;YACxE,SAAS,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACjD,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC;gBAClC,iBAAiB,EACf,iBAAiB,CAAC,oDAAoD;gBACxE,uBAAuB,EAAE,QAAQ;gBACjC,UAAU,EAAE,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC;aAC3C,CAAC;SACH,CAAC,CAAC,CAAC;IACN,CAAC;IACD,MAAM,UAAU,GAAG;QACjB,gBAAgB,EAAE,iBAAiB,CAAC,qCAAqC;QACzE,aAAa,EAAE,iBAAiB,CAAC,kCAAkC;QACnE,SAAS,EAAE,iBAAiB,CAAC,8BAA8B;KACnD,CAAC;IACX,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,KAAK,WAAW;QAC9C,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC;QAChC,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS;YAC7B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACrC,OAAO,yBAAyB,CAAC,IAAI,EAAE,QAAQ,EAAE,iBAAiB,CAAC,MAAM,CAAC;QACxE,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC;YAClC,iBAAiB,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC5C,UAAU;SACX,CAAC;KACH,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,yBAAyB,CAChC,IAAoB,EACpB,QAAsB,EACtB,MAAyB;IAEzB,MAAM,CAAC,eAAe,GAAG,oBAAoB,CAAC,IAAI,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC7E,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IACpD,MAAM,CAAC,sBAAsB,GAAG,oBAAoB,CAClD,IAAI,EACJ,QAAQ,CAAC,qBAAqB,CAC/B,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,oBAAoB,CAC3B,IAAoB,EACpB,KAA4C;IAE5C,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,IAAI,EAAE,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,SAAS,CAAC,2CAA2C,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,SAAS;QACX,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACtB,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,WAAW,CAClB,IAAoB,EACpB,MAIa;IAEb,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IAC7D,MAAM,eAAe,GAAG,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;IAC1E,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3D,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,iBAAiB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,YAAY,CACnB,IAAoB,EACpB,SAAuC;IAEvC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,WAAW,CAAC,IAAoB,EAAE,QAA2B;IACpE,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACpD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,iBAAiB,CAAC,MAAM,CAAC;QAC9B,QAAQ,EAAE,MAAM,CAAC,IAAI;QACrB,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC;QAC3E,WAAW,EAAE,cAAc,CACzB,IAAI,EACJ,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,EAClD,MAAM,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAClC;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,cAAc,CACrB,IAAoB,EACpB,OAAgC,EAChC,WAAoB;IAEpB,MAAM,aAAa,GAAG,OAAO,EAAE,cAAc,EAAE,IAAI,CAAC;IACpD,MAAM,iBAAiB,GAAG,aAAa,KAAK,SAAS;QACnD,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IACzC,IAAI,aAAa,KAAK,SAAS,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;QACnE,MAAM,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,cAAc,GAAG,OAAO,EAAE,cAAc,EAAE,OAAO,IAAI,iBAAiB,EAAE,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;IACtG,MAAM,YAAY,GAAG,oBAAoB,CAAC,IAAI,EAAE;QAC9C,aAAa,EAAE,OAAO,EAAE,wBAAwB;QAChD,qBAAqB,EAAE,OAAO,EAAE,gCAAgC;QAChE,QAAQ,EAAE,OAAO,EAAE,mBAAmB;QACtC,WAAW,EAAE,OAAO,EAAE,sBAAsB;QAC5C,mBAAmB,EAAE,OAAO,EAAE,8BAA8B;KAC7D,EAAE,SAAS,CAAC,CAAC;IACd,MAAM,YAAY,GAAG,oBAAoB,CAAC,IAAI,EAAE;QAC9C,aAAa,EAAE,OAAO,EAAE,wBAAwB;QAChD,qBAAqB,EAAE,OAAO,EAAE,gCAAgC;QAChE,QAAQ,EAAE,OAAO,EAAE,mBAAmB;QACtC,WAAW,EAAE,OAAO,EAAE,sBAAsB;QAC5C,mBAAmB,EAAE,OAAO,EAAE,8BAA8B;KAC7D,EAAE,SAAS,CAAC,CAAC;IACd,OAAO,gBAAgB,CAAC,MAAM,CAAC;QAC7B,qBAAqB,EAAE,OAAO,CAAC,OAAO,EAAE,sBAAsB,CAAC;QAC/D,qBAAqB,EAAE,OAAO,CAAC,OAAO,EAAE,sBAAsB,CAAC;QAC/D,uBAAuB,EAAE,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,CAAC;QACtE,kBAAkB,EAAE,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;QACnD,kBAAkB,EAAE,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;QACnD,oBAAoB,EAClB,OAAO,EAAE,cAAc,KAAK,SAAS;YACnC,CAAC,CAAC,0BAA0B,CAAC,iDAAiD;YAC9E,CAAC,CAAC,OAAO,EAAE,cAAc,KAAK,UAAU;gBACtC,CAAC,CAAC,0BAA0B,CAAC,mDAAmD;gBAChF,CAAC,CAAC,0BAA0B,CAAC,0CAA0C;QAC7E,oBAAoB,EAClB,iBAAiB,KAAK,SAAS;YAC7B,CAAC,CAAC,0BAA0B,CAAC,yCAAyC;YACtE,CAAC,CAAC,0BAA0B,CAAC,wDAAwD;QACzF,6BAA6B,EAAE,iBAAiB,EAAE,IAAI,IAAI,EAAE;QAC5D,gCAAgC,EAC9B,iBAAiB,KAAK,SAAS;YAC7B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,cAAc,CACZ,IAAI,EACJ,cAAc,EACd,iBAAiB,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAC7C;QACP,WAAW;QACX,yBAAyB,EACvB,OAAO,EAAE,iBAAiB,KAAK,MAAM;YACnC,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO;gBACtC,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,CAAC;QACT,yBAAyB,EACvB,OAAO,EAAE,iBAAiB,KAAK,MAAM;YACnC,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO;gBACtC,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,CAAC;QACT,wBAAwB,EAAE,CAAC,OAAO,EAAE,qBAAqB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC5E,IAAI,CAAC,QAAQ,KAAK,SAAS;YACzB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI;YACrB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CACrD;QACD,wBAAwB,EAAE,CAAC,OAAO,EAAE,qBAAqB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC5E,IAAI,CAAC,QAAQ,KAAK,SAAS;YACzB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI;YACrB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CACrD;QACD,gCAAgC,EAAE,YAAY,CAAC,aAAa;QAC5D,uBAAuB,EAAE,YAAY,CAAC,QAAQ;QAC9C,8BAA8B,EAAE,YAAY,CAAC,WAAW;QACxD,gCAAgC,EAAE,YAAY,CAAC,aAAa;QAC5D,uBAAuB,EAAE,YAAY,CAAC,QAAQ;QAC9C,8BAA8B,EAAE,YAAY,CAAC,WAAW;KACzD,CAAC,CAAC;AACL,CAAC;AAED,SAAS,QAAQ,CAAC,KAA8B;IAC9C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO;QACL,sBAAsB,EAAE,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC;QACxD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,IAAI,CAAC;QACjD,sBAAsB,EAAE,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC;QACxD,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,CAAC;QAC3C,oBAAoB,EAAE,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC;KACrD,CAAC;AACJ,CAAC;AAED,MAAM,eAAe;IAQA;IACA;IARH,MAAM,GAAqB,EAAE,CAAC;IAC9B,QAAQ,GAAuB,EAAE,CAAC;IAClC,QAAQ,GAA4B,EAAE,CAAC;IACtC,GAAG,GAAG,IAAI,GAAG,EAAqB,CAAC;IACnC,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE1C,YACmB,QAAkB,EAClB,IAAoB;QADpB,aAAQ,GAAR,QAAQ,CAAU;QAClB,SAAI,GAAJ,IAAI,CAAgB;IACpC,CAAC;IAEG,GAAG,CAAC,SAAoB,EAAE,UAAmB;QAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,MAAM,EAAE,GAAG,SAAS,CAAC,WAAW,IAAI,EAAE,CAAC;QACvC,IAAI,UAAU,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAC5B,MAAM,IAAI,SAAS,CAAC,yDAAyD,CAAC,CAAC;QACjF,CAAC;QACD,IAAI,SAAS,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACrD,MAAM,IAAI,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,SAAS,CAAC,wBAAwB,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;QACD,IAAI,SAAS,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,cAAc,CAAC,MAAM,CAAC;gBACpB,WAAW,EAAE,EAAE;gBACf,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;aACvD,CAAC,CACH,CAAC;QACJ,CAAC;aAAM,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;YAC1E,IAAI,CAAC,CAAC,UAAU,YAAY,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,YAAY,UAAU,CAAC,EAAE,CAAC;gBAC5E,MAAM,IAAI,SAAS,CAAC,8BAA8B,SAAS,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAC;YACnF,CAAC;YACD,MAAM,WAAW,GACf,UAAU,YAAY,UAAU;gBAC9B,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC;gBACnD,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChB,gBAAgB,CAAC,MAAM,CAAC;gBACtB,WAAW,EAAE,EAAE;gBACf,WAAW;gBACX,OAAO,EAAE,SAAS,CAAC,OAAO;gBAC1B,MAAM,EAAE,SAAS,CAAC,MAAM;aACzB,CAAC,CACH,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC;YACrC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;YACxD,CAAC;YACD,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YACzD,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC;YAC/B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,SAAS,CAAC,WAAW,MAAM,CAAC,IAAI,uBAAuB,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,OAAO,GAAG,SAAS,CAAC,cAAc,IAAI,EAAE,CAAC;YAC/C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChB,qBAAqB,CAAC,MAAM,CAAC;gBAC3B,WAAW,EAAE,EAAE;gBACf,WAAW,EAAE,MAAM,CAAC,IAAI;gBACxB,aAAa,EAAE,KAAK,CAAC,IAAI;gBACzB,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC,YAAY,CAAC;gBAClF,WAAW,EAAE,cAAc,CACzB,MAAM,EACN,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,EAC7B,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CACjC;gBACD,OAAO,EAAE,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC;gBAC3C,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;aACnC,CAAC,CACH,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC5B,OAAO,EAAE,CAAC;IACZ,CAAC;CACF;AAED,SAAS,iBAAiB,CACxB,MAAsB,EACtB,OAAuB;IAEvB,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QAC5D,IAAI,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC;YACzE,MAAM,IAAI,SAAS,CAAC,wCAAwC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,GAAW,CAAC;QAChB,IAAI,OAAO,CAAC,SAAS,YAAY,YAAY,EAAE,CAAC;YAC9C,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC/D,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACnC,MAAM,IAAI,SAAS,CAAC,yCAAyC,CAAC,CAAC;YACjE,CAAC;YACD,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;QAC/B,CAAC;QACD,OAAO;YACL,GAAG;YACH,KAAK,EAAE,gCAAgC,CACrC,OAAO,CAAC,SAAS,EACjB,GAAG,EACH,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CACpD;YACD,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC;YAC9C,UAAU,EAAE,qBAAqB,CAAC,OAAO,CAAC,SAAS,CAAC;YACpD,kBAAkB,EAAE,4BAA4B,CAAC,OAAO,CAAC,SAAS,CAAC;SACpE,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,MAAM,WAAW,GACf,OAAO,CAAC,WAAW,KAAK,kBAAkB,CAAC,MAAM;QAC/C,CAAC,CAAC,uBAAuB,CAAC,4BAA4B;QACtD,CAAC,CAAC,OAAO,CAAC,WAAW,KAAK,kBAAkB,CAAC,cAAc;YACzD,CAAC,CAAC,uBAAuB,CAAC,oCAAoC;YAC9D,CAAC,CAAC,uBAAuB,CAAC,0DAA0D,CAAC;IAC3F,MAAM,iBAAiB,GAAG,wBAAwB,CAChD,MAAM,EACN,cAAc,EACd,OAAO,CAAC,aAAa,CACtB,CAAC;IACF,OAAO,mBAAmB,CAAC,MAAM,CAAC;QAChC,WAAW;QACX,kBAAkB,EAAE,cAAc;QAClC,iBAAiB;QACjB,qBAAqB,EAAE,4BAA4B,CACjD,MAAM,EACN,cAAc,EACd,iBAAiB,EACjB,OAAO,CAAC,qBAAqB,CAC9B;QACD,qBAAqB,EAAE,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC;QACpD,WAAW,EAAE,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC;QAC9C,UAAU;QACV,kBAAkB,EAAE,gBAAgB,CAAC,OAAO,CAAC,cAAc,CAAC;KAC7D,CAAC,CAAC;AACL,CAAC;AAED,SAAS,4BAA4B,CACnC,IAAoB,EACpB,cAAsB,EACtB,aAAqC,EACrC,OAA8C;IAE9C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IACE,cAAc,IAAI,CAAC;QACnB,aAAa,KAAK,sBAAsB,CAAC,2BAA2B,EACpE,CAAC;QACD,MAAM,IAAI,SAAS,CACjB,wEAAwE,CACzE,CAAC;IACJ,CAAC;IACD,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC;IAC1C,MAAM,iBAAiB,GAAG,WAAW,KAAK,SAAS;QACjD,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACvC,IAAI,WAAW,KAAK,SAAS,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;QACjE,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,iBAAiB,KAAK,SAAS,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACvF,MAAM,IAAI,SAAS,CAAC,iDAAiD,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,EAAE;QACvC,aAAa,EAAE,OAAO,CAAC,iBAAiB;QACxC,qBAAqB,EAAE,OAAO,CAAC,yBAAyB;QACxD,QAAQ,EAAE,OAAO,CAAC,YAAY;QAC9B,WAAW,EAAE,OAAO,CAAC,eAAe;QACpC,mBAAmB,EAAE,OAAO,CAAC,uBAAuB;KACrD,EAAE,iBAAiB,CAAC,CAAC;IACtB,OAAO,8BAA8B,CAAC,MAAM,CAAC;QAC3C,oBAAoB,EAAE,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC;QACtD,uBAAuB,EAAE,gBAAgB,CAAC,OAAO,CAAC,kBAAkB,CAAC;QACrE,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC;QACpC,aAAa,EAAE,iBAAiB,KAAK,SAAS;YAC5C,CAAC,CAAC,0BAA0B,CAAC,yCAAyC;YACtE,CAAC,CAAC,0BAA0B,CAAC,wDAAwD;QACvF,sBAAsB,EAAE,iBAAiB,EAAE,IAAI,IAAI,EAAE;QACrD,yBAAyB,EAAE,iBAAiB,KAAK,SAAS;YACxD,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,cAAc,CACZ,IAAI,EACJ,OAAO,CAAC,OAAO,EAAE,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,EACrE,iBAAiB,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAC7C;QACL,kBAAkB,EAAE,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC;QACrD,iBAAiB,EAAE,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,IAAI,EAAE,EAAE,iBAAiB,CAAC;QAC3F,yBAAyB,EAAE,KAAK,CAAC,aAAa;QAC9C,gBAAgB,EAAE,KAAK,CAAC,QAAQ;QAChC,uBAAuB,EAAE,KAAK,CAAC,WAAW;KAC3C,CAAC,CAAC;AACL,CAAC;AAgBD,SAAS,oBAAoB,CAC3B,IAAoB,EACpB,KAAwB,EACxB,MAAc;IAEd,MAAM,aAAa,GAAG,kBAAkB,CACtC,IAAI,EACJ,KAAK,CAAC,aAAa,IAAI,EAAE,EACzB,YAAY,EACZ,MAAM,EACN,CAAC,UAAU,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,IAAI,GAAG,CACtC,CAAC;IACF,aAAa,CAAC,IAAI,CAAC,GAAG,kBAAkB,CACtC,IAAI,EACJ,KAAK,CAAC,qBAAqB,IAAI,EAAE,EACjC,YAAY,EACZ,MAAM,EACN,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,EAC7D,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,EAC3B,IAAI,GAAG,CAAC,aAAa,CAAC,CACvB,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,kBAAkB,CACjC,IAAI,EACJ,KAAK,CAAC,QAAQ,IAAI,EAAE,EACpB,OAAO,EACP,MAAM,EACN,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAChC,CAAC;IACF,MAAM,WAAW,GAAG,kBAAkB,CACpC,IAAI,EACJ,KAAK,CAAC,WAAW,IAAI,EAAE,EACvB,UAAU,EACV,MAAM,EACN,CAAC,UAAU,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,IAAI,GAAG,CACtC,CAAC;IACF,WAAW,CAAC,IAAI,CAAC,GAAG,kBAAkB,CACpC,IAAI,EACJ,KAAK,CAAC,mBAAmB,IAAI,EAAE,EAC/B,UAAU,EACV,MAAM,EACN,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,EAC3D,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,EACzB,IAAI,GAAG,CAAC,WAAW,CAAC,CACrB,CAAC,CAAC;IACH,OAAO;QACL,aAAa,EAAE,aAAa,CAAC,IAAI,EAAE;QACnC,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE;QACzB,WAAW,EAAE,WAAW,CAAC,IAAI,EAAE;KAChC,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CACzB,IAAoB,EACpB,KAAsB,EACtB,QAA2D,EAC3D,MAAc,EACd,eAAuC,EACvC,gBAA4C,CAAC,IAAI,EAAE,EAAE,CAAC,IAA6B,EACnF,OAAO,IAAI,GAAG,EAAU;IAExB,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QACvC,IACE,CAAC,CAAC,UAAU,YAAY,QAAQ,CAAC;YACjC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,KAAM,UAAsB,EACjE,CAAC;YACD,MAAM,IAAI,SAAS,CAAC,GAAG,MAAM,uCAAuC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACnF,CAAC;QACD,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACnB,MAAM,IAAI,SAAS,CAAC,GAAG,MAAM,6BAA6B,IAAI,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,iBAAiB,CACxB,IAAoB,EACpB,KAA+B,EAC/B,MAAc;IAEd,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;YACjE,MAAM,IAAI,SAAS,CAAC,GAAG,MAAM,iCAAiC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,OAAO,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,wBAAwB,CAC/B,IAAoB,EACpB,cAAsB,EACtB,MAAqC;IAErC,MAAM,SAAS,GAAG,MAAM,IAAI,iBAAiB,CAAC,OAAO,CAAC;IACtD,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;QACzB,IAAI,SAAS,KAAK,iBAAiB,CAAC,OAAO,EAAE,CAAC;YAC5C,MAAM,IAAI,UAAU,CAAC,iDAAiD,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO,sBAAsB,CAAC,+BAA+B,CAAC;IAChE,CAAC;IACD,MAAM,QAAQ,GAAG,SAAS,KAAK,iBAAiB,CAAC,OAAO;QACtD,CAAC,CAAC,IAAI,CAAC,iBAAiB;YACtB,CAAC,CAAC,iBAAiB,CAAC,OAAO;YAC3B,CAAC,CAAC,iBAAiB,CAAC,IAAI;QAC1B,CAAC,CAAC,SAAS,CAAC;IACd,IAAI,QAAQ,KAAK,iBAAiB,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACtE,MAAM,IAAI,SAAS,CAAC,QAAQ,IAAI,CAAC,IAAI,mCAAmC,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO;QACL,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,sBAAsB,CAAC,+BAA+B;QACnF,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,sBAAsB,CAAC,wBAAwB;QACzE,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,sBAAsB,CAAC,0BAA0B;QAC7E,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,sBAAsB,CAAC,2BAA2B;KAChF,CAAC,QAAQ,CAAC,CAAC;AACd,CAAC;AAED,SAAS,YAAY,CAAC,KAA8B;IAClD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,OAAO,eAAe,CAAC,MAAM,CAAC;QAC5B,sBAAsB,EAAE,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC;QACxD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,IAAI,CAAC;QACjD,sBAAsB,EAAE,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC;QACxD,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,CAAC;KAC5C,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,KAAmC;IACxD,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QACrB,OAAO,mBAAmB,CAAC,oBAAoB,CAAC;IAClD,CAAC;IACD,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;QACtB,OAAO,mBAAmB,CAAC,qBAAqB,CAAC;IACnD,CAAC;IACD,OAAO,mBAAmB,CAAC,2BAA2B,CAAC;AACzD,CAAC;AAED,SAAS,gBAAgB,CAAC,MAA8B;IACtD,OAAO,eAAe,CAAC,MAAM,CAAC;QAC5B,oBAAoB,EAClB,MAAM,EAAE,oBAAoB,KAAK,oBAAoB,CAAC,GAAG;YACvD,CAAC,CAAC,yBAAyB,CAAC,uCAAuC;YACnE,CAAC,CAAC,MAAM,EAAE,oBAAoB,KAAK,SAAS;gBAC1C,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,yBAAyB,CAAC,mCAAmC;QACrE,mBAAmB,EAAE,sBAAsB,CAAC,MAAM,CAAC;QACnD,sBAAsB,EAAE,MAAM,EAAE,sBAAsB;QACtD,4BAA4B,EAAE,MAAM,EAAE,0BAA0B;QAChE,cAAc,EACZ,MAAM,EAAE,cAAc,KAAK,MAAM;YAC/B,CAAC,CAAC,mBAAmB,CAAC,oBAAoB;YAC1C,CAAC,CAAC,MAAM,EAAE,cAAc,KAAK,OAAO;gBAClC,CAAC,CAAC,mBAAmB,CAAC,qBAAqB;gBAC3C,CAAC,CAAC,SAAS;QACjB,YAAY,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;KACnC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,QAAQ,CAAC,KAA8C;IAC9D,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,MAAM,KAAK,GAAsC;QAC/C,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,kBAAkB;QACtD,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,cAAc,CAAC,eAAe;QACrD,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,cAAc,CAAC,wBAAwB;QAClE,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,cAAc;QAC9C,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,iBAAiB;QACpD,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,eAAe;QAChD,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC,mBAAmB;KACzD,CAAC;IACF,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;AACnF,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAsB,EAAE,MAAwB;IAC1E,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;QACrC,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,mBAAmB,CAC1B,MAA+C;IAE/C,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE,CACrD,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CACvD,CAAC;AACJ,CAAC;AAED,SAAS,iCAAiC,CACxC,MAA+C,EAC/C,MAAwB;IAExB,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CACjC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC;QACpD,IAAI;QACJ;YACE,QAAQ,EAAE,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBACjD,GAAG,OAAO;gBACV,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;aACxB,CAAC,CAAC;SACJ;KACF,CAAC,CACH,CAAC;IACF,IAAI,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;QAC7B,MAAM,IAAI,SAAS,CAAC,uDAAuD,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,sBAAsB,CAC7B,OAAqC,EACrC,MAAwB;IAExB,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC3D,MAAM,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;QAC3C,MAAM,QAAQ,GAAG,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;QACnE,MAAM,GAAG,IAAI,CAAC;QACd,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC,CAAC;IACH,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC7D,GAAG,MAAM;QACT,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YAC3C,GAAG,UAAU;YACb,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;SACtC,CAAC,CAAC;KACJ,CAAC,CAAC,CAAC;IACJ,IAAI,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;QAC7B,MAAM,IAAI,SAAS,CAAC,uDAAuD,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,EAAE,GAAG,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AACxD,CAAC;AAED,SAAS,YAAY,CAAC,KAAwB,EAAE,IAAY;IAC1D,IAAI,KAAK,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,IAAI,SAAS,CAAC,GAAG,IAAI,cAAc,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,QAA4B;IAC9D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,SAAS,CAAC,kBAAkB,IAAI,uBAAuB,CAAC,CAAC;IACrE,CAAC;IACD,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC7B,OAAO,GAAG,IAAI,IAAI,kBAAkB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,EAAE,CAC/E,IAAI,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CACzD,EAAE,CAAC;AACN,CAAC;AAED,SAAS,OAAO,CAAC,YAAgC;IAC/C,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,YAAY,GAAG,CAAC,IAAI,YAAY,GAAG,KAAK,KAAK,CAAC,EAAE,CAAC;QAC1F,MAAM,IAAI,UAAU,CAAC,yDAAyD,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,YAAY,GAAG,KAAK,CAAC;AAC9B,CAAC;AAED,SAAS,gBAAgB,CAAC,YAAgC;IACxD,MAAM,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACpC,IAAI,KAAK,GAAG,aAAa,EAAE,CAAC;QAC1B,MAAM,IAAI,UAAU,CAAC,yCAAyC,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,iBAAiB,CACxB,QAAgB,EAChB,QAA4B,EAC5B,MAAqC,EACrC,OAAgB;IAEhB,IAAI,OAAO,YAAY,iBAAiB,EAAE,CAAC;QACzC,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,IAAI,OAAO,YAAY,sBAAsB,EAAE,CAAC;QAC9C,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC5E,OAAO,IAAI,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;AAC5F,CAAC"}
1
+ {"version":3,"file":"worker-dispatcher.js","sourceRoot":"","sources":["../../src/worker-dispatcher.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@superdurable/dex",
3
- "version": "1.26.0",
3
+ "version": "1.28.0",
4
4
  "description": "TypeScript SDK for the Dex durable workflow engine",
5
5
  "license": "LicenseRef-Sustainable-Use-1.0",
6
6
  "repository": {