@melra/runtime-core 0.3.0-alpha.18 → 0.3.0-alpha.20

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.
@@ -1,7 +1,19 @@
1
1
  import { type EncryptedPayload } from "@melra/protocol";
2
+ /** What a record digest is for. Each one is keyed apart from the others. */
3
+ export type DigestPurpose = "action" | "render" | "input";
2
4
  export declare class PayloadCipher {
3
5
  private readonly key;
6
+ /** Derived, so the encryption key itself is never used as an HMAC key. */
7
+ private readonly digestKey;
4
8
  constructor(key: Buffer);
9
+ /**
10
+ * A digest stored beside a redacted record: an HMAC under a key derived
11
+ * from this home's payload key, so it is checkable only by a holder of
12
+ * that key, who can open the sealed payload anyway. Labelled by purpose, so
13
+ * the same value digested for two purposes gives two unrelated digests.
14
+ * 64 lowercase hex, the shape a plain SHA-256 had.
15
+ */
16
+ digest(value: unknown, purpose: DigestPurpose): string;
5
17
  seal(value: unknown, context: string): EncryptedPayload;
6
18
  open<T = unknown>(payload: EncryptedPayload, context: string): T;
7
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"payload-cipher.d.ts","sourceRoot":"","sources":["../src/payload-cipher.ts"],"names":[],"mappings":"AAQA,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,iBAAiB,CAAC;AAGzB,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;gBAEjB,GAAG,EAAE,MAAM;IAKvB,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB;IAiBvD,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC;CAoBjE"}
1
+ {"version":3,"file":"payload-cipher.d.ts","sourceRoot":"","sources":["../src/payload-cipher.ts"],"names":[],"mappings":"AAUA,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,iBAAiB,CAAC;AAGzB,4EAA4E;AAC5E,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE1D,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,0EAA0E;IAC1E,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,GAAG,EAAE,MAAM;IAOvB;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,GAAG,MAAM;IAItD,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB;IAiBvD,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC;CAoBjE"}
@@ -1,14 +1,28 @@
1
1
  // Copyright 2026 XAGI Labs Private Limited
2
2
  // SPDX-License-Identifier: Apache-2.0
3
- import { createCipheriv, createDecipheriv, randomBytes, } from "node:crypto";
3
+ import { createCipheriv, createDecipheriv, createHmac, hkdfSync, randomBytes, } from "node:crypto";
4
4
  import { EncryptedPayloadSchema, } from "@melra/protocol";
5
5
  import { canonicalJson } from "@melra/receipt-schema";
6
6
  export class PayloadCipher {
7
7
  key;
8
+ /** Derived, so the encryption key itself is never used as an HMAC key. */
9
+ digestKey;
8
10
  constructor(key) {
9
11
  if (key.length !== 32)
10
12
  throw new Error("payload_key_must_be_32_bytes");
11
13
  this.key = Buffer.from(key);
14
+ // `v1` names the derivation, so a later one can sit beside it.
15
+ this.digestKey = Buffer.from(hkdfSync("sha256", this.key, Buffer.alloc(0), "melra:record-digest:v1", 32));
16
+ }
17
+ /**
18
+ * A digest stored beside a redacted record: an HMAC under a key derived
19
+ * from this home's payload key, so it is checkable only by a holder of
20
+ * that key, who can open the sealed payload anyway. Labelled by purpose, so
21
+ * the same value digested for two purposes gives two unrelated digests.
22
+ * 64 lowercase hex, the shape a plain SHA-256 had.
23
+ */
24
+ digest(value, purpose) {
25
+ return createHmac("sha256", this.digestKey).update(`${purpose}\0${canonicalJson(value)}`).digest("hex");
12
26
  }
13
27
  seal(value, context) {
14
28
  const iv = randomBytes(12);
@@ -1 +1 @@
1
- {"version":3,"file":"payload-cipher.js","sourceRoot":"","sources":["../src/payload-cipher.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,sCAAsC;AAEtC,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,WAAW,GACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,sBAAsB,GAEvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,MAAM,OAAO,aAAa;IACP,GAAG,CAAS;IAE7B,YAAY,GAAW;QACrB,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACvE,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,CAAC,KAAc,EAAE,OAAe;QAClC,MAAM,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;YAC/B,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;YAC3C,MAAM,CAAC,KAAK,EAAE;SACf,CAAC,CAAC;QACH,OAAO;YACL,OAAO,EAAE,CAAC;YACV,SAAS,EAAE,aAAa;YACxB,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC5B,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC5C,GAAG,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;SAC/C,CAAC;IACJ,CAAC;IAED,IAAI,CAAc,OAAyB,EAAE,OAAe;QAC1D,MAAM,MAAM,GAAG,sBAAsB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,SAAiB,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,gBAAgB,CAC/B,aAAa,EACb,IAAI,CAAC,GAAG,EACR,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,WAAW,CAAC,CACpC,CAAC;YACF,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;YAC9C,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC;YAC1D,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;gBACxB,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;gBAC5D,QAAQ,CAAC,KAAK,EAAE;aACjB,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAM,CAAC;IACrD,CAAC;CACF"}
1
+ {"version":3,"file":"payload-cipher.js","sourceRoot":"","sources":["../src/payload-cipher.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ApprovalDecision, ApprovalResponse, EffectContract, EvidencePredicate, Identity, MelraTaskJudgeInput, Operation, PolicyDecision, TaskRecord, TaskRequest } from "@melra/protocol";
1
+ import type { ApprovalDecision, ApprovalResponse, EffectContract, EvidencePredicate, Identity, MelraTaskJudgeInput, Operation, PolicyDecision, Principal, TaskRecord, TaskRequest } from "@melra/protocol";
2
2
  import { type CapabilityUsageReader, type LocalPolicy } from "@melra/policy-core";
3
3
  import { type ActionReceipt, type EvidenceItem, type ExecutionCertificate } from "@melra/receipt-schema";
4
4
  import { SqliteStore } from "@melra/storage-sqlite";
@@ -211,13 +211,15 @@ export declare class TaskController {
211
211
  * against this one at most once.
212
212
  *
213
213
  * `by` is the surface. An agent's declared identity is checked against the
214
- * task's actor; an operator's is not, as `decide` checks no approver. Only
214
+ * task's actor, with `client` the link its transport authenticated, if any;
215
+ * an operator's is not, as `decide` checks no approver. Only
215
216
  * an operator in an enforced process, on a task that ran enforced, judges
216
217
  * out of band, and an in-band verdict counts for nothing where approvals
217
218
  * come only from an operator.
218
219
  */
219
220
  judge(input: Omit<MelraTaskJudgeInput, "identity">, by: {
220
221
  identity: Identity;
222
+ client?: Principal;
221
223
  } | {
222
224
  operator: string;
223
225
  }): ExecutionResult;
@@ -229,6 +231,12 @@ export declare class TaskController {
229
231
  * shown cannot run on that decision.
230
232
  */
231
233
  private approvalRender;
234
+ /**
235
+ * The challenge as stored beside the redacted request: its digest keyed by
236
+ * this home's payload key, and the phrase still `APPROVE` plus that digest's
237
+ * first twelve hex digits, as clients read it.
238
+ */
239
+ private keyedChallenge;
232
240
  /** A pending challenge as an operator surface shows it. */
233
241
  approvalView(taskId: string): {
234
242
  contract: {
@@ -1 +1 @@
1
- {"version":3,"file":"task-controller.d.ts","sourceRoot":"","sources":["../src/task-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-controller.d.ts","sourceRoot":"","sources":["../src/task-controller.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
  import { randomUUID } from "node:crypto";
4
4
  import { allowsRetry, delegationChain, effectContract, executionGuaranteeFor, isOutcomeUnknown, LOCAL_IDENTITY, MelraTaskJudgeInputSchema, TaskRequestSchema, } from "@melra/protocol";
5
- import { approvalTtl, CAPABILITY_DAY_MS, classifyOperation, defaultEvidenceFor, evaluatePolicy, validateApproval, } from "@melra/policy-core";
5
+ import { approvalTtl, CAPABILITY_DAY_MS, classifyOperation, defaultEvidenceFor, digestOperation, evaluatePolicy, validateApproval, } from "@melra/policy-core";
6
6
  import { createCertificate, createReceiptId, evidenceStrength, redactSecrets, redactStructuredValue, sha256, } from "@melra/receipt-schema";
7
7
  import { CircuitBreaker } from "./circuit-breaker.js";
8
8
  function now() {
@@ -84,6 +84,29 @@ export function capabilityUsageReader(store) {
84
84
  return { operations: drawn.operations, amountToday: drawn.amountInWindow };
85
85
  };
86
86
  }
87
+ /**
88
+ * A stored copy's content digests, masked as the content is. A file read's or
89
+ * write's `sha256` hashes exactly what redaction took out of the record, and
90
+ * a `file_hash` item that did not pass carries the file's real hash (one that
91
+ * passed equals the hash its request declared). Applied after redaction to
92
+ * the task's result and to receipt and certificate evidence; the marker maps
93
+ * to itself, so a certificate written from a stored receipt (`certify`) says
94
+ * what the live one did. The caller still gets the `sha256` in `output`, and
95
+ * recovery reads the sealed raw result. A failed item's digest is returned
96
+ * nowhere, since the caller gets the stored receipt and certificate; a file
97
+ * `hash` operation reads it again.
98
+ */
99
+ const MASKED = "[REDACTED_SENSITIVE_FIELD]";
100
+ function maskResultDigest(result, operation) {
101
+ return operation.kind === "file" && (operation.action === "read" || operation.action === "write") && "sha256" in result
102
+ ? { ...result, sha256: MASKED }
103
+ : result;
104
+ }
105
+ /** The same list when there is nothing to mask, so a caller can tell. */
106
+ function maskEvidenceDigests(evidence) {
107
+ const hides = (item) => item.type === "file_hash" && !item.passed && item.digest !== undefined && item.digest !== MASKED;
108
+ return evidence.some(hides) ? evidence.map((item) => (hides(item) ? { ...item, digest: MASKED } : item)) : evidence;
109
+ }
87
110
  /** Statuses a task leaves only once: by starting, by a deny, or by a refusal. */
88
111
  const UNSTARTED = ["planned", "awaiting_approval"];
89
112
  /** Whether a task waits on a question only someone outside MELRA answers (#54). */
@@ -93,11 +116,13 @@ function asksSemantic(request) {
93
116
  /**
94
117
  * A semantic task's evidence with its answers written in (#54). An answered
95
118
  * item passes only on a yes, is inconclusive on cannot_tell, and says who
96
- * judged it; an open one stays failed and inconclusive, summarised
97
- * `unanswered`. Matched by index: a semantic task's receipt has one item per
98
- * predicate, in order. Every other item is left as it was.
119
+ * judged it and, as `executedBy`, the receipt's declared principal, so the
120
+ * two declared chains can be compared without the receipt; an open one stays
121
+ * failed and inconclusive, summarised `unanswered`. Matched by index: a
122
+ * semantic task's receipt has one item per predicate, in order. Every other
123
+ * item is left as it was.
99
124
  */
100
- function overlay(evidence, judgements, unanswered) {
125
+ function overlay(evidence, judgements, unanswered, executedBy) {
101
126
  return evidence.map((item, index) => {
102
127
  if (item.type !== "semantic")
103
128
  return item;
@@ -111,18 +136,27 @@ function overlay(evidence, judgements, unanswered) {
111
136
  ...(judgedBy.verdict === "cannot_tell" ? { inconclusive: true } : {}),
112
137
  summary: `semantic_judgement_${judgedBy.verdict}`,
113
138
  judgedBy,
139
+ ...(executedBy === undefined ? {} : { executedBy }),
114
140
  };
115
141
  });
116
142
  }
117
143
  /**
118
144
  * Whether a judge is the actor it would judge (#54): its declared principal
119
- * is the actor's, or a non-human link the actor acts for. The person the work
120
- * was for may judge it. Claims on both sides, so it stops one loop grading
121
- * itself, not a harness that declares someone else.
145
+ * is the actor's, or a non-human link the actor acts for; or its declared
146
+ * chain names the actor's principal, as a grader the actor spawned would. The
147
+ * person the work was for may judge it, and so may another session under a
148
+ * link the actor's chain shares. `client`, the link a transport authenticated,
149
+ * heads the judge's chain undeclared and is not compared: an OAuth client that
150
+ * planned as itself would otherwise refuse every judge it sends. Claims on
151
+ * both sides, so it stops one loop grading itself, not a harness that
152
+ * declares someone else.
122
153
  */
123
- function judgesItself(judge, actor) {
124
- const same = (principal) => principal.kind === judge.principal.kind && principal.id === judge.principal.id;
125
- return same(actor.principal) || actor.onBehalfOf.some((link) => link.kind !== "human" && same(link));
154
+ function judgesItself(judge, actor, client) {
155
+ const same = (one, other) => one.kind === other.kind && one.id === other.id;
156
+ const declared = judge.onBehalfOf.slice(client === undefined ? 0 : 1);
157
+ return (same(actor.principal, judge.principal) ||
158
+ actor.onBehalfOf.some((link) => link.kind !== "human" && same(link, judge.principal)) ||
159
+ declared.some((link) => same(link, actor.principal)));
126
160
  }
127
161
  /** The one browser action that reads each list. */
128
162
  const BROWSER_LIST_ACTIONS = [
@@ -216,7 +250,7 @@ export class TaskController {
216
250
  ? {}
217
251
  : { idempotencyKey: options.idempotencyKey }),
218
252
  ...(options.attempt === undefined ? {} : { attempt: options.attempt }),
219
- ...(policy.challenge === undefined ? {} : { approval: policy.challenge }),
253
+ ...(policy.challenge === undefined ? {} : { approval: this.keyedChallenge(policy.challenge) }),
220
254
  receiptIds: [],
221
255
  createdAt: timestamp,
222
256
  updatedAt: timestamp,
@@ -330,8 +364,13 @@ export class TaskController {
330
364
  return this.finishWithoutReceipt(task, []);
331
365
  }
332
366
  if (rechecked.decision.outcome === "confirm") {
333
- if (rechecked.challenge === undefined ||
334
- task.approval?.actionDigest !== rechecked.challenge.actionDigest) {
367
+ // Stored keyed (`keyedChallenge`). One a 0.3.0-alpha.17 or alpha.18
368
+ // process planned holds the plain digest, which binds the same exact
369
+ // operation; it stays executable until it expires.
370
+ const fresh = rechecked.challenge?.actionDigest;
371
+ if (fresh === undefined ||
372
+ (task.approval?.actionDigest !== this.payloadCipher.digest(fresh, "action") &&
373
+ task.approval?.actionDigest !== fresh)) {
335
374
  throw new Error("approval_action_digest_mismatch");
336
375
  }
337
376
  // Enforced mode asserts the agent holds no credential, so anything it
@@ -341,7 +380,10 @@ export class TaskController {
341
380
  throw new Error("approval_in_band_refused");
342
381
  }
343
382
  // A decision an operator recorded wins over anything the caller sent.
344
- const render = this.approvalRender(task, request).renderDigest;
383
+ const { contract, renderDigest: render } = this.approvalRender(task, request);
384
+ // Recorded keyed, whatever form `render` takes: an older executor reads
385
+ // the plain form only from a decision row.
386
+ const bound = this.payloadCipher.digest(contract, "render");
345
387
  const decision = this.store.getApprovalDecision(task.approval.approvalId);
346
388
  // Waiting is only worth it while an operator could still say yes:
347
389
  // `decide` refuses an expired challenge, so past it the task is re-planned.
@@ -349,15 +391,20 @@ export class TaskController {
349
391
  throw new Error(Date.parse(task.approval.expiresAt) <= Date.now() ? "approval_expired" : "approval_awaiting_operator");
350
392
  }
351
393
  if (decision !== undefined) {
352
- if (decision.renderDigest !== render)
394
+ // A row a 0.3.0-alpha.17 or alpha.18 `melra approve` or console wrote
395
+ // holds the plain digest of the same contract.
396
+ if (decision.renderDigest !== render && decision.renderDigest !== sha256(contract)) {
353
397
  throw new Error("approval_render_mismatch");
398
+ }
354
399
  if (!this.usable(task, decision))
355
400
  throw new Error("approval_expired");
356
401
  // Out of band is this kernel's claim to make, not the row's: a
357
402
  // developer-mode kernel cannot vouch that nothing the agent touched
358
- // wrote it, whatever mode the process that recorded it was in.
403
+ // wrote it, whatever mode the process that recorded it was in. The
404
+ // digest is keyed, whichever form the row holds.
359
405
  task.approvedBy = {
360
406
  ...decision,
407
+ renderDigest: bound,
361
408
  channel: decision.channel === "out_of_band" && this.policy.mode === "enforced"
362
409
  ? "out_of_band"
363
410
  : "in_band",
@@ -368,12 +415,12 @@ export class TaskController {
368
415
  if (!approvalResult.ok) {
369
416
  throw new Error(approvalResult.reason);
370
417
  }
371
- // The phrase is derivable by anyone who knows the task, so an echo of
372
- // it says only that something echoed it.
418
+ // The phrase is readable by anyone who can read the task, so an echo
419
+ // of it says only that something echoed it.
373
420
  task.approvedBy = {
374
421
  approvalId: task.approval.approvalId,
375
422
  taskId: task.id,
376
- renderDigest: render,
423
+ renderDigest: bound,
377
424
  channel: "in_band",
378
425
  approver: "phrase",
379
426
  decidedAt: now(),
@@ -441,7 +488,7 @@ export class TaskController {
441
488
  effectReturned = true;
442
489
  const sanitizedResult = redactStructuredValue(result);
443
490
  task.status = "verifying";
444
- task.result = sanitizedResult.value;
491
+ task.result = maskResultDigest(sanitizedResult.value, request.operation);
445
492
  task.updatedAt = now();
446
493
  // Committed on its own, ahead of the rest, on purpose: recovery settles
447
494
  // a `verifying` change it can look at again against this result
@@ -915,7 +962,7 @@ export class TaskController {
915
962
  settleSemantic(task, status, error, unanswered) {
916
963
  const last = task.receiptIds[task.receiptIds.length - 1];
917
964
  const receipt = last === undefined ? undefined : this.store.getReceipt(last);
918
- const evidence = overlay(receipt?.evidence ?? [], task.judgements ?? [], unanswered);
965
+ const evidence = overlay(receipt?.evidence ?? [], task.judgements ?? [], unanswered, receipt?.principal);
919
966
  task.status = status;
920
967
  if (error === undefined)
921
968
  delete task.error;
@@ -939,7 +986,8 @@ export class TaskController {
939
986
  * against this one at most once.
940
987
  *
941
988
  * `by` is the surface. An agent's declared identity is checked against the
942
- * task's actor; an operator's is not, as `decide` checks no approver. Only
989
+ * task's actor, with `client` the link its transport authenticated, if any;
990
+ * an operator's is not, as `decide` checks no approver. Only
943
991
  * an operator in an enforced process, on a task that ran enforced, judges
944
992
  * out of band, and an in-band verdict counts for nothing where approvals
945
993
  * come only from an operator.
@@ -949,14 +997,10 @@ export class TaskController {
949
997
  const operator = "operator" in by && this.enforced;
950
998
  return this.store.transaction(() => {
951
999
  const task = this.status(parsed.taskId);
952
- const runEnforced = this.runMode(task) === "enforced";
953
- // Every door an agent has to an enforced kernel is its harness's, and a
954
- // developer process sharing the home must not settle an enforced run.
955
- if (!operator && (this.enforced || runEnforced))
956
- throw new Error("judgement_in_band_refused");
957
- // Out of band only on an enforced run, as `execute` downgrades an
958
- // approval: on a developer run the agent's own shell could have sent it.
959
- const channel = operator && runEnforced ? "out_of_band" : "in_band";
1000
+ // The task and its question before the channel: told to change it, a
1001
+ // caller would only meet a settled task or a wrong id there (#384).
1002
+ // Nothing here is news to it: `melra_task_status` and `melra inspect`
1003
+ // show both.
960
1004
  if (task.status !== "waiting_user")
961
1005
  throw new Error(`task_not_awaiting_judgement:${task.status}`);
962
1006
  const judgement = task.judgements?.find((entry) => entry.judgementId === parsed.judgementId);
@@ -968,7 +1012,17 @@ export class TaskController {
968
1012
  // the recovery pass settles it closed.
969
1013
  if (Date.parse(judgement.expiresAt) <= Date.now())
970
1014
  throw new Error("judgement_expired");
971
- if ("identity" in by && judgesItself(by.identity, this.loadRequest(task.id).identity ?? LOCAL_IDENTITY)) {
1015
+ const runEnforced = this.runMode(task) === "enforced";
1016
+ // Every door an agent has to an enforced kernel is its harness's, and a
1017
+ // developer process sharing the home must not settle an enforced run.
1018
+ if (!operator && (this.enforced || runEnforced))
1019
+ throw new Error("judgement_in_band_refused");
1020
+ // Out of band only on an enforced run, as `execute` downgrades an
1021
+ // approval: on a developer run the agent's own shell could have sent it.
1022
+ const channel = operator && runEnforced ? "out_of_band" : "in_band";
1023
+ // After the channel: where no agent's verdict counts, who it claims to
1024
+ // be is moot.
1025
+ if ("identity" in by && judgesItself(by.identity, this.loadRequest(task.id).identity ?? LOCAL_IDENTITY, by.client)) {
972
1026
  throw new Error("semantic_judge_is_actor");
973
1027
  }
974
1028
  judgement.judgedBy = redactStructuredValue({
@@ -1059,7 +1113,24 @@ export class TaskController {
1059
1113
  */
1060
1114
  approvalRender(task, request) {
1061
1115
  const { authorization: _authorization, policy: _policy, ...contract } = effectContract({ ...task, request }, classifyOperation(request.operation));
1062
- return { contract, renderDigest: sha256(contract) };
1116
+ // Keyed, like the challenge. A task a 0.3.0-alpha.17 or alpha.18 process
1117
+ // planned is shown its plain digest, the one that version's executor
1118
+ // recomputes, so a decision recorded here is one it accepts.
1119
+ const legacy = task.approval?.actionDigest === digestOperation(task.id, request.operation);
1120
+ return { contract, renderDigest: legacy ? sha256(contract) : this.payloadCipher.digest(contract, "render") };
1121
+ }
1122
+ /**
1123
+ * The challenge as stored beside the redacted request: its digest keyed by
1124
+ * this home's payload key, and the phrase still `APPROVE` plus that digest's
1125
+ * first twelve hex digits, as clients read it.
1126
+ */
1127
+ keyedChallenge(challenge) {
1128
+ const actionDigest = this.payloadCipher.digest(challenge.actionDigest, "action");
1129
+ return {
1130
+ ...challenge,
1131
+ actionDigest,
1132
+ ...(challenge.phrase === undefined ? {} : { phrase: `APPROVE ${actionDigest.slice(0, 12)}` }),
1133
+ };
1063
1134
  }
1064
1135
  /** A pending challenge as an operator surface shows it. */
1065
1136
  approvalView(taskId) {
@@ -1183,20 +1254,32 @@ export class TaskController {
1183
1254
  const approvalId = task.approvedBy?.approvalId ??
1184
1255
  (task.policyDecision.outcome === "confirm" ? task.approval?.approvalId : undefined);
1185
1256
  const sanitized = redactStructuredValue(result);
1257
+ const observedEffect = maskResultDigest(sanitized.value, request.operation);
1186
1258
  // A verifier's summary and source are stored text like any other.
1187
1259
  const sanitizedEvidence = redactStructuredValue(evidence);
1260
+ const storedEvidence = maskEvidenceDigests(sanitizedEvidence.value);
1261
+ // The declared chain, redacted as the task row, a judge's name and a
1262
+ // certificate's `executedBy` are, so it reads the same as `executedBy`.
1263
+ const principal = redactSecrets(delegationChain(request.identity ?? LOCAL_IDENTITY));
1188
1264
  const adapterRedactions = Array.isArray(result.redactions)
1189
1265
  ? result.redactions.filter((item) => typeof item === "string")
1190
1266
  : [];
1267
+ const masked = observedEffect !== sanitized.value || storedEvidence !== sanitizedEvidence.value ? [MASKED] : [];
1191
1268
  const redactions = [
1192
- ...new Set([...adapterRedactions, ...sanitized.redactions, ...sanitizedEvidence.redactions]),
1269
+ ...new Set([
1270
+ ...adapterRedactions,
1271
+ ...sanitized.redactions,
1272
+ ...sanitizedEvidence.redactions,
1273
+ ...principal.redactions,
1274
+ ...masked,
1275
+ ]),
1193
1276
  ];
1194
1277
  return {
1195
1278
  schemaVersion: "1.0.0",
1196
1279
  receiptId: createReceiptId(),
1197
1280
  taskId: task.id,
1198
1281
  capability,
1199
- principal: delegationChain(request.identity ?? LOCAL_IDENTITY),
1282
+ principal: principal.value,
1200
1283
  effect,
1201
1284
  executionGuarantee: executionGuaranteeFor(effect, request.reconciliation.length > 0),
1202
1285
  mode: this.runMode(task) ?? this.policy.mode,
@@ -1218,12 +1301,14 @@ export class TaskController {
1218
1301
  // The target is built from the request (a URL, a memory key) and stored
1219
1302
  // as it is, so it takes the same secret shapes out as everything else.
1220
1303
  target: redactSecrets(target).value,
1221
- inputDigest: sha256(request.operation),
1304
+ // Keyed and bound to the task: it still pins the exact input for a
1305
+ // holder of the home's key, and two tasks' digests are never comparable.
1306
+ inputDigest: this.payloadCipher.digest({ taskId: task.id, operation: request.operation }, "input"),
1222
1307
  startedAt,
1223
1308
  endedAt: now(),
1224
1309
  success,
1225
- observedEffect: sanitized.value,
1226
- evidence: sanitizedEvidence.value,
1310
+ observedEffect,
1311
+ evidence: storedEvidence,
1227
1312
  redactions,
1228
1313
  ...(error === undefined ? {} : { error }),
1229
1314
  };
@@ -1288,10 +1373,10 @@ export class TaskController {
1288
1373
  result: certificateResult(task),
1289
1374
  policyVersion: task.policyDecision.policyVersion,
1290
1375
  receiptIds: task.receiptIds,
1291
- // Redacted as a receipt's is, before the digest is taken. Redacting
1292
- // again changes nothing, so one written from a stored receipt's items
1293
- // (`certify`) says what one written from the verifier's would.
1294
- evidence: redactStructuredValue(evidence).value,
1376
+ // Redacted and masked as a receipt's is, before the digest is taken.
1377
+ // Doing either again changes nothing, so one written from a stored
1378
+ // receipt's items (`certify`) says what one written from the verifier's would.
1379
+ evidence: maskEvidenceDigests(redactStructuredValue(evidence).value),
1295
1380
  createdAt: now(),
1296
1381
  ...(mode === undefined ? {} : { mode }),
1297
1382
  ...(approvalChannel === undefined ? {} : { approvalChannel }),
@@ -1 +1 @@
1
- {"version":3,"file":"task-controller.js","sourceRoot":"","sources":["../src/task-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-controller.js","sourceRoot":"","sources":["../src/task-controller.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-controller.d.ts","sourceRoot":"","sources":["../src/workflow-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-controller.d.ts","sourceRoot":"","sources":["../src/workflow-controller.ts"],"names":[],"mappings":"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"}
@@ -865,15 +865,26 @@ export class WorkflowController {
865
865
  status = this.deriveStatus(draft, definition);
866
866
  }
867
867
  const from = draft.status;
868
- draft.status = status;
869
868
  // Named the way advanceOnce names a stalled unwind, so a run reads the
870
869
  // same whether its process died or not.
871
- if (status === "recovery_required") {
872
- draft.error = haltReason(definition, draft.nodes) ?? "workflow_contains_unreconciled_mutation";
870
+ const error = status === "recovery_required"
871
+ ? (haltReason(definition, draft.nodes) ?? "workflow_contains_unreconciled_mutation")
872
+ : undefined;
873
+ // Nothing to recover: no node moved, and the run already reads as its
874
+ // nodes say, or is planned with every node pending, which derives
875
+ // running only because nobody has advanced it (#406). Recorded anyway,
876
+ // every process that started logged a recovery that never happened, and
877
+ // a planned run read as running everywhere but where it was planned.
878
+ if (canonicalJson(draft.nodes) === canonicalJson(stored.nodes) &&
879
+ (status === from || (from === "planned" && status === "running")) &&
880
+ error === draft.error) {
881
+ return;
873
882
  }
874
- else {
883
+ draft.status = status;
884
+ if (error === undefined)
875
885
  delete draft.error;
876
- }
886
+ else
887
+ draft.error = error;
877
888
  emit(status === "recovery_required"
878
889
  ? "workflow.recovery_required"
879
890
  : "workflow.recovered", {
@@ -1253,7 +1264,7 @@ export class WorkflowController {
1253
1264
  state: {
1254
1265
  status: "awaiting_input",
1255
1266
  taskIds: [],
1256
- prompt: node.prompt,
1267
+ prompt: recordedInput(node.prompt, 2_000),
1257
1268
  },
1258
1269
  tasks: [],
1259
1270
  };
@@ -1269,7 +1280,7 @@ export class WorkflowController {
1269
1280
  state: {
1270
1281
  status: "verified_complete",
1271
1282
  taskIds: [],
1272
- prompt: node.prompt,
1283
+ prompt: recordedInput(node.prompt, 2_000),
1273
1284
  input: recordedInput(supplied.value),
1274
1285
  },
1275
1286
  tasks: [],
@@ -1280,8 +1291,12 @@ export class WorkflowController {
1280
1291
  // next advance asks again without the worker reporting twice.
1281
1292
  const report = inputs.find((item) => item.nodeId === node.id)?.value ?? state.input;
1282
1293
  // Node state caps `prompt` at 2,000 chars; assignee + goal can exceed
1283
- // that, and a truncated label is better than a schema rejection.
1284
- const prompt = `${node.assignee}: ${node.goal}`.slice(0, 2_000);
1294
+ // that, and a truncated label is better than a schema rejection. The
1295
+ // delegate reads its task here, so only secret shapes go, not the goal.
1296
+ // Each field is redacted on its own, as the stored definition does, so
1297
+ // the join cannot read the goal as the value of a credential-named
1298
+ // assignee; the cap still comes after redaction.
1299
+ const prompt = `${recordedInput(node.assignee)}: ${recordedInput(node.goal)}`.slice(0, 2_000);
1285
1300
  if (report === undefined) {
1286
1301
  return {
1287
1302
  state: { status: "awaiting_input", taskIds: [], prompt },
@@ -1751,10 +1766,12 @@ function asked(item) {
1751
1766
  }
1752
1767
  // Human- and delegate-supplied text is untrusted like any other input, so it is
1753
1768
  // redacted before it reaches persisted state, as is the check a node waits
1754
- // on. Redaction can lengthen a value (a short secret becomes a longer
1755
- // marker), hence the cap the state schema wants.
1756
- function recordedInput(value) {
1757
- return String(redactStructuredValue(value).value).slice(0, 10_000);
1769
+ // on, and so is the prompt a node shows, as the stored definition's copy is.
1770
+ // Redaction can lengthen a value (a short secret becomes a longer marker),
1771
+ // hence the cap the state schema wants, applied after it so a cut cannot
1772
+ // leave part of a secret its pattern no longer matches.
1773
+ function recordedInput(value, max = 10_000) {
1774
+ return String(redactStructuredValue(value).value).slice(0, max);
1758
1775
  }
1759
1776
  function requestsFor(node) {
1760
1777
  switch (node.type) {
@@ -1906,6 +1923,12 @@ function haltReason(definition, nodes) {
1906
1923
  function hadNoEffect(task) {
1907
1924
  return ["failed", "budget_exhausted", "cancelled", "policy_blocked"].includes(task.status);
1908
1925
  }
1926
+ /**
1927
+ * Plain, unlike the digests a task stores (`PayloadCipher.digest`): every
1928
+ * version sharing a home must derive the same key for a step, or one could
1929
+ * plan again a step another already ran. It can be keyed only once no process
1930
+ * that derives it plain may share the home (see THREAT_MODEL.md).
1931
+ */
1909
1932
  function taskIdempotencyKey(identity, request) {
1910
1933
  return sha256({ ...identity, request });
1911
1934
  }
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-controller.js","sourceRoot":"","sources":["../src/workflow-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-controller.js","sourceRoot":"","sources":["../src/workflow-controller.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,sCAAsC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,GAUvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,MAAM,GAEP,MAAM,uBAAuB,CAAC;AAI/B,OAAO,EACL,kBAAkB,EAClB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,YAAY,EACZ,gBAAgB,GAEjB,MAAM,qBAAqB,CAAC;AAmB7B;;;;;GAKG;AACH,MAAM,WAAY,SAAQ,KAAK;IAElB;IACA;IAFX,YACW,MAAe,EACf,OAAoB;QAE7B,KAAK,CAAC,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAHxD,WAAM,GAAN,MAAM,CAAS;QACf,YAAO,GAAP,OAAO,CAAa;IAG/B,CAAC;CACF;AASD,MAAM,WAAW,GAA4B;IAC3C,SAAS;IACT,SAAS;IACT,mBAAmB;IACnB,mBAAmB;CACpB,CAAC;AAEF,2EAA2E;AAC3E,MAAM,eAAe,GAAG,oCAAoC,CAAC;AAE7D,4EAA4E;AAC5E,8EAA8E;AAC9E,8EAA8E;AAC9E,oEAAoE;AACpE,MAAM,WAAW,GAA4B,CAAC,GAAG,WAAW,EAAE,QAAQ,CAAC,CAAC;AAExE,MAAM,OAAO,kBAAkB;IAmBV;IACA;IACA;IACA;IArBnB,6EAA6E;IAC7E,wEAAwE;IACxE,sEAAsE;IACrD,QAAQ,GAAG,IAAI,GAAG,EAA0C,CAAC;IAC7D,KAAK,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,UAAU,EAAE,EAAE,CAAC;IAC1D,uEAAuE;IACtD,GAAG,GAAG,CAAC,MAAc,EAAW,EAAE,CACjD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,kBAAkB,CAAC;IAC1D,4EAA4E;IAC5E,kCAAkC;IACjB,aAAa,GAAG,GAAG,IAAI,CAAC,KAAK,WAAW,CAAC;IAC1D,gFAAgF;IAC/D,YAAY,GAAG,GAAG,IAAI,CAAC,KAAK,UAAU,CAAC;IACxD,4EAA4E;IAC5E,qEAAqE;IACpD,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IAE5C,YACmB,KAAkB,EAClB,KAAqB,EACrB,aAA4B,EAC5B,kBAAkB,MAAM;QAHxB,UAAK,GAAL,KAAK,CAAa;QAClB,UAAK,GAAL,KAAK,CAAgB;QACrB,kBAAa,GAAb,aAAa,CAAe;QAC5B,oBAAe,GAAf,eAAe,CAAS;IACxC,CAAC;IAEJ,IAAI,CAAC,UAA8B;QACjC,MAAM,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACvC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;YACxC,uEAAuE;YACvE,uEAAuE;YACvE,qEAAqE;YACrE,wDAAwD;YACxD,IAAI,gBAAgB,CAAC,IAAI,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YACjG,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxC,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;oBACrD,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;YACD,oEAAoE;YACpE,0EAA0E;YAC1E,IAAI,CAAC,KAAK,CAAC,gBAAgB,CACzB,IAAI,CAAC,IAAI,KAAK,WAAW;gBACvB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;gBAClB,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc;oBAC5B,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAChD,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,YAAY;wBAC1B,CAAC,CAAC,IAAI,CAAC,gBAAgB;wBACvB,CAAC,CAAC,EAAE,CACX,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC;YACpC,aAAa,EAAE,OAAO;YACtB,EAAE;YACF,YAAY,EAAE,MAAM,CAAC,EAAE;YACvB,iBAAiB,EAAE,MAAM,CAAC,OAAO;YACjC,MAAM,EAAE,OAAO;YACf,YAAY,EAAE,CAAC;YACf,KAAK,EAAE,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAC7D;YACD,OAAO;YACP,SAAS;YACT,SAAS,EAAE,SAAS;SACrB,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,kBAAkB,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;QACxE,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,yBAAyB,EAAE;YAClE,IAAI,EAAE,OAAO;YACb,EAAE,EAAE,SAAS;SACd,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QACxD,yEAAyE;QACzE,gDAAgD;QAChD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC;QACrD,yEAAyE;QACzE,0EAA0E;QAC1E,qEAAqE;QACrE,4EAA4E;QAC5E,MAAM,OAAO,GAAG,YAAY,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,OAAO,aAAa,CAAC;QACrE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACxE,IACE,MAAM,KAAK,SAAS;YACpB,aAAa,CAAC,wBAAwB,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;gBACrF,aAAa,CAAC,MAAM,CAAC,EACvB,CAAC;YACD,MAAM,IAAI,KAAK,CACb,gCAAgC,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,OAAO,8EAA8E,CAC1I,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,cAAc,CACvB,QAAQ,EACR,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,EAC3E,OAAO,EACP,CAAC,OAAO,EAAE,YAAY,CAAC,CACxB,CAAC;QACF,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,UAAkB;QACvB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,GAAG,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC7D,OAAO,GAAG,CAAC;IACb,CAAC;IAED,MAAM,CAAC,UAAkB,EAAE,aAAa,GAAG,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAClE,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,UAAkB,EAAE,MAAc;QAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5F,OAAO,MAAM,KAAK,SAAS;YACzB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC;IACtG,CAAC;IAED,KAAK,CAAC,OAAO,CACX,UAAkB,EAClB,YAAgC,EAAE,EAClC,SAA0B,EAAE;QAE5B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC/C,MAAM,KAAK,GACT,QAAQ,KAAK,SAAS;YACpB,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE;YACnB,CAAC,CAAC,QAAQ,CAAC,IAAI,CACX,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CAChB,CAAC;QACR,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAC7B,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,CAClD,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC;YACH,OAAO,MAAM,MAAM,CAAC;QACtB,CAAC;gBAAS,CAAC;YACT,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,MAAM,EAAE,CAAC;gBAC7C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,kFAAkF;IAClF,kEAAkE;IAC1D,KAAK,CAAC,aAAa,CACzB,UAAkB,EAClB,SAA6B,EAC7B,MAAuB;QAEvB,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACxC,wEAAwE;QACxE,0EAA0E;QAC1E,+DAA+D;QAC/D,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,mBAAmB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,4EAA4E;QAC5E,sEAAsE;QACtE,qEAAqE;QACrE,yBAAyB;QACzB,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC7F,0EAA0E;QAC1E,0EAA0E;QAC1E,0EAA0E;QAC1E,uEAAuE;QACvE,kEAAkE;QAClE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACrD,IACE,IAAI,KAAK,SAAS;YAClB,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;YACzB,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YAC1C,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EACpC,CAAC;YACD,oEAAoE;YACpE,sEAAsE;YACtE,qEAAqE;YACrE,uEAAuE;YACvE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,UAAU,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC1D,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC;oBAAE,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAC7E,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IACE,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAC9B,UAAU,EACV,IAAI,CAAC,KAAK,EACV,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAC3B,IAAI,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,WAAW,EAAE,CACnD,EACD,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;QACD,sEAAsE;QACtE,oEAAoE;QACpE,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE;YAC/B,wEAAwE;YACxE,uEAAuE;YACvE,yEAAyE;YACzE,yEAAyE;YACzE,sDAAsD;YACtD,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAC3C,UAAU,EACV,IAAI,CAAC,KAAK,EACV,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,WAAW,EAAE,CAC1D,CAAC;gBACF,gEAAgE;gBAChE,IAAI,CAAC,OAAO;oBAAE,aAAa,CAAC,OAAO,CAAC,CAAC;YACvC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAK,KAA4B,CAAC,IAAI,KAAK,mBAAmB;oBAAE,aAAa,CAAC,OAAO,CAAC,CAAC;YACzF,CAAC;QACH,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5B,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAC/D,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC/B,aAAa,CAAC,OAAO,CAAC,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,WAAW,CACvB,UAAkB,EAClB,SAA6B,EAC7B,MAAuB;QAEvB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACvC,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/D,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAChD,CAAC;QACD,4EAA4E;QAC5E,4EAA4E;QAC5E,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC;QAClC,yEAAyE;QACzE,yEAAyE;QACzE,qEAAqE;QACrE,uEAAuE;QACvE,sEAAsE;QACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACvD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;QAC9E,CAAC;QACD,oEAAoE;QACpE,yEAAyE;QACzE,uEAAuE;QACvE,0CAA0C;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACxD,MAAM,QAAQ,GACZ,OAAO,CAAC,MAAM,KAAK,QAAQ;YACzB,CAAC,CAAC,UAAU,CAAC,KAAK;iBACb,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,KAAK,cAAc;gBAC5B,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC,QAAQ,CACvC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,IAAI,EAAE,CACrC;gBACD,UAAU,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAC9E;iBACA,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;iBACtB,OAAO,EAAE;YACd,CAAC,CAAC,EAAE,CAAC;QACT,2EAA2E;QAC3E,uEAAuE;QACvE,yEAAyE;QACzE,0DAA0D;QAC1D,MAAM,OAAO,GAAG,mBAAmB,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAC/D,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,OAAO,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;gBAC3C,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;YAC7E,CAAC;YACD,qEAAqE;YACrE,yEAAyE;YACzE,4CAA4C;YAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACnD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;gBAC1B,KAAK,CAAC,MAAM,GAAG,mBAAmB,CAAC;gBACnC,KAAK,CAAC,KAAK,GAAG,oCAAoC,OAAO,CAAC,EAAE,EAAE,CAAC;gBAC/D,IAAI,CAAC,yBAAyB,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAClF,CAAC,CAAC,CAAC;YACH,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;QACpE,CAAC;QACD,4EAA4E;QAC5E,0EAA0E;QAC1E,8DAA8D;QAC9D,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;QAC7E,CAAC;QACD,iEAAiE;QACjE,2EAA2E;QAC3E,0EAA0E;QAC1E,sEAAsE;QACtE,qBAAqB;QACrB,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;aACvC,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,KAAK,cAAc;YAC5B,CAAC,mBAAmB,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAC9C,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,IAAI,EAAE,CACrC,CACJ;aACA,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;aACtB,IAAI,EAAE,CAAC;QACV,uEAAuE;QACvE,0EAA0E;QAC1E,0EAA0E;QAC1E,2DAA2D;QAC3D,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAC7C,OAAO,CAAC,KAAK,CAAC,MAAM,CAAE,CAAC,OAAO,CAAC,IAAI,CACjC,CAAC,MAAM,EAAE,EAAE,CACT,CAAC,CAAC,SAAS,EAAE,mBAAmB,EAAE,kBAAkB,CAAC,CAAC,QAAQ,CAC5D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,EAAE,CACzC,CACJ,CACF,CAAC;QACF,MAAM,OAAO,GACX,QAAQ,CAAC,MAAM,GAAG,CAAC;YACjB,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,aAAa;gBACb,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,CAAC,GAAG,QAAQ,EAAE,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,sEAAsE;YACtE,qEAAqE;YACrE,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;YAClG,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;QACpE,CAAC;QAED,qEAAqE;QACrE,wEAAwE;QACxE,wEAAwE;QACxE,sBAAsB;QACtB,IAAI,OAAwC,CAAC;QAC7C,MAAM,OAAO,GAAmD,MAAM,CAAC,QAAQ,CAAC,MAAM;YACtF,CAAC;YACC,CAAC,CAAC,uEAAuE;gBACvE,kEAAkE;gBAClE,qEAAqE;gBACrE,sEAAsE;gBACtE,oEAAoE;gBACpE,sEAAsE;gBACtE,kBAAkB;gBAClB,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC;YACtE,CAAC,CAAC,OAAO,CAAC,UAAU,CAChB,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBAC3B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;gBACtC,OAAO;oBACL,MAAM;oBACN,MAAM,EAAE,MAAM,IAAI,CAAC,WAAW,CAC5B,IAAI,EACJ,UAAU,EACV,OAAO,CAAC,KAAK,CAAC,MAAM,CAAE,EACtB,OAAO,EACP,SAAS,EACT,MAAM,CACP;iBACF,CAAC;YACJ,CAAC,CAAC,CACH,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;gBACjB,mEAAmE;gBACnE,mEAAmE;gBACnE,oDAAoD;gBACpD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC;gBAC1E,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,OAAO,GAAG;wBACR,MAAM,EAAE,QAAQ,CAAC,MAAM,YAAY,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM;qBAC1F,CAAC;gBACJ,CAAC;gBACD,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CACxC,OAAO,CAAC,MAAM,KAAK,WAAW;oBAC5B,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;oBACjB,CAAC,CAAC,OAAO,CAAC,MAAM,YAAY,WAAW;wBACrC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBAC/D,CAAC,CAAC,EAAE,CACT,CAAC;YACJ,CAAC,CAAC,CAAC,CAAC;QACR,0EAA0E;QAC1E,0EAA0E;QAC1E,uEAAuE;QACvE,0EAA0E;QAC1E,qEAAqE;QACrE,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,EAAE,CACrC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;YACrE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAChC,uEAAuE;QACvE,0EAA0E;QAC1E,wBAAwB;QACxB,IACE,CAAC,iBAAiB,CAAC,UAAU,EAAE,WAAW,CAAC;YAC3C,OAAO,CAAC,IAAI,CACV,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CACrB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;gBACrD,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,cAAc,CACnD,EACD,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;gBACnD,IACE,IAAI,CAAC,IAAI,KAAK,cAAc;oBAC5B,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,SAAS,EAC5C,CAAC;oBACD,SAAS;gBACX,CAAC;gBACD,+DAA+D;gBAC/D,uEAAuE;gBACvE,gEAAgE;gBAChE,mEAAmE;gBACnE,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,YAAY,KAAK,OAAO,CAAC,YAAY;oBAAE,MAAM;gBACzE,MAAM,OAAO,GAAG,CAAC,EAAU,EAAE,EAAE,CAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACjF,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC/D,OAAO,CAAC,IAAI,CAAC;wBACX,MAAM,EAAE,IAAI,CAAC,EAAE;wBACf,MAAM,EAAE;4BACN,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;4BACzC,KAAK,EAAE,EAAE;yBACV;qBACF,CAAC,CAAC;oBACH,SAAS;gBACX,CAAC;gBACD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CACrC,IAAI,CAAC,OAAO,EACZ,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAClC,SAAS,EACT,IAAI,EACJ;oBACE,UAAU,EAAE,OAAO,CAAC,EAAE;oBACtB,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,SAAS,EAAE,CAAC;oBACZ,MAAM,EAAE,cAAc;iBACvB,CACF,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC;oBACX,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,MAAM,EAAE;wBACN,GAAG,YAAY;wBACf,KAAK,EACH,YAAY,CAAC,KAAK,CAAC,MAAM,KAAK,mBAAmB;4BAC/C,CAAC,CAAC,EAAE,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE;4BAClD,CAAC,CAAC,YAAY,CAAC,KAAK;qBACzB;iBACF,CAAC,CAAC;gBACH,oEAAoE;gBACpE,yCAAyC;gBACzC,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,KAAK,mBAAmB;oBAAE,MAAM;YAC/D,CAAC;QACH,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACpC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC;QAC5E,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YACnD,KAAK,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;gBACzC,iEAAiE;gBACjE,mEAAmE;gBACnE,oCAAoC;gBACpC,IAAI,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAAE,SAAS;gBACjF,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAE,CAAC,MAAM,CAAC;gBACzC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;gBACnC,IAAI,CAAC,uBAAuB,EAAE;oBAC5B,MAAM;oBACN,IAAI;oBACJ,KAAK,EAAE,MAAM,CAAC,KAAK;iBACpB,CAAC,CAAC;YACL,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC,EAAE,UAAU,CAAC,CAAC;QACf,IAAI,OAAO,KAAK,SAAS;YAAE,MAAM,OAAO,CAAC,MAAM,CAAC;QAChD,OAAO;YACL,GAAG;YACH,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;YACpD,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC;SACvC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,kBAAkB,CACtB,EAAE,aAAa,GAAG,KAAK,KAAkC,EAAE;QAE3D,0EAA0E;QAC1E,sDAAsD;QACtD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QACpD,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,aAAsB;QAC/C,MAAM,YAAY,GAAG,IAAI,GAAG,EAAmB,CAAC;QAChD,MAAM,QAAQ,GAAc,EAAE,CAAC;QAC/B,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YACzE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,GAAG,EAAmB,CAAC;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;QAC5E,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;QACjE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACK,UAAU,CAChB,aAAsB,EACtB,YAA0C,EAC1C,WAAiC;QAEjC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,0EAA0E;QAC1E,6CAA6C;QAC7C,MAAM,IAAI,GAAG,aAAa;YACxB,CAAC,CAAC,IAAI,CAAC,KAAK;iBACP,qBAAqB,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;iBACjD,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;iBAC1C,MAAM,CAAC,CAAC,GAAG,EAAsB,EAAE,CAAC,GAAG,KAAK,SAAS,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC/F,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACjC,MAAM,SAAS,GAAkB,EAAE,CAAC;QACpC,KAAK,MAAM,MAAM,IAAI,IAAI,EAAE,CAAC;YAC1B,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAAE,SAAS;YACzC,IAAI,UAA8B,CAAC;YACnC,IAAI,CAAC;gBACH,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAC3C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;gBAClC,SAAS;YACX,CAAC;YACD,MAAM,IAAI,GAAG,IAAI,GAAG,CAClB,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAClF,CAAC;YACF,sEAAsE;YACtE,qCAAqC;YACrC,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC;iBACxB,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;iBAChD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC;YAC9E,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACnE,IAAI,MAAM,KAAK,SAAS;oBAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;gBAClF,SAAS;YACX,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CACxC,MAAM,CAAC,EAAE,EACT,IAAI,CAAC,aAAa,EAClB,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,EAC1B,IAAI,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,WAAW,EAAE,CAClD,CAAC;YACF,IAAI,KAAK,KAAK,SAAS;gBAAE,SAAS;YAClC,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,IAAI,MAAM,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC;gBACH,sEAAsE;gBACtE,wCAAwC;gBACxC,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,YAAY,KAAK,MAAM,CAAC,YAAY,EAAE,CAAC;oBAC/E,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;oBACpD,QAAQ,GAAG,IAAI,CAAC;gBAClB,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,GAAG,IAAI,CAAC;gBACd,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACpC,CAAC;oBAAS,CAAC;gBACT,sEAAsE;gBACtE,sEAAsE;gBACtE,uEAAuE;gBACvE,sEAAsE;gBACtE,mEAAmE;gBACnE,wDAAwD;gBACxD,IAAI,QAAQ,IAAI,CAAC,CAAC,MAAM,IAAI,KAAK,KAAK,SAAS,CAAC,EAAE,CAAC;oBACjD,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;gBACjE,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC1F,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACK,aAAa,CACnB,KAAa,EACb,IAAkB,EAClB,UAA8B,EAC9B,QAA2B;QAE3B,MAAM,IAAI,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC9B,sEAAsE;YACtE,gEAAgE;YAChE,wEAAwE;YACxE,qEAAqE;YACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACrD,MAAM,SAAS,GAAG,CAAC,MAAgB,EAAE,EAAE,CACrC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC;YAC3E,MAAM,KAAK,GACT,QAAQ,CAAC,KAAK,KAAK,eAAe,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS;gBACrE,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC;YAC9D,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC;gBAChC,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBAC3C,CAAC,CAAC,KAAK;oBACP,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,mBAAmB,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;wBACxE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;wBAC5B,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;4BAC5C,CAAC,CAAC,SAAS;4BACX,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACnC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YAClF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,oEAAoE;gBACpE,iBAAiB;gBACjB,MAAM,OAAO,GACX,QAAQ,CAAC,KAAK,KAAK,eAAe;oBAClC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE;wBAChC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;wBACxC,OAAO,IAAI,KAAK,SAAS,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;oBACjD,CAAC,CAAC,CAAC;gBACL,IAAI,QAAQ,CAAC,KAAK,KAAK,eAAe,IAAI,CAAC,OAAO;oBAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;gBAC3F,gEAAgE;gBAChE,sEAAsE;gBACtE,sEAAsE;gBACtE,uEAAuE;gBACvE,mEAAmE;gBACnE,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAC1C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,EAAE,KAAK,EAAE,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;gBAClG,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;YACxF,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YACtD,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;YAC/D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ;gBAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3F,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC7B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAClF,CAAC;QACF,IAAI,KAAK,GAAG,kBAAkB,CAC5B,IAAI,EACJ,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAsB,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,EAC9D,QAAQ,CACT,CAAC;QACF,oEAAoE;QACpE,qEAAqE;QACrE,oEAAoE;QACpE,qDAAqD;QACrD,IACE,IAAI,CAAC,IAAI,KAAK,WAAW;YACzB,KAAK,CAAC,MAAM,KAAK,mBAAmB;YACpC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,EAAE,CAAC,EAC1F,CAAC;YACD,KAAK,GAAG,QAAQ,CAAC;QACnB,CAAC;QACD,kEAAkE;QAClE,kEAAkE;QAClE,iEAAiE;QACjE,iEAAiE;QACjE,oEAAoE;QACpE,gEAAgE;QAChE,oEAAoE;QACpE,oEAAoE;QACpE,qEAAqE;QACrE,sEAAsE;QACtE,MAAM,aAAa,GACjB,QAAQ,CAAC,MAAM,KAAK,mBAAmB;YACvC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC;YAChE,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc;gBAC5B,IAAI,CAAC,KAAK,KAAK,SAAS;gBACxB,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gBACxB,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;gBAC9C,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/D,IAAI,KAAK,CAAC,MAAM,KAAK,mBAAmB,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YAC7F,KAAK,GAAG;gBACN,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,kEAAkE;gBAClE,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc;oBAC9B,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;oBACrE,CAAC,CAAC,EAAE,CAAC;aACR,CAAC;QACJ,CAAC;QACD,sEAAsE;QACtE,kEAAkE;QAClE,wDAAwD;QACxD,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/F,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9F,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAC1B,CAAC;IAED,0EAA0E;IAClE,cAAc,CAAC,IAAc;QACnC,OAAO,IAAI;aACR,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;aAChE,MAAM,CACL,CAAC,IAAI,EAAsB,EAAE,CAC3B,IAAI,KAAK,SAAS,IAAI,CAAC,mBAAmB,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAC5F,CAAC;IACN,CAAC;IAED;;;;;;;OAOG;IACK,aAAa,CACnB,IAAkD,EAClD,IAAc,EACd,MAAe;QAEf,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9F,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;QACtC,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;YACpD,IAAI,MAAM,KAAK,SAAS;gBAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3D,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;YAChD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;gBAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,WAAW,CAAC,IAAI,KAAK,CAAC;YAC3B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,oEAAoE;gBACpE,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;IAChG,CAAC;IAED;;;OAGG;IACK,gBAAgB,CAAC,IAAc;QACrC,wDAAwD;QACxD,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;aACtB,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;aAChD,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACd,+DAA+D;YAC/D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC1C,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,mBAAmB;gBAAE,OAAO,IAAI,CAAC;YAClF,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;OAOG;IACK,aAAa,CAAC,UAAkB,EAAE,UAA8B,EAAE,MAAM,GAAG,CAAC;QAClF,IAAI,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;QAC7E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAK,KAAe,CAAC,OAAO,KAAK,qBAAqB,IAAI,MAAM,GAAG,IAAI,CAAC,eAAe;gBAAE,OAAO;YAChG,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;YACpD,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,GAAG,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;QAC9F,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,cAAc,CAAC,GAAgB,EAAE,UAA8B;QACrE,IAAI,GAAG,CAAC,MAAM,KAAK,WAAW;YAAE,OAAO,GAAG,CAAC;QAC3C,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YAC1C,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;gBACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAE,CAAC;gBACvC,IAAI,QAAQ,CAAC,KAAK,KAAK,sBAAsB;oBAAE,SAAS;gBACxD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;gBAChF,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAAE,SAAS;gBACzG,MAAM,OAAO,GAAsB,CAAC,SAAS,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;oBACjG,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE;oBACnC,CAAC,CAAC,KAAK,CAAC;gBACV,IAAI,aAAa,CAAC,OAAO,CAAC,KAAK,aAAa,CAAC,QAAQ,CAAC;oBAAE,SAAS;gBACjE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;gBAC/B,IAAI,CAAC,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;YAC5F,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,cAAc,CAAC,GAAgB,EAAE,UAA8B;QACrE,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YAC9C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjC,IAAI,KAAK,EAAE,MAAM,KAAK,mBAAmB;gBAAE,OAAO,KAAK,CAAC;YACxD,yEAAyE;YACzE,yEAAyE;YACzE,8DAA8D;YAC9D,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC5C,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3E,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC7D,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAK,CAAC,MAAM,CAAC,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC3F,OAAO,kBAAkB,CAAC,IAAI,EAAE,QAAwB,EAAE,KAAK,CAAC,CAAC,MAAM,KAAK,mBAAmB,CAAC;QAClG,CAAC,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,GAAG,CAAC;QACpC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACtC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAE,CAAC,CAAC;YAC3F,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAAE,OAAO,EAAE,CAAC;YAC1G,OAAO,aAAa,CAAC,KAAK,CAAC,KAAK,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACxG,CAAC,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,GAAG,CAAC;QACrC,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YAC1C,KAAK,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,OAAO,EAAE,CAAC;gBACxC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAE,CAAC,MAAM,CAAC;gBACzC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;gBAC5B,IAAI,CAAC,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACzD,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC;IAED,2FAA2F;IACnF,YAAY,CAAC,KAAkB,EAAE,UAA8B,EAAE,IAAe;QACtF,IAAI,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAClD,IAAI,MAAM,KAAK,mBAAmB,EAAE,CAAC;YACnC,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;gBACpC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAE,CAAC;gBACpC,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAC/D,SAAS;gBACX,CAAC;gBACD,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;gBACzB,IAAI,CAAC,uBAAuB,EAAE;oBAC5B,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,IAAI,EAAE,SAAS;oBACf,KAAK;iBACN,CAAC,CAAC;YACL,CAAC;YACD,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,MAAM,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;YAC1B,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;YACtB,+DAA+D;YAC/D,oEAAoE;YACpE,MAAM,MAAM,GAAG,MAAM,KAAK,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAChG,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACN,sEAAsE;gBACtE,4DAA4D;gBAC5D,OAAO,KAAK,CAAC,KAAK,CAAC;YACrB,CAAC;YACD,IAAI,CAAC,yBAAyB,EAAE;gBAC9B,IAAI;gBACJ,EAAE,EAAE,MAAM;gBACV,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;aAC7D,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,YAAY,CAClB,MAAmB,EACnB,UAA8B,EAC9B,KAAkB,EAClB,IAAe;QAEf,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,QAAQ,CAAC,YAAY,KAAK,MAAM,CAAC,YAAY,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;YACpC,mEAAmE;YACnE,oEAAoE;YACpE,qEAAqE;YACrE,mEAAmE;YACnE,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc;gBAAE,SAAS;YACzE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAE,CAAC,CAAC;YAC5F,IAAI,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjE,SAAS;YACX,CAAC;YACD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAE,CAAC,MAAM,CAAC;YAC1C,sEAAsE;YACtE,mEAAmE;YACnE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;YAC9C,IAAI,CAAC,uBAAuB,EAAE;gBAC5B,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,IAAI;gBACJ,KAAK;aACN,CAAC,CAAC;YACH,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,UAAU,CAAC,MAAmB,EAAE,UAA8B;QACpE,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YAC7C,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACnD,IAAI,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YAClD,IAAI,MAAM,KAAK,mBAAmB,EAAE,CAAC;gBACnC,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;oBACpC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAE,CAAC;oBACpC,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;wBAC/D,SAAS;oBACX,CAAC;oBACD,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;oBACzB,IAAI,CAAC,uBAAuB,EAAE;wBAC5B,MAAM,EAAE,IAAI,CAAC,EAAE;wBACf,IAAI,EAAE,SAAS;wBACf,KAAK;qBACN,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YAChD,CAAC;YACD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;YAC1B,uEAAuE;YACvE,wCAAwC;YACxC,MAAM,KAAK,GACT,MAAM,KAAK,mBAAmB;gBAC5B,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,yCAAyC,CAAC;gBACpF,CAAC,CAAC,SAAS,CAAC;YAChB,sEAAsE;YACtE,kEAAkE;YAClE,uEAAuE;YACvE,wEAAwE;YACxE,qEAAqE;YACrE,IACE,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC1D,CAAC,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,CAAC,CAAC;gBACjE,KAAK,KAAK,KAAK,CAAC,KAAK,EACrB,CAAC;gBACD,OAAO;YACT,CAAC;YACD,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;YACtB,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAC,KAAK,CAAC;;gBACvC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;YACzB,IAAI,CACF,MAAM,KAAK,mBAAmB;gBAC5B,CAAC,CAAC,4BAA4B;gBAC9B,CAAC,CAAC,oBAAoB,EACxB;gBACE,IAAI;gBACJ,EAAE,EAAE,MAAM;gBACV,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;aAC7D,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,6EAA6E;IAC7E,sEAAsE;IACtE,2EAA2E;IAC3E,0EAA0E;IAC1E,gEAAgE;IAChE,KAAK,CAAC,UAAkB;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,CAAC,UAAkB;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,oBAAoB,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,CAAC,UAAkB;QACvB,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;YAC7C,IAAI,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtD,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACzC,CAAC;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAChD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;gBAC1B,sEAAsE;gBACtE,wEAAwE;gBACxE,yCAAyC;gBACzC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;gBACpD,IAAI,KAAK,CAAC,MAAM,KAAK,mBAAmB;oBAAE,OAAO,KAAK,CAAC,KAAK,CAAC;;oBACxD,KAAK,CAAC,KAAK,KAAK,yCAAyC,CAAC;gBAC/D,IAAI,CAAC,kBAAkB,EAAE;oBACvB,IAAI;oBACJ,EAAE,EAAE,KAAK,CAAC,MAAM;oBAChB,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;iBAC7D,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,IAAI,CACV,UAAkB,EAClB,EAA0B,EAC1B,SAAiB;QAEjB,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;YAC7C,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE;gBAAE,OAAO,OAAO,CAAC;YAC1C,IACE,CAAC,mBAAmB,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EACrE,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;gBAC1B,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;gBAClB,sEAAsE;gBACtE,mDAAmD;gBACnD,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9F,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,UAAkB;QACvB,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;YAC7C,IAAI,OAAO,CAAC,MAAM,KAAK,mBAAmB;gBAAE,OAAO,OAAO,CAAC;YAC3D,IAAI,UAA0C,CAAC;YAC/C,IAAI,CAAC;gBACH,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAC5C,CAAC;YAAC,MAAM,CAAC;gBACP,UAAU,GAAG,SAAS,CAAC;YACzB,CAAC;YACD,MAAM,OAAO,GAAa,EAAE,CAAC;YAC7B,wEAAwE;YACxE,sEAAsE;YACtE,eAAe;YACf,MAAM,GAAG,GACP,OAAO,CAAC,MAAM,KAAK,WAAW;gBAC5B,CAAC,CAAC,UAAU,KAAK,SAAS;oBACxB,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC;gBAC5C,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;oBACvC,kEAAkE;oBAClE,2DAA2D;oBAC3D,8DAA8D;oBAC9D,kEAAkE;oBAClE,4DAA4D;oBAC5D,iEAAiE;oBACjE,8DAA8D;oBAC9D,gEAAgE;oBAChE,2DAA2D;oBAC3D,+DAA+D;oBAC/D,+DAA+D;oBAC/D,mBAAmB;oBACnB,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;wBAC7B,IAAI,CAAC;4BACH,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;wBACvE,CAAC;wBAAC,MAAM,CAAC;4BACP,yBAAyB;wBAC3B,CAAC;oBACH,CAAC;oBACD,iEAAiE;oBACjE,4DAA4D;oBAC5D,gEAAgE;oBAChE,gCAAgC;oBAChC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC9C,IAAI,IAAI,CAAC,KAAK,KAAK,sBAAsB;4BAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC3E,CAAC;oBACD,KAAK,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;wBACzD,IACE,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAChE,CAAC;4BACD,SAAS;wBACX,CAAC;wBACD,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;wBAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;wBACzB,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC;wBAC1B,IAAI,CAAC,uBAAuB,EAAE;4BAC5B,MAAM;4BACN,IAAI;4BACJ,KAAK,EAAE,IAAI;yBACZ,CAAC,CAAC;oBACL,CAAC;oBACD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;oBAC1B,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC;oBAC3B,OAAO,KAAK,CAAC,KAAK,CAAC;oBACnB,IAAI,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;gBACxD,CAAC,CAAC,CAAC;YACT,sEAAsE;YACtE,sEAAsE;YACtE,gCAAgC;YAChC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;YACzE,KAAK,MAAM,MAAM,IAAI,OAAO;gBAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACxD,qEAAqE;YACrE,yEAAyE;YACzE,kEAAkE;YAClE,qEAAqE;YACrE,SAAS;YACT,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAChD,MAAM,MAAM,GAAG,UAAU,CAAC;gBAC1B,KAAK,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;qBAC/D,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;qBAClD,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC5B,CAAC;YACD,yEAAyE;YACzE,sEAAsE;YACtE,kEAAkE;YAClE,oEAAoE;YACpE,gEAAgE;YAChE,sEAAsE;YACtE,uEAAuE;YACvE,8BAA8B;YAC9B,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,UAAU,CAAC;gBAC1B,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;YACpG,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACK,UAAU,CAAC,UAAkB,EAAE,MAA6C;QAClF,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACxB,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CACxC,UAAU,EACV,IAAI,CAAC,YAAY,EACjB,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,EAC1B,IAAI,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,WAAW,EAAE,CAClD,CAAC;QACF,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAChE,IAAI,CAAC;YACH,6DAA6D;YAC7D,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QACzC,CAAC;gBAAS,CAAC;YACT,IAAI,KAAK,KAAK,SAAS;gBAAE,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;;gBACnF,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,UAAU,CAChB,OAAoB,EACpB,MAAqD,EACrD,UAAU,GAAG,KAAK;QAElB,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,MAAM,GAAoB,EAAE,CAAC;QACnC,MAAM,IAAI,GAAc,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;YACrC,MAAM,CAAC,IAAI,CACT,SAAS,CACP,OAAO,EACP,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EACxC,IAAI,EACJ,IAAI,CACL,CACF,CAAC;QACJ,CAAC,CAAC;QACF,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACpB,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,2BAA2B,EAAE;gBAChC,QAAQ,EAAE,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC;aACnD,CAAC,CAAC;QACL,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,OAAO,CAAC;QACxC,KAAK,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QAC1D,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,UAAU,CAAC;QAC5C,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,OAAO,GAAG,OAAO,CAAC;QACtB,KAAK,MAAM,KAAK,IAAI,MAAM;YAAE,OAAO,GAAG,kBAAkB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACzE,IAAI,aAAa,CAAC,OAAO,CAAC,KAAK,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAC3B,OAAO,CAAC,EAAE,EACV,OAAO,CAAC,YAAY,EACpB,OAAO,EACP,MAAM,EACN,UAAU;YACR,CAAC,CAAC,sBAAsB,CAAC,KAAK,CAAC;gBAC3B,aAAa,EAAE,OAAO;gBACtB,UAAU,EAAE,OAAO,CAAC,EAAE;gBACtB,QAAQ,EAAE,OAAO,CAAC,YAAY;gBAC9B,GAAG,EAAE,OAAO;gBACZ,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B,CAAC;YACJ,CAAC,CAAC,SAAS,CACd,CAAC;QACF,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,cAAc,CAAC,GAAgB;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAC3C,GAAG,CAAC,YAAY,EAChB,GAAG,CAAC,iBAAiB,CACtB,CAAC;QACF,IAAI,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACzE,OAAO,wBAAwB,CAAC,KAAK,CACnC,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,OAAO,EACP,YAAY,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,iBAAiB,aAAa,CACnE,CACF,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,GAAgB;QAC7B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9D,OAAO,eAAe,CACpB,QAAQ,EACR,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,IAAI,CAAC,CAAC,CAC/D,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC;gBACH,OAAO,eAAe,CACpB,SAAS,EACT,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CACtC,CAAC;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACK,KAAK,CAAC,MAAM,CAClB,OAAiB,EACjB,KAAoB,EACpB,UAA8B,EAC9B,GAAgB,EAChB,SAA6B,EAC7B,MAAuB;QAEvB,MAAM,OAAO,GAAmD,EAAE,CAAC;QACnE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,yEAAyE;YACzE,sEAAsE;YACtE,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,YAAY,KAAK,GAAG,CAAC,YAAY;gBAAE,MAAM;YACjE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CACnC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAE,EACxB,UAAU,EACV,GAAG,CAAC,KAAK,CAAC,MAAM,CAAE,EAClB,GAAG,EACH,SAAS,EACT,MAAM,CACP,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YACjC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,aAAa;gBAAE,MAAM;QACnD,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,WAAW,CACvB,IAAkB,EAClB,UAA8B,EAC9B,KAAwB,EACxB,GAAgB,EAChB,SAA6B,EAC7B,MAAuB;QAEvB,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CACxC,CAAC,SAAS,EAAE,EAAE,CACZ,SAAS,CAAC,IAAI,KAAK,UAAU;oBAC7B,SAAS,CAAC,SAAS,KAAK,IAAI,CAAC,EAAE,CAClC,CAAC;gBACF,MAAM,cAAc,GAClB,YAAY,KAAK,SAAS;oBACxB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC7C,OAAO,MAAM,IAAI,CAAC,OAAO,CACvB,IAAI,CAAC,OAAO,EACZ,cAAc,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAClC,SAAS,EACT,IAAI,EACJ;oBACE,UAAU,EAAE,GAAG,CAAC,EAAE;oBAClB,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,SAAS,EAAE,CAAC;oBACZ,MAAM,EAAE,WAAW;iBACpB,CACF,CAAC;YACJ,CAAC;YACD,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAClC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,IAAI,CAAC,SAAS,CAC/C,CAAC;gBACF,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBACxD,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBACjE,CAAC;gBACD,OAAO,MAAM,IAAI,CAAC,OAAO,CACvB,MAAM,CAAC,OAAO,EACd,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAChB,SAAS,EACT,KAAK,EACL;oBACE,UAAU,EAAE,GAAG,CAAC,EAAE;oBAClB,MAAM,EAAE,MAAM,CAAC,EAAE;oBACjB,SAAS,EAAE,CAAC;oBACZ,MAAM,EAAE,WAAW;iBACpB,CACF,CAAC;YACJ,CAAC;YACD,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC9D,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;oBAC/B,MAAM,IAAI,KAAK,CAAC,yCAAyC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBACtE,CAAC;gBACD,uEAAuE;gBACvE,oEAAoE;gBACpE,kBAAkB;gBAClB,MAAM,QAAQ,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;gBACvE,MAAM,IAAI,GAAG,gBAAgB,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;gBACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACrD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACnD,qEAAqE;gBACrE,sEAAsE;gBACtE,sEAAsE;gBACtE,wDAAwD;gBACxD,MAAM,SAAS,GAAG,CAAC,MAAgB,EAAE,EAAE,CACrC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC;gBAC3E,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAC1C,MAAM,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;gBAC5C,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;gBAC/F,MAAM,MAAM,GAAG,aAAa;oBAC1B,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,cAAc;wBACd,CAAC,CAAC,KAAK;wBACP,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;4BACnB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC;4BACjC,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE;gCAClF,KAAK;gCACL,KAAK,EAAE,EAAE;6BACV,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gCAC1B,6DAA6D;gCAC7D,2DAA2D;gCAC3D,6DAA6D;gCAC7D,0DAA0D;gCAC1D,yCAAyC;gCACzC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gCAC1C,IAAI,CAAC,CAAC,KAAK,YAAY,WAAW,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;oCAAE,MAAM,KAAK,CAAC;gCACzE,MAAM,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;4BACtG,CAAC,CAAC,CAAC;gBACX,uEAAuE;gBACvE,kEAAkE;gBAClE,iCAAiC;gBACjC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC1C,IACE,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC;oBACzC,QAAQ,CAAC,MAAM,KAAK,CAAC;oBACrB,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAC1C,CAAC;oBACD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;oBACtD,IAAI,MAAM,KAAK,SAAS;wBAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;gBAChE,CAAC;gBACD,OAAO,MAAM,IAAI,CAAC,aAAa,CAC7B,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EACvC,KAAK,EACL,SAAS,EACT,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CACnD,CAAC;YACJ,CAAC;YACD,KAAK,UAAU;gBACb,OAAO,MAAM,IAAI,CAAC,WAAW,CAC3B,IAAI,CAAC,QAAQ,EACb,KAAK,EACL,SAAS,EACT,GAAG,CAAC,EAAE,EACN,IAAI,CAAC,EAAE,CACR,CAAC;YACJ,KAAK,cAAc;gBACjB,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5D,KAAK,cAAc,CAAC,CAAC,CAAC;gBACpB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAC/B,IAAI,CAAC,OAAO,EACZ,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAChB,SAAS,EACT,IAAI,EACJ;oBACE,UAAU,EAAE,GAAG,CAAC,EAAE;oBAClB,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,SAAS,EAAE,CAAC;oBACZ,MAAM,EAAE,cAAc;iBACvB,CACF,CAAC;gBACF,OAAO;oBACL,GAAG,MAAM;oBACT,KAAK,EACH,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,mBAAmB;wBACzC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE;wBAC5C,CAAC,CAAC,MAAM,CAAC,KAAK;iBACnB,CAAC;YACJ,CAAC;YACD,KAAK,YAAY;gBACf,OAAO;oBACL,KAAK,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,EAAE,EAAE;oBACnD,KAAK,EAAE,EAAE;oBACT,UAAU,EAAE,IAAI;iBACjB,CAAC;YACJ,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;gBAChE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,OAAO;wBACL,KAAK,EAAE;4BACL,MAAM,EAAE,gBAAgB;4BACxB,OAAO,EAAE,EAAE;4BACX,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;yBAC1C;wBACD,KAAK,EAAE,EAAE;qBACV,CAAC;gBACJ,CAAC;gBACD,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;oBAC3C,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBACxD,CAAC;gBACD,IACE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;oBACvB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EACtC,CAAC;oBACD,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC5D,CAAC;gBACD,OAAO;oBACL,KAAK,EAAE;wBACL,MAAM,EAAE,mBAAmB;wBAC3B,OAAO,EAAE,EAAE;wBACX,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;wBACzC,KAAK,EAAE,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC;qBACrC;oBACD,KAAK,EAAE,EAAE;iBACV,CAAC;YACJ,CAAC;YACD,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,oEAAoE;gBACpE,8DAA8D;gBAC9D,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC;gBACpF,sEAAsE;gBACtE,qEAAqE;gBACrE,wEAAwE;gBACxE,uEAAuE;gBACvE,mEAAmE;gBACnE,iDAAiD;gBACjD,MAAM,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;gBAC9F,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,OAAO;wBACL,KAAK,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE;wBACxD,KAAK,EAAE,EAAE;qBACV,CAAC;gBACJ,CAAC;gBACD,sEAAsE;gBACtE,qEAAqE;gBACrE,oDAAoD;gBACpD,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrC,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE;wBAC3F,KAAK,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE;wBACtF,KAAK,EAAE,EAAE;qBACV,CAAC,CAAC;oBACH,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,OAAO;4BACL,KAAK,EAAE;gCACL,MAAM,EAAE,QAAQ;gCAChB,OAAO,EAAE,EAAE;gCACX,MAAM;gCACN,KAAK,EAAE,kCAAkC,IAAI,CAAC,EAAE,EAAE;6BACnD;4BACD,KAAK,EAAE,EAAE;yBACV,CAAC;oBACJ,CAAC;gBACH,CAAC;gBACD,OAAO;oBACL,KAAK,EAAE;wBACL,MAAM,EAAE,mBAAmB;wBAC3B,OAAO,EAAE,EAAE;wBACX,MAAM;wBACN,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC;qBAC7B;oBACD,KAAK,EAAE,EAAE;iBACV,CAAC;YACJ,CAAC;YACD;gBACE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,OAAoB,EACpB,cAAkC,EAClC,SAA6B,EAC7B,cAAc,GAAG,IAAI,EACrB,QAAsB;QAEtB,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,kBAAkB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,IAAgB,CAAC;QACrB,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAC3C,CAAC;aAAM,CAAC;YACN,uEAAuE;YACvE,uEAAuE;YACvE,mEAAmE;YACnE,uEAAuE;YACvE,gEAAgE;YAChE,kDAAkD;YAClD,IAAI;gBACF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;oBACjB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,qEAAqE;QACrE,2EAA2E;QAC3E,wEAAwE;QACxE,qEAAqE;QACrE,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACrE,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC;QACpG,CAAC;QACD,kEAAkE;QAClE,2EAA2E;QAC3E,qEAAqE;QACrE,uEAAuE;QACvE,mEAAmE;QACnE,yEAAyE;QACzE,oEAAoE;QACpE,MAAM,OAAO,GACX,IAAI,CAAC,MAAM,KAAK,mBAAmB,IAAI,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;QACzF,IACE,IAAI,CAAC,MAAM,KAAK,mBAAmB;YACnC,IAAI,CAAC,QAAQ,KAAK,SAAS;YAC3B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE;YACjD,CAAC,OAAO,EACR,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3C,IAAI;gBACF,OAAO,CAAC,MAAM,KAAK,WAAW;oBAC5B,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE;wBACvB,cAAc,EAAE,GAAG;wBACnB,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC;wBAChC,MAAM,EAAE,IAAI;qBACb,CAAC,CAAC;QACX,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;YACxC,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAC7B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,QAAQ,EAAE,UAAU,CACxD,CAAC;YACF,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,OAAO,EAAE,CAAC;gBACvC,OAAO;oBACL,KAAK,EAAE;wBACL,MAAM,EAAE,mBAAmB;wBAC3B,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;wBAClB,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS;4BAC7B,CAAC,CAAC,EAAE;4BACJ,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;qBACjC;oBACD,KAAK,EAAE,CAAC,IAAI,CAAC;iBACd,CAAC;YACJ,CAAC;YACD,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5D,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,cAAc,EAAE,CAAC;YACvD,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAClD,CAAC;QACD,OAAO;YACL,KAAK,EAAE,gBAAgB,CAAC,IAAI,EAAE,CAAC,cAAc,CAAC;YAC9C,KAAK,EAAE,CAAC,IAAI,CAAC;SACd,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,2EAA2E;IAC3E,sEAAsE;IACtE,0EAA0E;IAC1E,yEAAyE;IACzE,yEAAyE;IACzE,2DAA2D;IACnD,kBAAkB,CAAC,UAAkB;QAC3C,IACE,CAAC,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAC5B,UAAU,EACV,IAAI,CAAC,KAAK,EACV,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,WAAW,EAAE,CAC1D,EACD,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,OAAO,CAAC,GAAW;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAC/D,OAAO,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACrH,CAAC;IAEO,KAAK,CAAC,aAAa,CACzB,QAAuB,EACvB,KAAwB,EACxB,SAA6B,EAC7B,QAAsB;QAEtB,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAiB,EAAE,CAAC;QAC/B,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;YAClD,MAAM,YAAY,GAAG,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,IAAI,KAAK,EAAE,EAAE,CAAC;YAC5E,qEAAqE;YACrE,wEAAwE;YACxE,uEAAuE;YACvE,yBAAyB;YACzB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACnC,MAAM,QAAQ,GACZ,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,KAAK,kBAAkB,CAAC,YAAY,EAAE,OAAO,CAAC;gBAC1G,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,SAAS,CAAC;YAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;YACpF,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC;YACvC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;gBAChD,OAAO;oBACL,KAAK,EAAE,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE;oBACnC,KAAK;iBACN,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO;YACL,KAAK,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE;YAC/C,KAAK;SACN,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,WAAW,CACvB,QAAyB,EACzB,KAAwB,EACxB,SAA6B,EAC7B,UAAkB,EAClB,MAAc;QAEd,sEAAsE;QACtE,sEAAsE;QACtE,wEAAwE;QACxE,8BAA8B;QAC9B,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,uEAAuE;QACvE,yEAAyE;QACzE,4EAA4E;QAC5E,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YACpE,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC;YACxB,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE;gBAClE,UAAU;gBACV,MAAM;gBACN,SAAS,EAAE,CAAC;gBACZ,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC;aACtB,CAAC,CAAC;QACL,CAAC,CAAC,CACH,CAAC;QACF,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC;QACzE,yEAAyE;QACzE,uEAAuE;QACvE,uEAAuE;QACvE,yEAAyE;QACzE,oDAAoD;QACpD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE;YACtD,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW;gBAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACjE,MAAM,KAAK,GAAwB,EAAE,CAAC;YACtC,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,WAAW,CAAE,CAAC,OAAO,EAAE,EAAE,CAAC;gBAChE,MAAM,GAAG,GAAG,kBAAkB,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,WAAW,IAAI,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;gBACjH,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;gBAChE,MAAM,IAAI,GAAsB,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBACxH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjB,IAAI,IAAI,CAAC,MAAM,KAAK,mBAAmB;oBAAE,MAAM;YACjD,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,GAAG;YACd,KAAK,EAAE,kBAAkB,CAAC,MAAM,CAAC;YACjC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SACjG,CAAC;QACF,IAAI,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1E,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,IAAqD,EACrD,KAAwB,EACxB,SAA6B,EAC7B,UAAkB;QAElB,MAAM,OAAO,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;QACnC,MAAM,KAAK,GAAiB,EAAE,CAAC;QAC/B,IAAI,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;QACvC,yEAAyE;QACzE,wEAAwE;QACxE,kEAAkE;QAClE,MAAM,MAAM,GAAG,CAAC,SAAiB,EAAE,EAAE;YACnC,IAAI,SAAS,IAAI,IAAI,CAAC,aAAa;gBAAE,OAAO,KAAK,CAAC;YAClD,MAAM,GAAG,GAAG,kBAAkB,CAC5B,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,EAC5D,IAAI,CAAC,IAAI,CAAC,CAAC,CAAE,CACd,CAAC;YACF,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC;QACzC,CAAC,CAAC;QACF,2EAA2E;QAC3E,wEAAwE;QACxE,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5D,IACE,UAAU,GAAG,CAAC;YACd,OAAO,CAAC,MAAM,KAAK,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM;YAChD,QAAQ,KAAK,SAAS;YACtB,IAAI,CAAC,KAAK,KAAK,SAAS;YACxB,CAAC,MAAM,CAAC,UAAU,CAAC;YACnB,CAAC,MAAM,QAAQ,CACb,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAClD,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAC5D,IAAI,CACL,CAAC,EACF,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC;QAChF,CAAC;QACD,OAAO,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YAC7C,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;gBACnD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAC/B,OAAO,EACP,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,EACvB,SAAS,EACT,IAAI,EACJ;oBACE,UAAU;oBACV,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,SAAS,EAAE,UAAU;oBACrB,MAAM,EAAE,QAAQ,KAAK,EAAE;iBACxB,CACF,CAAC;gBACF,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC5B,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC;gBACnD,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;oBAChD,OAAO;wBACL,KAAK,EAAE;4BACL,GAAG,MAAM,CAAC,KAAK;4BACf,OAAO;4BACP,UAAU;yBACX;wBACD,KAAK;qBACN,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,UAAU,IAAI,CAAC,CAAC;YAChB,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;YAC3D,uEAAuE;YACvE,uEAAuE;YACvE,2DAA2D;YAC3D,IACE,IAAI,CAAC,KAAK,KAAK,SAAS;gBACxB,UAAU,GAAG,IAAI,CAAC,aAAa;gBAC/B,CAAC,MAAM,CAAC,UAAU,CAAC;gBACnB,CAAC,MAAM,QAAQ,CACb,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EACpD,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAC5D,IAAI,CACL,CAAC,EACF,CAAC;gBACD,MAAM;YACR,CAAC;QACH,CAAC;QACD,OAAO;YACL,KAAK,EAAE;gBACL,MAAM,EAAE,mBAAmB;gBAC3B,OAAO;gBACP,UAAU;aACX;YACD,KAAK;SACN,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACK,YAAY,CAAC,UAA8B,EAAE,OAAoB;QACvE,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,mBAAmB;YAAE,OAAO,SAAS,CAAC;QAC5F,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACjD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrC,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,CAAC,KAAK,EAAE,MAAM,KAAK,QAAQ,IAAI,KAAK,EAAE,MAAM,KAAK,WAAW,CAAC;gBAAE,OAAO,EAAE,CAAC;YAC7G,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO;iBAC1B,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;iBAC3C,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,mBAAmB,CAAC,CAAC;YACxD,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,EAAE,CACnC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,mBAAmB,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;QAC3G,sEAAsE;QACtE,wEAAwE;QACxE,0EAA0E;QAC1E,yEAAyE;QACzE,+BAA+B;QAC/B,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CACvC,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,KAAK,cAAc;YAC5B,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,SAAS;YAC5C,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;gBACxB,UAAU,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC;gBAC3E,UAAU,CAAC,KAAK,CAAC,IAAI,CACnB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAClG,CAAC,CACP,CAAC;QACF,MAAM,IAAI,GACR,OAAO,CAAC,MAAM,KAAK,QAAQ;YAC3B,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,iBAAiB,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5F,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO,SAAS,CAAC;QAC/E,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YAC9C,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,QAAQ,EAAE,CAAC;gBAC1D,MAAM,KAAK,GAAsB;oBAC/B,MAAM,EAAE,mBAAmB;oBAC3B,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,GAAG,CAAC,OAAQ,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAQ,CAAC,KAAK,EAAE,CAAC;iBACnE,CAAC;gBACF,IAAI,CAAC,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBACjF,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;YAC/B,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;gBAC7B,MAAM,KAAK,GAAG,EAAE,MAAM,EAAE,SAAkB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;gBAC1D,IAAI,CAAC,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC3E,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;YAC/B,CAAC;YACD,uEAAuE;YACvE,qBAAqB;YACrB,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;gBAC1B,KAAK,CAAC,MAAM,GAAG,mBAAmB,CAAC;gBACnC,MAAM,OAAO,GAAG,mBAAmB,CAAC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC7D,IAAI,OAAO,KAAK,SAAS;oBAAE,OAAO,KAAK,CAAC,KAAK,CAAC;;oBACzC,KAAK,CAAC,KAAK,GAAG,oCAAoC,OAAO,CAAC,EAAE,EAAE,CAAC;gBACpE,IAAI,CAAC,yBAAyB,EAAE;oBAC9B,IAAI;oBACJ,EAAE,EAAE,KAAK,CAAC,MAAM;oBAChB,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;iBAC7D,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACK,UAAU,CAAC,UAA8B,EAAE,KAA2B;QAC5E,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACpC,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc;gBAAE,OAAO,KAAK,CAAC;YAC/C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7B,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAC;YACtC,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW;gBAAE,OAAO,IAAI,CAAC;YAC3E,IAAI,KAAK,CAAC,MAAM,KAAK,mBAAmB;gBAAE,OAAO,KAAK,CAAC;YACvD,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACnC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBACxC,OAAO,CACL,IAAI,KAAK,SAAS;oBAClB,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,kBAAkB,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;wBAChF,CAAC,IAAI,CAAC,MAAM,KAAK,WAAW,IAAI,IAAI,CAAC,KAAK,KAAK,6BAA6B,CAAC,CAAC,CACjF,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,YAAY,CAClB,GAAgB,EAChB,UAA8B;QAE9B,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CACtC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc,CACvC,CAAC;QACF,oEAAoE;QACpE,wEAAwE;QACxE,sEAAsE;QACtE,0EAA0E;QAC1E,6DAA6D;QAC7D,IAAI,mBAAmB,CAAC,UAAU,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,SAAS,EAAE,CAAC;YAC7D,OAAO,mBAAmB,CAAC;QAC7B,CAAC;QACD,yEAAyE;QACzE,2EAA2E;QAC3E,yEAAyE;QACzE,IAAI,iBAAiB,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC;YACjE,OAAO,mBAAmB,CAAC;QAC7B,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC;YACrE,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,wEAAwE;QACxE,2EAA2E;QAC3E,2EAA2E;QAC3E,oEAAoE;QACpE,WAAW;QACX,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,WAAW,CAAC,EAAE,CAAC;YACxE,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,IACE,QAAQ,CAAC,IAAI,CACX,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,mBAAmB,CAC7D,EACD,CAAC;YACD,OAAO,mBAAmB,CAAC;QAC7B,CAAC;QACD,uEAAuE;QACvE,iEAAiE;QACjE,IACE,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,gBAAgB,CAAC,EACxE,CAAC;YACD,OAAO,gBAAgB,CAAC;QAC1B,CAAC;QACD,IACE,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;YACtB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjC,OAAO,CACL,KAAK,KAAK,SAAS;gBACnB,CAAC,mBAAmB,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,QAAQ,CACtD,KAAK,CAAC,MAAM,CACb;gBACD,4DAA4D;gBAC5D,yDAAyD;gBACzD,KAAK,CAAC,OAAO,CAAC,KAAK,CACjB,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,kBAAkB,CACtE,CACF,CAAC;QACJ,CAAC,CAAC,EACF,CAAC;YACD,OAAO,mBAAmB,CAAC;QAC7B,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAED,SAAS,SAAS,CAChB,GAAgB,EAChB,QAAgB,EAChB,IAAY,EACZ,IAA6B;IAE7B,OAAO,mBAAmB,CAAC,KAAK,CAAC;QAC/B,aAAa,EAAE,OAAO;QACtB,EAAE,EAAE,UAAU,EAAE;QAChB,WAAW,EAAE,GAAG,CAAC,EAAE;QACnB,QAAQ;QACR,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,IAAI;QACJ,IAAI;QACJ,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACrC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,QAAQ,CACrB,MAAc,EACd,KAA+D,EAC/D,OAAoB,EACpB,YAA8B,SAAS;IAEvC,MAAM,MAAM,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrE,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,KAAqB,EAAE,MAAmC,EAAE,EAAE,CAC3F,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE;QAC/B,GAAG,OAAO;QACV,KAAK,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,GAAG,IAAI,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;KACrG,CAAC,CAAC;IACL,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC;IACzE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QACvD,MAAM,OAAO,CAAC,+BAA+B,MAAM,EAAE,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;IACjF,CAAC;IACD,yEAAyE;IACzE,wBAAwB;IACxB,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAClG,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,OAAO,CAAC,+BAA+B,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AACvF,CAAC;AAED;;;;;;GAMG;AACH,SAAS,KAAK,CAAC,IAAkB;IAC/B,MAAM,MAAM,GACV,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAK,qBAAqB,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,KAAyB,CAAC,GAAG,EAAE,CAAC;IACpH,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,MAAM,GAAG,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACzF,CAAC;AAED,gFAAgF;AAChF,2EAA2E;AAC3E,6EAA6E;AAC7E,2EAA2E;AAC3E,yEAAyE;AACzE,wDAAwD;AACxD,SAAS,aAAa,CAAC,KAAa,EAAE,GAAG,GAAG,MAAM;IAChD,OAAO,MAAM,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,WAAW,CAAC,IAAkB;IACrC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,WAAW,CAAC;QACjB,KAAK,cAAc;YACjB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxB,KAAK,WAAW;YACd,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/C,KAAK,UAAU;YACb,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC9B,KAAK,cAAc;YACjB,OAAO,IAAI,CAAC,IAAI,CAAC;QACnB,KAAK,UAAU,CAAC;QAChB,KAAK,YAAY,CAAC;QAClB,KAAK,aAAa;YAChB,OAAO,EAAE,CAAC;QACZ,2EAA2E;QAC3E,6DAA6D;QAC7D,KAAK,YAAY;YACf,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED,8DAA8D;AAC9D,SAAS,gBAAgB,CAAC,IAAkB;IAC1C,OAAO;QACL,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,gBAAgB,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;QACnG,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjF,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7D,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,gBAAgB,CACvB,IAAgB,EAChB,iBAA0B;IAE1B,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,kBAAkB;YACrB,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;QAC7D,KAAK,SAAS;YACZ,OAAO;gBACL,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,OAAO;gBACzD,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;aACnB,CAAC;QACJ,KAAK,mBAAmB;YACtB,OAAO;gBACL,MAAM,EAAE,mBAAmB;gBAC3B,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClB,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;aACpE,CAAC;QACJ,KAAK,mBAAmB;YACtB,OAAO;gBACL,MAAM,EAAE,mBAAmB;gBAC3B,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClB,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;aAC3D,CAAC;QACJ,KAAK,WAAW;YACd,uEAAuE;YACvE,wEAAwE;YACxE,wEAAwE;YACxE,4DAA4D;YAC5D,OAAO,IAAI,CAAC,KAAK,KAAK,6BAA6B;gBACjD,CAAC,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;gBACxE,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;QAClD,KAAK,SAAS,CAAC;QACf,KAAK,WAAW;YACd,0EAA0E;YAC1E,sEAAsE;YACtE,sEAAsE;YACtE,4BAA4B;YAC5B,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;QAC5F;YACE,OAAO;gBACL,MAAM,EAAE,QAAQ;gBAChB,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClB,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;aAC3D,CAAC;IACN,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,MAA2B;IAE3B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACzD,2EAA2E;IAC3E,4EAA4E;IAC5E,uEAAuE;IACvE,iCAAiC;IACjC,KAAK,MAAM,MAAM,IAAI;QACnB,mBAAmB;QACnB,QAAQ;QACR,WAAW;QACX,mBAAmB;KACX,EAAE,CAAC;QACX,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;QACtE,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC;IACxD,CAAC;IACD,0EAA0E;IAC1E,2EAA2E;IAC3E,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,mBAAmB,CAAC;QAClE,CAAC,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE;QAC1C,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AACrC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,UAAU,CACjB,UAA8B,EAC9B,OAA0D,EAC1D,MAAc,EACd,GAAgC;IAEhC,OAAO,CACL,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,mBAAmB;QAC/C,UAAU,CAAC,KAAK,CAAC,IAAI,CACnB,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,KAAK,UAAU;YACxB,IAAI,CAAC,SAAS,KAAK,MAAM;YACzB,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,mBAAmB;YAChD,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAC9C,CACF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CACxB,UAA8B,EAC9B,QAAgD;IAEhD,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,CAC1B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,mBAAmB,CACpF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,UAA8B,EAC9B,KAA2B;IAE3B,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,CAC1B,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,KAAK,cAAc;QAC5B,CAAC,QAAQ,EAAE,mBAAmB,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,IAAI,EAAE,CAAC,CACtF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,UAAU,CAAC,UAA8B,EAAE,KAA2B;IAC7E,MAAM,OAAO,GAAG,mBAAmB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACvD,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,oCAAoC,OAAO,CAAC,EAAE,EAAE,CAAC;IACnF,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,KAAK,eAAe,CAAC,CAAC;IAC5F,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,eAAe,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;AAClF,CAAC;AAED;;;;;;GAMG;AACH,SAAS,WAAW,CAAC,IAAgB;IACnC,OAAO,CAAC,QAAQ,EAAE,kBAAkB,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC7F,CAAC;AAED;;;;;GAKG;AACH,SAAS,kBAAkB,CACzB,QAAsB,EACtB,OAAoB;IAEpB,OAAO,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,gBAAgB,CACvB,UAAkB,EAClB,IAAkB,EAClB,UAA8B;IAE9B,MAAM,GAAG,GAAG,CACV,OAAoB,EACpB,SAAiB,EACjB,MAAc,EACd,MAAM,GAAG,IAAI,CAAC,EAAE,EAChB,EAAE,CACF,kBAAkB,CAChB,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,EACzC,OAAO,CACR,CAAC;IACJ,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,WAAW;YACd,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;QAC7C,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAClC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,IAAI,CAAC,SAAS,CAC/C,CAAC;YACF,OAAO,MAAM,EAAE,IAAI,KAAK,WAAW;gBACjC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;gBAClD,CAAC,CAAC,EAAE,CAAC;QACT,CAAC;QACD,KAAK,WAAW;YACd,OAAO;gBACL,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CACtC,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE,QAAQ,KAAK,EAAE,CAAC,CACjC;gBACD,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CACvC,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE,SAAS,KAAK,EAAE,CAAC,CAClC;aACF,CAAC;QACJ,KAAK,UAAU;YACb,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CACnD,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,CACnC,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE,GAAG,WAAW,IAAI,YAAY,EAAE,CAAC,CAClD,CACF,CAAC;QACJ,KAAK,cAAc;YACjB,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,CACjE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAC/B,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,KAAK,EAAE,CAAC,CACzC,CACF,CAAC,IAAI,EAAE,CAAC;QACX,KAAK,cAAc;YACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;QAChD,qEAAqE;QACrE,qEAAqE;QACrE,wDAAwD;QACxD,KAAK,YAAY,CAAC;QAClB,KAAK,aAAa,CAAC;QACnB,KAAK,YAAY;YACf,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB,CAAC,IAAkB,EAAE,KAAoC;IAChF,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC9B,0EAA0E;QAC1E,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtD,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,CAAC,KAAoC,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjG,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QACjC,yEAAyE;QACzE,sCAAsC;QACtC,OAAO,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IACD,wEAAwE;IACxE,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CACpB,KAAmB,EACnB,cAAsB;IAEtB,OAAO,KAAK;SACT,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,KAAK,cAAc,CAAC;SACxD,IAAI,CACH,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACd,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,kBAAkB,CAAC;QACzC,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,kBAAkB,CAAC;QAC5C,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;QAC1C,iEAAiE;QACjE,8DAA8D;QAC9D,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAChD,CAAC,CAAC,CAAC,CAAC;AACT,CAAC;AAED,SAAS,kBAAkB,CACzB,IAAkB,EAClB,KAAmB,EACnB,QAA2B;IAE3B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC;IACxC,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,CAAC,MAA4B,EAAE,EAAE,CAClD,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;IAC/C,6EAA6E;IAC7E,4EAA4E;IAC5E,2EAA2E;IAC3E,wDAAwD;IACxD,MAAM,QAAQ,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC;IACjD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO;YACL,MAAM,EAAE,mBAAmB;YAC3B,OAAO;YACP,GAAG,CAAC,QAAQ,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;SACnE,CAAC;IACJ,CAAC;IACD,4EAA4E;IAC5E,4EAA4E;IAC5E,oEAAoE;IACpE,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC,EAAE,CAAC;QACnF,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;IACjF,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CACjC;QACE,QAAQ;QACR,SAAS;QACT,kBAAkB;QAClB,gBAAgB;KACjB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CACxB,CAAC;IACF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,OAAO;YACP,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;SAC/D,CAAC;IACJ,CAAC;IACD,2EAA2E;IAC3E,oEAAoE;IACpE,IAAI,UAAU,CAAC,WAAW,CAAC,KAAK,SAAS;QAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;IACnF,MAAM,QAAQ,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC;IACjD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO;YACL,MAAM,EAAE,mBAAmB;YAC3B,OAAO;YACP,GAAG,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS;gBACjC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC;SACrC,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,EAAE,CAAC;QACpD,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,OAAO;YACP,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,EAAE,KAAK,KAAK,SAAS;gBACrE,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAE,CAAC,KAAK,EAAE,CAAC;SACtE,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,kBAAkB,CAAC,EAAE,CAAC;QAC9D,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,mBAAmB;YAC1E,OAAO;YACP,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc;gBAC9B,CAAC,CAAC;oBACE,UAAU,EAAE,IAAI,CAAC,IAAI,CACnB,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAChC;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;AAC1C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@melra/runtime-core",
3
- "version": "0.3.0-alpha.18",
3
+ "version": "0.3.0-alpha.20",
4
4
  "description": "Durable task and workflow execution, recovery, budgets, retries, and verification for MELRA.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -24,11 +24,11 @@
24
24
  "dist"
25
25
  ],
26
26
  "dependencies": {
27
- "@melra/policy-core": "0.3.0-alpha.18",
28
- "@melra/protocol": "0.3.0-alpha.18",
29
- "@melra/receipt-schema": "0.3.0-alpha.18",
30
- "@melra/verifier-core": "0.3.0-alpha.18",
31
- "@melra/storage-sqlite": "0.3.0-alpha.18"
27
+ "@melra/policy-core": "0.3.0-alpha.20",
28
+ "@melra/protocol": "0.3.0-alpha.20",
29
+ "@melra/storage-sqlite": "0.3.0-alpha.20",
30
+ "@melra/verifier-core": "0.3.0-alpha.20",
31
+ "@melra/receipt-schema": "0.3.0-alpha.20"
32
32
  },
33
33
  "scripts": {
34
34
  "build": "tsc -p tsconfig.json",