@antseed/node 0.2.114 → 0.2.116

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/node.js CHANGED
@@ -33,6 +33,7 @@ import { debugLog, debugWarn } from "./utils/debug.js";
33
33
  import { parsePublicAddress } from "./discovery/public-address.js";
34
34
  import { BuyerPaymentManager } from "./payments/buyer-payment-manager.js";
35
35
  import { BuyerPaymentNegotiator } from "./payments/buyer-payment-negotiator.js";
36
+ import { RpcHealthMonitor } from "./payments/rpc-health.js";
36
37
  import { SellerAddressResolver } from "./discovery/seller-address-resolver.js";
37
38
  import { Contract as EthersContract } from "ethers";
38
39
  import { SellerPaymentManager } from "./payments/seller-payment-manager.js";
@@ -71,6 +72,8 @@ export class AntseedNode extends EventEmitter {
71
72
  _router = null;
72
73
  _started = false;
73
74
  _announcer = null;
75
+ /** Set while advertising is paused (e.g. seller wallet out of gas). */
76
+ _advertisingPausedReason = null;
74
77
  _peerLookup = null;
75
78
  _muxes = new Map();
76
79
  _decoders = new Map();
@@ -99,6 +102,8 @@ export class AntseedNode extends EventEmitter {
99
102
  _buyerPaymentManager = null;
100
103
  /** Buyer-side payment negotiation (402 handling, SpendingAuth, cost tracking). */
101
104
  _buyerNegotiator = null;
105
+ /** Background chain-RPC reachability monitor (created when payments are configured). */
106
+ _rpcHealth = null;
102
107
  /** Buyer-side request execution (streaming, timeouts, 402 retry). */
103
108
  _buyerHandler = null;
104
109
  /** Seller-side payment manager (initialized when seller has payment config). */
@@ -145,6 +150,29 @@ export class AntseedNode extends EventEmitter {
145
150
  async refreshSellerMetadata() {
146
151
  await this._announcer?.refreshMetadata();
147
152
  }
153
+ /**
154
+ * Stop announcing this seller to the DHT and re-sign the metadata snapshot
155
+ * with zero providers, so buyers stop discovering a peer that cannot
156
+ * actually serve (e.g. its wallet has no ETH to fund settlement). The
157
+ * `/metadata` endpoint reflects the pause immediately; already-published
158
+ * DHT entries age out on the buyer's staleness cutoff.
159
+ */
160
+ async pauseAdvertising(reason) {
161
+ this._advertisingPausedReason = reason;
162
+ this._announcer?.stopPeriodicAnnounce();
163
+ await this._announcer?.refreshMetadata();
164
+ }
165
+ /** Resume DHT announcements after `pauseAdvertising` (announces immediately). */
166
+ resumeAdvertising() {
167
+ if (this._advertisingPausedReason === null)
168
+ return;
169
+ this._advertisingPausedReason = null;
170
+ this._announcer?.startPeriodicAnnounce();
171
+ }
172
+ /** Why advertising is currently paused, or null when advertising normally. */
173
+ get advertisingPausedReason() {
174
+ return this._advertisingPausedReason;
175
+ }
148
176
  /** Register an embedded verifier prover (serves reserved attestation requests). */
149
177
  registerProver(prover) {
150
178
  this._provers.push(prover);
@@ -163,6 +191,21 @@ export class AntseedNode extends EventEmitter {
163
191
  get buyerNegotiator() {
164
192
  return this._buyerNegotiator;
165
193
  }
194
+ /**
195
+ * Live payments status for control planes and UIs. Payments stay enabled
196
+ * while the chain RPC is unreachable — buyer authorization is signed
197
+ * off-chain — so `rpc.state` is a health signal, not an on/off switch.
198
+ */
199
+ getPaymentsStatus() {
200
+ const payments = this._config.payments;
201
+ return {
202
+ configured: payments?.enabled === true,
203
+ buyerActive: this._buyerNegotiator !== null,
204
+ sellerActive: this._sellerPaymentManager !== null,
205
+ chainId: payments?.chainId ?? null,
206
+ rpc: this._rpcHealth?.status() ?? null,
207
+ };
208
+ }
166
209
  /** Actual DHT port after binding (0 means not started). */
167
210
  get dhtPort() {
168
211
  return this._dht?.getPort() ?? 0;
@@ -245,6 +288,10 @@ export class AntseedNode extends EventEmitter {
245
288
  if (this._buyerNegotiator) {
246
289
  this._buyerNegotiator.cleanup();
247
290
  }
291
+ if (this._rpcHealth) {
292
+ this._rpcHealth.stop();
293
+ this._rpcHealth = null;
294
+ }
248
295
  if (this._sellerFreeUsageManager) {
249
296
  await this._sellerFreeUsageManager.flushAllPendingRecords();
250
297
  }
@@ -642,9 +689,11 @@ export class AntseedNode extends EventEmitter {
642
689
  const ON_CHAIN_STATS_TTL_MS = 60_000;
643
690
  const nowMs = Date.now();
644
691
  const queue = peers.slice();
692
+ const peersWithCompleteStats = new Set();
645
693
  const verifyOne = async (p) => {
646
694
  if (typeof p.onChainStatsFetchedAt === 'number'
647
695
  && nowMs - p.onChainStatsFetchedAt < ON_CHAIN_STATS_TTL_MS) {
696
+ peersWithCompleteStats.add(p);
648
697
  return;
649
698
  }
650
699
  try {
@@ -653,10 +702,13 @@ export class AntseedNode extends EventEmitter {
653
702
  : peerIdToAddress(p.peerId);
654
703
  const [agentId, stake, stakedAt] = await Promise.all([
655
704
  stakingClient.getAgentId(evmAddress),
656
- stakingClient.getStake(evmAddress).catch(() => 0n),
705
+ stakingClient.getStake(evmAddress).catch(() => null),
657
706
  stakingClient.getStakedAt(evmAddress).catch(() => null),
658
707
  ]);
659
708
  const stats = await channelsClient.getAgentStats(agentId);
709
+ if (stake === null || stakedAt === null) {
710
+ return;
711
+ }
660
712
  p.onChainAgentId = agentId;
661
713
  p.onChainStakeUsdcMicros = stake <= BigInt(Number.MAX_SAFE_INTEGER)
662
714
  ? Number(stake)
@@ -677,10 +729,11 @@ export class AntseedNode extends EventEmitter {
677
729
  p.onChainStakedAtSec = stakedAt;
678
730
  }
679
731
  p.onChainStatsFetchedAt = Date.now();
732
+ peersWithCompleteStats.add(p);
680
733
  }
681
734
  catch {
682
- // Per-peer verification failure — keep whatever seller metadata claimed
683
- // (channelCount/ghostCount); volume/lastSettled remain undefined.
735
+ // Per-peer verification failure — preserve the previous complete
736
+ // snapshot, or leave a newly discovered peer unenriched.
684
737
  }
685
738
  };
686
739
  const workers = [];
@@ -695,15 +748,17 @@ export class AntseedNode extends EventEmitter {
695
748
  })());
696
749
  }
697
750
  await Promise.all(workers);
698
- this._applyTrustAndSybil(peers);
751
+ this._applyTrustAndSybil(peers, peersWithCompleteStats);
699
752
  }
700
- _applyTrustAndSybil(peers) {
753
+ _applyTrustAndSybil(peers, peersToUpdate) {
701
754
  if (peers.length === 0)
702
755
  return;
703
756
  const ctx = peers.length >= 2
704
757
  ? buildSybilContext(peers)
705
758
  : undefined;
706
759
  for (const p of peers) {
760
+ if (peersToUpdate && !peersToUpdate.has(p))
761
+ continue;
707
762
  const trust = computeOnChainTrust(p);
708
763
  if (trust === null)
709
764
  continue;
@@ -1190,7 +1245,7 @@ export class AntseedNode extends EventEmitter {
1190
1245
  ...(p.serviceUnitBillingModels ? { serviceUnitBillingModels: { ...p.serviceUnitBillingModels } } : {}),
1191
1246
  ...(p.serviceCapabilities ? { serviceCapabilities: { ...p.serviceCapabilities } } : {}),
1192
1247
  maxConcurrency: p.maxConcurrency,
1193
- isAvailable: () => p.healthCheckAvailable !== false,
1248
+ isAvailable: () => this._advertisingPausedReason === null && p.healthCheckAvailable !== false,
1194
1249
  pricing: {
1195
1250
  defaults: {
1196
1251
  inputUsdPerMillion: p.pricing.defaults.inputUsdPerMillion,
@@ -1317,7 +1372,10 @@ export class AntseedNode extends EventEmitter {
1317
1372
  this._buyerPaymentManager.setSpendListener((event) => this.emit('payment:spend', event));
1318
1373
  debugLog(`[Node] Buyer payment manager initialized (wallet=${identity.wallet.address.slice(0, 10)}... chainId=${buyerPaymentConfig.chainId} deposits=${buyerPaymentConfig.depositsContractAddress.slice(0, 10)}...)`);
1319
1374
  // Create negotiator that wraps the BPM with 402 handling and per-request auth
1320
- this._buyerNegotiator = new BuyerPaymentNegotiator(identity, this._buyerPaymentManager, this._depositsClient, this._channelsClient, this._channelStore, {}, this, this._sellerAddressResolver ?? undefined, this._buyerFreeUsageManager);
1375
+ this._buyerNegotiator = new BuyerPaymentNegotiator(identity, this._buyerPaymentManager, this._depositsClient, this._channelsClient, this._channelStore, {
1376
+ isChainReachable: () => this._rpcHealth?.reachable ?? true,
1377
+ onChainReadFailure: () => this._rpcHealth?.reportFailure(),
1378
+ }, this, this._sellerAddressResolver ?? undefined, this._buyerFreeUsageManager);
1321
1379
  debugLog(`[Node] Buyer payment negotiator initialized`);
1322
1380
  }
1323
1381
  }
@@ -1466,6 +1524,19 @@ export class AntseedNode extends EventEmitter {
1466
1524
  debugWarn(`[Node] ChannelStore unavailable: ${err instanceof Error ? err.message : err}`);
1467
1525
  }
1468
1526
  }
1527
+ // Background RPC reachability: a down RPC at startup must not disable
1528
+ // payments for the session — signing is off-chain. Call sites consult
1529
+ // `reachable` to skip best-effort on-chain reads until the first success.
1530
+ if (payments.rpcUrl && !this._rpcHealth) {
1531
+ this._rpcHealth = new RpcHealthMonitor({
1532
+ rpcUrls: [payments.rpcUrl, ...(payments.fallbackRpcUrls ?? [])],
1533
+ });
1534
+ this._rpcHealth.onReady(() => {
1535
+ debugLog("[Node] Chain RPC reachable — on-chain reads enabled");
1536
+ this.emit("payments:rpc-ready");
1537
+ });
1538
+ this._rpcHealth.start();
1539
+ }
1469
1540
  // Initialize DepositsClient
1470
1541
  if (payments.rpcUrl && payments.depositsAddress && payments.usdcAddress) {
1471
1542
  this._depositsClient = new DepositsClient({
package/dist/node.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGzD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAOlD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EACL,oBAAoB,GAErB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACL,OAAO,EACP,kBAAkB,EAClB,YAAY,GAEb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC5G,OAAO,EACL,iBAAiB,GAElB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,aAAa,GAGd,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,EACL,UAAU,EACV,qBAAqB,GAGtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EACL,sCAAsC,EACtC,0CAA0C,EAC1C,+BAA+B,EAC/B,4BAA4B,GAI7B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAOlD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EACL,cAAc,EAGd,cAAc,EACd,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,cAAc,GACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAA2B,MAAM,qCAAqC,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAwB,MAAM,0BAA0B,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAC/E,OAAO,EAAE,QAAQ,IAAI,cAAc,EAAE,MAAM,QAAQ,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAA4B,MAAM,sCAAsC,CAAC;AACtG,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EACL,mBAAmB,GAIpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,2BAA2B,EAC3B,uBAAuB,EACvB,mBAAmB,GAEpB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAwLzC,MAAM,iBAAiB,GAAqB;IAC1C,aAAa,EAAE,CAAC;IAChB,gBAAgB,EAAE,GAAG;IACrB,iBAAiB,EAAE,GAAG;IACtB,gBAAgB,EAAE,CAAC;IACnB,aAAa,EAAE,CAAC;IAChB,cAAc,EAAE,CAAC;IACjB,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE,EAAE;CACb,CAAC;AAEF,MAAM,mCAAmC,GAAG,EAAE,GAAG,MAAM,CAAC;AAExD;;;;eAIe;AACf,MAAM,8BAA8B,GAAG,KAAK,CAAC;AAC7C;sEACsE;AACtE,MAAM,gCAAgC,GAAG,EAAE,CAAC;AAE5C,MAAM,OAAO,WAAY,SAAQ,YAAY;IACnC,OAAO,CAAa;IACpB,SAAS,GAAoB,IAAI,CAAC;IAClC,IAAI,GAAmB,IAAI,CAAC;IAC5B,kBAAkB,GAA6B,IAAI,CAAC;IACpD,UAAU,GAAe,EAAE,CAAC;IAC5B,QAAQ,GAAa,EAAE,CAAC;IACxB,OAAO,GAAkB,IAAI,CAAC;IAC9B,QAAQ,GAAG,KAAK,CAAC;IACjB,UAAU,GAAyB,IAAI,CAAC;IAChD,uEAAuE;IAC/D,wBAAwB,GAAkB,IAAI,CAAC;IAC/C,WAAW,GAAsB,IAAI,CAAC;IACtC,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAC;IACrC,SAAS,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC5C,WAAW,GAAG,IAAI,GAAG,EAA4B,CAAC;IAClD,IAAI,GAAwB,IAAI,CAAC;IACjC,SAAS,GAA2B,IAAI,CAAC;IACzC,iBAAiB,GAA4B,IAAI,CAAC;IAClD,eAAe,GAA0B,IAAI,CAAC;IAC9C,eAAe,GAA0B,IAAI,CAAC;IAC9C,eAAe,GAA0B,IAAI,CAAC;IAC9C,gBAAgB,GAA2B,IAAI,CAAC;IAChD,sBAAsB,GAAiC,IAAI,CAAC;IAC5D,uBAAuB,GAAkC,IAAI,CAAC;IAC9D,cAAc,GAAyB,IAAI,CAAC;IAC5C,sBAAsB,GAAiC,IAAI,CAAC;IAC5D,eAAe,GAA0B,IAAI,CAAC;IAC9C,aAAa,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC9C,kBAAkB,GAAG,IAAI,GAAG,EAA2B,CAAC;IACxD,WAAW,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC1C,iBAAiB,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC3D,iFAAiF;IACzE,eAAe,GAA0B,IAAI,CAAC;IACtD,iFAAiF;IACzE,cAAc,GAAgC,IAAI,CAAC;IAC3D,8EAA8E;IACtE,oBAAoB,GAA+B,IAAI,CAAC;IAChE,kFAAkF;IAC1E,gBAAgB,GAAkC,IAAI,CAAC;IAC/D,wFAAwF;IAChF,UAAU,GAA4B,IAAI,CAAC;IACnD,qEAAqE;IAC7D,aAAa,GAA+B,IAAI,CAAC;IACzD,gFAAgF;IACxE,qBAAqB,GAAgC,IAAI,CAAC;IAClE,oDAAoD;IAC5C,aAAa,GAAwB,IAAI,CAAC;IAClD,kDAAkD;IAC1C,oBAAoB,GAA+B,IAAI,CAAC;IAChE,yEAAyE;IACjE,oBAAoB,GAA+B,IAAI,CAAC;IAChE,yCAAyC;IACjC,uBAAuB,GAA0C,IAAI,CAAC;IAC9E,qDAAqD;IAC7C,wBAAwB,GAAW,CAAC,CAAC;IAC7C,gEAAgE;IACxD,eAAe,GAAgC,IAAI,CAAC;IAC5D,qEAAqE;IAC7D,+BAA+B,GAA+B,IAAI,CAAC;IAC3E,sFAAsF;IAC9E,2BAA2B,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;IACvE,gFAAgF;IACxE,0BAA0B,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;IAC9D,0BAA0B,GAAG,IAAI,GAAG,EAIxC,CAAC;IACG,6BAA6B,GAAG,IAAI,GAAG,EAAU,CAAC;IAE1D,YAAY,MAAkB;QAC5B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,SAAS,EAAE,MAAM,IAAI,IAAI,CAAC;IACxC,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,gBAAgB,CAAC,QAAkB;QACjC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,qBAAqB;QACzB,MAAM,IAAI,CAAC,UAAU,EAAE,eAAe,EAAE,CAAC;IAC3C,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,gBAAgB,CAAC,MAAc;QACnC,IAAI,CAAC,wBAAwB,GAAG,MAAM,CAAC;QACvC,IAAI,CAAC,UAAU,EAAE,oBAAoB,EAAE,CAAC;QACxC,MAAM,IAAI,CAAC,UAAU,EAAE,eAAe,EAAE,CAAC;IAC3C,CAAC;IAED,iFAAiF;IACjF,iBAAiB;QACf,IAAI,IAAI,CAAC,wBAAwB,KAAK,IAAI;YAAE,OAAO;QACnD,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,UAAU,EAAE,qBAAqB,EAAE,CAAC;IAC3C,CAAC;IAED,8EAA8E;IAC9E,IAAI,uBAAuB;QACzB,OAAO,IAAI,CAAC,wBAAwB,CAAC;IACvC,CAAC;IAED,mFAAmF;IACnF,cAAc,CAAC,MAAc;QAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,SAAS,CAAC,MAAc;QACtB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,sFAAsF;IACtF,IAAI,mBAAmB;QACrB,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;IAED,iFAAiF;IACjF,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,iBAAiB;QAOf,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACvC,OAAO;YACL,UAAU,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI;YACtC,WAAW,EAAE,IAAI,CAAC,gBAAgB,KAAK,IAAI;YAC3C,YAAY,EAAE,IAAI,CAAC,qBAAqB,KAAK,IAAI;YACjD,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,IAAI;YAClC,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,IAAI;SACvC,CAAC;IACJ,CAAC;IAED,2DAA2D;IAC3D,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,oFAAoF;IACpF,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,4EAA4E;IAC5E,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED,iEAAiE;IACjE,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,wDAAwD;IACxD,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,4EAA4E;IAC5E,IAAI,qBAAqB;QACvB,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED,6EAA6E;IAC7E,IAAI,sBAAsB;QACxB,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,kFAAkF;IAClF,sBAAsB,CAAC,MAAc;QACnC,OAAO,IAAI,CAAC,kBAAkB,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC;IACvE,CAAC;IAED;;;OAGG;IACH,uBAAuB;QACrB,OAAO,IAAI,CAAC,eAAe,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;IACzD,CAAC;IAED,kFAAkF;IAClF,2BAA2B;QACzB,OAAO,IAAI,CAAC,eAAe,EAAE,qBAAqB,EAAE,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;QAEpE,0BAA0B;QAC1B,IAAI,CAAC,SAAS,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,CAAC;QACnF,QAAQ,CAAC,2BAA2B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;QAE7E,gFAAgF;QAChF,4DAA4D;QAC5D,MAAM,cAAc,GAAG,iBAAiB,CACtC,IAAI,CAAC,OAAO,CAAC,mBAAmB;YAC9B,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC;YACrC,CAAC,CAAC,mBAAmB,CAAC,wBAAwB,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC,CACrF,CAAC;QACF,QAAQ,CAAC,sBAAsB,IAAI,CAAC,OAAO,CAAC,IAAI,SAAS,cAAc,CAAC,MAAM,oBAAoB,CAAC,CAAC;QAEpG,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACnC,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QACzC,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,QAAQ,CAAC,6BAA6B,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,uEAAuE;QACvE,wEAAwE;QACxE,oEAAoE;QACpE,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;YAC/D,MAAM,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,CAAC;QACrD,CAAC;QAED,wDAAwD;QACxD,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAClC,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACzB,CAAC;QACD,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACjC,MAAM,IAAI,CAAC,uBAAuB,CAAC,sBAAsB,EAAE,CAAC;QAC9D,CAAC;QAED,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAC5D,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;QACrC,CAAC;QACD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,CAAC;YAChD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;QAED,2BAA2B;QAC3B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;QAED,iBAAiB;QACjB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAAC;YACvC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACzB,CAAC;QAED,8BAA8B;QAC9B,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;YAClD,SAAS,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QAEzB,wBAAwB;QACxB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;QAC/B,KAAK,MAAM,eAAe,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC;YAC/D,eAAe,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAEvB,wBAAwB;QACxB,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;YACnC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QACjC,CAAC;QAED,WAAW;QACX,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;QAED,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;gBACpE,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;YAC7D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,SAAS,CAAC,8CAA8C,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YACtG,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC;gBACH,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACzB,CAAC;YAAC,MAAM,CAAC;gBACP,sBAAsB;YACxB,CAAC;YACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC;QAED,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9B,IAAI,CAAC;gBACH,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,CAAC;YACpC,CAAC;YAAC,MAAM,CAAC;gBACP,sBAAsB;YACxB,CAAC;YACD,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QAEjC,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACjC,aAAa,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YAC5C,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;QACtC,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC;gBACH,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YAC7B,CAAC;YAAC,MAAM,CAAC;gBACP,sBAAsB;YACxB,CAAC;YACD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACjC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC;QAC5C,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAAgB;QAClC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,UAAU,CAAC,uCAAuC,EAAE,kBAAkB,CAAC,CAAC;QAChF,CAAC;QAED,QAAQ,CAAC,uCAAuC,OAAO,IAAI,GAAG,OAAO,CAAC,CAAC;QACvE,QAAQ,CAAC,sFAAsF,YAAY,+EAA+E,CAAC,CAAC;QAE5L,sEAAsE;QACtE,sEAAsE;QACtE,wEAAwE;QACxE,0EAA0E;QAC1E,kEAAkE;QAClE,uEAAuE;QACvE,gEAAgE;QAChE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACjD,QAAQ,CAAC,uBAAuB,OAAO,CAAC,MAAM,uBAAuB,CAAC,CAAC;QACvE,IAAI,CAAC,kCAAkC,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAEO,KAAK,CAAC,yBAAyB,CAAC,OAAuB,EAAE,OAAgB;QAC/E,mFAAmF;QACnF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,KAAK,GAAe,EAAE,CAAC;QAC7B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,CAAC,GAAG,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBACnB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACtF,IAAI,CAAC,wCAAwC,CAAC,QAAQ,CAAC,CAAC;QACxD,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,CAAC;QAE1C,uEAAuE;QACvE,oCAAoC;QACpC,MAAM,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC;QAElD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,QAAQ,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,aAAa,IAAI,GAAG,EAAE,CAAC,CAAC;QAC5H,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,iCAAiC;QAC/B,IAAI,CAAC,kCAAkC,EAAE,CAAC;IAC5C,CAAC;IAEO,kCAAkC;QACxC,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,+BAA+B,EAAE,CAAC;YAC9D,OAAO;QACT,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;QACzC,QAAQ,CAAC,4DAA4D,CAAC,CAAC;QACvE,IAAI,CAAC,+BAA+B,GAAG,CAAC,KAAK,IAAI,EAAE;YACjD,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,iBAAiB,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE;gBACnF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO;gBACxC,MAAM,KAAK,GAAe,EAAE,CAAC;gBAC7B,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;oBACpC,MAAM,IAAI,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;oBAClD,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;wBAAE,SAAS;oBAC9C,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAChC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnB,CAAC;gBACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO;gBAC/B,QAAQ,CACN,iCAAiC,OAAO,CAAC,KAAK,EAAE;sBAC9C,GAAG,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;sBACjF,YAAY,KAAK,CAAC,MAAM,iBAAiB,OAAO,CAAC,aAAa,cAAc,CAC/E,CAAC;gBACF,IAAI,CAAC,wCAAwC,CAAC,KAAK,CAAC,CAAC;gBACrD,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;gBACrC,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;gBACvC,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;YAC1C,CAAC,CAAC,CAAC;YACH,QAAQ,CAAC,wCAAwC,OAAO,CAAC,MAAM,YAAY,CAAC,CAAC;YAC7E,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;YAC5D,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;YACrC,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACjB,SAAS,CAAC,uCAAuC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YAC7F,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,2BAA2B,CAAC,KAAiB;QACnD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACxE,OAAO;QACT,CAAC;QACD,MAAM,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YAClF,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpE,OAAO;YACT,CAAC;YACD,MAAM,IAAI,CAAC,4BAA4B,CAAC,aAAa,CAAC,CAAC;YACvD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACnB,OAAO;YACT,CAAC;YACD,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,CAAC,qBAAqB,KAAK,QAAQ,CAAC,CAAC;YAChG,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,OAAO;YACT,CAAC;YACD,QAAQ,CAAC,6DAA6D,QAAQ,CAAC,MAAM,UAAU,CAAC,CAAC;YACjG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACf,SAAS,CAAC,6DAA6D,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QACrH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,wCAAwC,CAAC,KAAiB;QAChE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,SAAS,GAAG,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;YAC5D,IAAI,CAAC,SAAS;gBAAE,SAAS;YACzB,MAAM,MAAM,GAAG,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAChE,IACE,MAAM;mBACH,MAAM,CAAC,SAAS,KAAK,SAAS;mBAC9B,KAAK,GAAG,MAAM,CAAC,WAAW,GAAG,mCAAmC,EACnE,CAAC;gBACD,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,OAAO,CAAC;YAC5C,CAAC;QACH,CAAC;IACH,CAAC;IAEO,0BAA0B,CAAC,KAAiB;QAClD,MAAM,MAAM,GAAe,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,SAAS,GAAG,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;YAC5D,IAAI,CAAC,SAAS;gBAAE,SAAS;YACzB,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;YAC/C,IAAI,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAAE,SAAS;YAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAChE,IACE,MAAM;mBACH,MAAM,CAAC,SAAS,KAAK,SAAS;mBAC9B,KAAK,GAAG,MAAM,CAAC,WAAW,GAAG,mCAAmC,EACnE,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACjD,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;QAC3B,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAEhC,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YAChF,IAAI,CAAC,IAAI,CAAC,QAAQ;gBAAE,OAAO;YAC3B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC;YACvE,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;YACzD,QAAQ,CAAC,wCAAwC,aAAa,CAAC,MAAM,iBAAiB,CAAC,CAAC;YACxF,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACf,SAAS,CAAC,wCAAwC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QAChG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;YACd,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;gBAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;gBAC5D,IAAI,SAAS,EAAE,CAAC;oBACd,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC,CAAC;gBAC3E,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,6BAA6B,CAAC,KAAiB;QAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;QAC5B,MAAM,aAAa,GAAe,EAAE,CAAC;QACrC,MAAM,iCAAiC,GAAG,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,iCAAiC,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,IAAI,EAAE;YAC3G,SAAS,CAAC;gBACR,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;gBAC3B,IAAI,CAAC,IAAI;oBAAE,OAAO;gBAClB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBAC/D,IAAI,QAAQ,EAAE,CAAC;oBACb,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC3B,OAAO,aAAa,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,4BAA4B,CAAC,IAAc;QACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC;QAEzC,IAAI,CAAC;YACH,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC1C,yBAAyB,CAAC,QAAQ,CAAC;gBACnC,wBAAwB,CAAC,QAAQ,CAAC;aACnC,CAAC,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC/B,MAAM,UAAU,GAAG,CAAC,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC;YAC3C,MAAM,OAAO,GAA4B;gBACvC,QAAQ,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;gBAChF,WAAW;gBACX,OAAO;gBACP,MAAM;aACP,CAAC;YACF,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE;gBAC/C,SAAS;gBACT,WAAW;gBACX,OAAO;aACR,CAAC,CAAC;YACH,MAAM,YAAY,GAAa,EAAE,GAAG,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,CAAC;YACzE,MAAM,IAAI,GAAG,OAAO,YAAY,CAAC,gBAAgB,KAAK,QAAQ;gBAC5D,CAAC,CAAC,YAAY,CAAC,gBAAgB;gBAC/B,CAAC,CAAC,CAAC,CAAC;YACN,YAAY,CAAC,sBAAsB,GAAG,2BAA2B,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,YAAY,CAAC,sBAAsB,CAAC;YAC7H,OAAO,YAAY,CAAC;QACtB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,SAAS,CAAC,2CAA2C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YACjI,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,8BAA8B,CAAC,IAAc;QACnD,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC;QACnD,MAAM,WAAW,GAAG,aAAa,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC;QACxD,MAAM,WAAW,GAAG,aAAa,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC;QACvD,IAAI,WAAW,GAAG,WAAW,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACjD,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,OAAO,EAAE,aAAa,EAAE,OAAO,IAAI,EAAE;YACrC,MAAM,EAAE,aAAa,EAAE,MAAM,IAAI,EAAE;SACpC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,QAAQ,CAAC,MAAc;QAC3B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,UAAU,CAAC,uCAAuC,EAAE,kBAAkB,CAAC,CAAC;QAChF,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,QAAQ,CAAC,mBAAmB,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,6BAA6B,CAAC,CAAC;QAClF,IAAI,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAC9D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,QAAQ,CAAC,8DAA8D,CAAC,CAAC;YACzE,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CACjD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,UAAU,CACtD,CAAC;YACF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,QAAQ,CAAC,6CAA6C,CAAC,CAAC;gBACxD,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,mEAAmE;QACnE,mEAAmE;QACnE,kEAAkE;QAClE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CACrC,CAAC,CAAC,QAAQ,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CACxD,CAAC;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,wCAAwC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACtD,IAAI,CAAC,0BAA0B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACxC,MAAM,IAAI,CAAC,4BAA4B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;OAWG;IACK,KAAK,CAAC,4BAA4B,CAAC,KAAiB;QAC1D,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxE,OAAO;QACT,CAAC;QACD,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC;QAC5C,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC;QAC7C,MAAM,yBAAyB,GAAG,CAAC,CAAC;QACpC,sEAAsE;QACtE,wEAAwE;QACxE,sEAAsE;QACtE,MAAM,qBAAqB,GAAG,MAAM,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;QAC5B,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAY,CAAC;QACnD,MAAM,SAAS,GAAG,KAAK,EAAE,CAAW,EAAiB,EAAE;YACrD,IACE,OAAO,CAAC,CAAC,qBAAqB,KAAK,QAAQ;mBACxC,KAAK,GAAG,CAAC,CAAC,qBAAqB,GAAG,qBAAqB,EAC1D,CAAC;gBACD,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC9B,OAAO;YACT,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,QAAQ;oBACzB,CAAC,CAAC,MAAM,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC;oBAC3D,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBAC9B,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;oBACnD,aAAa,CAAC,UAAU,CAAC,UAAU,CAAC;oBACpC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;oBACpD,aAAa,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;iBACxD,CAAC,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC1D,IAAI,KAAK,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;oBACxC,OAAO;gBACT,CAAC;gBACD,CAAC,CAAC,cAAc,GAAG,OAAO,CAAC;gBAC3B,CAAC,CAAC,sBAAsB,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;oBACjE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBACf,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC;gBAC5B,CAAC,CAAC,mBAAmB,GAAG,KAAK,CAAC,YAAY,CAAC;gBAC3C,CAAC,CAAC,iBAAiB,GAAG,KAAK,CAAC,UAAU,CAAC;gBACvC,iEAAiE;gBACjE,+DAA+D;gBAC/D,MAAM,YAAY,GAAG,KAAK,CAAC,eAAe,CAAC;gBAC3C,CAAC,CAAC,4BAA4B,GAAG,YAAY,IAAI,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;oBAC9E,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;oBACtB,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC;gBAC5B,CAAC,CAAC,uBAAuB,GAAG,KAAK,CAAC,aAAa,CAAC;gBAChD,oEAAoE;gBACpE,mEAAmE;gBACnE,qEAAqE;gBACrE,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;oBAC9E,CAAC,CAAC,kBAAkB,GAAG,QAAQ,CAAC;gBAClC,CAAC;gBACD,CAAC,CAAC,qBAAqB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACrC,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAChC,CAAC;YAAC,MAAM,CAAC;gBACP,iEAAiE;gBACjE,yDAAyD;YAC3D,CAAC;QACH,CAAC,CAAC;QACF,MAAM,OAAO,GAAyB,EAAE,CAAC;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,yBAAyB,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE;gBACvB,SAAS,CAAC;oBACR,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;oBAC3B,IAAI,CAAC,IAAI;wBAAE,OAAO;oBAClB,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;gBACxB,CAAC;YACH,CAAC,CAAC,EAAE,CAAC,CAAC;QACR,CAAC;QACD,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAE3B,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;IAC1D,CAAC;IAEO,mBAAmB,CAAC,KAAiB,EAAE,aAAqC;QAClF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC/B,MAAM,GAAG,GAA6B,KAAK,CAAC,MAAM,IAAI,CAAC;YACrD,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC;YAC1B,CAAC,CAAC,SAAS,CAAC;QACd,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,aAAa,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAE,SAAS;YACrD,MAAM,KAAK,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;YACrC,IAAI,KAAK,KAAK,IAAI;gBAAE,SAAS;YAC7B,CAAC,CAAC,iBAAiB,GAAG,KAAK,CAAC;YAC5B,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,KAAK,GAAG,uBAAuB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;gBAC9C,CAAC,CAAC,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC;gBAChC,CAAC,CAAC,iBAAiB,GAAG,KAAK,CAAC,KAAK,CAAC;YACpC,CAAC;YACD,CAAC,CAAC,sBAAsB,GAAG,mBAAmB,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,SAAS,CAAC;QACtE,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa,CAAC,IAAc;QAChC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACxC,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACzC,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,mBAAmB,CACvB,YAAoB,EACpB,OAAsD,EAAE;QAExD,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACzC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,MAAM,GAAG,YAAsB,CAAC;QACtC,IAAI,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACzD,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,aAAa,CAAC,EAAE,CAAC;YACnG,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;YAC/C,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CACb,UAAU,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,8DAA8D;oBACjG,8FAA8F,CAC/F,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1D,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CAAC,8CAA8C,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;YAChG,CAAC;QACH,CAAC;QAED,wEAAwE;QACxE,0EAA0E;QAC1E,uEAAuE;QACvE,uDAAuD;QACvD,0EAA0E;QAC1E,sEAAsE;QACtE,sCAAsC;QACtC,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACxD,IAAI,YAAY,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC;eACpC,CAAC,4BAA4B,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC;YACxE,MAAM,IAAI,KAAK,CACb,UAAU,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,yCAAyC;gBAC5E,YAAY,0CAA0C,KAAK;gBAC3D,8CAA8C,CAC/C,CAAC;QACJ,CAAC;QAED,OAAO,UAAU,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED;;;;OAIG;IACH,sBAAsB,CAAC,YAAoB;QAoBzC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC;QAC5D,MAAM,OAAO,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC;YACpC,CAAC,CAAC,CACA,IAAI,CAAC,aAAa,EAAE,8BAA8B,CAAC,YAAY,EAAE,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC;mBAC/F,IAAI,CAAC,aAAa,EAAE,8BAA8B,CAAC,YAAY,EAAE,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CACtG;YACD,CAAC,CAAC,CACA,IAAI,CAAC,aAAa,EAAE,sBAAsB,CAAC,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC;mBACzE,IAAI,CAAC,aAAa,EAAE,gBAAgB,CAAC,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,CAC1E;mBACE,IAAI,CAAC;QAEV,MAAM,QAAQ,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC;YACrC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,uBAAuB,CAAC,YAAY,EAAE,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC;YAC7F,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC;mBACpE,IAAI,CAAC;QAEV,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,sBAAsB,CAAC,YAAY,CAAC,CAAC;QACnF,MAAM,WAAW,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK;YACzD,CAAC,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,IAAI,GAAG,CAAC;gBAC5D,CAAC,CAAC,CAAC,CAAC;QACN,MAAM,YAAY,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM;YAC3D,CAAC,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,IAAI,GAAG,CAAC;gBAChE,CAAC,CAAC,CAAC,CAAC;QAEN,OAAO;YACL,aAAa,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC;YACzC,WAAW;YACX,YAAY;YACZ,WAAW,EAAE,WAAW,GAAG,YAAY;YACvC,YAAY,EAAE,IAAI,CAAC,oBAAoB,EAAE,iBAAiB,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,IAAI,IAAI;YAC5F,YAAY,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI;YACtC,aAAa,EAAE,OAAO,EAAE,MAAM,IAAI,IAAI;YACtC,UAAU,EAAE,OAAO,EAAE,UAAU,IAAI,IAAI;YACvC,gBAAgB,EAAE,QAAQ,EAAE,aAAa,IAAI,CAAC;YAC9C,gBAAgB,EAAE,QAAQ,EAAE,aAAa,IAAI,CAAC;YAC9C,mBAAmB,EAAE,QAAQ,EAAE,gBAAgB,IAAI,CAAC;YACpD,oBAAoB,EAAE,QAAQ,EAAE,iBAAiB,IAAI,CAAC;YACtD,mBAAmB,EAAE,CAAC,QAAQ,EAAE,gBAAgB,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,iBAAiB,IAAI,CAAC,CAAC;YAC3F,sBAAsB,EAAE,CAAC,QAAQ,EAAE,mBAAmB,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;YACxE,sBAAsB,EAAE,QAAQ,EAAE,cAAc,IAAI,IAAI;YACxD,qBAAqB,EAAE,QAAQ,EAAE,aAAa,IAAI,IAAI;SACvD,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,sBAAsB;QACpB,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC;QAC5D,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO,EAAE,CAAC;QACpD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,wBAAwB,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC7F,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACtB,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,EAAE,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC3E,OAAO;gBACL,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,MAAM,EAAE,CAAC,CAAC,aAAa;gBACvB,KAAK,EAAE,CAAC,CAAC,YAAY;gBACrB,cAAc,EAAE,WAAW,IAAI,IAAI,IAAI,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI;gBACvF,gBAAgB,EAAE,CAAC,CAAC,OAAO;gBAC3B,aAAa,EAAE,CAAC,CAAC,aAAa;gBAC9B,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,YAAY,EAAE,CAAC,CAAC,YAAY;gBAC5B,eAAe,EAAE,CAAC,CAAC,eAAe;gBAClC,sEAAsE;gBACtE,6BAA6B;gBAC7B,YAAY,EAAE,CAAC,CAAC,mBAAmB;aACpC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,qEAAqE;IACrE,mBAAmB;QACjB,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC;QAC5D,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO,EAAE,CAAC;QACpD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAC/E,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACtB,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM;gBACpD,CAAC,CAAC,IAAI,CAAC,oBAAoB,EAAE,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC;gBACxD,CAAC,CAAC,IAAI,CAAC;YACT,OAAO;gBACL,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,MAAM,EAAE,CAAC,CAAC,aAAa;gBACvB,KAAK,EAAE,CAAC,CAAC,YAAY;gBACrB,cAAc,EAAE,WAAW,IAAI,IAAI,IAAI,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI;gBACvF,gBAAgB,EAAE,CAAC,CAAC,OAAO;gBAC3B,aAAa,EAAE,CAAC,CAAC,aAAa;gBAC9B,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,YAAY,EAAE,CAAC,CAAC,YAAY;gBAC5B,eAAe,EAAE,CAAC,CAAC,eAAe;gBAClC,sEAAsE;gBACtE,6BAA6B;gBAC7B,YAAY,EAAE,CAAC,CAAC,mBAAmB;aACpC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,mBAAmB;QACjB,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC;QAC5D,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO,iBAAiB,CAAC;QACnE,uEAAuE;QACvE,sDAAsD;QACtD,MAAM,MAAM,GAAG;YACb,GAAG,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,OAAO,EAAE,YAAY,CAAC;YAClE,GAAG,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,OAAO,EAAE,YAAY,EAAE,YAAY,CAAC,IAAI,CAAC;SACtF,CAAC;QACF,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,MAAM,QAAQ,GAA6B,EAAE,CAAC;QAC9C,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,aAAa,IAAI,CAAC,CAAC,YAAY,CAAC;YAChC,IAAI,CAAC;gBAAC,UAAU,IAAI,MAAM,CAAC,CAAC,CAAC,eAAe,IAAI,GAAG,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;YAC5E,IAAI,CAAC;gBAAC,WAAW,IAAI,MAAM,CAAC,CAAC,CAAC,mBAAmB,IAAI,GAAG,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;YACjF,mEAAmE;YACnE,8DAA8D;YAC9D,IAAI,CAAC,CAAC,WAAW,KAAK,YAAY,CAAC,IAAI,EAAE,CAAC;gBACxC,IAAI,CAAC,CAAC,MAAM,KAAK,cAAc,CAAC,OAAO;oBAAE,gBAAgB,IAAI,CAAC,CAAC;gBAC/D,IAAI,CAAC,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM;oBAAE,cAAc,IAAI,CAAC,CAAC;YAC9D,CAAC;YACD,IAAI,CAAC,CAAC,MAAM;gBAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YACpC,QAAQ,CAAC,IAAI,CAAC;gBACZ,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,YAAY,EAAE,CAAC,CAAC,YAAY;gBAC5B,WAAW,EAAE,CAAC,CAAC,eAAe,IAAI,GAAG;gBACrC,YAAY,EAAE,CAAC,CAAC,mBAAmB,IAAI,GAAG;aAC3C,CAAC,CAAC;QACL,CAAC;QACD,sEAAsE;QACtE,qEAAqE;QACrE,uDAAuD;QACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,0BAA0B,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACvF,aAAa,EAAE,CAAC,CAAC,SAAS;YAC1B,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;YACtC,YAAY,EAAE,CAAC,CAAC,YAAY;YAC5B,YAAY,EAAE,CAAC,CAAC,YAAY;SAC7B,CAAC,CAAC,CAAC;QACJ,OAAO;YACL,aAAa;YACb,gBAAgB,EAAE,UAAU,CAAC,QAAQ,EAAE;YACvC,iBAAiB,EAAE,WAAW,CAAC,QAAQ,EAAE;YACzC,gBAAgB;YAChB,aAAa,EAAE,OAAO,CAAC,IAAI;YAC3B,cAAc;YACd,QAAQ;YACR,QAAQ;SACT,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CACf,IAAc,EACd,GAA0B,EAC1B,OAAiC;QAEjC,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,MAAM,UAAU,CAAC,uCAAuC,EAAE,kBAAkB,CAAC,CAAC;QACvG,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,IAAc,EACd,GAA0B,EAC1B,SAAiC,EACjC,OAAiC;QAEjC,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,MAAM,UAAU,CAAC,uCAAuC,EAAE,kBAAkB,CAAC,CAAC;QACvG,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;IAEO,gBAAgB,CAAC,IAAY,EAAE,cAAqD;QAC1F,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,SAAU,CAAC,MAAM;YAC9B,IAAI;YACJ,cAAc;YACd,oBAAoB,EAAE,kBAAkB,CAAC,oBAAoB;YAC7D,kBAAkB,EAAE,IAAI,CAAC,OAAO,CAAC,qBAAqB,IAAI,kBAAkB,CAAC,kBAAkB;YAC/F,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe;SAC9C,CAAC;IACJ,CAAC;IAEO,eAAe,CAAC,IAAoB,EAAE,MAAc;QAC1D,MAAM,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAgB,EAAE,EAAE;YACtC,IAAI,MAAuC,CAAC;YAC5C,IAAI,CAAC;gBACH,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjE,SAAS,CAAC,sCAAsC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAC;gBACtF,IAAI,CAAC,IAAI,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC3D,OAAO;YACT,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACzC,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAClD,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC9C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,uDAAuD;gBACvD,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;oBACpC,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,aAAa,EAAE,CAAC;wBACxF,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;4BACpB,IAAI,EAAE,WAAW,CAAC,IAAI;4BACtB,SAAS,EAAE,KAAK,CAAC,SAAS;4BAC1B,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC;yBACzC,CAAC,CAAC,CAAC;oBACN,CAAC;oBACD,SAAS;gBACX,CAAC;gBACD,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;oBACpC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACxD,SAAS;gBACX,CAAC;gBACD,IAAI,UAAU,IAAI,UAAU,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC1D,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;wBAC1C,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACjE,SAAS,CAAC,8CAA8C,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAC;oBAChG,CAAC,CAAC,CAAC;gBACL,CAAC;qBAAM,IAAI,eAAe,IAAI,eAAe,CAAC,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBAChF,eAAe,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;wBAC/C,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACjE,SAAS,CAAC,mDAAmD,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAC;oBACrG,CAAC,CAAC,CAAC;gBACL,CAAC;qBAAM,IAAI,QAAQ,IAAI,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC3D,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;wBACxC,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACjE,SAAS,CAAC,4CAA4C,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAC;oBAC9F,CAAC,CAAC,CAAC;gBACL,CAAC;qBAAM,IAAI,QAAQ,EAAE,CAAC;oBACpB,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;wBACxC,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACjE,SAAS,CAAC,sCAAsC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAC;wBACtF,IAAI,CAAC,IAAI,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;oBAC7D,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAEpC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,KAAsB,EAAE,EAAE;YAChD,IAAI,KAAK,KAAK,eAAe,CAAC,MAAM,IAAI,KAAK,KAAK,eAAe,CAAC,MAAM,EAAE,CAAC;gBACzE,uEAAuE;gBACvE,wEAAwE;gBACxE,mEAAmE;gBACnE,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,OAAO;oBAAE,OAAO;gBACnD,+BAA+B;gBAC/B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC;gBACrC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAChC,kEAAkE;gBAClE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,mBAAmB,EAAE,CAAC;gBAC/C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC3B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAClC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACtC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;gBAC7C,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACvC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAChC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC9B,kDAAkD;gBAClD,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBAChD,IAAI,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBACtD,IAAI,CAAC,uBAAuB,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBACvD,wCAAwC;gBACxC,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;oBAC/B,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;gBACvD,CAAC;gBACD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;oBACzB,KAAK,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;gBAClE,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,qEAAqE;QACrE,0EAA0E;QAC1E,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,MAAM,SAAS,GAAG,IAAI,gBAAgB,CAAC;gBACrC,QAAQ,EAAE,CAAC,OAAmB,EAAE,EAAE;oBAChC,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,aAAa,EAAE,CAAC;wBACxF,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;4BACpB,IAAI,EAAE,WAAW,CAAC,IAAI;4BACtB,SAAS,EAAE,CAAC;4BACZ,OAAO;yBACR,CAAC,CAAC,CAAC;oBACN,CAAC;gBACH,CAAC;gBACD,MAAM,EAAE,GAAG,EAAE;oBACX,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,aAAa;wBAAE,OAAO;oBAChG,SAAS,CAAC,gCAAgC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;oBACpE,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;gBAC5C,CAAC;aACF,CAAC,CAAC;YACH,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YACxC,SAAS,CAAC,KAAK,EAAE,CAAC;QACpB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,cAAqD;QAC9E,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAU,CAAC;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC;QAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC;QACzD,QAAQ,CAAC,qCAAqC,OAAO,oBAAoB,aAAa,EAAE,CAAC,CAAC;QAE1F,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;QACpE,IAAI,CAAC;YACH,IAAI,CAAC,SAAS,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;YACnE,QAAQ,CAAC,qCAAqC,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,SAAS,CAAC,wCAAwC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QAChG,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,iBAAiB,GAAG,IAAI,gBAAgB,CAAC;gBAC5C,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,IAAI,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;aAC9D,CAAC,CAAC;QACL,CAAC;QAED,oCAAoC;QACpC,IAAI,CAAC,eAAe,GAAG,IAAI,oBAAoB,CAC7C,QAAQ,EACR,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,iBAAiB,EACtB,EAAE,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,gBAAgB,EAAE,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,EAC9G;YACE,gBAAgB,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC;YACtE,kBAAkB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC;SACnE,CACF,CAAC;QAEF,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,mCAAmC,EAAE,CAAC;QAE3C,kDAAkD;QAClD,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,qBAAqB,CAAC;YACvC,IAAI,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,IAA6C,EAAE,EAAE;gBAC7E,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;oBAClC,QAAQ,CAAC,gCAAgC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,uCAAuC,CAAC,CAAC;oBAC/G,KAAK,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjE,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;oBAC1C,QAAQ,CAAC,iCAAiC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,uBAAuB,CAAC,CAAC;oBAChG,KAAK,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;gBACvE,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,YAAY;QACZ,IAAI,CAAC,IAAI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;QACxE,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAExB,+CAA+C;QAC/C,IAAI,CAAC,kBAAkB,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE;YAChE,sBAAsB,EAAE,IAAI,CAAC,OAAO,CAAC,sBAAsB;SAC5D,CAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE;YACjD,SAAS,CAAC,uBAAuB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC;YAC3C,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,SAAS;SAChB,CAAC,CAAC;QAEH,4EAA4E;QAC5E,MAAM,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,IAAI,aAAa,CAAC;QACxF,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAE1C,0DAA0D;QAC1D,IAAI,CAAC,IAAI,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;YACzC,EAAE,IAAI,EAAE,mBAAmB,EAAE,QAAQ,EAAE,KAAK,EAAE;YAC9C,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE;SACzC,CAAC,CAAC;QAEH,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,mFAAmF,CAAC,CAAC;YAC/F,SAAS,CAAC,iGAAiG,CAAC,CAAC;YAC7G,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1B,CAAC;QAED,iCAAiC;QACjC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,iBAAiB,GAAG;gBACxB,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpF,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC;aACrC,CAAC;YACF,MAAM,eAAe,GAAoB;gBACvC,QAAQ;gBACR,GAAG,EAAE,IAAI,CAAC,IAAI;gBACd,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACrC,QAAQ,EAAE,CAAC,CAAC,IAAI;oBAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjF,GAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,EAAE,GAAG,CAAC,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvF,GAAG,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,wBAAwB,EAAE,EAAE,GAAG,CAAC,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACtG,GAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,EAAE,GAAG,CAAC,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvF,cAAc,EAAE,CAAC,CAAC,cAAc;oBAChC,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,wBAAwB,KAAK,IAAI,IAAI,CAAC,CAAC,oBAAoB,KAAK,KAAK;oBAC7F,OAAO,EAAE;wBACP,QAAQ,EAAE;4BACR,kBAAkB,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;4BACzD,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;yBAC5D;wBACD,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACvE;iBACF,CAAC,CAAC;gBACH,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9E,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpF,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpF,GAAG,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5E,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,IAAI,GAAG,CACd,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;oBACzB,CAAC,CAAC,IAAI;oBACN;wBACE,QAAQ,EAAE;4BACR,kBAAkB,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;4BACzD,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;yBAC5D;wBACD,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACvE;iBACF,CAAC,CACH;gBACD,oBAAoB,EAAE,kBAAkB,CAAC,oBAAoB;gBAC7D,aAAa,EAAE,mBAAmB;gBAClC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzE,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,cAAc,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7F,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvF,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACxD,CAAC;YACF,IAAI,CAAC,UAAU,GAAG,IAAI,aAAa,CAAC,eAAe,CAAC,CAAC;YACrD,IAAI,CAAC,UAAU,CAAC,qBAAqB,EAAE,CAAC;YAExC,yEAAyE;YACzE,IAAI,CAAC,kBAAmB,CAAC,mBAAmB,CAC1C,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,EAAE,IAAI,IAAI,CACnD,CAAC;QACJ,CAAC;QAED,gCAAgC;QAChC,IAAI,CAAC,cAAc,GAAG,IAAI,oBAAoB,CAAC;YAC7C,QAAQ;YACR,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,oBAAoB,EAAE,IAAI,CAAC,qBAAqB;YAChD,sBAAsB,EAAE,IAAI,CAAC,uBAAuB;YACpD,cAAc,EAAE,IAAI,CAAC,eAAe;YACpC,cAAc,EAAE,IAAI,CAAC,eAAe;YACpC,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,kBAAkB,EAAE,IAAI,CAAC,OAAO,CAAC,kBAAkB;YACnD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,4BAA4B,IAAI,IAAI;gBAC7D,CAAC,CAAC,EAAE,4BAA4B,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EAAE;gBAC9F,CAAC,CAAC,EAAE,CAAC;YACP,IAAI,EAAE,CAAC,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC;SACpD,CAAC,CAAC;QAEH,kCAAkC;QAClC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,IAAoB,EAAE,EAAE;YAChE,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,oCAAoC,IAAI,CAAC,UAAU,CAAC,MAAM,cAAc,CAAC,CAAC;IACrF,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,cAAqD;QAC7E,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAU,CAAC;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;QAC1C,QAAQ,CAAC,oCAAoC,OAAO,EAAE,CAAC,CAAC;QAExD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;QACpE,IAAI,CAAC,8BAA8B,CAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAExC,gCAAgC;QAChC,IAAI,CAAC,IAAI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;QACxE,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAExB,oDAAoD;QACpD,IAAI,CAAC,kBAAkB,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE;YAChE,sBAAsB,EAAE,IAAI,CAAC,OAAO,CAAC,sBAAsB;SAC5D,CAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE;YACjD,SAAS,CAAC,uBAAuB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,8CAA8C;QAC9C,MAAM,gBAAgB,GAAG,IAAI,oBAAoB,CAAC;YAChD,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,sBAAsB,IAAI,IAAI;YACtD,aAAa,EAAE,EAAE;SAClB,CAAC,CAAC;QACH,MAAM,YAAY,GAAiB;YACjC,GAAG,EAAE,IAAI,CAAC,IAAI;YACd,gBAAgB;YAChB,qBAAqB,EAAE,qBAAqB,CAAC,qBAAqB;YAClE,kBAAkB,EAAE,qBAAqB,CAAC,kBAAkB;YAC5D,oBAAoB,EAAE,qBAAqB,CAAC,oBAAoB;YAChE,0BAA0B,EAAE,qBAAqB,CAAC,0BAA0B;YAC5E,UAAU,EAAE,qBAAqB,CAAC,UAAU;YAC5C,uBAAuB,EAAE,qBAAqB,CAAC,uBAAuB;SACvE,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC;QAEhD,uEAAuE;QACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACvC,IAAI,QAAQ,EAAE,OAAO,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,eAAe,IAAI,QAAQ,CAAC,eAAe,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;YACzH,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAC9C,wEAAwE;YACxE,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBACxB,IAAI,CAAC;oBACH,IAAI,CAAC,aAAa,GAAG,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC;oBACnD,QAAQ,CAAC,yCAAyC,CAAC,CAAC;gBACtD,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,SAAS,CAAC,oCAAoC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC5F,CAAC;YACH,CAAC;YACD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,MAAM,kBAAkB,GAAuB;oBAC7C,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClF,uBAAuB,EAAE,QAAQ,CAAC,eAAe;oBACjD,uBAAuB,EAAE,QAAQ,CAAC,eAAe;oBACjD,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,uBAAuB,EAAE,QAAQ,CAAC,uBAAuB,IAAI,EAAE;oBAC/D,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,IAAI;oBACjC,uBAAuB,EAAE,QAAQ,CAAC,uBAAuB,IAAI,GAAG,EAAE,+CAA+C;oBACjH,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,iBAAiB,IAAI,QAAQ,CAAC,EAAG,2CAA2C;oBAC/G,oBAAoB,EAAE,MAAM,CAAC,QAAQ,CAAC,oBAAoB,IAAI,SAAS,CAAC,EAAG,qDAAqD;oBAChI,yBAAyB,EAAE,QAAQ,CAAC,yBAAyB,IAAI,KAAK;oBACtE,OAAO,EAAE,WAAW;iBACrB,CAAC;gBACF,IAAI,CAAC,oBAAoB,GAAG,IAAI,mBAAmB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,sBAAsB,IAAI,SAAS,CAAC,CAAC;gBAChJ,oEAAoE;gBACpE,qEAAqE;gBACrE,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC;gBACzF,QAAQ,CAAC,oDAAoD,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,kBAAkB,CAAC,OAAO,aAAa,kBAAkB,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;gBAEtN,8EAA8E;gBAC9E,IAAI,CAAC,gBAAgB,GAAG,IAAI,sBAAsB,CAChD,QAAQ,EACR,IAAI,CAAC,oBAAoB,EACzB,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,aAAa,EAClB;oBACE,gBAAgB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,IAAI,IAAI;oBAC1D,kBAAkB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE;iBAC3D,EACD,IAAI,EACJ,IAAI,CAAC,sBAAsB,IAAI,SAAS,EACxC,IAAI,CAAC,sBAAsB,CAC5B,CAAC;gBACF,QAAQ,CAAC,6CAA6C,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QAED,+BAA+B;QAC/B,IAAI,CAAC,aAAa,GAAG,IAAI,mBAAmB,CAC1C;YACE,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB;YAC/C,oBAAoB,EAAE,IAAI,CAAC,OAAO,CAAC,oBAAoB;YACvD,mBAAmB,EAAE,IAAI,CAAC,OAAO,CAAC,mBAAmB;SACtD,EACD;YACE,WAAW,EAAE,QAAQ,CAAC,MAAM;YAC5B,UAAU,EAAE,IAAI,CAAC,gBAAgB;YACjC,gBAAgB,EAAE,IAAI,CAAC,sBAAsB;YAC7C,mBAAmB,EAAE,IAAI,CAAC,oBAAoB;YAC9C,mBAAmB,EAAE,IAAI,CAAC,oBAAoB;YAC9C,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAgB,CAAC;YACtE,MAAM,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,IAAsB,CAAC;YAC9E,kBAAkB,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE,IAAsB,CAAC;YACtG,kBAAkB,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC;SAC3E,CACF,CAAC;QAEF,QAAQ,CAAC,4CAA4C,IAAI,CAAC,IAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC/E,CAAC;IAEO,yBAAyB,CAAC,IAAoB;QACpD,QAAQ,CAAC,mCAAmC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;QACjF,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;QAEtC,MAAM,YAAY,GAAG,GAAS,EAAE;YAC9B,QAAQ,CAAC,0BAA0B,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;QAChH,CAAC,CAAC;QACF,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,aAAa,EAAE,CAAC;YACxF,YAAY,EAAE,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,CAAC,KAAsB,EAAQ,EAAE;gBAC/C,IAAI,KAAK,KAAK,eAAe,CAAC,IAAI,EAAE,CAAC;oBACnC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;oBACjC,YAAY,EAAE,CAAC;gBACjB,CAAC;YACH,CAAC,CAAC;YACF,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAClC,CAAC;QAED,qDAAqD;QACrD,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;QACxC,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,qBAAqB,CAAC;YACvC,UAAU,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,EAAE;gBACpC,KAAK,GAAG,CAAC,kBAAkB,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC;qBAC1D,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;oBACf,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;wBAC1B,SAAS,CAAC,0CAA0C,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,iDAAiD,CAAC,CAAC;wBAC/H,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,0BAA0B,EAAE,CAAC,CAAC;oBAC1F,CAAC;gBACH,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACb,SAAS,CAAC,yCAAyC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBACjI,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;YACH,UAAU,CAAC,qBAAqB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC3C,KAAK,GAAG,CAAC,yBAAyB,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC;qBACjE,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;oBACf,UAAU,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;oBAC1C,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;wBAC/B,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE;4BAClC,WAAW;4BACX,SAAS,EAAE,MAAM,CAAC,SAAS;4BAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;4BACrB,WAAW,EAAE,MAAM,CAAC,WAAW;yBAChC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACjE,SAAS,CAAC,gDAAgD,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAC;oBACrG,UAAU,CAAC,sBAAsB,CAAC;wBAChC,OAAO,EAAE,CAAC;wBACV,SAAS,EAAE,OAAO,CAAC,SAAS;wBAC5B,MAAM,EAAE,UAAU;wBAClB,IAAI,EAAE,cAAc;wBACpB,MAAM,EAAE,OAAO;qBAChB,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,cAAc,CAAC,GAAG,EAAE;gBAC7B,SAAS,CAAC,oEAAoE,CAAC,CAAC;YAClF,CAAC,CAAC,CAAC;YACH,UAAU,CAAC,qBAAqB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC3C,UAAU,CAAC,sBAAsB,CAAC;oBAChC,OAAO,EAAE,CAAC;oBACV,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,MAAM,EAAE,UAAU;oBAClB,IAAI,EAAE,aAAa;oBACnB,MAAM,EAAE,6CAA6C;iBACtD,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACjC,MAAM,SAAS,GAAG,IAAI,CAAC,uBAAuB,CAAC;YAC/C,UAAU,CAAC,eAAe,CAAC,CAAC,OAAO,EAAE,EAAE;gBACrC,SAAS,CAAC,UAAU,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;YACzD,CAAC,CAAC,CAAC;YACH,UAAU,CAAC,eAAe,CAAC,CAAC,OAAO,EAAE,EAAE;gBACrC,SAAS,CAAC,UAAU,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;YACzD,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,eAAe,CAAC,GAAG,EAAE;gBAC9B,SAAS,CAAC,sEAAsE,CAAC,CAAC;YACpF,CAAC,CAAC,CAAC;YACH,UAAU,CAAC,eAAe,CAAC,GAAG,EAAE;gBAC9B,SAAS,CAAC,sEAAsE,CAAC,CAAC;YACpF,CAAC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAChD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QAE1D,gDAAgD;QAChD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC;YACrC,QAAQ,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,EAAE;gBAClC,KAAK,OAAO,CAAC,kBAAkB,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBAC5E,SAAS,CAAC,wCAAwC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBAChI,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAE5C,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,cAAe,CAAC,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC;QAEtG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,OAAe;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACvC,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACnC,OAAO;QACT,CAAC;QAED,MAAM,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAC;QACjD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAE9C,qDAAqD;QACrD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,IAAI,CAAC;gBACH,IAAI,CAAC,aAAa,GAAG,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC;gBACnD,QAAQ,CAAC,iCAAiC,CAAC,CAAC;YAC9C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,SAAS,CAAC,oCAAoC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YAC5F,CAAC;QACH,CAAC;QAED,sEAAsE;QACtE,sEAAsE;QACtE,0EAA0E;QAC1E,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACxC,IAAI,CAAC,UAAU,GAAG,IAAI,gBAAgB,CAAC;gBACrC,OAAO,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;aAChE,CAAC,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE;gBAC3B,QAAQ,CAAC,qDAAqD,CAAC,CAAC;gBAChE,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC;QAED,4BAA4B;QAC5B,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,eAAe,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;YACxE,IAAI,CAAC,eAAe,GAAG,IAAI,cAAc,CAAC;gBACxC,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/C,eAAe,EAAE,QAAQ,CAAC,eAAe;gBACzC,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9D,CAAC,CAAC;YACH,QAAQ,CAAC,+CAA+C,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;QACvG,CAAC;QAED,4BAA4B;QAC5B,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC;YAChD,IAAI,CAAC,eAAe,GAAG,IAAI,cAAc,CAAC;gBACxC,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/C,eAAe,EAAE,QAAQ,CAAC,eAAe;gBACzC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9D,CAAC,CAAC;YACH,QAAQ,CAAC,+CAA+C,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;YAErG,MAAM,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAAC;YAC/C,MAAM,aAAa,GAAG,CAAC,kDAAkD,CAAC,CAAC;YAC3E,MAAM,oBAAoB,GAAG,GAAG,CAAC;YACjC,MAAM,eAAe,GAAG,IAAI,GAAG,EAA0B,CAAC;YAC1D,IAAI,CAAC,sBAAsB,GAAG,IAAI,qBAAqB,CAAC;gBACtD,UAAU,EAAE,KAAK,EAAE,cAAsB,EAAE,WAAmB,EAAE,EAAE;oBAChE,IAAI,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;oBACnD,IAAI,QAAQ,EAAE,CAAC;wBACb,eAAe,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;wBACvC,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;oBAChD,CAAC;yBAAM,CAAC;wBACN,QAAQ,GAAG,IAAI,cAAc,CAAC,cAAc,EAAE,aAAa,EAAE,iBAAkB,CAAC,QAAQ,CAAC,CAAC;wBAC1F,IAAI,eAAe,CAAC,IAAI,IAAI,oBAAoB,EAAE,CAAC;4BACjD,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;4BACnD,IAAI,MAAM,KAAK,SAAS;gCAAE,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAC3D,CAAC;wBACD,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;oBAChD,CAAC;oBACD,OAAO,MAAM,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,WAAW,CAAY,CAAC;gBAC1E,CAAC;aACF,CAAC,CAAC;YACH,QAAQ,CAAC,0CAA0C,CAAC,CAAC;QACvD,CAAC;QAED,6BAA6B;QAC7B,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,gBAAgB,EAAE,CAAC;YACjD,IAAI,CAAC,gBAAgB,GAAG,IAAI,eAAe,CAAC;gBAC1C,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/C,eAAe,EAAE,QAAQ,CAAC,gBAAgB;gBAC1C,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9D,CAAC,CAAC;YACH,QAAQ,CAAC,gDAAgD,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;YAEvG,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,MAAM,eAAe,GAAG;oBACtB,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/C,wBAAwB,EAAE,QAAQ,CAAC,gBAAgB;oBACnD,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,IAAI;iBAClC,CAAC;gBACF,IAAI,CAAC,sBAAsB,GAAG,IAAI,qBAAqB,CACrD,IAAI,CAAC,SAAS,EACd;oBACE,OAAO,EAAE,eAAe,CAAC,OAAO;oBAChC,wBAAwB,EAAE,eAAe,CAAC,wBAAwB;oBAClE,uBAAuB,EAAE,QAAQ,CAAC,uBAAuB,IAAI,GAAG;oBAChE,yBAAyB,EAAE,QAAQ,CAAC,yBAAyB,IAAI,KAAK;iBACvE,EACD,IAAI,CAAC,sBAAsB,IAAI,SAAS,EACxC,IAAI,CAAC,aAAa,IAAI,SAAS,CAChC,CAAC;gBACF,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACnC,IAAI,CAAC,uBAAuB,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;gBAC7F,CAAC;YACH,CAAC;QACH,CAAC;QAED,2BAA2B;QAC3B,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,cAAc,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;YACvE,IAAI,CAAC,cAAc,GAAG,IAAI,aAAa,CAAC;gBACtC,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/C,eAAe,EAAE,QAAQ,CAAC,cAAc;gBACxC,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9D,CAAC,CAAC;YACH,QAAQ,CAAC,8CAA8C,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;QACrG,CAAC;QAED,wDAAwD;QACxD,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,uBAAuB,EAAE,CAAC;YACxD,IAAI,CAAC,eAAe,GAAG,IAAI,cAAc,CAAC;gBACxC,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/C,eAAe,EAAE,QAAQ,CAAC,uBAAuB;gBACjD,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9D,CAAC,CAAC;YACH,QAAQ,CAAC,+CAA+C,QAAQ,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;QAC/G,CAAC;QAED,kDAAkD;QAClD,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa;YACtE,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC;YAChD,MAAM,YAAY,GAAwB;gBACxC,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/C,uBAAuB,EAAE,QAAQ,CAAC,eAAe;gBACjD,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,IAAI;gBACjC,OAAO,EAAE,WAAW;gBACpB,GAAG,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9F,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAChF,CAAC;YACF,IAAI,CAAC,qBAAqB,GAAG,IAAI,oBAAoB,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACxG,QAAQ,CAAC,yCAAyC,CAAC,CAAC;YAEpD,6EAA6E;YAC7E,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;YAC3C,IAAI,aAAa,EAAE,OAAO,KAAK,KAAK,IAAI,QAAQ,CAAC,mBAAmB,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;gBAC7F,IAAI,CAAC,eAAe,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE;oBACxD,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/C,YAAY,EAAE,QAAQ,CAAC,mBAAmB;oBAC1C,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,UAAU,EAAE,QAAQ,CAAC,OAAO,IAAI,IAAI;oBACpC,GAAG,CAAC,aAAa,EAAE,kBAAkB,KAAK,SAAS;wBACjD,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE;wBAClE,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,CAAC,aAAa,EAAE,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/F,GAAG,CAAC,aAAa,EAAE,mBAAmB,KAAK,SAAS;wBAClD,CAAC,CAAC,EAAE,mBAAmB,EAAE,aAAa,CAAC,mBAAmB,EAAE;wBAC5D,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC,CAAC;gBACH,QAAQ,CAAC,4CAA4C,QAAQ,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;YACxG,CAAC;YAED,2FAA2F;YAC3F,MAAM,IAAI,CAAC,qBAAqB,CAAC,wBAAwB,EAAE,CAAC;YAC5D,MAAM,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,CAAC;YAEjD,4DAA4D;YAC5D,IAAI,CAAC;gBACH,IAAI,CAAC,wBAAwB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;YACnG,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,CAAC,wBAAwB,GAAG,CAAC,CAAC;YACpC,CAAC;YAED,qEAAqE;YACrE,IAAI,CAAC,uBAAuB,GAAG,WAAW,CAAC,GAAG,EAAE;gBAC9C,KAAK,IAAI,CAAC,qBAAqB,EAAE,aAAa,EAAE,CAAC;gBACjD,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;oBAC/B,KAAK,IAAI,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;wBACnG,IAAI,CAAC,wBAAwB,GAAG,SAAS,CAAC;oBAC5C,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,EAAE,MAAM,CAAC,CAAC;YACX,IAAI,OAAQ,IAAI,CAAC,uBAAkD,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;gBACxF,IAAI,CAAC,uBAAiD,CAAC,KAAK,EAAE,CAAC;YAClE,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,2EAA2E;YAC3E,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACnC,SAAS,CAAC,8FAA8F,CAAC,CAAC;YAC5G,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,eAAe,GAAG,IAAI,cAAc,EAAE,CAAC;QAC5C,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACzD,SAAS,CAAC,2CAA2C,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QACnG,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,8BAA8B,CAAC,OAAe;QACpD,IAAI,IAAI,CAAC,oBAAoB;YAAE,OAAO;QACtC,IAAI,CAAC;YACH,IAAI,CAAC,oBAAoB,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC;YACtF,IAAI,CAAC,oBAAoB,GAAG,IAAI,mBAAmB,CACjD,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,IAAI,IAAI,CAAC,OAAO,EAAE,sBAAsB,CAAC,EAC9E;gBACE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU;gBACjD,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,cAAc;aAC1D,CACF,CAAC;YACF,QAAQ,CAAC,yCAAyC,CAAC,CAAC;QACtD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,SAAS,CAAC,4CAA4C,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QACpG,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,IAAc;QACjD,IAAI,CAAC,IAAI,CAAC,kBAAkB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAChD,MAAM,UAAU,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpE,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,EAAE,YAAY,IAAI,EAAE,CAAC,CAAC;QACzF,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAC1D,IAAI,eAAe,GAAG,KAAK,CAAC;QAE5B,+DAA+D;QAC/D,yEAAyE;QACzE,yEAAyE;QACzE,8CAA8C;QAC9C,IAAI,QAAQ,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACnC,MAAM,eAAe,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC3E,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC9E,IAAI,eAAe,IAAI,CAAC,eAAe,CAAC,IAAI,KAAK,OAAO,IAAI,eAAe,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,CAAC;gBAC9F,QAAQ,CAAC,eAAe,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,6BAA6B,eAAe,CAAC,IAAI,IAAI,eAAe,CAAC,IAAI,OAAO,OAAO,IAAI,OAAO,gBAAgB,CAAC,CAAC;gBACpK,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACjB,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;gBAC1D,eAAe,GAAG,IAAI,CAAC;YACzB,CAAC;QACH,CAAC;QAED,IACE,QAAQ,IAAI,CAAC,eAAe;YAC5B,QAAQ,CAAC,KAAK,KAAK,eAAe,CAAC,MAAM;YACzC,QAAQ,CAAC,KAAK,KAAK,eAAe,CAAC,MAAM,EACzC,CAAC;YACD,QAAQ,CAAC,yCAAyC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC;YAC3G,kEAAkE;YAClE,IAAI,QAAQ,CAAC,KAAK,KAAK,eAAe,CAAC,UAAU,EAAE,CAAC;gBAClD,QAAQ,CAAC,0CAA0C,CAAC,CAAC;gBACrD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC1C,MAAM,OAAO,GAAG,CAAC,KAAsB,EAAQ,EAAE;wBAC/C,IAAI,KAAK,KAAK,eAAe,CAAC,IAAI,IAAI,KAAK,KAAK,eAAe,CAAC,aAAa,EAAE,CAAC;4BAC9E,QAAQ,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;4BACrC,OAAO,EAAE,CAAC;wBACZ,CAAC;6BAAM,IAAI,KAAK,KAAK,eAAe,CAAC,MAAM,IAAI,KAAK,KAAK,eAAe,CAAC,MAAM,EAAE,CAAC;4BAChF,QAAQ,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;4BACrC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,IAAI,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC;wBAC3D,CAAC;oBACH,CAAC,CAAC;oBACF,QAAQ,CAAC,EAAE,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;gBACtC,CAAC,CAAC,CAAC;YACL,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,iEAAiE;QACjE,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC5D,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1E,QAAQ,CAAC,wBAAwB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;QACrF,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,eAAe,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,2BAA2B,CAAC,CAAC;QAChF,CAAC;QAED,MAAM,UAAU,GAAqB;YACnC,YAAY,EAAE,IAAI,CAAC,MAAM;YACzB,WAAW,EAAE,IAAI;YACjB,kBAAkB,EAAE,CAAC,GAAG,gBAAgB,CAAC;SAC1C,CAAC;QAEF,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAElE,8BAA8B;QAC9B,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,OAAO,GAAG,CAAC,KAAsB,EAAQ,EAAE;gBAC/C,QAAQ,CAAC,4BAA4B,KAAK,EAAE,CAAC,CAAC;gBAC9C,IAAI,KAAK,KAAK,eAAe,CAAC,IAAI,IAAI,KAAK,KAAK,eAAe,CAAC,aAAa,EAAE,CAAC;oBAC9E,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;oBACjC,OAAO,EAAE,CAAC;gBACZ,CAAC;qBAAM,IAAI,KAAK,KAAK,eAAe,CAAC,MAAM,IAAI,KAAK,KAAK,eAAe,CAAC,MAAM,EAAE,CAAC;oBAChF,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;oBACjC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,IAAI,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC,CAAC;YACF,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,uBAAuB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;QAChG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAC1D,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,eAAe,CAAC,MAAc,EAAE,IAAoB;QAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE;YAC7B,kBAAkB,EAAE,IAAI,CAAC,OAAO,CAAC,kBAAkB;SACpD,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7B,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,2BAA2B,CAAC,MAAc,EAAE,IAAoB;QACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACzC,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,oBAAoB,CAAC,MAAc,EAAE,IAAoB;QAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,+DAA+D;QAC/D,GAAG,CAAC,cAAc,CAAC,CAAC,OAA4B,EAAE,EAAE;YAClD,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAClC,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,oBAAoB,CACxB,OAA4B,EAC5B,IAAoC;QAEpC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,gBAAgB,GAAG,IAAI,EAAE,gBAAgB,IAAI,8BAA8B,CAAC;QAElF,MAAM,UAAU,GAAoD,EAAE,CAAC;QACvE,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACxC,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACxD,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,sCAAsC,CAAC;gBAAE,SAAS;YACzE,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC3D,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,aAAa;gBAAE,SAAS;YAClG,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC,CAAC;QACD,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC9C,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAE,EAAE,UAAU,CAAC,CAAC,CAAE,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAC9C,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,UAAU,EAAE,CAAC;YAC1C,oEAAoE;YACpE,+DAA+D;YAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YAC9C,IAAI,OAAO,IAAI,OAAO,CAAC,WAAW,GAAG,gCAAgC;gBAAE,MAAM;YAC7E,IAAI,CAAC;gBACH,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACpE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,SAAS,CAAC,2CAA2C,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC5H,SAAS;YACX,CAAC;YACD,OAAO,EAAE,CAAC;YACV,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;YACrF,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,WAAW,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW,CAAC,EAAE,CAAC;gBAClF,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YACrC,CAAC;YACD,oEAAoE;QACtE,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IACtC,CAAC;IAED;mDAC+C;IACvC,oBAAoB,CAC1B,MAAc,EACd,SAAiB,EACjB,SAAiB;QAEjB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,MAAM,QAAQ,GAAG,CAAC,KAAuD,EAAQ,EAAE;gBACjF,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM;oBAAE,OAAO;gBACpC,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,SAAS;oBAAE,OAAO;gBAChE,OAAO,EAAE,CAAC;gBACV,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC,CAAC;YACF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,OAAO,EAAE,CAAC;gBACV,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC,EAAE,SAAS,CAAC,CAAC;YACd,MAAM,OAAO,GAAG,GAAS,EAAE;gBACzB,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;YACtC,CAAC,CAAC;YACF,IAAI,CAAC,EAAE,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,qBAAqB,CAAC,OAA4B;QAChD,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACxC,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACxD,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,sCAAsC,CAAC;gBAAE,SAAS;YACzE,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC3D,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,aAAa;gBAAE,SAAS;YAClG,IAAI,CAAC;gBACH,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAClE,IAAI,EAAE,CAAC;YACT,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,SAAS,CAAC,0CAA0C,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YAC7H,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,qBAAqB,CAAC,MAAoB;QAChD,MAAM,qBAAqB,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC;QACpE,IAAI,qBAAqB,IAAI,kBAAkB,CAAC,qBAAqB,CAAC,KAAK,IAAI,EAAE,CAAC;YAChF,OAAO,qBAAqB,CAAC;QAC/B,CAAC;QACD,OAAO,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;IACzC,CAAC;IAEO,uBAAuB,CAAC,MAAoB;QAClD,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QACnE,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACnD,MAAM,sBAAsB,GAA6C,EAAE,CAAC;QAC5E,MAAM,8BAA8B,GAAuD,EAAE,CAAC;QAC9F,MAAM,iCAAiC,GAAyD,EAAE,CAAC;QACnG,MAAM,sCAAsC,GAA8D,EAAE,CAAC;QAC7G,MAAM,gCAAgC,GAAyD,EAAE,CAAC;QAElG,KAAK,MAAM,oBAAoB,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;YAC7D,MAAM,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,CAAC;YAC/C,MAAM,cAAc,GAA8C,EAAE,CAAC;YACrE,KAAK,MAAM,OAAO,IAAI,oBAAoB,CAAC,QAAQ,EAAE,CAAC;gBACpD,cAAc,CAAC,OAAO,CAAC;oBACrB,oBAAoB,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,IAAI,oBAAoB,CAAC,cAAc,CAAC;YAC1F,CAAC;YAED,MAAM,QAAQ,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;YAClD,IAAI,QAAQ,EAAE,CAAC;gBACb,+CAA+C;gBAC/C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,IAAI,EAAE,EAAE,cAAc,CAAC,CAAC;gBACvD,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjE,QAAQ,CAAC,QAAQ,GAAG,cAAc,CAAC;gBACrC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,sBAAsB,CAAC,QAAQ,CAAC,GAAG;oBACjC,QAAQ,EAAE;wBACR,kBAAkB,EAAE,oBAAoB,CAAC,cAAc,CAAC,kBAAkB;wBAC1E,mBAAmB,EAAE,oBAAoB,CAAC,cAAc,CAAC,mBAAmB;wBAC5E,GAAG,CAAC,oBAAoB,CAAC,cAAc,CAAC,wBAAwB,IAAI,IAAI;4BACtE,CAAC,CAAC,EAAE,wBAAwB,EAAE,oBAAoB,CAAC,cAAc,CAAC,wBAAwB,EAAE;4BAC5F,CAAC,CAAC,EAAE,CAAC;qBACR;oBACD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAChF,CAAC;YACJ,CAAC;YAED,IAAI,oBAAoB,CAAC,iBAAiB,IAAI,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7G,MAAM,YAAY,GAAG,8BAA8B,CAAC,QAAQ,CAAC,CAAC;gBAC9D,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CACnC,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;qBACnD,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAC9D,CAAC;gBACF,IAAI,YAAY,EAAE,CAAC;oBACjB,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;gBACnD,CAAC;qBAAM,CAAC;oBACN,8BAA8B,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;gBACtE,CAAC;YACH,CAAC;YAED,IAAI,oBAAoB,CAAC,mBAAmB,IAAI,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjH,MAAM,cAAc,GAAG,iCAAiC,CAAC,QAAQ,CAAC,CAAC;gBACnE,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CACnC,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,mBAAmB,CAAC;qBACrD,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAC5D,CAAC;gBACF,IAAI,cAAc,EAAE,CAAC;oBACnB,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;gBACrD,CAAC;qBAAM,CAAC;oBACN,iCAAiC,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;gBACzE,CAAC;YACH,CAAC;YAED,IAAI,oBAAoB,CAAC,wBAAwB,IAAI,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,wBAAwB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3H,MAAM,qBAAqB,GAAG,sCAAsC,CAAC,QAAQ,CAAC,CAAC;gBAC/E,MAAM,UAAU,GAA+B,EAAE,GAAG,oBAAoB,CAAC,wBAAwB,EAAE,CAAC;gBACpG,IAAI,qBAAqB,EAAE,CAAC;oBAC1B,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;gBAC5D,CAAC;qBAAM,CAAC;oBACN,sCAAsC,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;gBAC9E,CAAC;YACH,CAAC;YAED,IAAI,oBAAoB,CAAC,mBAAmB,IAAI,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjH,MAAM,oBAAoB,GAAG,gCAAgC,CAAC,QAAQ,CAAC,CAAC;gBACxE,MAAM,UAAU,GAAG,EAAE,GAAG,oBAAoB,CAAC,mBAAmB,EAAE,CAAC;gBACnE,IAAI,oBAAoB,EAAE,CAAC;oBACzB,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;gBAC3D,CAAC;qBAAM,CAAC;oBACN,gCAAgC,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;gBACxE,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1E,MAAM,4BAA4B,GAAG,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAC5F,MAAM,8BAA8B,GAAG,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QACjG,MAAM,mCAAmC,GAAG,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3G,MAAM,8BAA8B,GAAG,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAEhG,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;YAC9B,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW;YACxC,mEAAmE;YACnE,iEAAiE;YACjE,yEAAyE;YACzE,sEAAsE;YACtE,oEAAoE;YACpE,yEAAyE;YACzE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY,IAAI,IAAI,CAAC,GAAG,EAAE;YACpD,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,SAAS;YACT,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;gBACzE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;gBACrD,CAAC,CAAC,EAAE,CAAC;YACP,aAAa,EAAE,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC;YACjD,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,GAAG,CAAC,4BAA4B,CAAC,CAAC,CAAC,EAAE,yBAAyB,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtG,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC,EAAE,2BAA2B,EAAE,iCAAiC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7G,GAAG,CAAC,mCAAmC,CAAC,CAAC,CAAC,EAAE,gCAAgC,EAAE,sCAAsC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5H,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC,EAAE,2BAA2B,EAAE,gCAAgC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5G,yBAAyB,EAAE,aAAa,EAAE,cAAc,CAAC,kBAAkB;YAC3E,0BAA0B,EAAE,aAAa,EAAE,cAAc,CAAC,mBAAmB;YAC7E,+BAA+B,EAAE,aAAa,EAAE,cAAc,CAAC,wBAAwB;YACvF,cAAc,EAAE,aAAa,EAAE,cAAc;YAC7C,WAAW,EAAE,aAAa,EAAE,WAAW;YACvC,wEAAwE;YACxE,qEAAqE;YACrE,qEAAqE;YACrE,sEAAsE;YACtE,mBAAmB,EAAE,MAAM,CAAC,QAAQ,CAAC,mBAAmB;YACxD,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,iBAAiB;SACrD,CAAC;IACJ,CAAC;IAEO,mCAAmC;QACzC,IAAI,IAAI,CAAC,uBAAuB,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE;YAAE,OAAO;QAC1E,MAAM,cAAc,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,gBAAgB,CAAC;QAChE,SAAS,CACP,8EAA8E;YAC9E,GAAG,cAAc,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC,EAAE,IAAI;YACnE,6DAA6D,CAC9D,CAAC;IACJ,CAAC;IAEO,qBAAqB;QAC3B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACvC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAAE,OAAO,IAAI,CAAC;YAClG,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACxC,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACzF,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC;oBAAE,OAAO,IAAI,CAAC;YACvD,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,cAAc,CAAC,OAAuG;QAC5H,MAAM,WAAW,GAAG,OAAO,CAAC,wBAAwB,IAAI,OAAO,CAAC,kBAAkB,CAAC;QACnF,OAAO,OAAO,CAAC,kBAAkB,KAAK,CAAC;eAClC,OAAO,CAAC,mBAAmB,KAAK,CAAC;eACjC,WAAW,KAAK,CAAC,CAAC;IACzB,CAAC;CACF;AAED,SAAS,gBAAgB,CAAC,OAAe;IACvC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;AACrE,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,IAAc,EAAE,OAAe;IACxD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,MAAM;YAAE,OAAO,IAAI,CAAC;IAC5D,CAAC;IACD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YACxD,IAAI,CAAC,KAAK,CAAC,QAAQ;gBAAE,SAAS;YAC9B,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACtD,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,MAAM;oBAAE,OAAO,IAAI,CAAC;YAC/D,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -28,6 +28,8 @@ export interface ChainConfig {
28
28
  statsDeployBlock?: number;
29
29
  /** Public URL of the @antseed/network-stats aggregator that indexes the stats contract for this chain. */
30
30
  networkStatsUrl?: string;
31
+ /** Public REST API of the chain explorer (Antscan). Serves per-seller on-chain stats at /api/sellers. */
32
+ explorerApiUrl?: string;
31
33
  /** AntseedDepositRelay contract for gasless USDC sweeps from buyer hot wallets. */
32
34
  depositRelayAddress?: string;
33
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"chain-config.d.ts","sourceRoot":"","sources":["../../src/payments/chain-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,uBAAuB,EAAE,MAAM,CAAC;IAChC,uBAAuB,EAAE,MAAM,CAAC;IAChC,8EAA8E;IAC9E,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4EAA4E;IAC5E,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oFAAoF;IACpF,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,0GAA0G;IAC1G,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mFAAmF;IACnF,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;GAIG;AACH,QAAA,MAAM,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,WAAW,CA6D/C,CAAC;AAEF,QAAA,MAAM,gBAAgB,EAAE,OAAwB,CAAC;AAEjD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,WAAW,CAItE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,CAAC,EAAE;IAC7C,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,GAAG,WAAW,CAuBd;AAED,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"chain-config.d.ts","sourceRoot":"","sources":["../../src/payments/chain-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,uBAAuB,EAAE,MAAM,CAAC;IAChC,uBAAuB,EAAE,MAAM,CAAC;IAChC,8EAA8E;IAC9E,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4EAA4E;IAC5E,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oFAAoF;IACpF,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,0GAA0G;IAC1G,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,yGAAyG;IACzG,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mFAAmF;IACnF,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;GAIG;AACH,QAAA,MAAM,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,WAAW,CA8D/C,CAAC;AAEF,QAAA,MAAM,gBAAgB,EAAE,OAAwB,CAAC;AAEjD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,WAAW,CAItE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,CAAC,EAAE;IAC7C,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,GAAG,WAAW,CAuBd;AAED,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,CAAC"}
@@ -37,6 +37,7 @@ const CHAIN_CONFIGS = {
37
37
  statsContractAddress: '0x15649ff076bfa5e37e24ee3154a00503149954fd',
38
38
  statsDeployBlock: 44469557,
39
39
  networkStatsUrl: 'https://network.antseed.com',
40
+ explorerApiUrl: 'https://antscan.co',
40
41
  depositRelayAddress: '0x34a44542e76f9b4cff3a31902eDF14AbF2C3B3DD',
41
42
  },
42
43
  'base-sepolia': {
@@ -1 +1 @@
1
- {"version":3,"file":"chain-config.js","sourceRoot":"","sources":["../../src/payments/chain-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chain-config.js","sourceRoot":"","sources":["../../src/payments/chain-config.ts"],"names":[],"mappings":"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"}
@@ -34,4 +34,6 @@ export { computeCostUsdc, estimateCostFromBytes, estimateTokensFromBytes, isFree
34
34
  export type { ServicePricing } from './pricing.js';
35
35
  export { checkSellerReadiness, checkBuyerReadiness } from './readiness.js';
36
36
  export type { ReadinessCheck } from './readiness.js';
37
+ export { RpcHealthMonitor, probeRpcEndpoint } from './rpc-health.js';
38
+ export type { RpcHealthState, RpcHealthStatus, RpcHealthMonitorOptions } from './rpc-health.js';
37
39
  //# sourceMappingURL=index.d.ts.map