@kamino-finance/klend-sdk 5.1.0 → 5.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/README_KAMINO_MANAGER.md +24 -3
  2. package/dist/classes/manager.d.ts +62 -2
  3. package/dist/classes/manager.d.ts.map +1 -1
  4. package/dist/classes/manager.js +76 -0
  5. package/dist/classes/manager.js.map +1 -1
  6. package/dist/classes/vault.d.ts +74 -5
  7. package/dist/classes/vault.d.ts.map +1 -1
  8. package/dist/classes/vault.js +134 -6
  9. package/dist/classes/vault.js.map +1 -1
  10. package/dist/client_kamino_manager.d.ts.map +1 -1
  11. package/dist/client_kamino_manager.js +6 -0
  12. package/dist/client_kamino_manager.js.map +1 -1
  13. package/dist/idl_codegen_kamino_vault/accounts/VaultState.d.ts +9 -3
  14. package/dist/idl_codegen_kamino_vault/accounts/VaultState.d.ts.map +1 -1
  15. package/dist/idl_codegen_kamino_vault/accounts/VaultState.js +42 -32
  16. package/dist/idl_codegen_kamino_vault/accounts/VaultState.js.map +1 -1
  17. package/dist/idl_codegen_kamino_vault/types/VaultConfigField.d.ts +10 -10
  18. package/dist/idl_codegen_kamino_vault/types/VaultConfigField.d.ts.map +1 -1
  19. package/dist/idl_codegen_kamino_vault/types/VaultConfigField.js +51 -52
  20. package/dist/idl_codegen_kamino_vault/types/VaultConfigField.js.map +1 -1
  21. package/dist/idl_codegen_kamino_vault/types/WithdrawalCaps.d.ts +2 -2
  22. package/dist/idl_codegen_kamino_vault/types/WithdrawalCaps.d.ts.map +1 -1
  23. package/dist/idl_codegen_kamino_vault/types/WithdrawalCaps.js +4 -4
  24. package/dist/idl_codegen_kamino_vault/types/WithdrawalCaps.js.map +1 -1
  25. package/dist/lib.d.ts +3 -0
  26. package/dist/lib.d.ts.map +1 -1
  27. package/dist/lib.js +4 -0
  28. package/dist/lib.js.map +1 -1
  29. package/dist/utils/rpc.js +2 -2
  30. package/dist/utils/rpc.js.map +1 -1
  31. package/package.json +3 -2
  32. package/src/classes/manager.ts +110 -1
  33. package/src/classes/vault.ts +204 -7
  34. package/src/client_kamino_manager.ts +8 -0
  35. package/src/idl_codegen_kamino_vault/accounts/VaultState.ts +178 -175
  36. package/src/idl_codegen_kamino_vault/types/VaultConfigField.ts +117 -116
  37. package/src/idl_codegen_kamino_vault/types/WithdrawalCaps.ts +30 -30
  38. package/src/lib.ts +6 -0
  39. package/src/utils/rpc.ts +2 -2
@@ -14,7 +14,7 @@ yarn
14
14
 
15
15
  #### Requirements
16
16
 
17
- In order to use the CLI, the followign `.env` configuration is required:
17
+ In order to use the CLI, the followign `.env` configuration is required (i.e. you need to create a `.env` file in the root of the project with the content below but replace the values of ADMIN and RPC with your own):
18
18
 
19
19
  ```
20
20
  ADMIN="admin.json"
@@ -25,6 +25,16 @@ KLEND_PROGRAM_ID_STAGING="SLendK7ySfcEzyaFqy93gDnD3RtrpXJcnRwb6zFHJSh"
25
25
  KVAULT_PROGRAM_ID_STAGING="STkvh7ostar39Fwr4uZKASs1RNNuYMFMTsE77FiRsL2"
26
26
  ```
27
27
 
28
+ - for the template you can copy `.env.example` to `.env` and then replace the ADMIN and RPC values `cp .env.example .env`
29
+
30
+ - **ADMIN** - path to a local private key file (it has to be a JSON file and have some SOL). If you don't have one create one. To create it you need to have Solana locally
31
+ - Install Solana: guide: https://docs.solanalabs.com/cli/install or directly `sh -c "$(curl -sSfL https://release.solana.com/v1.18.18/install)"`. If it suggests a command involving `PATH` after installation, run it.
32
+ - Restart the terminal you are using
33
+ - Create new keypair: `solana-keygen new -o admin.json`
34
+ - Get the pubkey: `solana-keygen pubkey admin.json`
35
+ - Send some SOL to it
36
+ - **RPC** - the RPC url to use; If you don't have one you can use the default Solana one `https://api.mainnet-beta.solana.com` but it is strongly recommended to use a private one as this one is rate limited and has low success rate for landing transactions
37
+
28
38
  ### Kamino Lending
29
39
 
30
40
  #### Create a new market
@@ -45,11 +55,11 @@ yarn kamino-manager create-market --staging --mode execute
45
55
  #### Add a new asset to market / Create new reserve
46
56
 
47
57
  ```
48
- yarn kamino-manager add-asset-to-market --market market_address --mint token_mint --mint-program-id TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA --reserve-config-path ./configs/reserve_config_example.json --staging --mode execute
58
+ yarn kamino-manager add-asset-to-market --market market_address --mint <token_mint> --mint-program-id TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA --reserve-config-path ./configs/reserve_config_example.json --staging --mode execute
49
59
  ```
50
60
 
51
61
  - **market** - address to create the reserve for
52
- - **mint** - the liquidity mint to create the reserve for
62
+ - **mint** - the liquidity mint to create the reserve for; e.g. if you want to create a reserve for USDC use the USDC mint `EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v`
53
63
  - **mint-program-id** - the program id of the mint - `TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA` - spl token program `TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb` - for token 2022 token program
54
64
  - **reserve-config-path** - path to the reserve config to be used. A reserve config example can be found [here](https://github.com/Kamino-Finance/klend-sdk/blob/master/configs/reserve_config_example.json)
55
65
  - **mode** - can have these values:
@@ -349,3 +359,14 @@ To have a strategy under multisig you can:
349
359
  ### Managing a vault under a multisig
350
360
 
351
361
  For all actions that require admin permissions (updating reserves allocation, setting the performance and management fee, collect pending fees, give up fees) at the commands above you will need to add the `--multisig <multisig_pubkey>` flag and the command will return the base58 transaction to be proposed in the multisig.
362
+
363
+
364
+ ## Troubleshooting
365
+
366
+ ### Debugging transactions
367
+
368
+ #### Common error messages
369
+ - `Transaction failed: Error processing Instruction 0: custom program error: 0x1`: you don't have enough SOL in the admin wallet to pay for the transaction fees; you can check the transaction hash to see exactly how much SOL was needed
370
+ - `TransactionExpiredBlockheightExceededError: Signature <signature_value> has expired: block height exceeded.`: this has multiple potential causes:
371
+ - the transaction was not submitted to the network in time because of the RPC/network being congested
372
+ - you are using the wrong signer for the transaction
@@ -1,8 +1,9 @@
1
1
  import { AccountInfo, Connection, Keypair, ParsedAccountData, PublicKey, TransactionInstruction } from '@solana/web3.js';
2
- import { KaminoVault, KaminoVaultClient, KaminoVaultConfig, ReserveAllocationConfig, VaultHolder } from './vault';
3
- import { AddAssetToMarketParams, CreateKaminoMarketParams, ENV, LendingMarket, MarketWithAddress, PubkeyHashMap, Reserve, ReserveWithAddress, ScopeOracleConfig } from '../lib';
2
+ import { KaminoVault, KaminoVaultClient, KaminoVaultConfig, ReserveAllocationConfig, ReserveOverview, VaultHolder, VaultHoldings, VaultHoldingsWithUSDValue } from './vault';
3
+ import { AddAssetToMarketParams, CreateKaminoMarketParams, ENV, KaminoReserve, LendingMarket, MarketWithAddress, PubkeyHashMap, Reserve, ReserveWithAddress, ScopeOracleConfig } from '../lib';
4
4
  import { ReserveConfig } from '../idl_codegen/types';
5
5
  import Decimal from 'decimal.js';
6
+ import { VaultState } from '../idl_codegen_kamino_vault/accounts';
6
7
  import { VaultConfigFieldKind } from '../idl_codegen_kamino_vault/types';
7
8
  /**
8
9
  * KaminoManager is a class that provides a high-level interface to interact with the Kamino Lend and Kamino Vault programs, in order to create and manage a market, as well as vaults
@@ -126,6 +127,14 @@ export declare class KaminoManager {
126
127
  * @returns - token per share value
127
128
  */
128
129
  getTokensPerShareSingleVault(vault: KaminoVault, slot: number): Promise<Decimal>;
130
+ /**
131
+ * This method calculates the price of one vault share(kToken)
132
+ * @param vault - vault to calculate sharePrice for
133
+ * @param slot - current slot, used to estimate the interest earned in the different reserves with allocation from the vault
134
+ * @param tokenPrice - the price of the vault token (e.g. SOL) in USD
135
+ * @returns - share value in USD
136
+ */
137
+ getSharePriceInUSD(vault: KaminoVault, slot: number, tokenPrice: Decimal): Promise<Decimal>;
129
138
  /**
130
139
  * This method returns the user shares balance for a given vault
131
140
  * @param user - user to calculate the shares balance for
@@ -178,6 +187,57 @@ export declare class KaminoManager {
178
187
  * @returns an array of all vault holders with their pubkeys and amounts
179
188
  */
180
189
  getVaultHolders: (vault: KaminoVault) => Promise<VaultHolder[]>;
190
+ /**
191
+ * This will return an VaultHoldings object which contains the amount available (uninvested) in vault, total amount invested in reseves and a breakdown of the amount invested in each reserve
192
+ * @param vault - the kamino vault to get available liquidity to withdraw for
193
+ * @param slot - current slot
194
+ * @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
195
+ * @returns an VaultHoldings object
196
+ */
197
+ getVaultHoldings(vault: VaultState, slot: number, vaultReserves?: PubkeyHashMap<PublicKey, KaminoReserve>): Promise<VaultHoldings>;
198
+ /**
199
+ * This will return an VaultHoldingsWithUSDValue object which contains an holdings field representing the amount available (uninvested) in vault, total amount invested in reseves and a breakdown of the amount invested in each reserve and additional fields for the total USD value of the available and invested amounts
200
+ * @param vault - the kamino vault to get available liquidity to withdraw for
201
+ * @param slot - current slot
202
+ * @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
203
+ * @param price - the price of the token in the vault (e.g. USDC)
204
+ * @returns an VaultHoldingsWithUSDValue object with details about the tokens available and invested in the vault, denominated in tokens and USD
205
+ */
206
+ getVaultHoldingsWithPrice(vault: VaultState, slot: number, price: Decimal, vaultReserves?: PubkeyHashMap<PublicKey, KaminoReserve>): Promise<VaultHoldingsWithUSDValue>;
207
+ /**
208
+ * This will return an overview of each reserve that is part of the vault allocation
209
+ * @param vault - the kamino vault to get available liquidity to withdraw for
210
+ * @param slot - current slot
211
+ * @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
212
+ * @returns a hashmap from vault reserve pubkey to ReserveOverview object
213
+ */
214
+ getVaultReservesDetails(vault: VaultState, slot: number, vaultReserves?: PubkeyHashMap<PublicKey, KaminoReserve>): Promise<PubkeyHashMap<PublicKey, ReserveOverview>>;
215
+ /**
216
+ * This will return the APY of the vault under the assumption that all the available tokens in the vault are all the time invested in the reserves
217
+ * @param vault - the kamino vault to get APY for
218
+ * @param slot - current slot
219
+ * @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
220
+ * @returns APY for the vault
221
+ */
222
+ getVaultTheoreticalAPY(vault: VaultState, slot: number, vaultReserves?: PubkeyHashMap<PublicKey, KaminoReserve>): Promise<Decimal>;
223
+ /**
224
+ * This will load the onchain state for all the reserves that the vault has allocations for
225
+ * @param vaultState - the vault state to load reserves for
226
+ * @returns a hashmap from each reserve pubkey to the reserve state
227
+ */
228
+ loadVaultReserves(vaultState: VaultState): Promise<PubkeyHashMap<PublicKey, KaminoReserve>>;
229
+ /**
230
+ * This will get the list of all reserve pubkeys that the vault has allocations for
231
+ * @param vaultState - the vault state to load reserves for
232
+ * @returns a hashmap from each reserve pubkey to the reserve state
233
+ */
234
+ getAllVaultReserves(vault: VaultState): PublicKey[];
235
+ /**
236
+ * This will load the onchain state for all the reserves that the vault has allocations for
237
+ * @param vaultState - the vault state to load reserves for
238
+ * @returns a hashmap from each reserve pubkey to the reserve state
239
+ */
240
+ getVaultReserves(vault: VaultState): PublicKey[];
181
241
  /**
182
242
  * This will trigger invest by balancing, based on weights, the reserve allocations of the vault. It can either withdraw or deposit into reserves to balance them. This is a function that should be cranked
183
243
  * @param kaminoVault - vault to invest from
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/classes/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/classes/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,UAAU,EACV,OAAO,EACP,iBAAiB,EACjB,SAAS,EAGT,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EAEjB,uBAAuB,EACvB,eAAe,EACf,WAAW,EACX,aAAa,EACb,yBAAyB,EAC1B,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EAGxB,GAAG,EAKH,aAAa,EACb,aAAa,EAEb,iBAAiB,EAGjB,aAAa,EACb,OAAO,EACP,kBAAkB,EAElB,iBAAiB,EAOlB,MAAM,QAAQ,CAAC;AAIhB,OAAO,EAAkB,aAAa,EAA2B,MAAM,sBAAsB,CAAC;AAC9F,OAAO,OAAO,MAAM,YAAY,CAAC;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAKlE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAEzE;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;IACzC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAY;IAClD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAY;IACjD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAoB;IACjD,oBAAoB,EAAE,MAAM,CAAC;gBAG3B,UAAU,EAAE,UAAU,EACtB,mBAAmB,CAAC,EAAE,SAAS,EAC/B,oBAAoB,CAAC,EAAE,SAAS,EAChC,oBAAoB,CAAC,EAAE,MAAM;IAc/B,aAAa;IAIb,YAAY;IAIZ;;;;;OAKG;IACG,eAAe,CACnB,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,sBAAsB,EAAE,CAAA;KAAE,CAAC;IAiC/D;;;;;;;OAOG;IACG,mBAAmB,CACvB,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,sBAAsB,EAAE,EAAE,CAAA;KAAE,CAAC;IAiCrE;;;;;OAKG;IACG,cAAc,CAAC,WAAW,EAAE,iBAAiB,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,sBAAsB,EAAE,CAAA;KAAE,CAAC;IAIjH;;;;;OAKG;IACG,+BAA+B,CACnC,KAAK,EAAE,WAAW,EAClB,uBAAuB,EAAE,uBAAuB,GAC/C,OAAO,CAAC,sBAAsB,CAAC;IAQlC;;;;OAIG;IACG,gBAAgB,CAAC,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC;IAQlE;;;;;;;;OAQG;IACG,wCAAwC,CAC5C,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,kBAAkB,EAC3B,iBAAiB,EAAE,iBAAiB,EACpC,eAAe,CAAC,EAAE,iBAAiB,EACnC,mBAAmB,GAAE,MAAW,GAC/B,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAkCpC;;;;;;;;OAQG;IACG,gBAAgB,CACpB,iBAAiB,EAAE,iBAAiB,EACpC,OAAO,EAAE,SAAS,EAClB,MAAM,EAAE,aAAa,EACrB,oBAAoB,CAAC,EAAE,OAAO,EAC9B,kBAAkB,GAAE,OAAe,GAClC,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAuBpC;;;;;;OAMG;IACG,iBAAiB,CACrB,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,WAAW,EAClB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAI9B,mBAAmB,CACvB,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,oBAAoB,EAC1B,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,sBAAsB,CAAC;IAIlC;;;;OAIG;IACG,sBAAsB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAIjF;;;;;OAKG;IACG,mBAAmB,CAAC,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,OAAO,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAI1G;;;;;;;OAOG;IACG,oBAAoB,CACxB,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,WAAW,EAClB,WAAW,EAAE,OAAO,EACpB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAIpC;;;;;OAKG;IACG,sBAAsB,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAIjG;;;;;OAKG;IACG,4BAA4B,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAItF;;;;;;OAMG;IACG,kBAAkB,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAKjG;;;;;OAKG;IACG,+BAA+B,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAI5F;;;;;OAKG;IACG,6BAA6B,CACjC,IAAI,EAAE,SAAS,EACf,cAAc,EAAE,WAAW,EAAE,GAC5B,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAI7C;;OAEG;IACH,oBAAoB,IAAI,iBAAiB;IAIzC;;;OAGG;IACG,YAAY,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAI5C;;;OAGG;IACG,oBAAoB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAwCpE;;;;OAIG;IACG,qBAAqB,CACzB,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,OAAO,EAAE,WAAW,CAAC,MAAM,GAAG,iBAAiB,CAAC,CAAA;KAAE,EAAE,CAAC;IASrF;;;;OAIG;IACG,qBAAqB,CACzB,KAAK,EAAE,WAAW,GACjB,OAAO,CAAC;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,OAAO,EAAE,WAAW,CAAC,MAAM,GAAG,iBAAiB,CAAC,CAAA;KAAE,EAAE,CAAC;IAKrF;;;;OAIG;IACH,eAAe,UAAiB,WAAW,KAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAYlE;IAEF;;;;;;OAMG;IACG,gBAAgB,CACpB,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,MAAM,EACZ,aAAa,CAAC,EAAE,aAAa,CAAC,SAAS,EAAE,aAAa,CAAC,GACtD,OAAO,CAAC,aAAa,CAAC;IAIzB;;;;;;;OAOG;IACG,yBAAyB,CAC7B,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,EACd,aAAa,CAAC,EAAE,aAAa,CAAC,SAAS,EAAE,aAAa,CAAC,GACtD,OAAO,CAAC,yBAAyB,CAAC;IAIrC;;;;;;OAMG;IACG,uBAAuB,CAC3B,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,MAAM,EACZ,aAAa,CAAC,EAAE,aAAa,CAAC,SAAS,EAAE,aAAa,CAAC,GACtD,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IAIrD;;;;;;OAMG;IACG,sBAAsB,CAC1B,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,MAAM,EACZ,aAAa,CAAC,EAAE,aAAa,CAAC,SAAS,EAAE,aAAa,CAAC,GACtD,OAAO,CAAC,OAAO,CAAC;IAInB;;;;OAIG;IACG,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IAIjG;;;;OAIG;IACH,mBAAmB,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,EAAE;IAInD;;;;OAIG;IACH,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,EAAE;IAIhD;;;;OAIG;IACG,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAItG;;;;;OAKG;IACG,mBAAmB,CACvB,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,WAAW,EACxB,kBAAkB,EAAE,kBAAkB,GACrC,OAAO,CAAC,sBAAsB,CAAC;IAIlC;;;;;OAKG;IACG,qBAAqB,CACzB,IAAI,GAAE,MAAiB,EACvB,OAAO,GAAE,GAAoB,GAC5B,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAoCpC;;;;;OAKG;IACH,sBAAsB,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,SAAS,EAAE,aAAa,GAAG,sBAAsB,EAAE;IAIhH;;;;;OAKG;IACH,2BAA2B,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,sBAAsB;CAQ1F"}
@@ -266,6 +266,17 @@ class KaminoManager {
266
266
  async getTokensPerShareSingleVault(vault, slot) {
267
267
  return this._vaultClient.getTokensPerShareSingleVault(vault, slot);
268
268
  }
269
+ /**
270
+ * This method calculates the price of one vault share(kToken)
271
+ * @param vault - vault to calculate sharePrice for
272
+ * @param slot - current slot, used to estimate the interest earned in the different reserves with allocation from the vault
273
+ * @param tokenPrice - the price of the vault token (e.g. SOL) in USD
274
+ * @returns - share value in USD
275
+ */
276
+ async getSharePriceInUSD(vault, slot, tokenPrice) {
277
+ const tokensPerShare = await this.getTokensPerShareSingleVault(vault, slot);
278
+ return tokensPerShare.mul(tokenPrice);
279
+ }
269
280
  /**
270
281
  * This method returns the user shares balance for a given vault
271
282
  * @param user - user to calculate the shares balance for
@@ -376,6 +387,71 @@ class KaminoManager {
376
387
  }
377
388
  return result;
378
389
  };
390
+ /**
391
+ * This will return an VaultHoldings object which contains the amount available (uninvested) in vault, total amount invested in reseves and a breakdown of the amount invested in each reserve
392
+ * @param vault - the kamino vault to get available liquidity to withdraw for
393
+ * @param slot - current slot
394
+ * @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
395
+ * @returns an VaultHoldings object
396
+ */
397
+ async getVaultHoldings(vault, slot, vaultReserves) {
398
+ return this._vaultClient.getVaultHoldings(vault, slot, vaultReserves);
399
+ }
400
+ /**
401
+ * This will return an VaultHoldingsWithUSDValue object which contains an holdings field representing the amount available (uninvested) in vault, total amount invested in reseves and a breakdown of the amount invested in each reserve and additional fields for the total USD value of the available and invested amounts
402
+ * @param vault - the kamino vault to get available liquidity to withdraw for
403
+ * @param slot - current slot
404
+ * @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
405
+ * @param price - the price of the token in the vault (e.g. USDC)
406
+ * @returns an VaultHoldingsWithUSDValue object with details about the tokens available and invested in the vault, denominated in tokens and USD
407
+ */
408
+ async getVaultHoldingsWithPrice(vault, slot, price, vaultReserves) {
409
+ return this._vaultClient.getVaultHoldingsWithPrice(vault, slot, price, vaultReserves);
410
+ }
411
+ /**
412
+ * This will return an overview of each reserve that is part of the vault allocation
413
+ * @param vault - the kamino vault to get available liquidity to withdraw for
414
+ * @param slot - current slot
415
+ * @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
416
+ * @returns a hashmap from vault reserve pubkey to ReserveOverview object
417
+ */
418
+ async getVaultReservesDetails(vault, slot, vaultReserves) {
419
+ return this._vaultClient.getVaultReservesDetails(vault, slot, vaultReserves);
420
+ }
421
+ /**
422
+ * This will return the APY of the vault under the assumption that all the available tokens in the vault are all the time invested in the reserves
423
+ * @param vault - the kamino vault to get APY for
424
+ * @param slot - current slot
425
+ * @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
426
+ * @returns APY for the vault
427
+ */
428
+ async getVaultTheoreticalAPY(vault, slot, vaultReserves) {
429
+ return this._vaultClient.getVaultTheoreticalAPY(vault, slot, vaultReserves);
430
+ }
431
+ /**
432
+ * This will load the onchain state for all the reserves that the vault has allocations for
433
+ * @param vaultState - the vault state to load reserves for
434
+ * @returns a hashmap from each reserve pubkey to the reserve state
435
+ */
436
+ async loadVaultReserves(vaultState) {
437
+ return this._vaultClient.loadVaultReserves(vaultState);
438
+ }
439
+ /**
440
+ * This will get the list of all reserve pubkeys that the vault has allocations for
441
+ * @param vaultState - the vault state to load reserves for
442
+ * @returns a hashmap from each reserve pubkey to the reserve state
443
+ */
444
+ getAllVaultReserves(vault) {
445
+ return this._vaultClient.getAllVaultReserves(vault);
446
+ }
447
+ /**
448
+ * This will load the onchain state for all the reserves that the vault has allocations for
449
+ * @param vaultState - the vault state to load reserves for
450
+ * @returns a hashmap from each reserve pubkey to the reserve state
451
+ */
452
+ getVaultReserves(vault) {
453
+ return this._vaultClient.getVaultReserves(vault);
454
+ }
379
455
  /**
380
456
  * This will trigger invest by balancing, based on weights, the reserve allocations of the vault. It can either withdraw or deposit into reserves to balance them. This is a function that should be cranked
381
457
  * @param kaminoVault - vault to invest from
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/classes/manager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CASyB;AACzB,mCAOiB;AACjB,gCA0BgB;AAChB,wDAAsD;AACtD,yDAA2E;AAC3E,kDAAuB;AACvB,gDAA8F;AAC9F,4DAAiC;AACjC,0DAA4C;AAC5C,mEAAkE;AAClE,iDAAqD;AAErD,gDAAwB;AACxB,sCAAkD;AAGlD;;GAEG;AACH,MAAa,aAAa;IACP,WAAW,CAAa;IACxB,qBAAqB,CAAY;IACjC,oBAAoB,CAAY;IAChC,YAAY,CAAoB;IACjD,oBAAoB,CAAS;IAE7B,YACE,UAAsB,EACtB,mBAA+B,EAC/B,oBAAgC,EAChC,oBAA6B;QAE7B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,qBAAqB,GAAG,oBAAoB,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,qBAAa,CAAC;QACzF,IAAI,CAAC,oBAAoB,GAAG,mBAAmB,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,sBAAU,CAAC;QACnF,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,qCAA+B,CAAC;QAC1G,IAAI,CAAC,YAAY,GAAG,IAAI,yBAAiB,CACvC,UAAU,EACV,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,oBAAoB,EACzB,IAAI,CAAC,oBAAoB,CAC1B,CAAC;IACJ,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,eAAe,CACnB,MAAgC;QAEhC,MAAM,aAAa,GAAG,iBAAO,CAAC,QAAQ,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,mBAAa,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;QAC3C,MAAM,CAAC,sBAAsB,EAAE,CAAC,CAAC,GAAG,IAAA,0BAAoB,EAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC7G,MAAM,gBAAgB,GAA6B,EAAE,CAAC;QAEtD,gBAAgB,CAAC,IAAI,CACnB,uBAAa,CAAC,aAAa,CAAC;YAC1B,UAAU,EAAE,MAAM,CAAC,KAAK;YACxB,gBAAgB,EAAE,aAAa,CAAC,SAAS;YACzC,QAAQ,EAAE,MAAM,IAAI,CAAC,WAAW,CAAC,iCAAiC,CAAC,IAAI,CAAC;YACxE,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,IAAI,CAAC,oBAAoB;SACrC,CAAC,CACH,CAAC;QAEF,MAAM,QAAQ,GAA8B;YAC1C,kBAAkB,EAAE,MAAM,CAAC,KAAK;YAChC,aAAa,EAAE,aAAa,CAAC,SAAS;YACtC,sBAAsB,EAAE,sBAAsB;YAC9C,aAAa,EAAE,uBAAa,CAAC,SAAS;YACtC,IAAI,EAAE,4BAAkB;SACzB,CAAC;QAEF,MAAM,IAAI,GAA0B;YAClC,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;SACjC,CAAC;QAEF,gBAAgB,CAAC,IAAI,CAAC,IAAA,uBAAiB,EAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAEpF,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;IAC3D,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,mBAAmB,CACvB,MAA8B;QAE9B,MAAM,MAAM,GAAG,MAAM,mBAAa,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC5G,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,iBAAiB,GAAsB,EAAE,OAAO,EAAE,MAAM,CAAC,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAE9F,MAAM,cAAc,GAAG,iBAAO,CAAC,QAAQ,EAAE,CAAC;QAE1C,MAAM,yBAAyB,GAAG,MAAM,IAAA,sBAAgB,EACtD,IAAI,CAAC,WAAW,EAChB,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,WAAW,CAAC,IAAI,EACvB,cAAc,CAAC,SAAS,EACxB,IAAI,CAAC,oBAAoB,CAC1B,CAAC;QAEF,MAAM,yBAAyB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAC3D,iBAAiB,EACjB,cAAc,CAAC,SAAS,EACxB,MAAM,CAAC,WAAW,CAAC,gBAAgB,EAAE,EACrC,SAAS,EACT,IAAI,CACL,CAAC;QAEF,MAAM,OAAO,GAA+B,EAAE,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACxC,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QAExC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;IAC9C,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,cAAc,CAAC,WAA8B;QACjD,OAAO,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,+BAA+B,CACnC,KAAkB,EAClB,uBAAgD;QAEhD,OAAO,IAAI,CAAC,YAAY,CAAC,0BAA0B,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC;IACtF,CAAC;IAED,0EAA0E;IAC1E,kDAAkD;IAClD,IAAI;IAEJ;;;;OAIG;IACH,KAAK,CAAC,gBAAgB,CAAC,OAAkB;QACvC,MAAM,YAAY,GAAG,MAAM,aAAO,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACpE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,YAAY,CAAC,MAAM,CAAC;IAC7B,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,wCAAwC,CAC5C,MAAyB,EACzB,OAA2B,EAC3B,iBAAoC,EACpC,eAAmC,EACnC,sBAA8B,EAAE;QAEhC,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;QAE3C,IAAI,WAAW,GAAG,mBAAO,CAAC;QAC1B,IAAI,eAAe,EAAE,CAAC;YACpB,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC;YAEvC,oEAAoE;YACpE,4DAA4D;YAC5D,IAAI;QACN,CAAC;QAED,MAAM,EAAE,kBAAkB,EAAE,GAAG,IAAA,6BAAuB,EAAC;YACrD,uBAAuB,EAAE,iBAAiB,CAAC,uBAAuB;YAClE,UAAU,EAAE,CAAC,iBAAiB,CAAC,QAAQ,CAAC;YACxC,cAAc,EAAE,CAAC,WAAW,CAAC;SAC9B,CAAC,CAAC;QAEH,MAAM,gBAAgB,GAAG,IAAI,qBAAa,CAAC;YACzC,GAAG,aAAa;YAChB,SAAS,EAAE;gBACT,GAAG,aAAa,CAAC,SAAS;gBAC1B,kBAAkB,EAAE,kBAAkB;gBACtC,wEAAwE;gBACxE,iBAAiB,EAAE,eAAe;oBAChC,CAAC,CAAC,IAAI,eAAE,CAAC,eAAe,CAAC,OAAO,GAAG,mBAAmB,CAAC;oBACvD,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,iBAAiB;gBAC7C,kBAAkB,EAAE,IAAI,eAAE,CAAC,iBAAiB,CAAC,OAAO,GAAG,mBAAmB,CAAC;aAC5E;SACF,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACzF,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,gBAAgB,CACpB,iBAAoC,EACpC,OAAkB,EAClB,MAAqB,EACrB,oBAA8B,EAC9B,qBAA8B,KAAK;QAEnC,MAAM,YAAY,GAAG,oBAAoB;YACvC,CAAC,CAAC,oBAAoB;YACtB,CAAC,CAAC,CAAC,MAAM,aAAO,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAE,CAAC;QACjF,MAAM,IAAI,GAA6B,EAAE,CAAC;QAE1C,IAAI,CAAC,YAAY,IAAI,kBAAkB,EAAE,CAAC;YACxC,IAAI,CAAC,IAAI,CAAC,IAAA,iCAA2B,EAAC,iBAAiB,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACxG,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CACP,GAAG,IAAA,2CAAqC,EACtC,iBAAiB,EACjB,YAAY,EACZ,OAAO,EACP,MAAM,EACN,IAAI,CAAC,oBAAoB,CAC1B,CACF,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,iBAAiB,CACrB,IAAe,EACf,KAAkB,EAClB,WAAoB;QAEpB,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,KAAkB,EAAE,IAA0B,EAAE,KAAa;QACrF,OAAO,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,sBAAsB,CAAC,KAAkB;QAC7C,OAAO,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CAAC,KAAkB,EAAE,iBAA0B;QACtE,OAAO,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;IACzE,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,oBAAoB,CACxB,IAAe,EACf,KAAkB,EAClB,WAAoB,EACpB,IAAY;QAEZ,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,sBAAsB,CAAC,KAAkB,EAAE,IAAY;QAC3D,OAAO,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,4BAA4B,CAAC,KAAkB,EAAE,IAAY;QACjE,OAAO,IAAI,CAAC,YAAY,CAAC,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACrE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,+BAA+B,CAAC,IAAe,EAAE,KAAkB;QACvE,OAAO,IAAI,CAAC,YAAY,CAAC,+BAA+B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,6BAA6B,CACjC,IAAe,EACf,cAA6B;QAE7B,OAAO,IAAI,CAAC,YAAY,CAAC,6BAA6B,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAC/E,CAAC;IAED;;OAEG;IACH,oBAAoB;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY;QAChB,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;IAC1C,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,oBAAoB,CAAC,KAAgB;QACzC,MAAM,OAAO,GAAG;YACd;gBACE,QAAQ,EAAE,qBAAU,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;aACrC;YACD;gBACE,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC;oBACT,KAAK,EAAE,cAAI,CAAC,MAAM,CAAC,qBAAU,CAAC,aAAa,CAAC;iBAC7C;aACF;YACD;gBACE,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC;oBACT,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE;iBACxB;aACF;SACF,CAAC;QAEF,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACvC,IAAA,wBAAkB,EAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,qBAAqB,EAAE;gBAC/D,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,WAAW;gBACtD,OAAO;aACR,CAAC;SACH,CAAC,CAAC;QAEH,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;YACtC,IAAI,WAAW,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,2BAA2B,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;YAC7F,CAAC;YAED,MAAM,kBAAkB,GAAG,qBAAU,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACvE,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,MAAM,KAAK,CAAC,2BAA2B,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;YAC/F,CAAC;YAED,OAAO,IAAI,mBAAW,CAAC,WAAW,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC7F,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,qBAAqB,CACzB,SAAoB;QAEpB,8HAA8H;QAC9H,0FAA0F;QAC1F,4HAA4H;QAC5H,OAAO,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAAC,4BAAgB,EAAE;YACjE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC;SACrF,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,qBAAqB,CACzB,KAAkB;QAElB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC3D,CAAC;IAED;;;;OAIG;IACH,eAAe,GAAG,KAAK,EAAE,KAAkB,EAA0B,EAAE;QACrE,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACvC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAkB,EAAE,CAAC;QACjC,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACzC,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,IAAY,CAAC;YACtD,MAAM,CAAC,IAAI,CAAC;gBACV,YAAY,EAAE,IAAI,mBAAS,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC1D,MAAM,EAAE,IAAI,oBAAO,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;aACxE,CAAC,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF;;;;OAIG;IACH,KAAK,CAAC,iBAAiB,CAAC,KAAgB,EAAE,WAAwB;QAChE,OAAO,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACpE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CACvB,KAAgB,EAChB,WAAwB,EACxB,kBAAsC;QAEtC,OAAO,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,KAAK,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;IAC1F,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,qBAAqB,CACzB,OAAe,QAAQ,EACvB,UAAe,cAAc;QAE7B,MAAM,kBAAkB,GAA6B,EAAE,CAAC;QAExD,MAAM,KAAK,GAAG,IAAI,iBAAK,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACnD,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,MAAM,CAAC,EAAE,UAAU,CAAC,GAAG,MAAM,KAAK,CAAC,oBAAoB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACxE,MAAM,cAAc,GAAG,MAAM,0BAAc,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;QAC/F,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;QAEzC,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;QAEpE,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,cAAc,CAAC,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YAC7E,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC3G,MAAM,UAAU,GAAG,IAAA,qBAAe,EAAC,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;gBAErE,kBAAkB,CAAC,IAAI,CAAC;oBACtB,uBAAuB,EAAE,UAAU,CAAC,YAAY;oBAChD,IAAI,EAAE,IAAI;oBACV,UAAU,EAAE,UAAU;oBACtB,QAAQ,EAAE,KAAK;oBACf,aAAa,EAAE,cAAc,CAAC,iBAAiB,CAAC,KAAK,CAAC;oBACtD,WAAW,EAAE,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC;oBACpD,YAAY,EAAE,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC;oBAC9C,OAAO,EAAE,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE;iBAC1E,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,sBAAsB,CAAC,iBAAoC,EAAE,SAAwB;QACnF,OAAO,oCAAoC,CAAC,iBAAiB,EAAE,SAAS,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACvG,CAAC;IAED;;;;;OAKG;IACH,2BAA2B,CAAC,iBAAoC;QAC9D,MAAM,QAAQ,GAAqC;YACjD,wBAAwB,EAAE,iBAAiB,CAAC,KAAK,CAAC,wBAAwB;YAC1E,aAAa,EAAE,iBAAiB,CAAC,OAAO;SACzC,CAAC;QAEF,OAAO,IAAA,8BAAwB,EAAC,QAAQ,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACvE,CAAC;CACF,CAAC,gBAAgB;AA5hBlB,sCA4hBC;AAED,SAAS,oCAAoC,CAC3C,iBAAoC,EACpC,SAAwB,EACxB,SAAoB;IAEpB,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC;IACvC,MAAM,2BAA2B,GAAsC,EAAE,CAAC;IAC1E,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QAClC,IAAI,GAAG,KAAK,oBAAoB,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBACpE,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,WAAW,CAAC,aAAa;oBACvD,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,WAAW,CAAC,aAAa,EACjD,SAAS,CAAC,kBAAkB,CAC7B;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,0BAA0B,EAAE,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,MAAM,CAAC,SAAS,CAAC,wBAAwB,CAAC,EAAE,CAAC;gBAChF,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,WAAW,CAAC,aAAa;oBACvD,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,WAAW,CAAC,aAAa,EACjD,SAAS,CAAC,wBAAwB,CACnC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,gBAAgB,EAAE,CAAC;YACpC,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS,CAAC,cAAc,EAAE,CAAC;gBACvD,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,oBAAoB,CAAC,aAAa;oBAChE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,oBAAoB,CAAC,aAAa,EAC1D,SAAS,CAAC,cAAc,CACzB;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,eAAe,EAAE,CAAC;YACnC,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,aAAa,EAAE,CAAC;gBACrD,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,mBAAmB,CAAC,aAAa;oBAC/D,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,mBAAmB,CAAC,aAAa,EACzD,SAAS,CAAC,aAAa,CACxB;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,uBAAuB,EAAE,CAAC;YAC3C,IAAI,MAAM,CAAC,qBAAqB,KAAK,SAAS,CAAC,qBAAqB,EAAE,CAAC;gBACrE,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,2BAA2B,CAAC,aAAa;oBACvE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,2BAA2B,CAAC,aAAa,EACjE,SAAS,CAAC,qBAAqB,CAChC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,gBAAgB,EAAE,CAAC;YACpC,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS,CAAC,cAAc,EAAE,CAAC;gBACvD,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,uBAAuB,CAAC,aAAa;oBACnE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,uBAAuB,CAAC,aAAa,EAC7D,SAAS,CAAC,cAAc,CACzB;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,gCAAgC,EAAE,CAAC;YACpD,IAAI,MAAM,CAAC,8BAA8B,KAAK,SAAS,CAAC,8BAA8B,EAAE,CAAC;gBACvF,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,oCAAoC,CAAC,aAAa;oBAChF,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,oCAAoC,CAAC,aAAa,EAC1E,SAAS,CAAC,8BAA8B,CACzC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,kCAAkC,EAAE,CAAC;YACtD,IAAI,MAAM,CAAC,gCAAgC,KAAK,SAAS,CAAC,gCAAgC,EAAE,CAAC;gBAC3F,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,4BAA4B,CAAC,aAAa;oBACxE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,4BAA4B,CAAC,aAAa,EAClE,SAAS,CAAC,gCAAgC,CAC3C;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,+BAA+B,EAAE,CAAC;YACnD,IAAI,MAAM,CAAC,6BAA6B,KAAK,SAAS,CAAC,6BAA6B,EAAE,CAAC;gBACrF,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,uBAAuB,CAAC,aAAa;oBACnE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,uBAAuB,CAAC,aAAa,EAC7D,SAAS,CAAC,6BAA6B,CACxC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,kCAAkC,EAAE,CAAC;YACtD,IAAI,CAAC,MAAM,CAAC,gCAAgC,CAAC,EAAE,CAAC,SAAS,CAAC,gCAAgC,CAAC,EAAE,CAAC;gBAC5F,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,iCAAiC,CAAC,aAAa;oBAC7E,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,iCAAiC,CAAC,aAAa,EACvE,SAAS,CAAC,gCAAgC,CAAC,QAAQ,EAAE,CACtD;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,sCAAsC,EAAE,CAAC;YAC1D,IAAI,CAAC,MAAM,CAAC,oCAAoC,CAAC,EAAE,CAAC,SAAS,CAAC,oCAAoC,CAAC,EAAE,CAAC;gBACpG,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,yBAAyB,CAAC,aAAa;oBACrE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,yBAAyB,CAAC,aAAa,EAC/D,SAAS,CAAC,oCAAoC,CAAC,QAAQ,EAAE,CAC1D;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,4BAA4B,EAAE,CAAC;YAChD,IAAI,CAAC,MAAM,CAAC,0BAA0B,CAAC,EAAE,CAAC,SAAS,CAAC,0BAA0B,CAAC,EAAE,CAAC;gBAChF,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,2BAA2B,CAAC,aAAa;oBACvE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,2BAA2B,CAAC,aAAa,EACjE,SAAS,CAAC,0BAA0B,CAAC,QAAQ,EAAE,CAChD;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,0BAA0B,EAAE,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,EAAE,CAAC,SAAS,CAAC,wBAAwB,CAAC,EAAE,CAAC;gBAC5E,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,yBAAyB,CAAC,aAAa;oBACrE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,yBAAyB,CAAC,aAAa,EAC/D,SAAS,CAAC,wBAAwB,CAAC,QAAQ,EAAE,CAC9C;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,aAAa,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC;gBACtD,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,iBAAiB,CAAC,aAAa;oBAC7D,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,iBAAiB,CAAC,aAAa,EACvD,SAAS,CAAC,WAAW,CACtB;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,2BAA2B,EAAE,CAAC;YAC/C,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,EAAE,CAAC,SAAS,CAAC,yBAAyB,CAAC,EAAE,CAAC;gBAC9E,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,qCAAqC,CAAC,aAAa;oBACjF,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,qCAAqC,CAAC,aAAa,EAC3E,SAAS,CAAC,yBAAyB,CAAC,QAAQ,EAAE,CAC/C;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,oCAAoC,EAAE,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,kCAAkC,CAAC,EAAE,CAAC,SAAS,CAAC,kCAAkC,CAAC,EAAE,CAAC;gBAChG,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,kCAAkC,CAAC,aAAa;oBAC9E,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,kCAAkC,CAAC,aAAa,EACxE,SAAS,CAAC,kCAAkC,CAAC,QAAQ,EAAE,CACxD;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,iBAAiB,EAAE,CAAC;YACrC,IAAI,oBAAoB,GAAG,CAAC,CAAC;YAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACvD,IACE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE;oBAChE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,sBAAsB,KAAK,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,sBAAsB;oBACxG,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM;oBACxE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,uBAAuB,KAAK,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,uBAAuB;oBAC1G,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,aAAa,KAAK,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,aAAa;oBACtF,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,uBAAuB,KAAK,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,uBAAuB;oBAC1G,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,EACvF,CAAC;oBACD,2BAA2B,CAAC,IAAI,CAAC;wBAC/B,IAAI,EAAE,+BAAuB,CAAC,oBAAoB,CAAC,aAAa;wBAChE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,oBAAoB,CAAC,aAAa,EAC1D,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAC7B;qBACF,CAAC,CAAC;oBACH,oBAAoB,EAAE,CAAC;gBACzB,CAAC;YACH,CAAC;YACD,IAAI,oBAAoB,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAA,2BAAqB,EAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxD,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,UAAU,CAAC,aAAa;oBACtD,KAAK,EAAE,8BAA8B,CAAC,+BAAuB,CAAC,UAAU,CAAC,aAAa,EAAE,SAAS,CAAC,IAAI,CAAC;iBACxG,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC,CAAC,WAAW;IAEb,MAAM,IAAI,GAA6B,EAAE,CAAC;IAE1C,2BAA2B,CAAC,OAAO,CAAC,CAAC,6BAA6B,EAAE,EAAE;QACpE,IAAI,CAAC,IAAI,CACP,oBAAoB,CAClB,iBAAiB,EACjB,6BAA6B,CAAC,IAAI,EAClC,6BAA6B,CAAC,KAAK,EACnC,SAAS,CACV,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,8BAA8B,CACrC,aAAqB,EACrB,KAA8D;IAE9D,IAAI,MAAM,GAAW,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACtC,IAAI,QAAgB,CAAC;IACrB,IAAI,WAAmB,CAAC;IACxB,IAAI,UAAoB,CAAC;IAEzB,QAAQ,aAAa,EAAE,CAAC;QACtB,KAAK,+BAAuB,CAAC,mBAAmB,CAAC,aAAa,CAAC;QAC/D,KAAK,+BAAuB,CAAC,4BAA4B,CAAC,aAAa,CAAC;QACxE,KAAK,+BAAuB,CAAC,uBAAuB,CAAC,aAAa,CAAC;QACnE,KAAK,+BAAuB,CAAC,oCAAoC,CAAC,aAAa,CAAC;QAChF,KAAK,+BAAuB,CAAC,2BAA2B,CAAC,aAAa,CAAC;QACvE,KAAK,+BAAuB,CAAC,uBAAuB,CAAC,aAAa;YAChE,MAAM,CAAC,WAAW,CAAC,KAAe,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1C,MAAM;QACR,KAAK,+BAAuB,CAAC,oBAAoB,CAAC,aAAa;YAC7D,MAAM,CAAC,aAAa,CAAC,KAAe,EAAE,CAAC,CAAC,CAAC;YACzC,MAAM;QACR,KAAK,+BAAuB,CAAC,yBAAyB,CAAC,aAAa,CAAC;QACrE,KAAK,+BAAuB,CAAC,yBAAyB,CAAC,aAAa,CAAC;QACrE,KAAK,+BAAuB,CAAC,2BAA2B,CAAC,aAAa,CAAC;QACvE,KAAK,+BAAuB,CAAC,iCAAiC,CAAC,aAAa,CAAC;QAC7E,KAAK,+BAAuB,CAAC,kCAAkC,CAAC,aAAa;YAC3E,KAAK,GAAG,KAAe,CAAC;YACxB,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1C,MAAM;QACR,KAAK,+BAAuB,CAAC,WAAW,CAAC,aAAa,CAAC;QACvD,KAAK,+BAAuB,CAAC,iBAAiB,CAAC,aAAa;YAC1D,QAAQ,GAAI,KAAmB,CAAC,QAAQ,EAAE,CAAC;YAC3C,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACzB,MAAM;QACR,KAAK,+BAAuB,CAAC,oBAAoB,CAAC,aAAa;YAC7D,MAAM,GAAG,uBAAuB,CAAC,KAAuB,CAAC,CAAC;YAC1D,MAAM;QACR,KAAK,+BAAuB,CAAC,qCAAqC,CAAC,aAAa;YAC9E,WAAW,GAAG,MAAM,CAAC,KAAe,CAAC,CAAC;YACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5B,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,WAAW,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YACzE,CAAC;YACD,MAAM;QACR,KAAK,+BAAuB,CAAC,UAAU,CAAC,aAAa;YACnD,UAAU,GAAG,KAAiB,CAAC;YAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1C,CAAC;YACD,MAAM;IACV,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,oBAAoB,CAC3B,iBAAoC,EACpC,iBAAyB,EACzB,KAAa,EACb,SAAoB;IAEpB,KAAK,CAAC;IACN,MAAM,QAAQ,GAAgC;QAC5C,kBAAkB,EAAE,iBAAiB,CAAC,KAAK,CAAC,kBAAkB;QAC9D,aAAa,EAAE,iBAAiB,CAAC,OAAO;KACzC,CAAC;IAEF,MAAM,IAAI,GAA4B;QACpC,IAAI,EAAE,IAAI,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC;QACtC,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC;KAClB,CAAC;IAEF,MAAM,EAAE,GAAG,IAAA,yBAAmB,EAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAE1D,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,uBAAuB,CAAC,cAA8B;IAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAChC,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;IAC/D,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAChD,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,uBAAuB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjE,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACvD,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,uBAAuB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjE,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClD,MAAM,iBAAiB,GAAG,cAAc,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;IAChE,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAClC,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/classes/manager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CASyB;AACzB,mCAUiB;AACjB,gCA2BgB;AAChB,wDAAsD;AACtD,yDAA2E;AAC3E,kDAAuB;AACvB,gDAA8F;AAC9F,4DAAiC;AACjC,0DAA4C;AAC5C,mEAAkE;AAClE,iDAAqD;AAErD,gDAAwB;AACxB,sCAAkD;AAGlD;;GAEG;AACH,MAAa,aAAa;IACP,WAAW,CAAa;IACxB,qBAAqB,CAAY;IACjC,oBAAoB,CAAY;IAChC,YAAY,CAAoB;IACjD,oBAAoB,CAAS;IAE7B,YACE,UAAsB,EACtB,mBAA+B,EAC/B,oBAAgC,EAChC,oBAA6B;QAE7B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,qBAAqB,GAAG,oBAAoB,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,qBAAa,CAAC;QACzF,IAAI,CAAC,oBAAoB,GAAG,mBAAmB,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,sBAAU,CAAC;QACnF,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,qCAA+B,CAAC;QAC1G,IAAI,CAAC,YAAY,GAAG,IAAI,yBAAiB,CACvC,UAAU,EACV,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,oBAAoB,EACzB,IAAI,CAAC,oBAAoB,CAC1B,CAAC;IACJ,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,eAAe,CACnB,MAAgC;QAEhC,MAAM,aAAa,GAAG,iBAAO,CAAC,QAAQ,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,mBAAa,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;QAC3C,MAAM,CAAC,sBAAsB,EAAE,CAAC,CAAC,GAAG,IAAA,0BAAoB,EAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC7G,MAAM,gBAAgB,GAA6B,EAAE,CAAC;QAEtD,gBAAgB,CAAC,IAAI,CACnB,uBAAa,CAAC,aAAa,CAAC;YAC1B,UAAU,EAAE,MAAM,CAAC,KAAK;YACxB,gBAAgB,EAAE,aAAa,CAAC,SAAS;YACzC,QAAQ,EAAE,MAAM,IAAI,CAAC,WAAW,CAAC,iCAAiC,CAAC,IAAI,CAAC;YACxE,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,IAAI,CAAC,oBAAoB;SACrC,CAAC,CACH,CAAC;QAEF,MAAM,QAAQ,GAA8B;YAC1C,kBAAkB,EAAE,MAAM,CAAC,KAAK;YAChC,aAAa,EAAE,aAAa,CAAC,SAAS;YACtC,sBAAsB,EAAE,sBAAsB;YAC9C,aAAa,EAAE,uBAAa,CAAC,SAAS;YACtC,IAAI,EAAE,4BAAkB;SACzB,CAAC;QAEF,MAAM,IAAI,GAA0B;YAClC,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;SACjC,CAAC;QAEF,gBAAgB,CAAC,IAAI,CAAC,IAAA,uBAAiB,EAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAEpF,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;IAC3D,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,mBAAmB,CACvB,MAA8B;QAE9B,MAAM,MAAM,GAAG,MAAM,mBAAa,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC5G,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,iBAAiB,GAAsB,EAAE,OAAO,EAAE,MAAM,CAAC,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAE9F,MAAM,cAAc,GAAG,iBAAO,CAAC,QAAQ,EAAE,CAAC;QAE1C,MAAM,yBAAyB,GAAG,MAAM,IAAA,sBAAgB,EACtD,IAAI,CAAC,WAAW,EAChB,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,WAAW,CAAC,IAAI,EACvB,cAAc,CAAC,SAAS,EACxB,IAAI,CAAC,oBAAoB,CAC1B,CAAC;QAEF,MAAM,yBAAyB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAC3D,iBAAiB,EACjB,cAAc,CAAC,SAAS,EACxB,MAAM,CAAC,WAAW,CAAC,gBAAgB,EAAE,EACrC,SAAS,EACT,IAAI,CACL,CAAC;QAEF,MAAM,OAAO,GAA+B,EAAE,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACxC,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QAExC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;IAC9C,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,cAAc,CAAC,WAA8B;QACjD,OAAO,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,+BAA+B,CACnC,KAAkB,EAClB,uBAAgD;QAEhD,OAAO,IAAI,CAAC,YAAY,CAAC,0BAA0B,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC;IACtF,CAAC;IAED,0EAA0E;IAC1E,kDAAkD;IAClD,IAAI;IAEJ;;;;OAIG;IACH,KAAK,CAAC,gBAAgB,CAAC,OAAkB;QACvC,MAAM,YAAY,GAAG,MAAM,aAAO,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACpE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,YAAY,CAAC,MAAM,CAAC;IAC7B,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,wCAAwC,CAC5C,MAAyB,EACzB,OAA2B,EAC3B,iBAAoC,EACpC,eAAmC,EACnC,sBAA8B,EAAE;QAEhC,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;QAE3C,IAAI,WAAW,GAAG,mBAAO,CAAC;QAC1B,IAAI,eAAe,EAAE,CAAC;YACpB,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC;YAEvC,oEAAoE;YACpE,4DAA4D;YAC5D,IAAI;QACN,CAAC;QAED,MAAM,EAAE,kBAAkB,EAAE,GAAG,IAAA,6BAAuB,EAAC;YACrD,uBAAuB,EAAE,iBAAiB,CAAC,uBAAuB;YAClE,UAAU,EAAE,CAAC,iBAAiB,CAAC,QAAQ,CAAC;YACxC,cAAc,EAAE,CAAC,WAAW,CAAC;SAC9B,CAAC,CAAC;QAEH,MAAM,gBAAgB,GAAG,IAAI,qBAAa,CAAC;YACzC,GAAG,aAAa;YAChB,SAAS,EAAE;gBACT,GAAG,aAAa,CAAC,SAAS;gBAC1B,kBAAkB,EAAE,kBAAkB;gBACtC,wEAAwE;gBACxE,iBAAiB,EAAE,eAAe;oBAChC,CAAC,CAAC,IAAI,eAAE,CAAC,eAAe,CAAC,OAAO,GAAG,mBAAmB,CAAC;oBACvD,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,iBAAiB;gBAC7C,kBAAkB,EAAE,IAAI,eAAE,CAAC,iBAAiB,CAAC,OAAO,GAAG,mBAAmB,CAAC;aAC5E;SACF,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACzF,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,gBAAgB,CACpB,iBAAoC,EACpC,OAAkB,EAClB,MAAqB,EACrB,oBAA8B,EAC9B,qBAA8B,KAAK;QAEnC,MAAM,YAAY,GAAG,oBAAoB;YACvC,CAAC,CAAC,oBAAoB;YACtB,CAAC,CAAC,CAAC,MAAM,aAAO,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAE,CAAC;QACjF,MAAM,IAAI,GAA6B,EAAE,CAAC;QAE1C,IAAI,CAAC,YAAY,IAAI,kBAAkB,EAAE,CAAC;YACxC,IAAI,CAAC,IAAI,CAAC,IAAA,iCAA2B,EAAC,iBAAiB,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACxG,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CACP,GAAG,IAAA,2CAAqC,EACtC,iBAAiB,EACjB,YAAY,EACZ,OAAO,EACP,MAAM,EACN,IAAI,CAAC,oBAAoB,CAC1B,CACF,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,iBAAiB,CACrB,IAAe,EACf,KAAkB,EAClB,WAAoB;QAEpB,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,KAAkB,EAClB,IAA0B,EAC1B,KAAa;QAEb,OAAO,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,sBAAsB,CAAC,KAAkB;QAC7C,OAAO,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CAAC,KAAkB,EAAE,iBAA0B;QACtE,OAAO,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;IACzE,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,oBAAoB,CACxB,IAAe,EACf,KAAkB,EAClB,WAAoB,EACpB,IAAY;QAEZ,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,sBAAsB,CAAC,KAAkB,EAAE,IAAY;QAC3D,OAAO,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,4BAA4B,CAAC,KAAkB,EAAE,IAAY;QACjE,OAAO,IAAI,CAAC,YAAY,CAAC,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,kBAAkB,CAAC,KAAkB,EAAE,IAAY,EAAE,UAAmB;QAC5E,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC5E,OAAO,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,+BAA+B,CAAC,IAAe,EAAE,KAAkB;QACvE,OAAO,IAAI,CAAC,YAAY,CAAC,+BAA+B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,6BAA6B,CACjC,IAAe,EACf,cAA6B;QAE7B,OAAO,IAAI,CAAC,YAAY,CAAC,6BAA6B,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAC/E,CAAC;IAED;;OAEG;IACH,oBAAoB;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY;QAChB,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;IAC1C,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,oBAAoB,CAAC,KAAgB;QACzC,MAAM,OAAO,GAAG;YACd;gBACE,QAAQ,EAAE,qBAAU,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;aACrC;YACD;gBACE,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC;oBACT,KAAK,EAAE,cAAI,CAAC,MAAM,CAAC,qBAAU,CAAC,aAAa,CAAC;iBAC7C;aACF;YACD;gBACE,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC;oBACT,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE;iBACxB;aACF;SACF,CAAC;QAEF,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACvC,IAAA,wBAAkB,EAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,qBAAqB,EAAE;gBAC/D,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,WAAW;gBACtD,OAAO;aACR,CAAC;SACH,CAAC,CAAC;QAEH,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;YACtC,IAAI,WAAW,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,2BAA2B,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;YAC7F,CAAC;YAED,MAAM,kBAAkB,GAAG,qBAAU,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACvE,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,MAAM,KAAK,CAAC,2BAA2B,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;YAC/F,CAAC;YAED,OAAO,IAAI,mBAAW,CAAC,WAAW,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC7F,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,qBAAqB,CACzB,SAAoB;QAEpB,8HAA8H;QAC9H,0FAA0F;QAC1F,4HAA4H;QAC5H,OAAO,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAAC,4BAAgB,EAAE;YACjE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC;SACrF,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,qBAAqB,CACzB,KAAkB;QAElB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC3D,CAAC;IAED;;;;OAIG;IACH,eAAe,GAAG,KAAK,EAAE,KAAkB,EAA0B,EAAE;QACrE,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACvC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAkB,EAAE,CAAC;QACjC,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACzC,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,IAAY,CAAC;YACtD,MAAM,CAAC,IAAI,CAAC;gBACV,YAAY,EAAE,IAAI,mBAAS,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC1D,MAAM,EAAE,IAAI,oBAAO,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;aACxE,CAAC,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF;;;;;;OAMG;IACH,KAAK,CAAC,gBAAgB,CACpB,KAAiB,EACjB,IAAY,EACZ,aAAuD;QAEvD,OAAO,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,yBAAyB,CAC7B,KAAiB,EACjB,IAAY,EACZ,KAAc,EACd,aAAuD;QAEvD,OAAO,IAAI,CAAC,YAAY,CAAC,yBAAyB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;IACxF,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,uBAAuB,CAC3B,KAAiB,EACjB,IAAY,EACZ,aAAuD;QAEvD,OAAO,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;IAC/E,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,sBAAsB,CAC1B,KAAiB,EACjB,IAAY,EACZ,aAAuD;QAEvD,OAAO,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;IAC9E,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,iBAAiB,CAAC,UAAsB;QAC5C,OAAO,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACzD,CAAC;IAED;;;;OAIG;IACH,mBAAmB,CAAC,KAAiB;QACnC,OAAO,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACtD,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,KAAiB;QAChC,OAAO,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,iBAAiB,CAAC,KAAgB,EAAE,WAAwB;QAChE,OAAO,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACpE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CACvB,KAAgB,EAChB,WAAwB,EACxB,kBAAsC;QAEtC,OAAO,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,KAAK,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;IAC1F,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,qBAAqB,CACzB,OAAe,QAAQ,EACvB,UAAe,cAAc;QAE7B,MAAM,kBAAkB,GAA6B,EAAE,CAAC;QAExD,MAAM,KAAK,GAAG,IAAI,iBAAK,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACnD,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,MAAM,CAAC,EAAE,UAAU,CAAC,GAAG,MAAM,KAAK,CAAC,oBAAoB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACxE,MAAM,cAAc,GAAG,MAAM,0BAAc,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;QAC/F,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;QAEzC,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;QAEpE,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,cAAc,CAAC,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YAC7E,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC3G,MAAM,UAAU,GAAG,IAAA,qBAAe,EAAC,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;gBAErE,kBAAkB,CAAC,IAAI,CAAC;oBACtB,uBAAuB,EAAE,UAAU,CAAC,YAAY;oBAChD,IAAI,EAAE,IAAI;oBACV,UAAU,EAAE,UAAU;oBACtB,QAAQ,EAAE,KAAK;oBACf,aAAa,EAAE,cAAc,CAAC,iBAAiB,CAAC,KAAK,CAAC;oBACtD,WAAW,EAAE,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC;oBACpD,YAAY,EAAE,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC;oBAC9C,OAAO,EAAE,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE;iBAC1E,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,sBAAsB,CAAC,iBAAoC,EAAE,SAAwB;QACnF,OAAO,oCAAoC,CAAC,iBAAiB,EAAE,SAAS,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACvG,CAAC;IAED;;;;;OAKG;IACH,2BAA2B,CAAC,iBAAoC;QAC9D,MAAM,QAAQ,GAAqC;YACjD,wBAAwB,EAAE,iBAAiB,CAAC,KAAK,CAAC,wBAAwB;YAC1E,aAAa,EAAE,iBAAiB,CAAC,OAAO;SACzC,CAAC;QAEF,OAAO,IAAA,8BAAwB,EAAC,QAAQ,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACvE,CAAC;CACF,CAAC,gBAAgB;AAroBlB,sCAqoBC;AAED,SAAS,oCAAoC,CAC3C,iBAAoC,EACpC,SAAwB,EACxB,SAAoB;IAEpB,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC;IACvC,MAAM,2BAA2B,GAAsC,EAAE,CAAC;IAC1E,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QAClC,IAAI,GAAG,KAAK,oBAAoB,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBACpE,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,WAAW,CAAC,aAAa;oBACvD,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,WAAW,CAAC,aAAa,EACjD,SAAS,CAAC,kBAAkB,CAC7B;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,0BAA0B,EAAE,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,MAAM,CAAC,SAAS,CAAC,wBAAwB,CAAC,EAAE,CAAC;gBAChF,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,WAAW,CAAC,aAAa;oBACvD,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,WAAW,CAAC,aAAa,EACjD,SAAS,CAAC,wBAAwB,CACnC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,gBAAgB,EAAE,CAAC;YACpC,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS,CAAC,cAAc,EAAE,CAAC;gBACvD,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,oBAAoB,CAAC,aAAa;oBAChE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,oBAAoB,CAAC,aAAa,EAC1D,SAAS,CAAC,cAAc,CACzB;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,eAAe,EAAE,CAAC;YACnC,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,aAAa,EAAE,CAAC;gBACrD,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,mBAAmB,CAAC,aAAa;oBAC/D,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,mBAAmB,CAAC,aAAa,EACzD,SAAS,CAAC,aAAa,CACxB;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,uBAAuB,EAAE,CAAC;YAC3C,IAAI,MAAM,CAAC,qBAAqB,KAAK,SAAS,CAAC,qBAAqB,EAAE,CAAC;gBACrE,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,2BAA2B,CAAC,aAAa;oBACvE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,2BAA2B,CAAC,aAAa,EACjE,SAAS,CAAC,qBAAqB,CAChC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,gBAAgB,EAAE,CAAC;YACpC,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS,CAAC,cAAc,EAAE,CAAC;gBACvD,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,uBAAuB,CAAC,aAAa;oBACnE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,uBAAuB,CAAC,aAAa,EAC7D,SAAS,CAAC,cAAc,CACzB;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,gCAAgC,EAAE,CAAC;YACpD,IAAI,MAAM,CAAC,8BAA8B,KAAK,SAAS,CAAC,8BAA8B,EAAE,CAAC;gBACvF,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,oCAAoC,CAAC,aAAa;oBAChF,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,oCAAoC,CAAC,aAAa,EAC1E,SAAS,CAAC,8BAA8B,CACzC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,kCAAkC,EAAE,CAAC;YACtD,IAAI,MAAM,CAAC,gCAAgC,KAAK,SAAS,CAAC,gCAAgC,EAAE,CAAC;gBAC3F,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,4BAA4B,CAAC,aAAa;oBACxE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,4BAA4B,CAAC,aAAa,EAClE,SAAS,CAAC,gCAAgC,CAC3C;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,+BAA+B,EAAE,CAAC;YACnD,IAAI,MAAM,CAAC,6BAA6B,KAAK,SAAS,CAAC,6BAA6B,EAAE,CAAC;gBACrF,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,uBAAuB,CAAC,aAAa;oBACnE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,uBAAuB,CAAC,aAAa,EAC7D,SAAS,CAAC,6BAA6B,CACxC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,kCAAkC,EAAE,CAAC;YACtD,IAAI,CAAC,MAAM,CAAC,gCAAgC,CAAC,EAAE,CAAC,SAAS,CAAC,gCAAgC,CAAC,EAAE,CAAC;gBAC5F,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,iCAAiC,CAAC,aAAa;oBAC7E,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,iCAAiC,CAAC,aAAa,EACvE,SAAS,CAAC,gCAAgC,CAAC,QAAQ,EAAE,CACtD;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,sCAAsC,EAAE,CAAC;YAC1D,IAAI,CAAC,MAAM,CAAC,oCAAoC,CAAC,EAAE,CAAC,SAAS,CAAC,oCAAoC,CAAC,EAAE,CAAC;gBACpG,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,yBAAyB,CAAC,aAAa;oBACrE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,yBAAyB,CAAC,aAAa,EAC/D,SAAS,CAAC,oCAAoC,CAAC,QAAQ,EAAE,CAC1D;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,4BAA4B,EAAE,CAAC;YAChD,IAAI,CAAC,MAAM,CAAC,0BAA0B,CAAC,EAAE,CAAC,SAAS,CAAC,0BAA0B,CAAC,EAAE,CAAC;gBAChF,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,2BAA2B,CAAC,aAAa;oBACvE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,2BAA2B,CAAC,aAAa,EACjE,SAAS,CAAC,0BAA0B,CAAC,QAAQ,EAAE,CAChD;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,0BAA0B,EAAE,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,EAAE,CAAC,SAAS,CAAC,wBAAwB,CAAC,EAAE,CAAC;gBAC5E,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,yBAAyB,CAAC,aAAa;oBACrE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,yBAAyB,CAAC,aAAa,EAC/D,SAAS,CAAC,wBAAwB,CAAC,QAAQ,EAAE,CAC9C;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,aAAa,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC;gBACtD,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,iBAAiB,CAAC,aAAa;oBAC7D,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,iBAAiB,CAAC,aAAa,EACvD,SAAS,CAAC,WAAW,CACtB;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,2BAA2B,EAAE,CAAC;YAC/C,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,EAAE,CAAC,SAAS,CAAC,yBAAyB,CAAC,EAAE,CAAC;gBAC9E,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,qCAAqC,CAAC,aAAa;oBACjF,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,qCAAqC,CAAC,aAAa,EAC3E,SAAS,CAAC,yBAAyB,CAAC,QAAQ,EAAE,CAC/C;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,oCAAoC,EAAE,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,kCAAkC,CAAC,EAAE,CAAC,SAAS,CAAC,kCAAkC,CAAC,EAAE,CAAC;gBAChG,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,kCAAkC,CAAC,aAAa;oBAC9E,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,kCAAkC,CAAC,aAAa,EACxE,SAAS,CAAC,kCAAkC,CAAC,QAAQ,EAAE,CACxD;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,iBAAiB,EAAE,CAAC;YACrC,IAAI,oBAAoB,GAAG,CAAC,CAAC;YAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACvD,IACE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE;oBAChE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,sBAAsB,KAAK,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,sBAAsB;oBACxG,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM;oBACxE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,uBAAuB,KAAK,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,uBAAuB;oBAC1G,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,aAAa,KAAK,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,aAAa;oBACtF,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,uBAAuB,KAAK,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,uBAAuB;oBAC1G,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,EACvF,CAAC;oBACD,2BAA2B,CAAC,IAAI,CAAC;wBAC/B,IAAI,EAAE,+BAAuB,CAAC,oBAAoB,CAAC,aAAa;wBAChE,KAAK,EAAE,8BAA8B,CACnC,+BAAuB,CAAC,oBAAoB,CAAC,aAAa,EAC1D,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAC7B;qBACF,CAAC,CAAC;oBACH,oBAAoB,EAAE,CAAC;gBACzB,CAAC;YACH,CAAC;YACD,IAAI,oBAAoB,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAA,2BAAqB,EAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxD,2BAA2B,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,+BAAuB,CAAC,UAAU,CAAC,aAAa;oBACtD,KAAK,EAAE,8BAA8B,CAAC,+BAAuB,CAAC,UAAU,CAAC,aAAa,EAAE,SAAS,CAAC,IAAI,CAAC;iBACxG,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC,CAAC,WAAW;IAEb,MAAM,IAAI,GAA6B,EAAE,CAAC;IAE1C,2BAA2B,CAAC,OAAO,CAAC,CAAC,6BAA6B,EAAE,EAAE;QACpE,IAAI,CAAC,IAAI,CACP,oBAAoB,CAClB,iBAAiB,EACjB,6BAA6B,CAAC,IAAI,EAClC,6BAA6B,CAAC,KAAK,EACnC,SAAS,CACV,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,8BAA8B,CACrC,aAAqB,EACrB,KAA8D;IAE9D,IAAI,MAAM,GAAW,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACtC,IAAI,QAAgB,CAAC;IACrB,IAAI,WAAmB,CAAC;IACxB,IAAI,UAAoB,CAAC;IAEzB,QAAQ,aAAa,EAAE,CAAC;QACtB,KAAK,+BAAuB,CAAC,mBAAmB,CAAC,aAAa,CAAC;QAC/D,KAAK,+BAAuB,CAAC,4BAA4B,CAAC,aAAa,CAAC;QACxE,KAAK,+BAAuB,CAAC,uBAAuB,CAAC,aAAa,CAAC;QACnE,KAAK,+BAAuB,CAAC,oCAAoC,CAAC,aAAa,CAAC;QAChF,KAAK,+BAAuB,CAAC,2BAA2B,CAAC,aAAa,CAAC;QACvE,KAAK,+BAAuB,CAAC,uBAAuB,CAAC,aAAa;YAChE,MAAM,CAAC,WAAW,CAAC,KAAe,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1C,MAAM;QACR,KAAK,+BAAuB,CAAC,oBAAoB,CAAC,aAAa;YAC7D,MAAM,CAAC,aAAa,CAAC,KAAe,EAAE,CAAC,CAAC,CAAC;YACzC,MAAM;QACR,KAAK,+BAAuB,CAAC,yBAAyB,CAAC,aAAa,CAAC;QACrE,KAAK,+BAAuB,CAAC,yBAAyB,CAAC,aAAa,CAAC;QACrE,KAAK,+BAAuB,CAAC,2BAA2B,CAAC,aAAa,CAAC;QACvE,KAAK,+BAAuB,CAAC,iCAAiC,CAAC,aAAa,CAAC;QAC7E,KAAK,+BAAuB,CAAC,kCAAkC,CAAC,aAAa;YAC3E,KAAK,GAAG,KAAe,CAAC;YACxB,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1C,MAAM;QACR,KAAK,+BAAuB,CAAC,WAAW,CAAC,aAAa,CAAC;QACvD,KAAK,+BAAuB,CAAC,iBAAiB,CAAC,aAAa;YAC1D,QAAQ,GAAI,KAAmB,CAAC,QAAQ,EAAE,CAAC;YAC3C,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACzB,MAAM;QACR,KAAK,+BAAuB,CAAC,oBAAoB,CAAC,aAAa;YAC7D,MAAM,GAAG,uBAAuB,CAAC,KAAuB,CAAC,CAAC;YAC1D,MAAM;QACR,KAAK,+BAAuB,CAAC,qCAAqC,CAAC,aAAa;YAC9E,WAAW,GAAG,MAAM,CAAC,KAAe,CAAC,CAAC;YACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5B,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,WAAW,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YACzE,CAAC;YACD,MAAM;QACR,KAAK,+BAAuB,CAAC,UAAU,CAAC,aAAa;YACnD,UAAU,GAAG,KAAiB,CAAC;YAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1C,CAAC;YACD,MAAM;IACV,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,oBAAoB,CAC3B,iBAAoC,EACpC,iBAAyB,EACzB,KAAa,EACb,SAAoB;IAEpB,KAAK,CAAC;IACN,MAAM,QAAQ,GAAgC;QAC5C,kBAAkB,EAAE,iBAAiB,CAAC,KAAK,CAAC,kBAAkB;QAC9D,aAAa,EAAE,iBAAiB,CAAC,OAAO;KACzC,CAAC;IAEF,MAAM,IAAI,GAA4B;QACpC,IAAI,EAAE,IAAI,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC;QACtC,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC;KAClB,CAAC;IAEF,MAAM,EAAE,GAAG,IAAA,yBAAmB,EAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAE1D,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,uBAAuB,CAAC,cAA8B;IAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAChC,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;IAC/D,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAChD,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,uBAAuB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjE,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACvD,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,uBAAuB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjE,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClD,MAAM,iBAAiB,GAAG,cAAc,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;IAChE,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAClC,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,10 +1,11 @@
1
1
  import { Connection, Keypair, PublicKey, TransactionInstruction } from '@solana/web3.js';
2
- import { PubkeyHashMap, Reserve } from '../lib';
2
+ import { KaminoReserve, PubkeyHashMap, Reserve } from '../lib';
3
3
  import { VaultConfigFieldKind } from '../idl_codegen_kamino_vault/types';
4
4
  import { VaultState } from '../idl_codegen_kamino_vault/accounts';
5
5
  import Decimal from 'decimal.js';
6
6
  import { ReserveWithAddress } from './reserve';
7
7
  export declare const kaminoVaultId: PublicKey;
8
+ export declare const kaminoVaultStagingId: PublicKey;
8
9
  /**
9
10
  * KaminoVaultClient is a class that provides a high-level interface to interact with the Kamino Vault program.
10
11
  */
@@ -66,9 +67,10 @@ export declare class KaminoVaultClient {
66
67
  * @param user - user to deposit
67
68
  * @param vault - vault to deposit into
68
69
  * @param tokenAmount - token amount to be deposited, in decimals (will be converted in lamports)
70
+ * @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
69
71
  * @returns - an array of instructions to be used to be executed
70
72
  */
71
- depositIxs(user: PublicKey, vault: KaminoVault, tokenAmount: Decimal): Promise<TransactionInstruction[]>;
73
+ depositIxs(user: PublicKey, vault: KaminoVault, tokenAmount: Decimal, vaultReservesMap?: PubkeyHashMap<PublicKey, KaminoReserve>): Promise<TransactionInstruction[]>;
72
74
  /**
73
75
  * This function will return the missing ATA creation instructions, as well as one or multiple withdraw instructions, based on how many reserves it's needed to withdraw from. This might have to be split in multiple transactions
74
76
  * @param user - user to withdraw
@@ -111,9 +113,10 @@ export declare class KaminoVaultClient {
111
113
  * This method calculates the token per shar value. This will always change based on interest earned from the vault, but calculating it requires a bunch of rpc requests. Caching this for a short duration would be optimal
112
114
  * @param vault - vault to calculate tokensPerShare for
113
115
  * @param slot - current slot, used to estimate the interest earned in the different reserves with allocation from the vault
116
+ * @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
114
117
  * @returns - token per share value
115
118
  */
116
- getTokensPerShareSingleVault(vault: KaminoVault, slot: number): Promise<Decimal>;
119
+ getTokensPerShareSingleVault(vault: KaminoVault, slot: number, vaultReservesMap?: PubkeyHashMap<PublicKey, KaminoReserve>): Promise<Decimal>;
117
120
  /**
118
121
  * This method calculates the token per share value. This will always change based on interest earned from the vault, but calculating it requires a bunch of rpc requests. Caching this for a short duration would be optimal
119
122
  * @param vault - vault to calculate tokensPerShare for
@@ -133,8 +136,57 @@ export declare class KaminoVaultClient {
133
136
  * @returns an HashMap of reserves (key) with the amount available to withdraw for each (value)
134
137
  */
135
138
  private getReserveAllocationAvailableLiquidityToWithdraw;
136
- private getVaultReserves;
137
- private loadVaultReserves;
139
+ /**
140
+ * This will get the list of all reserve pubkeys that the vault has allocations for
141
+ * @param vaultState - the vault state to load reserves for
142
+ * @returns a hashmap from each reserve pubkey to the reserve state
143
+ */
144
+ getAllVaultReserves(vault: VaultState): PublicKey[];
145
+ /**
146
+ * This will get the list of all reserve pubkeys that the vault has allocations for ex
147
+ * @param vaultState - the vault state to load reserves for
148
+ * @returns a hashmap from each reserve pubkey to the reserve state
149
+ */
150
+ getVaultReserves(vault: VaultState): PublicKey[];
151
+ /**
152
+ * This will load the onchain state for all the reserves that the vault has allocations for
153
+ * @param vaultState - the vault state to load reserves for
154
+ * @returns a hashmap from each reserve pubkey to the reserve state
155
+ */
156
+ loadVaultReserves(vaultState: VaultState): Promise<PubkeyHashMap<PublicKey, KaminoReserve>>;
157
+ /**
158
+ * This will return an VaultHoldings object which contains the amount available (uninvested) in vault, total amount invested in reseves and a breakdown of the amount invested in each reserve
159
+ * @param vault - the kamino vault to get available liquidity to withdraw for
160
+ * @param slot - current slot
161
+ * @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
162
+ * @returns an VaultHoldings object
163
+ */
164
+ getVaultHoldings(vault: VaultState, slot: number, vaultReserves?: PubkeyHashMap<PublicKey, KaminoReserve>): Promise<VaultHoldings>;
165
+ /**
166
+ * This will return an VaultHoldingsWithUSDValue object which contains an holdings field representing the amount available (uninvested) in vault, total amount invested in reseves and a breakdown of the amount invested in each reserve and additional fields for the total USD value of the available and invested amounts
167
+ * @param vault - the kamino vault to get available liquidity to withdraw for
168
+ * @param slot - current slot
169
+ * @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
170
+ * @param price - the price of the token in the vault (e.g. USDC)
171
+ * @returns an VaultHoldingsWithUSDValue object with details about the tokens available and invested in the vault, denominated in tokens and USD
172
+ */
173
+ getVaultHoldingsWithPrice(vault: VaultState, slot: number, price: Decimal, vaultReserves?: PubkeyHashMap<PublicKey, KaminoReserve>): Promise<VaultHoldingsWithUSDValue>;
174
+ /**
175
+ * This will return an overview of each reserve that is part of the vault allocation
176
+ * @param vault - the kamino vault to get available liquidity to withdraw for
177
+ * @param slot - current slot
178
+ * @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
179
+ * @returns a hashmap from vault reserve pubkey to ReserveOverview object
180
+ */
181
+ getVaultReservesDetails(vault: VaultState, slot: number, vaultReserves?: PubkeyHashMap<PublicKey, KaminoReserve>): Promise<PubkeyHashMap<PublicKey, ReserveOverview>>;
182
+ /**
183
+ * This will return the APY of the vault under the assumption that all the available tokens in the vault are all the time invested in the reserves
184
+ * @param vault - the kamino vault to get APY for
185
+ * @param slot - current slot
186
+ * @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
187
+ * @returns APY for the vault
188
+ */
189
+ getVaultTheoreticalAPY(vault: VaultState, slot: number, vaultReserves?: PubkeyHashMap<PublicKey, KaminoReserve>): Promise<Decimal>;
138
190
  }
139
191
  export declare class KaminoVault {
140
192
  readonly address: PublicKey;
@@ -182,4 +234,21 @@ export type VaultHolder = {
182
234
  holderPubkey: PublicKey;
183
235
  amount: Decimal;
184
236
  };
237
+ export type VaultHoldings = {
238
+ available: Decimal;
239
+ invested: Decimal;
240
+ investedInReserves: PubkeyHashMap<PublicKey, Decimal>;
241
+ };
242
+ export type VaultHoldingsWithUSDValue = {
243
+ holdings: VaultHoldings;
244
+ availableUSD: Decimal;
245
+ investedUSD: Decimal;
246
+ investedInReservesUSD: PubkeyHashMap<PublicKey, Decimal>;
247
+ };
248
+ export type ReserveOverview = {
249
+ supplyAPY: Decimal;
250
+ uUtilizationRatio: Decimal;
251
+ liquidationThresholdPct: Decimal;
252
+ borrowedAmount: Decimal;
253
+ };
185
254
  //# sourceMappingURL=vault.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../../src/classes/vault.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../../src/classes/vault.ts"],"names":[],"mappings":"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"}