@pegma/support-desk-application 0.2.5 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,16 +1,23 @@
1
1
  # @pegma/support-desk-application
2
2
 
3
+ The local package is an **unpublished synchronized `0.2.6` source candidate**.
4
+ See the [candidate release notes](../../docs/RELEASE_NOTES.md#026-candidate--guarded-engineering-controls)
5
+ and [engineering guard contract](../../docs/ENGINEERING_EXPORT.md#026-candidate-guarded-engineering-controls). The application adds optional
6
+ `EngineeringMutationOptions` to seven engineering controls; existing callers
7
+ can omit the third argument. Current authority, exact receipt recovery and
8
+ partition transaction boundaries remain required.
9
+
3
10
  Authorized customer ticket services and provider-neutral durable outbox
4
11
  records for Support Desk. The host supplies an `@pegma/storage-core` `Store`
5
12
  and a trusted Authorization Core access context.
6
13
  The host server supplies `correlationId` on commands; the application validates
7
14
  and propagates it and never generates it.
8
15
 
9
- The current verified published synchronized release is `0.2.4` and includes
16
+ The current verified published synchronized release is `0.2.5` and includes
10
17
  changes beyond the immutable `0.1.0`/`0.1.1` artifacts. SD-01 first shipped
11
18
  handling/handoff foundations in `0.2.0` without model generation or a KB
12
19
  dependency. See the current
13
- [publication receipt](../../docs/RELEASING.md#verified-024-publication-2026-11-11).
20
+ [publication receipt](../../docs/RELEASING.md#verified-025-publication-2026-11-11).
14
21
  Host adoption retains its own activation gates; source checkouts and
15
22
  overwritten registry versions are not release substitutes.
16
23
 
@@ -18,16 +25,15 @@ The published synchronized `0.2.1` patch groups independent Store reads for
18
25
  assistant answering while retaining current authority, ticket and turn fences.
19
26
  This package gains no KB or provider dependency. The historical
20
27
  [0.2.1 receipt](../../docs/RELEASING.md#verified-021-publication-2026-11-10)
21
- records that patch's exact artifacts; current `0.2.4` retains those guards. Grouped reads do not establish a universal host query or CPU
28
+ records that patch's exact artifacts; current `0.2.5` retains those guards. Grouped reads do not establish a universal host query or CPU
22
29
  budget.
23
30
 
24
31
  Published `0.2.3` includes the final engineering review guards described in
25
32
  the [engineering guide](../../docs/ENGINEERING_EXPORT.md). Published `0.2.4` adds
26
33
  admitted customer intake, final learning draft checks, bounded assistant finish
27
- reads and release follow-up staff checks. This checkout is synchronized at
28
- unpublished `0.2.5` for attachments and opt-in staged human learning reviews.
29
- See the [release notes](../../docs/RELEASE_NOTES.md); combined validation, review
30
- and verified publication remain required before adoption of the candidate.
34
+ reads and release follow-up staff checks. Published `0.2.5` adds attachments
35
+ and opt-in staged human learning reviews. See the
36
+ [release notes](../../docs/RELEASE_NOTES.md); host adoption retains its own gates.
31
37
 
32
38
  SD-02's merged source adds opt-in `assistantTurns` and the
33
39
  `AssistantTurnApplication` methods `scanAssistantTurnCandidates`,
@@ -1 +1 @@
1
- {"version":3,"file":"engineering-evidence.d.ts","sourceRoot":"","sources":["../src/engineering-evidence.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAML,KAAK,aAAa,EACnB,MAAM,YAAY,CAAC;AAuBpB,OAAO,KAAK,EACV,iBAAiB,EACjB,uBAAuB,EAEvB,iBAAiB,EACjB,wBAAwB,EACxB,wBAAwB,EACzB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EACV,sBAAsB,EAYvB,MAAM,wBAAwB,CAAC;AAEhC,KAAK,eAAe,GAAG,IAAI,CACzB,sBAAsB,EACpB,yBAAyB,GACzB,2BAA2B,GAC3B,6BAA6B,GAC7B,2BAA2B,GAC3B,uBAAuB,GACvB,qBAAqB,CACxB,CAAC;AA+EF,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,eAAe,CAAC,aAAa,CAAC,EACvC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC,CAQ1C;AA4DD,+EAA+E;AAC/E,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,eAAe,CAAC,aAAa,CAAC,EACvC,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE;IAAE,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAA;CAAE,GACxC,OAAO,CAAC;IACT,QAAQ,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC/C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC,CAAC,CAmDD;AAwGD,wBAAgB,iCAAiC,CAC/C,IAAI,EAAE,uBAAuB,GAC5B;IACD,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;CAClC,CAg3BA"}
1
+ {"version":3,"file":"engineering-evidence.d.ts","sourceRoot":"","sources":["../src/engineering-evidence.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAML,KAAK,aAAa,EACnB,MAAM,YAAY,CAAC;AAuBpB,OAAO,KAAK,EACV,iBAAiB,EACjB,uBAAuB,EAEvB,iBAAiB,EACjB,wBAAwB,EACxB,wBAAwB,EACzB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EACV,sBAAsB,EAavB,MAAM,wBAAwB,CAAC;AAEhC,KAAK,eAAe,GAAG,IAAI,CACzB,sBAAsB,EACpB,yBAAyB,GACzB,2BAA2B,GAC3B,6BAA6B,GAC7B,2BAA2B,GAC3B,uBAAuB,GACvB,qBAAqB,CACxB,CAAC;AAuGF,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,eAAe,CAAC,aAAa,CAAC,EACvC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC,CAQ1C;AA4DD,+EAA+E;AAC/E,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,eAAe,CAAC,aAAa,CAAC,EACvC,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE;IAAE,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAA;CAAE,GACxC,OAAO,CAAC;IACT,QAAQ,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC/C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC,CAAC,CAmDD;AAwGD,wBAAgB,iCAAiC,CAC/C,IAAI,EAAE,uBAAuB,GAC5B;IACD,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;CAClC,CAs4BA"}
@@ -1,3 +1,4 @@
1
+ import { engineeringMutationBoundary } from "./engineering-mutation-guard.js";
1
2
  import { hasPermission } from "@pegma/authorization-core";
2
3
  import { SupportDeskAuthorizationError, SupportDeskConflictError, SupportDeskLimitError, SupportDeskNotFoundError, supportPermissions, } from "./index.js";
3
4
  import { fields, fingerprint, integer, timestamp, text, } from "./assistant-turn-records.js";
@@ -6,10 +7,14 @@ import { projectEngineeringRows } from "./engineering-internal.js";
6
7
  class EngineeringTrustUnavailable extends Error {
7
8
  }
8
9
  /** One original clock/elapsed-time budget covers every awaited trust port. */
9
- function trustWindow(clock, milliseconds) {
10
+ function trustWindow(clock, milliseconds, callerSignal) {
10
11
  const started = performance.now();
11
12
  const initial = timestamp(clock.now(), "now");
12
13
  const controller = new AbortController();
14
+ const cancel = () => controller.abort();
15
+ callerSignal?.addEventListener("abort", cancel, { once: true });
16
+ if (callerSignal?.aborted)
17
+ cancel();
13
18
  const now = () => Math.max(timestamp(clock.now(), "now"), initial + performance.now() - started);
14
19
  const remaining = () => initial + milliseconds - now();
15
20
  const ensure = () => {
@@ -18,10 +23,14 @@ function trustWindow(clock, milliseconds) {
18
23
  };
19
24
  return {
20
25
  now,
21
- close: () => controller.abort(),
26
+ close: () => {
27
+ callerSignal?.removeEventListener("abort", cancel);
28
+ controller.abort();
29
+ },
22
30
  async within(action) {
23
31
  ensure();
24
32
  let timer;
33
+ let onAbort;
25
34
  try {
26
35
  const value = await Promise.race([
27
36
  Promise.resolve().then(() => {
@@ -34,6 +43,18 @@ function trustWindow(clock, milliseconds) {
34
43
  reject(new EngineeringTrustUnavailable());
35
44
  }, Math.max(1, Math.ceil(remaining())));
36
45
  }),
46
+ ...(callerSignal === undefined
47
+ ? []
48
+ : [
49
+ new Promise((_resolve, reject) => {
50
+ onAbort = () => reject(new EngineeringTrustUnavailable());
51
+ controller.signal.addEventListener("abort", onAbort, {
52
+ once: true,
53
+ });
54
+ if (controller.signal.aborted)
55
+ onAbort();
56
+ }),
57
+ ]),
37
58
  ]);
38
59
  ensure();
39
60
  return value;
@@ -41,6 +62,8 @@ function trustWindow(clock, milliseconds) {
41
62
  finally {
42
63
  if (timer !== undefined)
43
64
  clearTimeout(timer);
65
+ if (onAbort !== undefined)
66
+ controller.signal.removeEventListener("abort", onAbort);
44
67
  }
45
68
  },
46
69
  };
@@ -304,7 +327,8 @@ export function createEngineeringEvidenceServices(deps) {
304
327
  value: loaded.ticket.value,
305
328
  version: loaded.ticket.version,
306
329
  });
307
- async function invalidate(access, input, privacy) {
330
+ async function invalidate(access, input, privacy, control) {
331
+ const mutation = engineeringMutationBoundary(control);
308
332
  const name = privacy
309
333
  ? supportPermissions.engineeringWithdraw
310
334
  : supportPermissions.engineeringEvidenceSubmit;
@@ -334,6 +358,7 @@ export function createEngineeringEvidenceServices(deps) {
334
358
  const previous = await replayAuthorized(access, name, actorId, command, hash);
335
359
  if (previous !== null)
336
360
  return previous;
361
+ mutation?.ensure();
337
362
  const loaded = await load(command.ticketId);
338
363
  if (loaded.source.value.state === "withdrawn") {
339
364
  permission(access, name, actorId);
@@ -417,7 +442,9 @@ export function createEngineeringEvidenceServices(deps) {
417
442
  actions.push(deps.audit(command, loaded.ticket.value.ticket, actorId, now, privacy
418
443
  ? "support.engineering.withdrawn"
419
444
  : "support.engineering.evidence_invalidated"), receipt(command, hash, result(next)));
445
+ const assertHostCurrent = mutation === undefined ? undefined : await mutation.verify();
420
446
  permission(access, name, actorId);
447
+ assertHostCurrent?.();
421
448
  if ((await records.transact(command.ticketId, actions)).committed) {
422
449
  permission(access, name, actorId);
423
450
  return result(next);
@@ -429,7 +456,8 @@ export function createEngineeringEvidenceServices(deps) {
429
456
  throw new SupportDeskConflictError();
430
457
  }
431
458
  const application = {
432
- async enrollEngineeringSource(access, input) {
459
+ async enrollEngineeringSource(access, input, control) {
460
+ const mutation = engineeringMutationBoundary(control);
433
461
  const name = supportPermissions.engineeringEvidenceSubmit;
434
462
  permission(access, name);
435
463
  const actorId = access.principalId;
@@ -446,6 +474,7 @@ export function createEngineeringEvidenceServices(deps) {
446
474
  const previous = await replayAuthorized(access, name, actorId, command, hash);
447
475
  if (previous !== null)
448
476
  return previous;
477
+ mutation?.ensure();
449
478
  const ticket = await records.getVersioned({
450
479
  partition: command.ticketId,
451
480
  id: "ticket",
@@ -475,7 +504,9 @@ export function createEngineeringEvidenceServices(deps) {
475
504
  deps.audit(command, ticket.value.ticket, actorId, now, "support.engineering.enrolled"),
476
505
  receipt(command, hash, result(created)),
477
506
  ];
507
+ const assertHostCurrent = mutation === undefined ? undefined : await mutation.verify();
478
508
  permission(access, name, actorId);
509
+ assertHostCurrent?.();
479
510
  if ((await records.transact(command.ticketId, actions)).committed) {
480
511
  permission(access, name, actorId);
481
512
  return result(created);
@@ -486,7 +517,8 @@ export function createEngineeringEvidenceServices(deps) {
486
517
  return previous;
487
518
  throw new SupportDeskConflictError();
488
519
  },
489
- async submitEngineeringEvidence(access, input) {
520
+ async submitEngineeringEvidence(access, input, control) {
521
+ const mutation = engineeringMutationBoundary(control);
490
522
  const name = supportPermissions.engineeringEvidenceSubmit;
491
523
  permission(access, name);
492
524
  const actorId = access.principalId;
@@ -519,6 +551,7 @@ export function createEngineeringEvidenceServices(deps) {
519
551
  const previous = await replayAuthorized(access, name, actorId, command, hash);
520
552
  if (previous !== null)
521
553
  return previous;
554
+ mutation?.ensure();
522
555
  const loaded = await load(command.ticketId);
523
556
  const source = loaded.source.value;
524
557
  const ticket = loaded.ticket.value.ticket;
@@ -553,7 +586,7 @@ export function createEngineeringEvidenceServices(deps) {
553
586
  reproductionSteps: command.evidence.reproductionSteps,
554
587
  visibleMessageIds: command.evidence.visibleMessageIds,
555
588
  };
556
- const window = trustWindow(clock, options.trustTimeoutMilliseconds);
589
+ const window = trustWindow(clock, options.trustTimeoutMilliseconds, mutation?.signal);
557
590
  let product = null;
558
591
  let evidence = null;
559
592
  let heldReason = "product_context_unavailable";
@@ -617,6 +650,7 @@ export function createEngineeringEvidenceServices(deps) {
617
650
  finally {
618
651
  window.close();
619
652
  }
653
+ mutation?.ensure();
620
654
  const stableProduct = product === null
621
655
  ? null
622
656
  : {
@@ -783,6 +817,8 @@ export function createEngineeringEvidenceServices(deps) {
783
817
  if (work !== undefined)
784
818
  actions.push({ action: "insert", value: work });
785
819
  actions.push(deps.audit(command, ticket, actorId, now, "support.engineering.evidence_recorded"), receipt(command, hash, result(next)));
820
+ const assertHostCurrent = mutation === undefined ? undefined : await mutation.verify();
821
+ assertHostCurrent?.();
786
822
  permission(access, name, actorId);
787
823
  if (clearing)
788
824
  permission(access, supportPermissions.engineeringSecurityReview, actorId);
@@ -795,6 +831,7 @@ export function createEngineeringEvidenceServices(deps) {
795
831
  timestamp(evidence.test.validUntil, "test.validUntil") <=
796
832
  window.now())))
797
833
  throw new SupportDeskConflictError("Engineering evidence expired before commit");
834
+ mutation?.ensure();
798
835
  if ((await records.transact(command.ticketId, actions)).committed) {
799
836
  permission(access, name, actorId);
800
837
  if (clearing)
@@ -807,8 +844,8 @@ export function createEngineeringEvidenceServices(deps) {
807
844
  return previous;
808
845
  throw new SupportDeskConflictError();
809
846
  },
810
- invalidateEngineeringSource: (access, command) => invalidate(access, command, false),
811
- withdrawEngineeringSource: (access, command) => invalidate(access, command, true),
847
+ invalidateEngineeringSource: (access, command, control) => invalidate(access, command, false, control),
848
+ withdrawEngineeringSource: (access, command, control) => invalidate(access, command, true, control),
812
849
  async readEngineeringSource(access, ticketId) {
813
850
  const actorId = access.principalId;
814
851
  permission(access, supportPermissions.engineeringRead, actorId);
@@ -1 +1 @@
1
- {"version":3,"file":"engineering-evidence.js","sourceRoot":"","sources":["../src/engineering-evidence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engineering-evidence.js","sourceRoot":"","sources":["../src/engineering-evidence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAsB,MAAM,2BAA2B,CAAC;AAI9E,OAAO,EACL,6BAA6B,EAC7B,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,GAEnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,MAAM,EACN,WAAW,EACX,OAAO,EACP,SAAS,EACT,IAAI,GACL,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,8BAA8B,EAC9B,yCAAyC,EACzC,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,IAAI,QAAQ,EACnC,2BAA2B,EAC3B,gCAAgC,EAChC,0BAA0B,GAI3B,MAAM,0BAA0B,CAAC;AASlC,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AA2BnE,MAAM,2BAA4B,SAAQ,KAAK;CAAG;AAElD,8EAA8E;AAC9E,SAAS,WAAW,CAClB,KAAY,EACZ,YAAoB,EACpB,YAA0B;IAE1B,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAClC,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IACxC,YAAY,EAAE,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAChE,IAAI,YAAY,EAAE,OAAO;QAAE,MAAM,EAAE,CAAC;IACpC,MAAM,GAAG,GAAG,GAAW,EAAE,CACvB,IAAI,CAAC,GAAG,CACN,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,EAC7B,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CACtC,CAAC;IACJ,MAAM,SAAS,GAAG,GAAW,EAAE,CAAC,OAAO,GAAG,YAAY,GAAG,GAAG,EAAE,CAAC;IAC/D,MAAM,MAAM,GAAG,GAAS,EAAE;QACxB,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,IAAI,SAAS,EAAE,IAAI,CAAC;YAC/C,MAAM,IAAI,2BAA2B,EAAE,CAAC;IAC5C,CAAC,CAAC;IACF,OAAO;QACL,GAAG;QACH,KAAK,EAAE,GAAG,EAAE;YACV,YAAY,EAAE,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACnD,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;QACD,KAAK,CAAC,MAAM,CAAI,MAA2C;YACzD,MAAM,EAAE,CAAC;YACT,IAAI,KAAgD,CAAC;YACrD,IAAI,OAAiC,CAAC;YACtC,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;oBAC/B,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;wBAC1B,MAAM,EAAE,CAAC;wBACT,OAAO,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;oBACnC,CAAC,CAAC;oBACF,IAAI,OAAO,CAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;wBACtC,KAAK,GAAG,UAAU,CAChB,GAAG,EAAE;4BACH,UAAU,CAAC,KAAK,EAAE,CAAC;4BACnB,MAAM,CAAC,IAAI,2BAA2B,EAAE,CAAC,CAAC;wBAC5C,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CACpC,CAAC;oBACJ,CAAC,CAAC;oBACF,GAAG,CAAC,YAAY,KAAK,SAAS;wBAC5B,CAAC,CAAC,EAAE;wBACJ,CAAC,CAAC;4BACE,IAAI,OAAO,CAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;gCACtC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,2BAA2B,EAAE,CAAC,CAAC;gCAC1D,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE;oCACnD,IAAI,EAAE,IAAI;iCACX,CAAC,CAAC;gCACH,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;oCAAE,OAAO,EAAE,CAAC;4BAC3C,CAAC,CAAC;yBACH,CAAC;iBACP,CAAC,CAAC;gBACH,MAAM,EAAE,CAAC;gBACT,OAAO,KAAK,CAAC;YACf,CAAC;oBAAS,CAAC;gBACT,IAAI,KAAK,KAAK,SAAS;oBAAE,YAAY,CAAC,KAAK,CAAC,CAAC;gBAC7C,IAAI,OAAO,KAAK,SAAS;oBACvB,UAAU,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CACjB,MAAqB,EACrB,IAAY,EACZ,OAAgB;IAEhB,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACxC,IAAI,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,WAAW,KAAK,OAAO;QACzD,MAAM,IAAI,wBAAwB,CAAC,2BAA2B,CAAC,CAAC;IAClE,KAAK,MAAM,QAAQ,IAAI,CAAC,IAAI,EAAE,kBAAkB,CAAC,SAAS,CAAC;QACzD,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC;YAClC,MAAM,IAAI,6BAA6B,CAAC,QAAQ,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,MAAM,CAAC,MAA+B;IAC7C,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,GAAG,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS;YACjC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;KACvC,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,GAAoD;IACnE,8BAA8B,CAAC,GAAG,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,OAAuC,EACvC,QAAgB;IAEhB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1E,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,oBAAoB;QAC5C,MAAM,IAAI,wBAAwB,CAChC,gDAAgD,CACjD,CAAC;IACJ,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;AAC1D,CAAC;AAED,SAAS,YAAY,CACnB,MAAgC,EAChC,IAA6B;IAE7B,OAAO,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC5E,CAAC;AAED,SAAS,YAAY,CAAC,IAA2B;IAC/C,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;IAC7E,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,+BAA+B,CACtC,WAAmC;IAEnC,OAAO,WAAW,CAAC,cAAc,KAAK,WAAW;QAC/C,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC;QAChE,CAAC,CAAC,WAAW;QACb,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,kFAAkF;AAClF,SAAS,oBAAoB,CAC3B,IAA2B;IAE3B,IACE,IAAI,CAAC,MAAM,KAAK,YAAY;QAC5B,IAAI,CAAC,QAAQ,KAAK,YAAY;QAC9B,IAAI,CAAC,SAAS,EAAE,QAAQ,KAAK,YAAY;QAEzC,OAAO,YAAY,CAAC;IACtB,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,IAAI,IAAI,CAAC,SAAS,EAAE,QAAQ,KAAK,WAAW;QAC3E,OAAO,WAAW,CAAC;IACrB,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,eAAe,CACtB,IAA2B,EAC3B,MAAc;IAEd,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,MAAM,GACV,IAAI,CAAC,MAAM,KAAK,UAAU,IAAI,IAAI,CAAC,MAAM,KAAK,oBAAoB;QAChE,CAAC,CAAC,IAAI,CAAC,MAAM;QACb,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS;YAC3B,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,SAAS,CAAC;IAClB,OAAO;QACL,GAAG,IAAI;QACP,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC;QACpC,MAAM;QACN,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAoB,EAAE,CAAC;QACvE,UAAU,EAAE,MAAM;QAClB,cAAc,EAAE,IAAI,CAAC,cAAc,GAAG,CAAC;KACxC,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,OAAuC,EACvC,MAAgC,EAChC,KAAa,EACb,IAAyC;IAKzC,MAAM,MAAM,GAAG,MAAM,4BAA4B,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IACrE,MAAM,QAAQ,GACZ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;QAC3D,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,QAAQ,CAAC;QACvD,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC;IAC5C,MAAM,IAAI,GAA4B;QACpC,GAAG,MAAM,CAAC,KAAK;QACf,gBAAgB,EAAE,MAAM,CAAC,KAAK,CAAC,gBAAgB,GAAG,CAAC;QACnD,cAAc,EAAE,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC;QAC/C,KAAK,EACH,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,WAAW;YAChC,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,YAAY;gBACnC,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,MAAM;QACd,UAAU,EACR,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,WAAW;YAChC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,WAAW,CAAC;YAC1C,CAAC,CAAC,QAAQ;gBACR,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,wBAAwB;QAChC,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,qBAAqB,EAAE,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CACnD,CAAC,WAAW,EAAE,EAAE,CACd,+BAA+B,CAAC,WAAW,CAAC,KAAK,WAAW,CAC/D;QACD,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAC5D,GAAG,WAAW;YACd,cAAc,EAAE,+BAA+B,CAAC,WAAW,CAAC;SAC7D,CAAC,CAAC;KACJ,CAAC;IACF,MAAM,OAAO,GAAwB,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;IAClE,4EAA4E;IAC5E,8EAA8E;IAC9E,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,YAAY,CACrC,kBAAkB,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAC5D,CAAC;IACF,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,kBAAkB;YACxC,MAAM,IAAI,wBAAwB,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,UAAW,CAAC,CAAC;QAC9D,OAAO,CAAC,OAAO,CAAC,CAAC;QACjB,OAAO,CAAC,IAAI,CAAC;YACX,MAAM,EAAE,gBAAgB;YACxB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;IACL,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,qBAAqB,CAC5B,GAAgD;IAEhD,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,QAAQ,EAAE,GAAG,GAAG,CAAC;IACvC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,YAAY,CACnB,IAA2B,EAC3B,MAAc;IAEd,MAAM,OAAO,GACX,IAAI,CAAC,gBAAgB;QACrB,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS;YAC1B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC;gBACE,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS;gBAC1C,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY;gBAC3D,sBAAsB,EAAE,IAAI,CAAC,QAAQ,CAAC,sBAAsB;gBAC5D,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY;gBACvD,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,KAAK,qBAAqB;oBAC3D,CAAC,CAAC;wBACE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO;wBACtC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW;qBAC/C;oBACH,CAAC,CAAC,EAAE,CAAC;aACR,CAAC,CAAC;IACT,MAAM,eAAe,GAAG,qBAAqB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpE,MAAM,IAAI,GAA0B;QAClC,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;QACvC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;QACzC,cAAc,EAAE,IAAI,CAAC,cAAc,GAAG,CAAC;QACvC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;QACnD,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC;QACpC,MAAM,EACJ,IAAI,CAAC,MAAM,KAAK,UAAU,IAAI,IAAI,CAAC,MAAM,KAAK,oBAAoB;YAChE,CAAC,CAAC,IAAI,CAAC,MAAM;YACb,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS;gBAC3B,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,SAAS;QACjB,KAAK,EAAE,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW;QAC7D,aAAa,EAAE,EAAE;QACjB,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,UAAU,EAAE,MAAM;QAClB,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;QAC7C,eAAe,EACb,IAAI,CAAC,eAAe;YACpB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBACnC,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,kBAAkB,EAAE,OAAO,CAAC,OAAO,CAAC,kBAAkB;gBACtD,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC,CAAC;QACL,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;QAC7D,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS;YAChC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;QACtC,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACnE,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC;QAC7D,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC;QAC/D,GAAG,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS;YACnC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5C,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;QACzE,GAAG,CAAC,IAAI,CAAC,kBAAkB,KAAK,SAAS;YACvC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC;KACrD,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,sBAAsB,CAC7B,MAA+B,EAC/B,QAA6B;IAE7B,OAAO,CACL,QAAQ,KAAK,UAAU;QACvB,CAAC,MAAM,CAAC,KAAK,KAAK,YAAY;YAC5B,CAAC,MAAM,CAAC,QAAQ,KAAK,UAAU;gBAC7B,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,CACpE,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAClB,MAAqB,EACrB,QAA6B,EAC7B,OAAe;IAEf,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAChE,IAAI,QAAQ,KAAK,UAAU;QACzB,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,IAA6B;IAK7B,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACzC,MAAM,IAAI,GAAsB,KAAK,EAAE,QAAQ,EAAE,EAAE;QACjD,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC;YACxC,SAAS,EAAE,QAAQ;YACnB,EAAE,EAAE,QAAQ;SACb,CAAC,CAAC;QACH,IAAI,MAAM,EAAE,KAAK,CAAC,IAAI,KAAK,QAAQ;YAAE,MAAM,IAAI,wBAAwB,EAAE,CAAC;QAC1E,MAAM,MAAM,GAAG,MAAM,4BAA4B,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACrE,IAAI,MAAM,KAAK,IAAI;YAAE,MAAM,IAAI,wBAAwB,EAAE,CAAC;QAC1D,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB;YAC/C,MAAM,IAAI,qBAAqB,CAC7B,kBAAkB,EAClB,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAChC,CAAC;QACJ,OAAO;YACL,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE;YACxD,MAAM;YACN,IAAI;SACL,CAAC;IACJ,CAAC,CAAC;IACF,SAAS,eAAe,CAAC,OAA2B;QAClD,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,CAAU;YACpE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;IACD,SAAS,OAAO,CACd,OAA2B,EAC3B,IAAY,EACZ,KAA8B;QAE9B,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE;gBACL,IAAI,EAAE,qBAAqB;gBAC3B,SAAS,EAAE,OAAO,CAAC,QAAQ;gBAC3B,EAAE,EAAE,qBAAqB,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE;gBACjE,WAAW,EAAE,IAAI;gBACjB,MAAM,EAAE,KAAK;aACd;SACF,CAAC;IACJ,CAAC;IACD,KAAK,UAAU,MAAM,CACnB,OAA2B,EAC3B,IAAY;QAEZ,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,qBAAqB,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,CAC3D,CAAC;QACF,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACjC,IACE,MAAM,CAAC,IAAI,KAAK,qBAAqB;YACrC,MAAM,CAAC,WAAW,KAAK,IAAI;YAC3B,CAAC,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC;YAC3B,CAAC,CAAC,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC;YAE9B,MAAM,IAAI,wBAAwB,CAAC,qCAAqC,CAAC,CAAC;QAC5E,IACE,CAAC,MAAM,4BAA4B,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,IAAI;YAExE,MAAM,IAAI,wBAAwB,EAAE,CAAC;QACvC,OAAO,QAAQ,CAAC,MAAM,CAAC,MAAiC,CAAC,CAAC;IAC5D,CAAC;IACD,KAAK,UAAU,gBAAgB,CAC7B,MAAqB,EACrB,IAAY,EACZ,OAAe,EACf,OAA2B,EAC3B,IAAY;QAEZ,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAClC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC7C,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAClC,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,aAAa,GAAG,CAAC,MAAyB,EAAqB,EAAE,CAAC,CAAC;QACvE,MAAM,EAAE,gBAAgB;QACxB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;QAC1B,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;KAC/B,CAAC,CAAC;IAEH,KAAK,UAAU,UAAU,CACvB,MAAqB,EACrB,KACuE,EACvE,OAAgB,EAChB,OAAoC;QAEpC,MAAM,QAAQ,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,OAAO;YAClB,CAAC,CAAC,kBAAkB,CAAC,mBAAmB;YACxC,CAAC,CAAC,kBAAkB,CAAC,yBAAyB,CAAC;QACjD,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACzB,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC;QACnC,MAAM,OAAO,GAAG,QAAQ,CACtB,MAAM,CAAC,KAAK,EAAE,0BAA0B,EAAE;YACxC,UAAU;YACV,WAAW;YACX,eAAe;YACf,QAAQ;SACT,CAAC,CACwB,CAAC;QAC7B,eAAe,CAAC,OAAO,CAAC,CAAC;QACzB,IACE,CAAC,CACC,OAAO;YACL,CAAC,CAAC,CAAC,oBAAoB,EAAE,uBAAuB,EAAE,gBAAgB,CAAC;YACnE,CAAC,CAAC;gBACE,kBAAkB;gBAClB,yBAAyB;gBACzB,sBAAsB;aACvB,CACN,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC;YAE1B,MAAM,IAAI,SAAS,CAAC,yCAAyC,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY;YAC9C,OAAO;YACP,OAAO;SACR,CAAC,CAAC;QACH,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC,mBAAmB,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;YACvE,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CACrC,MAAM,EACN,IAAI,EACJ,OAAO,EACP,OAAO,EACP,IAAI,CACL,CAAC;YACF,IAAI,QAAQ,KAAK,IAAI;gBAAE,OAAO,QAAQ,CAAC;YACvC,QAAQ,EAAE,MAAM,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;gBAC9C,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;gBAClC,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACrC,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;YACnC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;YACxB,MAAM,EACJ,QAAQ,EAAE,SAAS,EACnB,OAAO,EAAE,QAAQ,EACjB,aAAa,EAAE,MAAM,EACrB,mBAAmB,EAAE,aAAa,EAClC,yBAAyB,EAAE,YAAY,EACvC,iBAAiB,EAAE,QAAQ,EAC3B,sBAAsB,EAAE,SAAS,EACjC,oBAAoB,EAAE,QAAQ,EAC9B,wBAAwB,EAAE,QAAQ,EAClC,GAAG,OAAO,EACX,GAAG,MAAM,CAAC;YACX,MAAM,IAAI,GAA4B;gBACpC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC/B,KAAK,EAAE,OAAO;oBACZ,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,UAAU;wBAC9B,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,YAAY;gBAClB,UAAU,EAAE,OAAO,CAAC,MAAM;gBAC1B,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,GAAG,CAAC;gBAC7C,uBAAuB,EACrB,yCAAyC,CAAC,MAAM,CAAC;gBACnD,cAAc,EAAE,MAAM,CAAC,cAAc,GAAG,CAAC;gBACzC,SAAS,EAAE,GAAG;gBACd,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;oBAC9C,MAAM,eAAe,GAAG,OAAO;wBAC7B,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,eAAe,CAAC;wBAC9C,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC;oBAC1B,MAAM,EACJ,eAAe,EAAE,IAAI,EACrB,kBAAkB,EAAE,IAAI,EACxB,GAAG,QAAQ,EACZ,GAAG,KAAK,CAAC;oBACV,OAAO;wBACL,GAAG,QAAQ;wBACX,cAAc,EAAE,+BAA+B,CAAC,KAAK,CAAC;wBACtD,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC;wBAC7D,GAAG,CAAC,IAAI,KAAK,SAAS;4BACpB,CAAC,CAAC,EAAE;4BACJ,CAAC,CAAC;gCACE,kBAAkB,EAAE,OAAO;oCACzB,CAAC,CAAC;wCACE,WAAW,EAAE,IAAI,CAAC,WAAW;wCAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;wCACrB,UAAU,EAAE,IAAI,CAAC,UAAU;qCAC5B;oCACH,CAAC,CAAC,IAAI;6BACT,CAAC;qBACP,CAAC;gBACJ,CAAC,CAAC;gBACF,qBAAqB,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,CAC7C,CAAC,WAAW,EAAE,EAAE,CACd,+BAA+B,CAAC,WAAW,CAAC,KAAK,WAAW,CAC/D;aACF,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC;gBACnD,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,cAAc,EAAE,MAAM;gBACtB,UAAU,EAAE,IAAI;gBAChB,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,qBAAqB;aACvD,CAAC,CAAC;YACH,MAAM,WAAW,GAAG,sBAAsB,CACxC,MAAM,CAAC,IAAI,EACX,QAAQ,CAAC,YAAY,CACtB,CAAC;YACF,IAAI,OAAO;gBACT,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;;gBAClE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;YAChE,MAAM,OAAO,GAAwB;gBACnC,aAAa,CAAC,MAAM,CAAC;gBACrB,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC;gBACjC,GAAG,QAAQ,CAAC,OAAO;aACpB,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CACjC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,kBAAkB,CACzC,CAAC;YACF,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;gBACrB,MAAM,IAAI,wBAAwB,CAChC,uCAAuC,CACxC,CAAC;YACJ,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC;oBACtC,SAAS,EAAE,OAAO,CAAC,QAAQ;oBAC3B,EAAE,EAAE,GAAG,CAAC,EAAE;iBACX,CAAC,CAAC;gBACH,IAAI,IAAI,EAAE,KAAK,CAAC,IAAI,KAAK,kBAAkB;oBACzC,MAAM,IAAI,wBAAwB,EAAE,CAAC;gBACvC,MAAM,OAAO,GAAG,OAAO;oBACrB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC;oBAC1C,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;gBAChD,OAAO,CAAC,OAAO,CAAC,CAAC;gBACjB,OAAO,CAAC,IAAI,CAAC;oBACX,MAAM,EAAE,gBAAgB;oBACxB,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,KAAK,EAAE,OAAO;iBACf,CAAC,CAAC;YACL,CAAC;YACD,OAAO,CAAC,IAAI,CACV,IAAI,CAAC,KAAK,CACR,OAAO,EACP,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAC1B,OAAO,EACP,GAAG,EACH,OAAO;gBACL,CAAC,CAAC,+BAA+B;gBACjC,CAAC,CAAC,0CAA0C,CAC/C,EACD,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CACrC,CAAC;YACF,MAAM,iBAAiB,GACrB,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC/D,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YAClC,iBAAiB,EAAE,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;gBAClE,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;gBAClC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CACrC,MAAM,EACN,IAAI,EACJ,OAAO,EACP,OAAO,EACP,IAAI,CACL,CAAC;QACF,IAAI,QAAQ,KAAK,IAAI;YAAE,OAAO,QAAQ,CAAC;QACvC,MAAM,IAAI,wBAAwB,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,WAAW,GAAoB;QACnC,KAAK,CAAC,uBAAuB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO;YAClD,MAAM,QAAQ,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YACtD,MAAM,IAAI,GAAG,kBAAkB,CAAC,yBAAyB,CAAC;YAC1D,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACzB,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC;YACnC,MAAM,OAAO,GAAG,QAAQ,CACtB,MAAM,CAAC,KAAK,EAAE,wBAAwB,EAAE;gBACtC,UAAU;gBACV,WAAW;gBACX,eAAe;gBACf,kBAAkB;aACnB,CAAC,CACwB,CAAC;YAC7B,eAAe,CAAC,OAAO,CAAC,CAAC;YACzB,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;YACzD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YAC1E,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC,mBAAmB,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;gBACvE,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CACrC,MAAM,EACN,IAAI,EACJ,OAAO,EACP,OAAO,EACP,IAAI,CACL,CAAC;gBACF,IAAI,QAAQ,KAAK,IAAI;oBAAE,OAAO,QAAQ,CAAC;gBACvC,QAAQ,EAAE,MAAM,EAAE,CAAC;gBACnB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC;oBACxC,SAAS,EAAE,OAAO,CAAC,QAAQ;oBAC3B,EAAE,EAAE,QAAQ;iBACb,CAAC,CAAC;gBACH,IAAI,MAAM,EAAE,KAAK,CAAC,IAAI,KAAK,QAAQ;oBACjC,MAAM,IAAI,wBAAwB,EAAE,CAAC;gBACvC,MAAM,QAAQ,GAAG,MAAM,4BAA4B,CACjD,OAAO,EACP,OAAO,CAAC,QAAQ,CACjB,CAAC;gBACF,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;oBACtB,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;oBAClC,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChC,CAAC;gBACD,IAAI,CAAC,OAAO,CAAC,OAAO;oBAClB,MAAM,IAAI,wBAAwB,CAAC,iCAAiC,CAAC,CAAC;gBACxE,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,KAAK,OAAO,CAAC,gBAAgB;oBAC3D,MAAM,IAAI,wBAAwB,CAChC,qCAAqC,CACtC,CAAC;gBACJ,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAClD,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACnE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC3D,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;gBACxB,MAAM,OAAO,GAAwB;oBACnC;wBACE,MAAM,EAAE,gBAAgB;wBACxB,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,KAAK,EAAE,MAAM,CAAC,KAAK;qBACpB;oBACD,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE;oBACpC,IAAI,CAAC,KAAK,CACR,OAAO,EACP,MAAM,CAAC,KAAK,CAAC,MAAM,EACnB,OAAO,EACP,GAAG,EACH,8BAA8B,CAC/B;oBACD,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;iBACxC,CAAC;gBACF,MAAM,iBAAiB,GACrB,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAC/D,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;gBAClC,iBAAiB,EAAE,EAAE,CAAC;gBACtB,IAAI,CAAC,MAAM,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;oBAClE,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;oBAClC,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CACrC,MAAM,EACN,IAAI,EACJ,OAAO,EACP,OAAO,EACP,IAAI,CACL,CAAC;YACF,IAAI,QAAQ,KAAK,IAAI;gBAAE,OAAO,QAAQ,CAAC;YACvC,MAAM,IAAI,wBAAwB,EAAE,CAAC;QACvC,CAAC;QAED,KAAK,CAAC,yBAAyB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO;YACpD,MAAM,QAAQ,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YACtD,MAAM,IAAI,GAAG,kBAAkB,CAAC,yBAAyB,CAAC;YAC1D,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACzB,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC;YACnC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,EAAE,8BAA8B,EAAE;gBACxD,UAAU;gBACV,WAAW;gBACX,eAAe;gBACf,kBAAkB;gBAClB,UAAU;gBACV,UAAU;aACX,CAAC,CAAC;YACH,0EAA0E;YAC1E,eAAe,CAAC,GAAoC,CAAC,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;YACrD,gCAAgC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC/C,IACE,CAAC,CAAC,UAAU,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,QAAQ,CAC/C,GAAG,CAAC,QAAkB,CACvB;gBAED,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;YACrE,MAAM,OAAO,GAAG,QAAQ,CACtB,GAAG,CAC2C,CAAC;YACjD,eAAe,CAAC,OAAO,CAAC,CAAC;YACzB,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;YACzD,gCAAgC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,CAAC,CAAC,UAAU,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACrE,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;YACrE,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;gBAC7B,SAAS,EAAE,UAAU;gBACrB,OAAO;gBACP,OAAO;aACR,CAAC,CAAC;YACH,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC,mBAAmB,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;gBACvE,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CACrC,MAAM,EACN,IAAI,EACJ,OAAO,EACP,OAAO,EACP,IAAI,CACL,CAAC;gBACF,IAAI,QAAQ,KAAK,IAAI;oBAAE,OAAO,QAAQ,CAAC;gBACvC,QAAQ,EAAE,MAAM,EAAE,CAAC;gBACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;gBACnC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC1C,IAAI,MAAM,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;oBACjC,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;oBAClC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;gBACxB,CAAC;gBACD,IAAI,CAAC,OAAO,CAAC,OAAO;oBAClB,MAAM,IAAI,wBAAwB,CAAC,iCAAiC,CAAC,CAAC;gBACxE,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,CAAC,gBAAgB;oBAC9C,MAAM,IAAI,wBAAwB,CAChC,qCAAqC,CACtC,CAAC;gBACJ,MAAM,QAAQ,GAAG,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAClE,IAAI,QAAQ;oBACV,UAAU,CACR,MAAM,EACN,kBAAkB,CAAC,yBAAyB,EAC5C,OAAO,CACR,CAAC;gBACJ,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAChC,CAAC,GAAG,EAAsD,EAAE,CAC1D,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,UAAU,CAClE,CAAC;gBACF,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAC9B,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAC9C,CAAC,CAAC,CAAC,CAAC;gBACL,IACE,MAAM,KAAK,SAAS;oBACpB,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CACrC,CAAC,EAAE,EAAE,EAAE,CACL,CAAC,OAAO,CAAC,IAAI,CACX,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE;wBACzB,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ,CACrC,CACJ;oBAED,MAAM,IAAI,wBAAwB,CAChC,4DAA4D,CAC7D,CAAC;gBACJ,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;gBACxB,MAAM,KAAK,GAA4B;oBACrC,QAAQ,EAAE,MAAM,CAAC,EAAE;oBACnB,cAAc,EAAE,MAAM,CAAC,QAAQ;oBAC/B,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;oBACzC,OAAO;oBACP,UAAU,EAAE,GAAG;iBAChB,CAAC;gBACF,MAAM,QAAQ,GAAwB;oBACpC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,CAAC,gBAAgB;oBACnD,cAAc,EAAE,OAAO,CAAC,QAAQ,CAAC,cAAc;oBAC/C,iBAAiB,EAAE,OAAO,CAAC,QAAQ,CAAC,iBAAiB;oBACrD,iBAAiB,EAAE,OAAO,CAAC,QAAQ,CAAC,iBAAiB;iBACtD,CAAC;gBACF,MAAM,MAAM,GAAG,WAAW,CACxB,KAAK,EACL,OAAO,CAAC,wBAAwB,EAChC,QAAQ,EAAE,MAAM,CACjB,CAAC;gBACF,IAAI,OAAO,GAAqC,IAAI,CAAC;gBACrD,IAAI,QAAQ,GAA+B,IAAI,CAAC;gBAChD,IAAI,UAAU,GAAG,6BAA6B,CAAC;gBAC/C,IAAI,CAAC;oBACH,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;wBACzC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAC9C,OAAO,CAAC,cAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CACzD,CAAC;wBACF,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;4BACtB,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;4BAC7B,0BAA0B,CAAC,OAAO,CAAC,CAAC;4BACpC,IACE,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,oBAAoB,CAAC;gCACjD,MAAM,CAAC,GAAG,EAAE;gCACd,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,oBAAoB,CAAC;oCACjD,MAAM,CAAC,GAAG,EAAE;gCAEd,OAAO,GAAG,IAAI,CAAC;wBACnB,CAAC;oBACH,CAAC;oBACD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;wBACrB,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,wBAAwB,EAAE,CAAC;4BACvD,QAAQ,GAAG;gCACT,GAAG,QAAQ;gCACX,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;gCAC3B,qBAAqB,EAAE,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gCAC7D,OAAO;6BACR,CAAC;wBACJ,CAAC;6BAAM,CAAC;4BACN,UAAU,GAAG,wBAAwB,CAAC;4BACtC,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gCACvC,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;gCAC3C,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAC1C,OAAO,CAAC,YAAa,CAAC,MAAM,CAC1B,SAAS,EACT,QAAQ,CAAC;oCACP,GAAG,KAAK;oCACR,OAAO,EAAE,OAAQ;oCACjB,QAAQ,EAAE,QAAQ;iCACnB,CAAC,EACF,MAAM,CACP,CACF,CAAC;gCACF,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;oCAClB,MAAM,QAAQ,GAAwB;wCACpC,GAAG,QAAQ;wCACX,IAAI,EAAE,aAAa;wCACnB,OAAO;wCACP,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;qCACrB,CAAC;oCACF,2BAA2B,CAAC,QAAQ,CAAC,CAAC;oCACtC,IACE,IAAI,CAAC,cAAc,KAAK,OAAO,CAAC,OAAO;wCACvC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC;4CAC3C,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC;wCAC/C,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC;4CAC3C,MAAM,CAAC,GAAG,EAAE;wCACd,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE;wCAE5D,QAAQ,GAAG,QAAQ,CAAC;gCACxB,CAAC;4BACH,CAAC;wBACH,CAAC;wBACD,IAAI,QAAQ,KAAK,IAAI;4BAAE,2BAA2B,CAAC,QAAQ,CAAC,CAAC;oBAC/D,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,GAAG,IAAI,CAAC;oBACf,QAAQ,GAAG,IAAI,CAAC;gBAClB,CAAC;wBAAS,CAAC;oBACT,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,CAAC;gBACD,QAAQ,EAAE,MAAM,EAAE,CAAC;gBAEnB,MAAM,aAAa,GACjB,OAAO,KAAK,IAAI;oBACd,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC;wBACE,SAAS,EAAE,OAAO,CAAC,SAAS;wBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,cAAc,EAAE,OAAO,CAAC,cAAc;qBACvC,CAAC;gBACR,MAAM,cAAc,GAClB,QAAQ,KAAK,IAAI;oBACf,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,wBAAwB;wBAC1C,CAAC,CAAC,QAAQ;wBACV,CAAC,CAAC;4BACE,GAAG,QAAQ;4BACX,IAAI,EAAE,QAAQ,CAAC,IAAI;4BACnB,OAAO;4BACP,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW;4BACtC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ;4BAChC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM;4BAC5B,cAAc,EAAE,QAAQ,CAAC,IAAI,CAAC,cAAc;yBAC7C,CAAC;gBACV,MAAM,mBAAmB,GAAG,MAAM,WAAW,CAAC,cAAc,CAAC,CAAC;gBAC9D,MAAM,yBAAyB,GAAG,MAAM,WAAW,CAAC,aAAa,CAAC,CAAC;gBACnE,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC;oBACtC,QAAQ,EAAE,cAAc;oBACxB,OAAO,EAAE,aAAa;oBACtB,oBAAoB,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;oBACvC,QAAQ,EAAE,OAAO,CAAC,QAAQ;iBAC3B,CAAC,CAAC;gBACH,MAAM,OAAO,GACX,OAAO,KAAK,IAAI;oBAChB,QAAQ,KAAK,IAAI;oBACjB,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,oBAAoB,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE;oBAClE,CAAC,QAAQ,CAAC,IAAI,KAAK,aAAa;wBAC9B,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC;4BACpD,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;gBACpB,IAAI,IAAI,GAAG,MAAM,CAAC;gBAClB,IAAI,IAAuC,CAAC;gBAC5C,IAAI,CAAC,CACH,OAAO;oBACP,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;oBACjD,MAAM,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ;oBACpC,CAAC,QAAQ;oBACT,MAAM,CAAC,aAAa,KAAK,aAAa,CACvC,EAAE,CAAC;oBACF,MAAM,EACJ,UAAU,EAAE,KAAK,EACjB,wBAAwB,EAAE,QAAQ,EAClC,QAAQ,EAAE,SAAS,EACnB,OAAO,EAAE,QAAQ,EACjB,aAAa,EAAE,MAAM,EACrB,mBAAmB,EAAE,aAAa,EAClC,yBAAyB,EAAE,YAAY,EACvC,iBAAiB,EAAE,QAAQ,EAC3B,sBAAsB,EAAE,SAAS,EACjC,oBAAoB,EAAE,QAAQ,EAC9B,GAAG,IAAI,EACR,GAAG,MAAM,CAAC;oBACX,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,GAAG,CAAC,CAAC;oBACrD,MAAM,iBAAiB,GAAG,MAAM,WAAW,CAAC;wBAC1C,QAAQ,EAAE,MAAM,CAAC,EAAE;wBACnB,gBAAgB;wBAChB,mBAAmB;wBACnB,yBAAyB;wBACzB,aAAa;qBACd,CAAC,CAAC;oBACH,IAAI,GAAG;wBACL,GAAG,IAAI;wBACP,gBAAgB;wBAChB,cAAc,EAAE,MAAM,CAAC,cAAc,GAAG,CAAC;wBACzC,QAAQ,EAAE,OAAO,CAAC,QAAQ;wBAC1B,SAAS,EAAE,GAAG;wBACd,KAAK,EAAE,OAAO;4BACZ,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,UAAU;gCAC/B,CAAC,CAAC,UAAU;gCACZ,CAAC,CAAC,YAAY;4BAChB,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,UAAU;gCAC/B,CAAC,CAAC,MAAM;gCACR,CAAC,CAAC,YAAY;wBAClB,GAAG,CAAC,OAAO;4BACT,CAAC,CAAC;gCACE,aAAa;gCACb,mBAAmB;gCACnB,yBAAyB;gCACzB,iBAAiB;gCACjB,sBAAsB,EAAE,MAAM,CAAC,QAAQ;gCACvC,oBAAoB,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;gCACvC,QAAQ,EAAE,QAAS;gCACnB,OAAO,EAAE,OAAQ;gCACjB,eAAe,EAAE,MAAM,CAAC,eAAe,GAAG,CAAC;6BAC5C;4BACH,CAAC,CAAC,EAAE,UAAU,EAAE,wBAAwB,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;wBAChE,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;4BACtD,GAAG,WAAW;4BACd,cAAc,EAAE,+BAA+B,CAAC,WAAW,CAAC;yBAC7D,CAAC,CAAC;wBACH,qBAAqB,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,CAC7C,CAAC,WAAW,EAAE,EAAE,CACd,+BAA+B,CAAC,WAAW,CAAC,KAAK,WAAW,CAC/D;qBACF,CAAC;oBACF,IAAI,OAAO,IAAI,MAAM,CAAC,eAAe,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;wBAChE,IAAI,GAAG;4BACL,GAAG,IAAI;4BACP,eAAe,EAAE,MAAM,CAAC,eAAe;4BACvC,KAAK,EAAE,MAAM;4BACb,UAAU,EAAE,sBAAsB;yBACnC,CAAC;oBACJ,CAAC;yBAAM,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;wBACtD,IAAI,GAAG;4BACL,IAAI,EAAE,kBAAkB;4BACxB,SAAS,EAAE,MAAM,CAAC,EAAE;4BACpB,EAAE,EAAE,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC,EAAE;4BACtD,QAAQ,EAAE,MAAM,CAAC,EAAE;4BACnB,gBAAgB;4BAChB,iBAAiB;4BACjB,cAAc,EAAE,CAAC;4BACjB,sBAAsB,EAAE,MAAM,CAAC,QAAQ;4BACvC,SAAS,EAAE,GAAG;4BACd,QAAQ,EAAE,IAAI,IAAI,CAChB,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,mBAAmB,CACpD,CAAC,WAAW,EAAE;4BACf,QAAQ,EAAE,OAAO,CAAC,QAAQ;4BAC1B,QAAQ,EAAE,QAAS;4BACnB,OAAO,EAAE,OAAQ;4BACjB,MAAM,EAAE,SAAS;4BACjB,KAAK,EAAE,OAAO;4BACd,aAAa,EAAE,EAAE;4BACjB,eAAe,EAAE,CAAC;4BAClB,aAAa,EAAE,CAAC;4BAChB,mBAAmB,EAAE,CAAC;yBACvB,CAAC;oBACJ,CAAC;gBACH,CAAC;gBACD,MAAM,mBAAmB,GACvB,IAAI,CAAC,QAAQ,KAAK,UAAU;oBAC5B,CAAC,IAAI,CAAC,gBAAgB,KAAK,MAAM,CAAC,gBAAgB;wBAChD,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ;wBACjC,MAAM,CAAC,KAAK,KAAK,YAAY,CAAC,CAAC;gBACnC,IAAI,mBAAmB;oBACrB,IAAI,GAAG;wBACL,GAAG,IAAI;wBACP,uBAAuB,EACrB,yCAAyC,CAAC,MAAM,CAAC;qBACpD,CAAC;qBACC,IAAI,OAAO,IAAI,IAAI,CAAC,uBAAuB,KAAK,SAAS;oBAC5D,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,uBAAuB,EAAE,CAAC,EAAE,CAAC;gBACjD,MAAM,QAAQ,GAAG,mBAAmB;oBAClC,CAAC,CAAC,MAAM,IAAI,CAAC,wBAAwB,CAAC;wBAClC,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,cAAc,EAAE,MAAM;wBACtB,UAAU,EAAE,IAAI;wBAChB,MAAM,EAAE,sBAAsB;qBAC/B,CAAC;oBACJ,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;gBACtC,MAAM,WAAW,GAAG,sBAAsB,CACxC,MAAM,CAAC,IAAI,EACX,QAAQ,CAAC,YAAY,CACtB,CAAC;gBACF,IAAI,CAAC;oBACH,OAAO,CAAC,IAAI,CAAC,CAAC;oBACd,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;wBACvB,OAAO,CAAC,IAAI,CAAC,CAAC;wBACd,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;oBACpD,CAAC;;wBAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;gBAChD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,CAAC,KAAK,YAAY,qBAAqB,CAAC,IAAI,IAAI,KAAK,SAAS;wBACjE,MAAM,KAAK,CAAC;oBACd,IAAI,GAAG,SAAS,CAAC;oBACjB,IAAI,GAAG;wBACL,GAAG,IAAI;wBACP,KAAK,EAAE,MAAM;wBACb,UAAU,EAAE,sBAAsB;wBAClC,eAAe,EAAE,MAAM,CAAC,eAAe;qBACxC,CAAC;oBACF,OAAO,CAAC,IAAI,CAAC,CAAC;oBACd,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;gBACzC,CAAC;gBACD,MAAM,OAAO,GAAwB;oBACnC,aAAa,CAAC,MAAM,CAAC;oBACrB,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC;oBACjC,GAAG,QAAQ,CAAC,OAAO;iBACpB,CAAC;gBACF,IAAI,IAAI,KAAK,SAAS;oBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBACxE,OAAO,CAAC,IAAI,CACV,IAAI,CAAC,KAAK,CACR,OAAO,EACP,MAAM,EACN,OAAO,EACP,GAAG,EACH,uCAAuC,CACxC,EACD,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CACrC,CAAC;gBACF,MAAM,iBAAiB,GACrB,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAC/D,iBAAiB,EAAE,EAAE,CAAC;gBACtB,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;gBAClC,IAAI,QAAQ;oBACV,UAAU,CACR,MAAM,EACN,kBAAkB,CAAC,yBAAyB,EAC5C,OAAO,CACR,CAAC;gBACJ,sEAAsE;gBACtE,wEAAwE;gBACxE,IACE,OAAO;oBACP,CAAC,SAAS,CAAC,OAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;wBACnD,MAAM,CAAC,GAAG,EAAE;wBACZ,CAAC,QAAS,CAAC,IAAI,KAAK,aAAa;4BAC/B,SAAS,CAAC,QAAS,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC;gCACrD,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;oBAEpB,MAAM,IAAI,wBAAwB,CAChC,4CAA4C,CAC7C,CAAC;gBACJ,QAAQ,EAAE,MAAM,EAAE,CAAC;gBACnB,IAAI,CAAC,MAAM,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;oBAClE,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;oBAClC,IAAI,QAAQ;wBACV,UAAU,CACR,MAAM,EACN,kBAAkB,CAAC,yBAAyB,EAC5C,OAAO,CACR,CAAC;oBACJ,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;YACH,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CACrC,MAAM,EACN,IAAI,EACJ,OAAO,EACP,OAAO,EACP,IAAI,CACL,CAAC;YACF,IAAI,QAAQ,KAAK,IAAI;gBAAE,OAAO,QAAQ,CAAC;YACvC,MAAM,IAAI,wBAAwB,EAAE,CAAC;QACvC,CAAC;QAED,2BAA2B,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CACxD,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC;QAC7C,yBAAyB,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CACtD,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC;QAE5C,KAAK,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ;YAC1C,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC;YACnC,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YAChE,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC3B,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC,mBAAmB,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;gBACvE,MAAM,MAAM,GAAG,MAAM,4BAA4B,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBACrE,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;gBAChE,IAAI,MAAM,KAAK,IAAI;oBAAE,MAAM,IAAI,wBAAwB,EAAE,CAAC;gBAC1D,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACpD,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,YAAY;oBACrC,UAAU,CACR,MAAM,EACN,kBAAkB,CAAC,yBAAyB,EAC5C,OAAO,CACR,CAAC;gBACJ,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;oBACvC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;wBAC/B,SAAS,EAAE,QAAQ;wBACnB,EAAE,EAAE,QAAQ;qBACb,CAAC,CAAC;oBACH,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;oBAChE,IAAI,MAAM,EAAE,IAAI,KAAK,QAAQ;wBAAE,MAAM,IAAI,wBAAwB,EAAE,CAAC;gBACtE,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,4BAA4B,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBACrE,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;gBAChE,IAAI,MAAM,EAAE,OAAO,KAAK,MAAM,CAAC,OAAO;oBAAE,SAAS;gBACjD,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACpD,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,YAAY;oBACrC,UAAU,CACR,MAAM,EACN,kBAAkB,CAAC,yBAAyB,EAC5C,OAAO,CACR,CAAC;gBACJ,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAChC,CAAC;YACD,MAAM,IAAI,wBAAwB,EAAE,CAAC;QACvC,CAAC;QAED,KAAK,CAAC,mBAAmB,CAAC,MAAM,EAAE,GAAG;YACnC,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC;YACnC,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YAChE,MAAM,KAAK,GAAG,QAAQ,CACpB,MAAM,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC,CAC7C,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YACjC,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;YACvD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC,mBAAmB,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;gBACvE,MAAM,MAAM,GAAG,MAAM,4BAA4B,CAC/C,OAAO,EACP,KAAK,CAAC,QAAQ,CACf,CAAC;gBACF,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;gBAChE,IAAI,MAAM,KAAK,IAAI;oBAAE,MAAM,IAAI,wBAAwB,EAAE,CAAC;gBAC1D,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACpD,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,YAAY;oBACrC,UAAU,CACR,MAAM,EACN,kBAAkB,CAAC,yBAAyB,EAC5C,OAAO,CACR,CAAC;gBACJ,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,YAAY,CACrC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAC3D,CAAC;gBACF,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;gBAChE,IAAI,IAAI,EAAE,KAAK,CAAC,IAAI,KAAK,kBAAkB;oBACzC,MAAM,IAAI,wBAAwB,EAAE,CAAC;gBACvC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACpD,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAClD,IACE,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,YAAY;oBACnC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,YAAY;oBAClC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS;wBACjC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,KAAK,UAAU,CAAC;oBAE/C,UAAU,CACR,MAAM,EACN,kBAAkB,CAAC,yBAAyB,EAC5C,OAAO,CACR,CAAC;gBACJ,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;oBACvC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;wBAC/B,SAAS,EAAE,KAAK,CAAC,QAAQ;wBACzB,EAAE,EAAE,QAAQ;qBACb,CAAC,CAAC;oBACH,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;oBAChE,IAAI,MAAM,EAAE,IAAI,KAAK,QAAQ;wBAAE,MAAM,IAAI,wBAAwB,EAAE,CAAC;gBACtE,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,4BAA4B,CAC/C,OAAO,EACP,KAAK,CAAC,QAAQ,CACf,CAAC;gBACF,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;gBAChE,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,YAAY,CAC3C,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAC3D,CAAC;gBACF,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;gBAChE,IACE,MAAM,EAAE,OAAO,KAAK,MAAM,CAAC,OAAO;oBAClC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC,OAAO;oBAEpC,SAAS;gBACX,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACpD,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAClD,IACE,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,YAAY;oBACnC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,YAAY;oBAClC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS;wBACjC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,KAAK,UAAU,CAAC;oBAE/C,UAAU,CACR,MAAM,EACN,kBAAkB,CAAC,yBAAyB,EAC5C,OAAO,CACR,CAAC;gBACJ,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC9B,CAAC;YACD,MAAM,IAAI,wBAAwB,EAAE,CAAC;QACvC,CAAC;KACF,CAAC;IACF,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;AAC/B,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { EngineeringMutationOptions } from "./engineering-types.js";
2
+ /** Operation-local host callbacks and caller cancellation, captured once. */
3
+ export declare function engineeringMutationBoundary(options?: EngineeringMutationOptions): {
4
+ signal: AbortSignal | undefined;
5
+ ensure: () => void;
6
+ verify(): Promise<() => void>;
7
+ } | undefined;
8
+ export type EngineeringMutationBoundary = NonNullable<ReturnType<typeof engineeringMutationBoundary>>;
9
+ //# sourceMappingURL=engineering-mutation-guard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engineering-mutation-guard.d.ts","sourceRoot":"","sources":["../src/engineering-mutation-guard.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAEzE,6EAA6E;AAC7E,wBAAgB,2BAA2B,CACzC,OAAO,CAAC,EAAE,0BAA0B;;kBAwBjB,IAAI;cAML,OAAO,CAAC,MAAM,IAAI,CAAC;cA6CtC;AACD,MAAM,MAAM,2BAA2B,GAAG,WAAW,CACnD,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAC/C,CAAC"}
@@ -0,0 +1,71 @@
1
+ import { fields } from "./assistant-turn-records.js";
2
+ import { SupportDeskConflictError } from "./index.js";
3
+ /** Operation-local host callbacks and caller cancellation, captured once. */
4
+ export function engineeringMutationBoundary(options) {
5
+ if (options === undefined)
6
+ return undefined;
7
+ fields(options, "Engineering mutation options", [], ["signal", "verifyBeforeCommit"]);
8
+ const signal = options.signal;
9
+ const guard = options.verifyBeforeCommit;
10
+ if (guard !== undefined && typeof guard !== "function")
11
+ throw new TypeError("Engineering mutation guard must be callable");
12
+ if (signal !== undefined &&
13
+ (signal === null ||
14
+ typeof signal !== "object" ||
15
+ typeof signal.aborted !== "boolean" ||
16
+ typeof signal.addEventListener !== "function" ||
17
+ typeof signal.removeEventListener !== "function"))
18
+ throw new TypeError("Engineering mutation requires an AbortSignal");
19
+ const aborted = () => new DOMException("Engineering mutation aborted", "AbortError");
20
+ const ensure = () => {
21
+ if (signal?.aborted)
22
+ throw aborted();
23
+ };
24
+ return {
25
+ signal,
26
+ ensure,
27
+ async verify() {
28
+ ensure();
29
+ let onAbort;
30
+ let proof;
31
+ try {
32
+ const result = Promise.resolve().then(() => {
33
+ ensure();
34
+ return guard?.();
35
+ });
36
+ proof =
37
+ signal === undefined
38
+ ? await result
39
+ : await Promise.race([
40
+ result,
41
+ new Promise((_resolve, reject) => {
42
+ onAbort = () => reject(aborted());
43
+ signal.addEventListener("abort", onAbort, { once: true });
44
+ if (signal.aborted)
45
+ onAbort();
46
+ }),
47
+ ]);
48
+ }
49
+ finally {
50
+ if (signal !== undefined && onAbort !== undefined)
51
+ signal.removeEventListener("abort", onAbort);
52
+ }
53
+ ensure();
54
+ return () => {
55
+ ensure();
56
+ if (proof !== undefined) {
57
+ if (typeof proof !== "function")
58
+ throw new SupportDeskConflictError("Engineering mutation proof is not current");
59
+ const current = proof();
60
+ if (current !== true) {
61
+ // Observe a malformed async return while refusing it synchronously.
62
+ void Promise.resolve(current).catch(() => { });
63
+ throw new SupportDeskConflictError("Engineering mutation proof is not current");
64
+ }
65
+ }
66
+ ensure();
67
+ };
68
+ },
69
+ };
70
+ }
71
+ //# sourceMappingURL=engineering-mutation-guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engineering-mutation-guard.js","sourceRoot":"","sources":["../src/engineering-mutation-guard.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"engineering-policy.d.ts","sourceRoot":"","sources":["../src/engineering-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,UAAU,EAChB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAGL,KAAK,KAAK,EAGX,MAAM,qBAAqB,CAAC;AAgB7B,OAAO,KAAK,EACV,4BAA4B,EAE5B,qBAAqB,EACrB,uBAAuB,EACvB,yBAAyB,EAI1B,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,4BAA4B,CAAC,EAAE,MAAM,CAAC;CAChD;AACD,MAAM,WAAW,+BAAgC,SAAQ,wBAAwB;IAC/E,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CACvC;AAED,UAAU,gBAAiB,SAAQ,yBAAyB;IAC1D,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC;CACvB;AACD,UAAU,mBAAmB;IAC3B,QAAQ,CAAC,IAAI,EAAE,4BAA4B,CAAC;IAC5C,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IACzC,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;CAChD;AACD,UAAU,iBAAiB;IACzB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;CAC5B;AACD,MAAM,MAAM,uBAAuB,GACjC,gBAAgB,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;AAE7D,eAAO,MAAM,6BAA6B;sBAC/B,oCAAoC;uBACnC,sCAAsC;EACvC,CAAC;AA0PZ,gFAAgF;AAChF,eAAO,MAAM,wBAAwB,6EAwBjC,CAAC;AAEL,eAAO,MAAM,sBAAsB,0DAejC,CAAC;AAsCH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,+BAA+B,GACvC;IACD,QAAQ,CAAC,WAAW,EAAE,4BAA4B,CAAC;IACnD,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC;CACpD,CA4YA"}
1
+ {"version":3,"file":"engineering-policy.d.ts","sourceRoot":"","sources":["../src/engineering-policy.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,UAAU,EAChB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAGL,KAAK,KAAK,EAGX,MAAM,qBAAqB,CAAC;AAgB7B,OAAO,KAAK,EACV,4BAA4B,EAG5B,qBAAqB,EACrB,uBAAuB,EACvB,yBAAyB,EAI1B,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,4BAA4B,CAAC,EAAE,MAAM,CAAC;CAChD;AACD,MAAM,WAAW,+BAAgC,SAAQ,wBAAwB;IAC/E,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CACvC;AAED,UAAU,gBAAiB,SAAQ,yBAAyB;IAC1D,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC;CACvB;AACD,UAAU,mBAAmB;IAC3B,QAAQ,CAAC,IAAI,EAAE,4BAA4B,CAAC;IAC5C,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IACzC,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;CAChD;AACD,UAAU,iBAAiB;IACzB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;CAC5B;AACD,MAAM,MAAM,uBAAuB,GACjC,gBAAgB,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;AAE7D,eAAO,MAAM,6BAA6B;sBAC/B,oCAAoC;uBACnC,sCAAsC;EACvC,CAAC;AA0PZ,gFAAgF;AAChF,eAAO,MAAM,wBAAwB,6EAwBjC,CAAC;AAEL,eAAO,MAAM,sBAAsB,0DAejC,CAAC;AAsCH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,+BAA+B,GACvC;IACD,QAAQ,CAAC,WAAW,EAAE,4BAA4B,CAAC;IACnD,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC;CACpD,CAoZA"}
@@ -1,3 +1,4 @@
1
+ import { engineeringMutationBoundary } from "./engineering-mutation-guard.js";
1
2
  import { auditEvent, auditRecordId, defineAudit, } from "@pegma/audit";
2
3
  import { hasPermission } from "@pegma/authorization-core";
3
4
  import { defineCollection, } from "@pegma/storage-core";
@@ -320,7 +321,8 @@ export function createEngineeringPolicyServices(options) {
320
321
  throw new SupportDeskConflictError("Engineering policy command ID reused with different input");
321
322
  return result(previous.result);
322
323
  };
323
- const mutate = async (access, raw, disable) => {
324
+ const mutate = async (access, raw, disable, control) => {
325
+ const mutation = engineeringMutationBoundary(control);
324
326
  const actorId = text(access.principalId, "principalId");
325
327
  authorizeManage(access, actorId);
326
328
  const input = command(raw, !disable);
@@ -340,6 +342,7 @@ export function createEngineeringPolicyServices(options) {
340
342
  authorizeManage(access, actorId);
341
343
  return previous;
342
344
  }
345
+ mutation?.ensure();
343
346
  const head = await readHead();
344
347
  const current = head === null ? await empty() : snapshot(head.value);
345
348
  if (current.generation !== input.expectedGeneration)
@@ -415,7 +418,9 @@ export function createEngineeringPolicyServices(options) {
415
418
  audit,
416
419
  { action: "insert", value: receipt },
417
420
  ];
421
+ const assertHostCurrent = mutation === undefined ? undefined : await mutation.verify();
418
422
  authorizeManage(access, actorId);
423
+ assertHostCurrent?.();
419
424
  if ((await records.transact(partition, actions)).committed) {
420
425
  authorizeManage(access, actorId);
421
426
  return accepted;
@@ -570,8 +575,8 @@ export function createEngineeringPolicyServices(options) {
570
575
  };
571
576
  const application = Object.freeze({
572
577
  readRepositoryPolicy: read,
573
- putRepositoryPolicy: (access, input) => mutate(access, input, false),
574
- disableEngineeringExports: (access, input) => mutate(access, input, true),
578
+ putRepositoryPolicy: (access, input, control) => mutate(access, input, false, control),
579
+ disableEngineeringExports: (access, input, control) => mutate(access, input, true, control),
575
580
  pruneRepositoryPolicyHistory: prune,
576
581
  });
577
582
  return Object.freeze({ application, resolve: read });
@@ -1 +1 @@
1
- {"version":3,"file":"engineering-policy.js","sourceRoot":"","sources":["../src/engineering-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,aAAa,EACb,WAAW,GAEZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAsB,MAAM,2BAA2B,CAAC;AAE9E,OAAO,EACL,gBAAgB,GAKjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,6BAA6B,EAC7B,wBAAwB,EACxB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,SAAS,EACT,YAAY,EACZ,MAAM,EACN,WAAW,EACX,OAAO,EACP,IAAI,EACJ,SAAS,GACV,MAAM,6BAA6B,CAAC;AA6CrC,MAAM,CAAC,MAAM,6BAA6B,GAAG,MAAM,CAAC,MAAM,CAAC;IACzD,OAAO,EAAE,oCAAoC;IAC7C,QAAQ,EAAE,sCAAsC;CACxC,CAAC,CAAC;AAEZ,MAAM,SAAS,GAAG,UAAU,CAAC;AAC7B,MAAM,OAAO,GAAc,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;AACtE,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAClC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AACnC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAE9B,SAAS,OAAO,CAAC,KAAc,EAAE,KAAa;IAC5C,IAAI,OAAO,KAAK,KAAK,SAAS;QAC5B,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,kBAAkB,CAAC,CAAC;IAClD,OAAO,KAAK,CAAC;AACf,CAAC;AACD,SAAS,IAAI,CAAC,KAAc,EAAE,KAAa;IACzC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;QAC5D,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,gCAAgC,CAAC,CAAC;IAChE,OAAO,KAAK,CAAC;AACf,CAAC;AACD,SAAS,aAAa,CACpB,KAAc,EACd,KAAa,EACb,OAAe,EACf,UAAkB;IAElB,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC3D,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,CAC9B,CAAC;IACF,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM;QACxC,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,iBAAiB,CAAC,CAAC;IACjD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC;AACD,SAAS,UAAU,CAAC,KAAc;IAChC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,wBAAwB,EAAE;QACpD,cAAc;QACd,OAAO;QACP,MAAM;QACN,YAAY;QACZ,kBAAkB;QAClB,SAAS;QACT,WAAW;QACX,SAAS;QACT,eAAe;QACf,kBAAkB;QAClB,iBAAiB;QACjB,SAAS;KACV,CAAC,CAAC;IACH,IAAI,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS;QACjE,MAAM,IAAI,SAAS,CAAC,iDAAiD,CAAC,CAAC;IACzE,IAAI,KAAK,CAAC,eAAe,KAAK,mBAAmB;QAC/C,MAAM,IAAI,SAAS,CAAC,4CAA4C,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;IACjD,KAAK,MAAM,UAAU,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,IAAI,CAAC;QAClD,IAAI,UAAU,CAAC,IAAI,EAAE,KAAK,UAAU,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC;YAChE,MAAM,IAAI,SAAS,CACjB,wEAAwE,CACzE,CAAC;IACN,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAC3C,MAAM,IAAI,SAAS,CAAC,mDAAmD,CAAC,CAAC;IAC3E,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,YAAY;QACZ,KAAK;QACL,IAAI;QACJ,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,gBAAgB,EAAE,IAAI,CACpB,KAAK,CAAC,gBAAgB,EACtB,6BAA6B,EAC7B,KAAK,CACN;QACD,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,oBAAoB,EAAE,KAAK,CAAC;QACzD,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,sBAAsB,EAAE,KAAK,CAAC;QAC/D,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,oBAAoB,EAAE,KAAK,CAAC;QACzD,aAAa,EAAE,aAAa,CAC1B,KAAK,CAAC,aAAa,EACnB,0BAA0B,EAC1B,EAAE,EACF,GAAG,CACJ;QACD,gBAAgB,EAAE,aAAa,CAC7B,KAAK,CAAC,gBAAgB,EACtB,6BAA6B,EAC7B,CAAC,EACD,GAAG,CACJ;QACD,eAAe,EAAE,mBAAmB;QACpC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AACD,SAAS,MAAM,CAAC,KAAc;IAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,oBAAoB,EAAE;QAChD,SAAS;QACT,cAAc;KACf,CAAC,CAAC;IACH,MAAM,YAAY,GAAG,SAAS,CAC5B,KAAK,CAAC,YAAY,EAClB,iCAAiC,EACjC,uBAAuB,CACxB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAClB,IACE,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI;QAC3D,YAAY,CAAC,MAAM;QAEnB,MAAM,IAAI,SAAS,CACjB,6DAA6D,CAC9D,CAAC;IACJ,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,4BAA4B,CAAC;QAC7D,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;KAC1C,CAAC,CAAC;AACL,CAAC;AACD,SAAS,MAAM,CAAC,KAAc;IAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,2BAA2B,EAAE;QACvD,YAAY;QACZ,YAAY;QACZ,SAAS;KACV,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,+BAA+B,CAAC;QACtE,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC;QAChD,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,mCAAmC,CAAC;KACrE,CAAC,CAAC;AACL,CAAC;AACD,SAAS,MAAM,CAAC,KAAc;IAC5B,MAAM,QAAQ,GAAG,MAAM,CACrB,KAAK,EACL,2BAA2B,EAC3B,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,EAC3B;QACE,YAAY;QACZ,YAAY;QACZ,QAAQ;QACR,aAAa;QACb,QAAQ;QACR,OAAO;QACP,YAAY;KACb,CACF,CAAC;IACF,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS;QAClC,MAAM,IAAI,SAAS,CAAC,oDAAoD,CAAC,CAAC;IAC5E,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,8BAA8B,EAAE,KAAK,CAAC,CAAC;IACzD,IAAI,QAAQ,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;QAC3C,MAAM,CAAC,KAAK,EAAE,yBAAyB,EAAE;YACvC,MAAM;YACN,WAAW;YACX,IAAI;YACJ,YAAY;YACZ,YAAY;YACZ,QAAQ;SACT,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE;YAC5B,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QAC9D,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,oBAAoB;YAC1B,SAAS;YACT,EAAE,EAAE,QAAQ;YACZ,UAAU,EAAE,OAAO,CACjB,QAAQ,CAAC,UAAU,EACnB,+BAA+B,EAC/B,CAAC,CACF;YACD,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC;YACnD,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;SAChC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,KAAK,4BAA4B,EAAE,CAAC;QACnD,MAAM,CACJ,KAAK,EACL,4BAA4B,EAC5B,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,CAAC,EACpD,CAAC,YAAY,CAAC,CACf,CAAC;QACF,IAAI,CAAE,QAAQ,CAAC,EAAa,CAAC,UAAU,CAAC,UAAU,CAAC;YACjD,MAAM,IAAI,SAAS,CAAC,yCAAyC,CAAC,CAAC;QACjE,IAAI,CAAE,QAAQ,CAAC,EAAa,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,kBAAkB,CAAC,CAAC;QAC3E,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACzC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,sCAAsC,EAAE,CAAC,CAAC,CAAC;QACxE,IAAI,QAAQ,CAAC,UAAU,KAAK,SAAS;YACnC,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;QAC9D,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,4BAA4B;YAClC,SAAS;YACT,EAAE,EAAE,QAAQ,CAAC,EAAY;YACzB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,qBAAqB,CAAC;YAC9D,MAAM,EAAE,QAAQ;YAChB,GAAG,CAAC,QAAQ,CAAC,UAAU,KAAK,SAAS;gBACnC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAsC,EAAE,CAAC;SACrE,CAAC,CAAC;IACL,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC9B,MAAM,CAAC,KAAK,EAAE,0BAA0B,EAAE;YACxC,MAAM;YACN,WAAW;YACX,IAAI;YACJ,OAAO;SACR,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,KAAmB,CAAC,CAAC;QACvD,IACE,KAAK,CAAC,OAAO,KAAK,SAAS;YAC3B,QAAQ,CAAC,EAAE,KAAK,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YACvC,CAAC,MAAM,CAAC,MAAM,CAAC,6BAA6B,CAAC,CAAC,QAAQ,CACpD,KAAK,CAAC,MAAsD,CAC7D;YAED,MAAM,IAAI,SAAS,CAAC,4CAA4C,CAAC,CAAC;QACpE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,wBAAwB,CAAC,CAAC;QACzC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,WAAW;YAClC,MAAM,IAAI,SAAS,CACjB,sDAAsD,CACvD,CAAC;QACJ,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,0BAA0B,CAAC,CAAC;QAC1D,SAAS,CAAC,KAAK,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,kCAAkC,EAAE;YACxE,WAAW;YACX,eAAe;YACf,YAAY;YACZ,YAAY;YACZ,SAAS;SACV,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,SAAS,KAAK,KAAK,CAAC,EAAE,IAAI,OAAO,CAAC,UAAU,KAAK,KAAK,CAAC,QAAQ;YACzE,MAAM,IAAI,SAAS,CACjB,+DAA+D,CAChE,CAAC;QACJ,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,4BAA4B,CAAC,CAAC;QAC1D,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAAC;QACpD,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,sBAAsB,CAAC,CAAC;QACjD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,OAAO;YACb,SAAS;YACT,EAAE,EAAE,QAAQ,CAAC,EAAY;YACzB,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IACD,MAAM,IAAI,SAAS,CAAC,wCAAwC,CAAC,CAAC;AAChE,CAAC;AACD,SAAS,MAAM,CAAC,KAA8B;IAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,OAAO,GAAG;QACd,SAAS;QACT,EAAE,EAAE,UAAU,CAAC,EAAE;QACjB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;KACjC,CAAC;IACF,IAAI,YAAY,CAAC,OAAO,CAAC,GAAG,kBAAkB;QAC5C,MAAM,IAAI,qBAAqB,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,CAAC;IAC3E,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,gFAAgF;AAChF,MAAM,CAAC,MAAM,wBAAwB,GACnC,gBAAgB,CAA0B;IACxC,IAAI,EAAE,oCAAoC;IAC1C,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;IAC9D,KAAK,EAAE;QACL,MAAM,EAAE,MAAM;QACd,MAAM,CAAC,OAAO;YACZ,IACE,OAAO,CAAC,SAAS,KAAK,SAAS;gBAC/B,OAAO,OAAO,CAAC,EAAE,KAAK,QAAQ;gBAC9B,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;gBAEhC,MAAM,IAAI,SAAS,CAAC,gDAAgD,CAAC,CAAC;YACxE,IAAI,YAAY,CAAC,OAAO,CAAC,GAAG,kBAAkB;gBAC5C,MAAM,IAAI,qBAAqB,CAC7B,mBAAmB,EACnB,kBAAkB,CACnB,CAAC;YACJ,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YACjD,IAAI,OAAO,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE;gBAC3B,MAAM,IAAI,SAAS,CAAC,yCAAyC,CAAC,CAAC;YACjE,OAAO,OAAO,CAAC;QACjB,CAAC;KACF;CACF,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,sBAAsB,GAAG,WAAW,CAA0B;IACzE,UAAU,EAAE,wBAAwB;IACpC,QAAQ,CAAC,KAAK;QACZ,OAAO,MAAM,CAAC;YACZ,IAAI,EAAE,OAAO;YACb,SAAS,EAAE,KAAK,CAAC,OAAO;YACxB,EAAE,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IACD,OAAO,CAAC,KAAK;QACX,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;YAAE,OAAO,IAAI,CAAC;QACxC,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QACjC,OAAO,UAAU,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/D,CAAC;CACF,CAAC,CAAC;AAEH,SAAS,eAAe,CACtB,QAAmC;IAEnC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO;KACjC,CAAC,CAAC;AACL,CAAC;AACD,SAAS,QAAQ,CAAC,IAA+B;IAC/C,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;KAC5B,CAAC,CAAC;AACL,CAAC;AACD,SAAS,OAAO,CACd,KAAc,EACd,GAAY;IAEZ,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,4BAA4B,EAAE;QACxD,WAAW;QACX,eAAe;QACf,oBAAoB;QACpB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3B,CAAC,CAAC;IACH,MAAM,MAAM,GAAG;QACb,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC;QAC7C,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,eAAe,CAAC;QACzD,kBAAkB,EAAE,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;KAC5E,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,CAClB,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAC3D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,OAAwC;IAKxC,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;IACnE,MAAM,eAAe,GAAG,OAAO,CAC7B,OAAO,CAAC,eAAe,IAAI,CAAC,EAC5B,mCAAmC,EACnC,CAAC,EACD,uBAAuB,CACxB,CAAC;IACF,MAAM,UAAU,GAAG,OAAO,CACxB,OAAO,CAAC,UAAU,IAAI,GAAG,EACzB,8BAA8B,EAC9B,CAAC,EACD,KAAK,CACN,CAAC;IACF,MAAM,WAAW,GAAG,OAAO,CACzB,OAAO,CAAC,mBAAmB,IAAI,CAAC,EAChC,qBAAqB,EACrB,CAAC,EACD,EAAE,CACH,CAAC;IACF,MAAM,4BAA4B,GAAG,OAAO,CAC1C,OAAO,CAAC,4BAA4B,IAAI,aAAa,EACrD,gDAAgD,EAChD,CAAC,CACF,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,MAAqB,EAAE,OAAgB,EAAQ,EAAE;QACtE,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAC7D,IAAI,OAAO,KAAK,SAAS,IAAI,YAAY,KAAK,OAAO;YACnD,MAAM,IAAI,wBAAwB,CAAC,kCAAkC,CAAC,CAAC;QACzE,IAAI,aAAa,CAAC,MAAM,EAAE,kBAAkB,CAAC,kBAAkB,CAAC;YAAE,OAAO;QACzE,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,kBAAkB,CAAC,qBAAqB,CAAC;YAClE,MAAM,IAAI,6BAA6B,CACrC,kBAAkB,CAAC,qBAAqB,CACzC,CAAC;QACJ,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,kBAAkB,CAAC,SAAS,CAAC;YACtD,MAAM,IAAI,6BAA6B,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC1E,CAAC,CAAC;IACF,MAAM,eAAe,GAAG,CAAC,MAAqB,EAAE,OAAgB,EAAQ,EAAE;QACxE,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAC7D,IAAI,OAAO,KAAK,SAAS,IAAI,YAAY,KAAK,OAAO;YACnD,MAAM,IAAI,wBAAwB,CAAC,kCAAkC,CAAC,CAAC;QACzE,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,kBAAkB,CAAC,uBAAuB,CAAC;YACpE,MAAM,IAAI,6BAA6B,CACrC,kBAAkB,CAAC,uBAAuB,CAC3C,CAAC;QACJ,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,kBAAkB,CAAC,SAAS,CAAC;YACtD,MAAM,IAAI,6BAA6B,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC1E,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,KAAK,IAAwC,EAAE;QAC3D,MAAM,KAAK,GAAgC,MAAM,CAAC,MAAM,CAAC;YACvD,OAAO,EAAE,KAAK;YACd,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;SAChC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,UAAU,EAAE,CAAC;YACb,UAAU,EAAE,MAAM,WAAW,CAAC,KAAK,CAAC;YACpC,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;IACL,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;QAC1B,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACjD,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC/B,IACE,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,oBAAoB;YACxC,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,CAAC,MAAM,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAEhE,MAAM,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAC;QACtE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;IACtD,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,KAAK,EAClB,EAAU,EACV,WAAmB,EACsB,EAAE;QAC3C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;QACvE,IAAI,QAAQ,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACnC,IACE,QAAQ,CAAC,IAAI,KAAK,4BAA4B;YAC9C,QAAQ,CAAC,WAAW,KAAK,WAAW;YAEpC,MAAM,IAAI,wBAAwB,CAChC,2DAA2D,CAC5D,CAAC;QACJ,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,KAAK,EAClB,MAAqB,EACrB,GAA2D,EAC3D,OAAgB,EACkB,EAAE;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QACxD,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC;QACrC,IACE,CAAC,OAAO;YACP,KAAqC,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM;gBAC/D,eAAe;YAEjB,MAAM,IAAI,qBAAqB,CAC7B,iCAAiC,EACjC,eAAe,CAChB,CAAC;QACJ,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC;YACpC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK;YACtC,OAAO;YACP,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QACH,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,WAAW,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;YAC1D,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YAC5D,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACtB,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBACjC,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,QAAQ,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrE,IAAI,OAAO,CAAC,UAAU,KAAK,KAAK,CAAC,kBAAkB;gBACjD,MAAM,IAAI,wBAAwB,CAChC,uCAAuC,CACxC,CAAC;YACJ,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACvC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBACjC,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;YAClC,CAAC;YACD,MAAM,cAAc,GAAG,OAAO,CAC5B,OAAO,CAAC,UAAU,GAAG,CAAC,EACtB,+BAA+B,EAC/B,CAAC,CACF,CAAC;YACF,MAAM,UAAU,GAAG,OAAO;gBACxB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;gBACtD,CAAC,CAAE,KAAqC,CAAC,MAAM,CAAC;YAClD,MAAM,IAAI,GAAqB;gBAC7B,IAAI,EAAE,oBAAoB;gBAC1B,SAAS;gBACT,EAAE,EAAE,QAAQ;gBACZ,UAAU,EAAE,cAAc;gBAC1B,UAAU,EAAE,MAAM,WAAW,CAAC,UAAU,CAAC;gBACzC,MAAM,EAAE,UAAU;aACnB,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,CAAC;YACb,wEAAwE;YACxE,2EAA2E;YAC3E,IAAI,UAAU,CAAC,OAAO;gBACpB,MAAM,CAAC;oBACL,GAAG,IAAI;oBACP,UAAU,EAAE,MAAM,CAAC,gBAAgB;oBACnC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;iBACzD,CAAC,CAAC;YACL,IAAI,UAAU,CAAC,OAAO,IAAI,cAAc,KAAK,MAAM,CAAC,gBAAgB;gBAClE,MAAM,IAAI,wBAAwB,CAChC,8DAA8D,CAC/D,CAAC;YACJ,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3C,MAAM,KAAK,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,aAAa,CAAC;YAClE,IAAI,IAAI,CAAC,MAAM,GAAG,KAAK,GAAG,OAAO;gBAC/B,MAAM,IAAI,qBAAqB,CAC7B,4BAA4B,EAC5B,UAAU,CACX,CAAC;YACJ,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YAChC,SAAS,CAAC,GAAG,EAAE,+BAA+B,CAAC,CAAC;YAChD,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;YACvC,MAAM,OAAO,GAAwB;gBACnC,IAAI,EAAE,4BAA4B;gBAClC,SAAS;gBACT,EAAE,EAAE,WAAW,KAAK,CAAC,SAAS,EAAE;gBAChC,WAAW,EAAE,WAAW;gBACxB,MAAM,EAAE,QAAQ;gBAChB,UAAU,EAAE,GAAG;aAChB,CAAC;YACF,MAAM,KAAK,GAAG,sBAAsB,CAAC,MAAM,CAAC;gBAC1C,EAAE,EAAE,KAAK,CAAC,SAAS;gBACnB,UAAU,EAAE,GAAG;gBACf,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE;gBAClD,MAAM,EAAE,OAAO;oBACb,CAAC,CAAC,6BAA6B,CAAC,QAAQ;oBACxC,CAAC,CAAC,6BAA6B,CAAC,OAAO;gBACzC,OAAO,EAAE,SAAS;gBAClB,QAAQ,EAAE,IAAI,CAAC,UAAU;gBACzB,OAAO,EAAE;oBACP,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;oBAClC,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;iBAC7B;aACF,CAAC,CAAC;YACH,MAAM,CAAC,OAAO,CAAC,CAAC;YAChB,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ;gBAC3B,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,CAAC;YAC3D,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,OAAO,GAAiD;gBAC5D,IAAI,KAAK,IAAI;oBACX,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE;oBACnC,CAAC,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE;gBACpE,KAAK;gBACL,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE;aACrC,CAAC;YACF,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,IAAI,CAAC,MAAM,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;gBAC3D,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBACjC,OAAO,QAAQ,CAAC;YAClB,CAAC;QACH,CAAC;QACD,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAC5D,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,MAAM,IAAI,wBAAwB,CAChC,6DAA6D,CAC9D,CAAC;IACJ,CAAC,CAAC;IACF,MAAM,IAAI,GAAyD,KAAK,EACtE,MAAM,EACN,EAAE;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QACxD,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/B,MAAM,IAAI,GAAG,MAAM,QAAQ,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrE,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/B,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IACF,MAAM,KAAK,GACT,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE;QACpB,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QACxD,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,MAAM,CACnB,GAAG,EACH,mCAAmC,EACnC,CAAC,OAAO,CAAC,EACT,CAAC,QAAQ,CAAC,CACX,CAAC;QACF,MAAM,KAAK,GAAG,OAAO,CACnB,MAAM,CAAC,KAAK,EACZ,kCAAkC,EAClC,CAAC,EACD,kBAAkB,CACnB,CAAC;QACF,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;YAClE,MAAM,IAAI,SAAS,CACjB,oDAAoD,CACrD,CAAC;QACJ,MAAM,GAAG,GAAG,SAAS,CACnB,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,EACnB,gCAAgC,CACjC,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;YAC9B,KAAK;YACL,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS;gBAC7B,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAgB,EAAE,CAAC;SACzC,CAAC,CAAC;QACH,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK;YAC7B,MAAM,IAAI,SAAS,CACjB,6DAA6D,CAC9D,CAAC;QACJ,MAAM,IAAI,GAAG,MAAM,QAAQ,EAAE,CAAC;QAC9B,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,eAAe,GAAG,CAAC,CAAC;QACxB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,MAAM,SAAS,GAAG,CAAC,UAAoC,EAAW,EAAE,CAClE,GAAG,GAAG,SAAS,CAAC,UAAU,EAAE,uCAAuC,CAAC;YACpE,4BAA4B,CAAC;QAC/B,MAAM,WAAW,GAAG,KAAK,IAAsB,EAAE;YAC/C,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,MAAM,OAAO,GAAG,MAAM,QAAQ,EAAE,CAAC;YACjC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,OAAO,CACL,IAAI,KAAK,IAAI,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,CACtE,CAAC;QACJ,CAAC,CAAC;QACF,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjC,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,oBAAoB;gBAC5D,SAAS;YACX,IACE,KAAK,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS;gBACjC,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,CAAC,KAAK,CAAC,EAAE;gBAE/B,SAAS;YACX,MAAM,EAAE,GACN,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO;gBAC1B,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;gBACtB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,SAAS;YAC9B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,aAAa,IAAI,CAAC,CAAC;YACnB,MAAM,UAAU,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;YACtD,MAAM,QAAQ,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,CAAC,EAAE,CAAC;YACtD,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YACvD,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YACnD,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;YAC/D,MAAM,aAAa,GAAG,OAAO,EAAE,KAAK,CAAC;YACrC,MAAM,WAAW,GAAG,KAAK,EAAE,KAAK,CAAC;YACjC,IACE,OAAO,EAAE,OAAO,KAAK,KAAK,CAAC,OAAO;gBAClC,CAAC,aAAa,KAAK,SAAS;oBAC1B,aAAa,CAAC,IAAI,KAAK,4BAA4B,CAAC;gBACtD,CAAC,WAAW,KAAK,SAAS,IAAI,WAAW,CAAC,IAAI,KAAK,OAAO,CAAC,EAC3D,CAAC;gBACD,eAAe,IAAI,CAAC,CAAC;gBACrB,SAAS;YACX,CAAC;YACD,MAAM,aAAa,GACjB,WAAW,KAAK,SAAS;gBACvB,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,MAAM,CAAC;oBACL,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC,QAAQ;oBACtC,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU;oBACjD,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO;iBAC5C,CAAC,CAAC;YACT,MAAM,QAAQ,GAAG,aAAa,EAAE,MAAM,IAAI,aAAa,CAAC;YACxD,MAAM,UAAU,GACd,WAAW,EAAE,KAAK,CAAC,UAAU,IAAI,aAAa,EAAE,UAAU,CAAC;YAC7D,IACE,QAAQ,KAAK,SAAS;gBACtB,UAAU,KAAK,SAAS;gBACxB,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU;gBAC3C,CAAC,QAAQ,CAAC,UAAU,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU;oBAC5C,CAAC,QAAQ,CAAC,UAAU,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU;wBAC5C,QAAQ,CAAC,OAAO,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACpD,CAAC,aAAa,KAAK,SAAS;oBAC1B,WAAW,KAAK,SAAS;oBACzB,CAAC,aAAa,CAAC,MAAM,CAAC,UAAU,KAAK,aAAa,EAAE,UAAU;wBAC5D,aAAa,CAAC,MAAM,CAAC,UAAU,KAAK,aAAa,EAAE,UAAU;wBAC7D,aAAa,CAAC,MAAM,CAAC,OAAO,KAAK,aAAa,EAAE,OAAO;wBACvD,CAAC,aAAa,CAAC,UAAU,KAAK,SAAS;4BACrC,aAAa,CAAC,UAAU,KAAK,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAClE,CAAC;gBACD,eAAe,IAAI,CAAC,CAAC;gBACrB,SAAS;YACX,CAAC;YACD,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;gBAAE,SAAS;YACrC,IAAI,CAAC,CAAC,MAAM,WAAW,EAAE,CAAC,EAAE,CAAC;gBAC3B,eAAe,IAAI,CAAC,CAAC;gBACrB,MAAM;YACR,CAAC;YACD,mEAAmE;YACnE,iEAAiE;YACjE,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACrB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,iBAAiB,CAC7C,UAAU,EACV,OAAO,CAAC,OAAO,CAChB,CAAC;gBACF,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBACjC,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,eAAe,IAAI,CAAC,CAAC;oBACrB,SAAS;gBACX,CAAC;gBACD,WAAW,IAAI,CAAC,CAAC;YACnB,CAAC;YACD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,IAAI,CAAC,CAAC,MAAM,WAAW,EAAE,CAAC,EAAE,CAAC;oBAC3B,eAAe,IAAI,CAAC,CAAC;oBACrB,MAAM;gBACR,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,iBAAiB,CAC7C,QAAQ,EACR,KAAK,CAAC,OAAO,CACd,CAAC;gBACF,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBACjC,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,eAAe,IAAI,CAAC,CAAC;oBACrB,SAAS;gBACX,CAAC;gBACD,WAAW,IAAI,CAAC,CAAC;gBACjB,IAAI,OAAO,KAAK,IAAI;oBAAE,YAAY,IAAI,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QACD,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;YACjC,KAAK,EAAE,CAAU;YACjB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,aAAa;YACb,WAAW;YACX,YAAY;YACZ,eAAe;SAChB,CAAC,CAAC;IACL,CAAC,CAAC;IACJ,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAA+B;QAC9D,oBAAoB,EAAE,IAAI;QAC1B,mBAAmB,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC;QACpE,yBAAyB,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC;QACzE,4BAA4B,EAAE,KAAK;KACpC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;AACvD,CAAC"}
1
+ {"version":3,"file":"engineering-policy.js","sourceRoot":"","sources":["../src/engineering-policy.ts"],"names":[],"mappings":"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"}
@@ -105,8 +105,8 @@ export interface EngineeringPolicyHistoryPruneResult {
105
105
  }
106
106
  export interface EngineeringPolicyApplication {
107
107
  readRepositoryPolicy(access: AccessContext): Promise<EngineeringPolicySnapshot>;
108
- putRepositoryPolicy(access: AccessContext, command: PutEngineeringPolicyCommand): Promise<EngineeringPolicyResult>;
109
- disableEngineeringExports(access: AccessContext, command: EngineeringPolicyCommand): Promise<EngineeringPolicyResult>;
108
+ putRepositoryPolicy(access: AccessContext, command: PutEngineeringPolicyCommand, options?: EngineeringMutationOptions): Promise<EngineeringPolicyResult>;
109
+ disableEngineeringExports(access: AccessContext, command: EngineeringPolicyCommand, options?: EngineeringMutationOptions): Promise<EngineeringPolicyResult>;
110
110
  pruneRepositoryPolicyHistory(access: AccessContext, bounds: EngineeringPolicyHistoryPruneBounds): Promise<EngineeringPolicyHistoryPruneResult>;
111
111
  }
112
112
  export interface EngineeringPolicyPort {
@@ -473,11 +473,16 @@ export interface RecordEngineeringReconciliationCommand extends EngineeringKey {
473
473
  export type EngineeringCommitGuard = () => void | Promise<void>;
474
474
  /** A review guard may supply a synchronous proof check for the transaction boundary. */
475
475
  export type EngineeringReviewCommitGuard = () => void | (() => true) | Promise<void | (() => true)>;
476
+ /** Optional live host fence for the seven documented engineering controls. */
477
+ export interface EngineeringMutationOptions {
478
+ readonly signal?: AbortSignal;
479
+ readonly verifyBeforeCommit?: EngineeringReviewCommitGuard;
480
+ }
476
481
  export interface EngineeringApplication {
477
- enrollEngineeringSource(access: AccessContext, command: EnrollEngineeringSourceCommand): Promise<EngineeringSourceResult>;
478
- submitEngineeringEvidence(access: AccessContext, command: SubmitEngineeringEvidenceCommand): Promise<EngineeringSourceResult>;
479
- invalidateEngineeringSource(access: AccessContext, command: InvalidateEngineeringSourceCommand): Promise<EngineeringSourceResult>;
480
- withdrawEngineeringSource(access: AccessContext, command: WithdrawEngineeringSourceCommand): Promise<EngineeringSourceResult>;
482
+ enrollEngineeringSource(access: AccessContext, command: EnrollEngineeringSourceCommand, options?: EngineeringMutationOptions): Promise<EngineeringSourceResult>;
483
+ submitEngineeringEvidence(access: AccessContext, command: SubmitEngineeringEvidenceCommand, options?: EngineeringMutationOptions): Promise<EngineeringSourceResult>;
484
+ invalidateEngineeringSource(access: AccessContext, command: InvalidateEngineeringSourceCommand, options?: EngineeringMutationOptions): Promise<EngineeringSourceResult>;
485
+ withdrawEngineeringSource(access: AccessContext, command: WithdrawEngineeringSourceCommand, options?: EngineeringMutationOptions): Promise<EngineeringSourceResult>;
481
486
  readEngineeringSource(access: AccessContext, ticketId: TicketId): Promise<EngineeringSourceRecord>;
482
487
  readEngineeringWork(access: AccessContext, key: EngineeringKey): Promise<EngineeringWorkRecord>;
483
488
  scanEngineeringCandidates(access: AccessContext, bounds: {
@@ -496,7 +501,7 @@ export interface EngineeringApplication {
496
501
  prepareEngineeringModel(access: AccessContext, command: PrepareEngineeringModelCommand): Promise<EngineeringPreparedModel>;
497
502
  completeEngineeringModel(access: AccessContext, command: CompleteEngineeringModelCommand, guard: EngineeringCommitGuard): Promise<EngineeringStepResult>;
498
503
  finishEngineeringWork(access: AccessContext, command: FinishEngineeringWorkCommand): Promise<EngineeringStepResult>;
499
- selectEngineeringRepository(access: AccessContext, command: SelectEngineeringRepositoryCommand): Promise<EngineeringStepResult>;
504
+ selectEngineeringRepository(access: AccessContext, command: SelectEngineeringRepositoryCommand, options?: EngineeringMutationOptions): Promise<EngineeringStepResult>;
500
505
  prepareEngineeringProposal(access: AccessContext, command: PrepareEngineeringProposalCommand, guard: EngineeringCommitGuard): Promise<EngineeringStepResult>;
501
506
  reviewEngineeringProposal(access: AccessContext, command: ReviewEngineeringProposalCommand, guard?: EngineeringReviewCommitGuard): Promise<EngineeringStepResult>;
502
507
  beginEngineeringDispatch(access: AccessContext, command: BeginEngineeringDispatchCommand, guard: EngineeringCommitGuard): Promise<EngineeringDispatchPermit | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"engineering-types.d.ts","sourceRoot":"","sources":["../src/engineering-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engineering-types.d.ts","sourceRoot":"","sources":["../src/engineering-types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"engineering-work.d.ts","sourceRoot":"","sources":["../src/engineering-work.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EACV,sBAAsB,EAEtB,8BAA8B,EAC9B,wBAAwB,EACxB,uBAAuB,EAEvB,yBAAyB,EACzB,0BAA0B,EAG3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAeL,KAAK,yBAAyB,EAC/B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAEV,uBAAuB,EAEvB,iBAAiB,EAElB,MAAM,2BAA2B,CAAC;AAGnC,wBAAsB,4BAA4B,CAChD,QAAQ,EAAE,uBAAuB,CAAC,eAAe,CAAC,GACjD,OAAO,CAAC,MAAM,CAAC,CAsCjB;AAED,wBAAsB,yBAAyB,CAAC,KAAK,EAAE;IACrD,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,0BAA0B,CAAC;IAC7C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAGrC;AAED,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,MAAM,CAAC,CAEjB;AAED,wBAAsB,6BAA6B,CACjD,SAAS,EAAE,yBAAyB,GACnC,OAAO,CAAC,MAAM,CAAC,CAEjB;AAED,wBAAsB,8BAA8B,CAAC,KAAK,EAAE;IAC1D,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,wBAAwB,CAAC;IAChD,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAO1C;AAED,KAAK,aAAa,GAAG,IAAI,CACvB,sBAAsB,EACpB,2BAA2B,GAC3B,sBAAsB,GACtB,yBAAyB,GACzB,0BAA0B,GAC1B,uBAAuB,GACvB,6BAA6B,GAC7B,4BAA4B,GAC5B,2BAA2B,GAC3B,0BAA0B,CAC7B,CAAC;AAyRF,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,uBAAuB,EAC7B,IAAI,EAAE,iBAAiB,GACtB,aAAa,CA67Df"}
1
+ {"version":3,"file":"engineering-work.d.ts","sourceRoot":"","sources":["../src/engineering-work.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EACV,sBAAsB,EAEtB,8BAA8B,EAC9B,wBAAwB,EACxB,uBAAuB,EAEvB,yBAAyB,EACzB,0BAA0B,EAG3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAeL,KAAK,yBAAyB,EAC/B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAEV,uBAAuB,EAEvB,iBAAiB,EAElB,MAAM,2BAA2B,CAAC;AAGnC,wBAAsB,4BAA4B,CAChD,QAAQ,EAAE,uBAAuB,CAAC,eAAe,CAAC,GACjD,OAAO,CAAC,MAAM,CAAC,CAsCjB;AAED,wBAAsB,yBAAyB,CAAC,KAAK,EAAE;IACrD,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,0BAA0B,CAAC;IAC7C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAGrC;AAED,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,MAAM,CAAC,CAEjB;AAED,wBAAsB,6BAA6B,CACjD,SAAS,EAAE,yBAAyB,GACnC,OAAO,CAAC,MAAM,CAAC,CAEjB;AAED,wBAAsB,8BAA8B,CAAC,KAAK,EAAE;IAC1D,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,wBAAwB,CAAC;IAChD,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAO1C;AAED,KAAK,aAAa,GAAG,IAAI,CACvB,sBAAsB,EACpB,2BAA2B,GAC3B,sBAAsB,GACtB,yBAAyB,GACzB,0BAA0B,GAC1B,uBAAuB,GACvB,6BAA6B,GAC7B,4BAA4B,GAC5B,2BAA2B,GAC3B,0BAA0B,CAC7B,CAAC;AAyRF,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,uBAAuB,EAC7B,IAAI,EAAE,iBAAiB,GACtB,aAAa,CA68Df"}
@@ -1,3 +1,4 @@
1
+ import { engineeringMutationBoundary, } from "./engineering-mutation-guard.js";
1
2
  import { hasPermission } from "@pegma/authorization-core";
2
3
  import { MAX_SCAN_PAGE_SIZE } from "@pegma/storage-core";
3
4
  import { SupportDeskAuthorizationError, SupportDeskConflictError, SupportDeskLimitError, SupportDeskNotFoundError, supportPermissions, } from "./index.js";
@@ -303,7 +304,7 @@ export function createEngineeringWorkerServices(deps, load) {
303
304
  throw new SupportDeskNotFoundError();
304
305
  return { value: stored.value, version: stored.version };
305
306
  }
306
- async function save(loaded, stored, work, source = loaded.source.value, extra = [], beforeCommit) {
307
+ async function save(loaded, stored, work, source = loaded.source.value, extra = [], beforeCommit, mutation) {
307
308
  const securityRestriction = (source !== loaded.source.value && source.state === "restricted") ||
308
309
  (work.security !== "ordinary" &&
309
310
  (stored.value.security !== work.security ||
@@ -319,7 +320,9 @@ export function createEngineeringWorkerServices(deps, load) {
319
320
  : { actions: [], nextWorkRows: [] };
320
321
  checkEngineeringRecordCapacity(work);
321
322
  checkEngineeringRecordCapacity(source);
323
+ const assertHostCurrent = mutation === undefined ? undefined : await mutation.verify();
322
324
  beforeCommit?.();
325
+ assertHostCurrent?.();
323
326
  return (await records.transact(work.ticketId, [
324
327
  {
325
328
  action: "putIfUnchanged",
@@ -1166,7 +1169,8 @@ export function createEngineeringWorkerServices(deps, load) {
1166
1169
  }
1167
1170
  throw new SupportDeskConflictError();
1168
1171
  },
1169
- async selectEngineeringRepository(access, input) {
1172
+ async selectEngineeringRepository(access, input, control) {
1173
+ const mutation = engineeringMutationBoundary(control);
1170
1174
  permission(access, true);
1171
1175
  const actorId = access.principalId;
1172
1176
  const command = snapshot(fields(input, "select engineering repository", [
@@ -1200,6 +1204,7 @@ export function createEngineeringWorkerServices(deps, load) {
1200
1204
  permission(access, true, actorId);
1201
1205
  return previous;
1202
1206
  }
1207
+ mutation?.ensure();
1203
1208
  const loaded = await load(command.ticketId);
1204
1209
  const stored = await workAt(command);
1205
1210
  const work = stored.value;
@@ -1245,7 +1250,9 @@ export function createEngineeringWorkerServices(deps, load) {
1245
1250
  if (await save(loaded, stored, next, loaded.source.value, [
1246
1251
  deps.audit(command, loaded.ticket.value.ticket, actorId, now, "support.engineering.repository_selected"),
1247
1252
  receipt(command, hash, result),
1248
- ])) {
1253
+ ], mutation === undefined
1254
+ ? undefined
1255
+ : () => permission(access, true, actorId), mutation)) {
1249
1256
  permission(access, true, actorId);
1250
1257
  return result;
1251
1258
  }
@@ -1 +1 @@
1
- {"version":3,"file":"engineering-work.js","sourceRoot":"","sources":["../src/engineering-work.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engineering-work.js","sourceRoot":"","sources":["../src/engineering-work.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pegma/support-desk-application",
3
- "version": "0.2.5",
3
+ "version": "0.2.6",
4
4
  "description": "Authorized application services, declared collections, and durable outbox records for Support Desk.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -39,7 +39,7 @@
39
39
  "@pegma/mail": "0.1.1",
40
40
  "@pegma/spine": "0.1.2",
41
41
  "@pegma/storage-core": "0.4.0",
42
- "@pegma/support-desk-contracts": "0.2.5",
43
- "@pegma/support-desk-core": "0.2.5"
42
+ "@pegma/support-desk-contracts": "0.2.6",
43
+ "@pegma/support-desk-core": "0.2.6"
44
44
  }
45
45
  }