mppx 0.6.24 → 0.6.26

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.
Files changed (63) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/Method.d.ts +6 -4
  3. package/dist/Method.d.ts.map +1 -1
  4. package/dist/Method.js +2 -1
  5. package/dist/Method.js.map +1 -1
  6. package/dist/middlewares/internal/mppx.d.ts +3 -2
  7. package/dist/middlewares/internal/mppx.d.ts.map +1 -1
  8. package/dist/middlewares/internal/mppx.js +1 -0
  9. package/dist/middlewares/internal/mppx.js.map +1 -1
  10. package/dist/server/Mppx.d.ts +8 -3
  11. package/dist/server/Mppx.d.ts.map +1 -1
  12. package/dist/server/Mppx.js +4 -1
  13. package/dist/server/Mppx.js.map +1 -1
  14. package/dist/stripe/server/Charge.d.ts +1 -1
  15. package/dist/stripe/server/Charge.d.ts.map +1 -1
  16. package/dist/stripe/server/Methods.d.ts +1 -1
  17. package/dist/stripe/server/Methods.d.ts.map +1 -1
  18. package/dist/tempo/Methods.d.ts +3 -2
  19. package/dist/tempo/Methods.d.ts.map +1 -1
  20. package/dist/tempo/Methods.js +13 -4
  21. package/dist/tempo/Methods.js.map +1 -1
  22. package/dist/tempo/client/Subscription.d.ts +3 -2
  23. package/dist/tempo/client/Subscription.d.ts.map +1 -1
  24. package/dist/tempo/server/Charge.d.ts +19 -1
  25. package/dist/tempo/server/Charge.d.ts.map +1 -1
  26. package/dist/tempo/server/Charge.js +96 -31
  27. package/dist/tempo/server/Charge.js.map +1 -1
  28. package/dist/tempo/server/Methods.d.ts +2 -2
  29. package/dist/tempo/server/Methods.d.ts.map +1 -1
  30. package/dist/tempo/server/Session.d.ts +1 -1
  31. package/dist/tempo/server/Session.d.ts.map +1 -1
  32. package/dist/tempo/server/Subscription.d.ts +28 -12
  33. package/dist/tempo/server/Subscription.d.ts.map +1 -1
  34. package/dist/tempo/server/Subscription.js +82 -30
  35. package/dist/tempo/server/Subscription.js.map +1 -1
  36. package/dist/tempo/server/internal/html.gen.d.ts +1 -1
  37. package/dist/tempo/server/internal/html.gen.d.ts.map +1 -1
  38. package/dist/tempo/server/internal/html.gen.js +1 -1
  39. package/dist/tempo/server/internal/html.gen.js.map +1 -1
  40. package/dist/tempo/subscription/KeyAuthorization.d.ts +3 -14
  41. package/dist/tempo/subscription/KeyAuthorization.d.ts.map +1 -1
  42. package/dist/tempo/subscription/KeyAuthorization.js +11 -20
  43. package/dist/tempo/subscription/KeyAuthorization.js.map +1 -1
  44. package/dist/tempo/subscription/Types.d.ts +2 -2
  45. package/dist/tempo/subscription/Types.d.ts.map +1 -1
  46. package/package.json +1 -1
  47. package/src/Method.ts +21 -5
  48. package/src/middlewares/internal/mppx.test.ts +24 -0
  49. package/src/middlewares/internal/mppx.ts +6 -2
  50. package/src/server/Mppx.ts +17 -4
  51. package/src/tempo/Methods.test.ts +17 -0
  52. package/src/tempo/Methods.ts +12 -4
  53. package/src/tempo/client/Subscription.test.ts +5 -7
  54. package/src/tempo/server/AtomicStore.test-d.ts +11 -0
  55. package/src/tempo/server/Charge.test.ts +189 -0
  56. package/src/tempo/server/Charge.ts +148 -31
  57. package/src/tempo/server/Subscription.test.ts +1 -4
  58. package/src/tempo/server/Subscription.ts +156 -67
  59. package/src/tempo/server/internal/html/package.json +1 -1
  60. package/src/tempo/server/internal/html.gen.ts +1 -1
  61. package/src/tempo/subscription/KeyAuthorization.test.ts +13 -4
  62. package/src/tempo/subscription/KeyAuthorization.ts +11 -20
  63. package/src/tempo/subscription/Types.ts +2 -2
@@ -29,18 +29,17 @@ export function subscription(p) {
29
29
  throw new Error('tempo.subscription() requires an atomic store with `update`.');
30
30
  }
31
31
  const defaultChainId = parameters.chainId ?? defaults.chainId.testnet;
32
- const { amount, currency = defaults.resolveCurrency({ chainId: defaultChainId }), decimals = defaults.decimals, description, externalId, periodCount, periodUnit, subscriptionExpires, waitForConfirmation = true, } = parameters;
33
- const store = SubscriptionStore.fromStore(rawStore, {
34
- activationTimeoutMs: parameters.activationTimeoutMs,
35
- renewalTimeoutMs: parameters.renewalTimeoutMs,
36
- });
37
- const { feePayer, recipient } = Account.resolve(parameters);
38
- const getClient = ClientResolver.getResolver({
39
- chain: tempo_chain,
40
- getClient: parameters.getClient,
41
- rpcUrl: defaults.rpcUrl,
32
+ const { amount, currency = defaults.resolveCurrency({ chainId: defaultChainId }), decimals = defaults.decimals, description, externalId, periodCount, periodUnit, subscriptionExpires, } = parameters;
33
+ const { recipient } = Account.resolve(parameters);
34
+ const context = createContext(parameters, {
35
+ store: rawStore,
36
+ options: {
37
+ activationTimeoutMs: parameters.activationTimeoutMs,
38
+ renewalTimeoutMs: parameters.renewalTimeoutMs,
39
+ },
42
40
  });
43
- return Method.toServer(Methods.subscription, {
41
+ const { feePayer, feePayerPolicy, getClient, store, waitForConfirmation } = context;
42
+ const method = Method.toServer(Methods.subscription, {
44
43
  defaults: {
45
44
  amount,
46
45
  currency,
@@ -52,6 +51,18 @@ export function subscription(p) {
52
51
  recipient,
53
52
  subscriptionExpires,
54
53
  },
54
+ extensions: {
55
+ renew: (parameters) => renewWithContext({
56
+ context: {
57
+ ...context,
58
+ feePayerPolicy: parameters.feePayerPolicy
59
+ ? resolveFeePayerPolicy(context.feePayerPolicy, parameters.feePayerPolicy)
60
+ : context.feePayerPolicy,
61
+ waitForConfirmation: parameters.waitForConfirmation ?? context.waitForConfirmation,
62
+ },
63
+ subscriptionId: parameters.subscriptionId,
64
+ }),
65
+ },
55
66
  async authorize({ input, request }) {
56
67
  const resolved = await parameters.resolve({ input, request });
57
68
  if (!resolved)
@@ -65,7 +76,7 @@ export function subscription(p) {
65
76
  if (periodIndex > subscription.lastChargedPeriod) {
66
77
  const renew = resolveRenewalHandler({
67
78
  feePayer,
68
- feePayerPolicy: parameters.feePayerPolicy,
79
+ feePayerPolicy,
69
80
  getClient,
70
81
  parameters,
71
82
  store,
@@ -174,7 +185,9 @@ export function subscription(p) {
174
185
  if (declaredSource &&
175
186
  (declaredSource.chainId !== verified.source.chainId ||
176
187
  !isAddressEqual(declaredSource.address, verified.source.address))) {
177
- throw new VerificationFailedError({ reason: 'credential source does not match signature' });
188
+ throw new VerificationFailedError({
189
+ reason: 'credential source does not match signature',
190
+ });
178
191
  }
179
192
  const activation = await store.activate({
180
193
  challengeId: credential.challenge.id,
@@ -186,7 +199,7 @@ export function subscription(p) {
186
199
  auto: {
187
200
  challengeId: credential.challenge.id,
188
201
  feePayer,
189
- feePayerPolicy: parameters.feePayerPolicy,
202
+ feePayerPolicy,
190
203
  getClient,
191
204
  keyAuthorization: credential.payload.signature,
192
205
  realm: credential.challenge.realm,
@@ -231,6 +244,15 @@ export function subscription(p) {
231
244
  return activation.result.receipt;
232
245
  },
233
246
  });
247
+ return method;
248
+ }
249
+ // Access-key provisioning can cost around 4M gas.
250
+ const defaultFeePayerPolicy = {
251
+ maxGas: 5000000n,
252
+ maxTotalFee: 200000000000000000n,
253
+ };
254
+ function resolveFeePayerPolicy(...policies) {
255
+ return Object.assign({}, defaultFeePayerPolicy, ...policies);
234
256
  }
235
257
  function requestFromCaptured(capturedRequest) {
236
258
  if (!capturedRequest)
@@ -579,7 +601,7 @@ async function submitSubscriptionPayment(parameters) {
579
601
  // (without `feePayer: true`) so viem returns the chain's full
580
602
  // proof-inclusive gas estimate. With `feePayer: true` viem sets a
581
603
  // dummy sig + null feePayerSignature, dropping signature and key
582
- // authorization verification costs see chainConfig.js FIXME. We add
604
+ // authorization verification costs -- see chainConfig.js FIXME. We add
583
605
  // a small buffer for fee-payer overhead, then flip `feePayer = true`
584
606
  // and re-sign with the fee-payer-sponsored envelope.
585
607
  const prepared = await prepareTransactionRequest(client, {
@@ -637,32 +659,38 @@ function createSubscriptionId() {
637
659
  * Returns the renewal result if the subscription was overdue, or `null` if already current.
638
660
  */
639
661
  export async function renew(parameters) {
640
- const { store: rawStore, waitForConfirmation = true } = parameters;
641
- const store = SubscriptionStore.fromStore(rawStore, {
642
- renewalTimeoutMs: parameters.renewalTimeoutMs,
662
+ const context = createContext(parameters, {
663
+ store: parameters.store,
664
+ options: {
665
+ renewalTimeoutMs: parameters.renewalTimeoutMs,
666
+ },
643
667
  });
644
- const getClient = ClientResolver.getResolver({
645
- chain: tempo_chain,
646
- getClient: parameters.getClient,
647
- rpcUrl: defaults.rpcUrl,
668
+ return renewWithContext({
669
+ context,
670
+ subscriptionId: parameters.subscriptionId,
648
671
  });
649
- const record = await store.get(parameters.subscriptionId);
672
+ }
673
+ async function renewWithContext(parameters) {
674
+ const { context, subscriptionId } = parameters;
675
+ const record = await context.store.get(subscriptionId);
650
676
  if (!record)
651
677
  return null;
652
678
  if (!isActive(record))
653
679
  return null;
654
- const active = await store.getByKey(record.lookupKey);
680
+ const active = await context.store.getByKey(record.lookupKey);
655
681
  if (active?.subscriptionId !== record.subscriptionId)
656
682
  return null;
657
683
  const periodIndex = getPeriodIndex(record);
658
684
  if (periodIndex <= record.lastChargedPeriod)
659
685
  return null;
660
686
  const renew = resolveRenewalHandler({
661
- getClient,
662
- parameters,
663
- store,
687
+ feePayer: context.feePayer,
688
+ feePayerPolicy: context.feePayerPolicy,
689
+ getClient: context.getClient,
690
+ parameters: context.parameters,
691
+ store: context.store,
664
692
  subscription: record,
665
- waitForConfirmation,
693
+ waitForConfirmation: context.waitForConfirmation,
666
694
  });
667
695
  if (!renew)
668
696
  return null;
@@ -670,9 +698,33 @@ export async function renew(parameters) {
670
698
  expectedLookupKey: record.lookupKey,
671
699
  periodIndex,
672
700
  renew,
673
- store,
701
+ store: context.store,
674
702
  subscription: record,
675
703
  });
676
- return renewal?.status === 'renewed' ? renewal.result : null;
704
+ if (renewal?.status !== 'renewed')
705
+ return null;
706
+ await context.parameters.hooks?.renewed?.({
707
+ periodIndex,
708
+ receipt: renewal.result.receipt,
709
+ subscription: renewal.result.subscription,
710
+ });
711
+ return renewal.result;
712
+ }
713
+ function createContext(parameters, options) {
714
+ const { feePayer } = Account.resolve(parameters);
715
+ const store = SubscriptionStore.fromStore(options.store, options.options);
716
+ const getClient = ClientResolver.getResolver({
717
+ chain: tempo_chain,
718
+ getClient: parameters.getClient,
719
+ rpcUrl: defaults.rpcUrl,
720
+ });
721
+ return {
722
+ feePayer,
723
+ feePayerPolicy: resolveFeePayerPolicy(parameters.feePayerPolicy),
724
+ getClient,
725
+ parameters,
726
+ store,
727
+ waitForConfirmation: parameters.waitForConfirmation ?? true,
728
+ };
677
729
  }
678
730
  //# sourceMappingURL=Subscription.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Subscription.js","sourceRoot":"","sources":["../../../src/tempo/server/Subscription.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Subscription.js","sourceRoot":"","sources":["../../../src/tempo/server/Subscription.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAA;AAC3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAA2C,MAAM,MAAM,CAAA;AAClG,OAAO,EACL,IAAI,IAAI,SAAS,EACjB,yBAAyB,EACzB,kBAAkB,EAClB,sBAAsB,EACtB,eAAe,GAChB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAEvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAA;AAEzD,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAA;AAEvC,OAAO,KAAK,cAAc,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAA;AACjD,OAAO,KAAK,QAAQ,MAAM,yBAAyB,CAAA;AACnD,OAAO,KAAK,QAAQ,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAA;AAE7C,OAAO,KAAK,OAAO,MAAM,eAAe,CAAA;AACxC,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC3B,kCAAkC,GACnC,MAAM,qCAAqC,CAAA;AAC5C,OAAO,KAAK,mBAAmB,MAAM,4BAA4B,CAAA;AACjE,OAAO,KAAK,iBAAiB,MAAM,0BAA0B,CAAA;AAa7D;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAC1B,CAAmD;IAEnD,MAAM,UAAU,GAAG,CAAe,CAAA;IAClC,MAAM,QAAQ,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAEnD,CAAA;IACD,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAA;IACjF,CAAC;IACD,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAA;IACrE,MAAM,EACJ,MAAM,EACN,QAAQ,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,EAChE,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAC5B,WAAW,EACX,UAAU,EACV,WAAW,EACX,UAAU,EACV,mBAAmB,GACpB,GAAG,UAAU,CAAA;IAEd,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IACjD,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,EAAE;QACxC,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE;YACP,mBAAmB,EAAE,UAAU,CAAC,mBAAmB;YACnD,gBAAgB,EAAE,UAAU,CAAC,gBAAgB;SAC9C;KACF,CAAC,CAAA;IACF,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAA;IAGnF,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAK5B,OAAO,CAAC,YAAY,EAAE;QACtB,QAAQ,EAAE;YACR,MAAM;YACN,QAAQ;YACR,QAAQ;YACR,WAAW;YACX,UAAU;YACV,WAAW;YACX,UAAU;YACV,SAAS;YACT,mBAAmB;SACG;QACxB,UAAU,EAAE;YACV,KAAK,EAAE,CAAC,UAAU,EAAE,EAAE,CACpB,gBAAgB,CAAC;gBACf,OAAO,EAAE;oBACP,GAAG,OAAO;oBACV,cAAc,EAAE,UAAU,CAAC,cAAc;wBACvC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,cAAc,EAAE,UAAU,CAAC,cAAc,CAAC;wBAC1E,CAAC,CAAC,OAAO,CAAC,cAAc;oBAC1B,mBAAmB,EAAE,UAAU,CAAC,mBAAmB,IAAI,OAAO,CAAC,mBAAmB;iBACnF;gBACD,cAAc,EAAE,UAAU,CAAC,cAAc;aAC1C,CAAC;SACL;QAED,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE;YAChC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;YAC7D,IAAI,CAAC,QAAQ;gBAAE,OAAO,SAAS,CAAA;YAE/B,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;YACvD,IAAI,CAAC,YAAY,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;gBAAE,OAAO,SAAS,CAAA;YAC9D,IAAI,CAAC,0BAA0B,CAAC,YAAY,EAAE,OAAO,CAAC;gBAAE,OAAO,SAAS,CAAA;YAExE,MAAM,WAAW,GAAG,cAAc,CAAC,YAAY,CAAC,CAAA;YAChD,IAAI,WAAW,GAAG,YAAY,CAAC,iBAAiB,EAAE,CAAC;gBACjD,MAAM,KAAK,GAAG,qBAAqB,CAAC;oBAClC,QAAQ;oBACR,cAAc;oBACd,SAAS;oBACT,UAAU;oBACV,KAAK;oBACL,YAAY;oBACZ,mBAAmB;iBACpB,CAAC,CAAA;gBACF,IAAI,CAAC,KAAK;oBAAE,OAAO,SAAS,CAAA;gBAE5B,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC;oBAClC,iBAAiB,EAAE,QAAQ,CAAC,GAAG;oBAC/B,WAAW;oBACX,KAAK;oBACL,OAAO;oBACP,KAAK;oBACL,YAAY;iBACb,CAAC,CAAA;gBACF,IAAI,CAAC,OAAO;oBAAE,OAAO,SAAS,CAAA;gBAC9B,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;oBAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAA;gBACrE,IAAI,OAAO,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBAClC,OAAO;wBACL,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,QAAQ,EAAE,IAAI,QAAQ,CAAC,IAAI,EAAE;4BAC3B,OAAO,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE;4BAC/B,MAAM,EAAE,GAAG;yBACZ,CAAC;qBACH,CAAA;gBACH,CAAC;gBAED,MAAM,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;oBAChC,WAAW;oBACX,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO;oBAC/B,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY;iBAC1C,CAAC,CAAA;gBACF,OAAO;oBACL,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO;iBAChC,CAAA;YACH,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,mBAAmB,CAAC,UAAU,CAAC,YAAY,CAAC;aACtD,CAAA;QACH,CAAC;QAED,KAAK,CAAC,OAAO,CAAC,EAAE,eAAe,EAAE,UAAU,EAAE,OAAO,EAAE;YACpD,MAAM,iBAAiB,GAAG,UAAU,EAAE,SAAS,CAAC,OAA0C,CAAA;YAC1F,MAAM,OAAO,GACX,OAAO,CAAC,OAAO;gBACf,UAAU,CAAC,OAAO;gBAClB,iBAAiB,EAAE,aAAa,EAAE,OAAO;gBACzC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAA;YAC1B,MAAM,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC9D,GAAG,OAAO;gBACV,OAAO;aACR,CAAC,CAAA;YACF,MAAM,KAAK,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAAA;YAClD,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAA;YAC5E,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YACrE,MAAM,SAAS,GACb,QAAQ,IAAI,CAAC,UAAU;gBACrB,CAAC,CAAC,MAAM,yBAAyB,CAAC;oBAC9B,QAAQ;oBACR,KAAK;oBACL,UAAU;oBACV,OAAO,EAAE,aAAa;oBACtB,QAAQ;oBACR,KAAK;iBACN,CAAC;gBACJ,CAAC,CAAC,CAAC,iBAAiB,EAAE,aAAa,EAAE,SAAS,IAAI,aAAa,CAAC,aAAa,EAAE,SAAS,CAAC,CAAA;YAC7F,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,mCAAmC,EAAE,CAAC,CAAA;YACpF,CAAC;YAED,gHAAgH;YAChH,OAAO;gBACL,GAAG,OAAO;gBACV,aAAa,EAAE;oBACb,GAAG,OAAO,CAAC,aAAa;oBACxB,SAAS;iBACV;gBACD,OAAO;aACR,CAAA;QACH,CAAC;QAED,aAAa,EAAE,mBAAmB;QAElC,KAAK,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE;YAC5C,MAAM,KAAK,GAAG,mBAAmB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAA;YAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;YACrE,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAE,OAA+B,CAAA;YACrF,wBAAwB,CAAC;gBACvB,gBAAgB,EAAE,UAAU,CAAC,SAAS,CAAC,OAAO;gBAC9C,OAAO,EAAE,aAAa;aACvB,CAAC,CAAA;YACF,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAA;YAE5E,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,oCAAoC,EAAE,CAAC,CAAA;YACrF,CAAC;YACD,MAAM,gBAAgB,GAAG,UAAU,CAAC,SAAS,CAAC,OAA8B,CAAA;YAC5E,MAAM,SAAS,GACb,gBAAgB,CAAC,aAAa,EAAE,SAAS;gBACzC,aAAa,CAAC,aAAa,EAAE,SAAS;gBACtC,CAAC,MAAM,gBAAgB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;YACnF,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,mCAAmC,EAAE,CAAC,CAAA;YACpF,CAAC;YACD,MAAM,QAAQ,GAAG,kCAAkC,CAAC;gBAClD,SAAS;gBACT,OAAO,EAAE,aAAa,CAAC,aAAa,EAAE,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO;gBACzE,OAAO,EAAE,UAAU,CAAC,OAAwC;gBAC5D,OAAO,EAAE,aAAa;aACvB,CAAC,CAAA;YACF,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YACzF,IACE,cAAc;gBACd,CAAC,cAAc,CAAC,OAAO,KAAK,QAAQ,CAAC,MAAM,CAAC,OAAO;oBACjD,CAAC,cAAc,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EACnE,CAAC;gBACD,MAAM,IAAI,uBAAuB,CAAC;oBAChC,MAAM,EAAE,4CAA4C;iBACrD,CAAC,CAAA;YACJ,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC;gBACtC,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE;gBACpC,UAAU,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,sBAAsB,CAAC,YAAY,EAAE,aAAa,CAAC;gBACjF,SAAS,EAAE,QAAQ,CAAC,GAAG;gBACvB,KAAK,CAAC,MAAM;oBACV,MAAM,UAAU,GAAG,yBAAyB,CAC1C,MAAM,oBAAoB,CAAC;wBACzB,SAAS;wBACT,IAAI,EAAE;4BACJ,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE;4BACpC,QAAQ;4BACR,cAAc;4BACd,SAAS;4BACT,gBAAgB,EAAG,UAAU,CAAC,OAAyC,CAAC,SAAS;4BACjF,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,KAAK;4BACjC,KAAK;4BACL,mBAAmB;yBACpB;wBACD,UAAU,EAAE,UAEX;wBACD,KAAK;wBACL,UAAU;wBACV,OAAO,EAAE,aAAa;wBACtB,QAAQ;wBACR,MAAM,EAAE,QAAQ,CAAC,MAAM;qBACxB,CAAC,EACF,SAAS,CACV,CAAA;oBACD,8BAA8B,CAAC,UAAU,EAAE;wBACzC,iBAAiB,EAAE,QAAQ,CAAC,GAAG;wBAC/B,mBAAmB,EAAE,CAAC;wBACtB,OAAO,EAAE,aAAa;qBACvB,CAAC,CAAA;oBACF,OAAO,UAAU,CAAA;gBACnB,CAAC;aACF,CAAC,CAAA;YACF,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACrC,MAAM,IAAI,uBAAuB,CAAC;oBAChC,MAAM,EAAE,+CAA+C;iBACxD,CAAC,CAAA;YACJ,CAAC;YACD,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACrC,MAAM,IAAI,uBAAuB,CAAC;oBAChC,MAAM,EAAE,8CAA8C;iBACvD,CAAC,CAAA;YACJ,CAAC;YACD,IAAI,UAAU,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;gBAC1C,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,wCAAwC,EAAE,CAAC,CAAA;YACzF,CAAC;YACD,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACrC,OAAO,mBAAmB,CAAC,UAAU,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;YAChE,CAAC;YAED,MAAM,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC;gBAClC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO;gBAClC,YAAY,EAAE,UAAU,CAAC,MAAM,CAAC,YAAY;aAC7C,CAAC,CAAA;YACF,OAAO,UAAU,CAAC,MAAM,CAAC,OAAO,CAAA;QAClC,CAAC;KACF,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACf,CAAC;AAED,kDAAkD;AAClD,MAAM,qBAAqB,GAAG;IAC5B,MAAM,EAAE,QAAU;IAClB,WAAW,EAAE,mBAAwB;CACH,CAAA;AAEpC,SAAS,qBAAqB,CAC5B,GAAG,QAAkD;IAErD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,qBAAqB,EAAE,GAAG,QAAQ,CAAC,CAAA;AAC9D,CAAC;AAED,SAAS,mBAAmB,CAAC,eAAmD;IAC9E,IAAI,CAAC,eAAe;QAAE,OAAO,IAAI,OAAO,CAAC,8BAA8B,CAAC,CAAA;IACxE,OAAO,IAAI,OAAO,CAAC,eAAe,CAAC,GAAG,EAAE;QACtC,OAAO,EAAE,eAAe,CAAC,OAAO;QAChC,MAAM,EAAE,eAAe,CAAC,MAAM;KAC/B,CAAC,CAAA;AACJ,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,UAK/B;IACC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAA;IACnF,OAAO,CACL,QAAQ,CAAC,SAAS;QAClB,CAAC,sBAAsB,CAAC,SAAS;YAC/B,CAAC,CAAC,MAAM,sBAAsB,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;YACtE,CAAC,CAAC,SAAS,CAAC,CACf,CAAA;AACH,CAAC;AAED,KAAK,UAAU,yBAAyB,CAAC,UAOxC;IACC,MAAM,EACJ,QAAQ,EACR,KAAK,EACL,UAAU,EAAE,sBAAsB,EAClC,OAAO,EACP,QAAQ,EACR,KAAK,GACN,GAAG,UAAU,CAAA;IACd,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,CAAC;QACrC,0EAA0E;QAC1E,+DAA+D;QAC/D,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;QAChE,OAAO;YACL,gBAAgB,EAAE,SAAS,CAAC,gBAAgB;YAC5C,OAAO,EAAE,SAAS,CAAC,OAAO;SACK,CAAA;IACnC,CAAC;IACD,uEAAuE;IACvE,kFAAkF;IAClF,OAAO,CACL,CAAC,MAAM,gBAAgB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1F,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAClE,CAAA;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,UAqBnC;IACC,MAAM,EACJ,SAAS,EACT,IAAI,EACJ,UAAU,EACV,KAAK,EACL,UAAU,EAAE,sBAAsB,EAClC,OAAO,EACP,QAAQ,EACR,MAAM,GACP,GAAG,UAAU,CAAA;IACd,IAAI,sBAAsB,CAAC,QAAQ,EAAE,CAAC;QACpC,8DAA8D;QAC9D,OAAO,sBAAsB,CAAC,QAAQ,CAAC;YACrC,SAAS;YACT,UAAU;YACV,KAAK;YACL,OAAO;YACP,QAAQ;YACR,MAAM;SACP,CAAC,CAAA;IACJ,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,+BAA+B,EAAE,CAAC,CAAA;IAChF,CAAC;IAED,yEAAyE;IACzE,qEAAqE;IACrE,MAAM,SAAS,GAAG,MAAM,yBAAyB,CAAC;QAChD,SAAS;QACT,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;QACvC,SAAS,EAAE,QAAQ,CAAC,GAAG;QACvB,OAAO;QACP,mBAAmB,EAAE,IAAI,CAAC,WAAW;QACrC,MAAM;QACN,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;KAC9C,CAAC,CAAA;IACF,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAC1C,MAAM,YAAY,GAAG;QACnB,SAAS;QACT,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,aAAa,EAAE,SAAS;QACxB,OAAO,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO;QACvC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;QACvC,iBAAiB,EAAE,CAAC;QACpB,SAAS,EAAE,QAAQ,CAAC,GAAG;QACvB,KAAK,EAAE,MAAM;QACb,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,SAAS;QACT,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,cAAc,EAAE,oBAAoB,EAAE;QACtC,SAAS;KACmB,CAAA;IAE9B,OAAO;QACL,OAAO,EAAE,mBAAmB,CAAC,yBAAyB,CAAC,YAAY,CAAC;QACpE,YAAY;KACb,CAAA;AACH,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,UAW5B;IAMC,MAAM,EAAE,iBAAiB,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,UAAU,CAAA;IAC1F,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,YAAY,CAAC,cAAc,EAAE,WAAW,CAAC,CAAA;IACpF,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC;QAChC,iBAAiB;QACjB,WAAW;QACX,KAAK,CAAC,KAAK,CAAC,EAAE,iBAAiB,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE;YACnE,MAAM,OAAO,GAAG,yBAAyB,CACvC,MAAM,KAAK,CAAC;gBACV,iBAAiB;gBACjB,WAAW;gBACX,YAAY,EAAE,OAAO;aACtB,CAAC,EACF,OAAO,CAAC,SAAS,CAClB,CAAA;YACD,8BAA8B,CAAC,OAAO,EAAE;gBACtC,iBAAiB;gBACjB,mBAAmB,EAAE,WAAW;gBAChC,sBAAsB,EAAE,YAAY,CAAC,cAAc;gBACnD,QAAQ,EAAE,OAAO;gBACjB,OAAO;aACR,CAAC,CAAA;YACF,OAAO,OAAO,CAAA;QAChB,CAAC;QACD,cAAc,EAAE,YAAY,CAAC,cAAc;KAC5C,CAAC,CAAA;IAEF,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO,EAAE,OAAO,EAAE,mBAAmB,CAAC,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;IAC7F,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAClC,OAAO,EAAE,OAAO,EAAE,mBAAmB,CAAC,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAA;IAC9F,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;IACtF,IAAI,OAAO,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;QACvC,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,qCAAqC,EAAE,CAAC,CAAA;IACtF,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,gBAAgB,CAAC,cAAsB,EAAE,WAAmB;IACnE,+EAA+E;IAC/E,+EAA+E;IAC/E,OAAO,WAAW,cAAc,IAAI,WAAW,EAAE,CAAA;AACnD,CAAC;AAED,SAAS,yBAAyB,CAEhC,MAAc,EAAE,SAA4C;IAC5D,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,YAAY,CAAC,SAAS;QAAE,OAAO,MAAM,CAAA;IAC9D,OAAO;QACL,GAAG,MAAM;QACT,YAAY,EAAE;YACZ,GAAG,MAAM,CAAC,YAAY;YACtB,SAAS;SACV;KACF,CAAA;AACH,CAAC;AAED,SAAS,cAAc,CAAC,YAAgC;IACtD,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,CAAA;IAC7D,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,CAAA;IACpE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACtB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;QAC5E,OAAO,MAAM,CAAC,iBAAiB,CAAA;IACjC,CAAC;IAED,IAAI,aAAqB,CAAA;IACzB,IAAI,CAAC;QACH,aAAa,GAAG,2BAA2B,CAAC,YAAY,CAAC,CAAA;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,iBAAiB,CAAA;IACjC,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;AAC1E,CAAC;AAED,SAAS,QAAQ,CAAC,YAAgC;IAChD,IAAI,YAAY,CAAC,UAAU,IAAI,YAAY,CAAC,SAAS;QAAE,OAAO,KAAK,CAAA;IACnE,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;AAC1E,CAAC;AAED,SAAS,sBAAsB,CAC7B,YAAgC,EAChC,OAA4B;IAE5B,OAAO,CACL,QAAQ,CAAC,YAAY,CAAC;QACtB,cAAc,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,iBAAiB;QAC9D,0BAA0B,CAAC,YAAY,EAAE,OAAO,CAAC,CAClD,CAAA;AACH,CAAC;AAED,SAAS,0BAA0B,CACjC,YAAgC,EAChC,OAAiD;IAEjD,MAAM,MAAM,GAAG,6BAA6B,CAAC,YAAY,CAAC,CAAA;IAC1D,MAAM,QAAQ,GAAG,6BAA6B,CAAC,OAAO,CAAC,CAAA;IACvD,OAAQ,MAAM,CAAC,IAAI,CAAC,QAAQ,CAA+B,CAAC,KAAK,CAC/D,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,GAAG,CAAC,CACvC,CAAA;AACH,CAAC;AAED,SAAS,6BAA6B,CAAC,KAA+C;IACpF,MAAM,OAAO,GACX,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAE,KAA6B,CAAC,aAAa,EAAE,OAAO,CAAA;IAC5F,OAAO;QACL,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,OAAO;QACP,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE;QACtC,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE;QACxC,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;KAC/C,CAAA;AACH,CAAC;AAED,SAAS,8BAA8B,CACrC,MAAkE,EAClE,OAMC;IAED,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,CAAA;IACxC,yBAAyB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;IAChD,wBAAwB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IAE/C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,8BAA8B,CAAC,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/D,CAAC;SAAM,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QAC5B,8BAA8B,CAAC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;IAChE,CAAC;AACH,CAAC;AAED,SAAS,yBAAyB,CAChC,OAAiC,EACjC,YAAgC;IAEhC,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/D,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,iCAAiC,EAAE,CAAC,CAAA;IAClF,CAAC;IACD,IAAI,OAAO,CAAC,cAAc,KAAK,YAAY,CAAC,cAAc,EAAE,CAAC;QAC3D,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,kCAAkC,EAAE,CAAC,CAAA;IACnF,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,KAAK,YAAY,CAAC,SAAS,EAAE,CAAC;QACjD,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,yCAAyC,EAAE,CAAC,CAAA;IAC1F,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,KAAK,YAAY,CAAC,SAAS,EAAE,CAAC;QACjD,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,yCAAyC,EAAE,CAAC,CAAA;IAC1F,CAAC;IACD,qBAAqB,CAAC,OAAO,CAAC,SAAS,EAAE,mDAAmD,CAAC,CAAA;IAC7F,eAAe,CAAC,OAAO,CAAC,SAAS,EAAE,2CAA2C,CAAC,CAAA;AACjF,CAAC;AAED,SAAS,wBAAwB,CAC/B,YAAgC,EAChC,OAIC;IAED,eAAe,CAAC,YAAY,CAAC,cAAc,EAAE,kCAAkC,CAAC,CAAA;IAChF,qBAAqB,CAAC,YAAY,CAAC,SAAS,EAAE,mDAAmD,CAAC,CAAA;IAClG,MAAM,aAAa,GAAG,eAAe,CACnC,YAAY,CAAC,aAAa,EAC1B,uCAAuC,CACxC,CAAA;IACD,MAAM,mBAAmB,GAAG,eAAe,CACzC,YAAY,CAAC,mBAAmB,EAChC,gCAAgC,CACjC,CAAA;IAED,WAAW,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,iBAAiB,EAAE;QAC7D,MAAM,EAAE,wDAAwD;KACjE,CAAC,CAAA;IACF,WAAW,CAAC,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC,mBAAmB,EAAE;QACvE,MAAM,EAAE,kEAAkE;KAC3E,CAAC,CAAA;IACF,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;QACnC,WAAW,CAAC,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,sBAAsB,EAAE;YACvE,MAAM,EAAE,uDAAuD;SAChE,CAAC,CAAA;IACJ,CAAC;IACD,IAAI,aAAa,IAAI,mBAAmB,EAAE,CAAC;QACzC,MAAM,IAAI,uBAAuB,CAAC;YAChC,MAAM,EAAE,+DAA+D;SACxE,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAED,SAAS,8BAA8B,CACrC,YAAgC,EAChC,OAAiD;IAEjD,IAAI,CAAC,0BAA0B,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,CAAC;QACvD,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,4CAA4C,EAAE,CAAC,CAAA;IAC7F,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,KAAa,EAAE,MAAc;IACpD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IAC/C,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAa,EAAE,MAAc;IAC1D,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IAC/C,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,KAAa,EAAE,MAAc;IACpD,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAA;IAC9C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IAC/C,CAAC;IACD,OAAO,YAAY,CAAA;AACrB,CAAC;AAED,SAAS,WAAW,CAAQ,MAAa,EAAE,QAAe,EAAE,OAA2B;IACrF,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,MAAM,IAAI,uBAAuB,CAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,OAA4B;IACvD,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,OAAO,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO;QACvC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;KACjD,CAAA;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,UAQ9B;IACC,MAAM,EACJ,QAAQ,EACR,cAAc,EACd,SAAS,EACT,UAAU,EAAE,sBAAsB,EAClC,KAAK,EACL,YAAY,EACZ,mBAAmB,GACpB,GAAG,UAAU,CAAA;IACd,IAAI,sBAAsB,CAAC,KAAK;QAAE,OAAO,sBAAsB,CAAC,KAAK,CAAA;IACrE,IAAI,CAAC,YAAY,CAAC,SAAS,IAAI,CAAC,YAAY,CAAC,KAAK;QAAE,OAAO,SAAS,CAAA;IACpE,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAE,WAAW,EAAE,YAAY,EAAE,EAAE,EAAE;QAChE,MAAM,SAAS,GAAG,MAAM,yBAAyB,CAAC;YAChD,SAAS,EAAE,YAAY,CAAC,SAAU;YAClC,QAAQ;YACR,cAAc;YACd,SAAS;YACT,SAAS,EAAE,YAAY,CAAC,SAAS;YACjC,OAAO,EAAE,YAAY;YACrB,mBAAmB,EAAE,iBAAiB;YACtC,MAAM,EAAE,YAAY,CAAC,KAAM;YAC3B,KAAK;YACL,mBAAmB;SACpB,CAAC,CAAA;QACF,MAAM,MAAM,GAAG;YACb,GAAG,YAAY;YACf,iBAAiB,EAAE,WAAW;YAC9B,SAAS;YACT,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACP,CAAA;QAC9B,OAAO;YACL,OAAO,EAAE,mBAAmB,CAAC,yBAAyB,CAAC,MAAM,CAAC;YAC9D,YAAY,EAAE,MAAM;SACrB,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AAED,KAAK,UAAU,yBAAyB,CAAC,UAcxC;IACC,MAAM,EACJ,SAAS,EACT,QAAQ,EACR,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,SAAS,EACT,OAAO,EACP,mBAAmB,EACnB,MAAM,EACN,KAAK,EACL,mBAAmB,GACpB,GAAG,UAAU,CAAA;IACd,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;IAClD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,uBAAuB,CAAC,EAAE,MAAM,EAAE,oCAAoC,EAAE,CAAC,CAAA;IACrF,CAAC;IACD,MAAM,gBAAgB,GAAG,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACtE,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC1E,MAAM,IAAI,uBAAuB,CAAC;YAChC,MAAM,EAAE,mDAAmD;SAC5D,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO,CAAA;IAChE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;IAC3C,MAAM,OAAO,GAAG,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE;QAC5D,MAAM,EAAE,MAAM,CAAC,OAAO;KACvB,CAAC,CAAA;IACF,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC;QAC9B,WAAW,EAAE,mBAAmB;QAChC,QAAQ,EAAE,SAAS;KACpB,CAAC,CAAA;IACF,MAAM,eAAe,GAAG;QACtB,OAAO;QACP,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,kBAAkB,CAAC;oBACvB,GAAG,EAAE,IAAI,CAAC,KAAK;oBACf,YAAY,EAAE,kBAAkB;oBAChC,IAAI,EAAE,CAAC,OAAO,CAAC,SAAoB,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC;iBACnE,CAAC;gBACF,EAAE,EAAE,OAAO,CAAC,QAAmB;aAChC;SACF;QACD,OAAO;QACP,GAAG,CAAC,gBAAgB;YAClB,CAAC,CAAC,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE;YACtE,CAAC,CAAC,EAAE,CAAC;KACR,CAAA;IACD,MAAM,qBAAqB,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE;QAC9C,IAAI,CAAC,QAAQ;YAAE,OAAO,MAAM,eAAe,CAAC,MAAM,EAAE,eAAwB,CAAC,CAAA;QAC7E,yEAAyE;QACzE,8DAA8D;QAC9D,kEAAkE;QAClE,iEAAiE;QACjE,uEAAuE;QACvE,qEAAqE;QACrE,qDAAqD;QACrD,MAAM,QAAQ,GAAG,MAAM,yBAAyB,CAAC,MAAM,EAAE;YACvD,GAAG,eAAe;YAClB,QAAQ,EAAE,UAAU;SACZ,CAAC,CAAA;QACX,QAAQ,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,KAAM,CAC3C;QAAC,QAAoC,CAAC,QAAQ,GAAG,IAAI,CAAA;QACtD,MAAM,cAAc,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,QAAiB,CAAC,CAAA;QACvE,MAAM,eAAe,GAAG,WAAW,CAAC,WAAW,CAC7C,cAAwD,CACzD,CAAA;QACD,MAAM,SAAS,GAAG,QAAQ,CAAC,2BAA2B,CAAC;YACrD,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,OAAO,IAAI,MAAM,CAAC,KAAM,CAAC,EAAE;YACpC,OAAO,EAAE;gBACP,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC9B,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAClC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;aACrC;YACD,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,WAAW,EAAE,eAAwB;SACtC,CAAC,CAAA;QACF,OAAO,MAAM,eAAe,CAAC,MAAM,EAAE,SAAkB,CAAC,CAAA;IAC1D,CAAC,CAAC,EAAE,CAAA;IACJ,MAAM,WAAW,GAAG,WAAW,CAAC,WAAW,CACzC,qBAA+D,CAChE,CAAA;IACD,MAAM,SAAS,CAAC,MAAM,EAAE;QACtB,GAAG,WAAW;QACd,OAAO,EAAE,WAAW,CAAC,IAAI;QACzB,KAAK,EAAE,WAAW,CAAC,KAAK;QACxB,iBAAiB,EAAE,SAAS;KACpB,CAAC,CAAA;IAEX,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,OAAO,kBAAkB,CAAC,MAAM,EAAE;YAChC,qBAAqB,EAAE,qBAA+D;SACvF,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE;QACnD,qBAAqB,EAAE,qBAA+D;KACvF,CAAC,CAAA;IACF,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,IAAI,uBAAuB,CAAC;YAChC,MAAM,EAAE,sCAAsC,OAAO,CAAC,eAAe,EAAE;SACxE,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,OAAO,CAAC,eAAe,CAAA;AAChC,CAAC;AAED,SAAS,oBAAoB;IAC3B,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAA;IAChC,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;IACxC,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AAClE,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,UAA4B;IACtD,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,EAAE;QACxC,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,OAAO,EAAE;YACP,gBAAgB,EAAE,UAAU,CAAC,gBAAgB;SAC9C;KACF,CAAC,CAAA;IAEF,OAAO,gBAAgB,CAAC;QACtB,OAAO;QACP,cAAc,EAAE,UAAU,CAAC,cAAc;KAC1C,CAAC,CAAA;AACJ,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,UAG/B;IACC,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,UAAU,CAAA;IAC9C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IACtD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IACxB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAA;IAClC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAC7D,IAAI,MAAM,EAAE,cAAc,KAAK,MAAM,CAAC,cAAc;QAAE,OAAO,IAAI,CAAA;IAEjE,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,CAAA;IAC1C,IAAI,WAAW,IAAI,MAAM,CAAC,iBAAiB;QAAE,OAAO,IAAI,CAAA;IAExD,MAAM,KAAK,GAAG,qBAAqB,CAAC;QAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,YAAY,EAAE,MAAM;QACpB,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;KACjD,CAAC,CAAA;IACF,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAA;IAEvB,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC;QAClC,iBAAiB,EAAE,MAAM,CAAC,SAAS;QACnC,WAAW;QACX,KAAK;QACL,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,YAAY,EAAE,MAAM;KACrB,CAAC,CAAA;IACF,IAAI,OAAO,EAAE,MAAM,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IAE9C,MAAM,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;QACxC,WAAW;QACX,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO;QAC/B,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY;KAC1C,CAAC,CAAA;IACF,OAAO,OAAO,CAAC,MAAM,CAAA;AACvB,CAAC;AA6JD,SAAS,aAAa,CACpB,UAAsB,EACtB,OAA8B;IAE9B,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IAChD,MAAM,KAAK,GAAG,iBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;IACzE,MAAM,SAAS,GAAG,cAAc,CAAC,WAAW,CAAC;QAC3C,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,MAAM,EAAE,QAAQ,CAAC,MAAM;KACxB,CAAC,CAAA;IACF,OAAO;QACL,QAAQ;QACR,cAAc,EAAE,qBAAqB,CAAC,UAAU,CAAC,cAAc,CAAC;QAChE,SAAS;QACT,UAAU;QACV,KAAK;QACL,mBAAmB,EAAE,UAAU,CAAC,mBAAmB,IAAI,IAAI;KAC5D,CAAA;AACH,CAAC"}