@lifi/perps-sdk-provider-lighter 34.0.0 → 35.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/dist/cjs/LighterProvider.d.ts +0 -1
  2. package/dist/cjs/LighterProvider.d.ts.map +1 -1
  3. package/dist/cjs/LighterProvider.js +50 -44
  4. package/dist/cjs/LighterProvider.js.map +1 -1
  5. package/dist/cjs/accountSummary.d.ts.map +1 -1
  6. package/dist/cjs/accountSummary.js +3 -6
  7. package/dist/cjs/accountSummary.js.map +1 -1
  8. package/dist/cjs/signers/createAuthToken.d.ts.map +1 -1
  9. package/dist/cjs/signers/createAuthToken.js.map +1 -1
  10. package/dist/cjs/utils/settlementPool.d.ts +6 -0
  11. package/dist/cjs/utils/settlementPool.d.ts.map +1 -0
  12. package/dist/cjs/utils/settlementPool.js +21 -0
  13. package/dist/cjs/utils/settlementPool.js.map +1 -0
  14. package/dist/esm/LighterProvider.d.ts +7 -11
  15. package/dist/esm/LighterProvider.d.ts.map +1 -1
  16. package/dist/esm/LighterProvider.js +60 -51
  17. package/dist/esm/LighterProvider.js.map +1 -1
  18. package/dist/esm/accountSummary.d.ts +2 -1
  19. package/dist/esm/accountSummary.d.ts.map +1 -1
  20. package/dist/esm/accountSummary.js +5 -7
  21. package/dist/esm/accountSummary.js.map +1 -1
  22. package/dist/esm/signers/createAuthToken.d.ts +1 -2
  23. package/dist/esm/signers/createAuthToken.d.ts.map +1 -1
  24. package/dist/esm/signers/createAuthToken.js +1 -2
  25. package/dist/esm/signers/createAuthToken.js.map +1 -1
  26. package/dist/esm/utils/settlementPool.d.ts +14 -0
  27. package/dist/esm/utils/settlementPool.d.ts.map +1 -0
  28. package/dist/esm/utils/settlementPool.js +23 -0
  29. package/dist/esm/utils/settlementPool.js.map +1 -0
  30. package/dist/types/LighterProvider.d.ts +7 -11
  31. package/dist/types/LighterProvider.d.ts.map +1 -1
  32. package/dist/types/accountSummary.d.ts +2 -1
  33. package/dist/types/accountSummary.d.ts.map +1 -1
  34. package/dist/types/signers/createAuthToken.d.ts +1 -2
  35. package/dist/types/signers/createAuthToken.d.ts.map +1 -1
  36. package/dist/types/utils/settlementPool.d.ts +14 -0
  37. package/dist/types/utils/settlementPool.d.ts.map +1 -0
  38. package/package.json +3 -3
  39. package/src/LighterProvider.ts +98 -90
  40. package/src/accountSummary.ts +10 -10
  41. package/src/signers/createAuthToken.ts +1 -2
  42. package/src/utils/settlementPool.ts +36 -0
@@ -9,11 +9,9 @@ import { type LighterDeployment } from './constants.js';
9
9
  * manager are created per plugin instance.
10
10
  *
11
11
  * Auth-token resolution order for the auth-gated reads:
12
- * 1. Per-call `options.lighterAuthToken`
13
- * 2. Constructor `authToken` (string or async factory)
14
- * 3. Persisted long-lived read-only token, keyed on the resolved Lighter
12
+ * 1. Persisted long-lived read-only token, keyed on the resolved Lighter
15
13
  * `accountIndex`
16
- * 4. Fresh 1h create via this instance's WASM signer + the user's registered
14
+ * 2. Fresh 1h create via this instance's WASM signer + the user's registered
17
15
  * API key
18
16
  *
19
17
  * Status reads report the account's state and do not throw for a missing
@@ -27,9 +25,9 @@ import { type LighterDeployment } from './constants.js';
27
25
  * - `SetupRequired` when none of these sources yields a token. The SDK
28
26
  * sends no venue request. `getOrders`, `getOrder`, `getFills`,
29
27
  * `getPortfolioHistory` and `getActivity` need a token.
30
- * - `Unauthorized` when Lighter rejects the token that was sent. An
31
- * SDK-owned read-only token that Lighter reports as revoked is replaced
32
- * and the read retried once first.
28
+ * - `Unauthorized` when Lighter rejects the token that was sent. A
29
+ * read-only token that Lighter reports as revoked is replaced and the
30
+ * read retried once first.
33
31
  * - `AccountNotFound` when the wallet has no Lighter account. This also
34
32
  * applies to `getPositions`, `getWithdrawableBalances` and
35
33
  * `getAvailableToTrade`, which need no token. `getAvailableToTrade`
@@ -52,8 +50,6 @@ export interface LighterProviderOptions {
52
50
  * instance's signer and read-only token manager follow this URL.
53
51
  */
54
52
  restUrl?: string;
55
- /** Pre-created Lighter read-only bearer, bypassing SDK token resolution. */
56
- authToken?: string | (() => string | Promise<string>);
57
53
  /** Token lifetime for on-demand standard-token creates (Lighter caps at 8h). Default 1h. */
58
54
  tokenLifetimeSeconds?: number;
59
55
  /** Re-create when the cached standard token's remaining life is below this. Default 60s. */
@@ -71,8 +67,8 @@ export interface LighterProviderOptions {
71
67
  export interface LighterPerpsProvider extends PerpsProviderPlugin {
72
68
  /**
73
69
  * Resolve a Lighter auth token for `address`, following the resolution order
74
- * documented on {@link LighterProviderOptions} (the per-call override does not
75
- * apply here). Returns `undefined` when no source can produce a token.
70
+ * documented on {@link LighterProviderOptions}. Returns `undefined` when no
71
+ * source can produce a token.
76
72
  */
77
73
  resolveAuthToken(address: Address): Promise<string | undefined>;
78
74
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LighterProvider.d.ts","sourceRoot":"","sources":["../../src/LighterProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAeL,KAAK,mBAAmB,EAqBxB,KAAK,cAAc,EAEpB,MAAM,iBAAiB,CAAA;AAmCxB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAQnC,OAAO,EAUL,KAAK,iBAAiB,EACvB,MAAM,gBAAgB,CAAA;AA2KvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;IACrD,4FAA4F;IAC5F,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,4FAA4F;IAC5F,uBAAuB,CAAC,EAAE,MAAM,CAAA;CACjC;AAcD;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC/D;;;;OAIG;IACH,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CAChE;AAED;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,GAChC,YAAY,iBAAiB,EAC7B,UAAS,sBAA2B,KACnC,oBAkgDF,CAAA;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,eAAe,GAC1B,UAAS,sBAA2B,KACnC,oBACyD,CAAA;AAE5D;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,iBAAiB,GAC5B,UAAS,sBAA2B,KACnC,oBAA6E,CAAA;AAEhF;;;;GAIG;AACH,eAAO,MAAM,OAAO,aA7BT,sBAAsB,KAC9B,oBA4BmC,CAAA"}
1
+ {"version":3,"file":"LighterProvider.d.ts","sourceRoot":"","sources":["../../src/LighterProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAeL,KAAK,mBAAmB,EAqBxB,KAAK,cAAc,EAEpB,MAAM,iBAAiB,CAAA;AAmCxB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAQnC,OAAO,EAUL,KAAK,iBAAiB,EACvB,MAAM,gBAAgB,CAAA;AAiLvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,4FAA4F;IAC5F,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,4FAA4F;IAC5F,uBAAuB,CAAC,EAAE,MAAM,CAAA;CACjC;AAcD;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC/D;;;;OAIG;IACH,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CAChE;AAED;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,GAChC,YAAY,iBAAiB,EAC7B,UAAS,sBAA2B,KACnC,oBAwgDF,CAAA;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,eAAe,GAC1B,UAAS,sBAA2B,KACnC,oBACyD,CAAA;AAE5D;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,iBAAiB,GAC5B,UAAS,sBAA2B,KACnC,oBAA6E,CAAA;AAEhF;;;;GAIG;AACH,eAAO,MAAM,OAAO,aA7BT,sBAAsB,KAC9B,oBA4BmC,CAAA"}
@@ -11,12 +11,13 @@ import { LighterKeyStore, } from './signers/LighterKeyStore.js';
11
11
  import { LighterReadOnlyTokenManager } from './signers/LighterReadOnlyTokenManager.js';
12
12
  import { LighterSigner } from './signers/LighterSigner.js';
13
13
  import { createLighterApiKeyFreshness, lighterSignActions, } from './signers/signActions.js';
14
- import { LT_ACCOUNT_TRADING_MODE_SIMPLE, LT_MARGIN_MODE_CROSS, LT_MARGIN_MODE_ISOLATED, } from './types/index.js';
14
+ import { LT_ACCOUNT_TRADING_MODE_SIMPLE, LT_ACCOUNT_TRADING_MODE_UNIFIED, LT_MARGIN_MODE_CROSS, LT_MARGIN_MODE_ISOLATED, } from './types/index.js';
15
15
  import { decodeActivityCursor, encodeActivityCursor, } from './utils/activityCursor.js';
16
16
  import { LIGHTER_RETRY_DEFAULTS, LighterApiClient, LighterAuthRejectedError, LighterTokenRevokedError, } from './utils/apiClient.js';
17
17
  import { isAssetMarginEnabled } from './utils/assetCollateral.js';
18
18
  import { estimateLiquidationPrice, fetchDetailedAccount, leverageFromImf, lighterAsset, lighterWithdrawableBalances, mapFill, mapOpenPositions, mapOrder, mapPortfolioHistory, positionRemovableMargin, snapOrderPrice, snapOrderSize, toBigOrNull, toIsoFromMs, toIsoFromSeconds, toRequiredBig, } from './utils/index.js';
19
19
  import { fetchRegisteredApiKey, normalizeLighterPublicKey, } from './utils/registeredApiKey.js';
20
+ import { collateralSpotBalance, pooledSettlementSpendable, pooledSettlementUnits, } from './utils/settlementPool.js';
20
21
  import { spotPriceByAssetId, spotValuation } from './utils/spotPrice.js';
21
22
  import { isPlaceholderTxHash } from './utils/txHash.js';
22
23
  import { wireList } from './utils/wireList.js';
@@ -105,11 +106,6 @@ export const createLighterProvider = (deployment, options = {}) => {
105
106
  const explorerTxBaseUrl = deployment.explorerTxBaseUrl;
106
107
  const bridgeChainId = deployment.bridgeChainId;
107
108
  const collateral = deployment.collateral;
108
- const authTokenSource = typeof options.authToken === 'function'
109
- ? options.authToken
110
- : options.authToken !== undefined
111
- ? () => options.authToken
112
- : undefined;
113
109
  const storage = options.storage ?? localStorageAdapter;
114
110
  const signer = new LighterSigner({
115
111
  apiUrl: restUrl,
@@ -168,28 +164,17 @@ export const createLighterProvider = (deployment, options = {}) => {
168
164
  };
169
165
  /**
170
166
  * Resolve the bearer token for auth-gated reads. Priority:
171
- * 1. Per-call override (`options.lighterAuthToken`).
172
- * 2. Constructor-supplied token source.
173
- * 3. A stored read-only token — preferred for reads: it is read-only, so
167
+ * 1. A stored read-only token — preferred for reads: it is read-only, so
174
168
  * forwarding it (incl. to the backend) cannot authorise writes.
175
- * 4. A read-only token created on first use (via signer + registered API
169
+ * 2. A read-only token created on first use (via signer + registered API
176
170
  * key) and persisted for reuse.
177
- * 5. A standard auth token (read+write, 8h max) as a last resort — used
171
+ * 3. A standard auth token (read+write, 8h max) as a last resort — used
178
172
  * as the credential that authorises read-only token creation, and as
179
173
  * the fallback while creation is failing, bounded by the
180
174
  * creation-retry backoff.
181
175
  * Returns `undefined` when no source can produce a token.
182
176
  */
183
- const resolveAuthToken = async (opts, address, knownApiKey) => {
184
- if (opts?.lighterAuthToken !== undefined) {
185
- return opts.lighterAuthToken;
186
- }
187
- if (authTokenSource !== undefined) {
188
- return authTokenSource();
189
- }
190
- if (address === undefined) {
191
- return undefined;
192
- }
177
+ const resolveAuthToken = async (address, knownApiKey) => {
193
178
  const apiKey = knownApiKey ?? (await keyStore.get(address));
194
179
  if (apiKey === null) {
195
180
  return undefined;
@@ -255,12 +240,11 @@ export const createLighterProvider = (deployment, options = {}) => {
255
240
  return attempt;
256
241
  };
257
242
  /** {@link resolveAuthToken}, throwing `SetupRequired` when no source yields a token. */
258
- const requireAuthToken = async (read, opts, address, knownApiKey) => {
259
- const token = await resolveAuthToken(opts, address, knownApiKey);
243
+ const requireAuthToken = async (read, address, knownApiKey) => {
244
+ const token = await resolveAuthToken(address, knownApiKey);
260
245
  if (token === undefined) {
261
- throw new PerpsError(PerpsErrorCode.SetupRequired, `Lighter ${read} requires an auth token. Pass \`authToken\` to ` +
262
- 'lighterProvider, register an API key + signer for on-demand creation, or ' +
263
- 'forward `options.lighterAuthToken` on the call.');
246
+ throw new PerpsError(PerpsErrorCode.SetupRequired, `Lighter ${read} requires an auth token. Register an API key + signer ` +
247
+ 'for on-demand creation.');
264
248
  }
265
249
  return token;
266
250
  };
@@ -307,13 +291,12 @@ export const createLighterProvider = (deployment, options = {}) => {
307
291
  }
308
292
  }
309
293
  };
310
- const retryOnRevoked = async (opts, address, token, run) => {
294
+ const retryOnRevoked = async (address, token, run) => {
311
295
  try {
312
296
  return await run(token);
313
297
  }
314
298
  catch (err) {
315
- const sdkOwnsToken = opts?.lighterAuthToken === undefined && authTokenSource === undefined;
316
- if (!(err instanceof LighterTokenRevokedError) || !sdkOwnsToken) {
299
+ if (!(err instanceof LighterTokenRevokedError)) {
317
300
  throw err;
318
301
  }
319
302
  const fresh = await replaceRevokedReadOnlyToken(address, token);
@@ -439,6 +422,16 @@ export const createLighterProvider = (deployment, options = {}) => {
439
422
  const setup = await setupPromise;
440
423
  return setup.find((descriptor) => descriptor.type === action);
441
424
  };
425
+ /**
426
+ * Refuse a SEND_ASSET for a unified account. Its settlement asset is one pool
427
+ * across both routes, so a perps↔spot transfer has nothing to move.
428
+ */
429
+ const assertSendAssetMode = async (address) => {
430
+ const account = await fetchDetailedAccount(apiClient(), address);
431
+ if (account.account_trading_mode === LT_ACCOUNT_TRADING_MODE_UNIFIED) {
432
+ throw new PerpsError(PerpsErrorCode.PooledCategoryTransfer, 'Lighter unified accounts pool the settlement asset across perps and spot; a transfer between them has nothing to move');
433
+ }
434
+ };
442
435
  /**
443
436
  * Refuse an order signature for a tier no ACCOUNT_TYPE option binds. An
444
437
  * unreadable descriptor or tier fails open: the venue itself
@@ -464,10 +457,10 @@ export const createLighterProvider = (deployment, options = {}) => {
464
457
  }
465
458
  let userTierName;
466
459
  try {
467
- const token = await resolveAuthToken(undefined, address, localKey);
460
+ const token = await resolveAuthToken(address, localKey);
468
461
  const limits = token === undefined
469
462
  ? undefined
470
- : await retryOnRevoked(undefined, address, token, (resolvedToken) => fetchAccountLimits(apiClient(), localKey.accountIndex, resolvedToken));
463
+ : await retryOnRevoked(address, token, (resolvedToken) => fetchAccountLimits(apiClient(), localKey.accountIndex, resolvedToken));
471
464
  userTierName = limits?.user_tier_name;
472
465
  }
473
466
  catch (err) {
@@ -490,7 +483,7 @@ export const createLighterProvider = (deployment, options = {}) => {
490
483
  boundClient = client;
491
484
  },
492
485
  resolveAuthToken(address) {
493
- return resolveAuthToken(undefined, address);
486
+ return resolveAuthToken(address);
494
487
  },
495
488
  async getAccount(params, opts) {
496
489
  const client = apiClient(opts);
@@ -509,7 +502,7 @@ export const createLighterProvider = (deployment, options = {}) => {
509
502
  normalizeLighterPublicKey(registeredKey.public_key);
510
503
  // Status read: a missing or stale credential reports `apiKeyRegistered: false`, not a throw.
511
504
  const token = apiKeyRegistered
512
- ? await resolveAuthToken(opts, params.address, localKey)
505
+ ? await resolveAuthToken(params.address, localKey)
513
506
  : undefined;
514
507
  const registry = getMarketRegistry(requireClient(), providerKey);
515
508
  const assetRegistry = getAssetRegistry(requireClient(), providerKey);
@@ -520,7 +513,7 @@ export const createLighterProvider = (deployment, options = {}) => {
520
513
  getMarketsContext(requireClient(), { provider: providerKey }, opts),
521
514
  token === undefined
522
515
  ? Promise.resolve(undefined)
523
- : retryOnRevoked(opts, params.address, token, (resolvedToken) => fetchAccountLimits(client, account.index, resolvedToken)),
516
+ : retryOnRevoked(params.address, token, (resolvedToken) => fetchAccountLimits(client, account.index, resolvedToken)),
524
517
  apiKeyRegistered
525
518
  ? readOnlyTokenManager.get(params.address, localKey.accountIndex)
526
519
  : Promise.resolve(undefined),
@@ -534,9 +527,15 @@ export const createLighterProvider = (deployment, options = {}) => {
534
527
  const availableBalance = toRequiredBig(account.available_balance, 'available_balance');
535
528
  // Each asset has a spot route (`balance`) and a perps route
536
529
  // (`margin_balance`). The instance's settlement asset is valued 1:1; an
537
- // asset no spot market prices keeps a zero USD value.
538
- const heldAssets = account.assets.filter((asset) => toRequiredBig(asset.balance, 'balance').gt(0));
539
- const marginAssets = account.assets.filter((asset) => toRequiredBig(asset.margin_balance, 'margin_balance').gt(0));
530
+ // asset no spot market prices keeps a zero USD value. A unified account
531
+ // pools both settlement routes into one spot row.
532
+ const isPooled = (asset) => account.account_trading_mode === LT_ACCOUNT_TRADING_MODE_UNIFIED &&
533
+ asset.asset_id === collateral.assetIndex;
534
+ const heldAssets = account.assets.filter((asset) => (isPooled(asset)
535
+ ? pooledSettlementUnits(asset)
536
+ : toRequiredBig(asset.balance, 'balance')).gt(0));
537
+ const marginAssets = account.assets.filter((asset) => !isPooled(asset) &&
538
+ toRequiredBig(asset.margin_balance, 'margin_balance').gt(0));
540
539
  const spotPrices = spotPriceByAssetId(registry.markets, LIGHTER_SPOT_CATEGORY_ID, prices, new Set([...heldAssets, ...marginAssets]
541
540
  .filter((a) => a.asset_id !== collateral.assetIndex)
542
541
  .map((a) => String(a.asset_id))));
@@ -569,6 +568,13 @@ export const createLighterProvider = (deployment, options = {}) => {
569
568
  };
570
569
  });
571
570
  const balances = heldAssets.map((a) => {
571
+ if (isPooled(a)) {
572
+ const units = pooledSettlementUnits(a).toFixed();
573
+ return {
574
+ ...toBalance(a, LIGHTER_SPOT_CATEGORY_ID, registryAsset(a), units),
575
+ transferable: calculateTransferable(pooledSettlementSpendable(a, availableBalance).toFixed(), units),
576
+ };
577
+ }
572
578
  const balance = toRequiredBig(a.balance, 'balance');
573
579
  return {
574
580
  ...toBalance(a, LIGHTER_SPOT_CATEGORY_ID, registryAsset(a), isDecimalString(a.balance) ? a.balance : balance.toFixed()),
@@ -595,6 +601,7 @@ export const createLighterProvider = (deployment, options = {}) => {
595
601
  crossAssetValue: account.cross_asset_value,
596
602
  crossInitialMarginRequirement: account.cross_initial_margin_requirement,
597
603
  totalAssetValue: account.total_asset_value,
604
+ collateralSpotBalance: collateralSpotBalance(account.assets, collateral.assetIndex),
598
605
  userTierName: limitsResult?.user_tier_name,
599
606
  accountTradingMode: account.account_trading_mode ?? LT_ACCOUNT_TRADING_MODE_SIMPLE,
600
607
  assetCollateral,
@@ -701,7 +708,7 @@ export const createLighterProvider = (deployment, options = {}) => {
701
708
  if (statuses.size === 0) {
702
709
  return empty;
703
710
  }
704
- const token = await requireAuthToken('orders read', opts, params.address);
711
+ const token = await requireAuthToken('orders read', params.address);
705
712
  const client = apiClient(opts);
706
713
  const registry = getMarketRegistry(requireClient(), providerKey);
707
714
  const [account] = await Promise.all([
@@ -721,7 +728,7 @@ export const createLighterProvider = (deployment, options = {}) => {
721
728
  terminal = true;
722
729
  }
723
730
  }
724
- const [activeResponse, inactiveResponse] = await retryOnRevoked(opts, params.address, token, (t) => Promise.all([
731
+ const [activeResponse, inactiveResponse] = await retryOnRevoked(params.address, token, (t) => Promise.all([
725
732
  active && params.cursor === undefined
726
733
  ? fetchActiveOrders(client, t, account.index, marketId)
727
734
  : undefined,
@@ -775,7 +782,7 @@ export const createLighterProvider = (deployment, options = {}) => {
775
782
  * `order_index`.
776
783
  */
777
784
  async getOrder(params, opts) {
778
- const token = await requireAuthToken('order lookup', opts, params.address);
785
+ const token = await requireAuthToken('order lookup', params.address);
779
786
  const client = apiClient(opts);
780
787
  const registry = getMarketRegistry(requireClient(), providerKey);
781
788
  const [account] = await Promise.all([
@@ -801,7 +808,7 @@ export const createLighterProvider = (deployment, options = {}) => {
801
808
  throw new PerpsError(PerpsErrorCode.SDKError, `Lighter order id "${params.id}" names a client order index, but ` +
802
809
  `"${clientOrderIndex}" is not a decimal integer.`);
803
810
  }
804
- const orders = await retryOnRevoked(opts, params.address, token, (t) => fetchOrdersByClientOrderIndex(client, t, account.index, clientOrderIndex));
811
+ const orders = await retryOnRevoked(params.address, token, (t) => fetchOrdersByClientOrderIndex(client, t, account.index, clientOrderIndex));
805
812
  // `accountOrders` reaches active and inactive rows alike, so a reused
806
813
  // client order index can match more than one row. Prefer the live one.
807
814
  const matches = orders
@@ -814,12 +821,12 @@ export const createLighterProvider = (deployment, options = {}) => {
814
821
  return hit;
815
822
  }
816
823
  const byOrderIndex = (o) => String(o.order_index) === params.id;
817
- const active = await retryOnRevoked(opts, params.address, token, (t) => fetchActiveOrders(client, t, account.index, LIGHTER_ALL_MARKETS_WILDCARD));
824
+ const active = await retryOnRevoked(params.address, token, (t) => fetchActiveOrders(client, t, account.index, LIGHTER_ALL_MARKETS_WILDCARD));
818
825
  const activeHit = active.orders.find(byOrderIndex);
819
826
  if (activeHit !== undefined) {
820
827
  return detail(activeHit);
821
828
  }
822
- const inactive = await retryOnRevoked(opts, params.address, token, (t) => client.getAuthed('/api/v1/accountInactiveOrders', t, {
829
+ const inactive = await retryOnRevoked(params.address, token, (t) => client.getAuthed('/api/v1/accountInactiveOrders', t, {
823
830
  account_index: account.index,
824
831
  market_id: LIGHTER_ALL_MARKETS_WILDCARD,
825
832
  limit: INACTIVE_ORDERS_LOOKUP_LIMIT,
@@ -831,7 +838,7 @@ export const createLighterProvider = (deployment, options = {}) => {
831
838
  return detail(inactiveHit);
832
839
  },
833
840
  async getFills(params, opts) {
834
- const token = await requireAuthToken('fills read', opts, params.address);
841
+ const token = await requireAuthToken('fills read', params.address);
835
842
  const client = apiClient(opts);
836
843
  const registry = getMarketRegistry(requireClient(), providerKey);
837
844
  const [account] = await Promise.all([
@@ -847,7 +854,7 @@ export const createLighterProvider = (deployment, options = {}) => {
847
854
  if (params.cursor !== undefined) {
848
855
  queryParams.cursor = params.cursor;
849
856
  }
850
- const response = await retryOnRevoked(opts, params.address, token, (tok) => client.getAuthed('/api/v1/trades', tok, queryParams));
857
+ const response = await retryOnRevoked(params.address, token, (tok) => client.getAuthed('/api/v1/trades', tok, queryParams));
851
858
  // `get`, not `require`: a market id the backend list no longer carries
852
859
  // drops only its own row instead of rejecting the whole page. The
853
860
  // registry warns once per unresolved id. A delisted market still
@@ -870,9 +877,8 @@ export const createLighterProvider = (deployment, options = {}) => {
870
877
  };
871
878
  },
872
879
  async getPortfolioHistory(params, opts) {
873
- const sdkOwnsToken = opts?.lighterAuthToken === undefined && authTokenSource === undefined;
874
- const apiKey = sdkOwnsToken ? await keyStore.get(params.address) : null;
875
- const token = await requireAuthToken('portfolio history read', opts, params.address, apiKey ?? undefined);
880
+ const apiKey = await keyStore.get(params.address);
881
+ const token = await requireAuthToken('portfolio history read', params.address, apiKey ?? undefined);
876
882
  const client = apiClient(opts);
877
883
  const account = await plugin.getAccount({ address: params.address }, opts);
878
884
  const window = PNL_WINDOWS[params.range];
@@ -894,7 +900,7 @@ export const createLighterProvider = (deployment, options = {}) => {
894
900
  // fallback sits outside `retryOnRevoked`, so a revocation the standard
895
901
  // token reports never replaces the read-only one. The key is re-read at
896
902
  // retry time because `REGISTER_API_KEY` can rotate it.
897
- const response = await retryOnRevoked(opts, params.address, token, read).catch(async (err) => {
903
+ const response = await retryOnRevoked(params.address, token, read).catch(async (err) => {
898
904
  if (!(err instanceof LighterAuthRejectedError) || apiKey === null) {
899
905
  throw err;
900
906
  }
@@ -907,7 +913,7 @@ export const createLighterProvider = (deployment, options = {}) => {
907
913
  return mapPortfolioHistory(params.range, wireList(response.pnl), new Big(getAccountSummary(account, account.positions).portfolioValue));
908
914
  },
909
915
  async getActivity(params, opts) {
910
- const token = await requireAuthToken('activity read', opts, params.address);
916
+ const token = await requireAuthToken('activity read', params.address);
911
917
  const inputCursor = decodeActivityCursor(params.cursor);
912
918
  const client = apiClient(opts);
913
919
  const account = await fetchDetailedAccount(client, params.address);
@@ -916,7 +922,7 @@ export const createLighterProvider = (deployment, options = {}) => {
916
922
  // Markets identify funding and liquidation rows; assets identify ledger
917
923
  // rows. A request for one surface must not pull the other's registry.
918
924
  const [history] = await Promise.all([
919
- retryOnRevoked(opts, params.address, token, (t) => fetchAllHistory(client, t, account.index, params.address, params.type, inputCursor)),
925
+ retryOnRevoked(params.address, token, (t) => fetchAllHistory(client, t, account.index, params.address, params.type, inputCursor)),
920
926
  wantsAnyType(params.type, MARKET_BEARING_TYPES)
921
927
  ? marketRegistry.sync()
922
928
  : Promise.resolve(),
@@ -1104,6 +1110,9 @@ export const createLighterProvider = (deployment, options = {}) => {
1104
1110
  if (steps.some((step) => ORDER_PLACEMENT_ACTIONS.has(step.action))) {
1105
1111
  await assertOrderTier(address);
1106
1112
  }
1113
+ if (steps.some((step) => step.action === ActionType.SEND_ASSET)) {
1114
+ await assertSendAssetMode(address);
1115
+ }
1107
1116
  return lighterSignActions({
1108
1117
  signer,
1109
1118
  keyStore,
@@ -1 +1 @@
1
- {"version":3,"file":"LighterProvider.js","sourceRoot":"","sources":["../../src/LighterProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LighterProvider.js","sourceRoot":"","sources":["../../src/LighterProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EAErB,aAAa,EACb,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,qBAAqB,EACrB,UAAU,EAiBV,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAIlB,oBAAoB,GACrB,MAAM,iBAAiB,CAAA;AA4BxB,OAAO,EACL,UAAU,EACV,YAAY,EACZ,UAAU,EACV,cAAc,GACf,MAAM,mBAAmB,CAAA;AAC1B,OAAO,GAAG,MAAM,QAAQ,CAAA;AAExB,OAAO,EACL,iBAAiB,EACjB,4BAA4B,EAC5B,kBAAkB,GACnB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAC/D,OAAO,EACL,oBAAoB,EACpB,4BAA4B,EAC5B,qBAAqB,EACrB,oCAAoC,EACpC,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,EACrB,wBAAwB,GAEzB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,EAEL,eAAe,GAChB,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAA;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EACL,4BAA4B,EAC5B,kBAAkB,GACnB,MAAM,0BAA0B,CAAA;AAqBjC,OAAO,EACL,8BAA8B,EAC9B,+BAA+B,EAC/B,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,oBAAoB,EACpB,oBAAoB,GAErB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,2BAA2B,EAC3B,OAAO,EACP,gBAAgB,EAChB,QAAQ,EACR,mBAAmB,EACnB,uBAAuB,EACvB,cAAc,EACd,aAAa,EACb,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,aAAa,GACd,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,6BAA6B,CAAA;AACpC,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAE9C,MAAM,aAAa,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,CAAA;AAEhD,MAAM,eAAe,GAAG,CAAC,IAAY,EAAU,EAAE,CAC/C,qBAAqB,CAAC,IAAI,GAAG,sBAAsB,CAAC,CAAA;AAEtD,MAAM,cAAc,GAAG,CACrB,MAAuB,EACW,EAAE,CAAC,CAAC;IACtC,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,sBAAsB,CAAC;IACrD,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,sBAAsB,CAAC;CACtD,CAAC,CAAA;AAEF;;;;;GAKG;AACH,MAAM,eAAe,GAAG,gBAAgB,CAAA;AAExC;;;;GAIG;AACH,MAAM,0BAA0B,GAAG,OAAO,CAAA;AAE1C,MAAM,4BAA4B,GAAG,GAAG,CAAA;AAQxC,MAAM,YAAY,GAAG,EAAE,GAAG,EAAE,CAAA;AAC5B,MAAM,WAAW,GAAG,EAAE,GAAG,YAAY,CAAA;AAErC,4EAA4E;AAC5E,oCAAoC;AACpC,MAAM,WAAW,GAA6C;IAC5D,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,EAAE;IACvE,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,EAAE;IACvE,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,EAAE;IACtE,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE;CACvE,CAAA;AAED,wDAAwD;AACxD,MAAM,uBAAuB,GAA4B,IAAI,GAAG,CAAC;IAC/D,UAAU,CAAC,WAAW;IACtB,UAAU,CAAC,mBAAmB;IAC9B,UAAU,CAAC,gBAAgB;CAC5B,CAAC,CAAA;AAEF,oFAAoF;AACpF,MAAM,oBAAoB,GAA8B,IAAI,GAAG,CAAC;IAC9D,YAAY,CAAC,OAAO;IACpB,YAAY,CAAC,WAAW;CACzB,CAAC,CAAA;AAEF,mFAAmF;AACnF,MAAM,mBAAmB,GAA8B,IAAI,GAAG,CAAC;IAC7D,YAAY,CAAC,OAAO;IACpB,YAAY,CAAC,UAAU;IACvB,YAAY,CAAC,QAAQ;CACtB,CAAC,CAAA;AAEF,MAAM,YAAY,GAAG,CACnB,SAAqC,EACrC,MAAiC,EACxB,EAAE,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;AAE7E;;;;;GAKG;AACH,MAAM,wCAAwC,GAC5C,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;AAExC;;;;GAIG;AACH,MAAM,kCAAkC,GAAG,MAAM,CAAA;AACjD,MAAM,iCAAiC,GAAG,EAAE,GAAG,MAAM,CAAA;AA6FrD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,UAA6B,EAC7B,UAAkC,EAAE,EACd,EAAE;IACxB,uEAAuE;IACvE,2EAA2E;IAC3E,IAAI,WAAuC,CAAA;IAE3C,MAAM,aAAa,GAAG,GAAmB,EAAE;QACzC,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,UAAU,CAClB,cAAc,CAAC,QAAQ,EACvB,GAAG,UAAU,CAAC,WAAW,6CAA6C;gBACpE,4DAA4D,CAC/D,CAAA;QACH,CAAC;QACD,OAAO,WAAW,CAAA;IACpB,CAAC,CAAA;IAED,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAA;IAC1C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,CAAA;IACrD,MAAM,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAA;IACtD,MAAM,aAAa,GAAG,UAAU,CAAC,aAAa,CAAA;IAC9C,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,CAAA;IACxC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,mBAAmB,CAAA;IACtD,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC;QAC/B,MAAM,EAAE,OAAO;QACf,aAAa,EAAE,UAAU,CAAC,aAAa;QACvC,oBAAoB,EAAE,UAAU,CAAC,UAAU;KAC5C,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;IAC1D,MAAM,eAAe,GAAG,4BAA4B,EAAE,CAAA;IACtD,MAAM,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,IAAI,EAAE,GAAG,EAAE,CAAA;IACpE,MAAM,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,IAAI,EAAE,CAAA;IACrE,MAAM,sBAAsB,GAAqC,IAAI,GAAG,EAAE,CAAA;IAC1E,4EAA4E;IAC5E,6EAA6E;IAC7E,sEAAsE;IACtE,uEAAuE;IACvE,MAAM,wBAAwB,GAAiC,IAAI,GAAG,EAAE,CAAA;IACxE,MAAM,uBAAuB,GAC3B,IAAI,GAAG,EAAE,CAAA;IACX,MAAM,aAAa,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,CAAA;IAEpC,MAAM,SAAS,GAAG,CAAC,IAAwB,EAAoB,EAAE;QAC/D,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;QAC9B,OAAO,IAAI,gBAAgB,CAAC,OAAO,EAAE;YACnC,MAAM,EAAE,IAAI,EAAE,MAAM;YACpB,MAAM,EAAE,kBAAkB,CACxB,sBAAsB,EACtB,MAAM,CAAC,MAAM,CAAC,KAAK,EACnB,WAAW,CACZ;YACD,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;YAC9B,aAAa;SACd,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,MAAM,oBAAoB,GAAG,IAAI,2BAA2B,CAAC;QAC3D,OAAO;QACP,WAAW;QACX,aAAa,EAAE,OAAO;QACtB,SAAS,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC;KAC7D,CAAC,CAAA;IAEF,MAAM,oBAAoB,GAAG,KAAK,EAChC,OAAgB,EAChB,gBAAwB,EACxB,OAAsD,EACrC,EAAE;QACnB,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAA;QACtC,MAAM,UAAU,GAAG,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,YAAY,IAAI,gBAAgB,EAAE,CAAA;QACvF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;QAC5C,MAAM,MAAM,GAAG,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACnD,IACE,MAAM,KAAK,SAAS;YACpB,MAAM,CAAC,UAAU,KAAK,UAAU;YAChC,MAAM,CAAC,SAAS,GAAG,MAAM,GAAG,uBAAuB,EACnD,CAAC;YACD,OAAO,MAAM,CAAC,KAAK,CAAA;QACrB,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC;YAClC,MAAM;YACN,MAAM,EAAE;gBACN,gBAAgB;gBAChB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,YAAY,EAAE,OAAO,CAAC,YAAY;aACnC;YACD,eAAe,EAAE,oBAAoB;SACtC,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,MAAM,GAAG,oBAAoB,CAAA;QAC/C,sBAAsB,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAA;QACtE,OAAO,KAAK,CAAA;IACd,CAAC,CAAA;IAED;;;;;;;;;;;OAWG;IACH,MAAM,gBAAgB,GAAG,KAAK,EAC5B,OAAgB,EAChB,WAA2B,EACE,EAAE;QAC/B,MAAM,MAAM,GAAG,WAAW,IAAI,CAAC,MAAM,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAA;QAC3D,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,wEAAwE;QACxE,2EAA2E;QAC3E,yEAAyE;QACzE,oEAAoE;QACpE,MAAM,aAAa,GAAG,KAAK,IAAqB,EAAE;YAChD,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,MAAM,CAAA;YACvD,OAAO,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,EAAE;gBAC7D,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,YAAY,EAAE,OAAO,CAAC,YAAY;aACnC,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,CAAA;QAC3E,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC,KAAK,CAAA;QACrB,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE,CAAA;QACvC,MAAM,OAAO,GAAG,uBAAuB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACtD,IAAI,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;YAC5D,OAAO,aAAa,EAAE,CAAA;QACxB,CAAC;QACD,MAAM,QAAQ,GAAG,wBAAwB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACxD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,QAAQ,CAAA;QACjB,CAAC;QAED,sEAAsE;QACtE,sEAAsE;QACtE,sEAAsE;QACtE,oEAAoE;QACpE,wEAAwE;QACxE,6BAA6B;QAC7B,MAAM,OAAO,GAAG,CAAC,KAAK,IAAqB,EAAE;YAC3C,IAAI,CAAC;gBACH,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAClD,MAAM,aAAa,EAAE,EACrB;oBACE,OAAO;oBACP,YAAY,EAAE,MAAM,CAAC,YAAY;oBACjC,aAAa,EACX,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;wBAC7B,wCAAwC;oBAC1C,KAAK,EAAE,KAAK;iBACb,CACF,CAAA;gBACD,uBAAuB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;gBACzC,OAAO,KAAK,CAAC,KAAK,CAAA;YACpB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,aAAa,GACjB,CAAC,uBAAuB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;gBAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CACtB,kCAAkC,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,EAC7D,iCAAiC,CAClC,CAAA;gBACD,uBAAuB,CAAC,GAAG,CAAC,SAAS,EAAE;oBACrC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;oBAC/B,OAAO,EAAE,aAAa;iBACvB,CAAC,CAAA;gBACF,OAAO,CAAC,IAAI,CACV,gEAAgE;oBAC9D,iDAAiD,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,EACjF,GAAG,CACJ,CAAA;gBACD,OAAO,aAAa,EAAE,CAAA;YACxB,CAAC;oBAAS,CAAC;gBACT,wBAAwB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;YAC5C,CAAC;QACH,CAAC,CAAC,EAAE,CAAA;QACJ,wBAAwB,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QAChD,OAAO,OAAO,CAAA;IAChB,CAAC,CAAA;IAED,wFAAwF;IACxF,MAAM,gBAAgB,GAAG,KAAK,EAC5B,IAAY,EACZ,OAAgB,EAChB,WAA2B,EACV,EAAE;QACnB,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;QAC1D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,UAAU,CAClB,cAAc,CAAC,aAAa,EAC5B,WAAW,IAAI,wDAAwD;gBACrE,yBAAyB,CAC5B,CAAA;QACH,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC,CAAA;IAED,MAAM,2BAA2B,GAAG,KAAK,EACvC,OAAgB,EAChB,YAAoB,EACS,EAAE;QAC/B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAC1C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE,CAAA;QACvC,MAAM,YAAY,GAAG,wBAAwB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAC5D,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,YAAY,CAAA;QACrB,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,CAAA;QAC5E,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,YAAY,EAAE,CAAC;YAC5D,OAAO,OAAO,CAAC,KAAK,CAAA;QACtB,CAAC;QACD,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACjE,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,iBAAiB,CAAA;QAC1B,CAAC;QACD,MAAM,OAAO,GAAG,CAAC,KAAK,IAAqB,EAAE;YAC3C,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAC9C,OAAO,EACP,MAAM,CAAC,gBAAgB,EACvB;gBACE,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,YAAY,EAAE,MAAM,CAAC,YAAY;aAClC,CACF,CAAA;YACD,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,oBAAoB,CAAC,cAAc,CACzD,aAAa,EACb;gBACE,OAAO;gBACP,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,aAAa,EACX,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;oBAC7B,wCAAwC;gBAC1C,KAAK,EAAE,KAAK;aACb,CACF,CAAA;YACD,uBAAuB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;YACzC,OAAO,KAAK,CAAC,KAAK,CAAA;QACpB,CAAC,CAAC,EAAE,CAAA;QACJ,wBAAwB,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QAChD,IAAI,CAAC;YACH,OAAO,MAAM,OAAO,CAAA;QACtB,CAAC;gBAAS,CAAC;YACT,IAAI,wBAAwB,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,OAAO,EAAE,CAAC;gBACxD,wBAAwB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;YAC5C,CAAC;QACH,CAAC;IACH,CAAC,CAAA;IAED,MAAM,cAAc,GAAG,KAAK,EAC1B,OAAgB,EAChB,KAAa,EACb,GAAkC,EACtB,EAAE;QACd,IAAI,CAAC;YACH,OAAO,MAAM,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,CAAC,GAAG,YAAY,wBAAwB,CAAC,EAAE,CAAC;gBAC/C,MAAM,GAAG,CAAA;YACX,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,2BAA2B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;YAC/D,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;gBAC3C,MAAM,GAAG,CAAA;YACX,CAAC;YACD,OAAO,MAAM,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,CAAC;IACH,CAAC,CAAA;IAED,MAAM,kBAAkB,GAAG,CACzB,MAAwB,EACxB,YAAoB,EACpB,SAAiB,EACS,EAAE,CAC5B,MAAM,CAAC,SAAS,CAAkB,uBAAuB,EAAE,SAAS,EAAE;QACpE,aAAa,EAAE,YAAY;KAC5B,CAAC,CAAA;IAEJ,MAAM,iBAAiB,GAAG,KAAK,EAC7B,MAAwB,EACxB,SAAiB,EACjB,YAAoB,EACpB,QAAgB,EACmC,EAAE;QACrD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CACrC,6BAA6B,EAC7B,SAAS,EACT,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,CACrD,CAAA;QACD,OAAO,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAA;IAC3D,CAAC,CAAA;IAED,MAAM,6BAA6B,GAAG,KAAK,EACzC,MAAwB,EACxB,SAAiB,EACjB,YAAoB,EACpB,gBAAwB,EACJ,EAAE;QACtB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CACrC,uBAAuB,EACvB,SAAS,EACT,EAAE,aAAa,EAAE,YAAY,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,CACxE,CAAA;QACD,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAClC,CAAC,CAAA;IAED,MAAM,eAAe,GAAG,KAAK,EAC3B,MAAwB,EACxB,KAAa,EACb,YAAoB,EACpB,SAAiB,EACjB,SAAqC,EACrC,WAA8C,EAW7C,EAAE;QACH,MAAM,SAAS,GAAG,CAAC,CAAe,EAAW,EAAE,CAC7C,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QAElD,MAAM,WAAW,GAAG,CAClB,CAAe,EACf,GAAgC,EACvB,EAAE;YACX,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClB,OAAO,KAAK,CAAA;YACd,CAAC;YACD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC9B,OAAO,IAAI,CAAA;YACb,CAAC;YACD,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAA;YAC1B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;QAC9C,CAAC,CAAA;QAED,MAAM,WAAW,GAAG,CAClB,GAAgC,EACY,EAAE;YAC9C,MAAM,CAAC,GAAG,WAAW,EAAE,CAAC,GAAG,CAAC,CAAA;YAC5B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACnE,CAAC,CAAA;QAED,MAAM,KAAK,GAAG,CAAI,OAAU,EAAK,EAAE,CAAC,OAAO,CAAA;QAE3C,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,CAAC,GAC5D,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,WAAW,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC;gBAC3C,CAAC,CAAC,MAAM,CAAC,SAAS,CACd,yBAAyB,EACzB,KAAK,EACL;oBACE,aAAa,EAAE,YAAY;oBAC3B,UAAU,EAAE,SAAS;oBACrB,GAAG,WAAW,CAAC,UAAU,CAAC;iBAC3B,CACF;gBACH,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;YACrD,WAAW,CAAC,YAAY,CAAC,UAAU,EAAE,WAAW,CAAC;gBAC/C,CAAC,CAAC,MAAM,CAAC,SAAS,CACd,0BAA0B,EAC1B,KAAK,EACL,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,WAAW,CAAC,WAAW,CAAC,EAAE,CAC7D;gBACH,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;YACtD,WAAW,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC;gBAC3C,CAAC,CAAC,MAAM,CAAC,SAAS,CACd,yBAAyB,EACzB,KAAK,EACL;oBACE,aAAa,EAAE,YAAY;oBAC3B,KAAK,EAAE,yBAAyB;oBAChC,GAAG,WAAW,CAAC,UAAU,CAAC;iBAC3B,CACF;gBACH,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,CAAC;YAC9D,WAAW,CAAC,YAAY,CAAC,WAAW,EAAE,cAAc,CAAC;gBACnD,CAAC,CAAC,MAAM,CAAC,SAAS,CACd,sBAAsB,EACtB,KAAK,EACL;oBACE,aAAa,EAAE,YAAY;oBAC3B,SAAS,EAAE,4BAA4B;oBACvC,KAAK,EAAE,yBAAyB;oBAChC,GAAG,WAAW,CAAC,cAAc,CAAC;iBAC/B,CACF;gBACH,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;YACzD,WAAW,CAAC,YAAY,CAAC,QAAQ,EAAE,WAAW,CAAC;gBAC7C,CAAC,CAAC,MAAM,CAAC,SAAS,CACd,0BAA0B,EAC1B,KAAK,EACL,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,WAAW,CAAC,WAAW,CAAC,EAAE,CAC7D;gBACH,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;SACvD,CAAC,CAAA;QAEJ,OAAO;YACL,QAAQ,EAAE;gBACR,GAAG,QAAQ;gBACX,QAAQ,EAAE,QAAQ,CAAuB,QAAQ,CAAC,QAAQ,CAAC;aAC5D;YACD,SAAS,EAAE;gBACT,GAAG,SAAS;gBACZ,SAAS,EAAE,QAAQ,CAAwB,SAAS,CAAC,SAAS,CAAC;aAChE;YACD,QAAQ,EAAE;gBACR,GAAG,QAAQ;gBACX,iBAAiB,EAAE,QAAQ,CACzB,QAAQ,CAAC,iBAAiB,CAC3B;aACF;YACD,YAAY,EAAE;gBACZ,GAAG,YAAY;gBACf,YAAY,EAAE,QAAQ,CAAgB,YAAY,CAAC,YAAY,CAAC;aACjE;YACD,SAAS,EAAE;gBACT,GAAG,SAAS;gBACZ,SAAS,EAAE,QAAQ,CAAa,SAAS,CAAC,SAAS,CAAC;aACrD;SACF,CAAA;IACH,CAAC,CAAA;IAED,+EAA+E;IAC/E,MAAM,oBAAoB,GAAG,KAAK,EAChC,MAAwB,EACxB,OAAgB,EACgB,EAAE;QAClC,IAAI,CAAC;YACH,OAAO,MAAM,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACpD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IACE,GAAG,YAAY,UAAU;gBACzB,GAAG,CAAC,IAAI,KAAK,cAAc,CAAC,eAAe,EAC3C,CAAC;gBACD,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC,CAAA;IAED,wFAAwF;IACxF,MAAM,4BAA4B,GAAG,KAAK,EACxC,QAAgB,EACS,EAAE;QAC3B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,aAAa,EAAE,EAAE,WAAW,CAAC,CAAA;QAChE,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QACrB,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QACzC,MAAM,QAAQ,GACZ,aAAa,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAA;QAC9D,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,UAAU,CAClB,cAAc,CAAC,QAAQ,EACvB,uBAAuB,QAAQ,gDAAgD,CAChF,CAAA;QACH,CAAC;QACD,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAA;IACnD,CAAC,CAAA;IAED,MAAM,oBAAoB,GAAG,KAAK,EAChC,OAAgB,EAChB,IAAwB,EACN,EAAE,CACpB,CAAC,MAAM,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,KAAK,SAAS,CAAA;IAEtE,IAAI,YAAgD,CAAA;IAEpD,8EAA8E;IAC9E,MAAM,eAAe,GAAG,KAAK,EAC3B,MAAsB,EACtB,MAAkB,EACgB,EAAE;QACpC,YAAY,KAAK,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CACxC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAChB,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,KAAK,WAAW,CAAC,EAAE,KAAK,IAAI,EAAE,EACzE,CAAC,GAAY,EAAE,EAAE;YACf,YAAY,GAAG,SAAS,CAAA;YACxB,MAAM,GAAG,CAAA;QACX,CAAC,CACF,CAAA;QACD,MAAM,KAAK,GAAG,MAAM,YAAY,CAAA;QAChC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,CAAC,CAAA;IAC/D,CAAC,CAAA;IAED;;;OAGG;IACH,MAAM,mBAAmB,GAAG,KAAK,EAAE,OAAgB,EAAiB,EAAE;QACpE,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,SAAS,EAAE,EAAE,OAAO,CAAC,CAAA;QAChE,IAAI,OAAO,CAAC,oBAAoB,KAAK,+BAA+B,EAAE,CAAC;YACrE,MAAM,IAAI,UAAU,CAClB,cAAc,CAAC,sBAAsB,EACrC,uHAAuH,CACxH,CAAA;QACH,CAAC;IACH,CAAC,CAAA;IAED;;;;OAIG;IACH,MAAM,eAAe,GAAG,KAAK,EAAE,OAAgB,EAAiB,EAAE;QAChE,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAC5C,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,OAAM;QACR,CAAC;QACD,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;QAC9B,IAAI,UAAmC,CAAA;QACvC,IAAI,CAAC;YACH,UAAU,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,UAAU,CAAC,YAAY,CAAC,CAAA;QACrE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CACX,2EAA2E,EAC3E,GAAG,CACJ,CAAA;YACD,OAAM;QACR,CAAC;QACD,IACE,UAAU,KAAK,SAAS;YACxB,iBAAiB,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAC1C,CAAC;YACD,OAAM;QACR,CAAC;QACD,IAAI,YAAgC,CAAA;QACpC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;YACvD,MAAM,MAAM,GACV,KAAK,KAAK,SAAS;gBACjB,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,MAAM,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,aAAa,EAAE,EAAE,CACrD,kBAAkB,CAChB,SAAS,EAAE,EACX,QAAQ,CAAC,YAAY,EACrB,aAAa,CACd,CACF,CAAA;YACP,YAAY,GAAG,MAAM,EAAE,cAAc,CAAA;QACvC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CACX,uEAAuE,EACvE,GAAG,CACJ,CAAA;YACD,OAAM;QACR,CAAC;QACD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,CAAC,KAAK,CACX,uEAAuE,CACxE,CAAA;YACD,OAAM;QACR,CAAC;QACD,IAAI,kBAAkB,CAAC,UAAU,EAAE,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC;YAC1D,MAAM,IAAI,UAAU,CAClB,cAAc,CAAC,aAAa,EAC5B,yBAAyB,YAAY,mBAAmB;gBACtD,IAAI,UAAU,CAAC,YAAY,qCAAqC;gBAChE,kDAAkD,CACrD,CAAA;QACH,CAAC;IACH,CAAC,CAAA;IAED,MAAM,MAAM,GAAyB;QACnC,IAAI,EAAE,WAAW;QAEjB,IAAI,CAAC,MAAsB;YACzB,WAAW,GAAG,MAAM,CAAA;QACtB,CAAC;QAED,gBAAgB,CAAC,OAAgB;YAC/B,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAA;QAClC,CAAC;QAED,KAAK,CAAC,UAAU,CACd,MAAgC,EAChC,IAAwB;YAExB,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;YAC9B,MAAM,cAAc,GAAG,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;YACnE,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YACnD,MAAM,oBAAoB,GACxB,QAAQ,KAAK,IAAI;gBACf,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;gBAC5B,CAAC,CAAC,qBAAqB,CACnB,MAAM,EACN,QAAQ,CAAC,YAAY,EACrB,QAAQ,CAAC,WAAW,CACrB,CAAA;YACP,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACjD,cAAc;gBACd,oBAAoB;aACrB,CAAC,CAAA;YAEF,MAAM,gBAAgB,GACpB,aAAa,KAAK,SAAS;gBAC3B,QAAQ,KAAK,IAAI;gBACjB,yBAAyB,CAAC,QAAQ,CAAC,eAAe,CAAC;oBACjD,yBAAyB,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;YACvD,6FAA6F;YAC7F,MAAM,KAAK,GAAG,gBAAgB;gBAC5B,CAAC,CAAC,MAAM,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC;gBAClD,CAAC,CAAC,SAAS,CAAA;YAEb,MAAM,QAAQ,GAAG,iBAAiB,CAAC,aAAa,EAAE,EAAE,WAAW,CAAC,CAAA;YAChE,MAAM,aAAa,GAAG,gBAAgB,CAAC,aAAa,EAAE,EAAE,WAAW,CAAC,CAAA;YACpE,MAAM,CAAC,EAAE,SAAS,EAAE,EAAE,AAAD,EAAG,AAAD,EAAG,EAAE,MAAM,EAAE,EAAE,YAAY,EAAE,mBAAmB,CAAC,GACtE,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,YAAY,CAAC,aAAa,EAAE,CAAC;gBAC7B,QAAQ,CAAC,IAAI,EAAE;gBACf,aAAa,CAAC,IAAI,EAAE;gBACpB,iBAAiB,CAAC,aAAa,EAAE,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,IAAI,CAAC;gBACnE,KAAK,KAAK,SAAS;oBACjB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;oBAC5B,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,aAAa,EAAE,EAAE,CACtD,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,aAAa,CAAC,CACzD;gBACL,gBAAgB;oBACd,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC;oBACjE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;aAC/B,CAAC,CAAA;YACJ,MAAM,SAAS,GAAe,gBAAgB,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,CACvE,oBAAoB,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CACnD,CAAA;YAED,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,CACtC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,EAC/D,IAAI,GAAG,CAAC,CAAC,CAAC,CACX,CAAA;YACD,MAAM,kBAAkB,GAAG,SAAS,CAAC,MAAM,CACzC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,EACrE,IAAI,GAAG,CAAC,CAAC,CAAC,CACX,CAAA;YAED,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,WAAW,CAAC,CAAA;YACjE,MAAM,UAAU,GAAG,YAAY,EAAE,UAAU,IAAI,EAAE,CAAA;YACjD,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,CAAA;YAEnE,MAAM,gBAAgB,GAAG,aAAa,CACpC,OAAO,CAAC,iBAAiB,EACzB,mBAAmB,CACpB,CAAA;YACD,4DAA4D;YAC5D,wEAAwE;YACxE,wEAAwE;YACxE,kDAAkD;YAClD,MAAM,QAAQ,GAAG,CAAC,KAAqB,EAAW,EAAE,CAClD,OAAO,CAAC,oBAAoB,KAAK,+BAA+B;gBAChE,KAAK,CAAC,QAAQ,KAAK,UAAU,CAAC,UAAU,CAAA;YAC1C,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CACjD,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACd,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC;gBAC9B,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAC1C,CAAC,EAAE,CAAC,CAAC,CAAC,CACR,CAAA;YACD,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CACxC,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAChB,aAAa,CAAC,KAAK,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAC9D,CAAA;YACD,MAAM,UAAU,GAAG,kBAAkB,CACnC,QAAQ,CAAC,OAAO,EAChB,wBAAwB,EACxB,MAAM,EACN,IAAI,GAAG,CACL,CAAC,GAAG,UAAU,EAAE,GAAG,YAAY,CAAC;iBAC7B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,UAAU,CAAC;iBACnD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAClC,CACF,CAAA;YACD,MAAM,SAAS,GAAG,CAChB,CAAiB,EACjB,UAAkB,EAClB,KAAY,EACZ,KAAa,EACJ,EAAE;gBACX,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,aAAa,CACvC,CAAC,CAAC,QAAQ,EACV,KAAK,EACL,UAAU,CAAC,UAAU,EACrB,UAAU,CACX,CAAA;gBACD,OAAO;oBACL,UAAU;oBACV,KAAK;oBACL,KAAK;oBACL,QAAQ;oBACR,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;iBAC3D,CAAA;YACH,CAAC,CAAA;YACD,MAAM,aAAa,GAAG,CAAC,CAAiB,EAAS,EAAE,CACjD,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACrC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;YACzD,uEAAuE;YACvE,uEAAuE;YACvE,MAAM,eAAe,GACnB,aAAa,EAAE,UAAU;gBACzB,YAAY,CACV,UAAU,CAAC,aAAa,EACxB,UAAU,CAAC,aAAa,EACxB,WAAW,CACZ,CAAA;YACH,qEAAqE;YACrE,sEAAsE;YACtE,MAAM,kBAAkB,GAAc,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC3D,MAAM,YAAY,GAAG,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,UAAU,CAAA;gBACzD,MAAM,aAAa,GAAG,aAAa,CACjC,CAAC,CAAC,cAAc,EAChB,gBAAgB,CACjB,CAAC,OAAO,EAAE,CAAA;gBACX,OAAO;oBACL,GAAG,SAAS,CACV,CAAC,EACD,aAAa,EAAE,EAAE,IAAI,WAAW,EAChC,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EACjD,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CACrE;oBACD,YAAY,EAAE,YAAY;wBACxB,CAAC,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,OAAO,EAAE,EAAE,aAAa,CAAC;wBAClE,CAAC,CAAC,GAAG;iBACR,CAAA;YACH,CAAC,CAAC,CAAA;YACF,MAAM,QAAQ,GAAc,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC/C,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;oBAChB,MAAM,KAAK,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;oBAChD,OAAO;wBACL,GAAG,SAAS,CAAC,CAAC,EAAE,wBAAwB,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;wBAClE,YAAY,EAAE,qBAAqB,CACjC,yBAAyB,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,OAAO,EAAE,EACxD,KAAK,CACN;qBACF,CAAA;gBACH,CAAC;gBACD,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;gBACnD,OAAO;oBACL,GAAG,SAAS,CACV,CAAC,EACD,wBAAwB,EACxB,aAAa,CAAC,CAAC,CAAC,EAChB,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAC3D;oBACD,YAAY,EAAE,qBAAqB,CACjC,OAAO;yBACJ,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;yBACxD,OAAO,EAAE,EACZ,OAAO,CAAC,OAAO,EAAE,CAClB;iBACF,CAAA;YACH,CAAC,CAAC,CAAA;YAEF,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CACnD,CAAC,CAAC,WAAW,KAAK,SAAS;gBACzB,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC;oBACE;wBACE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;wBAC3B,OAAO,EAAE,oBAAoB,CAAC,CAAC,CAAC,WAAW,CAAC;qBAC7C;iBACF,CACN,CAAA;YAED,MAAM,MAAM,GAAyB;gBACnC,QAAQ,EAAE,WAAW;gBACrB,YAAY,EAAE,OAAO,CAAC,KAAK;gBAC3B,WAAW,EAAE,QAAQ,EAAE,WAAW;gBAClC,gBAAgB;gBAChB,WAAW,EAAE,OAAO,CAAC,YAAY;gBACjC,gBAAgB,EAAE,OAAO,CAAC,iBAAiB;gBAC3C,eAAe,EAAE,OAAO,CAAC,iBAAiB;gBAC1C,6BAA6B,EAAE,OAAO,CAAC,gCAAgC;gBACvE,eAAe,EAAE,OAAO,CAAC,iBAAiB;gBAC1C,qBAAqB,EAAE,qBAAqB,CAC1C,OAAO,CAAC,MAAM,EACd,UAAU,CAAC,UAAU,CACtB;gBACD,YAAY,EAAE,YAAY,EAAE,cAAc;gBAC1C,kBAAkB,EAChB,OAAO,CAAC,oBAAoB,IAAI,8BAA8B;gBAChE,eAAe;gBACf,iEAAiE;gBACjE,yDAAyD;gBACzD,qBAAqB,EAAE,mBAAmB,KAAK,SAAS;gBACxD,mBAAmB,EAAE,mBAAmB,EAAE,MAAM;gBAChD,kBAAkB,EAAE,mBAAmB,EAAE,KAAK;gBAC9C,iEAAiE;gBACjE,mDAAmD;gBACnD,eAAe,EACb,gBAAgB,IAAI,CAAC,QAAQ,EAAE,mBAAmB,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC;aACvE,CAAA;YAED,OAAO;gBACL,QAAQ,EAAE,WAAW;gBACrB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,QAAQ;gBACR,kBAAkB;gBAClB,SAAS;gBACT,UAAU,EAAE,eAAe,CAAC,OAAO,EAAE;gBACrC,aAAa,EAAE,kBAAkB,CAAC,OAAO,EAAE;gBAC3C,OAAO,EACL,YAAY,KAAK,SAAS;oBACxB,CAAC,CAAC,aAAa;oBACf,CAAC,CAAC,cAAc,CAAC,YAAY,CAAC;gBAClC,MAAM;aACP,CAAA;QACH,CAAC;QAED,KAAK,CAAC,aAAa,CACjB,MAAmC,EACnC,IAAwB;YAExB,OAAO,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QACnD,CAAC;QAED,KAAK,CAAC,cAAc,CAClB,MAAoC,EACpC,IAAwB;YAExB,OAAO,kBAAkB,CACvB,WAAW,EACX,MAAM,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CACjD,CAAA;QACH,CAAC;QAED,KAAK,CAAC,uBAAuB,CAC3B,MAA6C,EAC7C,IAAwB;YAExB,MAAM,OAAO,GAAG,MAAM,oBAAoB,CACxC,SAAS,CAAC,IAAI,CAAC,EACf,MAAM,CAAC,OAAO,CACf,CAAA;YACD,OAAO,2BAA2B,CAAC,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC,CAAA;QACpE,CAAC;QAED,KAAK,CAAC,YAAY,CAChB,MAAkC,EAClC,IAAwB;YAExB,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;YAC9B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,aAAa,EAAE,EAAE,WAAW,CAAC,CAAA;YAChE,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC;gBAC5C,QAAQ,CAAC,IAAI,EAAE;aAChB,CAAC,CAAA;YAEF,IAAI,SAAS,GAAe,gBAAgB,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,CACrE,oBAAoB,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CACnD,CAAA;YAED,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAClC,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAA;YACtE,CAAC;YAED,OAAO;gBACL,QAAQ,EAAE,WAAW;gBACrB,SAAS;gBACT,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE;aACxE,CAAA;QACH,CAAC;QAED;;;WAGG;QACH,KAAK,CAAC,mBAAmB,CACvB,MAAyC,EACzC,IAAwB;YAExB,MAAM,QAAQ,GAAG,iBAAiB,CAAC,aAAa,EAAE,EAAE,WAAW,CAAC,CAAA;YAChE,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;YACrB,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YAChD,IAAI,MAAM,CAAC,UAAU,KAAK,wBAAwB,EAAE,CAAC;gBACnD,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,CAAA;YAC1E,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;YACrC,MAAM,mBAAmB,GAAG,aAAa,CACvC,MAAM,CAAC,eAAe,EACtB,iBAAiB,CAClB,CAAC,KAAK,CACL,aAAa,CACX,MAAM,CAAC,6BAA6B,EACpC,+BAA+B,CAChC,CACF,CAAA;YACD,OAAO,uBAAuB,CAC5B,MAAM,EACN,mBAAmB,CAAC,OAAO,EAAE,EAC7B,OAAO,CAAC,SAAS,CAClB,CAAA;QACH,CAAC;QAED;;;;WAIG;QACH,KAAK,CAAC,iBAAiB,CACrB,MAAuC,EACvC,IAAwB;YAExB,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,MAAM,CAAA;YAC9C,IAAI,UAAU,KAAK,wBAAwB,EAAE,CAAC;gBAC5C,MAAM,IAAI,UAAU,CAClB,cAAc,CAAC,eAAe,EAC9B,mBAAmB,QAAQ,oDAAoD,CAChF,CAAA;YACH,CAAC;YACD,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;YAC9B,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;YAClE,MAAM,GAAG,GAAG,OAAO,EAAE,SAAS,CAAC,IAAI,CACjC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,QAAQ,CACxC,CAAA;YACD,wEAAwE;YACxE,MAAM,QAAQ,GACZ,GAAG,KAAK,SAAS;gBACf,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,eAAe,CACb,aAAa,CACX,GAAG,CAAC,uBAAuB,EAC3B,yBAAyB,CAC1B,CAAC,OAAO,EAAE,CACZ,CAAA;YACP,IAAI,GAAG,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAChD,OAAO,4BAA4B,CAAC,QAAQ,CAAC,CAAA;YAC/C,CAAC;YACD,OAAO;gBACL,UAAU,EACR,GAAG,CAAC,WAAW,KAAK,uBAAuB;oBACzC,CAAC,CAAC,UAAU,CAAC,QAAQ;oBACrB,CAAC,CAAC,UAAU,CAAC,KAAK;gBACtB,QAAQ;aACT,CAAA;QACH,CAAC;QAED,KAAK,CAAC,SAAS,CACb,MAA+B,EAC/B,IAAwB;YAExB,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,qBAAqB,CAAC,CAAA;YAClE,MAAM,KAAK,GAAmB;gBAC5B,QAAQ,EAAE,WAAW;gBACrB,MAAM,EAAE,EAAE;gBACV,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE;aACzD,CAAA;YACD,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACxB,OAAO,KAAK,CAAA;YACd,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;YAEnE,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;YAC9B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,aAAa,EAAE,EAAE,WAAW,CAAC,CAAA;YAChE,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC;gBAC5C,QAAQ,CAAC,IAAI,EAAE;aAChB,CAAC,CAAA;YACF,MAAM,QAAQ,GACZ,MAAM,CAAC,QAAQ,KAAK,SAAS;gBAC3B,CAAC,CAAC,4BAA4B;gBAC9B,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAA;YAClD,IAAI,MAAM,GAAG,KAAK,CAAA;YAClB,IAAI,QAAQ,GAAG,KAAK,CAAA;YACpB,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;gBAC9B,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;oBAChC,MAAM,GAAG,IAAI,CAAA;gBACf,CAAC;qBAAM,CAAC;oBACN,QAAQ,GAAG,IAAI,CAAA;gBACjB,CAAC;YACH,CAAC;YACD,MAAM,CAAC,cAAc,EAAE,gBAAgB,CAAC,GAAG,MAAM,cAAc,CAC7D,MAAM,CAAC,OAAO,EACd,KAAK,EACL,CAAC,CAAC,EAAE,EAAE,CACJ,OAAO,CAAC,GAAG,CAAC;gBACV,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;oBACnC,CAAC,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC;oBACvD,CAAC,CAAC,SAAS;gBACb,QAAQ;oBACN,CAAC,CAAC,MAAM,CAAC,SAAS,CACd,+BAA+B,EAC/B,CAAC,EACD;wBACE,aAAa,EAAE,OAAO,CAAC,KAAK;wBAC5B,SAAS,EAAE,QAAQ;wBACnB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,yBAAyB;wBAChD,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS;4BAC7B,CAAC,CAAC,EAAE;4BACJ,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;qBAC/B,CACF;oBACH,CAAC,CAAC,SAAS;aACd,CAAC,CACL,CAAA;YACD,MAAM,MAAM,GAAY,EAAE,CAAA;YAC1B,KAAK,MAAM,QAAQ,IAAI,CAAC,cAAc,EAAE,gBAAgB,CAAC,EAAE,CAAC;gBAC1D,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;oBAC7C,+DAA+D;oBAC/D,gEAAgE;oBAChE,8DAA8D;oBAC9D,2CAA2C;oBAC3C,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAA;oBACrD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;wBACzB,SAAQ;oBACV,CAAC;oBACD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;oBACnC,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC/B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;oBACpB,CAAC;gBACH,CAAC;YACH,CAAC;YACD,MAAM,MAAM,GAAG,gBAAgB,EAAE,WAAW,IAAI,SAAS,CAAA;YACzD,OAAO;gBACL,QAAQ,EAAE,WAAW;gBACrB,MAAM;gBACN,UAAU,EAAE;oBACV,KAAK,EAAE,QAAQ;wBACb,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,yBAAyB,CAAC;wBAC7C,CAAC,CAAC,MAAM,CAAC,MAAM;oBACjB,OAAO,EAAE,MAAM,KAAK,SAAS;oBAC7B,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;iBAC5C;aACF,CAAA;QACH,CAAC;QAED;;;;;;;WAOG;QACH,KAAK,CAAC,QAAQ,CACZ,MAA8B,EAC9B,IAAwB;YAExB,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;YAEpE,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;YAC9B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,aAAa,EAAE,EAAE,WAAW,CAAC,CAAA;YAChE,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC;gBAC5C,QAAQ,CAAC,IAAI,EAAE;aAChB,CAAC,CAAA;YAEF,MAAM,QAAQ,GAAG,GAAe,EAAE,CAChC,IAAI,UAAU,CACZ,cAAc,CAAC,aAAa,EAC5B,iBAAiB,MAAM,CAAC,EAAE,kBAAkB,MAAM,CAAC,OAAO,EAAE,CAC7D,CAAA;YACH,MAAM,MAAM,GAAG,CAAC,KAAc,EAAS,EAAE,CACvC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YAE/D,sEAAsE;YACtE,sEAAsE;YACtE,uEAAuE;YACvE,kCAAkC;YAClC,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;gBACpC,MAAM,IAAI,UAAU,CAClB,cAAc,CAAC,aAAa,EAC5B,qBAAqB,MAAM,CAAC,EAAE,kCAAkC;oBAC9D,qDAAqD;oBACrD,KAAK,oCAAoC,6BAA6B;oBACtE,0DAA0D;oBAC1D,oEAAoE,CACvE,CAAA;YACH,CAAC;YAED,IAAI,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,oCAAoC,CAAC,EAAE,CAAC;gBAC/D,MAAM,gBAAgB,GAAG,MAAM,CAAC,EAAE,CAAC,KAAK,CACtC,oCAAoC,CAAC,MAAM,CAC5C,CAAA;gBACD,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACvD,MAAM,IAAI,UAAU,CAClB,cAAc,CAAC,QAAQ,EACvB,qBAAqB,MAAM,CAAC,EAAE,oCAAoC;wBAChE,IAAI,gBAAgB,6BAA6B,CACpD,CAAA;gBACH,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAC/D,6BAA6B,CAC3B,MAAM,EACN,CAAC,EACD,OAAO,CAAC,KAAK,EACb,gBAAgB,CACjB,CACF,CAAA;gBACD,sEAAsE;gBACtE,uEAAuE;gBACvE,MAAM,OAAO,GAAG,MAAM;qBACnB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,gBAAgB,CAAC;qBAChE,GAAG,CAAC,MAAM,CAAC,CAAA;gBACd,MAAM,GAAG,GACP,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAA;gBAClE,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACtB,MAAM,QAAQ,EAAE,CAAA;gBAClB,CAAC;gBACD,OAAO,GAAG,CAAA;YACZ,CAAC;YAED,MAAM,YAAY,GAAG,CAAC,CAAU,EAAW,EAAE,CAC3C,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,MAAM,CAAC,EAAE,CAAA;YAErC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAC/D,iBAAiB,CACf,MAAM,EACN,CAAC,EACD,OAAO,CAAC,KAAK,EACb,4BAA4B,CAC7B,CACF,CAAA;YACD,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YAClD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,OAAO,MAAM,CAAC,SAAS,CAAC,CAAA;YAC1B,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CACjE,MAAM,CAAC,SAAS,CAAmB,+BAA+B,EAAE,CAAC,EAAE;gBACrE,aAAa,EAAE,OAAO,CAAC,KAAK;gBAC5B,SAAS,EAAE,4BAA4B;gBACvC,KAAK,EAAE,4BAA4B;aACpC,CAAC,CACH,CAAA;YACD,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YAChE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC9B,MAAM,QAAQ,EAAE,CAAA;YAClB,CAAC;YACD,OAAO,MAAM,CAAC,WAAW,CAAC,CAAA;QAC5B,CAAC;QAED,KAAK,CAAC,QAAQ,CACZ,MAA8B,EAC9B,IAAwB;YAExB,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;YAElE,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;YAC9B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,aAAa,EAAE,EAAE,WAAW,CAAC,CAAA;YAChE,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC;gBAC5C,QAAQ,CAAC,IAAI,EAAE;aAChB,CAAC,CAAA;YAEF,MAAM,WAAW,GAA8C;gBAC7D,aAAa,EAAE,OAAO,CAAC,KAAK;gBAC5B,OAAO,EAAE,WAAW;gBACpB,QAAQ,EAAE,MAAM;gBAChB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,oBAAoB;aAC5C,CAAA;YACD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAChC,WAAW,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;YACpC,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CACnE,MAAM,CAAC,SAAS,CAAmB,gBAAgB,EAAE,GAAG,EAAE,WAAW,CAAC,CACvE,CAAA;YAED,uEAAuE;YACvE,kEAAkE;YAClE,iEAAiE;YACjE,8BAA8B;YAC9B,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAU,EAAE;gBAC5D,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;gBAChD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,OAAO,EAAE,CAAA;gBACX,CAAC;gBACD,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAA;YAC5C,CAAC,CAAC,CAAA;YAEF,OAAO;gBACL,QAAQ,EAAE,WAAW;gBACrB,KAAK;gBACL,UAAU,EAAE;oBACV,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM;oBACnC,OAAO,EAAE,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE,CAAC,KAAK,EAAE;oBAC5C,MAAM,EAAE,QAAQ,CAAC,WAAW,IAAI,SAAS;iBAC1C;aACF,CAAA;QACH,CAAC;QAED,KAAK,CAAC,mBAAmB,CACvB,MAAyC,EACzC,IAAwB;YAExB,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YACjD,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAClC,wBAAwB,EACxB,MAAM,CAAC,OAAO,EACd,MAAM,IAAI,SAAS,CACpB,CAAA;YAED,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;YAC9B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,CAAA;YAC1E,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACxC,MAAM,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAA;YAC1D,MAAM,WAAW,GAA8C;gBAC7D,EAAE,EAAE,OAAO;gBACX,KAAK,EAAE,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC;gBAClD,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,eAAe,EACb,MAAM,CAAC,KAAK,KAAK,KAAK;oBACpB,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,mBAAmB,GAAG,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,aAAa;gBACnE,aAAa,EAAE,mBAAmB;gBAClC,UAAU,EAAE,MAAM,CAAC,SAAS;gBAC5B,gBAAgB,EAAE,KAAK;aACxB,CAAA;YACD,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAC3B,MAAM,CAAC,SAAS,CAAe,aAAa,EAAE,GAAG,EAAE,WAAW,CAAC,CAAA;YAEjE,wEAAwE;YACxE,wEAAwE;YACxE,uEAAuE;YACvE,wEAAwE;YACxE,uDAAuD;YACvD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,KAAK,CACtE,KAAK,EAAE,GAAY,EAAE,EAAE;gBACrB,IAAI,CAAC,CAAC,GAAG,YAAY,wBAAwB,CAAC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;oBAClE,MAAM,GAAG,CAAA;gBACX,CAAC;gBACD,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,MAAM,CAAA;gBAC9D,OAAO,IAAI,CACT,MAAM,oBAAoB,CACxB,MAAM,CAAC,OAAO,EACd,OAAO,CAAC,gBAAgB,EACxB;oBACE,WAAW,EAAE,OAAO,CAAC,WAAW;oBAChC,YAAY,EAAE,OAAO,CAAC,YAAY;iBACnC,CACF,CACF,CAAA;YACH,CAAC,CACF,CAAA;YAED,OAAO,mBAAmB,CACxB,MAAM,CAAC,KAAK,EACZ,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EACtB,IAAI,GAAG,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,CACtE,CAAA;QACH,CAAC;QAED,KAAK,CAAC,WAAW,CACf,MAAiC,EACjC,IAAwB;YAExB,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;YAErE,MAAM,WAAW,GAAG,oBAAoB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACvD,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;YAC9B,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;YAClE,MAAM,cAAc,GAAG,iBAAiB,CAAC,aAAa,EAAE,EAAE,WAAW,CAAC,CAAA;YACtE,MAAM,aAAa,GAAG,gBAAgB,CAAC,aAAa,EAAE,EAAE,WAAW,CAAC,CAAA;YACpE,wEAAwE;YACxE,sEAAsE;YACtE,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClC,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAC1C,eAAe,CACb,MAAM,EACN,CAAC,EACD,OAAO,CAAC,KAAK,EACb,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,IAAI,EACX,WAAW,CACZ,CACF;gBACD,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,CAAC;oBAC7C,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE;oBACvB,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE;gBACrB,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,mBAAmB,CAAC;oBAC5C,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE;oBACtB,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE;aACtB,CAAC,CAAA;YAEF,MAAM,KAAK,GAAmB;gBAC5B,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAC9B,CAAC,CAAC,EAAgB,EAAE,CAAC,CAAC;oBACpB,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,QAAQ,EAAE,WAAW;oBACrB,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;oBACnC,IAAI,EAAE,YAAY,CAAC,OAAO;oBAC1B,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAChD,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,YAAY,EAAE,aAAa,CAAC,aAAa,EAAE,CAAC,CAAC,UAAU,CAAC;iBACzD,CAAC,CACH;gBACD,kEAAkE;gBAClE,4DAA4D;gBAC5D,GAAG,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAChC,CAAC,CAAC,EAAgB,EAAE,CAAC,CAAC;oBACpB,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,QAAQ,EAAE,WAAW;oBACrB,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;oBACnC,IAAI,EAAE,YAAY,CAAC,UAAU;oBAC7B,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAChD,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,YAAY,EAAE,aAAa,CAAC,aAAa,EAAE,CAAC,CAAC,UAAU,CAAC;iBACzD,CAAC,CACH;gBACD,uEAAuE;gBACvE,kEAAkE;gBAClE,iEAAiE;gBACjE,8BAA8B;gBAC9B,GAAG,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAkB,EAAE;oBAClE,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;oBACtD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;wBACzB,OAAO,EAAE,CAAA;oBACX,CAAC;oBACD,OAAO;wBACL;4BACE,EAAE,EAAE,WAAW,CAAC,CAAC,UAAU,EAAE;4BAC7B,QAAQ,EAAE,WAAW;4BACrB,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;4BACxC,IAAI,EAAE,YAAY,CAAC,OAAO;4BAC1B,MAAM;4BACN,MAAM,EAAE,CAAC,CAAC,MAAM;4BAChB,YAAY,EAAE,CAAC,CAAC,aAAa;4BAC7B,WAAW,EAAE,CAAC,CAAC,IAAI;yBACpB;qBACF,CAAA;gBACH,CAAC,CAAC;gBACF,oEAAoE;gBACpE,sEAAsE;gBACtE,qEAAqE;gBACrE,mEAAmE;gBACnE,sEAAsE;gBACtE,qEAAqE;gBACrE,qEAAqE;gBACrE,UAAU;gBACV,GAAG,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAkB,EAAE;oBACjE,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;oBACtD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;wBACzB,OAAO,EAAE,CAAA;oBACX,CAAC;oBACD,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;oBACxC,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;oBACtC,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAChD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,SAAS,CACnC,EAAE,WAAW,CAAA;oBACd,8DAA8D;oBAC9D,gEAAgE;oBAChE,oEAAoE;oBACpE,MAAM,YAAY,GAChB,UAAU,KAAK,uBAAuB;wBACpC,CAAC,CAAE,UAAoB;wBACvB,CAAC,CAAC,UAAU,KAAK,oBAAoB;4BACnC,CAAC,CAAE,OAAiB;4BACpB,CAAC,CAAC,SAAS,CAAA;oBACjB,MAAM,YAAY,GAChB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,mBAAmB,CAAA;oBACpE,OAAO;wBACL;4BACE,EAAE,EAAE,eAAe,CAAC,CAAC,EAAE,EAAE;4BACzB,QAAQ,EAAE,WAAW;4BACrB,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;4BACrC,IAAI,EAAE,YAAY,CAAC,WAAW;4BAC9B,GAAG,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI;gCACjC,CAAC,CAAC,EAAE;gCACJ,CAAC,CAAC;oCACE,0BAA0B,EAAE,KAAK;yCAC9B,KAAK,CAAC,IAAI,CAAC;yCACX,GAAG,EAAE;yCACL,OAAO,EAAE;iCACb,CAAC;4BACN,yDAAyD;4BACzD,sDAAsD;4BACtD,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC;4BACvD,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC;4BACvD,mBAAmB,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;yBACxB;qBAChC,CAAA;gBACH,CAAC,CAAC;gBACF,sEAAsE;gBACtE,sEAAsE;gBACtE,0DAA0D;gBAC1D,GAAG,OAAO,CAAC,SAAS,CAAC,SAAS;qBAC3B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB,KAAK,CAAC,CAAC,gBAAgB,CAAC;qBAC1D,GAAG,CAAC,CAAC,CAAC,EAAgB,EAAE;oBACvB,MAAM,SAAS,GACb,CAAC,CAAC,kBAAkB,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;oBACvD,MAAM,wBAAwB,GAC5B,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAA;oBACjE,OAAO;wBACL,EAAE,EAAE,CAAC,CAAC,EAAE;wBACR,QAAQ,EAAE,WAAW;wBACrB,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;wBACnC,IAAI,EAAE,YAAY,CAAC,QAAQ;wBAC3B,SAAS;wBACT,wBAAwB;wBACxB,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;wBAChD,MAAM,EAAE,CAAC,CAAC,MAAM;wBAChB,yDAAyD;wBACzD,8DAA8D;wBAC9D,6DAA6D;wBAC7D,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,CAAC,aAAa,EAAE,CAAC;wBAC1D,YAAY,EAAE,mBAAmB,CAAC,CAAC,CAAC,OAAO,CAAC;4BAC1C,CAAC,CAAC,SAAS;4BACX,CAAC,CAAC,qBAAqB,CAAC,iBAAiB,EAAE,CAAC,CAAC,OAAO,CAAC;wBACvD,IAAI,EAAE;4BACJ,YAAY,EAAE,CAAC,CAAC,IAAI;4BACpB,MAAM,EAAE,CAAC,CAAC,OAAO;4BACjB,SAAS,EAAE,CAAC,CAAC,UAAU;4BACvB,OAAO,EAAE,CAAC,CAAC,QAAQ;yBACpB;qBACF,CAAA;gBACH,CAAC,CAAC;aACL,CAAA;YAED,MAAM,IAAI,GAAG,gBAAgB,CAC3B,KAAK,EACL,WAAW,EAAE,QAAQ,IAAI,EAAE,EAC3B,MAAM,EACN,CAAC,YAAY,EAAE,EAAE,CACf,oBAAoB,CAAC;gBACnB,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;gBACjC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM;gBACnC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,WAAW;gBACtC,YAAY,EAAE,OAAO,CAAC,YAAY,CAAC,WAAW;gBAC9C,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM;gBACnC,QAAQ,EAAE,YAAY;aACvB,CAAC,CACL,CAAA;YAED,OAAO;gBACL,QAAQ,EAAE,WAAW;gBACrB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,UAAU,EAAE,IAAI,CAAC,UAAU;aAC5B,CAAA;QACH,CAAC;QAED,QAAQ,CACN,MAA8B,EAC9B,IAAwB;YAExB,OAAO,YAAY,CACjB,aAAa,EAAE,EACf,WAAW,EACX,MAAM,EACN,qBAAqB,EACrB,IAAI,CACL,CAAA;QACH,CAAC;QAED,iBAAiB,CACf,OAAwB,EACxB,SAAqB;YAErB,OAAO,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QAC9C,CAAC;QAED,cAAc;QAEd,aAAa;QAEb,wBAAwB;QAExB,uBAAuB;QAEvB,aAAa,CACX,MAAqB,EACrB,KAAoB;YAEpB,IAAI,MAAM,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;gBACpC,MAAM,IAAI,UAAU,CAClB,cAAc,CAAC,QAAQ,EACvB,6DAA6D;oBAC3D,IAAI,MAAM,CAAC,QAAQ,IAAI,CAC1B,CAAA;YACH,CAAC;YACD,OAAO,4BAA4B,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QACpD,CAAC;QAED;;;;WAIG;QACH,KAAK,CAAC,kBAAkB,CACtB,MAAkB,EAClB,OAAgB;YAEhB,IAAI,MAAM,KAAK,UAAU,CAAC,gBAAgB,EAAE,CAAC;gBAC3C,OAAO,EAAE,CAAA;YACX,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YACzC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,OAAO,EAAE,CAAA;YACX,CAAC;YACD,OAAO,EAAE,cAAc,EAAE,KAAK,CAAC,eAAe,EAAE,CAAA;QAClD,CAAC;QAED;;;WAGG;QACH,mBAAmB,CAAC,MAAc;YAChC,OAAO,qBAAqB,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAA;QACzD,CAAC;QAED,KAAK,CAAC,WAAW,CACf,MAAqB,EACrB,KAAmB,EACnB,OAAgB,EAChB,GAAwB;YAExB,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBACnE,MAAM,eAAe,CAAC,OAAO,CAAC,CAAA;YAChC,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAChE,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAA;YACpC,CAAC;YACD,OAAO,kBAAkB,CACvB;gBACE,MAAM;gBACN,QAAQ;gBACR,SAAS,EAAE,SAAS,EAAE;gBACtB,eAAe;gBACf,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;oBAClC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;oBACvC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;wBACpB,OAAO,MAAM,CAAC,YAAY,CAAA;oBAC5B,CAAC;oBACD,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,CAAA;oBAC7D,OAAO,OAAO,CAAC,KAAK,CAAA;gBACtB,CAAC;aACF,EACD,MAAM,EACN,KAAK,EACL,OAAO,EACP,GAAG,CACJ,CAAA;QACH,CAAC;KACF,CAAA;IACD,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,UAAkC,EAAE,EACd,EAAE,CACxB,qBAAqB,CAAC,0BAA0B,EAAE,OAAO,CAAC,CAAA;AAE5D;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,UAAkC,EAAE,EACd,EAAE,CAAC,qBAAqB,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAA;AAEhF;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,eAAe,CAAA"}
@@ -12,7 +12,8 @@ export declare const lighterConfig: (account: AccountResponse) => LighterAccount
12
12
  export declare const lighterPortfolioValue: (perpsEquity: Big, holdingValuesUsd: readonly string[]) => Big;
13
13
  /**
14
14
  * Roll up settlement equity, spot holdings and non-settlement margin holdings.
15
- * Settlement margin is already included in `totalAssetValue`.
15
+ * The settlement asset counts as `totalAssetValue` plus its spot-route balance,
16
+ * so a row that pools both routes is not counted again.
16
17
  *
17
18
  * @throws {PerpsError} `SDKError` when the account is not a Lighter one.
18
19
  * @public
@@ -1 +1 @@
1
- {"version":3,"file":"accountSummary.d.ts","sourceRoot":"","sources":["../../src/accountSummary.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,QAAQ,EACT,MAAM,mBAAmB,CAAA;AAE1B,OAAO,GAAG,MAAM,QAAQ,CAAA;AASxB;;;;GAIG;AACH,eAAO,MAAM,aAAa,GACxB,SAAS,eAAe,KACvB,oBAYF,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAChC,aAAa,GAAG,EAChB,kBAAkB,SAAS,MAAM,EAAE,KAClC,GAIA,CAAA;AAEH;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,QAAQ,EAAE,GACpB,cAAc,CAmChB"}
1
+ {"version":3,"file":"accountSummary.d.ts","sourceRoot":"","sources":["../../src/accountSummary.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,QAAQ,EACT,MAAM,mBAAmB,CAAA;AAE1B,OAAO,GAAG,MAAM,QAAQ,CAAA;AASxB;;;;GAIG;AACH,eAAO,MAAM,aAAa,GACxB,SAAS,eAAe,KACvB,oBAYF,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAChC,aAAa,GAAG,EAChB,kBAAkB,SAAS,MAAM,EAAE,KAClC,GAIA,CAAA;AAEH;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,QAAQ,EAAE,GACpB,cAAc,CAkChB"}
@@ -23,7 +23,8 @@ export const lighterConfig = (account) => {
23
23
  export const lighterPortfolioValue = (perpsEquity, holdingValuesUsd) => holdingValuesUsd.reduce((sum, valueUsd) => sum.plus(toRequiredBig(valueUsd, 'valueUsd')), perpsEquity);
24
24
  /**
25
25
  * Roll up settlement equity, spot holdings and non-settlement margin holdings.
26
- * Settlement margin is already included in `totalAssetValue`.
26
+ * The settlement asset counts as `totalAssetValue` plus its spot-route balance,
27
+ * so a row that pools both routes is not counted again.
27
28
  *
28
29
  * @throws {PerpsError} `SDKError` when the account is not a Lighter one.
29
30
  * @public
@@ -31,11 +32,8 @@ export const lighterPortfolioValue = (perpsEquity, holdingValuesUsd) => holdingV
31
32
  export function getAccountSummary(account, positions) {
32
33
  const config = lighterConfig(account);
33
34
  const settlement = LIGHTER_COLLATERAL_ASSETS[config.provider];
34
- const holdings = [
35
- ...account.balances,
36
- ...account.collateralBalances.filter(({ asset }) => asset.id !== String(settlement.assetIndex) &&
37
- asset.id !== settlement.displaySymbol),
38
- ];
35
+ const holdings = [...account.balances, ...account.collateralBalances].filter(({ asset }) => asset.id !== String(settlement.assetIndex) &&
36
+ asset.id !== settlement.displaySymbol);
39
37
  let marginUsed = new Big(0);
40
38
  let unrealizedPnl = new Big(0);
41
39
  for (const position of positions) {
@@ -43,7 +41,7 @@ export function getAccountSummary(account, positions) {
43
41
  unrealizedPnl = unrealizedPnl.plus(position.unrealizedPnl);
44
42
  }
45
43
  return {
46
- portfolioValue: lighterPortfolioValue(toRequiredBig(config.totalAssetValue, 'totalAssetValue'), holdings.map((balance) => balance.valueUsd)).toFixed(),
44
+ portfolioValue: lighterPortfolioValue(toRequiredBig(config.totalAssetValue, 'totalAssetValue').plus(toRequiredBig(config.collateralSpotBalance, 'collateralSpotBalance')), holdings.map((balance) => balance.valueUsd)).toFixed(),
47
45
  availableMargin: atLeastZero(toRequiredBig(config.crossAssetValue, 'crossAssetValue').minus(toRequiredBig(config.crossInitialMarginRequirement, 'crossInitialMarginRequirement'))).toFixed(),
48
46
  marginUsed: marginUsed.toFixed(),
49
47
  unrealizedPnl: unrealizedPnl.toFixed(),