@metamask-previews/perps-controller 19.0.0-preview-3a5622e8c → 19.0.0-preview-1b920e5a0

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/CHANGELOG.md CHANGED
@@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ### Changed
11
+
12
+ - **BREAKING:** `OrderFill.pnl` is optional when the venue omits realized PnL. Consumers must preserve missing amounts as unknown when aggregating or displaying fills; only a reported `'0'` is zero ([#10605](https://github.com/MetaMask/core/pull/10605))
13
+
14
+ ### Fixed
15
+
16
+ - Accept Lighter trades that omit position-sign flags, preserve omitted account PnL as unknown, and reject known reductions without realized PnL. Retain side-only fill directions when lifecycle context is ambiguous ([#10605](https://github.com/MetaMask/core/pull/10605))
17
+
10
18
  ## [19.0.0]
11
19
 
12
20
  ### Added
@@ -178,8 +178,8 @@ const TradeStruct = type({
178
178
  makerFee: optional(NonNegativeFinancialNumberStruct),
179
179
  takerPositionSizeBefore: NonNegativeDecimalStringStruct,
180
180
  makerPositionSizeBefore: NonNegativeDecimalStringStruct,
181
- takerPositionSignChanged: boolean(),
182
- makerPositionSignChanged: boolean(),
181
+ takerPositionSignChanged: optional(boolean()),
182
+ makerPositionSignChanged: optional(boolean()),
183
183
  });
184
184
  const ResponseStructs = {
185
185
  orderBooks: type({
@@ -1 +1 @@
1
- {"version":3,"file":"LighterClientService.js","sourceRoot":"","sources":["../../src/services/LighterClientService.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Lighter Client Service\n *\n * Thin REST client for the zkLighter API. No SDK dependency — endpoints are\n * called with the platform `fetch` global. Each successful endpoint response\n * is decoded before it reaches provider signing or trading logic.\n *\n * Endpoints used (https://apidocs.lighter.xyz):\n * - GET /api/v1/orderBooks market metadata\n * - GET /api/v1/orderBookDetails market stats\n * - GET /api/v1/account account (+positions) by index\n * - GET /api/v1/accountsByL1Address account discovery\n * - GET /api/v1/apikeys registered venue keys\n * - GET /api/v1/nextNonce per-key nonce\n * - GET /api/v1/accountActiveOrders open orders (auth token header)\n * - POST /api/v1/sendTx submit signed L2 transaction\n */\n\nimport type { Struct } from '@metamask/superstruct';\nimport {\n array,\n assert,\n boolean,\n define,\n optional,\n record,\n refine,\n string,\n type,\n union,\n} from '@metamask/superstruct';\n\nimport {\n getLighterHttpEndpoint,\n LIGHTER_DATA_INTEGRITY_PREFIX,\n LIGHTER_HTTP_TIMEOUT_MS,\n} from '../constants/lighterConfig.js';\nimport type { PerpsPlatformDependencies } from '../types/index.js';\nimport type {\n LighterAccountResponse,\n LighterAccountsByL1AddressResponse,\n LighterActiveOrdersResponse,\n LighterApiKeysResponse,\n LighterNetwork,\n LighterNextNonceResponse,\n LighterTxLookupResponse,\n LighterOrderBookMeta,\n LighterOrderBookDetailsResponse,\n LighterOrderBooksResponse,\n LighterCandlesResponse,\n LighterDepositHistoryResponse,\n LighterInactiveOrdersResponse,\n LighterPnlResponse,\n LighterPositionFundingsResponse,\n LighterSendTxResponse,\n LighterTradesResponse,\n LighterTradesQuery,\n LighterTransferType,\n LighterTransferHistoryResponse,\n LighterWithdrawHistoryResponse,\n} from '../types/lighter-types.js';\n\n/**\n * Duration market metadata stays cached before a refetch.\n */\nconst MARKETS_CACHE_TTL_MS = 5 * 60 * 1000;\n\nconst FiniteNumberStruct = define<number>('finite number', (value) =>\n typeof value === 'number' ? Number.isFinite(value) : false,\n);\nconst SafeIntegerStruct = define<number>('safe integer', (value) =>\n typeof value === 'number' ? Number.isSafeInteger(value) : false,\n);\nconst NonNegativeIntegerStruct = define<number>(\n 'non-negative safe integer',\n (value) =>\n typeof value === 'number'\n ? Number.isSafeInteger(value) && value >= 0\n : false,\n);\nconst parseStrictDecimalString = (value: unknown): number | null => {\n if (\n typeof value !== 'string' ||\n !/^[+-]?(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:[eE][+-]?\\d+)?$/u.test(value)\n ) {\n return null;\n }\n const parsed = Number(value);\n return Number.isFinite(parsed) ? parsed : null;\n};\nconst SignedDecimalStringStruct = define<string>(\n 'finite decimal string',\n (value) => parseStrictDecimalString(value) !== null,\n);\nconst NonNegativeDecimalStringStruct = define<string>(\n 'non-negative finite decimal string',\n (value) => {\n const parsed = parseStrictDecimalString(value);\n return parsed !== null && parsed >= 0;\n },\n);\nconst TransferTypeStruct = define<LighterTransferType>(\n 'Lighter transfer type',\n (value) => value === 'L2TransferInflow' || value === 'L2TransferOutflow',\n);\nconst PositiveDecimalStringStruct = define<string>(\n 'positive finite decimal string',\n (value) => {\n const parsed = parseStrictDecimalString(value);\n return parsed !== null && parsed > 0;\n },\n);\nconst NonNegativeFiniteNumberStruct = define<number>(\n 'non-negative finite number',\n (value) => typeof value === 'number' && Number.isFinite(value) && value >= 0,\n);\nconst NonNegativeMarginFractionStruct = define<number>(\n 'margin fraction in [0, 10000]',\n (value) =>\n typeof value === 'number' &&\n Number.isSafeInteger(value) &&\n value >= 0 &&\n value <= 10_000,\n);\nconst NonNegativeFinancialNumberStruct = union([\n NonNegativeFiniteNumberStruct,\n NonNegativeDecimalStringStruct,\n]);\nconst BaseResponseStruct = type({\n code: SafeIntegerStruct,\n message: optional(string()),\n});\nconst PositionStruct = type({\n marketId: NonNegativeIntegerStruct,\n symbol: string(),\n initialMarginFraction: NonNegativeDecimalStringStruct,\n openOrderCount: NonNegativeIntegerStruct,\n sign: SafeIntegerStruct,\n position: NonNegativeDecimalStringStruct,\n avgEntryPrice: NonNegativeDecimalStringStruct,\n positionValue: NonNegativeDecimalStringStruct,\n unrealizedPnl: SignedDecimalStringStruct,\n realizedPnl: SignedDecimalStringStruct,\n liquidationPrice: NonNegativeDecimalStringStruct,\n marginMode: optional(SafeIntegerStruct),\n});\nconst AccountStruct = type({\n code: SafeIntegerStruct,\n accountType: SafeIntegerStruct,\n index: NonNegativeIntegerStruct,\n l1Address: string(),\n cancelAllTime: NonNegativeIntegerStruct,\n totalOrderCount: NonNegativeIntegerStruct,\n pendingOrderCount: NonNegativeIntegerStruct,\n status: SafeIntegerStruct,\n collateral: NonNegativeDecimalStringStruct,\n availableBalance: NonNegativeDecimalStringStruct,\n positions: optional(array(PositionStruct)),\n});\n// The address-discovery endpoint is an identity lookup, not a financial read:\n// live responses can carry sparse balance fields (for example an empty\n// `availableBalance`). Validate only the fields its sole consumer needs. Full\n// account reads retain AccountStruct and its strict financial validation.\nconst AccountSummaryStruct = type({\n accountType: SafeIntegerStruct,\n index: NonNegativeIntegerStruct,\n l1Address: string(),\n});\nconst MarketBaseStruct = type({\n symbol: string(),\n marketId: NonNegativeIntegerStruct,\n marketType: string(),\n status: string(),\n takerFee: SignedDecimalStringStruct,\n makerFee: SignedDecimalStringStruct,\n minBaseAmount: NonNegativeDecimalStringStruct,\n minQuoteAmount: NonNegativeDecimalStringStruct,\n supportedSizeDecimals: NonNegativeIntegerStruct,\n supportedPriceDecimals: NonNegativeIntegerStruct,\n supportedQuoteDecimals: NonNegativeIntegerStruct,\n});\nconst hasValidMarketMinimums = (\n market: Pick<\n LighterOrderBookMeta,\n 'status' | 'minBaseAmount' | 'minQuoteAmount'\n >,\n): boolean =>\n market.status === 'inactive' ||\n [market.minBaseAmount, market.minQuoteAmount].every((value) => {\n const parsed = parseStrictDecimalString(value);\n return parsed !== null && parsed > 0;\n });\nconst MarketStruct = refine(\n MarketBaseStruct,\n 'positive minimum amounts for tradable markets',\n hasValidMarketMinimums,\n);\nconst MarketDetailBaseStruct = type({\n ...MarketBaseStruct.schema,\n lastTradePrice: NonNegativeFiniteNumberStruct,\n defaultInitialMarginFraction: optional(NonNegativeMarginFractionStruct),\n minInitialMarginFraction: optional(NonNegativeMarginFractionStruct),\n maintenanceMarginFraction: optional(NonNegativeMarginFractionStruct),\n dailyTradesCount: NonNegativeFiniteNumberStruct,\n dailyBaseTokenVolume: NonNegativeFiniteNumberStruct,\n dailyQuoteTokenVolume: NonNegativeFiniteNumberStruct,\n dailyPriceLow: NonNegativeFiniteNumberStruct,\n dailyPriceHigh: NonNegativeFiniteNumberStruct,\n dailyPriceChange: FiniteNumberStruct,\n openInterest: NonNegativeFiniteNumberStruct,\n dailyChart: record(string(), FiniteNumberStruct),\n});\nconst hasValidMarketMarginFractions = (market: {\n status: string;\n defaultInitialMarginFraction?: number;\n minInitialMarginFraction?: number;\n maintenanceMarginFraction?: number;\n}): boolean =>\n market.status === 'inactive' ||\n [\n market.defaultInitialMarginFraction,\n market.minInitialMarginFraction,\n market.maintenanceMarginFraction,\n ].every((value) => value === undefined || value > 0);\nconst MarketDetailStruct = refine(\n refine(\n MarketDetailBaseStruct,\n 'positive minimum amounts for tradable markets',\n hasValidMarketMinimums,\n ),\n 'positive margin fractions for tradable markets',\n hasValidMarketMarginFractions,\n);\nconst OrderStruct = type({\n orderIndex: NonNegativeIntegerStruct,\n clientOrderIndex: NonNegativeIntegerStruct,\n marketIndex: NonNegativeIntegerStruct,\n ownerAccountIndex: NonNegativeIntegerStruct,\n initialBaseAmount: PositiveDecimalStringStruct,\n remainingBaseAmount: NonNegativeDecimalStringStruct,\n filledBaseAmount: optional(NonNegativeDecimalStringStruct),\n price: PositiveDecimalStringStruct,\n isAsk: boolean(),\n type: string(),\n timeInForce: string(),\n reduceOnly: union([FiniteNumberStruct, boolean()]),\n status: string(),\n orderExpiry: SafeIntegerStruct,\n timestamp: NonNegativeIntegerStruct,\n triggerPrice: optional(NonNegativeDecimalStringStruct),\n orderId: optional(string()),\n parentOrderIndex: optional(NonNegativeIntegerStruct),\n parentOrderId: optional(string()),\n toCancelOrderId0: optional(string()),\n toTriggerOrderId0: optional(string()),\n toTriggerOrderId1: optional(string()),\n});\nconst TradeStruct = type({\n tradeId: NonNegativeIntegerStruct,\n txHash: string(),\n type: string(),\n marketId: NonNegativeIntegerStruct,\n size: PositiveDecimalStringStruct,\n price: PositiveDecimalStringStruct,\n usdAmount: PositiveDecimalStringStruct,\n askId: NonNegativeIntegerStruct,\n bidId: NonNegativeIntegerStruct,\n askAccountId: NonNegativeIntegerStruct,\n bidAccountId: NonNegativeIntegerStruct,\n isMakerAsk: boolean(),\n timestamp: NonNegativeIntegerStruct,\n askAccountPnl: optional(SignedDecimalStringStruct),\n bidAccountPnl: optional(SignedDecimalStringStruct),\n takerFee: optional(NonNegativeFinancialNumberStruct),\n makerFee: optional(NonNegativeFinancialNumberStruct),\n takerPositionSizeBefore: NonNegativeDecimalStringStruct,\n makerPositionSizeBefore: NonNegativeDecimalStringStruct,\n takerPositionSignChanged: boolean(),\n makerPositionSignChanged: boolean(),\n});\n\nconst ResponseStructs = {\n orderBooks: type({\n ...BaseResponseStruct.schema,\n orderBooks: array(MarketStruct),\n }),\n orderBookDetails: type({\n ...BaseResponseStruct.schema,\n orderBookDetails: array(MarketDetailStruct),\n }),\n account: type({\n ...BaseResponseStruct.schema,\n accounts: array(AccountStruct),\n }),\n accountsByAddress: type({\n ...BaseResponseStruct.schema,\n l1Address: string(),\n subAccounts: array(AccountSummaryStruct),\n }),\n apiKeys: type({\n ...BaseResponseStruct.schema,\n apiKeys: array(\n type({\n accountIndex: NonNegativeIntegerStruct,\n apiKeyIndex: NonNegativeIntegerStruct,\n nonce: NonNegativeIntegerStruct,\n publicKey: string(),\n }),\n ),\n }),\n nextNonce: type({\n ...BaseResponseStruct.schema,\n nonce: NonNegativeIntegerStruct,\n }),\n transaction: type({\n ...BaseResponseStruct.schema,\n hash: string(),\n accountIndex: NonNegativeIntegerStruct,\n apiKeyIndex: NonNegativeIntegerStruct,\n nonce: NonNegativeIntegerStruct,\n status: SafeIntegerStruct,\n }),\n sendTransaction: type({\n ...BaseResponseStruct.schema,\n txHash: string(),\n }),\n activeOrders: type({\n ...BaseResponseStruct.schema,\n orders: array(OrderStruct),\n }),\n inactiveOrders: type({\n ...BaseResponseStruct.schema,\n nextCursor: optional(string()),\n orders: array(OrderStruct),\n }),\n deposits: type({\n ...BaseResponseStruct.schema,\n deposits: array(\n type({\n id: string(),\n assetId: NonNegativeIntegerStruct,\n amount: PositiveDecimalStringStruct,\n timestamp: NonNegativeIntegerStruct,\n status: string(),\n l1TxHash: string(),\n }),\n ),\n cursor: optional(string()),\n }),\n withdrawals: type({\n ...BaseResponseStruct.schema,\n withdraws: array(\n type({\n id: string(),\n assetId: NonNegativeIntegerStruct,\n amount: PositiveDecimalStringStruct,\n timestamp: NonNegativeIntegerStruct,\n status: string(),\n type: string(),\n l1TxHash: string(),\n }),\n ),\n cursor: optional(string()),\n }),\n transfers: type({\n ...BaseResponseStruct.schema,\n transfers: array(\n type({\n id: string(),\n assetId: NonNegativeIntegerStruct,\n amount: PositiveDecimalStringStruct,\n fee: NonNegativeDecimalStringStruct,\n timestamp: NonNegativeIntegerStruct,\n type: TransferTypeStruct,\n fromL1Address: string(),\n toL1Address: string(),\n fromAccountIndex: NonNegativeIntegerStruct,\n toAccountIndex: NonNegativeIntegerStruct,\n txHash: string(),\n }),\n ),\n cursor: optional(string()),\n }),\n trades: type({\n ...BaseResponseStruct.schema,\n nextCursor: optional(string()),\n trades: array(TradeStruct),\n }),\n fundings: type({\n ...BaseResponseStruct.schema,\n positionFundings: array(\n type({\n timestamp: NonNegativeIntegerStruct,\n marketId: NonNegativeIntegerStruct,\n fundingId: NonNegativeIntegerStruct,\n change: SignedDecimalStringStruct,\n rate: SignedDecimalStringStruct,\n positionSize: NonNegativeDecimalStringStruct,\n positionSide: string(),\n }),\n ),\n }),\n pnl: type({\n ...BaseResponseStruct.schema,\n resolution: optional(string()),\n pnl: optional(\n array(\n type({\n timestamp: NonNegativeIntegerStruct,\n tradePnl: FiniteNumberStruct,\n inflow: FiniteNumberStruct,\n outflow: FiniteNumberStruct,\n volume: FiniteNumberStruct,\n }),\n ),\n ),\n }),\n candles: type({\n ...BaseResponseStruct.schema,\n r: optional(string()),\n c: optional(\n array(\n type({\n t: NonNegativeIntegerStruct,\n o: FiniteNumberStruct,\n h: FiniteNumberStruct,\n l: FiniteNumberStruct,\n c: FiniteNumberStruct,\n v: FiniteNumberStruct,\n }),\n ),\n ),\n }),\n} as const;\n\n/**\n * Convert a snake_case wire key to camelCase.\n *\n * @param key - Wire key (e.g. `min_base_amount`).\n * @returns camelCase key (e.g. `minBaseAmount`).\n */\nfunction toCamelKey(key: string): string {\n return key.replace(/_([a-z0-9])/gu, (_match, char: string) =>\n char.toUpperCase(),\n );\n}\n\n/**\n * Recursively convert all object keys from snake_case to camelCase.\n * The zkLighter wire format is snake_case; parsed shapes in this package\n * follow camelCase conventions (see types/lighter-types.ts).\n *\n * @param value - Parsed JSON value.\n * @returns The value with camelCase keys.\n */\nexport function convertKeysToCamelCase(value: unknown): unknown {\n if (Array.isArray(value)) {\n return value.map(convertKeysToCamelCase);\n }\n if (value !== null && typeof value === 'object') {\n return Object.fromEntries(\n Object.entries(value as Record<string, unknown>).map(([key, entry]) => [\n toCamelKey(key),\n convertKeysToCamelCase(entry),\n ]),\n );\n }\n return value;\n}\n\n/**\n * Error thrown for non-2xx HTTP responses or API-level error codes.\n */\nexport class LighterApiError extends Error {\n readonly code: number | undefined;\n\n constructor(message: string, code?: number) {\n super(message);\n this.name = 'LighterApiError';\n this.code = code;\n }\n}\n\n/**\n * REST client for the zkLighter API.\n */\nexport class LighterClientService {\n readonly #deps: PerpsPlatformDependencies;\n\n readonly #isTestnet: boolean;\n\n #marketsCache: LighterOrderBookMeta[] | null = null;\n\n #marketsCacheTime = 0;\n\n constructor(deps: PerpsPlatformDependencies, config: { isTestnet: boolean }) {\n this.#deps = deps;\n this.#isTestnet = config.isTestnet;\n }\n\n get network(): LighterNetwork {\n return this.#isTestnet ? 'testnet' : 'mainnet';\n }\n\n get baseUrl(): string {\n return getLighterHttpEndpoint(this.network);\n }\n\n /**\n * Fetch market metadata, cached for 5 minutes.\n *\n * @param forceRefresh - Skip the cache and refetch.\n * @returns Market metadata entries.\n */\n async getOrderBooks(forceRefresh = false): Promise<LighterOrderBookMeta[]> {\n const now = Date.now();\n if (\n !forceRefresh &&\n this.#marketsCache &&\n now - this.#marketsCacheTime < MARKETS_CACHE_TTL_MS\n ) {\n return this.#marketsCache;\n }\n\n const response = await this.#get<LighterOrderBooksResponse>(\n '/api/v1/orderBooks',\n ResponseStructs.orderBooks,\n );\n this.#marketsCache = response.orderBooks;\n this.#marketsCacheTime = now;\n return response.orderBooks;\n }\n\n /**\n * Fetch market stats for all markets.\n *\n * @returns Order book details entries.\n */\n async getOrderBookDetails(): Promise<LighterOrderBookDetailsResponse> {\n return await this.#get<LighterOrderBookDetailsResponse>(\n '/api/v1/orderBookDetails',\n ResponseStructs.orderBookDetails,\n );\n }\n\n /**\n * Fetch an account (including positions) by its Lighter index.\n *\n * @param accountIndex - The Lighter account index.\n * @returns Account payload.\n */\n async getAccountByIndex(\n accountIndex: number,\n ): Promise<LighterAccountResponse> {\n return await this.#get<LighterAccountResponse>(\n `/api/v1/account?by=index&value=${accountIndex}`,\n ResponseStructs.account,\n );\n }\n\n /**\n * Discover Lighter accounts owned by an L1 address.\n *\n * @param l1Address - The owning EVM address.\n * @returns Accounts payload.\n */\n async getAccountsByL1Address(\n l1Address: string,\n ): Promise<LighterAccountsByL1AddressResponse> {\n return await this.#get<LighterAccountsByL1AddressResponse>(\n `/api/v1/accountsByL1Address?l1_address=${l1Address}`,\n ResponseStructs.accountsByAddress,\n );\n }\n\n /**\n * Fetch registered API keys for an account.\n *\n * @param accountIndex - The Lighter account index.\n * @param apiKeyIndex - Key slot, or 255 for all slots.\n * @returns API keys payload.\n */\n async getApiKeys(\n accountIndex: number,\n apiKeyIndex = 255,\n ): Promise<LighterApiKeysResponse> {\n return await this.#get<LighterApiKeysResponse>(\n `/api/v1/apikeys?account_index=${accountIndex}&api_key_index=${apiKeyIndex}`,\n ResponseStructs.apiKeys,\n );\n }\n\n /**\n * Fetch the next nonce for a key slot.\n *\n * @param accountIndex - The Lighter account index.\n * @param apiKeyIndex - Key slot.\n * @returns Next nonce payload.\n */\n async getNextNonce(\n accountIndex: number,\n apiKeyIndex: number,\n ): Promise<LighterNextNonceResponse> {\n return await this.#get<LighterNextNonceResponse>(\n `/api/v1/nextNonce?account_index=${accountIndex}&api_key_index=${apiKeyIndex}`,\n ResponseStructs.nextNonce,\n );\n }\n\n /**\n * Look up a transaction by its exact hash (`GET /api/v1/tx`). Used to\n * resolve submission-acceptance ambiguity authoritatively: an exact-hash\n * match proves the signed payload reached the sequencer.\n *\n * Contract: a venue-confirmed \"transaction not found\" (API error code\n * 21500) resolves to NULL; transport failures and every other API error\n * RETHROW — they are ambiguity, never evidence of non-acceptance.\n *\n * @param txHash - The signed transaction hash.\n * @returns The venue's transaction payload, or null when the venue\n * confirms the hash is unknown.\n */\n async getTx(txHash: string): Promise<LighterTxLookupResponse | null> {\n try {\n return await this.#get<LighterTxLookupResponse>(\n `/api/v1/tx?by=hash&value=${encodeURIComponent(txHash)}`,\n ResponseStructs.transaction,\n );\n } catch (error) {\n if (error instanceof LighterApiError && error.code === 21500) {\n return null;\n }\n throw error;\n }\n }\n\n /**\n * Fetch active (open) orders for an account.\n *\n * @param accountIndex - The Lighter account index.\n * @param authToken - Auth token minted by the signer (`_createAuthToken`).\n * @param marketId - Optional market filter (255 = all markets).\n * @returns Active orders payload.\n */\n async getActiveOrders(\n accountIndex: number,\n authToken: string,\n marketId = 255,\n ): Promise<LighterActiveOrdersResponse> {\n return await this.#get<LighterActiveOrdersResponse>(\n `/api/v1/accountActiveOrders?account_index=${accountIndex}&market_id=${marketId}`,\n ResponseStructs.activeOrders,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch historical (inactive) orders: filled and canceled lifecycle\n * states, newest first (auth token required).\n *\n * @param accountIndex - The Lighter account index.\n * @param authToken - Auth token minted by the signer.\n * @param limit - Maximum entries per page.\n * @param cursor - Pagination cursor from a previous page's `nextCursor`.\n * @param marketId - Optional market filter (official `market_id` query\n * param) — sharply bounds history scans to one symbol.\n * @returns Inactive orders payload.\n */\n async getInactiveOrders(\n accountIndex: number,\n authToken: string,\n limit = 50,\n cursor?: string,\n marketId?: number,\n ): Promise<LighterInactiveOrdersResponse> {\n return await this.#get<LighterInactiveOrdersResponse>(\n `/api/v1/accountInactiveOrders?account_index=${accountIndex}&limit=${limit}${\n cursor === undefined ? '' : `&cursor=${encodeURIComponent(cursor)}`\n }${marketId === undefined ? '' : `&market_id=${marketId}`}`,\n ResponseStructs.inactiveOrders,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch L1→L2 deposit history (auth token required). The venue requires\n * both the account index and its L1 address on this endpoint.\n *\n * @param accountIndex - The Lighter account index.\n * @param l1Address - The account's L1 address.\n * @param authToken - Auth token minted by the signer.\n * @returns Deposit history payload (newest first, cursor-paged).\n */\n async getDepositHistory(\n accountIndex: number,\n l1Address: string,\n authToken: string,\n ): Promise<LighterDepositHistoryResponse> {\n return await this.#get<LighterDepositHistoryResponse>(\n `/api/v1/deposit/history?account_index=${accountIndex}&l1_address=${l1Address}`,\n ResponseStructs.deposits,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch L2→L1 withdrawal history (auth token required).\n *\n * @param accountIndex - The Lighter account index.\n * @param authToken - Auth token minted by the signer.\n * @returns Withdrawal history payload (newest first, cursor-paged).\n */\n async getWithdrawHistory(\n accountIndex: number,\n authToken: string,\n ): Promise<LighterWithdrawHistoryResponse> {\n return await this.#get<LighterWithdrawHistoryResponse>(\n `/api/v1/withdraw/history?account_index=${accountIndex}`,\n ResponseStructs.withdrawals,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch L2 transfer history (auth token required).\n *\n * @param accountIndex - The Lighter account index.\n * @param authToken - Auth token minted by the signer.\n * @returns Transfer history payload (newest first, cursor-paged).\n */\n async getTransferHistory(\n accountIndex: number,\n authToken: string,\n ): Promise<LighterTransferHistoryResponse> {\n return await this.#get<LighterTransferHistoryResponse>(\n `/api/v1/transfer/history?account_index=${accountIndex}`,\n ResponseStructs.transfers,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch account trade history (auth token required).\n *\n * @param accountIndex - The Lighter account index.\n * @param authToken - Auth token minted by the signer.\n * @param query - Pagination, range, and market filters.\n * @returns Trades payload (newest first).\n */\n async getTrades(\n accountIndex: number,\n authToken: string,\n query: LighterTradesQuery,\n ): Promise<LighterTradesResponse> {\n const { limit, cursor, from, marketId } = query;\n return await this.#get<LighterTradesResponse>(\n `/api/v1/trades?sort_by=timestamp&sort_dir=desc&limit=${limit}&account_index=${accountIndex}&market_type=perp${\n cursor === undefined ? '' : `&cursor=${encodeURIComponent(cursor)}`\n }${from === undefined ? '' : `&from=${from}`}${\n marketId === undefined ? '' : `&market_id=${marketId}`\n }`,\n ResponseStructs.trades,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch user funding payment history (auth token required).\n *\n * @param accountIndex - The Lighter account index.\n * @param authToken - Auth token minted by the signer.\n * @param limit - Max entries.\n * @returns Position fundings payload.\n */\n async getPositionFundings(\n accountIndex: number,\n authToken: string,\n limit = 50,\n ): Promise<LighterPositionFundingsResponse> {\n return await this.#get<LighterPositionFundingsResponse>(\n `/api/v1/positionFunding?account_index=${accountIndex}&market_id=255&limit=${limit}&sort_by=timestamp&side=all`,\n ResponseStructs.fundings,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch account PnL history (auth token required).\n *\n * @param accountIndex - The Lighter account index.\n * @param authToken - Auth token minted by the signer.\n * @param startTimestamp - Range start (ms).\n * @param endTimestamp - Range end (ms).\n * @param countBack - Records counted back from range end.\n * @returns PnL payload.\n */\n async getPnl(\n accountIndex: number,\n authToken: string,\n startTimestamp: number,\n endTimestamp: number,\n countBack: number,\n ): Promise<LighterPnlResponse> {\n return await this.#get<LighterPnlResponse>(\n `/api/v1/pnl?by=index&value=${accountIndex}&resolution=1d&count_back=${countBack}&start_timestamp=${startTimestamp}&end_timestamp=${endTimestamp}`,\n ResponseStructs.pnl,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch an OHLCV candle series for a market.\n *\n * @param marketId - Numeric Lighter market id.\n * @param resolution - Candle resolution (e.g. `1m`, `15m`, `1h`, `1d`).\n * @param startTimestamp - Range start (ms).\n * @param endTimestamp - Range end (ms).\n * @param countBack - Number of candles counted back from the range end.\n * @returns Candle series payload.\n */\n async getCandles(\n marketId: number,\n resolution: string,\n startTimestamp: number,\n endTimestamp: number,\n countBack: number,\n ): Promise<LighterCandlesResponse> {\n return await this.#get<LighterCandlesResponse>(\n `/api/v1/candles?market_id=${marketId}&resolution=${resolution}&start_timestamp=${startTimestamp}&end_timestamp=${endTimestamp}&count_back=${countBack}`,\n ResponseStructs.candles,\n );\n }\n\n /**\n * Submit a signed L2 transaction.\n *\n * @param txType - L2 transaction type code (see lighterConfig).\n * @param txInfo - Serialized signed transaction JSON.\n * @returns Send result payload.\n */\n async sendTx(txType: number, txInfo: string): Promise<LighterSendTxResponse> {\n const body = new URLSearchParams({\n tx_type: String(txType),\n tx_info: txInfo,\n });\n\n const response = await this.#request<LighterSendTxResponse>(\n '/api/v1/sendTx',\n {\n method: 'POST',\n headers: { 'content-type': 'application/x-www-form-urlencoded' },\n body: body.toString(),\n },\n ResponseStructs.sendTransaction,\n );\n return response;\n }\n\n readonly #get = async <Result extends { code: number; message?: string }>(\n path: string,\n responseStruct: Struct<Result, unknown>,\n headers?: Record<string, string>,\n ): Promise<Result> => {\n return await this.#request<Result>(\n path,\n { method: 'GET', headers },\n responseStruct,\n );\n };\n\n readonly #request = async <Result extends { code: number; message?: string }>(\n path: string,\n init: { method: string; headers?: Record<string, string>; body?: string },\n responseStruct: Struct<Result, unknown>,\n ): Promise<Result> => {\n const url = `${this.baseUrl}${path}`;\n const controller = new AbortController();\n const timeout = setTimeout(\n () => controller.abort(),\n LIGHTER_HTTP_TIMEOUT_MS,\n );\n\n try {\n const response = await fetch(url, {\n method: init.method,\n headers: init.headers,\n body: init.body,\n signal: controller.signal,\n });\n\n const payload: unknown = convertKeysToCamelCase(await response.json());\n assert(payload, BaseResponseStruct);\n\n // Lighter returns HTTP 200 with an application-level error code, and\n // 4xx/5xx with `{code, message}` bodies — treat both uniformly.\n if (!response.ok || payload.code !== 200) {\n throw new LighterApiError(\n payload.message ?? `Lighter API error (HTTP ${response.status})`,\n payload.code ?? response.status,\n );\n }\n try {\n assert(payload, responseStruct);\n } catch (error) {\n throw new LighterApiError(\n `${LIGHTER_DATA_INTEGRITY_PREFIX} response for ${path}: ${\n error instanceof Error ? error.message : String(error)\n }`,\n );\n }\n return payload;\n } catch (error) {\n if (error instanceof LighterApiError) {\n throw error;\n }\n this.#deps.debugLogger?.log?.('LighterClientService request failed', {\n url,\n error,\n });\n throw new LighterApiError(\n error instanceof Error ? error.message : String(error),\n );\n } finally {\n clearTimeout(timeout);\n }\n };\n}\n"]}
1
+ {"version":3,"file":"LighterClientService.js","sourceRoot":"","sources":["../../src/services/LighterClientService.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Lighter Client Service\n *\n * Thin REST client for the zkLighter API. No SDK dependency — endpoints are\n * called with the platform `fetch` global. Each successful endpoint response\n * is decoded before it reaches provider signing or trading logic.\n *\n * Endpoints used (https://apidocs.lighter.xyz):\n * - GET /api/v1/orderBooks market metadata\n * - GET /api/v1/orderBookDetails market stats\n * - GET /api/v1/account account (+positions) by index\n * - GET /api/v1/accountsByL1Address account discovery\n * - GET /api/v1/apikeys registered venue keys\n * - GET /api/v1/nextNonce per-key nonce\n * - GET /api/v1/accountActiveOrders open orders (auth token header)\n * - POST /api/v1/sendTx submit signed L2 transaction\n */\n\nimport type { Struct } from '@metamask/superstruct';\nimport {\n array,\n assert,\n boolean,\n define,\n optional,\n record,\n refine,\n string,\n type,\n union,\n} from '@metamask/superstruct';\n\nimport {\n getLighterHttpEndpoint,\n LIGHTER_DATA_INTEGRITY_PREFIX,\n LIGHTER_HTTP_TIMEOUT_MS,\n} from '../constants/lighterConfig.js';\nimport type { PerpsPlatformDependencies } from '../types/index.js';\nimport type {\n LighterAccountResponse,\n LighterAccountsByL1AddressResponse,\n LighterActiveOrdersResponse,\n LighterApiKeysResponse,\n LighterNetwork,\n LighterNextNonceResponse,\n LighterTxLookupResponse,\n LighterOrderBookMeta,\n LighterOrderBookDetailsResponse,\n LighterOrderBooksResponse,\n LighterCandlesResponse,\n LighterDepositHistoryResponse,\n LighterInactiveOrdersResponse,\n LighterPnlResponse,\n LighterPositionFundingsResponse,\n LighterSendTxResponse,\n LighterTradesResponse,\n LighterTradesQuery,\n LighterTransferType,\n LighterTransferHistoryResponse,\n LighterWithdrawHistoryResponse,\n} from '../types/lighter-types.js';\n\n/**\n * Duration market metadata stays cached before a refetch.\n */\nconst MARKETS_CACHE_TTL_MS = 5 * 60 * 1000;\n\nconst FiniteNumberStruct = define<number>('finite number', (value) =>\n typeof value === 'number' ? Number.isFinite(value) : false,\n);\nconst SafeIntegerStruct = define<number>('safe integer', (value) =>\n typeof value === 'number' ? Number.isSafeInteger(value) : false,\n);\nconst NonNegativeIntegerStruct = define<number>(\n 'non-negative safe integer',\n (value) =>\n typeof value === 'number'\n ? Number.isSafeInteger(value) && value >= 0\n : false,\n);\nconst parseStrictDecimalString = (value: unknown): number | null => {\n if (\n typeof value !== 'string' ||\n !/^[+-]?(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:[eE][+-]?\\d+)?$/u.test(value)\n ) {\n return null;\n }\n const parsed = Number(value);\n return Number.isFinite(parsed) ? parsed : null;\n};\nconst SignedDecimalStringStruct = define<string>(\n 'finite decimal string',\n (value) => parseStrictDecimalString(value) !== null,\n);\nconst NonNegativeDecimalStringStruct = define<string>(\n 'non-negative finite decimal string',\n (value) => {\n const parsed = parseStrictDecimalString(value);\n return parsed !== null && parsed >= 0;\n },\n);\nconst TransferTypeStruct = define<LighterTransferType>(\n 'Lighter transfer type',\n (value) => value === 'L2TransferInflow' || value === 'L2TransferOutflow',\n);\nconst PositiveDecimalStringStruct = define<string>(\n 'positive finite decimal string',\n (value) => {\n const parsed = parseStrictDecimalString(value);\n return parsed !== null && parsed > 0;\n },\n);\nconst NonNegativeFiniteNumberStruct = define<number>(\n 'non-negative finite number',\n (value) => typeof value === 'number' && Number.isFinite(value) && value >= 0,\n);\nconst NonNegativeMarginFractionStruct = define<number>(\n 'margin fraction in [0, 10000]',\n (value) =>\n typeof value === 'number' &&\n Number.isSafeInteger(value) &&\n value >= 0 &&\n value <= 10_000,\n);\nconst NonNegativeFinancialNumberStruct = union([\n NonNegativeFiniteNumberStruct,\n NonNegativeDecimalStringStruct,\n]);\nconst BaseResponseStruct = type({\n code: SafeIntegerStruct,\n message: optional(string()),\n});\nconst PositionStruct = type({\n marketId: NonNegativeIntegerStruct,\n symbol: string(),\n initialMarginFraction: NonNegativeDecimalStringStruct,\n openOrderCount: NonNegativeIntegerStruct,\n sign: SafeIntegerStruct,\n position: NonNegativeDecimalStringStruct,\n avgEntryPrice: NonNegativeDecimalStringStruct,\n positionValue: NonNegativeDecimalStringStruct,\n unrealizedPnl: SignedDecimalStringStruct,\n realizedPnl: SignedDecimalStringStruct,\n liquidationPrice: NonNegativeDecimalStringStruct,\n marginMode: optional(SafeIntegerStruct),\n});\nconst AccountStruct = type({\n code: SafeIntegerStruct,\n accountType: SafeIntegerStruct,\n index: NonNegativeIntegerStruct,\n l1Address: string(),\n cancelAllTime: NonNegativeIntegerStruct,\n totalOrderCount: NonNegativeIntegerStruct,\n pendingOrderCount: NonNegativeIntegerStruct,\n status: SafeIntegerStruct,\n collateral: NonNegativeDecimalStringStruct,\n availableBalance: NonNegativeDecimalStringStruct,\n positions: optional(array(PositionStruct)),\n});\n// The address-discovery endpoint is an identity lookup, not a financial read:\n// live responses can carry sparse balance fields (for example an empty\n// `availableBalance`). Validate only the fields its sole consumer needs. Full\n// account reads retain AccountStruct and its strict financial validation.\nconst AccountSummaryStruct = type({\n accountType: SafeIntegerStruct,\n index: NonNegativeIntegerStruct,\n l1Address: string(),\n});\nconst MarketBaseStruct = type({\n symbol: string(),\n marketId: NonNegativeIntegerStruct,\n marketType: string(),\n status: string(),\n takerFee: SignedDecimalStringStruct,\n makerFee: SignedDecimalStringStruct,\n minBaseAmount: NonNegativeDecimalStringStruct,\n minQuoteAmount: NonNegativeDecimalStringStruct,\n supportedSizeDecimals: NonNegativeIntegerStruct,\n supportedPriceDecimals: NonNegativeIntegerStruct,\n supportedQuoteDecimals: NonNegativeIntegerStruct,\n});\nconst hasValidMarketMinimums = (\n market: Pick<\n LighterOrderBookMeta,\n 'status' | 'minBaseAmount' | 'minQuoteAmount'\n >,\n): boolean =>\n market.status === 'inactive' ||\n [market.minBaseAmount, market.minQuoteAmount].every((value) => {\n const parsed = parseStrictDecimalString(value);\n return parsed !== null && parsed > 0;\n });\nconst MarketStruct = refine(\n MarketBaseStruct,\n 'positive minimum amounts for tradable markets',\n hasValidMarketMinimums,\n);\nconst MarketDetailBaseStruct = type({\n ...MarketBaseStruct.schema,\n lastTradePrice: NonNegativeFiniteNumberStruct,\n defaultInitialMarginFraction: optional(NonNegativeMarginFractionStruct),\n minInitialMarginFraction: optional(NonNegativeMarginFractionStruct),\n maintenanceMarginFraction: optional(NonNegativeMarginFractionStruct),\n dailyTradesCount: NonNegativeFiniteNumberStruct,\n dailyBaseTokenVolume: NonNegativeFiniteNumberStruct,\n dailyQuoteTokenVolume: NonNegativeFiniteNumberStruct,\n dailyPriceLow: NonNegativeFiniteNumberStruct,\n dailyPriceHigh: NonNegativeFiniteNumberStruct,\n dailyPriceChange: FiniteNumberStruct,\n openInterest: NonNegativeFiniteNumberStruct,\n dailyChart: record(string(), FiniteNumberStruct),\n});\nconst hasValidMarketMarginFractions = (market: {\n status: string;\n defaultInitialMarginFraction?: number;\n minInitialMarginFraction?: number;\n maintenanceMarginFraction?: number;\n}): boolean =>\n market.status === 'inactive' ||\n [\n market.defaultInitialMarginFraction,\n market.minInitialMarginFraction,\n market.maintenanceMarginFraction,\n ].every((value) => value === undefined || value > 0);\nconst MarketDetailStruct = refine(\n refine(\n MarketDetailBaseStruct,\n 'positive minimum amounts for tradable markets',\n hasValidMarketMinimums,\n ),\n 'positive margin fractions for tradable markets',\n hasValidMarketMarginFractions,\n);\nconst OrderStruct = type({\n orderIndex: NonNegativeIntegerStruct,\n clientOrderIndex: NonNegativeIntegerStruct,\n marketIndex: NonNegativeIntegerStruct,\n ownerAccountIndex: NonNegativeIntegerStruct,\n initialBaseAmount: PositiveDecimalStringStruct,\n remainingBaseAmount: NonNegativeDecimalStringStruct,\n filledBaseAmount: optional(NonNegativeDecimalStringStruct),\n price: PositiveDecimalStringStruct,\n isAsk: boolean(),\n type: string(),\n timeInForce: string(),\n reduceOnly: union([FiniteNumberStruct, boolean()]),\n status: string(),\n orderExpiry: SafeIntegerStruct,\n timestamp: NonNegativeIntegerStruct,\n triggerPrice: optional(NonNegativeDecimalStringStruct),\n orderId: optional(string()),\n parentOrderIndex: optional(NonNegativeIntegerStruct),\n parentOrderId: optional(string()),\n toCancelOrderId0: optional(string()),\n toTriggerOrderId0: optional(string()),\n toTriggerOrderId1: optional(string()),\n});\nconst TradeStruct = type({\n tradeId: NonNegativeIntegerStruct,\n txHash: string(),\n type: string(),\n marketId: NonNegativeIntegerStruct,\n size: PositiveDecimalStringStruct,\n price: PositiveDecimalStringStruct,\n usdAmount: PositiveDecimalStringStruct,\n askId: NonNegativeIntegerStruct,\n bidId: NonNegativeIntegerStruct,\n askAccountId: NonNegativeIntegerStruct,\n bidAccountId: NonNegativeIntegerStruct,\n isMakerAsk: boolean(),\n timestamp: NonNegativeIntegerStruct,\n askAccountPnl: optional(SignedDecimalStringStruct),\n bidAccountPnl: optional(SignedDecimalStringStruct),\n takerFee: optional(NonNegativeFinancialNumberStruct),\n makerFee: optional(NonNegativeFinancialNumberStruct),\n takerPositionSizeBefore: NonNegativeDecimalStringStruct,\n makerPositionSizeBefore: NonNegativeDecimalStringStruct,\n takerPositionSignChanged: optional(boolean()),\n makerPositionSignChanged: optional(boolean()),\n});\n\nconst ResponseStructs = {\n orderBooks: type({\n ...BaseResponseStruct.schema,\n orderBooks: array(MarketStruct),\n }),\n orderBookDetails: type({\n ...BaseResponseStruct.schema,\n orderBookDetails: array(MarketDetailStruct),\n }),\n account: type({\n ...BaseResponseStruct.schema,\n accounts: array(AccountStruct),\n }),\n accountsByAddress: type({\n ...BaseResponseStruct.schema,\n l1Address: string(),\n subAccounts: array(AccountSummaryStruct),\n }),\n apiKeys: type({\n ...BaseResponseStruct.schema,\n apiKeys: array(\n type({\n accountIndex: NonNegativeIntegerStruct,\n apiKeyIndex: NonNegativeIntegerStruct,\n nonce: NonNegativeIntegerStruct,\n publicKey: string(),\n }),\n ),\n }),\n nextNonce: type({\n ...BaseResponseStruct.schema,\n nonce: NonNegativeIntegerStruct,\n }),\n transaction: type({\n ...BaseResponseStruct.schema,\n hash: string(),\n accountIndex: NonNegativeIntegerStruct,\n apiKeyIndex: NonNegativeIntegerStruct,\n nonce: NonNegativeIntegerStruct,\n status: SafeIntegerStruct,\n }),\n sendTransaction: type({\n ...BaseResponseStruct.schema,\n txHash: string(),\n }),\n activeOrders: type({\n ...BaseResponseStruct.schema,\n orders: array(OrderStruct),\n }),\n inactiveOrders: type({\n ...BaseResponseStruct.schema,\n nextCursor: optional(string()),\n orders: array(OrderStruct),\n }),\n deposits: type({\n ...BaseResponseStruct.schema,\n deposits: array(\n type({\n id: string(),\n assetId: NonNegativeIntegerStruct,\n amount: PositiveDecimalStringStruct,\n timestamp: NonNegativeIntegerStruct,\n status: string(),\n l1TxHash: string(),\n }),\n ),\n cursor: optional(string()),\n }),\n withdrawals: type({\n ...BaseResponseStruct.schema,\n withdraws: array(\n type({\n id: string(),\n assetId: NonNegativeIntegerStruct,\n amount: PositiveDecimalStringStruct,\n timestamp: NonNegativeIntegerStruct,\n status: string(),\n type: string(),\n l1TxHash: string(),\n }),\n ),\n cursor: optional(string()),\n }),\n transfers: type({\n ...BaseResponseStruct.schema,\n transfers: array(\n type({\n id: string(),\n assetId: NonNegativeIntegerStruct,\n amount: PositiveDecimalStringStruct,\n fee: NonNegativeDecimalStringStruct,\n timestamp: NonNegativeIntegerStruct,\n type: TransferTypeStruct,\n fromL1Address: string(),\n toL1Address: string(),\n fromAccountIndex: NonNegativeIntegerStruct,\n toAccountIndex: NonNegativeIntegerStruct,\n txHash: string(),\n }),\n ),\n cursor: optional(string()),\n }),\n trades: type({\n ...BaseResponseStruct.schema,\n nextCursor: optional(string()),\n trades: array(TradeStruct),\n }),\n fundings: type({\n ...BaseResponseStruct.schema,\n positionFundings: array(\n type({\n timestamp: NonNegativeIntegerStruct,\n marketId: NonNegativeIntegerStruct,\n fundingId: NonNegativeIntegerStruct,\n change: SignedDecimalStringStruct,\n rate: SignedDecimalStringStruct,\n positionSize: NonNegativeDecimalStringStruct,\n positionSide: string(),\n }),\n ),\n }),\n pnl: type({\n ...BaseResponseStruct.schema,\n resolution: optional(string()),\n pnl: optional(\n array(\n type({\n timestamp: NonNegativeIntegerStruct,\n tradePnl: FiniteNumberStruct,\n inflow: FiniteNumberStruct,\n outflow: FiniteNumberStruct,\n volume: FiniteNumberStruct,\n }),\n ),\n ),\n }),\n candles: type({\n ...BaseResponseStruct.schema,\n r: optional(string()),\n c: optional(\n array(\n type({\n t: NonNegativeIntegerStruct,\n o: FiniteNumberStruct,\n h: FiniteNumberStruct,\n l: FiniteNumberStruct,\n c: FiniteNumberStruct,\n v: FiniteNumberStruct,\n }),\n ),\n ),\n }),\n} as const;\n\n/**\n * Convert a snake_case wire key to camelCase.\n *\n * @param key - Wire key (e.g. `min_base_amount`).\n * @returns camelCase key (e.g. `minBaseAmount`).\n */\nfunction toCamelKey(key: string): string {\n return key.replace(/_([a-z0-9])/gu, (_match, char: string) =>\n char.toUpperCase(),\n );\n}\n\n/**\n * Recursively convert all object keys from snake_case to camelCase.\n * The zkLighter wire format is snake_case; parsed shapes in this package\n * follow camelCase conventions (see types/lighter-types.ts).\n *\n * @param value - Parsed JSON value.\n * @returns The value with camelCase keys.\n */\nexport function convertKeysToCamelCase(value: unknown): unknown {\n if (Array.isArray(value)) {\n return value.map(convertKeysToCamelCase);\n }\n if (value !== null && typeof value === 'object') {\n return Object.fromEntries(\n Object.entries(value as Record<string, unknown>).map(([key, entry]) => [\n toCamelKey(key),\n convertKeysToCamelCase(entry),\n ]),\n );\n }\n return value;\n}\n\n/**\n * Error thrown for non-2xx HTTP responses or API-level error codes.\n */\nexport class LighterApiError extends Error {\n readonly code: number | undefined;\n\n constructor(message: string, code?: number) {\n super(message);\n this.name = 'LighterApiError';\n this.code = code;\n }\n}\n\n/**\n * REST client for the zkLighter API.\n */\nexport class LighterClientService {\n readonly #deps: PerpsPlatformDependencies;\n\n readonly #isTestnet: boolean;\n\n #marketsCache: LighterOrderBookMeta[] | null = null;\n\n #marketsCacheTime = 0;\n\n constructor(deps: PerpsPlatformDependencies, config: { isTestnet: boolean }) {\n this.#deps = deps;\n this.#isTestnet = config.isTestnet;\n }\n\n get network(): LighterNetwork {\n return this.#isTestnet ? 'testnet' : 'mainnet';\n }\n\n get baseUrl(): string {\n return getLighterHttpEndpoint(this.network);\n }\n\n /**\n * Fetch market metadata, cached for 5 minutes.\n *\n * @param forceRefresh - Skip the cache and refetch.\n * @returns Market metadata entries.\n */\n async getOrderBooks(forceRefresh = false): Promise<LighterOrderBookMeta[]> {\n const now = Date.now();\n if (\n !forceRefresh &&\n this.#marketsCache &&\n now - this.#marketsCacheTime < MARKETS_CACHE_TTL_MS\n ) {\n return this.#marketsCache;\n }\n\n const response = await this.#get<LighterOrderBooksResponse>(\n '/api/v1/orderBooks',\n ResponseStructs.orderBooks,\n );\n this.#marketsCache = response.orderBooks;\n this.#marketsCacheTime = now;\n return response.orderBooks;\n }\n\n /**\n * Fetch market stats for all markets.\n *\n * @returns Order book details entries.\n */\n async getOrderBookDetails(): Promise<LighterOrderBookDetailsResponse> {\n return await this.#get<LighterOrderBookDetailsResponse>(\n '/api/v1/orderBookDetails',\n ResponseStructs.orderBookDetails,\n );\n }\n\n /**\n * Fetch an account (including positions) by its Lighter index.\n *\n * @param accountIndex - The Lighter account index.\n * @returns Account payload.\n */\n async getAccountByIndex(\n accountIndex: number,\n ): Promise<LighterAccountResponse> {\n return await this.#get<LighterAccountResponse>(\n `/api/v1/account?by=index&value=${accountIndex}`,\n ResponseStructs.account,\n );\n }\n\n /**\n * Discover Lighter accounts owned by an L1 address.\n *\n * @param l1Address - The owning EVM address.\n * @returns Accounts payload.\n */\n async getAccountsByL1Address(\n l1Address: string,\n ): Promise<LighterAccountsByL1AddressResponse> {\n return await this.#get<LighterAccountsByL1AddressResponse>(\n `/api/v1/accountsByL1Address?l1_address=${l1Address}`,\n ResponseStructs.accountsByAddress,\n );\n }\n\n /**\n * Fetch registered API keys for an account.\n *\n * @param accountIndex - The Lighter account index.\n * @param apiKeyIndex - Key slot, or 255 for all slots.\n * @returns API keys payload.\n */\n async getApiKeys(\n accountIndex: number,\n apiKeyIndex = 255,\n ): Promise<LighterApiKeysResponse> {\n return await this.#get<LighterApiKeysResponse>(\n `/api/v1/apikeys?account_index=${accountIndex}&api_key_index=${apiKeyIndex}`,\n ResponseStructs.apiKeys,\n );\n }\n\n /**\n * Fetch the next nonce for a key slot.\n *\n * @param accountIndex - The Lighter account index.\n * @param apiKeyIndex - Key slot.\n * @returns Next nonce payload.\n */\n async getNextNonce(\n accountIndex: number,\n apiKeyIndex: number,\n ): Promise<LighterNextNonceResponse> {\n return await this.#get<LighterNextNonceResponse>(\n `/api/v1/nextNonce?account_index=${accountIndex}&api_key_index=${apiKeyIndex}`,\n ResponseStructs.nextNonce,\n );\n }\n\n /**\n * Look up a transaction by its exact hash (`GET /api/v1/tx`). Used to\n * resolve submission-acceptance ambiguity authoritatively: an exact-hash\n * match proves the signed payload reached the sequencer.\n *\n * Contract: a venue-confirmed \"transaction not found\" (API error code\n * 21500) resolves to NULL; transport failures and every other API error\n * RETHROW — they are ambiguity, never evidence of non-acceptance.\n *\n * @param txHash - The signed transaction hash.\n * @returns The venue's transaction payload, or null when the venue\n * confirms the hash is unknown.\n */\n async getTx(txHash: string): Promise<LighterTxLookupResponse | null> {\n try {\n return await this.#get<LighterTxLookupResponse>(\n `/api/v1/tx?by=hash&value=${encodeURIComponent(txHash)}`,\n ResponseStructs.transaction,\n );\n } catch (error) {\n if (error instanceof LighterApiError && error.code === 21500) {\n return null;\n }\n throw error;\n }\n }\n\n /**\n * Fetch active (open) orders for an account.\n *\n * @param accountIndex - The Lighter account index.\n * @param authToken - Auth token minted by the signer (`_createAuthToken`).\n * @param marketId - Optional market filter (255 = all markets).\n * @returns Active orders payload.\n */\n async getActiveOrders(\n accountIndex: number,\n authToken: string,\n marketId = 255,\n ): Promise<LighterActiveOrdersResponse> {\n return await this.#get<LighterActiveOrdersResponse>(\n `/api/v1/accountActiveOrders?account_index=${accountIndex}&market_id=${marketId}`,\n ResponseStructs.activeOrders,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch historical (inactive) orders: filled and canceled lifecycle\n * states, newest first (auth token required).\n *\n * @param accountIndex - The Lighter account index.\n * @param authToken - Auth token minted by the signer.\n * @param limit - Maximum entries per page.\n * @param cursor - Pagination cursor from a previous page's `nextCursor`.\n * @param marketId - Optional market filter (official `market_id` query\n * param) — sharply bounds history scans to one symbol.\n * @returns Inactive orders payload.\n */\n async getInactiveOrders(\n accountIndex: number,\n authToken: string,\n limit = 50,\n cursor?: string,\n marketId?: number,\n ): Promise<LighterInactiveOrdersResponse> {\n return await this.#get<LighterInactiveOrdersResponse>(\n `/api/v1/accountInactiveOrders?account_index=${accountIndex}&limit=${limit}${\n cursor === undefined ? '' : `&cursor=${encodeURIComponent(cursor)}`\n }${marketId === undefined ? '' : `&market_id=${marketId}`}`,\n ResponseStructs.inactiveOrders,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch L1→L2 deposit history (auth token required). The venue requires\n * both the account index and its L1 address on this endpoint.\n *\n * @param accountIndex - The Lighter account index.\n * @param l1Address - The account's L1 address.\n * @param authToken - Auth token minted by the signer.\n * @returns Deposit history payload (newest first, cursor-paged).\n */\n async getDepositHistory(\n accountIndex: number,\n l1Address: string,\n authToken: string,\n ): Promise<LighterDepositHistoryResponse> {\n return await this.#get<LighterDepositHistoryResponse>(\n `/api/v1/deposit/history?account_index=${accountIndex}&l1_address=${l1Address}`,\n ResponseStructs.deposits,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch L2→L1 withdrawal history (auth token required).\n *\n * @param accountIndex - The Lighter account index.\n * @param authToken - Auth token minted by the signer.\n * @returns Withdrawal history payload (newest first, cursor-paged).\n */\n async getWithdrawHistory(\n accountIndex: number,\n authToken: string,\n ): Promise<LighterWithdrawHistoryResponse> {\n return await this.#get<LighterWithdrawHistoryResponse>(\n `/api/v1/withdraw/history?account_index=${accountIndex}`,\n ResponseStructs.withdrawals,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch L2 transfer history (auth token required).\n *\n * @param accountIndex - The Lighter account index.\n * @param authToken - Auth token minted by the signer.\n * @returns Transfer history payload (newest first, cursor-paged).\n */\n async getTransferHistory(\n accountIndex: number,\n authToken: string,\n ): Promise<LighterTransferHistoryResponse> {\n return await this.#get<LighterTransferHistoryResponse>(\n `/api/v1/transfer/history?account_index=${accountIndex}`,\n ResponseStructs.transfers,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch account trade history (auth token required).\n *\n * @param accountIndex - The Lighter account index.\n * @param authToken - Auth token minted by the signer.\n * @param query - Pagination, range, and market filters.\n * @returns Trades payload (newest first).\n */\n async getTrades(\n accountIndex: number,\n authToken: string,\n query: LighterTradesQuery,\n ): Promise<LighterTradesResponse> {\n const { limit, cursor, from, marketId } = query;\n return await this.#get<LighterTradesResponse>(\n `/api/v1/trades?sort_by=timestamp&sort_dir=desc&limit=${limit}&account_index=${accountIndex}&market_type=perp${\n cursor === undefined ? '' : `&cursor=${encodeURIComponent(cursor)}`\n }${from === undefined ? '' : `&from=${from}`}${\n marketId === undefined ? '' : `&market_id=${marketId}`\n }`,\n ResponseStructs.trades,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch user funding payment history (auth token required).\n *\n * @param accountIndex - The Lighter account index.\n * @param authToken - Auth token minted by the signer.\n * @param limit - Max entries.\n * @returns Position fundings payload.\n */\n async getPositionFundings(\n accountIndex: number,\n authToken: string,\n limit = 50,\n ): Promise<LighterPositionFundingsResponse> {\n return await this.#get<LighterPositionFundingsResponse>(\n `/api/v1/positionFunding?account_index=${accountIndex}&market_id=255&limit=${limit}&sort_by=timestamp&side=all`,\n ResponseStructs.fundings,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch account PnL history (auth token required).\n *\n * @param accountIndex - The Lighter account index.\n * @param authToken - Auth token minted by the signer.\n * @param startTimestamp - Range start (ms).\n * @param endTimestamp - Range end (ms).\n * @param countBack - Records counted back from range end.\n * @returns PnL payload.\n */\n async getPnl(\n accountIndex: number,\n authToken: string,\n startTimestamp: number,\n endTimestamp: number,\n countBack: number,\n ): Promise<LighterPnlResponse> {\n return await this.#get<LighterPnlResponse>(\n `/api/v1/pnl?by=index&value=${accountIndex}&resolution=1d&count_back=${countBack}&start_timestamp=${startTimestamp}&end_timestamp=${endTimestamp}`,\n ResponseStructs.pnl,\n { authorization: authToken },\n );\n }\n\n /**\n * Fetch an OHLCV candle series for a market.\n *\n * @param marketId - Numeric Lighter market id.\n * @param resolution - Candle resolution (e.g. `1m`, `15m`, `1h`, `1d`).\n * @param startTimestamp - Range start (ms).\n * @param endTimestamp - Range end (ms).\n * @param countBack - Number of candles counted back from the range end.\n * @returns Candle series payload.\n */\n async getCandles(\n marketId: number,\n resolution: string,\n startTimestamp: number,\n endTimestamp: number,\n countBack: number,\n ): Promise<LighterCandlesResponse> {\n return await this.#get<LighterCandlesResponse>(\n `/api/v1/candles?market_id=${marketId}&resolution=${resolution}&start_timestamp=${startTimestamp}&end_timestamp=${endTimestamp}&count_back=${countBack}`,\n ResponseStructs.candles,\n );\n }\n\n /**\n * Submit a signed L2 transaction.\n *\n * @param txType - L2 transaction type code (see lighterConfig).\n * @param txInfo - Serialized signed transaction JSON.\n * @returns Send result payload.\n */\n async sendTx(txType: number, txInfo: string): Promise<LighterSendTxResponse> {\n const body = new URLSearchParams({\n tx_type: String(txType),\n tx_info: txInfo,\n });\n\n const response = await this.#request<LighterSendTxResponse>(\n '/api/v1/sendTx',\n {\n method: 'POST',\n headers: { 'content-type': 'application/x-www-form-urlencoded' },\n body: body.toString(),\n },\n ResponseStructs.sendTransaction,\n );\n return response;\n }\n\n readonly #get = async <Result extends { code: number; message?: string }>(\n path: string,\n responseStruct: Struct<Result, unknown>,\n headers?: Record<string, string>,\n ): Promise<Result> => {\n return await this.#request<Result>(\n path,\n { method: 'GET', headers },\n responseStruct,\n );\n };\n\n readonly #request = async <Result extends { code: number; message?: string }>(\n path: string,\n init: { method: string; headers?: Record<string, string>; body?: string },\n responseStruct: Struct<Result, unknown>,\n ): Promise<Result> => {\n const url = `${this.baseUrl}${path}`;\n const controller = new AbortController();\n const timeout = setTimeout(\n () => controller.abort(),\n LIGHTER_HTTP_TIMEOUT_MS,\n );\n\n try {\n const response = await fetch(url, {\n method: init.method,\n headers: init.headers,\n body: init.body,\n signal: controller.signal,\n });\n\n const payload: unknown = convertKeysToCamelCase(await response.json());\n assert(payload, BaseResponseStruct);\n\n // Lighter returns HTTP 200 with an application-level error code, and\n // 4xx/5xx with `{code, message}` bodies — treat both uniformly.\n if (!response.ok || payload.code !== 200) {\n throw new LighterApiError(\n payload.message ?? `Lighter API error (HTTP ${response.status})`,\n payload.code ?? response.status,\n );\n }\n try {\n assert(payload, responseStruct);\n } catch (error) {\n throw new LighterApiError(\n `${LIGHTER_DATA_INTEGRITY_PREFIX} response for ${path}: ${\n error instanceof Error ? error.message : String(error)\n }`,\n );\n }\n return payload;\n } catch (error) {\n if (error instanceof LighterApiError) {\n throw error;\n }\n this.#deps.debugLogger?.log?.('LighterClientService request failed', {\n url,\n error,\n });\n throw new LighterApiError(\n error instanceof Error ? error.message : String(error),\n );\n } finally {\n clearTimeout(timeout);\n }\n };\n}\n"]}
@@ -998,7 +998,8 @@ export type OrderFill = {
998
998
  side: string;
999
999
  size: string;
1000
1000
  price: string;
1001
- pnl: string;
1001
+ /** Realized PnL reported by the venue; absent means unknown, never zero. */
1002
+ pnl?: string;
1002
1003
  direction: string;
1003
1004
  fee: string;
1004
1005
  feeToken: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,WAAW,EACX,GAAG,EACJ,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAE1B;;;;GAIG;AACH,oBAAY,wBAAwB;IAClC,YAAY,iBAAiB;IAC7B,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,aAAa,kBAAkB;CAChC;AAED,2FAA2F;AAC3F,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH,CAAC;AAGF,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,SAAS,GAAG,YAAY,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC3C,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC;CACH,CAAC;AAGF,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B,CAAC;AAGF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB,aAAa,CAAC,EAAE;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH,CAAC;AAGF,oBAAY,cAAc;IACxB,cAAc,WAAW;IACzB,KAAK,UAAU;IACf,MAAM,YAAY;IAClB,KAAK,UAAU;IACf,GAAG,QAAQ;IACX,SAAS,cAAc;IACvB,KAAK,UAAU;IACf,QAAQ,aAAa;CACtB;AAED,MAAM,MAAM,UAAU,GAAG,GAAG,cAAc,EAAE,CAAC;AAE7C;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAGF,MAAM,MAAM,gBAAgB,GACxB,KAAK,GACL,QAAQ,GACR,UAAU,GACV,OAAO,GACP,SAAS,GACT,OAAO,GACP,KAAK,GACL,WAAW,GACX,OAAO,GACP,KAAK,CAAC;AAEV;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB,kFASS,CAAC;AAGxC,MAAM,MAAM,WAAW,GACnB,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,YAAY,GACZ,KAAK,CAAC;AAIV,MAAM,MAAM,WAAW,GACnB,iBAAiB,GACjB,mBAAmB,GACnB,oBAAoB,GACpB,oBAAoB,CAAC;AAIzB,MAAM,MAAM,YAAY,GAAG;IAEzB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;IAGzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,WAAW,CAAC,EAAE,WAAW,CAAC;IAG1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,YAAY,CAAC,EAAE,MAAM,CAAC;IAItB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAI7B,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAG9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CAAC;AAGF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,iDAAiD;AACjD,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,OAAO,CAAC;AAG9C,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;IAGpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAIlB,YAAY,CAAC,EAAE,MAAM,CAAC;IAMtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAG7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,IAAI,GAAG,YAAY,GAAG,cAAc,CAAC;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAGlC,YAAY,CAAC,EAAE,YAAY,CAAC;IAG5B,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,eAAe,GACvB;IACE,KAAK,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;CACjB,GACD;IACE,KAAK,EAAE,gBAAgB,GAAG,mBAAmB,CAAC;IAC9C,OAAO,CAAC,EAAE,KAAK,CAAC;CACjB,CAAC;AAEN,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IAIpB,aAAa,CAAC,EAAE,MAAM,CAAC;IAIvB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAInC,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IAgBrC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B;;;;;OAKG;IACH,YAAY,CAAC,EAAE;QACb,iEAAiE;QACjE,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,WAAW,EAAE,SAAS,GAAG,QAAQ,CAAC;IAClC,oEAAoE;IACpE,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,oDAAoD;IACpD,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,8CAA8C;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC5C,2EAA2E;IAC3E,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAC1B,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,OAAO,kBAAkB,CAAC,CAAC;AAE/D,MAAM,MAAM,eAAe,GACvB,QAAQ,GACR,WAAW,GACX,uBAAuB,GACvB,UAAU,GACV,QAAQ,CAAC;AAEb,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,oEAAoE;AACpE,MAAM,MAAM,SAAS,GAAG;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,uBAAuB,EAAE,MAAM,CAAC;IAChC,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,gFAAgF;IAChF,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,gBAAgB,CAAC;IACzB,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,6EAA6E;AAC7E,MAAM,MAAM,4BAA4B,GAAG;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,iBAAiB,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE;QACR,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE;QAEjB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IAItB,gBAAgB,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAC1C,cAAc,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACxC,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AAGF,MAAM,MAAM,YAAY,GAAG;IACzB;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB;;;;;;;;OAQG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB;;;;;;;;;;;OAWG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAC1B,MAAM,EACN;QACE,gBAAgB,EAAE,MAAM,CAAC;QACzB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,YAAY,EAAE,MAAM,CAAC;KACtB,CACF,CAAC;IACF,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,YAAY,CAAC,EAAE,YAAY,CAAC;IAG5B,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAE/B;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,EAAE,CAAC;CACL,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,QAAQ,CAAC;IAGnB,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAC1C,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B;;;;;OAKG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,mFAAmF;IACnF,UAAU,CAAC,EAAE,+BAA+B,CAAC;IAC7C,4DAA4D;IAC5D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,gFAAgF;IAChF,KAAK,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;IAC/C;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE,WAAW,CAAC;IACrB,OAAO,EAAE,WAAW,CAAC;IACrB,eAAe,EAAE,GAAG,CAAC;IACrB,WAAW,CAAC,EAAE;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,IAAI,CAAC,EAAE;YACL,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,KAAK,CAAC,EAAE,MAAM,CAAC;SAChB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,uBAAuB,CAAC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAE/B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB,EAAE,CAAC;AAEJ,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,EAAE,CAAC;CACL,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,QAAQ,EAAE,WAAW,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,SAAS,CAAC,EAAE,GAAG,CAAC;CACjB,CAAC;AAEF,uFAAuF;AACvF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,gGAAgG;IAChG,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2GAA2G;IAC3G,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAGF,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,WAAW,GACX,UAAU,GACV,UAAU,GACV,YAAY,GACZ,SAAS,GACT,OAAO,CAAC;AAEZ,MAAM,MAAM,eAAe,GACvB,QAAQ,GACR,MAAM,GACN,QAAQ,GACR,aAAa,CAAC;AAElB,MAAM,MAAM,eAAe,GAAG;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;OAGG;IACH,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;IAClC;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;OAMG;IACH,4BAA4B,CAAC,EAAE,MAAM,EAAE,CAAC;IACxC;;;;;;OAMG;IACH,4BAA4B,CAAC,EAAE,MAAM,EAAE,CAAC;IAExC;;;;;;;OAOG;IACH,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,wBAAwB,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,+FAA+F;IAC/F,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,+FAA+F;IAC/F,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,yDAAyD;IACzD,iCAAiC,CAAC,EAAE,MAAM,CAAC;IAC3C,yDAAyD;IACzD,iCAAiC,CAAC,EAAE,MAAM,CAAC;IAC3C;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,CACf,OAAO,EAAE,iBAAiB,KACvB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IACtC;;;;;;;;;OASG;IACH,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,GAAG,KAAK,IAAI,CAAC;CAC3E,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,6DAA6D;IAC7D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wDAAwD;IACxD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gFAAgF;IAChF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,EAAE,mBAAmB,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,CAAC,EAAE,sBAAsB,CAAC;IACrC,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;;;;OAaG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE;QACZ,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,SAAS,CAAC,EAAE,aAAa,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,CAAC;IACpE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAGF,MAAM,MAAM,sBAAsB,GAAG;IACnC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE;QACR,QAAQ,EAAE,aAAa,CAAC;QACxB,OAAO,EAAE,SAAS,GAAG,SAAS,CAAC;QAC/B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,yBAAyB,CAAC,UAAU,CAAC,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACvE,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,6FAA6F;IAC7F,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,WAAW,CAAC;CACvB,CAAC;AAEF,4HAA4H;AAC5H,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAE3D,gCAAgC;AAChC,MAAM,MAAM,SAAS,GACjB,QAAQ,GACR,aAAa,GACb,aAAa,GACb,cAAc,CAAC;AAEnB,oCAAoC;AACpC,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,MAAM,CAAC;AAE3C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,6BAA6B,GAAG;IAC1C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,IAAI,CAAC;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC;IAC1C,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,UAAU,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7D,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,IAAI,CAAC;IACpC,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC;;;;;;;;;;;;;OAaG;IACH,QAAQ,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,UAAU,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAClE,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,EAAE,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACnC,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,QAAQ,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,oDAAoD;IACpD,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,oDAAoD;IACpD,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,2CAA2C;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,gBAAgB,EAAE,MAAM,CAAC;IACzB,mDAAmD;IACnD,QAAQ,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,kDAAkD;IAClD,MAAM,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACzB,6FAA6F;IAC7F,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACjB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,qDAAqD;IACrD,QAAQ,EAAE,CAAC,SAAS,EAAE,aAAa,KAAK,IAAI,CAAC;IAC7C,0BAA0B;IAC1B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,2BAA2B,GAAG,IAAI,CAC5C,QAAQ,EACN,QAAQ,GACR,MAAM,GACN,YAAY,GACZ,kBAAkB,GAClB,YAAY,GACZ,UAAU,GACV,eAAe,GACf,aAAa,GACb,YAAY,CACf,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,EAAE,2BAA2B,CAAC;IACtC,gCAAgC;IAChC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAC5B;IAAE,SAAS,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,SAAS,EAAE,KAAK,CAAA;CAAE,CAAC;AAEzB,MAAM,MAAM,yBAAyB,GAAG,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;AAEzE,MAAM,MAAM,4BAA4B,GAAG;IACzC,MAAM,EAAE,oBAAoB,CAAC;IAC7B,gBAAgB,EAAE,oBAAoB,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,yBAAyB,CAAC;IAChC,OAAO,EAAE,4BAA4B,CAAC;IACtC,SAAS,EAAE;QACT,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAC5B,mDAAmD;QACnD,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB;;;WAGG;QACH,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,oBAAoB,CAAC;QAC7B,gBAAgB,EAAE,oBAAoB,CAAC;KACxC,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,4BAA4B,CAAC;IACtC,8CAA8C;IAC9C,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,cAAc,GAAG,UAAU,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,2BAA2B,GACnC,yBAAyB,GACzB,gCAAgC,GAChC,8BAA8B,GAC9B,yBAAyB,CAAC;AAE9B,MAAM,MAAM,uBAAuB,GAAG;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACvC,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,6EAA6E;AAC7E,MAAM,MAAM,uBAAuB,GAAG;IACpC,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,uDAAuD;AACvD,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG,YAAY,CAAC;AAE7D,+DAA+D;AAC/D,MAAM,MAAM,+BAA+B,GACvC,sBAAsB,GACtB,oBAAoB,GACpB,uBAAuB,GACvB,iBAAiB,CAAC;AAEtB;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAC3B,QAAQ,CAAC;IACP,MAAM,EAAE,QAAQ,CAAC;IACjB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,oBAAoB,CAAC;CAC9B,CAAC,GACF,QAAQ,CAAC;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,UAAU,EAAE,iBAAiB,CAAA;CAAE,CAAC,GAC/D,QAAQ,CAAC;IACP,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,MAAM,EAAE,+BAA+B,CAAC;CACzC,CAAC,CAAC;AAEP,mEAAmE;AACnE,MAAM,MAAM,yBAAyB,GAAG;IACtC,mEAAmE;IACnE,MAAM,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,0EAA0E;AAC1E,MAAM,MAAM,gDAAgD,GACxD,sBAAsB,GACtB,gBAAgB,GAChB,kBAAkB,GAClB,6BAA6B,CAAC;AAElC,MAAM,MAAM,wCAAwC,GAChD,oBAAoB,GACpB,uBAAuB,GACvB,iBAAiB,CAAC;AAEtB,MAAM,MAAM,kCAAkC,GAC1C,gDAAgD,GAChD,wCAAwC,CAAC;AAE7C,KAAK,2BAA2B,GAAG,QAAQ,CAAC;IAC1C,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,mBAAmB,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAClD;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CAC9C,CAAC,CAAC;AAEH,MAAM,MAAM,+BAA+B,GACvC,2BAA2B,GAC3B,QAAQ,CAAC;IACP,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,MAAM,EAAE,gDAAgD,CAAC;CAC1D,CAAC,CAAC;AAEP,MAAM,MAAM,sBAAsB,GAC9B,2BAA2B,GAC3B,QAAQ,CAAC;IACP,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,MAAM,EAAE,kCAAkC,CAAC;CAC5C,CAAC,CAAC;AAEP,qEAAqE;AACrE,MAAM,MAAM,+CAA+C,GAAG,OAAO,CACnE,gDAAgD,EAChD,6BAA6B,CAC9B,CAAC;AAEF,uEAAuE;AACvE,MAAM,MAAM,iCAAiC,GACzC,+CAA+C,GAC/C,wCAAwC,CAAC;AAE7C,2DAA2D;AAC3D,MAAM,MAAM,qBAAqB,GAC7B,QAAQ,CAAC;IACP,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3B,CAAC,GACF,QAAQ,CAAC;IACP,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,MAAM,EAAE,iCAAiC,CAAC;CAC3C,CAAC,CAAC;AAEP,MAAM,MAAM,oBAAoB,GAAG;IAGjC,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAEjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAG3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;;;;;;OAQG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAGpC,SAAS,CAAC,EAAE;QACV,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IAEF;;;;;;;;;;OAUG;IACH,YAAY,CAAC,EAAE,gCAAgC,CAAC;CACjD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,WAAW,GAAG,WAAW,CAAC;AAE/D;;;;;;;GAOG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAC;IAEf,gEAAgE;IAChE,cAAc,CAAC,EAAE;QACf,sEAAsE;QACtE,QAAQ,EAAE,OAAO,CAAC;QAElB,2EAA2E;QAC3E,KAAK,CAAC,EAAE,sBAAsB,CAAC;QAE/B;;;WAGG;QACH,SAAS,CAAC,EAAE,OAAO,CAAC;QAEpB,oEAAoE;QACpE,oBAAoB,CAAC,EAAE,MAAM,CAAC;KAC/B,CAAC;CACH,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,gCAAgC,GAAG;IAC7C,qEAAqE;IACrE,QAAQ,EAAE,OAAO,CAAC;IAElB;;;;;;;;;;;OAWG;IACH,MAAM,EACF,UAAU,GACV,WAAW,GACX,cAAc,GACd,OAAO,GACP,iBAAiB,GACjB,UAAU,GACV,cAAc,GACd,WAAW,CAAC;IAEhB,+EAA+E;IAC/E,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,SAAS,GAAG,cAAc,CAAC;AAEpE;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC;IAEhB;;;;;OAKG;IACH,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IAEjC,4CAA4C;IAC5C,MAAM,EAAE,cAAc,CAAC;IAEvB,qEAAqE;IACrE,YAAY,EAAE,gCAAgC,CAAC;IAE/C;;;;;;OAMG;IACH,sBAAsB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE5C;;;OAGG;IACH,8BAA8B,CAAC,EAAE,MAAM,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IAKvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC7E,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IAIpB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,wEAAwE;IACxE,QAAQ,CAAC,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAE5C;;;OAGG;IACH,oBAAoB,CAAC,CACnB,MAAM,EAAE,0BAA0B,GACjC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAEnC;;;;;;;OAOG;IACH,iBAAiB,CAAC,CAChB,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAEhC;;;;;;OAMG;IACH,mBAAmB,CAAC,CAClB,MAAM,EAAE,yBAAyB,GAChC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAGlC,gBAAgB,CAAC,MAAM,CAAC,EAAE,uBAAuB,GAAG,UAAU,EAAE,CAAC;IACjE,mBAAmB,CAAC,MAAM,CAAC,EAAE,uBAAuB,GAAG,UAAU,EAAE,CAAC;IAGpE,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACtD,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACzD,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACnE,YAAY,CAAC,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC5E,aAAa,CAAC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IACvC;;;OAGG;IACH,qBAAqB,CAAC,CAAC,MAAM,EAAE,yBAAyB,GAAG,MAAM,IAAI,CAAC;IACtE,cAAc,CAAC,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IACzC,kBAAkB,CAAC,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAC7C,aAAa,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACjE,cAAc,CAAC,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC7E,kBAAkB,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC3E,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAIhE,0BAA0B,CAAC,IAAI,OAAO,CAAC,0BAA0B,EAAE,CAAC,CAAC;IACrE,sBAAsB,CAAC,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC;IAC7D,4BAA4B,CAAC,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,YAAY,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC/D,eAAe,CAAC,MAAM,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACvE,mBAAmB,CAAC,CAClB,MAAM,EAAE,yBAAyB,GAChC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAClC,UAAU,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAC7D,uBAAuB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IACtD,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAE1D,eAAe,CACb,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjD,aAAa,CACX,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjD,qBAAqB,CACnB,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjD,kBAAkB,CAChB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAGjD;;;;OAIG;IACH,aAAa,CACX,MAAM,CAAC,EAAE,mBAAmB,EAC5B,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAExB;;;;;;OAMG;IACH,eAAe,CAAC,MAAM,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAEtE;;;;;;OAMG;IACH,sBAAsB,CACpB,MAAM,CAAC,EAAE,4BAA4B,GACpC,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAEtC;;;;OAIG;IACH,SAAS,CACP,MAAM,CAAC,EAAE,eAAe,EACxB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAEpB;;;;;OAKG;IACH,aAAa,CAAC,MAAM,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAE1D;;;;OAIG;IACH,UAAU,CACR,MAAM,CAAC,EAAE,gBAAgB,EACzB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAEtB;;OAEG;IACH,8BAA8B,CAAC,MAAM,CAAC,EAAE;QACtC,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAE/B;;;;;;OAMG;IACH,mBAAmB,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IAE9C;;OAEG;IACH,cAAc,CAAC,MAAM,CAAC,EAAE;QACtB,SAAS,CAAC,EAAE,aAAa,CAAC;QAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAG/B,yBAAyB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3E,0BAA0B,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7E,cAAc,CACZ,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,iBAAiB,GAC7B,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,aAAa,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC3E;;;;;OAKG;IACH,qBAAqB,CACnB,MAAM,EAAE,2BAA2B,GAClC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAGxC,iBAAiB,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,IAAI,CAAC;IAC7D,oBAAoB,CAAC,MAAM,EAAE,wBAAwB,GAAG,MAAM,IAAI,CAAC;IACnE,qBAAqB,CAAC,MAAM,EAAE,yBAAyB,GAAG,MAAM,IAAI,CAAC;IACrE,iBAAiB,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,IAAI,CAAC;IAC7D,kBAAkB,CAAC,MAAM,EAAE,sBAAsB,GAAG,MAAM,IAAI,CAAC;IAC/D,iBAAiB,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,IAAI,CAAC;IAC7D,kBAAkB,CAAC,MAAM,EAAE,sBAAsB,GAAG,MAAM,IAAI,CAAC;IAC/D,oBAAoB,CAAC,MAAM,EAAE,wBAAwB,GAAG,MAAM,IAAI,CAAC;IAGnE,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC;IAGzD,aAAa,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC9C,UAAU,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACxC,cAAc,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC9C;;;;;OAKG;IACH,oBAAoB,CAAC,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACrD;;;OAGG;IACH,iBAAiB,CAAC,IAAI,IAAI,CAAC;IAC3B,UAAU,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACxC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,2BAA2B,CAAC,IAAI,wBAAwB,CAAC;IACzD,0BAA0B,CAAC,CACzB,QAAQ,EAAE,CACR,KAAK,EAAE,wBAAwB,EAC/B,mBAAmB,EAAE,MAAM,KACxB,IAAI,GACR,MAAM,IAAI,CAAC;IACd,SAAS,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAG5B,mBAAmB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAG9C;;;;;;;;;OASG;IACH,kBAAkB,CAAC,CAAC,UAAU,CAAC,EAAE,iBAAiB,GAAG,iBAAiB,CAAC;IAEvE,kBAAkB,CAAC,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IAE5D,oBAAoB,CAAC,CAAC,UAAU,EAAE,kBAAkB,GAAG,SAAS,GAAG,IAAI,CAAC;IACxE;;;;;;;OAOG;IACH,6BAA6B,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAGnD;;;;;OAKG;IACH,gBAAgB,CAAC,CAAC,MAAM,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAEtE;;;OAGG;IACH,sBAAsB,CAAC,CAAC,OAAO,EAAE;QAC/B,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,YAAY,CAAC;QACvB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CACzB,CAAC;AAMF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,SAAS,CAAC;AAE1D;;;;GAIG;AACH,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,GAAG,YAAY,CAAC;AAEvE;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,QAAQ,GAAG,UAAU,CAAC;AAE5D;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,kBAAkB,CAAC;AAEjD;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,8CAA8C;IAC9C,SAAS,EAAE,GAAG,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;IACjD,0EAA0E;IAC1E,eAAe,EAAE,iBAAiB,CAAC;IACnC,4DAA4D;IAC5D,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,uDAAuD;IACvD,cAAc,EAAE,yBAAyB,CAAC;IAC1C,qEAAqE;IACrE,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,+CAA+C;IAC/C,UAAU,EAAE,iBAAiB,CAAC;IAC9B,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,2CAA2C;IAC3C,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,2CAA2C;IAC3C,KAAK,EAAE,YAAY,CAAC;IACpB,6BAA6B;IAC7B,UAAU,EAAE,GAAG,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;CAClD,CAAC;AAQF;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,CACH,KAAK,EAAE,KAAK,EACZ,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;QACvC,OAAO,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;QAC1D,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAClC,GACA,IAAI,CAAC;CACT,CAAC;AAEF;;;;;;GAMG;AACH,oBAAY,mBAAmB;IAC7B,qBAAqB,gCAAgC;IACrD,gBAAgB,2BAA2B;IAC3C,wBAAwB,oCAAoC;IAC5D,sBAAsB,kCAAkC;IACxD,YAAY,uBAAuB;IACnC,aAAa,wBAAwB;IACrC,cAAc,yBAAyB;IACvC,UAAU,eAAe;IACzB,YAAY,uBAAuB;IAGnC,qBAAqB,gCAAgC;IACrD,kBAAkB,8BAA8B;IAChD,WAAW,sBAAsB;IACjC,kBAAkB,8BAA8B;IAChD,eAAe,0BAA0B;CAC1C;AAED;;;;;;GAMG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,cAAc,GACtB,qBAAqB,GACrB,sBAAsB,GACtB,eAAe,GACf,gBAAgB,GAChB,mBAAmB,GACnB,kBAAkB,GAClB,oBAAoB,GACpB,oBAAoB,GACpB,qBAAqB,GACrB,qBAAqB,GACrB,0BAA0B,GAC1B,kBAAkB,GAClB,gBAAgB,GAChB,wBAAwB,GACxB,6BAA6B,GAC7B,0BAA0B,GAC1B,0BAA0B,GAC1B,uBAAuB,GACvB,2BAA2B,GAC3B,yBAAyB,GACzB,yBAAyB,GACzB,oBAAoB,GACpB,qBAAqB,GACrB,qBAAqB,GACrB,yBAAyB,GACzB,gCAAgC,GAChC,mBAAmB,GACnB,mCAAmC,GACnC,gCAAgC,GAChC,2BAA2B,GAC3B,8BAA8B,GAC9B,iCAAiC,GACjC,8BAA8B,GAC9B,+BAA+B,GAC/B,wBAAwB,GACxB,wBAAwB,GACxB,2BAA2B,GAC3B,qBAAqB,GACrB,gCAAgC,GAChC,mCAAmC,GACnC,2BAA2B,GAC3B,yBAAyB,CAAC;AAE9B;;;GAGG;AACH,eAAO,MAAM,eAAe;yBAEd,mBAAmB;wBACpB,kBAAkB;0BAChB,oBAAoB;4BAClB,sBAAsB;yBACzB,oBAAoB;2BAClB,qBAAqB;2BACrB,qBAAqB;uBAGzB,gBAAgB;sBACjB,eAAe;2BAGV,qBAAqB;8BAClB,yBAAyB;yBAC9B,mBAAmB;sCACN,mCAAmC;8BAC3C,yBAAyB;0BAC7B,oBAAoB;2BACnB,qBAAqB;qCACX,gCAAgC;qCAChC,gCAAgC;6BAGxC,wBAAwB;iCAGpB,2BAA2B;oCACxB,8BAA8B;sCAC5B,iCAAiC;mCACpC,8BAA8B;oCAC7B,+BAA+B;6BAGtC,wBAAwB;sCACf,gCAAgC;wCAC9B,mCAAmC;gCAC3C,2BAA2B;8BAC7B,yBAAyB;CACO,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,oBAAoB;aAC/B,SAAS,EAAE,iBAAiB;aAC5B,eAAe,EAAE,wBAAwB;aACzC,kBAAkB,EAAE,2BAA2B;aAC/C,UAAU,EAAE,mBAAmB;CACvB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAExD;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAC3C,MAAM,EACN,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,GAAG,SAAS,CACtE,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,IAAI,OAAO,CAAC;IAErB;;;;;;OAMG;IACH,eAAe,CACb,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,wBAAwB,GACnC,IAAI,CAAC;CACT,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;CAC/B,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,gBAAgB,IAAI,IAAI,CAAC;CAC1B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,IAAI,MAAM,CAAC;IACd;;;OAGG;IACH,uBAAuB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;CACzD,CAAC;AAEF,KAAK,mBAAmB,GAAG,CAAC,CAC1B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,KACT,IAAI,CAAC,GACR,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC;AAEpE;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,CAAC,MAAM,EAAE;QACZ,IAAI,EAAE,cAAc,CAAC;QACrB,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;KACxC,GAAG,IAAI,CAAC;IAET,QAAQ,CAAC,MAAM,EAAE;QACf,IAAI,EAAE,cAAc,CAAC;QACrB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;KACxC,GAAG,IAAI,CAAC;IAET,cAAc,EAAE,mBAAmB,CAAC;IAEpC,aAAa,CAAC,UAAU,EAAE;QACxB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;QAChE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAChC,GAAG,IAAI,CAAC;CACV,CAAC;AAMF;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,iBAAiB,EAAE,GAAG,CAAC;KACxB,CAAC;IACF,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC,CAAC;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAE1E;;;;;;;;OAQG;IACH,mBAAmB,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAEjE;;;OAGG;IACH,OAAO,CAAC,IAAI,OAAO,CAAC;IAEpB;;;;;OAKG;IACH,6BAA6B,CAAC,IAAI,OAAO,CAAC;CAC3C,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,2CAA2C;IAC3C,WAAW,EAAE,GAAG,CAAC;IACjB,oEAAoE;IACpE,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,iCAAiC;IACjC,OAAO,EAAE,GAAG,CAAC;IAEb;;;;;OAKG;IACH,aAAa,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;CAC7D,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACvC,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,2BAA2B,GAAG;IACxC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7C,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACvC,YAAY,IAAI,OAAO,CAAC;QACtB,OAAO,EAAE,UAAU,EAAE,CAAC;QACtB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;KAC9C,CAAC,CAAC;IACH,UAAU,IAAI,IAAI,CAAC;IACnB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/C,mBAAmB,CAAC,CAClB,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,yBAAyB,CAAC,CAAC;CACvC,CAAC;AAEF,4EAA4E;AAC5E,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,EAAE,aAAa,CAAC;IACxB,OAAO,EAAE,SAAS,GAAG,SAAS,CAAC;IAC/B,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC;AAEF,6DAA6D;AAC7D,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,yBAAyB,GAAG;IAEtC,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,EAAE,gBAAgB,CAAC;IAC9B,OAAO,EAAE,YAAY,CAAC;IACtB,WAAW,EAAE,gBAAgB,CAAC;IAC9B,MAAM,EAAE,WAAW,CAAC;IAGpB,aAAa,EAAE,kBAAkB,CAAC;IAGlC,YAAY,EAAE;QACZ;;;;;;;WAOG;QACH,oBAAoB,CAAC,IAAI,EAAE,uBAAuB,GAAG,OAAO,GAAG,SAAS,CAAC;KAC1E,CAAC;IAGF,oBAAoB,EAAE,oBAAoB,CAAC;IAG3C,gBAAgB,EAAE,qBAAqB,CAAC;IAGxC,SAAS,EAAE;QACT,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;QAC7C,WAAW,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;QACzC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACnD,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACxC,CAAC;IAGF,WAAW,CAAC,EAAE;QACZ,wEAAwE;QACxE,aAAa,CAAC,EAAE,MAAM,CAAC;QAEvB,wEAAwE;QACxE,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IAEF,mDAAmD;IACnD,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,0BAA0B,CAAC;IAGnD,OAAO,EAAE;QACP;;;;;;;;WAQG;QACH,0BAA0B,CACxB,aAAa,EAAE,GAAG,MAAM,IAAI,MAAM,IAAI,MAAM,EAAE,EAC9C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;KAC3B,CAAC;IAGF;;;;;;;;;;OAUG;IACH,YAAY,CAAC,EAAE;QACb;;;;;WAKG;QACH,gBAAgB,IAAI,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC,CAAC;QAE9D;;;;;;WAMG;QACH,sBAAsB,CAAC,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KAC/D,CAAC;IAGF;;;OAGG;IACH,aAAa,CAAC,EAAE,kBAAkB,CAAC;CACpC,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,cAAc,GAAG,SAAS,CAAC;AAEtE;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,sCAAsC;IACtC,SAAS,EAAE,cAAc,CAAC;CAC3B,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;OAGG;IACH,UAAU,CAAC,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAEhD;;OAEG;IACH,aAAa,IAAI,IAAI,CAAC;CACvB,CAAC;AAMF;;;;;;;GAOG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,sEAAsE;IACtE,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACpC,mEAAmE;IACnE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,GAAG,MAAM,CAAC;IACzE,uEAAuE;IACvE,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1C,sEAAsE;IACtE,oBAAoB,EAAE,OAAO,EAAE,CAAC;CACjC,CAAC;AAMF;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAMF;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,uBAAuB,CASlC;AAOD,mBAAmB,kBAAkB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AAEtC,YAAY,EACV,aAAa,EACb,WAAW,EACX,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,0BAA0B,EAC1B,8BAA8B,EAC9B,YAAY,EACZ,0BAA0B,EAC1B,eAAe,EACf,wBAAwB,EACxB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}