@arnaudjnn/billing-tools 25.8.6 → 25.8.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/billing.d.ts CHANGED
@@ -280,22 +280,21 @@ export type PurchaseResult = {
280
280
  * same machinery as any other invoice.
281
281
  */
282
282
  /**
283
- * What a credit invoice must ACTUALLY grant, once Stripe has taken its bite.
284
- *
285
- * Stripe applies a customer's credit balance to any invoice it finalizes, and this
286
- * library's wallet IS that balance — so an invoice for 600 000 credits at €4 200 was
287
- * settled €5 cheaper out of the 500 credits the customer was already holding. Measured on
288
- * a real account: `subtotal 420000, starting_balance -500, amount_due 419500,
289
- * ending_balance 0`. They pay less money and LOSE credits they had already bought, which
290
- * is the one outcome nobody would agree to.
291
- *
292
- * There is no per-invoice flag to refuse that — it happens at finalization. So the fix is
293
- * on the other side: grant what was sold PLUS whatever the invoice ate, which puts the
294
- * customer exactly where the deal said they would be. `starting_balance` is negative when
295
- * a credit was applied, and is in minor units, which is the same unit as a credit.
296
- *
297
- * The same arithmetic serves every invoiced purchase — a quote, a `buy_credits --method
298
- * invoice`, an auto-reload — which is why it lives here rather than at three call sites.
283
+ * What a credit invoice grants: the quantity it SOLD, from `metadata.credits`, and nothing
284
+ * else.
285
+ *
286
+ * Stripe applies a customer's credit balance to any invoice it finalizes, and this library's
287
+ * wallet IS that balance. This used to answer `sold + eaten` — repaying whatever the invoice
288
+ * had taken out of the wallet — which put the wallet right and left the CASH wrong: an
289
+ * Enterprise quote for 10 000 credits at €70 was settled €29.99 from the 2 999 credits the
290
+ * customer held, charged €40.01 to the card, and then re-granted the 2 999. The customer kept
291
+ * every credit and paid €29.99 less; an auto-reload with a full wallet was charged €0 and
292
+ * granted a wallet's worth on top. The fix is upstream: every invoice this library raises is
293
+ * finalized by `finalizeOutsideWallet`, so nothing is eaten and the sale grants what it sold.
294
+ *
295
+ * `starting_balance` is deliberately NOT read any more. An invoice finalized before that fix
296
+ * (an open emailed one paid later) grants what it sold: its customer paid that much less in
297
+ * cash and spent that many credits, which is a swap rather than a gift.
299
298
  */
300
299
  export declare function creditsOwedFor(invoice: {
301
300
  metadata?: {
@@ -303,6 +302,74 @@ export declare function creditsOwedFor(invoice: {
303
302
  } | null;
304
303
  starting_balance?: number | null;
305
304
  }): number;
305
+ /**
306
+ * Grant a library-issued credit invoice — the ONE call every path makes for it.
307
+ *
308
+ * The off-session charge credits synchronously, and the `invoice.paid` webhook and the
309
+ * poller credit the same invoice when its event lands. They share the idempotency key so the
310
+ * second is a no-op, and that only works if they also send IDENTICAL parameters: Stripe
311
+ * rejects a reused key with different ones. They did not — the auto-reload granted under its
312
+ * own key ("Auto-reload: 1 902 credits") and the event under `credit:invoice:<id>` with a
313
+ * different amount, so the same reload was credited twice; the card purchase and the event
314
+ * agreed on the key but not the description, so the event's grant errored on every delivery.
315
+ * Everything here is derived from the invoice alone, so every caller sends the same request.
316
+ */
317
+ export declare function grantInvoiceCredits(invoice: Pick<Stripe.Invoice, "id" | "customer" | "metadata">, currency: string): Promise<number>;
318
+ /**
319
+ * Finalize an invoice WITHOUT letting Stripe settle it from the wallet.
320
+ *
321
+ * Stripe applies the customer's credit balance at finalization and offers no per-invoice
322
+ * way to refuse it, and that balance is the prepaid wallet — so a credit purchase was paid
323
+ * for, in part or in full, with credits. The balance is therefore SET ASIDE for the instant
324
+ * of finalization (zeroed by an adjustment) and restored straight after, both keyed on the
325
+ * invoice so a retry neither sets aside twice nor restores twice.
326
+ *
327
+ * Both transactions carry `kind: "adjustment"`, which the usage ledger skips, so they move
328
+ * no one's usage. The cost is the window itself, one finalize call long: a metered call
329
+ * landing in it reads an empty wallet and is refused. That refusal is retryable; the
330
+ * alternative was revenue nobody collected.
331
+ */
332
+ export declare function finalizeOutsideWallet(stripeCustomerId: string, invoiceId: string, currency: string): Promise<Stripe.Invoice>;
333
+ /**
334
+ * Run `fn` — any Stripe call that FINALIZES an invoice — with the wallet set aside.
335
+ *
336
+ * `finalizeOutsideWallet` is this around `finalizeInvoice`. It is separate because not every
337
+ * finalization is a `finalizeInvoice` call: an `always_invoice` plan change creates and
338
+ * finalizes its proration invoice inside `subscriptions.update`, so the set-aside has to
339
+ * wrap that call instead. `key` names the operation, so a retry neither sets aside nor
340
+ * restores twice.
341
+ */
342
+ export declare function withWalletSetAside<T>(stripeCustomerId: string, currency: string, key: string, fn: () => Promise<T>): Promise<T>;
343
+ /**
344
+ * Finalize a SUBSCRIPTION invoice ourselves, outside the wallet, before Stripe does.
345
+ *
346
+ * A renewal (and a `create_prorations` change, and a scheduled downgrade) is created as a
347
+ * draft and auto-finalized by Stripe about an hour later — at which point the customer's
348
+ * credit balance, which is the wallet, pays it. Credits bought for usage then pay for seats,
349
+ * which is the credit-sale defect again on the largest recurring charge. So on
350
+ * `invoice.created` the draft is finalized here, with the wallet set aside, and Stripe's own
351
+ * auto-advance then collects it from the card.
352
+ *
353
+ * Idempotent: an invoice that is no longer a draft — already finalized by us, by Stripe, or
354
+ * by a concurrent delivery of the same event — is left alone. Both the webhook and the poller
355
+ * call this; whichever runs second finds nothing to do. Returns whether it finalized.
356
+ */
357
+ export declare function finalizeSubscriptionDraft(invoice: {
358
+ id?: string | null;
359
+ billing_reason?: string | null;
360
+ }): Promise<boolean>;
361
+ /**
362
+ * Whether a PAID invoice was settled, in part, out of the wallet — `starting_balance < 0`.
363
+ *
364
+ * Every invoice this library finalizes sets the wallet aside, so this should never be true.
365
+ * When it is, a path escaped: a webhook and a poll both missed a renewal's one-hour draft
366
+ * window, or a Checkout-created first invoice (finalized by Checkout itself, where nothing
367
+ * can intervene). Detection, so it is visible rather than silent: `createBillingSync`
368
+ * reports it through `hooks.onPaidFromWallet` and the doctor lists recent ones.
369
+ */
370
+ export declare function paidFromWallet(invoice: {
371
+ starting_balance?: number | null;
372
+ }): number;
306
373
  export declare function sellCredits(stripeCustomerId: string, orgId: string, config: ResolvedConfig, input: {
307
374
  /** What they get. */
308
375
  credits: number;
@@ -1 +1 @@
1
- {"version":3,"file":"billing.d.ts","sourceRoot":"","sources":["../src/billing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"billing.d.ts","sourceRoot":"","sources":["../src/billing.ts"],"names":[],"mappings":"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"}
package/dist/billing.js CHANGED
@@ -491,29 +491,157 @@ export async function createCreditCheckoutSession(stripeCustomerId, orgId, amoun
491
491
  * same machinery as any other invoice.
492
492
  */
493
493
  /**
494
- * What a credit invoice must ACTUALLY grant, once Stripe has taken its bite.
494
+ * What a credit invoice grants: the quantity it SOLD, from `metadata.credits`, and nothing
495
+ * else.
495
496
  *
496
- * Stripe applies a customer's credit balance to any invoice it finalizes, and this
497
- * library's wallet IS that balance — so an invoice for 600 000 credits at €4 200 was
498
- * settled €5 cheaper out of the 500 credits the customer was already holding. Measured on
499
- * a real account: `subtotal 420000, starting_balance -500, amount_due 419500,
500
- * ending_balance 0`. They pay less money and LOSE credits they had already bought, which
501
- * is the one outcome nobody would agree to.
497
+ * Stripe applies a customer's credit balance to any invoice it finalizes, and this library's
498
+ * wallet IS that balance. This used to answer `sold + eaten` — repaying whatever the invoice
499
+ * had taken out of the wallet — which put the wallet right and left the CASH wrong: an
500
+ * Enterprise quote for 10 000 credits at €70 was settled €29.99 from the 2 999 credits the
501
+ * customer held, charged €40.01 to the card, and then re-granted the 2 999. The customer kept
502
+ * every credit and paid €29.99 less; an auto-reload with a full wallet was charged €0 and
503
+ * granted a wallet's worth on top. The fix is upstream: every invoice this library raises is
504
+ * finalized by `finalizeOutsideWallet`, so nothing is eaten and the sale grants what it sold.
502
505
  *
503
- * There is no per-invoice flag to refuse that — it happens at finalization. So the fix is
504
- * on the other side: grant what was sold PLUS whatever the invoice ate, which puts the
505
- * customer exactly where the deal said they would be. `starting_balance` is negative when
506
- * a credit was applied, and is in minor units, which is the same unit as a credit.
507
- *
508
- * The same arithmetic serves every invoiced purchase — a quote, a `buy_credits --method
509
- * invoice`, an auto-reload — which is why it lives here rather than at three call sites.
506
+ * `starting_balance` is deliberately NOT read any more. An invoice finalized before that fix
507
+ * (an open emailed one paid later) grants what it sold: its customer paid that much less in
508
+ * cash and spent that many credits, which is a swap rather than a gift.
510
509
  */
511
510
  export function creditsOwedFor(invoice) {
512
511
  const sold = parseInt(invoice.metadata?.credits ?? "0", 10);
513
- if (!Number.isFinite(sold) || sold <= 0)
512
+ return Number.isFinite(sold) && sold > 0 ? sold : 0;
513
+ }
514
+ /**
515
+ * Grant a library-issued credit invoice — the ONE call every path makes for it.
516
+ *
517
+ * The off-session charge credits synchronously, and the `invoice.paid` webhook and the
518
+ * poller credit the same invoice when its event lands. They share the idempotency key so the
519
+ * second is a no-op, and that only works if they also send IDENTICAL parameters: Stripe
520
+ * rejects a reused key with different ones. They did not — the auto-reload granted under its
521
+ * own key ("Auto-reload: 1 902 credits") and the event under `credit:invoice:<id>` with a
522
+ * different amount, so the same reload was credited twice; the card purchase and the event
523
+ * agreed on the key but not the description, so the event's grant errored on every delivery.
524
+ * Everything here is derived from the invoice alone, so every caller sends the same request.
525
+ */
526
+ export async function grantInvoiceCredits(invoice, currency) {
527
+ const credits = creditsOwedFor(invoice);
528
+ const customer = typeof invoice.customer === "string" ? invoice.customer : invoice.customer?.id;
529
+ if (!credits || !customer || !invoice.id)
514
530
  return 0;
515
- const eaten = invoice.starting_balance && invoice.starting_balance < 0 ? -invoice.starting_balance : 0;
516
- return sold + eaten;
531
+ await grantCredits(customer, credits, invoice.metadata?.auto_reload === "true" ? `Auto-reload: ${credits} credits` : `Purchase: ${credits} credits`, currency, `credit:invoice:${invoice.id}`);
532
+ return credits;
533
+ }
534
+ /**
535
+ * Finalize an invoice WITHOUT letting Stripe settle it from the wallet.
536
+ *
537
+ * Stripe applies the customer's credit balance at finalization and offers no per-invoice
538
+ * way to refuse it, and that balance is the prepaid wallet — so a credit purchase was paid
539
+ * for, in part or in full, with credits. The balance is therefore SET ASIDE for the instant
540
+ * of finalization (zeroed by an adjustment) and restored straight after, both keyed on the
541
+ * invoice so a retry neither sets aside twice nor restores twice.
542
+ *
543
+ * Both transactions carry `kind: "adjustment"`, which the usage ledger skips, so they move
544
+ * no one's usage. The cost is the window itself, one finalize call long: a metered call
545
+ * landing in it reads an empty wallet and is refused. That refusal is retryable; the
546
+ * alternative was revenue nobody collected.
547
+ */
548
+ export async function finalizeOutsideWallet(stripeCustomerId, invoiceId, currency) {
549
+ return withWalletSetAside(stripeCustomerId, currency, invoiceId, () => getStripe().invoices.finalizeInvoice(invoiceId));
550
+ }
551
+ /**
552
+ * Run `fn` — any Stripe call that FINALIZES an invoice — with the wallet set aside.
553
+ *
554
+ * `finalizeOutsideWallet` is this around `finalizeInvoice`. It is separate because not every
555
+ * finalization is a `finalizeInvoice` call: an `always_invoice` plan change creates and
556
+ * finalizes its proration invoice inside `subscriptions.update`, so the set-aside has to
557
+ * wrap that call instead. `key` names the operation, so a retry neither sets aside nor
558
+ * restores twice.
559
+ */
560
+ export async function withWalletSetAside(stripeCustomerId, currency, key, fn) {
561
+ const stripe = getStripe();
562
+ const held = await getCreditBalance(stripeCustomerId, currency);
563
+ if (held <= 0)
564
+ return fn();
565
+ await stripe.customers.createBalanceTransaction(stripeCustomerId, {
566
+ amount: held,
567
+ currency,
568
+ description: `Wallet set aside while ${key} is issued`,
569
+ metadata: { kind: "adjustment", set_aside_for: key },
570
+ }, { idempotencyKey: `wallet-aside:${key}` });
571
+ try {
572
+ return await fn();
573
+ }
574
+ finally {
575
+ // The restore is the customer's money: retried, and loud if it still fails.
576
+ let restored = false;
577
+ let lastError;
578
+ for (let attempt = 0; attempt < 3 && !restored; attempt++) {
579
+ try {
580
+ await stripe.customers.createBalanceTransaction(stripeCustomerId, {
581
+ amount: -held,
582
+ currency,
583
+ description: `Wallet restored after ${key} was issued`,
584
+ metadata: { kind: "adjustment", restored_for: key },
585
+ }, { idempotencyKey: `wallet-restore:${key}` });
586
+ restored = true;
587
+ }
588
+ catch (e) {
589
+ lastError = e;
590
+ }
591
+ }
592
+ if (!restored) {
593
+ console.error(`[billing] could not restore ${held} credits set aside for ${key} on ${stripeCustomerId}:`, lastError);
594
+ }
595
+ }
596
+ }
597
+ /**
598
+ * Finalize a SUBSCRIPTION invoice ourselves, outside the wallet, before Stripe does.
599
+ *
600
+ * A renewal (and a `create_prorations` change, and a scheduled downgrade) is created as a
601
+ * draft and auto-finalized by Stripe about an hour later — at which point the customer's
602
+ * credit balance, which is the wallet, pays it. Credits bought for usage then pay for seats,
603
+ * which is the credit-sale defect again on the largest recurring charge. So on
604
+ * `invoice.created` the draft is finalized here, with the wallet set aside, and Stripe's own
605
+ * auto-advance then collects it from the card.
606
+ *
607
+ * Idempotent: an invoice that is no longer a draft — already finalized by us, by Stripe, or
608
+ * by a concurrent delivery of the same event — is left alone. Both the webhook and the poller
609
+ * call this; whichever runs second finds nothing to do. Returns whether it finalized.
610
+ */
611
+ export async function finalizeSubscriptionDraft(invoice) {
612
+ if (!invoice.id || !invoice.billing_reason?.startsWith("subscription"))
613
+ return false;
614
+ const stripe = getStripe();
615
+ const fresh = await stripe.invoices.retrieve(invoice.id);
616
+ if (fresh.status !== "draft")
617
+ return false;
618
+ const customer = typeof fresh.customer === "string" ? fresh.customer : fresh.customer?.id;
619
+ if (!customer)
620
+ return false;
621
+ try {
622
+ await finalizeOutsideWallet(customer, invoice.id, fresh.currency);
623
+ return true;
624
+ }
625
+ catch (e) {
626
+ // Lost a race with another finalizer (Stripe's own, or a second delivery): fine, as
627
+ // long as the invoice really is no longer a draft. Anything else is a real failure.
628
+ const again = await stripe.invoices.retrieve(invoice.id);
629
+ if (again.status !== "draft")
630
+ return false;
631
+ throw e;
632
+ }
633
+ }
634
+ /**
635
+ * Whether a PAID invoice was settled, in part, out of the wallet — `starting_balance < 0`.
636
+ *
637
+ * Every invoice this library finalizes sets the wallet aside, so this should never be true.
638
+ * When it is, a path escaped: a webhook and a poll both missed a renewal's one-hour draft
639
+ * window, or a Checkout-created first invoice (finalized by Checkout itself, where nothing
640
+ * can intervene). Detection, so it is visible rather than silent: `createBillingSync`
641
+ * reports it through `hooks.onPaidFromWallet` and the doctor lists recent ones.
642
+ */
643
+ export function paidFromWallet(invoice) {
644
+ return invoice.starting_balance && invoice.starting_balance < 0 ? -invoice.starting_balance : 0;
517
645
  }
518
646
  export async function sellCredits(stripeCustomerId, orgId, config, input) {
519
647
  const { credits, amountMinor } = input;
@@ -581,7 +709,7 @@ export async function sellCredits(stripeCustomerId, orgId, config, input) {
581
709
  }, { idempotencyKey: `${key}:invoice` });
582
710
  if (!draft.id)
583
711
  return { status: "refused", reason: "charge_failed", message: "Stripe returned no invoice." };
584
- const finalized = await stripe.invoices.finalizeInvoice(draft.id);
712
+ const finalized = await finalizeOutsideWallet(stripeCustomerId, draft.id, currency);
585
713
  if (card) {
586
714
  // Off-session, because nobody is at a browser: this is an operator accepting on the
587
715
  // customer's behalf, or an admin pressing accept on a price agreed days ago.
@@ -710,6 +838,7 @@ export async function purchaseCredits(stripeCustomerId, orgId, amountMajor, conf
710
838
  return { status: "refused", reason: "charge_failed", message: "Stripe returned no invoice." };
711
839
  let settled;
712
840
  try {
841
+ await finalizeOutsideWallet(stripeCustomerId, invoice.id, currency);
713
842
  settled = await stripe.invoices.pay(invoice.id, { off_session: true });
714
843
  if (settled.status !== "paid") {
715
844
  return { status: "refused", reason: "charge_failed", message: `Invoice is ${settled.status}, not paid.` };
@@ -728,13 +857,9 @@ export async function purchaseCredits(stripeCustomerId, orgId, amountMajor, conf
728
857
  // synchronous: the caller gets `charged` and the balance is already true. The webhook
729
858
  // grants on the same key, so a delivered event cannot double it.
730
859
  //
731
- // `creditsOwedFor`, NOT `credits`: Stripe applies the customer's credit balance to any
732
- // invoice it finalizes, and this library's wallet IS that balance — so a customer with
733
- // 100 credits buying 2 000 paid $20, had their 100 eaten, and ended on 2 000 instead of
734
- // 2 100 (measured headless, exactly the loss `creditsOwedFor` exists to repay). The
735
- // webhook path already used it; this one, which credits before the event, did not.
736
- const owed = creditsOwedFor(settled) || credits;
737
- await grantCredits(stripeCustomerId, owed, `Purchase: ${credits} credits`, currency, `credit:invoice:${invoice.id}`);
860
+ // `grantInvoiceCredits`, the same request the event will send, so it is a no-op there.
861
+ // Nothing was eaten: `finalizeOutsideWallet` kept the wallet off the invoice.
862
+ await grantInvoiceCredits({ id: invoice.id, customer: stripeCustomerId, metadata: { org_id: orgId, credits: String(credits) } }, currency);
738
863
  return { status: "charged", method, credits, invoiceId: invoice.id };
739
864
  }
740
865
  // method === "invoice" — Stripe sends the bill and collects it.
@@ -771,7 +896,7 @@ export async function purchaseCredits(stripeCustomerId, orgId, amountMajor, conf
771
896
  return { status: "refused", reason: "charge_failed", message: "Stripe returned no invoice." };
772
897
  // Finalize THEN send: an unfinalized invoice has no number, no hosted page and nothing to
773
898
  // pay, and `sendInvoice` on a draft is an error rather than a send.
774
- const finalized = await stripe.invoices.finalizeInvoice(draft.id);
899
+ const finalized = await finalizeOutsideWallet(stripeCustomerId, draft.id, currency);
775
900
  // The SEND can fail on its own — an account not yet activated for invoice emails answers
776
901
  // "This invoice cannot be sent right now", which is Stripe's, not the customer's fault.
777
902
  // The invoice is finalized and payable either way, so losing its hosted URL to that error
@@ -1006,11 +1131,17 @@ opts = {}) {
1006
1131
  }, { idempotencyKey: `${key}:invoice` });
1007
1132
  if (!invoice.id)
1008
1133
  return;
1134
+ // Finalized with the wallet SET ASIDE. Otherwise a reload — which by definition fires
1135
+ // while the wallet still holds credits — was paid out of them: measured, a 1 902-credit
1136
+ // reload on a wallet of 12 998 charged the card €0.
1137
+ await finalizeOutsideWallet(stripeCustomerId, invoice.id, currency);
1009
1138
  const paid = await stripe.invoices.pay(invoice.id, { off_session: true });
1010
1139
  if (paid.status === "paid") {
1011
- // Same key: a retry that finds the invoice already paid must not credit
1012
- // a second time.
1013
- await grantCredits(stripeCustomerId, creditsNeeded, `Auto-reload: ${creditsNeeded} credits`, currency, `credit:${key}`);
1140
+ // The invoice's own grant, under the key the `invoice.paid` event uses, so the event
1141
+ // is a no-op. It used `credit:${key}`, and the event granted the same reload again.
1142
+ // Built from what this call set rather than read off the response, so the request is
1143
+ // byte-for-byte the one the event handler derives from the same invoice.
1144
+ await grantInvoiceCredits({ id: invoice.id, customer: stripeCustomerId, metadata: { auto_reload: "true", credits: String(creditsNeeded) } }, currency);
1014
1145
  }
1015
1146
  }
1016
1147
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"billing.js","sourceRoot":"","sources":["../src/billing.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,kFAAkF;AAClF,oFAAoF;AACpF,iFAAiF;AACjF,+EAA+E;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,+EAA+E;AAC/E,wEAAwE;AACxE,0EAA0E;AAC1E,oEAAoE;AAEpE,0EAA0E;AAC1E,iEAAiE;AACjE,IAAI,OAAO,GAAkB,IAAI,CAAC;AAClC,MAAM,UAAU,SAAS;IACvB,OAAO,CAAC,OAAO,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAkB,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;AACzC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAe;IACjD,OAAO,GAAG,MAAgB,CAAC;AAC7B,CAAC;AAoBD,SAAS,aAAa,CAAC,CAAe;IACpC,MAAM,OAAO,GACX,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,OAAO,CAAC;QACrE,CAAC,CAAE,CAAC,CAAC,OAA0B;QAC/B,CAAC,CAAC,IAAI,CAAC;IACX,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,SAAS,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5E,WAAW,EAAE,OAAO,EAAE,IAAI,IAAI,IAAI;QAClC,SAAS,EAAE,CAAC,CAAC,UAAU,IAAI,IAAI;QAC/B,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,IAAI;QAC5B,UAAU,EAAE,CAAC,CAAC,WAAW;QACzB,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,QAAQ,IAAI,IAAI;QACvC,aAAa,EAAE,CAAC,CAAC,SAAS,EAAE,cAAc,IAAI,IAAI;KACnD,CAAC;AACJ,CAAC;AAED;;0BAE0B;AAC1B,MAAM,CAAC,KAAK,UAAU,sBAAsB;IAC1C,MAAM,GAAG,GAAkB,EAAE,CAAC;IAC9B,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;QAC5C,MAAM,EAAE,IAAI;QACZ,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,GAAG;QACV,MAAM,EAAE,CAAC,cAAc,CAAC;KACzB,CAAC,EAAE,CAAC;QACH,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;6EAI6E;AAC7E,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,OAAiD,EAAE;IAEnD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAC9E,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACjC,WAAW,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;YAC7B,MAAM,EAAE,IAAI;YACZ,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC,cAAc,CAAC;SACzB,CAAC,CAAC;QACH,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,OAAO,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC3C,OAAO,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,OAAuB,EACvB,KAAa;IAEb,OAAO,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;AAC7C,CAAC;AAED;;;;;;kCAMkC;AAClC,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,OAAuB,EACvB,KAAa;IASb,OAAO,CACL,CAAC,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI;QAC1C,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,IAAI;QACZ,cAAc,EAAE,IAAI;QACpB,WAAW,EAAE,IAAI;QACjB,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,IAAI;QACX,UAAU,EAAE,IAAI;KACjB,CACF,CAAC;AACJ,CAAC;AAED,2EAA2E;AAC3E,0EAA0E;AAC1E,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,OAAuB,EACvB,KAAa,EACb,KAAyB,EACzB,MAAsB;IAEtB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC3D,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAE9B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;QAC7C,KAAK;QACL,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;QAC3B,oEAAoE;QACpE,GAAG,CAAC,MAAM,CAAC,aAAa;YACtB,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;YAC/C,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;QAC3B,wEAAwE;QACxE,kDAAkD;QAClD,MAAM,MAAM,CAAC,SAAS,CAAC,wBAAwB,CAC7C,QAAQ,CAAC,EAAE,EACX;YACE,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW;YAC3B,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,WAAW,EAAE,kBAAkB,MAAM,CAAC,WAAW,eAAe;SACjE,EACD,EAAE,cAAc,EAAE,WAAW,KAAK,EAAE,EAAE,CACvC,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,CAAC,oBAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvD,OAAO,QAAQ,CAAC,EAAE,CAAC;AACrB,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,gBAAwB;IAExB,MAAM,QAAQ,GAAG,MAAM,SAAS,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACxE,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,QAA4B,CAAC;AACjE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,gBAAwB,EACxB,QAAiB;AACjB,iFAAiF;AACjF,UAAmC;IAEnC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,QAAQ,GAAG,UAAU,IAAI,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACnF,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,CAAC,CAAC;IAEvE,MAAM,IAAI,GAAG,QAAQ,EAAE,WAAW,EAAE,CAAC;IACrC,8EAA8E;IAC9E,6EAA6E;IAC7E,iFAAiF;IACjF,oEAAoE;IACpE,MAAM,MAAM,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAEtC,6EAA6E;IAC7E,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QAC9D,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,8EAA8E;IAC9E,4EAA4E;IAC5E,2CAA2C;IAC3C,EAAE;IACF,yEAAyE;IACzE,wEAAwE;IACxE,6EAA6E;IAC7E,iCAAiC;IACjC,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,KAAK,EAAE,MAAM,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,gBAAgB,EAAE;QAChF,KAAK,EAAE,GAAG;KACX,CAAC,EAAE,CAAC;QACH,IAAI,EAAE,CAAC,QAAQ,KAAK,IAAI;YAAE,OAAO,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC;QAC3D,IAAI,EAAE,OAAO,IAAI,GAAG;YAAE,MAAM;IAC9B,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,gBAAwB,EACxB,QAAgB,EAChB,IAAY,EACZ,QAAgB;AAChB;+EAC+E;AAC/E,MAAsC;IAEtC,MAAM,SAAS,EAAE,CAAC,SAAS,CAAC,wBAAwB,CAAC,gBAAgB,EAAE;QACrE,MAAM,EAAE,IAAI,EAAE,mBAAmB;QACjC,QAAQ;QACR,WAAW,EAAE,cAAc,QAAQ,KAAK,IAAI,WAAW;QACvD,QAAQ,EAAE;YACR,MAAM,EAAE,QAAQ;YAChB,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChD;KACF,CAAC,CAAC;AACL,CAAC;AAED,4EAA4E;AAC5E,4EAA4E;AAC5E,+EAA+E;AAC/E,gFAAgF;AAChF,0EAA0E;AAC1E,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,gBAAwB,EACxB,KAAa,EACb,MAAmD;IAEnD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,KAAK,EAAE,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC,SAAS,CAAC,uBAAuB,CAAC,gBAAgB,EAAE;QACrF,KAAK,EAAE,GAAG;KACX,CAAC,EAAE,CAAC;QACH,IAAI,EAAE,CAAC,OAAO,GAAG,KAAK;YAAE,MAAM;QAC9B,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC;YAAE,SAAS,CAAC,8BAA8B;QAC5D,0EAA0E;QAC1E,yEAAyE;QACzE,IAAI,EAAE,CAAC,QAAQ,EAAE,IAAI,KAAK,YAAY;YAAE,SAAS;QACjD,IAAI,MAAM,EAAE,UAAU,IAAI,EAAE,CAAC,QAAQ,EAAE,WAAW,KAAK,MAAM,CAAC,UAAU;YAAE,SAAS;QACnF,IAAI,MAAM,EAAE,QAAQ,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,KAAK,MAAM,CAAC,QAAQ;YAAE,SAAS;QAC7E,KAAK,IAAI,EAAE,CAAC,MAAM,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,gBAAwB,EACxB,OAAqD,EACrD,MAAmD;IAEnD,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IAC/B,MAAM,MAAM,GAAG,IAAI,KAAK,CAAS,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAExD,IAAI,KAAK,EAAE,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC,SAAS,CAAC,uBAAuB,CAAC,gBAAgB,EAAE;QACrF,KAAK,EAAE,GAAG;KACX,CAAC,EAAE,CAAC;QACH,0EAA0E;QAC1E,IAAI,EAAE,CAAC,OAAO,GAAG,MAAM;YAAE,MAAM;QAC/B,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC;YAAE,SAAS,CAAC,8BAA8B;QAC5D,IAAI,EAAE,CAAC,QAAQ,EAAE,IAAI,KAAK,YAAY;YAAE,SAAS;QACjD,IAAI,MAAM,EAAE,UAAU,IAAI,EAAE,CAAC,QAAQ,EAAE,WAAW,KAAK,MAAM,CAAC,UAAU;YAAE,SAAS;QACnF,IAAI,MAAM,EAAE,QAAQ,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,KAAK,MAAM,CAAC,QAAQ;YAAE,SAAS;QAC7E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;YACtB,2EAA2E;YAC3E,4EAA4E;YAC5E,IAAI,EAAE,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC;gBAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC;QACjG,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,OAAO,IAAI,KAAK,4BAA4B,IAAI,IAAI,KAAK,0CAA0C,CAAC;AACtG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,gBAAwB,EACxB,MAAc,EACd,WAAmB,EACnB,QAAgB;AAChB;2EAC2E;AAC3E,cAAuB;IAEvB,MAAM,SAAS,EAAE,CAAC,SAAS,CAAC,wBAAwB,CAClD,gBAAgB,EAChB;QACE,MAAM,EAAE,CAAC,MAAM,EAAE,oBAAoB;QACrC,QAAQ;QACR,WAAW;KACZ,EACD,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAChD,CAAC;AACJ,CAAC;AAkFD,kFAAkF;AAClF,iFAAiF;AACjF,mCAAmC;AACnC,MAAM,cAAc,GAAG,IAAI,GAAG,EAA+D,CAAC;AAE9F;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,WAAmB,EACnB,aAAgC,EAAE;IAElC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACpB,IAAI,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,GAAG,GAAG,MAAM,CAAC,QAAQ;iBAClB,QAAQ,CAAC,EAAE,CAAC;iBACZ,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;YACrF,0EAA0E;YAC1E,2BAA2B;YAC3B,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3C,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,CACH,CAAC;IACF,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACpD,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IACvE,6EAA6E;IAC7E,oEAAoE;IACpE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC;IACtD,OAAO;QACL,OAAO,EAAE,QAAQ;QACjB,QAAQ;QACR,GAAG;QACH,KAAK,EAAE,QAAQ,GAAG,GAAG;QACrB,UAAU;QACV,UAAU,EAAE,CAAC,GAAG,UAAU,CAAC;KAC5B,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,sBAAsB;IACpC,cAAc,CAAC,KAAK,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,gBAAwB,EACxB,KAAa,EACb,WAAmB,EACnB,MAAsB,EACtB,OAA6B,EAAE;IAE/B,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,0BAA0B;IACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9D,gFAAgF;IAChF,gFAAgF;IAChF,6EAA6E;IAC7E,MAAM,GAAG,GAAG,MAAM,0BAA0B,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC;IAC5C,MAAM,OAAO,GAAG,MAAM,SAAS,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;QACzD,QAAQ,EAAE,gBAAgB;QAC1B,IAAI,EAAE,SAAS;QACf,+EAA+E;QAC/E,+DAA+D;QAC/D,GAAG,CAAC,QAAQ;YACV,CAAC,CAAC;gBACE,OAAO,EAAE,QAAoB;gBAC7B,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,GAAG,MAAM,CAAC,OAAO,4BAA4B,OAAO,EAAE;gBACrF,4BAA4B,EAAE;oBAC5B,kEAAkE;oBAClE,oEAAoE;oBACpE,uEAAuE;oBACvE,gEAAgE;oBAChE,+DAA+D;oBAC/D,qBAAqB;oBACrB,EAAE;oBACF,qEAAqE;oBACrE,sEAAsE;oBACtE,sEAAsE;oBACtE,mEAAmE;oBACnE,4DAA4D;oBAC5D,uBAAuB,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC;oBAC7D,mEAAmE;oBACnE,oCAAoC;oBACpC,EAAE;oBACF,oEAAoE;oBACpE,mEAAmE;oBACnE,sEAAsE;oBACtE,qEAAqE;oBACrE,qEAAqE;oBACrE,qDAAqD;oBACrD,GAAG,CAAC,IAAI,CAAC,iBAAiB,KAAK,QAAQ;wBACrC,CAAC,CAAC,EAAE;wBACJ,CAAC,CAAC,EAAE,mBAAmB,EAAE,SAAkB,EAAE,CAAC;iBACjD;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,4BAA4B,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,kEAAkE;QAClE,oEAAoE;QACpE,cAAc;QACd,UAAU,EAAE;YACV;gBACE,UAAU,EAAE;oBACV,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,YAAY,EAAE;wBACZ,IAAI,EAAE,GAAG,OAAO,UAAU;wBAC1B,WAAW,EAAE,GAAG,WAAW,MAAM,OAAO,UAAU;qBACnD;oBACD,WAAW,EAAE,WAAW;iBACzB;gBACD,QAAQ,EAAE,CAAC;gBACX,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC7C;SACF;QACD,2EAA2E;QAC3E,mCAAmC;QACnC,GAAG,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,kFAAkF;QAClF,2EAA2E;QAC3E,EAAE;QACF,8EAA8E;QAC9E,2EAA2E;QAC3E,+EAA+E;QAC/E,gFAAgF;QAChF,yEAAyE;QACzE,8EAA8E;QAC9E,gFAAgF;QAChF,uEAAuE;QACvE,oBAAoB;QACpB,EAAE;QACF,+EAA+E;QAC/E,8EAA8E;QAC9E,8CAA8C;QAC9C,0BAA0B,EAAE,UAAU;QACtC,iBAAiB,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,IAAI,IAAI,EAAE;QAC5D,eAAe,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;QAClD,gBAAgB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;QACnC,mBAAmB,EAAE;YACnB,kBAAkB,EAAE,aAAa;YACjC,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;SACtD;QACD,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;QACrD,4EAA4E;QAC5E,qCAAqC;QACrC,GAAG,CAAC,QAAQ;YACV,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE,WAAW,EAAE,IAAI,CAAC,UAAU,IAAI,GAAG,MAAM,CAAC,OAAO,4BAA4B,OAAO,EAAE;gBACtF,UAAU,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG,MAAM,CAAC,OAAO,iBAAiB;aACjE,CAAC;KACP,CAAC,CAAC;IACH,sFAAsF;IACtF,uFAAuF;IACvF,mFAAmF;IACnF,uFAAuF;IACvF,kEAAkE;IAClE,OAAO;QACL,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,IAAI;QACxB,YAAY,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;QAC3C,SAAS,EAAE,OAAO,CAAC,EAAE;KACtB,CAAC;AACJ,CAAC;AAoCD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,cAAc,CAAC,OAG9B;IACC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;IAC5D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;IACvG,OAAO,IAAI,GAAG,KAAK,CAAC;AACtB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,gBAAwB,EACxB,KAAa,EACb,MAAsB,EACtB,KA8BC;IASD,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IACvC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;QACnG,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC;IAC/G,CAAC;IACD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACjC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC;IACtC,mFAAmF;IACnF,kFAAkF;IAClF,+DAA+D;IAC/D,MAAM,IAAI,GACR,MAAM,KAAK,SAAS;QAClB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IACjH,IAAI,CAAC,IAAI,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QACrC,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,uFAAuF;SACjG,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,CAAC,CAAC,SAAS,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACnF,0FAA0F;IAC1F,yEAAyE;IACzE,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;QACpB,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,UAAU;YAClB,OAAO,EAAE,uGAAuG;SACjH,CAAC;IACJ,CAAC;IAED,2FAA2F;IAC3F,2FAA2F;IAC3F,oFAAoF;IACpF,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACtE,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;IAE5D,MAAM,GAAG,GAAG,KAAK,CAAC,cAAc,IAAI,QAAQ,gBAAgB,IAAI,OAAO,IAAI,WAAW,EAAE,CAAC;IACzF,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,GAAG,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC;IACtF,MAAM,MAAM,CAAC,YAAY,CAAC,MAAM,CAC9B;QACE,QAAQ,EAAE,gBAAgB;QAC1B,QAAQ;QACR,MAAM,EAAE,WAAW;QACnB,WAAW;QACX,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7C,EACD,EAAE,cAAc,EAAE,GAAG,GAAG,OAAO,EAAE,CAClC,CAAC;IACF,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CACxC;QACE,QAAQ,EAAE,gBAAgB;QAC1B,QAAQ;QACR,uFAAuF;QACvF,mDAAmD;QACnD,GAAG,CAAC,IAAI;YACN,CAAC,CAAC,EAAE,iBAAiB,EAAE,sBAA+B,EAAE,sBAAsB,EAAE,IAAI,CAAC,EAAE,EAAE;YACzF,CAAC,CAAC,EAAE,iBAAiB,EAAE,cAAuB,EAAE,cAAc,EAAE,KAAK,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC;QAC7F,YAAY,EAAE,KAAK;QACnB,8BAA8B,EAAE,SAAS;QACzC,WAAW;QACX,kDAAkD;QAClD,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5G,GAAG,CAAC,CAAC,QAAQ,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,sFAAsF;QACtF,+BAA+B;QAC/B,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;KACtD,EACD,EAAE,cAAc,EAAE,GAAG,GAAG,UAAU,EAAE,CACrC,CAAC;IACF,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;IAE7G,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAElE,IAAI,IAAI,EAAE,CAAC;QACT,oFAAoF;QACpF,6EAA6E;QAC7E,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAG,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7E,OAAO;gBACL,MAAM,EAAE,SAAS;gBACjB,SAAS,EAAE,IAAI,CAAC,EAAG;gBACnB,gBAAgB,EAAE,IAAI,CAAC,kBAAkB,IAAI,SAAS,CAAC,kBAAkB,IAAI,IAAI;gBACjF,IAAI,EAAE,IAAI;aACX,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,sFAAsF;YACtF,oFAAoF;YACpF,sFAAsF;YACtF,2EAA2E;YAC3E,qFAAqF;YACrF,EAAE;YACF,sFAAsF;YACtF,uFAAuF;YACvF,gCAAgC;YAChC,MAAM,IAAI,GAAI,CAAgD,EAAE,IAAI,IAAK,CAAiC,EAAE,GAAG,EAAE,IAAI,CAAC;YACtH,IAAI,IAAI,KAAK,wCAAwC,IAAI,IAAI,KAAK,yBAAyB,EAAE,CAAC;gBAC5F,OAAO;oBACL,MAAM,EAAE,sBAAsB;oBAC9B,SAAS,EAAE,SAAS,CAAC,EAAG;oBACxB,gBAAgB,EAAE,SAAS,CAAC,kBAAkB,IAAI,IAAI;oBACtD,OAAO,EACL,iFAAiF;wBACjF,2CAA2C;iBAC9C,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,MAAM,EAAE,UAAU;gBAClB,SAAS,EAAE,SAAS,CAAC,EAAG;gBACxB,gBAAgB,EAAE,SAAS,CAAC,kBAAkB,IAAI,IAAI;gBACtD,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI;gBAC5D,OAAO,EAAE,KAAK;aACf,CAAC;QACJ,CAAC;IACH,CAAC;IAED,yFAAyF;IACzF,gFAAgF;IAChF,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,IAAI,IAAI,GAAG,SAAS,CAAC;IACrB,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,EAAG,CAAC,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,KAAK,CAAC;IAClB,CAAC;IACD,OAAO;QACL,MAAM,EAAE,UAAU;QAClB,SAAS,EAAE,IAAI,CAAC,EAAG;QACnB,gBAAgB,EAAE,IAAI,CAAC,kBAAkB,IAAI,SAAS,CAAC,kBAAkB,IAAI,IAAI;QACjF,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI;QAClD,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,gBAAwB,EACxB,KAAa,EACb,WAAmB,EACnB,MAAsB,EACtB,OAMI,EAAE;IAEN,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,UAAU,CAAC;IACzC,MAAM,OAAO,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACjC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,IAAI,MAAM,KAAK,UAAU,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QACnD,MAAM,OAAO,GAAG,MAAM,2BAA2B,CAAC,gBAAgB,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE;YAC9F,GAAG,IAAI;YACP,mFAAmF;YACnF,iFAAiF;YACjF,gFAAgF;YAChF,mBAAmB;YACnB,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;YACnB,MAAM,EAAE,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ;SACtD,CAAC,CAAC;QACH,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;IAC7D,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACrE,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5D,qFAAqF;IACrF,qFAAqF;IACrF,0DAA0D;IAC1D,MAAM,GAAG,GAAG,YAAY,gBAAgB,IAAI,OAAO,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;IAE9E,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QACrG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO;gBACL,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,SAAS;gBACjB,OAAO,EACL,4FAA4F;oBAC5F,uEAAuE;aAC1E,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,CAAC,YAAY,CAAC,MAAM,CAC9B;YACE,QAAQ,EAAE,gBAAgB;YAC1B,QAAQ;YACR,MAAM,EAAE,OAAO;YACf,WAAW,EAAE,aAAa,OAAO,UAAU;YAC3C,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7C,EACD,EAAE,cAAc,EAAE,GAAG,GAAG,OAAO,EAAE,CAClC,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAC1C;YACE,QAAQ,EAAE,gBAAgB;YAC1B,QAAQ;YACR,iBAAiB,EAAE,sBAAsB;YACzC,sBAAsB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;YACtC,YAAY,EAAE,KAAK;YACnB,8EAA8E;YAC9E,kFAAkF;YAClF,gFAAgF;YAChF,8BAA8B,EAAE,SAAS;YACzC,WAAW,EAAE,aAAa,OAAO,UAAU;YAC3C,GAAG,CAAC,CAAC,QAAQ,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9E,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;SACtD,EACD,EAAE,cAAc,EAAE,GAAG,GAAG,UAAU,EAAE,CACrC,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE;YAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;QAC/G,IAAI,OAAuB,CAAC;QAC5B,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YACvE,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC9B,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,cAAc,OAAO,CAAC,MAAM,aAAa,EAAE,CAAC;YAC5G,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,sFAAsF;YACtF,0CAA0C;YAC1C,OAAO;gBACL,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,eAAe;gBACvB,OAAO,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACnE,CAAC;QACJ,CAAC;QACD,qFAAqF;QACrF,sFAAsF;QACtF,iEAAiE;QACjE,EAAE;QACF,uFAAuF;QACvF,uFAAuF;QACvF,wFAAwF;QACxF,oFAAoF;QACpF,mFAAmF;QACnF,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC;QAChD,MAAM,YAAY,CAAC,gBAAgB,EAAE,IAAI,EAAE,aAAa,OAAO,UAAU,EAAE,QAAQ,EAAE,kBAAkB,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QACrH,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IACvE,CAAC;IAED,gEAAgE;IAChE,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,CAAC,CAAC,SAAS,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACnF,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,UAAU;YAClB,OAAO,EAAE,uGAAuG;SACjH,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,CAAC,YAAY,CAAC,MAAM,CAC9B;QACE,QAAQ,EAAE,gBAAgB;QAC1B,QAAQ;QACR,MAAM,EAAE,OAAO;QACf,WAAW,EAAE,aAAa,OAAO,UAAU;QAC3C,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7C,EACD,EAAE,cAAc,EAAE,GAAG,GAAG,OAAO,EAAE,CAClC,CAAC;IACF,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CACxC;QACE,QAAQ,EAAE,gBAAgB;QAC1B,QAAQ;QACR,iBAAiB,EAAE,cAAc;QACjC,cAAc,EAAE,IAAI,CAAC,YAAY,IAAI,CAAC;QACtC,YAAY,EAAE,KAAK;QACnB,8BAA8B,EAAE,SAAS;QACzC,WAAW,EAAE,aAAa,OAAO,UAAU;QAC3C,GAAG,CAAC,CAAC,QAAQ,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,iFAAiF;QACjF,sFAAsF;QACtF,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;KACtD,EACD,EAAE,cAAc,EAAE,GAAG,GAAG,UAAU,EAAE,CACrC,CAAC;IACF,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;IAC7G,0FAA0F;IAC1F,oEAAoE;IACpE,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClE,yFAAyF;IACzF,wFAAwF;IACxF,0FAA0F;IAC1F,oFAAoF;IACpF,yFAAyF;IACzF,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,IAAI,IAAI,GAAG,SAAS,CAAC;IACrB,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,EAAG,CAAC,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,KAAK,CAAC;IAClB,CAAC;IACD,OAAO;QACL,MAAM,EAAE,UAAU;QAClB,MAAM,EAAE,SAAS;QACjB,OAAO;QACP,SAAS,EAAE,IAAI,CAAC,EAAG;QACnB,gBAAgB,EAAE,IAAI,CAAC,kBAAkB,IAAI,SAAS,CAAC,kBAAkB,IAAI,IAAI;QACjF,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI;QAClD,OAAO;KACR,CAAC;AACJ,CAAC;AAcD;;;;;;;6CAO6C;AAC7C,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,gBAAwB,EACxB,SAAiB,EACjB,OAAuD,EAAE;IAEzD,MAAM,OAAO,GAAG,MAAM,SAAS,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC9D,QAAQ,EAAE,gBAAgB;QAC1B,UAAU,EAAE,SAAS;QACrB,GAAG,CAAC,IAAI,CAAC,IAAI;YACX,CAAC,CAAC;gBACE,SAAS,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,uBAAuB;oBAC/C,CAAC,CAAC,EAAE,IAAI,EAAE,uBAAgC,EAAE;oBAC5C,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,qBAAqB;wBACnC,CAAC,CAAC;4BACE,IAAI,EAAE,qBAA8B;4BACpC,mBAAmB,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,cAAe,EAAE;yBAC5D;wBACH,CAAC,CAAC;4BACE,IAAI,EAAE,qBAA8B;4BACpC,mBAAmB,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,cAAe,EAAE;yBAC5D,CAAsD;aAC9D;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC;IACH,OAAO,OAAO,CAAC,GAAG,CAAC;AACrB,CAAC;AAED,+EAA+E;AAC/E,gFAAgF;AAChF,kFAAkF;AAClF,8EAA8E;AAC9E,wDAAwD;AACxD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,gEAAgE;AAEhE,yEAAyE;AACzE,MAAM,eAAe,GAAG,qBAAqB,CAAC;AAC9C,MAAM,gBAAgB,GAAG,qBAAqB,CAAC;AAS/C;oEACoE;AACpE,MAAM,UAAU,eAAe,CAAC,QAA4C;IAC1E,MAAM,EAAE,GAAG,QAAQ,IAAI,EAAE,CAAC;IAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;IAC7D,OAAO;QACL,wEAAwE;QACxE,wEAAwE;QACxE,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;QAChE,YAAY,EAAE,CAAC,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;aACvC,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;aACzC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAC1C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;KACzB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,gBAAwB;AACxB,iFAAiF;AACjF,UAAmC;IAEnC,MAAM,QAAQ,GAAG,UAAU,IAAI,CAAC,MAAM,SAAS,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACxF,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7D,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;IAClD,CAAC;IACD,OAAO,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;GAKG;AACH;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,iBAAiB,CAAC,SAAkB,EAAE,YAAuB;IAC3E,IAAI,SAAS,IAAI,CAAC,YAAY,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IACpD,OAAO,CACL,mFAAmF;QACnF,wFAAwF;QACxF,qDAAqD,CACtD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,gBAAwB,EACxB,KAAgE;IAEhE,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAC5C,IAAI,cAAc,IAAI,KAAK,EAAE,CAAC;QAC5B,QAAQ,CAAC,eAAe,CAAC;YACvB,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC;gBAC1C,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBACxC,CAAC,CAAC,EAAE,CAAC;IACX,CAAC;IACD,IAAI,cAAc,IAAI,KAAK,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC;aACtC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAC1C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACzB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACzB,QAAQ,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,CAAC;IACD,MAAM,SAAS,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,gBAAwB;IAKlE,MAAM,QAAQ,GAAG,MAAM,SAAS,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACxE,IAAI,QAAQ,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAClC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC;IAC/B,IAAI,IAAI,CAAC,mBAAmB,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACrD,OAAO;QACL,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,qBAAqB,IAAI,GAAG,EAAE,EAAE,CAAC;QAC1D,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,cAAc,IAAI,GAAG,EAAE,EAAE,CAAC;KACpD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,gBAAwB,EACxB,SAAiB,EACjB,QAAgB,EAChB,OAAgB;IAEhB,MAAM,SAAS,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,EAAE;QACnD,QAAQ,EAAE;YACR,mBAAmB,EAAE,MAAM,CAAC,OAAO,CAAC;YACpC,qBAAqB,EAAE,MAAM,CAAC,SAAS,CAAC;YACxC,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC;SACjC;KACF,CAAC,CAAC;AACL,CAAC;AAuBD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,gBAAwB,EACxB,MAAwD;IAExD,MAAM,aAAa,CAAC,gBAAgB,EAAE,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,CAC1D,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,CACrC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,gBAAwB,EACxB,QAAgB;AAChB;qEACqE;AACrE,OAA+C,EAAE;IAEjD,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;IAC/D,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO;QAAE,OAAO;IAE3C,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IACnE,IAAI,OAAO,GAAG,QAAQ,CAAC,SAAS;QAAE,OAAO;IAEzC,MAAM,aAAa,GAAG,QAAQ,CAAC,SAAS,GAAG,OAAO,CAAC;IACnD,IAAI,aAAa,IAAI,CAAC;QAAE,OAAO;IAE/B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC;QAC3C,QAAQ,EAAE,gBAAgB;QAC1B,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,CAAC;KACT,CAAC,CAAC;IACH,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAElC,mFAAmF;IACnF,+EAA+E;IAC/E,qFAAqF;IACrF,MAAM,GAAG,GAAG,OAAO,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAE7D,4EAA4E;IAC5E,8EAA8E;IAC9E,wEAAwE;IACxE,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,cAAc,gBAAgB,IAAI,QAAQ,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC;IAC3E,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;IAE5D,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,YAAY,CAAC,MAAM,CAC9B;YACE,QAAQ,EAAE,gBAAgB;YAC1B,QAAQ;YACR,MAAM,EAAE,aAAa;YACrB,WAAW,EAAE,gBAAgB,aAAa,UAAU;YACpD,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7C,EACD,EAAE,cAAc,EAAE,GAAG,GAAG,OAAO,EAAE,CAClC,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAC1C;YACE,QAAQ,EAAE,gBAAgB;YAC1B,QAAQ;YACR,iBAAiB,EAAE,sBAAsB;YACzC,sBAAsB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;YACtC,YAAY,EAAE,KAAK;YACnB,qEAAqE;YACrE,uEAAuE;YACvE,uEAAuE;YACvE,0EAA0E;YAC1E,yCAAyC;YACzC,8BAA8B,EAAE,SAAS;YACzC,WAAW,EAAE,gBAAgB,aAAa,UAAU;YACpD,GAAG,CAAC,CAAC,QAAQ,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9E,QAAQ,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE;SAClE,EACD,EAAE,cAAc,EAAE,GAAG,GAAG,UAAU,EAAE,CACrC,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE;YAAE,OAAO;QAExB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC3B,wEAAwE;YACxE,iBAAiB;YACjB,MAAM,YAAY,CAChB,gBAAgB,EAChB,aAAa,EACb,gBAAgB,aAAa,UAAU,EACvC,QAAQ,EACR,UAAU,GAAG,EAAE,CAChB,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,wEAAwE;IAC1E,CAAC;AACH,CAAC;AAiCD,SAAS,cAAc,CAAC,GAAmB;IACzC,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC;IACnC,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAG;QACX,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU;QAC/C,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,IAAI;QACJ,OAAO,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;QACnD,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI;QAC3E,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,IAAI,IAAI;QACvE,WAAW,EAAE,GAAG,CAAC,kBAAkB,IAAI,IAAI;QAC3C,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,IAAI;KACrC,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,EAAiB;IACtC,OAAO;QACL,EAAE,EAAE,EAAE,CAAC,EAAG;QACV,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,WAAW,EAAE,EAAE,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACtD,UAAU,EAAE,EAAE,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM;QACrD,QAAQ,EAAE,EAAE,CAAC,QAAQ;QACrB,iEAAiE;QACjE,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;QACnD,IAAI,EAAE,EAAE,CAAC,MAAM,KAAK,WAAW;QAC/B,OAAO,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;QAClD,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,EAAE,CAAC,WAAW,IAAI,IAAI;QACnC,gEAAgE;QAChE,WAAW,EAAE,EAAE,CAAC,WAAW,IAAI,IAAI;QACnC,WAAW,EAAE,IAAI;KAClB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,gBAAwB,EAAE,KAAK,GAAG,EAAE;IACrE,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC5C,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC;QAC3D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC;KAC3D,CAAC,CAAC;IAEH,sEAAsE;IACtE,2EAA2E;IAC3E,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI;SACnC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,WAAW,KAAK,MAAM,IAAI,EAAE,CAAC,MAAM,KAAK,WAAW,CAAC;SAChF,GAAG,CAAC,aAAa,CAAC,CAAC;IAEtB,OAAO,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,GAAG,iBAAiB,CAAC;SAChE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;SAC7E,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AACrB,CAAC;AAED,oEAAoE;AACpE,SAAS,YAAY,CAAC,GAA6D;IACjF,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;AAChD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,gBAAwB,EACxB,SAAiB;IAEjB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAI,CAAC;QACH,IAAI,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACxD,IAAI,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,gBAAgB;gBAAE,OAAO,IAAI,CAAC;YACpE,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC1D,IAAI,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,gBAAgB;YAAE,OAAO,IAAI,CAAC;QACrE,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,MAAM,CAAC,MAAM,CAAC,yBAAyB;YAAE,OAAO,IAAI,CAAC;QACtE,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,gBAAwB,EACxB,SAAiB;IAEjB,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;IAC5D,OAAO,KAAK,EAAE,WAAW,IAAI,IAAI,CAAC;AACpC,CAAC;AAED,8EAA8E;AAC9E,6EAA6E;AAC7E,4EAA4E;AAC5E,gFAAgF;AAEhF,iFAAiF;AACjF,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,OAAuB,EACvB,KAAa,EACb,KAAK,GAAG,EAAE;IAEV,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC7D,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAC3B,OAAO,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED,+EAA+E;AAC/E,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAAuB,EACvB,KAAa,EACb,SAAiB;IAEjB,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC7D,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAC7B,OAAO,UAAU,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;AAC3C,CAAC;AAED,qEAAqE;AACrE,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAuB,EACvB,KAAa,EACb,SAAiB;IAEjB,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IAC7D,OAAO,KAAK,EAAE,WAAW,IAAI,IAAI,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"billing.js","sourceRoot":"","sources":["../src/billing.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"stripe-cli.d.ts","sourceRoot":"","sources":["../../src/dev/stripe-cli.ts"],"names":[],"mappings":"AA6DA;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAAC,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,GAClE,OAAO,CAAC,MAAM,CAAC,CAwDjB;AAED,MAAM,MAAM,QAAQ,GAAG;IACrB,2EAA2E;IAC3E,MAAM,EAAE,MAAM,CAAC;IACf,uBAAuB;IACvB,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB,CAAC;AAEF;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE;IAC5C,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5B,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,QAAQ,CAAC,CA+CpB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,GAAE;IACJ,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;0EACsE;IACtE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB;;mDAE+C;IAC/C,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACxB,GACL,OAAO,CAAC,QAAQ,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CA0BnE;AAaD;;8CAE8C;AAC9C,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAQvF;AAED;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAc1F"}
1
+ {"version":3,"file":"stripe-cli.d.ts","sourceRoot":"","sources":["../../src/dev/stripe-cli.ts"],"names":[],"mappings":"AA6DA;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAAC,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,GAClE,OAAO,CAAC,MAAM,CAAC,CAwDjB;AAED,MAAM,MAAM,QAAQ,GAAG;IACrB,2EAA2E;IAC3E,MAAM,EAAE,MAAM,CAAC;IACf,uBAAuB;IACvB,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB,CAAC;AAEF;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE;IAC5C,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5B,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,QAAQ,CAAC,CA+CpB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,GAAE;IACJ,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;0EACsE;IACtE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB;;mDAE+C;IAC/C,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACxB,GACL,OAAO,CAAC,QAAQ,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CA0BnE;AAcD;;8CAE8C;AAC9C,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAQvF;AAED;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAc1F"}
@@ -195,10 +195,11 @@ export async function startLocalWebhooks(opts = {}) {
195
195
  // Duplicated from webhook-setup.ts rather than imported: that module pulls in
196
196
  // `billing.ts` → the Stripe SDK, and this entry point is deliberately reachable
197
197
  // with nothing installed but Node (it is also the only module here allowed to
198
- // touch child_process and fs). Four strings are a cheaper price than that edge.
198
+ // touch child_process and fs). Five strings are a cheaper price than that edge.
199
199
  const LOCAL_WEBHOOK_EVENTS = [
200
200
  "checkout.session.completed",
201
201
  "checkout.session.async_payment_succeeded",
202
+ "invoice.created",
202
203
  "invoice.paid",
203
204
  "invoice.payment_failed",
204
205
  ];