@kamino-finance/klend-sdk 5.14.5 → 5.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/classes/farm_utils.d.ts.map +1 -1
- package/dist/classes/farm_utils.js +1 -0
- package/dist/classes/farm_utils.js.map +1 -1
- package/dist/classes/vault.d.ts +1 -1
- package/dist/classes/vault.d.ts.map +1 -1
- package/dist/classes/vault.js +68 -14
- package/dist/classes/vault.js.map +1 -1
- package/dist/utils/api.d.ts +7 -1
- package/dist/utils/api.d.ts.map +1 -1
- package/dist/utils/api.js +3 -2
- package/dist/utils/api.js.map +1 -1
- package/dist/utils/constants.d.ts +1 -1
- package/dist/utils/constants.d.ts.map +1 -1
- package/dist/utils/constants.js +3 -3
- package/dist/utils/constants.js.map +1 -1
- package/package.json +1 -1
- package/src/classes/farm_utils.ts +1 -0
- package/src/classes/vault.ts +86 -13
- package/src/classes/vault_types.ts +1 -1
- package/src/utils/api.ts +9 -3
- package/src/utils/constants.ts +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"farm_utils.d.ts","sourceRoot":"","sources":["../../src/classes/farm_utils.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,SAAS,EAET,SAAS,EAKV,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,OAAO,MAAM,oBAAoB,CAAC;AAEzC,eAAO,MAAM,2BAA2B,EAAE,SAAyE,CAAC;AAEpH,wBAAsB,eAAe,CACnC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,eAAe,EAAE,OAAO,EACxB,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAuBnC;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,SAAS,CAAC,CAGpB;AAED,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,OAAO,EAC1B,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,sBAAsB,CAAC,CAiBjC;AAGD,wBAAsB,gCAAgC,CACpD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,EACf,cAAc,EAAE,SAAS,GACxB,OAAO,CAAC,sBAAsB,CAAC,CAKjC;AAED,wBAAsB,4BAA4B,CAChD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,OAAO,EAC1B,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,6BAA6B,CAAC,CASxC;AAED,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,OAAO,EAClB,aAAa,EAAE,SAAS,GACvB,OAAO,CAAC,oBAAoB,CAAC,CAK/B;
|
|
1
|
+
{"version":3,"file":"farm_utils.d.ts","sourceRoot":"","sources":["../../src/classes/farm_utils.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,SAAS,EAET,SAAS,EAKV,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,OAAO,MAAM,oBAAoB,CAAC;AAEzC,eAAO,MAAM,2BAA2B,EAAE,SAAyE,CAAC;AAEpH,wBAAsB,eAAe,CACnC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,eAAe,EAAE,OAAO,EACxB,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAuBnC;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,SAAS,CAAC,CAGpB;AAED,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,OAAO,EAC1B,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,sBAAsB,CAAC,CAiBjC;AAGD,wBAAsB,gCAAgC,CACpD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,EACf,cAAc,EAAE,SAAS,GACxB,OAAO,CAAC,sBAAsB,CAAC,CAKjC;AAED,wBAAsB,4BAA4B,CAChD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,OAAO,EAC1B,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,6BAA6B,CAAC,CASxC;AAED,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,OAAO,EAClB,aAAa,EAAE,SAAS,GACvB,OAAO,CAAC,oBAAoB,CAAC,CAK/B;AAGD,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,OAAO,CAAC,CAWlB;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,sBAAsB,CAAC,CAGjC;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAEhG;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,sBAAsB,EAAE,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,SAAS,EAAE,sBAAsB,CAAC;IAClC,UAAU,EAAE,sBAAsB,CAAC;CACpC,CAAC"}
|
|
@@ -79,6 +79,7 @@ async function getSetupFarmIxsWithFarm(connection, farmAdmin, farmTokenMint) {
|
|
|
79
79
|
const ixs = await farmClient.createFarmIx(farmAdmin.publicKey, farm, exports.FARMS_GLOBAL_CONFIG_MAINNET, farmTokenMint);
|
|
80
80
|
return { farm, setupFarmIxs: ixs };
|
|
81
81
|
}
|
|
82
|
+
// returns tokens, not lamports
|
|
82
83
|
async function getUserSharesInFarm(connection, user, farm, farmTokenDecimals) {
|
|
83
84
|
const farmClient = new farms_sdk_1.Farms(connection);
|
|
84
85
|
const userStatePDA = (0, farms_sdk_1.getUserStatePDA)(farmClient.getProgramID(), farm, user);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"farm_utils.js","sourceRoot":"","sources":["../../src/classes/farm_utils.ts"],"names":[],"mappings":";;;;;;AAgBA,0CA6BC;AAED,kDAOC;AAED,4CAuBC;AAGD,4EAUC;AAED,oEAeC;AAED,0DASC;
|
|
1
|
+
{"version":3,"file":"farm_utils.js","sourceRoot":"","sources":["../../src/classes/farm_utils.ts"],"names":[],"mappings":"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"}
|
package/dist/classes/vault.d.ts
CHANGED
|
@@ -151,7 +151,7 @@ export declare class KaminoVaultClient {
|
|
|
151
151
|
* @param [farmState] - the state of the vault farm, if the vault has a farm. Optional. If not provided, it will be fetched
|
|
152
152
|
* @returns an array of instructions to create missing ATAs if needed and the withdraw instructions
|
|
153
153
|
*/
|
|
154
|
-
withdrawIxs(user: PublicKey, vault: KaminoVault,
|
|
154
|
+
withdrawIxs(user: PublicKey, vault: KaminoVault, shareAmountToWithdraw: Decimal, slot: number, vaultReservesMap?: PubkeyHashMap<PublicKey, KaminoReserve>, farmState?: FarmState): Promise<WithdrawIxs>;
|
|
155
155
|
private withdrawFromAvailableIxs;
|
|
156
156
|
private withdrawWithReserveIxs;
|
|
157
157
|
/**
|
|
@@ -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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"}
|
package/dist/classes/vault.js
CHANGED
|
@@ -661,17 +661,50 @@ class KaminoVaultClient {
|
|
|
661
661
|
* @param [farmState] - the state of the vault farm, if the vault has a farm. Optional. If not provided, it will be fetched
|
|
662
662
|
* @returns an array of instructions to create missing ATAs if needed and the withdraw instructions
|
|
663
663
|
*/
|
|
664
|
-
async withdrawIxs(user, vault,
|
|
664
|
+
async withdrawIxs(user, vault, shareAmountToWithdraw, slot, vaultReservesMap, farmState) {
|
|
665
665
|
const vaultState = await vault.getState(this.getConnection());
|
|
666
666
|
const kaminoVault = new KaminoVault(vault.address, vaultState, vault.programId);
|
|
667
|
+
const hasFarm = await vault.hasFarm(this.getConnection());
|
|
667
668
|
const withdrawIxs = {
|
|
668
669
|
unstakeFromFarmIfNeededIxs: [],
|
|
669
670
|
withdrawIxs: [],
|
|
670
671
|
postWithdrawIxs: [],
|
|
671
672
|
};
|
|
672
|
-
|
|
673
|
-
|
|
673
|
+
// compute the total shares the user has (in ATA + in farm) and check if they want to withdraw everything or just a part
|
|
674
|
+
let userSharesAtaBalance = new decimal_js_1.default(0);
|
|
675
|
+
const userSharesAta = (0, lib_1.getAssociatedTokenAddress)(vaultState.sharesMint, user);
|
|
676
|
+
const userSharesAtaState = await this.getConnection().getAccountInfo(userSharesAta);
|
|
677
|
+
if (userSharesAtaState) {
|
|
678
|
+
const userSharesAtaBalanceInLamports = (0, utils_1.getTokenBalanceFromAccountInfoLamports)(userSharesAtaState);
|
|
679
|
+
userSharesAtaBalance = userSharesAtaBalanceInLamports.div(new decimal_js_1.default(10).pow(vaultState.sharesMintDecimals.toString()));
|
|
680
|
+
}
|
|
681
|
+
let userSharesInFarm = new decimal_js_1.default(0);
|
|
674
682
|
if (hasFarm) {
|
|
683
|
+
userSharesInFarm = await (0, farm_utils_1.getUserSharesInFarm)(this.getConnection(), user, vaultState.vaultFarm, vaultState.sharesMintDecimals.toNumber());
|
|
684
|
+
}
|
|
685
|
+
let sharesToWithdraw = shareAmountToWithdraw;
|
|
686
|
+
const totalUserShares = userSharesAtaBalance.add(userSharesInFarm);
|
|
687
|
+
let withdrawAllShares = false;
|
|
688
|
+
if (sharesToWithdraw.gt(totalUserShares)) {
|
|
689
|
+
sharesToWithdraw = new decimal_js_1.default(utils_2.U64_MAX.toString()).div(new decimal_js_1.default(10).pow(vaultState.sharesMintDecimals.toString()));
|
|
690
|
+
withdrawAllShares = true;
|
|
691
|
+
}
|
|
692
|
+
// if not enough shares in ATA unstake from farm
|
|
693
|
+
const sharesInAtaAreEnoughForWithdraw = sharesToWithdraw.lte(userSharesAtaBalance);
|
|
694
|
+
if (hasFarm && !sharesInAtaAreEnoughForWithdraw) {
|
|
695
|
+
// if we need to unstake we need to make sure share ata is created
|
|
696
|
+
const [{ createAtaIx }] = (0, utils_2.createAtasIdempotent)(user, [
|
|
697
|
+
{
|
|
698
|
+
mint: vaultState.sharesMint,
|
|
699
|
+
tokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
|
|
700
|
+
},
|
|
701
|
+
]);
|
|
702
|
+
withdrawIxs.unstakeFromFarmIfNeededIxs.push(createAtaIx);
|
|
703
|
+
let shareLamportsToWithdraw = new decimal_js_1.default(utils_2.U64_MAX.toString());
|
|
704
|
+
if (!withdrawAllShares) {
|
|
705
|
+
const sharesToWithdrawFromFarm = sharesToWithdraw.sub(userSharesAtaBalance);
|
|
706
|
+
shareLamportsToWithdraw = (0, kliquidity_sdk_1.collToLamportsDecimal)(sharesToWithdrawFromFarm, vaultState.sharesMintDecimals.toNumber());
|
|
707
|
+
}
|
|
675
708
|
const unstakeAndWithdrawFromFarmIxs = await (0, farm_utils_1.getFarmUnstakeAndWithdrawIxs)(this.getConnection(), user, shareLamportsToWithdraw, vaultState.vaultFarm, farmState);
|
|
676
709
|
withdrawIxs.unstakeFromFarmIfNeededIxs.push(unstakeAndWithdrawFromFarmIxs.unstakeIx);
|
|
677
710
|
withdrawIxs.unstakeFromFarmIfNeededIxs.push(unstakeAndWithdrawFromFarmIxs.withdrawIx);
|
|
@@ -679,11 +712,11 @@ class KaminoVaultClient {
|
|
|
679
712
|
// if the vault has allocations withdraw otherwise wtihdraw from available ix
|
|
680
713
|
const vaultAllocation = vaultState.vaultAllocationStrategy.find((allocation) => !allocation.reserve.equals(web3_js_1.PublicKey.default));
|
|
681
714
|
if (vaultAllocation) {
|
|
682
|
-
const withdrawFromVaultIxs = await this.withdrawWithReserveIxs(user, kaminoVault,
|
|
715
|
+
const withdrawFromVaultIxs = await this.withdrawWithReserveIxs(user, kaminoVault, sharesToWithdraw, totalUserShares, slot, vaultReservesMap);
|
|
683
716
|
withdrawIxs.withdrawIxs = withdrawFromVaultIxs;
|
|
684
717
|
}
|
|
685
718
|
else {
|
|
686
|
-
const withdrawFromVaultIxs = await this.withdrawFromAvailableIxs(user, kaminoVault,
|
|
719
|
+
const withdrawFromVaultIxs = await this.withdrawFromAvailableIxs(user, kaminoVault, sharesToWithdraw);
|
|
687
720
|
withdrawIxs.withdrawIxs = withdrawFromVaultIxs;
|
|
688
721
|
}
|
|
689
722
|
// if the vault is for SOL return the ix to unwrap the SOL
|
|
@@ -692,6 +725,12 @@ class KaminoVaultClient {
|
|
|
692
725
|
const unwrapIx = (0, spl_token_1.createCloseAccountInstruction)(userWsolAta, user, user, [], spl_token_1.TOKEN_PROGRAM_ID);
|
|
693
726
|
withdrawIxs.postWithdrawIxs.push(unwrapIx);
|
|
694
727
|
}
|
|
728
|
+
// if we burn all of user's shares close its shares ATA
|
|
729
|
+
const burnAllUserShares = sharesToWithdraw.gt(userSharesAtaBalance);
|
|
730
|
+
if (burnAllUserShares) {
|
|
731
|
+
const closeAtaIx = (0, spl_token_1.createCloseAccountInstruction)(userSharesAta, user, user, [], spl_token_1.TOKEN_PROGRAM_ID);
|
|
732
|
+
withdrawIxs.postWithdrawIxs.push(closeAtaIx);
|
|
733
|
+
}
|
|
695
734
|
return withdrawIxs;
|
|
696
735
|
}
|
|
697
736
|
async withdrawFromAvailableIxs(user, vault, shareAmount) {
|
|
@@ -708,7 +747,7 @@ class KaminoVaultClient {
|
|
|
708
747
|
const withdrawFromAvailableIxn = await this.withdrawFromAvailableIx(user, kaminoVault, vaultState, userSharesAta, userTokenAta, shareLamportsToWithdraw);
|
|
709
748
|
return [createAtaIx, withdrawFromAvailableIxn];
|
|
710
749
|
}
|
|
711
|
-
async withdrawWithReserveIxs(user, vault, shareAmount, slot, vaultReservesMap) {
|
|
750
|
+
async withdrawWithReserveIxs(user, vault, shareAmount, allUserShares, slot, vaultReservesMap) {
|
|
712
751
|
const vaultState = await vault.getState(this.getConnection());
|
|
713
752
|
const vaultReservesState = vaultReservesMap ? vaultReservesMap : await this.loadVaultReserves(vaultState);
|
|
714
753
|
const userSharesAta = (0, lib_1.getAssociatedTokenAddress)(vaultState.sharesMint, user);
|
|
@@ -718,7 +757,9 @@ class KaminoVaultClient {
|
|
|
718
757
|
tokenProgram: vaultState.tokenProgram,
|
|
719
758
|
},
|
|
720
759
|
]);
|
|
721
|
-
const
|
|
760
|
+
const withdrawAllShares = shareAmount.gte(allUserShares);
|
|
761
|
+
const actualSharesToWithdraw = shareAmount.lte(allUserShares) ? shareAmount : allUserShares;
|
|
762
|
+
const shareLamportsToWithdraw = (0, kliquidity_sdk_1.collToLamportsDecimal)(actualSharesToWithdraw, vaultState.sharesMintDecimals.toNumber());
|
|
722
763
|
const tokensPerShare = await this.getTokensPerShareSingleVault(vault, slot);
|
|
723
764
|
const sharesPerToken = new decimal_js_1.default(1).div(tokensPerShare);
|
|
724
765
|
const tokensToWithdraw = shareLamportsToWithdraw.mul(tokensPerShare);
|
|
@@ -730,10 +771,18 @@ class KaminoVaultClient {
|
|
|
730
771
|
if (tokenLeftToWithdraw.lte(0)) {
|
|
731
772
|
// Availabe enough to withdraw all - using the first existent reserve
|
|
732
773
|
const firstReserve = vaultState.vaultAllocationStrategy.find((reserve) => !reserve.reserve.equals(web3_js_1.PublicKey.default));
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
774
|
+
if (withdrawAllShares) {
|
|
775
|
+
reserveWithSharesAmountToWithdraw.push({
|
|
776
|
+
reserve: firstReserve.reserve,
|
|
777
|
+
shares: new decimal_js_1.default(utils_2.U64_MAX.toString()),
|
|
778
|
+
});
|
|
779
|
+
}
|
|
780
|
+
else {
|
|
781
|
+
reserveWithSharesAmountToWithdraw.push({
|
|
782
|
+
reserve: firstReserve.reserve,
|
|
783
|
+
shares: shareLamportsToWithdraw,
|
|
784
|
+
});
|
|
785
|
+
}
|
|
737
786
|
}
|
|
738
787
|
else {
|
|
739
788
|
// Get decreasing order sorted available liquidity to withdraw from each reserve allocated to
|
|
@@ -749,9 +798,14 @@ class KaminoVaultClient {
|
|
|
749
798
|
tokensToWithdrawFromReserve = tokensToWithdrawFromReserve.add(availableTokens);
|
|
750
799
|
isFirstWithdraw = false;
|
|
751
800
|
}
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
801
|
+
if (withdrawAllShares) {
|
|
802
|
+
reserveWithSharesAmountToWithdraw.push({ reserve: key, shares: new decimal_js_1.default(utils_2.U64_MAX.toString()) });
|
|
803
|
+
}
|
|
804
|
+
else {
|
|
805
|
+
// round up to the nearest integer the shares to withdraw
|
|
806
|
+
const sharesToWithdrawFromReserve = tokensToWithdrawFromReserve.mul(sharesPerToken).ceil();
|
|
807
|
+
reserveWithSharesAmountToWithdraw.push({ reserve: key, shares: sharesToWithdrawFromReserve });
|
|
808
|
+
}
|
|
755
809
|
tokenLeftToWithdraw = tokenLeftToWithdraw.sub(tokensToWithdrawFromReserve);
|
|
756
810
|
}
|
|
757
811
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vault.js","sourceRoot":"","sources":["../../src/classes/vault.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vault.js","sourceRoot":"","sources":["../../src/classes/vault.ts"],"names":[],"mappings":";;;;;;AA4gGA,8CAKC;AAED,oDAEC;AAyFD,sCAOC;AArnGD,8CAAuC;AACvC,6CAWyB;AACzB,iDAM2B;AAC3B,gCAUgB;AAChB,2EA2BkD;AAClD,6DAA2F;AAC3F,mEAAkE;AAClE,4DAAiC;AACjC,mCAOiB;AACjB,2EAAmE;AACnE,2EAAoE;AACpE,wDAAsD;AAEtD,yCAAsC;AACtC,oCASkB;AAClB,gDAAwB;AACxB,sCAAmE;AAcnE,mEAAyF;AACzF,qGAA8F;AAC9F,yDAAkE;AAClE,sDAA2E;AAC3E,6CAKsB;AACtB,gDAAoH;AACpH,0CAAkD;AAErC,QAAA,aAAa,GAAG,IAAI,mBAAS,CAAC,6CAA6C,CAAC,CAAC;AAC7E,QAAA,oBAAoB,GAAG,IAAI,mBAAS,CAAC,6CAA6C,CAAC,CAAC;AAEjG,MAAM,gBAAgB,GAAG,aAAa,CAAC;AACvC,MAAM,iBAAiB,GAAG,cAAc,CAAC;AACzC,MAAM,yBAAyB,GAAG,WAAW,CAAC;AAC9C,MAAM,WAAW,GAAG,QAAQ,CAAC;AAC7B,MAAM,oBAAoB,GAAG,mBAAmB,CAAC;AACpC,QAAA,aAAa,GAAG,UAAU,CAAC;AAE3B,QAAA,mBAAmB,GAAc,IAAI,mBAAS,CAAC,6CAA6C,CAAC,CAAC;AAE9F,QAAA,wBAAwB,GAAG,IAAI,CAAC;AAE7C;;GAEG;AACH,MAAa,iBAAiB;IACX,WAAW,CAAa;IACxB,qBAAqB,CAAY;IACjC,oBAAoB,CAAY;IACjD,oBAAoB,CAAS;IAE7B,YACE,UAAsB,EACtB,oBAA4B,EAC5B,oBAAgC,EAChC,mBAA+B;QAE/B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,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;IACrF,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,OAAO;QACL,OAAO;IACT,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CAAC,WAAsB,EAAE,UAAuB;QAC9D,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,qBAAU,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,WAAW,CAAC,CAAC;QAElG,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,GAAG,CAAC,SAAS,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACpF,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACnD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC7D,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAClF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAE1D,MAAM,YAAY,GAAG,IAAI,oBAAO,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAG,CAAC,CAAC,GAAG,CAClE,IAAI,oBAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CACjD,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;QAC7C,aAAa,CAAC,QAAQ,CAAC,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc,CAAC,WAA8B;QACjD,MAAM,UAAU,GAAG,iBAAO,CAAC,QAAQ,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,qBAAU,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;QAExC,MAAM,aAAa,GAAG,uBAAa,CAAC,aAAa,CAAC;YAChD,UAAU,EAAE,WAAW,CAAC,KAAK;YAC7B,gBAAgB,EAAE,UAAU,CAAC,SAAS;YACtC,QAAQ,EAAE,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,iCAAiC,CAAC,IAAI,CAAC;YAC5E,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,IAAI,CAAC,qBAAqB;SACtC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,mBAAS,CAAC,sBAAsB,CACjD,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,EAC/D,IAAI,CAAC,qBAAqB,CAC3B,CAAC,CAAC,CAAC,CAAC;QAEL,MAAM,kBAAkB,GAAG,mBAAS,CAAC,sBAAsB,CACzD,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,EACxE,IAAI,CAAC,qBAAqB,CAC3B,CAAC,CAAC,CAAC,CAAC;QAEL,MAAM,UAAU,GAAG,mBAAS,CAAC,sBAAsB,CACjD,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,EAC1D,IAAI,CAAC,qBAAqB,CAC3B,CAAC,CAAC,CAAC,CAAC;QAEL,IAAI,iBAA4B,CAAC;QACjC,MAAM,eAAe,GAA6B,EAAE,CAAC;QACrD,MAAM,UAAU,GAA6B,EAAE,CAAC;QAChD,IAAI,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,uBAAW,CAAC,EAAE,CAAC;YAC9C,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,MAAM,IAAA,8BAAsB,EACzE,IAAI,CAAC,aAAa,EAAE,EACpB,IAAI,oBAAO,CAAC,6BAAqB,CAAC,EAClC,WAAW,CAAC,KAAK,CAClB,CAAC;YACF,iBAAiB,GAAG,OAAO,CAAC;YAE5B,eAAe,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;YACtC,UAAU,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,iBAAiB,GAAG,IAAA,yCAA6B,EAC/C,WAAW,CAAC,SAAS,EACrB,WAAW,CAAC,KAAK,EACjB,KAAK,EACL,WAAW,CAAC,kBAAkB,CAC/B,CAAC;QACJ,CAAC;QAED,MAAM,iBAAiB,GAAsB;YAC3C,cAAc,EAAE,WAAW,CAAC,KAAK;YACjC,UAAU,EAAE,UAAU,CAAC,SAAS;YAChC,aAAa,EAAE,WAAW,CAAC,SAAS;YACpC,UAAU;YACV,kBAAkB;YAClB,UAAU;YACV,aAAa,EAAE,uBAAa,CAAC,SAAS;YACtC,IAAI,EAAE,4BAAkB;YACxB,YAAY,EAAE,WAAW,CAAC,kBAAkB;YAC5C,kBAAkB,EAAE,4BAAgB;YACpC,iBAAiB;SAClB,CAAC;QACF,MAAM,WAAW,GAAG,IAAA,wBAAS,EAAC,iBAAiB,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAE7E,2CAA2C;QAC3C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,CAAC;QAClD,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,GAAG,IAAA,+BAAiB,EAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAEtE,MAAM,oBAAoB,GAAG;YAC3B,WAAW,CAAC,KAAK;YACjB,UAAU,CAAC,SAAS;YACpB,WAAW,CAAC,SAAS;YACrB,WAAW,CAAC,kBAAkB;YAC9B,kBAAkB;YAClB,UAAU;YACV,uBAAa,CAAC,SAAS;YACvB,4BAAkB;YAClB,4BAAgB;YAChB,IAAI,CAAC,oBAAoB;YACzB,oCAA0B;SAC3B,CAAC;QACF,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,oBAAoB,EAAE,EAAE,CAAC,CAAC;QAE/G,MAAM,QAAQ,GAAG,IAAI,CAAC,gCAAgC,CACpD,WAAW,CAAC,KAAK,EACjB,UAAU,CAAC,SAAS,EACpB,IAAI,wBAAgB,CAAC,WAAW,EAAE,EAClC,GAAG,CAAC,QAAQ,EAAE,CACf,CAAC;QAEF,MAAM,GAAG,GAAG,CAAC,aAAa,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QAEnD,IAAI,WAAW,CAAC,oBAAoB,EAAE,GAAG,CAAC,EAAE,CAAC;YAC3C,MAAM,mBAAmB,GAAG,IAAI,CAAC,gCAAgC,CAC/D,WAAW,CAAC,KAAK,EACjB,UAAU,CAAC,SAAS,EACpB,IAAI,wBAAgB,CAAC,iBAAiB,EAAE,EACxC,WAAW,CAAC,oBAAoB,EAAE,CAAC,QAAQ,EAAE,CAC9C,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAChC,CAAC;QACD,IAAI,WAAW,CAAC,mBAAmB,EAAE,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,kBAAkB,GAAG,IAAI,CAAC,gCAAgC,CAC9D,WAAW,CAAC,KAAK,EACjB,UAAU,CAAC,SAAS,EACpB,IAAI,wBAAgB,CAAC,gBAAgB,EAAE,EACvC,WAAW,CAAC,mBAAmB,EAAE,CAAC,QAAQ,EAAE,CAC7C,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC/B,CAAC;QACD,IAAI,WAAW,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpD,MAAM,SAAS,GAAG,IAAI,CAAC,gCAAgC,CACrD,WAAW,CAAC,KAAK,EACjB,UAAU,CAAC,SAAS,EACpB,IAAI,wBAAgB,CAAC,IAAI,EAAE,EAC3B,WAAW,CAAC,IAAI,CACjB,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtB,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAClD,IAAI,CAAC,aAAa,EAAE,EACpB,WAAW,CAAC,KAAK,EACjB,UAAU,CAAC,SAAS,EACpB,UAAU,EACV,kBAAkB,EAClB,WAAW,CAAC,gBAAgB,EAC5B,WAAW,CAAC,cAAc,CAC3B,CAAC;QAEF,OAAO;YACL,KAAK,EAAE,UAAU;YACjB,YAAY,EAAE;gBACZ,oBAAoB,EAAE,eAAe;gBACrC,YAAY,EAAE,GAAG;gBACjB,WAAW;gBACX,cAAc,EAAE,gBAAgB;gBAChC,UAAU;gBACV,oBAAoB,EAAE,UAAU;aACjC;SACF,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,sBAAsB,CAC1B,UAAsB,EACtB,UAAqB,EACrB,KAAgB,EAChB,UAAqB,EACrB,kBAA6B,EAC7B,SAAiB,EACjB,SAAiB;QAEjB,MAAM,CAAC,kBAAkB,CAAC,GAAG,IAAA,kCAA0B,EAAC,UAAU,CAAC,CAAC;QAEpE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,IAAA,0BAAe,EAAC,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAEhF,MAAM,EAAE,GACN,CAAC,MAAM,UAAU,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,KAAK,IAAI;YAC5D,CAAC,CAAC,MAAM,IAAA,8CAAmC,EACvC,UAAU,EACV,UAAU,EACV,KAAK,EACL,UAAU,EACV,kBAAkB,EAClB,IAAI,EACJ,MAAM,EACN,GAAG,CACJ;YACH,CAAC,CAAC,MAAM,IAAA,oCAAyB,EAC7B,UAAU,EACV,UAAU,EACV,KAAK,EACL,UAAU,EACV,kBAAkB,EAClB,IAAI,EACJ,MAAM,EACN,GAAG,CACJ,CAAC;QAER,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,0BAA0B,CAC9B,KAAkB,EAClB,uBAAgD,EAChD,MAAkB;QAElB,MAAM,UAAU,GAAe,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC1E,MAAM,YAAY,GAAY,uBAAuB,CAAC,eAAe,EAAE,CAAC;QAExE,MAAM,WAAW,GAAG,iBAAiB,CACnC,KAAK,CAAC,OAAO,EACb,uBAAuB,CAAC,iBAAiB,EAAE,EAC3C,IAAI,CAAC,qBAAqB,CAC3B,CAAC;QAEF,MAAM,gBAAgB,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,mBAAmB,CAAC;QAC1E,MAAM,+BAA+B,GAAoC;YACvE,MAAM,EAAE,gBAAgB;YACxB,UAAU,EAAE,KAAK,CAAC,OAAO;YACzB,kBAAkB,EAAE,UAAU,CAAC,kBAAkB;YACjD,qBAAqB,EAAE,YAAY,CAAC,UAAU,CAAC,UAAU;YACzD,OAAO,EAAE,uBAAuB,CAAC,iBAAiB,EAAE;YACpD,WAAW,EAAE,WAAW;YACxB,aAAa,EAAE,uBAAa,CAAC,SAAS;YACtC,IAAI,EAAE,4BAAkB;YACxB,6BAA6B,EAAE,4BAAgB;SAChD,CAAC;QAEF,MAAM,2BAA2B,GAAgC;YAC/D,MAAM,EAAE,IAAI,WAAE,CAAC,uBAAuB,CAAC,sBAAsB,CAAC;YAC9D,GAAG,EAAE,IAAI,WAAE,CAAC,uBAAuB,CAAC,wBAAwB,EAAE,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,CAAC;SACnF,CAAC;QAEF,MAAM,yBAAyB,GAAG,IAAA,sCAAuB,EACvD,2BAA2B,EAC3B,+BAA+B,EAC/B,IAAI,CAAC,qBAAqB,CAC3B,CAAC;QAEF,MAAM,kBAAkB,GAAG;YACzB,uBAAuB,CAAC,iBAAiB,EAAE;YAC3C,WAAW;YACX,GAAG,IAAI,CAAC,+BAA+B,CAAC,YAAY,CAAC;SACtD,CAAC;QAEF,MAAM,iBAAiB,GAAG,IAAA,4BAAoB,EAAC,YAAY,CAAC,aAAa,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;QACzG,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAE3C,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAC1D,UAAU,CAAC,mBAAmB,EAC9B,UAAU,CAAC,gBAAgB,EAC3B,kBAAkB,CACnB,CAAC;QAEF,MAAM,0BAA0B,GAA+B;YAC7D,yBAAyB;YACzB,YAAY,EAAE,gBAAgB;SAC/B,CAAC;QAEF,OAAO,0BAA0B,CAAC;IACpC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,uCAAuC,CAC3C,KAAkB,EAClB,OAAkB,EAClB,KAAiB;QAEjB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAE9D,MAAM,yBAAyB,GAAG,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CACvF,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CACnC,CAAC;QAEF,MAAM,0BAA0B,GAA+B;YAC7D,0BAA0B,EAAE,EAAE;YAC9B,SAAS,EAAE,EAAE;SACd,CAAC;QACF,IAAI,CAAC,yBAAyB,EAAE,CAAC;YAC/B,OAAO,0BAA0B,CAAC;QACpC,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,aAAO,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,OAAO,CAAC,CAAC;QACxE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,0BAA0B,CAAC;QACpC,CAAC;QACD,MAAM,kBAAkB,GAAuB;YAC7C,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,YAAY;SACpB,CAAC;QACF,MAAM,uBAAuB,GAAG,IAAI,uBAAuB,CAAC,kBAAkB,EAAE,CAAC,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnG,+CAA+C;QAC/C,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC;QAE7F,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,mBAAmB,CAAC;QACnE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC;QAC3F,0BAA0B,CAAC,0BAA0B,GAAG,CAAC,cAAc,CAAC,yBAAyB,CAAC,CAAC;QACnG,0BAA0B,CAAC,SAAS,GAAG,QAAQ,CAAC;QAEhD,OAAO,0BAA0B,CAAC;IACpC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,+CAA+C,CACnD,KAAkB,EAClB,gBAA0D,EAC1D,KAAiB;QAEjB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAE9D,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,0BAA0B,GAA+B;YAC7D,0BAA0B,EAAE,EAAE;YAC9B,SAAS,EAAE,EAAE;SACd,CAAC;QAEF,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,gBAAgB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC9D,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,kBAAkB,GAAuB;gBAC7C,OAAO,EAAE,OAAO;gBAChB,KAAK,EAAE,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAE,CAAC,KAAK;aAC5C,CAAC;YACF,MAAM,uBAAuB,GAAG,IAAI,uBAAuB,CAAC,kBAAkB,EAAE,CAAC,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YAEnG,+CAA+C;YAC/C,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC;YAC7F,0BAA0B,CAAC,0BAA0B,CAAC,IAAI,CAAC,cAAc,CAAC,yBAAyB,CAAC,CAAC;QACvG,CAAC;QAED,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,mBAAmB,CAAC;QACnE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QACtE,0BAA0B,CAAC,SAAS,GAAG,SAAS,CAAC;QAEjD,OAAO,0BAA0B,CAAC;IACpC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,6BAA6B,CACjC,KAAkB,EAClB,OAAkB;QAElB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAE9D,MAAM,yBAAyB,GAAG,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CACvF,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CACnC,CAAC;QAEF,IAAI,CAAC,yBAAyB,EAAE,CAAC;YAC/B,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,QAAQ,GAA6B;YACzC,mBAAmB,EAAE,UAAU,CAAC,mBAAmB;YACnD,UAAU,EAAE,KAAK,CAAC,OAAO;YACzB,OAAO;SACR,CAAC;QAEF,OAAO,IAAA,+BAAgB,EAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,oBAAoB,CACxB,KAAkB,EAClB,IAA0B,EAC1B,KAAa,EACb,MAAkB;QAElB,MAAM,UAAU,GAAe,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAE1E,MAAM,qBAAqB,GAA8B;YACvD,mBAAmB,EAAE,UAAU,CAAC,mBAAmB;YACnD,UAAU,EAAE,KAAK,CAAC,OAAO;YACzB,YAAY,EAAE,IAAI,CAAC,oBAAoB;SACxC,CAAC;QACF,IAAI,MAAM,EAAE,CAAC;YACX,qBAAqB,CAAC,mBAAmB,GAAG,MAAM,CAAC;QACrD,CAAC;QAED,MAAM,qBAAqB,GAA0B;YACnD,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;SACvB,CAAC;QAEF,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAClB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,wBAAgB,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;gBACnD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;gBACrD,qBAAqB,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjD,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,IAAI,mBAAS,CAAC,KAAK,CAAC,CAAC;gBAClC,qBAAqB,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC/C,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAClD,qBAAqB,CAAC,IAAI,GAAG,MAAM,CAAC;QACtC,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACxD,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAEpE,IAAI,yBAAyB,GAAkB,EAAE,CAAC;QAClD,IAAI,2BAA2B,GAAkB,EAAE,CAAC;QACpD,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAChC,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACrD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAC7D,CAAC;YACD,yBAAyB,GAAG,yBAAyB,CAAC,MAAM,CAAC;gBAC3D,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;aACvD,CAAC,CAAC;YACH,2BAA2B,GAAG,2BAA2B,CAAC,MAAM,CAAC;gBAC/D,EAAE,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;aACjF,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,mBAAmB,GAAG,IAAA,gCAAiB,EAC3C,qBAAqB,EACrB,qBAAqB,EACrB,IAAI,CAAC,qBAAqB,CAC3B,CAAC;QAEF,mBAAmB,CAAC,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;QACtF,mBAAmB,CAAC,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;QAExF,MAAM,YAAY,GAA6B,EAAE,CAAC;QAElD,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,wBAAgB,CAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE,CAAC;YAChE,MAAM,SAAS,GAAG,IAAI,mBAAS,CAAC,KAAK,CAAC,CAAC;YACvC,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAC1D,UAAU,CAAC,mBAAmB,EAC9B,UAAU,CAAC,gBAAgB,EAC3B,CAAC,SAAS,CAAC,CACZ,CAAC;YACF,YAAY,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;QACzC,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,wBAAgB,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;YAC1D,MAAM,cAAc,GAAG,CAAC,IAAI,mBAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9C,2EAA2E;YAC3E,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,gBAAS,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjF,cAAc,CAAC,IAAI,CACjB,SAAU,CAAC,SAAS,EACpB,SAAU,CAAC,mBAAmB,EAC9B,SAAU,CAAC,KAAK,CAAC,IAAI,EACrB,SAAU,CAAC,WAAW,EACtB,SAAU,CAAC,YAAY,CACxB,CAAC;gBACF,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAC1D,UAAU,CAAC,mBAAmB,EAC9B,UAAU,CAAC,gBAAgB,EAC3B,cAAc,CACf,CAAC;gBACF,YAAY,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;YACzC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,uBAAuB,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QAED,MAAM,oBAAoB,GAAyB;YACjD,mBAAmB;YACnB,YAAY;SACb,CAAC;QAEF,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe,CACnB,KAAkB,EAClB,IAAe,EACf,kBAA2B,IAAI;QAE/B,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC/D,IAAI,YAAY,IAAI,eAAe,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,mFAAmF,CAAC,CAAC;QACvG,CAAC;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,IAAI,wBAAgB,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACxF,CAAC;IAED;;;;;;OAMG;IACK,gCAAgC,CACtC,KAAgB,EAChB,KAAgB,EAChB,IAA0B,EAC1B,KAAa;QAEb,MAAM,qBAAqB,GAA8B;YACvD,mBAAmB,EAAE,KAAK;YAC1B,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,IAAI,CAAC,oBAAoB;SACxC,CAAC;QAEF,MAAM,qBAAqB,GAA0B;YACnD,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;SACvB,CAAC;QAEF,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAClB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,wBAAgB,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;gBACnD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;gBACrD,qBAAqB,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjD,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,IAAI,mBAAS,CAAC,KAAK,CAAC,CAAC;gBAClC,qBAAqB,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC/C,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAClD,qBAAqB,CAAC,IAAI,GAAG,MAAM,CAAC;QACtC,CAAC;QAED,MAAM,mBAAmB,GAAG,IAAA,gCAAiB,EAC3C,qBAAqB,EACrB,qBAAqB,EACrB,IAAI,CAAC,qBAAqB,CAC3B,CAAC;QAEF,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,uBAAuB,CAAC,KAAkB;QAC9C,MAAM,UAAU,GAAe,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAE1E,MAAM,sBAAsB,GAAwB;YAClD,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,UAAU,EAAE,KAAK,CAAC,OAAO;SAC1B,CAAC;QAEF,MAAM,sBAAsB,GAAG,IAAA,0BAAW,EAAC,sBAAsB,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAE/F,8EAA8E;QAC9E,MAAM,qBAAqB,GAAG,CAAC,MAAM,IAAA,8BAAgB,EAAC,IAAI,CAAC,aAAa,EAAE,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAC9G,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAC7D,CAAC;QAEF,MAAM,MAAM,GAA6B,EAAE,CAAC;QAC5C,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,IAAA,+BAAiB,EAAC,UAAU,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;QAEhH,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAC1D,UAAU,CAAC,YAAY,EACvB,MAAM,EACN,qBAAqB,EACrB,EAAE,CACH,CAAC;QAEF,MAAM,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;QAEjC,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAC1D,KAAK,EACL,IAAI,wBAAgB,CAAC,WAAW,EAAE,EAClC,MAAM,CAAC,QAAQ,EAAE,EACjB,UAAU,CAAC,YAAY,CACxB,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,CAAC;QACtD,MAAM,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC;QAElD,MAAM,uBAAuB,GAA4B;YACvD,sBAAsB;YACtB,YAAY;YACZ,YAAY,EAAE,MAAM;SACrB,CAAC;QAEF,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CAAC,KAAkB,EAAE,iBAA0B;QACtE,MAAM,UAAU,GAAe,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAE1E,MAAM,yBAAyB,GAA8B;YAC3D,mBAAmB,EAAE,UAAU,CAAC,mBAAmB;YACnD,UAAU,EAAE,KAAK,CAAC,OAAO;YACzB,YAAY,EAAE,IAAI,CAAC,oBAAoB;SACxC,CAAC;QAEF,MAAM,yBAAyB,GAAG,IAAA,+BAAuB,EACvD,iBAAiB,EACjB,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CACxC,CAAC;QACF,MAAM,qBAAqB,GAA0B;YACnD,iBAAiB,EAAE,IAAI,WAAE,CAAC,yBAAyB,CAAC,QAAQ,EAAE,CAAC;SAChE,CAAC;QAEF,OAAO,IAAA,gCAAiB,EAAC,qBAAqB,EAAE,yBAAyB,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACzG,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,sBAAsB,CAC1B,KAAkB,EAClB,IAAY,EACZ,gBAA0D;QAE1D,MAAM,UAAU,GAAe,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC1E,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC1G,MAAM,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC,GAAG,IAAA,4BAAoB,EAAC,UAAU,CAAC,mBAAmB,EAAE;YACjG;gBACE,IAAI,EAAE,UAAU,CAAC,SAAS;gBAC1B,YAAY,EAAE,4BAAgB;aAC/B;SACF,CAAC,CAAC;QAEH,MAAM,gBAAgB,GAAG,IAAI,mBAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC;QAC5E,IAAI,mBAAmB,GAAG,gBAAgB,CAAC;QAC3C,mBAAmB,GAAG,mBAAmB,CAAC,GAAG,CAAC,IAAI,oBAAO,CAAC,UAAU,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACjG,MAAM,kBAAkB,GAAgB,EAAE,CAAC;QAE3C,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,8EAA8E;YAC9E,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,6FAA6F;YAC7F,MAAM,6CAA6C,GAAG,MAAM,IAAI,CAAC,gDAAgD,CAC/G,KAAK,EACL,IAAI,EACJ,kBAAkB,CACnB,CAAC;YACF,OAAO;YACP,MAAM,mDAAmD,GAAG,IAAI,mBAAa,CAC3E,CAAC,GAAG,6CAA6C,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CACvG,CAAC;YAEF,mDAAmD,CAAC,OAAO,CAAC,CAAC,4BAA4B,EAAE,GAAG,EAAE,EAAE;gBAChG,IAAI,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC9B,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC7B,mBAAmB,GAAG,mBAAmB,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,aAAO,CAAC,aAAa,CAC/C,IAAI,CAAC,aAAa,EAAE,EACpB,kBAAkB,EAClB,IAAI,CAAC,oBAAoB,CAC1B,CAAC;QACF,MAAM,WAAW,GAA6B,MAAM,OAAO,CAAC,GAAG,CAC7D,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;YAC9C,IAAI,aAAa,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;gBAClC,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAC7D,CAAC;YAED,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAE,CAAC;YAC3C,MAAM,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC;YAEjD,OAAO,IAAI,CAAC,qBAAqB,CAC/B,KAAK,EACL,UAAU,EACV,aAAa,EACb,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,EACzC,aAAa,CACd,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,CAAC,WAAW,EAAE,GAAG,WAAW,CAAC,CAAC;IACvC,CAAC;IAED,4EAA4E;IAC5E,+EAA+E;IAE/E,qDAAqD;IACrD,iDAAiD;IACjD,iCAAiC;IACjC,OAAO;IAEP,uEAAuE;IACvE,IAAI;IAEJ;;;;;;;;OAQG;IACH,KAAK,CAAC,UAAU,CACd,IAAe,EACf,KAAkB,EAClB,WAAoB,EACpB,gBAA0D,EAC1D,SAAqB;QAErB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAE9D,MAAM,cAAc,GAAG,UAAU,CAAC,YAAY,CAAC;QAC/C,MAAM,YAAY,GAAG,IAAA,+BAAyB,EAAC,UAAU,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACjG,MAAM,aAAa,GAA6B,EAAE,CAAC;QACnD,MAAM,YAAY,GAA6B,EAAE,CAAC;QAClD,IAAI,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,uBAAW,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,GAAG,IAAA,4BAAoB,EAAC,IAAI,EAAE;gBACnF;oBACE,IAAI,EAAE,uBAAW;oBACjB,YAAY,EAAE,4BAAgB;iBAC/B;aACF,CAAC,CAAC;YACH,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACrC,MAAM,eAAe,GAAG,IAAA,wBAAkB,EACxC,IAAI,EACJ,OAAO,EACP,IAAA,+BAAuB,EAAC,WAAW,EAAE,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,CACrF,CAAC;YACF,aAAa,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC;QACzC,CAAC;QAED,MAAM,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC,GAAG,IAAA,4BAAoB,EAAC,IAAI,EAAE;YAC3F;gBACE,IAAI,EAAE,UAAU,CAAC,UAAU;gBAC3B,YAAY,EAAE,4BAAgB;aAC/B;SACF,CAAC,CAAC;QACH,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAEvC,MAAM,cAAc,GAAG,oBAAoB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACxE,MAAM,eAAe,GAAoB;YACvC,IAAI,EAAE,IAAI;YACV,UAAU,EAAE,KAAK,CAAC,OAAO;YACzB,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,kBAAkB,EAAE,UAAU,CAAC,kBAAkB;YACjD,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,YAAY,EAAE,YAAY;YAC1B,aAAa,EAAE,aAAa;YAC5B,YAAY,EAAE,cAAc;YAC5B,YAAY,EAAE,IAAI,CAAC,oBAAoB;YACvC,kBAAkB,EAAE,4BAAgB;YACpC,cAAc,EAAE,cAAc;YAC9B,OAAO,EAAE,IAAI,CAAC,qBAAqB;SACpC,CAAC;QAEF,MAAM,WAAW,GAAgB;YAC/B,SAAS,EAAE,IAAI,WAAE,CACf,IAAA,+BAAuB,EAAC,WAAW,EAAE,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,CACjG;SACF,CAAC;QAEF,MAAM,SAAS,GAAG,IAAA,sBAAO,EAAC,WAAW,EAAE,eAAe,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAEpF,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAExD,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAE1G,IAAI,yBAAyB,GAAkB,EAAE,CAAC;QAClD,IAAI,2BAA2B,GAAkB,EAAE,CAAC;QACpD,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAChC,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACrD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAC7D,CAAC;YACD,yBAAyB,GAAG,yBAAyB,CAAC,MAAM,CAAC;gBAC3D,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;aACvD,CAAC,CAAC;YACH,2BAA2B,GAAG,2BAA2B,CAAC,MAAM,CAAC;gBAC/D,EAAE,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;aACjF,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,SAAS,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;QAClE,SAAS,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;QAEpE,MAAM,UAAU,GAAe;YAC7B,UAAU,EAAE,CAAC,GAAG,aAAa,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC;YAC1D,sBAAsB,EAAE,EAAE;SAC3B,CAAC;QAEF,8GAA8G;QAC9G,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,CAAC;YACjD,OAAO,UAAU,CAAC;QACpB,CAAC;QAED,uCAAuC;QACvC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QACpF,UAAU,CAAC,sBAAsB,GAAG,cAAc,CAAC;QACnD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,cAAc,CAClB,IAAe,EACf,KAAkB,EAClB,YAAsB,EACtB,SAAqB;QAErB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAE9D,IAAI,qBAAqB,GAAG,IAAI,oBAAO,CAAC,eAAO,CAAC,CAAC;QACjD,IAAI,YAAY,EAAE,CAAC;YACjB,qBAAqB,GAAG,IAAA,+BAAuB,EAAC,YAAY,EAAE,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC1G,CAAC;QAED,6EAA6E;QAC7E,IAAI,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC;YACzE,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,2FAA2F;QAC3F,OAAO,IAAA,4BAAe,EAAC,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAC7G,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,WAAW,CACf,IAAe,EACf,KAAkB,EAClB,qBAA8B,EAC9B,IAAY,EACZ,gBAA0D,EAC1D,SAAqB;QAErB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC9D,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAChF,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAE1D,MAAM,WAAW,GAAgB;YAC/B,0BAA0B,EAAE,EAAE;YAC9B,WAAW,EAAE,EAAE;YACf,eAAe,EAAE,EAAE;SACpB,CAAC;QAEF,wHAAwH;QACxH,IAAI,oBAAoB,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,aAAa,GAAG,IAAA,+BAAyB,EAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC7E,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;QACpF,IAAI,kBAAkB,EAAE,CAAC;YACvB,MAAM,8BAA8B,GAAG,IAAA,8CAAsC,EAAC,kBAAkB,CAAC,CAAC;YAClG,oBAAoB,GAAG,8BAA8B,CAAC,GAAG,CACvD,IAAI,oBAAO,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAC9D,CAAC;QACJ,CAAC;QAED,IAAI,gBAAgB,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACZ,gBAAgB,GAAG,MAAM,IAAA,gCAAmB,EAC1C,IAAI,CAAC,aAAa,EAAE,EACpB,IAAI,EACJ,UAAU,CAAC,SAAS,EACpB,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CACzC,CAAC;QACJ,CAAC;QAED,IAAI,gBAAgB,GAAG,qBAAqB,CAAC;QAC7C,MAAM,eAAe,GAAG,oBAAoB,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACnE,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAC9B,IAAI,gBAAgB,CAAC,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;YACzC,gBAAgB,GAAG,IAAI,oBAAO,CAAC,eAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CACpD,IAAI,oBAAO,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAC9D,CAAC;YACF,iBAAiB,GAAG,IAAI,CAAC;QAC3B,CAAC;QAED,gDAAgD;QAChD,MAAM,+BAA+B,GAAG,gBAAgB,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QACnF,IAAI,OAAO,IAAI,CAAC,+BAA+B,EAAE,CAAC;YAChD,kEAAkE;YAClE,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,IAAA,4BAAoB,EAAC,IAAI,EAAE;gBACnD;oBACE,IAAI,EAAE,UAAU,CAAC,UAAU;oBAC3B,YAAY,EAAE,4BAAgB;iBAC/B;aACF,CAAC,CAAC;YACH,WAAW,CAAC,0BAA0B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACzD,IAAI,uBAAuB,GAAG,IAAI,oBAAO,CAAC,eAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC9D,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACvB,MAAM,wBAAwB,GAAG,gBAAgB,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;gBAC5E,uBAAuB,GAAG,IAAA,sCAAqB,EAC7C,wBAAwB,EACxB,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CACzC,CAAC;YACJ,CAAC;YACD,MAAM,6BAA6B,GAAG,MAAM,IAAA,yCAA4B,EACtE,IAAI,CAAC,aAAa,EAAE,EACpB,IAAI,EACJ,uBAAuB,EACvB,UAAU,CAAC,SAAS,EACpB,SAAS,CACV,CAAC;YACF,WAAW,CAAC,0BAA0B,CAAC,IAAI,CAAC,6BAA6B,CAAC,SAAS,CAAC,CAAC;YACrF,WAAW,CAAC,0BAA0B,CAAC,IAAI,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC;QACxF,CAAC;QAED,6EAA6E;QAC7E,MAAM,eAAe,GAAG,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAC7D,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,CAC9D,CAAC;QAEF,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAC5D,IAAI,EACJ,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,IAAI,EACJ,gBAAgB,CACjB,CAAC;YACF,WAAW,CAAC,WAAW,GAAG,oBAAoB,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC;YACtG,WAAW,CAAC,WAAW,GAAG,oBAAoB,CAAC;QACjD,CAAC;QAED,0DAA0D;QAC1D,IAAI,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,uBAAW,CAAC,EAAE,CAAC;YAC7C,MAAM,WAAW,GAAG,IAAA,+BAAyB,EAAC,uBAAW,EAAE,IAAI,CAAC,CAAC;YACjE,MAAM,QAAQ,GAAG,IAAA,yCAA6B,EAAC,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,4BAAgB,CAAC,CAAC;YAC9F,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7C,CAAC;QAED,uDAAuD;QACvD,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC;QACpE,IAAI,iBAAiB,EAAE,CAAC;YACtB,MAAM,UAAU,GAAG,IAAA,yCAA6B,EAAC,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,4BAAgB,CAAC,CAAC;YAClG,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,IAAe,EACf,KAAkB,EAClB,WAAoB;QAEpB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC9D,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAEhF,MAAM,aAAa,GAAG,IAAA,+BAAyB,EAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC7E,MAAM,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,GAAG,IAAA,4BAAoB,EAAC,IAAI,EAAE;YACtE;gBACE,IAAI,EAAE,UAAU,CAAC,SAAS;gBAC1B,YAAY,EAAE,UAAU,CAAC,YAAY;aACtC;SACF,CAAC,CAAC;QAEH,MAAM,uBAAuB,GAAG,IAAA,sCAAqB,EAAC,WAAW,EAAE,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC7G,MAAM,wBAAwB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CACjE,IAAI,EACJ,WAAW,EACX,UAAU,EACV,aAAa,EACb,YAAY,EACZ,uBAAuB,CACxB,CAAC;QAEF,OAAO,CAAC,WAAW,EAAE,wBAAwB,CAAC,CAAC;IACjD,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAClC,IAAe,EACf,KAAkB,EAClB,WAAoB,EACpB,aAAsB,EACtB,IAAY,EACZ,gBAA0D;QAE1D,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAE9D,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC1G,MAAM,aAAa,GAAG,IAAA,+BAAyB,EAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC7E,MAAM,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,GAAG,IAAA,4BAAoB,EAAC,IAAI,EAAE;YACtE;gBACE,IAAI,EAAE,UAAU,CAAC,SAAS;gBAC1B,YAAY,EAAE,UAAU,CAAC,YAAY;aACtC;SACF,CAAC,CAAC;QAEH,MAAM,iBAAiB,GAAG,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACzD,MAAM,sBAAsB,GAAG,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;QAC5F,MAAM,uBAAuB,GAAG,IAAA,sCAAqB,EACnD,sBAAsB,EACtB,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CACzC,CAAC;QACF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC5E,MAAM,cAAc,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC1D,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACrE,IAAI,mBAAmB,GAAG,gBAAgB,CAAC;QAC3C,MAAM,eAAe,GAAG,IAAI,oBAAO,CAAC,UAAU,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC1E,mBAAmB,GAAG,mBAAmB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAI/D,MAAM,iCAAiC,GAAkC,EAAE,CAAC;QAC5E,IAAI,eAAe,GAAG,IAAI,CAAC;QAE3B,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,qEAAqE;YACrE,MAAM,YAAY,GAAG,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAC1D,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,CACxD,CAAC;YACF,IAAI,iBAAiB,EAAE,CAAC;gBACtB,iCAAiC,CAAC,IAAI,CAAC;oBACrC,OAAO,EAAE,YAAa,CAAC,OAAO;oBAC9B,MAAM,EAAE,IAAI,oBAAO,CAAC,eAAO,CAAC,QAAQ,EAAE,CAAC;iBACxC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,iCAAiC,CAAC,IAAI,CAAC;oBACrC,OAAO,EAAE,YAAa,CAAC,OAAO;oBAC9B,MAAM,EAAE,uBAAuB;iBAChC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,CAAC;YACN,6FAA6F;YAC7F,MAAM,6CAA6C,GAAG,MAAM,IAAI,CAAC,gDAAgD,CAC/G,KAAK,EACL,IAAI,EACJ,kBAAkB,CACnB,CAAC;YACF,OAAO;YACP,MAAM,mDAAmD,GAAG;gBAC1D,GAAG,6CAA6C,CAAC,OAAO,EAAE;aAC3D,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YAE5C,mDAAmD,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,4BAA4B,CAAC,EAAE,CAAC,EAAE,EAAE;gBACrG,IAAI,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC9B,IAAI,2BAA2B,GAAG,oBAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,4BAA4B,CAAC,CAAC;oBACjG,IAAI,eAAe,EAAE,CAAC;wBACpB,2BAA2B,GAAG,2BAA2B,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;wBAC/E,eAAe,GAAG,KAAK,CAAC;oBAC1B,CAAC;oBACD,IAAI,iBAAiB,EAAE,CAAC;wBACtB,iCAAiC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,oBAAO,CAAC,eAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;oBACpG,CAAC;yBAAM,CAAC;wBACN,yDAAyD;wBACzD,MAAM,2BAA2B,GAAG,2BAA2B,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC;wBAC3F,iCAAiC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,2BAA2B,EAAE,CAAC,CAAC;oBAChG,CAAC;oBAED,mBAAmB,GAAG,mBAAmB,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;gBAC7E,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,WAAW,GAA6B,EAAE,CAAC;QACjD,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC9B,KAAK,IAAI,YAAY,GAAG,CAAC,EAAE,YAAY,GAAG,iCAAiC,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,CAAC;YACnG,MAAM,iBAAiB,GAAG,iCAAiC,CAAC,YAAY,CAAC,CAAC;YAC1E,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YACvE,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,WAAW,iBAAiB,CAAC,OAAO,CAAC,QAAQ,EAAE,kCAAkC,CAAC,CAAC;YACrG,CAAC;YACD,MAAM,aAAa,GAAG,YAAY,CAAC,KAAK,CAAC,aAAa,CAAC;YAEvD,MAAM,cAAc,GAAG,YAAY,KAAK,iCAAiC,CAAC,MAAM,GAAG,CAAC,CAAC;YACrF,qHAAqH;YACrH,IAAI,gBAAgB,GAAG,WAAW,CAAC;YACnC,IAAI,cAAc,EAAE,CAAC;gBACnB,gBAAgB,GAAG,iBAAiB,CAAC,MAAM,CAAC;YAC9C,CAAC;YAED,MAAM,qBAAqB,GAAG,IAAI,CAAC,UAAU,CAC3C,IAAI,EACJ,KAAK,EACL,UAAU,EACV,aAAa,EACb,EAAE,OAAO,EAAE,iBAAiB,CAAC,OAAO,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,EACjE,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,CACnB,CAAC;YACF,WAAW,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,oBAAoB,CAAC,KAAgB,EAAE,KAAkB;QAC7D,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC9D,MAAM,eAAe,GAAG,UAAU,CAAC,eAAe,CAAC;QACnD,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACtD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,mFAAmF,CAAC,CAAC;QACvG,CAAC;QACD,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC1E,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC;YAClC,IAAI,CAAC,kCAAkC,CAAC,UAAU,CAAC;SACpD,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,IAAA,qBAAe,EAAC,IAAI,CAAC,aAAa,EAAE,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;QACvF,MAAM,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,GAAG,IAAA,4BAAoB,EAAC,KAAK,EAAE;YACzE,EAAE,IAAI,EAAE,UAAU,CAAC,SAAS,EAAE,YAAY,EAAE;SAC7C,CAAC,CAAC;QACH,0EAA0E;QAC1E,MAAM,sBAAsB,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACpE,MAAM,uBAAuB,GAAgB,EAAE,CAAC;QAChD,MAAM,oBAAoB,GAAgB,EAAE,CAAC;QAE7C,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YACxD,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YACzC,MAAM,YAAY,GAAG,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAE,CAAC;YAC7D,MAAM,kBAAkB,GAAG,0BAA0B,CAAC,GAAG,CAAC,aAAa,CAAE,CAAC;YAC1E,MAAM,uBAAuB,GAAG,sBAAsB,CAAC,GAAG,CAAC,aAAa,CAAE,CAAC,gBAAgB,CAAC;YAC5F,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,GAAG,CAAC,aAAa,CAAE,CAAC,kBAAkB,CAAC;YAE3F,MAAM,uBAAuB,GAAG,YAAY,CAAC,yBAAyB,EAAE,CAAC;YACzE,MAAM,gCAAgC,GAAG,IAAA,uBAAiB,EACxD,uBAAuB,CAAC,GAAG,CAAC,uBAAuB,CAAC,EACpD,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CACxC,CAAC;YAEF,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;YACrF,MAAM,qBAAqB,GAAG,IAAA,sCAAqB,EAAC,mBAAmB,EAAE,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;YAClH,2GAA2G;YAC3G,MAAM,uBAAuB,GAAG,IAAI,oBAAO,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;YACxE,IAAI,qBAAqB,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,uBAAuB,CAAC,EAAE,CAAC;gBAC5D,IAAI,kBAAkB,CAAC,EAAE,CAAC,gCAAgC,CAAC,EAAE,CAAC;oBAC5D,uBAAuB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAC9C,CAAC;qBAAM,CAAC;oBACN,MAAM,YAAY,GAAG,oBAAoB,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,oBAAoB,CAAC;oBAC7G,MAAM,sBAAsB,GAAG,YAAY,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;oBAClF,IAAI,sBAAsB,CAAC,EAAE,CAAC,uBAAuB,CAAC,EAAE,CAAC;wBACvD,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBAC3C,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,iBAAiB,GAAwC,EAAE,CAAC;QAClE,yEAAyE;QACzE,KAAK,MAAM,OAAO,IAAI,uBAAuB,EAAE,CAAC;YAC9C,MAAM,YAAY,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACtD,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAC7D,CAAC;YACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAClD,KAAK,EACL,KAAK,EACL;gBACE,OAAO,EAAE,OAAO;gBAChB,KAAK,EAAE,YAAa,CAAC,KAAK;aAC3B,EACD,mBAAmB,EACnB,KAAK,CACN,CAAC;YACF,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3C,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,oBAAoB,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACtD,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAC7D,CAAC;YACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAClD,KAAK,EACL,KAAK,EACL;gBACE,OAAO,EAAE,OAAO;gBAChB,KAAK,EAAE,YAAa,CAAC,KAAK;aAC3B,EACD,mBAAmB,EACnB,KAAK,CACN,CAAC;YACF,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3C,CAAC;QAED,IAAI,SAAS,GAA6B,EAAE,CAAC;QAC7C,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5B,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAE3E,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,mFAAmF;IACnF;;;;;;;OAOG;IACH,KAAK,CAAC,sBAAsB,CAC1B,KAAgB,EAChB,KAAkB,EAClB,OAA2B,EAC3B,gBAA0D,EAC1D,oBAA6B,IAAI;QAEjC,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxE,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC9D,MAAM,WAAW,GAAG,iBAAiB,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAClG,MAAM,iBAAiB,GAAG,IAAA,4BAAoB,EAAC,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1G,MAAM,GAAG,GAA6B,EAAE,CAAC;QAEzC,MAAM,YAAY,GAAG,MAAM,IAAA,qBAAe,EAAC,IAAI,CAAC,aAAa,EAAE,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;QACvF,MAAM,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC,GAAG,IAAA,4BAAoB,EAAC,KAAK,EAAE;YACxE,EAAE,IAAI,EAAE,UAAU,CAAC,SAAS,EAAE,YAAY,EAAE;SAC7C,CAAC,CAAC;QACH,IAAI,iBAAiB,EAAE,CAAC;YACtB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxB,CAAC;QAED,MAAM,cAAc,GAAmB;YACrC,KAAK;YACL,UAAU,EAAE,KAAK,CAAC,OAAO;YACzB,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,kBAAkB,EAAE,UAAU,CAAC,kBAAkB;YACjD,WAAW,EAAE,WAAW;YACxB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,mBAAmB;YACnB,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,aAAa;YAC1C,sBAAsB,EAAE,iBAAiB;YACzC,sBAAsB,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW;YAC3D,qBAAqB,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU;YAC1D,YAAY,EAAE,IAAI,CAAC,oBAAoB;YACvC,wBAAwB,EAAE,oCAA0B;YACpD,YAAY,EAAE,YAAY;YAC1B,iBAAiB,EAAE,aAAa;YAChC,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,6BAA6B,EAAE,4BAAgB;SAChD,CAAC;QAEF,MAAM,QAAQ,GAAG,IAAA,qBAAM,EAAC,cAAc,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAEpE,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACxD,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAE1G,IAAI,yBAAyB,GAAkB,EAAE,CAAC;QAClD,IAAI,2BAA2B,GAAkB,EAAE,CAAC;QACpD,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAChC,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACrD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAC7D,CAAC;YACD,yBAAyB,GAAG,yBAAyB,CAAC,MAAM,CAAC;gBAC3D,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;aACvD,CAAC,CAAC;YACH,2BAA2B,GAAG,2BAA2B,CAAC,MAAM,CAAC;gBAC/D,EAAE,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;aACjF,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;QAChE,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;QAElE,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED,oEAAoE;IACpE,eAAe,CAAC,KAAa;QAC3B,MAAM,QAAQ,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;QACpC,MAAM,CAAC,GAAe,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtD,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,qCAAqC;IACrC,eAAe,CAAC,KAAe;QAC7B,OAAO,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAEO,UAAU,CAChB,IAAe,EACf,KAAkB,EAClB,UAAsB,EACtB,aAAwB,EACxB,OAA2B,EAC3B,aAAwB,EACxB,YAAuB,EACvB,mBAA4B,EAC5B,kBAA2D;QAE3D,MAAM,iBAAiB,GAAG,IAAA,4BAAoB,EAAC,aAAa,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5F,MAAM,cAAc,GAAG,oBAAoB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACxE,MAAM,gBAAgB,GAAqB;YACzC,qBAAqB,EAAE;gBACrB,IAAI;gBACJ,UAAU,EAAE,KAAK,CAAC,OAAO;gBACzB,UAAU,EAAE,UAAU,CAAC,UAAU;gBACjC,kBAAkB,EAAE,UAAU,CAAC,kBAAkB;gBACjD,YAAY,EAAE,YAAY;gBAC1B,SAAS,EAAE,UAAU,CAAC,SAAS;gBAC/B,aAAa,EAAE,aAAa;gBAC5B,UAAU,EAAE,UAAU,CAAC,UAAU;gBACjC,YAAY,EAAE,UAAU,CAAC,YAAY;gBACrC,kBAAkB,EAAE,4BAAgB;gBACpC,YAAY,EAAE,IAAI,CAAC,oBAAoB;gBACvC,cAAc,EAAE,cAAc;gBAC9B,OAAO,EAAE,IAAI,CAAC,qBAAqB;aACpC;YACD,2BAA2B,EAAE;gBAC3B,UAAU,EAAE,KAAK,CAAC,OAAO;gBACzB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,WAAW,EAAE,iBAAiB,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,qBAAqB,CAAC;gBAC1F,aAAa,EAAE,aAAa;gBAC5B,sBAAsB,EAAE,iBAAiB;gBACzC,sBAAsB,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW;gBAC3D,qBAAqB,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU;gBAC1D,6BAA6B,EAAE,4BAAgB;gBAC/C,wBAAwB,EAAE,oCAA0B;aACrD;YACD,cAAc,EAAE,cAAc;YAC9B,OAAO,EAAE,IAAI,CAAC,qBAAqB;SACpC,CAAC;QAEF,MAAM,YAAY,GAAiB;YACjC,YAAY,EAAE,IAAI,WAAE,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,CAAC;SAC7D,CAAC;QAEF,MAAM,WAAW,GAAG,IAAA,uBAAQ,EAAC,YAAY,EAAE,gBAAgB,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAEzF,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAExD,IAAI,yBAAyB,GAAkB,EAAE,CAAC;QAClD,IAAI,2BAA2B,GAAkB,EAAE,CAAC;QAEpD,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAChC,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACrD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAC7D,CAAC;YAED,yBAAyB,GAAG,yBAAyB,CAAC,MAAM,CAAC;gBAC3D,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;aACvD,CAAC,CAAC;YACH,2BAA2B,GAAG,2BAA2B,CAAC,MAAM,CAAC;gBAC/D,EAAE,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;aACjF,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;QACtE,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;QAExE,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,uBAAuB,CACnC,IAAe,EACf,KAAkB,EAClB,UAAsB,EACtB,aAAwB,EACxB,YAAuB,EACvB,mBAA4B;QAE5B,MAAM,cAAc,GAAG,oBAAoB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACxE,MAAM,6BAA6B,GAAkC;YACnE,IAAI;YACJ,UAAU,EAAE,KAAK,CAAC,OAAO;YACzB,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,kBAAkB,EAAE,UAAU,CAAC,kBAAkB;YACjD,YAAY,EAAE,YAAY;YAC1B,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,aAAa,EAAE,aAAa;YAC5B,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,kBAAkB,EAAE,4BAAgB;YACpC,YAAY,EAAE,IAAI,CAAC,oBAAoB;YACvC,cAAc,EAAE,cAAc;YAC9B,OAAO,EAAE,IAAI,CAAC,qBAAqB;SACpC,CAAC;QAEF,MAAM,yBAAyB,GAA8B;YAC3D,YAAY,EAAE,IAAI,WAAE,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,CAAC;SAC7D,CAAC;QAEF,OAAO,IAAA,oCAAqB,EAAC,yBAAyB,EAAE,6BAA6B,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACrH,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,KAAkB,EAClB,UAAsB,EACtB,aAAwB,EACxB,OAA2B,EAC3B,aAAwB;QAExB,MAAM,iBAAiB,GAAG,IAAA,4BAAoB,EAAC,aAAa,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5F,MAAM,2BAA2B,GAAgC;YAC/D,mBAAmB,EAAE,UAAU,CAAC,mBAAmB;YACnD,UAAU,EAAE,KAAK,CAAC,OAAO;YACzB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,WAAW,EAAE,iBAAiB,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,qBAAqB,CAAC;YAC1F,kBAAkB,EAAE,UAAU,CAAC,kBAAkB;YACjD,QAAQ,EAAE,aAAa;YACvB,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,YAAY,EAAE,4BAAgB;YAC9B,mBAAmB;YACnB,aAAa,EAAE,aAAa;YAC5B,sBAAsB,EAAE,iBAAiB;YACzC,sBAAsB,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW;YAC3D,qBAAqB,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU;YAC1D,YAAY,EAAE,IAAI,CAAC,oBAAoB;YACvC,wBAAwB,EAAE,oCAA0B;YACpD,6BAA6B,EAAE,4BAAgB;SAChD,CAAC;QAEF,MAAM,sBAAsB,GAAG,IAAA,kCAAmB,EAAC,2BAA2B,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAE5G,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACxD,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAEpE,IAAI,yBAAyB,GAAkB,EAAE,CAAC;QAClD,IAAI,2BAA2B,GAAkB,EAAE,CAAC;QAEpD,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAChC,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACrD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAC7D,CAAC;YAED,yBAAyB,GAAG,yBAAyB,CAAC,MAAM,CAAC;gBAC3D,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;aACvD,CAAC,CAAC;YACH,2BAA2B,GAAG,2BAA2B,CAAC,MAAM,CAAC;gBAC/D,EAAE,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;aACjF,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,sBAAsB,CAAC,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;QAC5F,sBAAsB,CAAC,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;QAE9F,OAAO,sBAAsB,CAAC;IAChC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,uBAAuB,CAC3B,KAAkB,EAClB,gBAA0D;QAE1D,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC9D,MAAM,uBAAuB,GAAG;YAC9B,KAAK,CAAC,OAAO;YACb,UAAU,CAAC,mBAAmB;YAC9B,UAAU,CAAC,kBAAkB;YAC7B,UAAU,CAAC,SAAS;YACpB,UAAU,CAAC,UAAU;YACrB,UAAU,CAAC,UAAU;YACrB,UAAU,CAAC,YAAY;YACvB,IAAI,CAAC,oBAAoB;SAC1B,CAAC;QAEF,UAAU,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACxD,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACjD,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;QAEH,IAAI,gBAAgB,EAAE,CAAC;YACrB,gBAAgB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACnC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;gBAC1D,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBAC3D,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACrD,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;gBAClE,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAC/D,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBAClE,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YACrE,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACpE,kBAAkB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACrC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;gBAC1D,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBAC3D,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACrD,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;gBAClE,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAC/D,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBAClE,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YACrE,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,EAAE,CAAC;YACpD,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,mBAAmB,GAA6B,EAAE,CAAC;QACzD,IAAI,GAAG,GAAG,UAAU,CAAC,gBAAgB,CAAC;QACtC,IAAI,GAAG,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,CAAC;YACxD,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,GAAG,IAAA,+BAAiB,EAAC,UAAU,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;YACpF,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7B,GAAG,GAAG,OAAO,CAAC;YAEd,gCAAgC;YAChC,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAC1D,KAAK,EACL,IAAI,wBAAgB,CAAC,WAAW,EAAE,EAClC,GAAG,CAAC,QAAQ,EAAE,CACf,CAAC;YACF,mBAAmB,CAAC,IAAI,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,GAAG,GAA6B,EAAE,CAAC;QACzC,IAAI,yBAAyB,GAA4B,SAAS,CAAC;QACnE,IAAI,UAAU,CAAC,gBAAgB,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1D,yBAAyB,GAAG,EAAE,CAAC;QACjC,CAAC;QACD,GAAG,CAAC,IAAI,CACN,GAAG,CAAC,MAAM,IAAI,CAAC,wBAAwB,CACrC,UAAU,CAAC,mBAAmB,EAC9B,GAAG,EACH,uBAAuB,EACvB,yBAAyB,CAC1B,CAAC,CACH,CAAC;QAEF,OAAO;YACL,mBAAmB;YACnB,UAAU,EAAE,GAAG;SAChB,CAAC;IACJ,CAAC;IAEO,+BAA+B,CAAC,YAAqB;QAC3D,OAAO;YACL,YAAY,CAAC,aAAa;YAC1B,YAAY,CAAC,cAAc;YAC3B,YAAY,CAAC,QAAQ;YACrB,YAAY,CAAC,SAAS,CAAC,UAAU;YACjC,YAAY,CAAC,SAAS,CAAC,WAAW;YAClC,YAAY,CAAC,SAAS,CAAC,QAAQ;YAC/B,YAAY,CAAC,UAAU,CAAC,UAAU;YAClC,YAAY,CAAC,UAAU,CAAC,WAAW;SACpC,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,wBAAwB,CAC5B,KAAgB,EAChB,WAAsB,EACtB,IAAiB,EACjB,aAA2B;QAE3B,IAAI,eAAe,GAAG,aAAa,CAAC;QACpC,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,eAAe,GAAG,MAAM,IAAA,8BAAgB,EAAC,IAAI,CAAC,aAAa,EAAE,EAAE,WAAW,CAAC,CAAC;QAC9E,CAAC;aAAM,CAAC;YACN,eAAe,GAAG,aAAa,CAAC;QAClC,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,oBAAY,CAAC,eAAe,CAAC,CAAC;QAEtD,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QAC3G,2FAA2F;QAC3F,MAAM,mBAAmB,GAAG,IAAI,oBAAY,CAAC,eAAe,CAAC,CAAC,OAAO,EAAE,CAAC;QAExE,MAAM,SAAS,GAAG,EAAE,CAAC;QACrB,MAAM,GAAG,GAA6B,EAAE,CAAC;QAEzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,mBAAmB,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;YAC/D,MAAM,KAAK,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;YAC1D,MAAM,EAAE,GAAG,mCAAyB,CAAC,iBAAiB,CAAC;gBACrD,WAAW;gBACX,SAAS,EAAE,KAAK;gBAChB,KAAK;gBACL,SAAS,EAAE,KAAK;aACjB,CAAC,CAAC;YACH,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,kCAAkC,CACtC,UAAsB,EACtB,IAAa,EACb,aAAuD,EACvD,WAAoB;QAEpB,wFAAwF;QACxF,MAAM,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC7D,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACjE,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE;YAClE,MAAM,UAAU,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACpD,OAAO,UAAU,EAAE,YAAY,CAAC,MAAM,EAAE,CAAC;QAC3C,CAAC,CAAC,CAAC;QACH,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,IAAI,sBAAsB,EAAE,CAAC;YAC9D,MAAM,gBAAgB,GAAG,IAAI,mBAAa,EAAsB,CAAC;YACjE,kBAAkB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACrC,gBAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC;YACH,OAAO,gBAAgB,CAAC;QAC1B,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;QAC3F,MAAM,uBAAuB,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAErE,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAEtD,IAAI,eAAe,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;QACrC,uBAAuB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YAC7C,eAAe,GAAG,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QACH,MAAM,4BAA4B,GAAG,IAAI,mBAAa,EAAsB,CAAC;QAC7E,WAAW,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC9B,4BAA4B,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,IAAI,iBAAiB,GAAG,QAAQ,CAAC,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACjF,IAAI,oBAAoB,GAAG,eAAe,CAAC;QAC3C,MAAM,GAAG,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,OAAO,iBAAiB,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,MAAM,aAAa,GAAG,iBAAiB,CAAC;YACxC,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;gBAClC,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC/D,MAAM,gBAAgB,GAAG,iBAAkB,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;gBACtG,MAAM,UAAU,GAAG,iBAAkB,CAAC,kBAAkB,CAAC;gBACzD,IAAI,cAAc,GAAG,oBAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;gBACtE,IAAI,UAAU,CAAC,EAAE,CAAC,qBAAI,CAAC,EAAE,CAAC;oBACxB,cAAc,GAAG,oBAAO,CAAC,GAAG,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;gBAC3D,CAAC;gBACD,iBAAiB,GAAG,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBAC1D,IAAI,cAAc,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,qBAAI,CAAC,EAAE,CAAC;oBACzD,oBAAoB,GAAG,oBAAoB,CAAC,GAAG,CAAC,iBAAkB,CAAC,YAAY,CAAC,CAAC;gBACnF,CAAC;gBACD,MAAM,uBAAuB,GAAG,4BAA4B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC1E,IAAI,uBAAuB,EAAE,CAAC;oBAC5B,4BAA4B,CAAC,GAAG,CAAC,OAAO,EAAE,4BAA4B,CAAC,GAAG,CAAC,OAAO,CAAE,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC;gBAC5G,CAAC;qBAAM,CAAC;oBACN,4BAA4B,CAAC,GAAG,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;gBAC5D,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,4BAA4B,CAAC;IACtC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,+BAA+B,CAAC,IAAe,EAAE,KAAkB;QACvE,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAE9D,MAAM,UAAU,GAAuB;YACrC,cAAc,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;YAC9B,YAAY,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;YAC5B,WAAW,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;SAC5B,CAAC;QACF,MAAM,aAAa,GAAG,IAAA,+BAAyB,EAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC7E,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;QACvF,IAAI,qBAAqB,EAAE,CAAC;YAC1B,MAAM,iBAAiB,GAAG,IAAA,yBAAa,EAAC,aAAa,EAAE,qBAAqB,CAAC,CAAC;YAE9E,UAAU,CAAC,cAAc,GAAG,IAAI,oBAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAC9E,IAAI,oBAAO,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAC9D,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC;YAC9C,MAAM,gBAAgB,GAAG,MAAM,IAAA,gCAAmB,EAChD,IAAI,CAAC,aAAa,EAAE,EACpB,IAAI,EACJ,UAAU,CAAC,SAAS,EACpB,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CACzC,CAAC;YAEF,UAAU,CAAC,YAAY,GAAG,gBAAgB,CAAC;QAC7C,CAAC;QAED,UAAU,CAAC,WAAW,GAAG,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAChF,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,6BAA6B,CACjC,IAAe,EACf,cAAmC;QAEnC,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAE3E,4CAA4C;QAC5C,MAAM,UAAU,GAAG,IAAI,YAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QACnD,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACzE,MAAM,oBAAoB,GAAG,IAAI,mBAAa,EAAwB,CAAC;QACvE,iBAAiB,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;YAC1C,oBAAoB,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;QACvF,CAAC,CAAC,CAAC;QACH,8CAA8C;QAC9C,MAAM,qBAAqB,GAAG,IAAI,mBAAa,EAAiC,CAAC;QAEjF,MAAM,kBAAkB,GAAgB,EAAE,CAAC;QAC3C,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC7B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;YAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YACnE,CAAC;YACD,MAAM,aAAa,GAAG,IAAA,+BAAyB,EAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YACxE,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAEvC,IAAI,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC;gBAC9C,MAAM,aAAa,GAAG,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBAChE,IAAI,aAAa,EAAE,CAAC;oBAClB,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACzE,MAAM,YAAY,GAAG,IAAA,wCAA2B,EAAC,aAAa,EAAE,KAAK,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACrG,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;oBAC3C,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACnE,IAAI,iBAAiB,EAAE,CAAC;wBACtB,iBAAiB,CAAC,YAAY,GAAG,YAAY,CAAC;wBAC9C,iBAAiB,CAAC,WAAW,GAAG,iBAAiB,CAAC,cAAc,CAAC,GAAG,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;wBACrG,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;oBAC9D,CAAC;yBAAM,CAAC;wBACN,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE;4BACvC,cAAc,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;4BAC9B,YAAY;4BACZ,WAAW,EAAE,YAAY;yBAC1B,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,CAAC;QAErG,qBAAqB,CAAC,OAAO,CAAC,CAAC,mBAAmB,EAAE,KAAK,EAAE,EAAE;YAC3D,IAAI,kBAAkB,GAAG,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;YAC1E,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,kBAAkB,GAAG;oBACnB,cAAc,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;oBAC9B,YAAY,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;oBAC5B,WAAW,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;iBAC5B,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACzB,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;YACvE,CAAC;iBAAM,CAAC;gBACN,kBAAkB,CAAC,cAAc,GAAG,IAAA,8CAAsC,EAAC,mBAAmB,CAAC,CAAC,GAAG,CACjG,IAAI,oBAAO,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAM,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CACxE,CAAC;gBACF,kBAAkB,CAAC,WAAW,GAAG,kBAAkB,CAAC,cAAc,CAAC,GAAG,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;gBACxG,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;YACvE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,eAAe,CAAC,UAAsB;QACpC,OAAO;YACL,gBAAgB,EAAE,IAAA,gBAAQ,EAAC,IAAI,oBAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC/E,iBAAiB,EAAE,IAAA,gBAAQ,EAAC,IAAI,oBAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;SAClF,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,4BAA4B,CAChC,KAAkB,EAClB,IAAa,EACb,gBAA0D,EAC1D,WAAoB;QAEpB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC9D,IAAI,UAAU,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;YACrC,OAAO,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;QAED,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAE1G,MAAM,aAAa,GAAG,IAAA,uBAAiB,EACrC,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,EAClC,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CACzC,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;QAChG,MAAM,MAAM,GAAG,QAAQ,CAAC,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAExE,OAAO,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IACnC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,0BAA0B,CAC9B,IAAY,EACZ,cAAmC,EACnC,gBAA0D;QAE1D,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC3E,MAAM,mBAAmB,GAAG,IAAI,mBAAa,EAAsB,CAAC;QACpE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,KAAK,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;YAC9F,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QACzD,CAAC;QAED,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY;QAChB,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;SACF,CAAC;QAEF,OAAO,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;IAED;;;;OAIG;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,EAAE,EAAE,wHAAwH;oBACpI,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE;iBACxB;aACF;SACF,CAAC;QAEF,OAAO,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,OAAY;QAC/C,MAAM,YAAY,GAA+B,MAAM,IAAA,wBAAkB,EACvE,IAAI,CAAC,aAAa,EAAE,EACpB,IAAI,CAAC,qBAAqB,EAC1B,qBAAU,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,EAC1B;YACE,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,UAAU,IAAI,WAAW;YAC1D,OAAO;SACR,CACF,CAAC;QAEF,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,IAAA,wBAAgB,EAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACtE,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,WAAW,CAAC,WAAW,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC7F,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,SAAS,CAAC,MAAyB;QACvC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC7D,CAAC;QACD,MAAM,WAAW,GAAG,MAAM,IAAA,2BAAU,EAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;QACrF,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACjC,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YACjC,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAClF,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,MAAmB;QAC/C,OAAO,MAAM,qBAAU,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAClG,CAAC;IAED;;;;;;OAMG;IACH,oBAAoB,CAAC,UAAsB,EAAE,IAAY,EAAE,OAAsB;QAC/E,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,mBAAmB,GAAG,GAAG,CAAC;QACnE,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACpB,cAAc,GAAG,IAAI,mBAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC;iBAC1E,SAAS,EAAE;iBACX,GAAG,CAAC,WAAW,CAAC;iBAChB,KAAK,EAAE;iBACP,QAAQ,EAAE,CAAC;QAChB,CAAC;QACD,MAAM,uBAAuB,GAAG,OAAO,CAAC,kCAAkC,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAEjG,MAAM,iBAAiB,GAAG,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAC/E,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAC3C,CAAC;QACF,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,yCAAyC,CAAC,CAAC;QAClG,CAAC;QAED,MAAM,wCAAwC,GAAG,IAAI,oBAAO,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAC7G,uBAAuB,CACxB,CAAC;QACF,MAAM,gCAAgC,GAAG,IAAA,uBAAiB,EACxD,wCAAwC,EACxC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CACxC,CAAC;QACF,OAAO,gCAAgC,CAAC;IAC1C,CAAC;IAED;;;;OAIG;IACH,4BAA4B,CAAC,UAAsB;QACjD,MAAM,0BAA0B,GAAG,IAAI,mBAAa,EAAsB,CAAC;QAC3E,IAAI,eAAe,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;QAErC,MAAM,mBAAmB,GAAG,UAAU,CAAC,uBAAuB,CAAC,MAAM,CACnE,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,CAC9D,CAAC;QACF,mBAAmB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACzC,eAAe,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,oBAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACnG,CAAC,CAAC,CAAC;QAEH,mBAAmB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACzC,0BAA0B,CAAC,GAAG,CAC5B,UAAU,CAAC,OAAO,EAClB,IAAI,oBAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,oBAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CACrG,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,0BAA0B,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACH,mBAAmB,CAAC,UAAsB;QACxC,MAAM,gBAAgB,GAAG,IAAI,mBAAa,EAAwC,CAAC;QAEnF,UAAU,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;YACpD,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACjD,OAAO;YACT,CAAC;YAED,MAAM,kBAAkB,GAA8B;gBACpD,YAAY,EAAE,IAAI,oBAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC,QAAQ,EAAE,CAAC;gBACvE,kBAAkB,EAAE,IAAI,oBAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;gBACzE,gBAAgB,EAAE,IAAI,oBAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;aACtE,CAAC;YACF,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,gDAAgD,CAC5D,KAAkB,EAClB,IAAY,EACZ,gBAAyD;QAEzD,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAE9D,MAAM,6CAA6C,GAAG,IAAI,mBAAa,EAAsB,CAAC;QAC9F,UAAU,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,kBAAkB,EAAE,EAAE;YAChE,IAAI,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzD,OAAO;YACT,CAAC;YACD,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YACjE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,WAAW,kBAAkB,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAChF,CAAC;YACD,IAAI,cAAc,GAAG,CAAC,CAAC;YACvB,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,mBAAmB,GAAG,GAAG,CAAC;YACnE,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;gBACpB,cAAc,GAAG,IAAI,mBAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC;qBAC1E,SAAS,EAAE;qBACX,GAAG,CAAC,WAAW,CAAC;qBAChB,KAAK,EAAE;qBACP,QAAQ,EAAE,CAAC;YAChB,CAAC;YACD,MAAM,uBAAuB,GAAG,OAAO,CAAC,kCAAkC,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;YACjG,MAAM,gCAAgC,GAAG,IAAI,oBAAO,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CACtG,uBAAuB,CACxB,CAAC;YACF,MAAM,+BAA+B,GAAG,OAAO,CAAC,2BAA2B,EAAE,CAAC;YAC9E,6CAA6C,CAAC,GAAG,CAC/C,kBAAkB,CAAC,OAAO,EAC1B,oBAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,+BAA+B,CAAC,CAC/E,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,6CAA6C,CAAC;IACvD,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,KAAiB;QAChC,OAAO,KAAK,CAAC,uBAAuB;aACjC,MAAM,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,CAAC;aAC/E,GAAG,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,iBAAiB,CAAC,UAAsB;QAC5C,OAAO,IAAI,CAAC,kBAAkB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,kBAAkB,CAAC,MAAoB;QAC3C,MAAM,yBAAyB,GAAG,IAAI,oBAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5G,MAAM,sBAAsB,GAAG,yBAAyB,CAAC,OAAO,EAAE,CAAC;QACnE,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,uBAAuB,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAC;QAEhH,MAAM,oBAAoB,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE;YAC9D,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACrB,uBAAuB;gBACvB,MAAM,IAAI,KAAK,CAAC,mBAAmB,sBAAsB,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;YAC3F,CAAC;YACD,MAAM,cAAc,GAAG,aAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACpD,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,KAAK,CAAC,2BAA2B,sBAAsB,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACjF,CAAC;YACD,OAAO,cAAc,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,MAAM,kBAAkB,GAAG,MAAM,IAAA,wBAAkB,EAAC,IAAI,CAAC,aAAa,EAAE,EAAE,oBAAoB,CAAC,CAAC;QAEhG,MAAM,cAAc,GAAG,IAAI,mBAAa,EAA4B,CAAC;QAErE,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE;YACtD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,KAAK,CAAC,6BAA6B,IAAA,wBAAgB,EAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACtG,CAAC;YACD,MAAM,aAAa,GAAG,mBAAa,CAAC,UAAU,CAC5C,eAAe,CAAC,KAAK,CAAE,EACvB,sBAAsB,CAAC,KAAK,CAAC,EAC7B,OAAO,EACP,MAAM,EACN,IAAI,CAAC,aAAa,EAAE,EACpB,IAAI,CAAC,oBAAoB,CAC1B,CAAC;YACF,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,OAAO,cAAc,CAAC;IACxB,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,mBAAmB,CACvB,UAAsB,EACtB,IAAY,EACZ,gBAA0D,EAC1D,aAA8B;QAE9B,MAAM,qBAAqB,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC7G,MAAM,kBAAkB,GAAoB,EAAE,CAAC;QAE/C,MAAM,eAAe,GAAG,IAAI,oBAAY,CAAY,EAAE,CAAC,CAAC;QACxD,yEAAyE;QACzE,UAAU,CAAC,uBAAuB,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;YAC9D,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACjD,OAAO;YACT,CAAC;YACD,MAAM,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC9D,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;gBACxC,OAAO;YACT,CAAC;YAED,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,wBAAwB;QACxB,MAAM,qBAAqB,GAAG,CAAC,MAAM,aAAO,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CACjH,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,KAAK,IAAI,CAC9B,CAAC;QACF,MAAM,yBAAyB,GAAG,MAAM,IAAA,wBAAkB,EAAC,IAAI,CAAC,aAAa,EAAE,EAAE,qBAAqB,CAAC,CAAC;QACxG,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE;YAC7D,MAAM,cAAc,GAAG,IAAI,mBAAa,CACtC,OAAO,EACP,eAAe,CAAC,OAAO,EAAE,CAAC,KAAK,CAAE,EACjC,MAAO,EACP,IAAI,CAAC,aAAa,EAAE,EACpB,IAAI,CAAC,oBAAoB,CAC1B,CAAC;YACF,kBAAkB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,MAAM,0BAA0B,GAA6C,IAAI,mBAAa,EAAE,CAAC;QAEjG,KAAK,MAAM,OAAO,IAAI,kBAAkB,EAAE,CAAC;YACzC,8EAA8E;YAC9E,IAAI,aAAa,GAA6B,SAAS,CAAC;YACxD,IAAI,aAAa,EAAE,CAAC;gBAClB,aAAa,GAAG,aAAa,EAAE,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAC7C,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,mBAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAClE,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,MAAM,oBAAoB,GAAG,MAAM,kBAAY,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;gBAC9G,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC1B,MAAM,KAAK,CAAC,kCAAkC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBAC1F,CAAC;gBACD,aAAa,GAAG,oBAAoB,CAAC;YACvC,CAAC;YAED,MAAM,cAAc,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;YACnD,MAAM,cAAc,GAAmB;gBACrC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,aAAa;gBACpC,oBAAoB,EAAE,EAAE;gBACxB,SAAS,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;gBACzB,SAAS,EAAE,IAAI,oBAAO,CAAC,GAAG,CAAC;aAC5B,CAAC;YAEF,cAAc;iBACX,MAAM,CAAC,CAAC,aAAa,EAAE,EAAE;gBACxB,OAAO,CACL,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,uBAAuB,GAAG,CAAC;oBACtD,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;oBAC9C,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CACxC,CAAC;YACJ,CAAC,CAAC;iBACD,GAAG,CAAC,CAAC,eAAe,EAAE,EAAE;gBACvB,MAAM,mBAAmB,GAAwB;oBAC/C,IAAI,EAAE,eAAe,CAAC,gBAAgB,EAAE;oBACxC,OAAO,EAAE,eAAe,CAAC,OAAO;oBAChC,iBAAiB,EAAE,IAAI,oBAAO,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,uBAAuB,CAAC;iBACrF,CAAC;gBACF,cAAc,CAAC,oBAAoB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAC9D,IAAI,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzG,cAAc,CAAC,SAAS,GAAG,mBAAmB,CAAC,iBAAiB,CAAC;gBACnE,CAAC;gBACD,IAAI,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzG,cAAc,CAAC,SAAS,GAAG,mBAAmB,CAAC,iBAAiB,CAAC;gBACnE,CAAC;YACH,CAAC,CAAC,CAAC;YAEL,0BAA0B,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAClE,CAAC;QAED,OAAO,0BAA0B,CAAC;IACpC,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,gBAAgB,CACpB,KAAiB,EACjB,IAAa,EACb,aAAuD,EACvD,WAAoB;QAEpB,MAAM,aAAa,GAAkB;YACnC,SAAS,EAAE,IAAI,oBAAO,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;YACvD,QAAQ,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;YACxB,kBAAkB,EAAE,IAAI,mBAAa,EAAsB;YAC3D,qBAAqB,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;YACrC,WAAW,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;SAC5B,CAAC;QAEF,MAAM,gBAAgB,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACrG,MAAM,kBAAkB,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC/F,MAAM,QAAQ,GAAG,IAAI,oBAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEjE,KAAK,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,kBAAkB,EAAE,EAAE;YAC3D,IAAI,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzD,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YACnE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,WAAW,kBAAkB,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAChF,CAAC;YAED,IAAI,uBAAgC,CAAC;YAErC,IAAI,IAAI,EAAE,CAAC;gBACT,uBAAuB,GAAG,OAAO,CAAC,kCAAkC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAChF,CAAC;iBAAM,CAAC;gBACN,uBAAuB,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;YAChE,CAAC;YACD,MAAM,gCAAgC,GAAG,IAAI,oBAAO,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CACtG,uBAAuB,CACxB,CAAC;YAEF,aAAa,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;YACtF,aAAa,CAAC,kBAAkB,CAAC,GAAG,CAClC,kBAAkB,CAAC,OAAO,EAC1B,IAAA,uBAAiB,EAAC,gCAAgC,EAAE,QAAQ,CAAC,CAC9D,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,kBAAkB,GAAG,IAAI,mBAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC;QACzE,IAAI,gBAAgB,GAAG,kBAAkB,CAAC;QAE1C,qHAAqH;QACrH,IAAI,IAAI,IAAI,IAAI,GAAG,gBAAgB,EAAE,CAAC;YACpC,MAAM,mBAAmB,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;YACxD,MAAM,gBAAgB,GAAG,mBAAmB,GAAG,CAAC,IAAI,GAAG,gBAAgB,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC;YACrG,MAAM,mBAAmB,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;YAEnE,MAAM,mBAAmB,GAAG,IAAI,oBAAO,CAAC,mBAAmB,CAAC;iBACzD,GAAG,CAAC,IAAI,oBAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC;iBACnD,GAAG,CAAC,IAAI,oBAAO,CAAC,wBAAgB,CAAC,CAAC;iBAClC,GAAG,CAAC,mCAAc,CAAC,CAAC;YACvB,MAAM,OAAO,GAAG,IAAA,uBAAiB,EAAC,IAAI,mBAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;YACjH,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YAC1D,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YAE1D,MAAM,uBAAuB,GAAG,aAAa,CAAC,QAAQ;iBACnD,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC;iBAC5B,GAAG,CAAC,OAAO,CAAC;iBACZ,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACzB,MAAM,uBAAuB,GAAG,uBAAuB;iBACpD,GAAG,CAAC,IAAI,oBAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;iBACpD,GAAG,CAAC,mCAAc,CAAC,CAAC;YACvB,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,qBAAqB,GAAG,IAAA,uBAAiB,EAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACnF,MAAM,oBAAoB,GAAG,IAAA,uBAAiB,EAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACjF,MAAM,WAAW,GAAG,IAAA,uBAAiB,EAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QAClE,OAAO;YACL,SAAS,EAAE,qBAAqB;YAChC,QAAQ,EAAE,oBAAoB;YAC9B,kBAAkB,EAAE,aAAa,CAAC,kBAAkB;YACpD,qBAAqB,EAAE,qBAAqB,CAAC,GAAG,CAAC,oBAAoB,CAAC;YACtE,WAAW,EAAE,WAAW;SACzB,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,yBAAyB,CAC7B,KAAiB,EACjB,KAAc,EACd,IAAa,EACb,gBAA0D,EAC1D,WAAoB;QAEpB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,WAAW,CAAC,CAAC;QAEzF,MAAM,qBAAqB,GAAG,IAAI,mBAAa,EAAsB,CAAC;QACtE,QAAQ,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;YACtD,qBAAqB,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QACH,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,YAAY,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;YAC3C,WAAW,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;YACzC,qBAAqB,EAAE,qBAAqB;YAC5C,qBAAqB,EAAE,QAAQ,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC;YAChE,cAAc,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC;SAChD,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,gBAAgB,CACpB,KAAiB,EACjB,KAAc,EACd,IAAa,EACb,gBAA0D,EAC1D,aAA8B,EAC9B,WAAoB;QAEpB,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAErG,MAAM,gCAAgC,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAC3E,KAAK,EACL,KAAK,EACL,IAAI,EACJ,kBAAkB,EAClB,WAAW,CACZ,CAAC;QAEF,MAAM,eAAe,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,CAAC;QAE3E,MAAM,0BAA0B,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAAC;QACjH,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAAC;QACvG,MAAM,+BAA+B,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAC5E,KAAK,EACL,eAAe,EACf,kBAAkB,CACnB,CAAC;QACF,MAAM,uBAAuB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC5D,KAAK,EACL,eAAe,EACf,kBAAkB,EAClB,aAAa,CACd,CAAC;QACF,MAAM,uBAAuB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAAC;QAE/G,uLAAuL;QACvL,MAAM,CACJ,yBAAyB,EACzB,oBAAoB,EACpB,eAAe,EACf,wBAAwB,EACxB,gBAAgB,EAChB,gBAAgB,EACjB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpB,gCAAgC;YAChC,0BAA0B;YAC1B,qBAAqB;YACrB,+BAA+B;YAC/B,uBAAuB;YACvB,uBAAuB;SACxB,CAAC,CAAC;QAEH,OAAO;YACL,WAAW,EAAE,yBAAyB;YACtC,gBAAgB,EAAE,gBAAgB;YAClC,gBAAgB,EAAE,gBAAgB;YAClC,eAAe,EAAE,eAAe;YAChC,oBAAoB,EAAE,oBAAoB;YAC1C,aAAa,EAAE,wBAAwB,CAAC,aAAa;YACrD,gBAAgB,EAAE,wBAAwB,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC;YACnE,gBAAgB,EAAE,wBAAwB,CAAC,gBAAgB;YAC3D,aAAa,EAAE,wBAAwB,CAAC,aAAa;YACrD,gBAAgB,EAAE,wBAAwB,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC;SACpE,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,2BAA2B,CAC/B,KAAiB,EACjB,IAAY,EACZ,gBAA0D;QAE1D,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAErG,MAAM,cAAc,GAAG,IAAA,uBAAiB,EACtC,IAAI,oBAAO,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,EAC5C,IAAI,oBAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAChD,CAAC;QACF,IAAI,aAAa,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,aAAa,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;QAEnC,KAAK,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,kBAAkB,EAAE,EAAE;YAC3D,IAAI,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzD,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YACnE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,WAAW,kBAAkB,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAChF,CAAC;YAED,MAAM,uBAAuB,GAAG,OAAO,CAAC,kCAAkC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACpF,MAAM,wCAAwC,GAAG,IAAI,oBAAO,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAC9G,uBAAuB,CACxB,CAAC;YACF,MAAM,gCAAgC,GAAG,IAAA,uBAAiB,EACxD,wCAAwC,EACxC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CACnC,CAAC;YAEF,MAAM,gBAAgB,GAAG,OAAO,CAAC,4BAA4B,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACvE,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;YACpE,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,gCAAgC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC5F,CAAC,CAAC,CAAC;QAEH,IAAI,gBAAgB,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC;YAC5B,gBAAgB,GAAG,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC;QAC1E,CAAC;QAED,OAAO;YACL,aAAa,EAAE,aAAa;YAC5B,aAAa,EAAE,aAAa;YAC5B,gBAAgB,EAAE,gBAAgB;SACnC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,uBAAuB,CAC3B,KAAiB,EACjB,IAAY,EACZ,aAAuD;QAEvD,MAAM,kBAAkB,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC/F,MAAM,eAAe,GAAG,IAAI,mBAAa,EAA8B,CAAC;QAExE,KAAK,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,kBAAkB,EAAE,EAAE;YAC3D,IAAI,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzD,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YACnE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,WAAW,kBAAkB,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAChF,CAAC;YAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YAC1E,MAAM,gBAAgB,GAAG,IAAI,oBAAO,CAAC,OAAO,CAAC,4BAA4B,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACpF,MAAM,eAAe,GAAoB;gBACvC,SAAS,EAAE,IAAI,oBAAO,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBACpD,gBAAgB,EAAE,gBAAgB;gBAClC,uBAAuB,EAAE,IAAI,oBAAO,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,uBAAuB,CAAC;gBAClF,mBAAmB,EAAE,OAAO,CAAC,iBAAiB,EAAE;gBAChD,0BAA0B,EAAE,iBAAiB,CAAC,GAAG,CAAC,gBAAgB,CAAC;gBACnE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,aAAa;gBACnC,cAAc,EAAE,iBAAiB;aAClC,CAAC;YACF,eAAe,CAAC,GAAG,CAAC,kBAAkB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QAEH,OAAO,eAAe,CAAC;IACzB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,sBAAsB,CAC1B,KAAiB,EACjB,IAAY,EACZ,gBAA0D;QAE1D,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAErG,IAAI,YAAY,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,QAAQ,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;QAC9B,KAAK,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,kBAAkB,EAAE,EAAE;YAC3D,IAAI,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzD,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YACnE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,WAAW,kBAAkB,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAChF,CAAC;YAED,MAAM,UAAU,GAAG,IAAI,oBAAO,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7D,MAAM,MAAM,GAAG,IAAI,oBAAO,CAAC,kBAAkB,CAAC,sBAAsB,CAAC,QAAQ,EAAE,CAAC,CAAC;YACjF,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC3C,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACrC,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QACH,IAAI,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;YAC1B,OAAO;gBACL,QAAQ,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;gBACxB,MAAM,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;aACvB,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,QAAQ;aACpB,GAAG,CAAC,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,oBAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,mCAAc,CAAC,CAAC,CAAC;aAC5F,GAAG,CAAC,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,oBAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,mCAAc,CAAC,CAAC,CAAC,CAAC;QAC/F,OAAO;YACL,QAAQ;YACR,MAAM;SACP,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,iBAAiB,CACrB,KAAiB,EACjB,IAAY,EACZ,gBAA0D;QAE1D,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAErG,IAAI,QAAQ,GAAG,IAAI,oBAAO,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC5D,IAAI,QAAQ,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;QAC9B,KAAK,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,kBAAkB,EAAE,EAAE;YAC3D,IAAI,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzD,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YACnE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,WAAW,kBAAkB,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAChF,CAAC;YAED,MAAM,UAAU,GAAG,IAAI,oBAAO,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7D,MAAM,YAAY,GAAG,OAAO,CAAC,kCAAkC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACzE,MAAM,iBAAiB,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,oBAAO,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAExG,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YACtD,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACrC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YACtB,OAAO;gBACL,QAAQ,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;gBACxB,MAAM,EAAE,IAAI,oBAAO,CAAC,CAAC,CAAC;aACvB,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,QAAQ;aACpB,GAAG,CAAC,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,oBAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,mCAAc,CAAC,CAAC,CAAC;aAC5F,GAAG,CAAC,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,oBAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,mCAAc,CAAC,CAAC,CAAC,CAAC;QAC/F,OAAO;YACL,QAAQ;YACR,MAAM;SACP,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,0BAA0B,CAAC,UAAsB;QACrD,MAAM,gBAAgB,GAAG,IAAI,mBAAQ,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAAC,SAAS,EAAE,CAAC;QACzF,MAAM,kBAAkB,GAAG,IAAA,uBAAiB,EAAC,gBAAgB,EAAE,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxG,OAAO;YACL,kBAAkB,EAAE,kBAAkB;YACtC,SAAS,EAAE,UAAU,CAAC,sBAAsB,CAAC,QAAQ,EAAE;SACxD,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,sCAAsC,CAC1C,UAAsB,EACtB,gBAA0D,EAC1D,IAAa,EACb,cAAwB,EACxB,WAAoB;QAEpB,IAAI,OAAgB,CAAC;QACrB,IAAI,WAAW,GAAG,qBAAI,CAAC;QAEvB,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,GAAG,cAAc,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,MAAM,aAAa,GAAG,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;YAC9D,OAAO,GAAG,IAAA,uBAAiB,EAAC,IAAI,mBAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE,aAAa,CAAC,CAAC;YAC3F,WAAW,GAAG,IAAA,uBAAiB,EAAC,IAAI,mBAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,EAAE,aAAa,CAAC,CAAC;QACrG,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAEjF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,WAAW,CAAC,CAAC;QAC3G,MAAM,cAAc,GAAG,eAAe,CAAC,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAE3F,OAAO;YACL,QAAQ,EAAE,eAAe;YACzB,cAAc,EAAE,cAAc;SAC/B,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,sBAAsB,CAC1B,UAAsB,EACtB,oCAA+E,EAC/E,gBAAuB;QAEvB,MAAM,qBAAqB,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QACvG,MAAM,mBAAmB,GAAG,UAAU,CAAC,sBAAsB,CAAC,QAAQ,EAAE,CAAC;QACzE,MAAM,WAAW,GAAG,qBAAqB,GAAG,mBAAmB,CAAC;QAEhE,MAAM,wBAAwB,GAAG,oCAAoC;YACnE,CAAC,CAAC,oCAAoC;YACtC,CAAC,CAAC,MAAM,IAAI,CAAC,sCAAsC,CAAC,UAAU,CAAC,CAAC;QAElE,MAAM,cAAc,GAAG,wBAAwB,CAAC,cAAc,CAAC,GAAG,CAChE,IAAI,oBAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,mCAAc,CAAC,CACzE,CAAC;QAEF,MAAM,mBAAmB,GAAG,IAAI,oBAAO,CAAC,WAAW,CAAC;aACjD,GAAG,CAAC,IAAI,oBAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC;aACxD,GAAG,CAAC,IAAI,oBAAO,CAAC,wBAAgB,CAAC,CAAC;aAClC,GAAG,CAAC,mCAAc,CAAC,CAAC;QACvB,MAAM,OAAO,GAAG,IAAA,uBAAiB,EAC/B,IAAI,mBAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,EAC9C,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CACxC,CAAC;QACF,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QAEjD,OAAO;YACL,aAAa,EAAE,OAAO;YACtB,cAAc,EAAE,cAAc;SAC/B,CAAC;IACJ,CAAC;IAED,8CAA8C,CAC5C,aAAwB,EACxB,KAAgB,EAChB,OAAkB,EAClB,IAAe;QAEf,OAAO,mBAAS,CAAC,sBAAsB,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC;IAClH,CAAC;CACF,CAAC,oBAAoB;AAzxFtB,8CAyxFC;AAED,MAAa,WAAW;IACb,OAAO,CAAY;IAC5B,KAAK,CAAgC;IACrC,SAAS,CAAY;IAErB,YAAY,YAAuB,EAAE,KAAkB,EAAE,YAAuB,qBAAa;QAC3F,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAsB;QACnC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,MAAM,qBAAU,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7E,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;YACnC,CAAC;YACD,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;YACjB,OAAO,GAAG,CAAC;QACb,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,UAAsB;QACtC,IAAI,CAAC,KAAK,GAAG,MAAM,qBAAU,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9E,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,UAAsB;QAClC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC9C,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;CACF;AApCD,kCAoCC;AAED;;GAEG;AACH,MAAa,iBAAiB;IAC5B,6BAA6B;IACpB,KAAK,CAAY;IAC1B,mCAAmC;IAC1B,SAAS,CAAY;IAC9B,gCAAgC;IACvB,kBAAkB,CAAY;IACvC,iFAAiF;IACxE,4BAA4B,CAAU;IAC/C,gFAAgF;IACvE,2BAA2B,CAAU;IAC9C,wEAAwE;IAC/D,IAAI,CAAS;IACtB,gHAAgH;IACvG,gBAAgB,CAAS;IAClC,yKAAyK;IAChK,cAAc,CAAS;IAChC,YAAY,IASX;QACC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC,4BAA4B,CAAC;QACtE,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,2BAA2B,CAAC;QACpE,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC;QAClD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC9C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;IAC5C,CAAC;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC/D,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC9D,CAAC;CACF;AA5CD,8CA4CC;AAED,MAAa,uBAAuB;IACzB,OAAO,CAAqB;IAC5B,sBAAsB,CAAS;IAC/B,oBAAoB,CAAU;IAEvC,YAAY,OAA2B,EAAE,sBAA8B,EAAE,oBAA6B;QACpG,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACrD,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;IACnD,CAAC;IAED,wBAAwB;QACtB,OAAO,IAAA,+BAAuB,EAAC,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClH,CAAC;IAED,eAAe;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;IAC5B,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;IAC9B,CAAC;CACF;AAtBD,0DAsBC;AAED,SAAgB,iBAAiB,CAAC,YAAuB,EAAE,cAAyB,EAAE,oBAA+B;IACnH,OAAO,mBAAS,CAAC,sBAAsB,CACrC,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,YAAY,CAAC,OAAO,EAAE,EAAE,cAAc,CAAC,OAAO,EAAE,CAAC,EAClF,oBAAoB,CACrB,CAAC,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAgB,oBAAoB,CAAC,oBAA+B;IAClE,OAAO,mBAAS,CAAC,sBAAsB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;AACxG,CAAC;AAyFD,SAAgB,aAAa,CAAC,QAAuB;IACnD,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACzB,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,EAAE,CAAC,CAAC;IACtF,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;IAChE,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,IAAA,2BAAmB,EAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC;AAC3F,CAAC"}
|
package/dist/utils/api.d.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { PublicKey } from '@solana/web3.js';
|
|
2
2
|
import { ConfigType } from '../classes';
|
|
3
3
|
import { IBackOffOptions } from 'exponential-backoff';
|
|
4
|
+
export type ApiRequestOptions = {
|
|
5
|
+
programId?: PublicKey;
|
|
6
|
+
source?: 'API' | 'CDN';
|
|
7
|
+
apiBaseUrl?: string;
|
|
8
|
+
};
|
|
4
9
|
export type ApiFilterOptions = {
|
|
5
10
|
isCurated?: boolean;
|
|
6
11
|
};
|
|
@@ -10,9 +15,10 @@ export type ApiFilterOptions = {
|
|
|
10
15
|
*
|
|
11
16
|
* @param programId - The program id to retrieve config for
|
|
12
17
|
* @param source - CDN is a json file hosted in the cloud, API is a webserver
|
|
18
|
+
* @param apiBaseUrl - Optional base URL for the API, if not provided, defaults to the standard API endpoint, not used for CDN
|
|
13
19
|
* @param filterOptions - Config options to filter markets by
|
|
14
20
|
*/
|
|
15
|
-
export declare function getMarketsFromApi(programId
|
|
21
|
+
export declare function getMarketsFromApi({ programId, source, apiBaseUrl }?: ApiRequestOptions, filterOptions?: ApiFilterOptions): Promise<ConfigType>;
|
|
16
22
|
export declare const KAMINO_CDN_RETRY: Partial<IBackOffOptions>;
|
|
17
23
|
export declare const KAMINO_API_RETRY: Partial<IBackOffOptions>;
|
|
18
24
|
//# sourceMappingURL=api.d.ts.map
|
package/dist/utils/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/utils/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAiB,MAAM,YAAY,CAAC;AAEvD,OAAO,EAAE,eAAe,EAAW,MAAM,qBAAqB,CAAC;AAG/D,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/utils/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAiB,MAAM,YAAY,CAAC;AAEvD,OAAO,EAAE,eAAe,EAAW,MAAM,qBAAqB,CAAC;AAG/D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,MAAM,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACrC,EAAE,SAAsB,EAAE,MAAc,EAAE,UAAU,EAAE,GAAE,iBAAsB,EAC9E,aAAa,GAAE,gBAAqB,GACnC,OAAO,CAAC,UAAU,CAAC,CAmBrB;AAED,eAAO,MAAM,gBAAgB,EAAE,OAAO,CAAC,eAAe,CAYrD,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,OAAO,CAAC,eAAe,CAYrD,CAAC"}
|
package/dist/utils/api.js
CHANGED
|
@@ -16,15 +16,16 @@ const lib_1 = require("../lib");
|
|
|
16
16
|
*
|
|
17
17
|
* @param programId - The program id to retrieve config for
|
|
18
18
|
* @param source - CDN is a json file hosted in the cloud, API is a webserver
|
|
19
|
+
* @param apiBaseUrl - Optional base URL for the API, if not provided, defaults to the standard API endpoint, not used for CDN
|
|
19
20
|
* @param filterOptions - Config options to filter markets by
|
|
20
21
|
*/
|
|
21
|
-
async function getMarketsFromApi(programId = lib_1.PROGRAM_ID, source = 'CDN', filterOptions = {}) {
|
|
22
|
+
async function getMarketsFromApi({ programId = lib_1.PROGRAM_ID, source = 'CDN', apiBaseUrl } = {}, filterOptions = {}) {
|
|
22
23
|
let unfilteredConfigs = {};
|
|
23
24
|
if (source === 'CDN') {
|
|
24
25
|
unfilteredConfigs = (await (0, exponential_backoff_1.backOff)(() => axios_1.default.get(utils_1.CDN_ENDPOINT), exports.KAMINO_CDN_RETRY)).data[programId.toString()];
|
|
25
26
|
}
|
|
26
27
|
if (!unfilteredConfigs || (0, classes_1.isEmptyObject)(unfilteredConfigs)) {
|
|
27
|
-
const API_ENDPOINT = (0, utils_1.getApiEndpoint)(programId);
|
|
28
|
+
const API_ENDPOINT = (0, utils_1.getApiEndpoint)(programId, apiBaseUrl);
|
|
28
29
|
unfilteredConfigs = (await (0, exponential_backoff_1.backOff)(() => axios_1.default.get(API_ENDPOINT), exports.KAMINO_API_RETRY)).data;
|
|
29
30
|
}
|
|
30
31
|
return unfilteredConfigs.filter((c) => {
|
package/dist/utils/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/utils/api.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/utils/api.ts"],"names":[],"mappings":";;;;;;AA0BA,8CAsBC;AA/CD,kDAA0B;AAC1B,wCAAuD;AACvD,oCAAwD;AACxD,6DAA+D;AAC/D,gCAAoC;AAYpC;;;;;;;;GAQG;AACI,KAAK,UAAU,iBAAiB,CACrC,EAAE,SAAS,GAAG,gBAAU,EAAE,MAAM,GAAG,KAAK,EAAE,UAAU,KAAwB,EAAE,EAC9E,gBAAkC,EAAE;IAEpC,IAAI,iBAAiB,GAAe,EAAgB,CAAC;IACrD,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,iBAAiB,GAAG,CAAC,MAAM,IAAA,6BAAO,EAAC,GAAG,EAAE,CAAC,eAAK,CAAC,GAAG,CAAC,oBAAY,CAAC,EAAE,wBAAgB,CAAC,CAAC,CAAC,IAAI,CACvF,SAAS,CAAC,QAAQ,EAAE,CACP,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,iBAAiB,IAAI,IAAA,uBAAa,EAAC,iBAAiB,CAAC,EAAE,CAAC;QAC3D,MAAM,YAAY,GAAG,IAAA,sBAAc,EAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAC3D,iBAAiB,GAAG,CAAC,MAAM,IAAA,6BAAO,EAAC,GAAG,EAAE,CAAC,eAAK,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,wBAAgB,CAAC,CAAC,CAAC,IAAkB,CAAC;IAC1G,CAAC;IAED,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACpC,IAAI,aAAa,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1C,OAAO,CAAC,CAAC,SAAS,KAAK,aAAa,CAAC,SAAS,CAAC;QACjD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC;AAEY,QAAA,gBAAgB,GAA6B;IACxD,QAAQ,EAAE,IAAI;IACd,aAAa,EAAE,CAAC;IAChB,aAAa,EAAE,EAAE;IACjB,KAAK,EAAE,CAAC,CAAM,EAAE,aAAqB,EAAE,EAAE;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC;YACX,aAAa;YACb,OAAO,EAAE,8DAA8D;SACxE,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC;AAEW,QAAA,gBAAgB,GAA6B;IACxD,QAAQ,EAAE,IAAI;IACd,aAAa,EAAE,CAAC;IAChB,aAAa,EAAE,EAAE;IACjB,KAAK,EAAE,CAAC,CAAM,EAAE,aAAqB,EAAE,EAAE;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC;YACX,aAAa;YACb,OAAO,EAAE,sEAAsE;SAChF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC"}
|
|
@@ -9,7 +9,7 @@ export declare const SECONDS_PER_YEAR: number;
|
|
|
9
9
|
export declare const TOTAL_NUMBER_OF_IDS_TO_CHECK = 25;
|
|
10
10
|
export type ENV = 'mainnet-beta' | 'devnet' | 'localnet';
|
|
11
11
|
export declare function isENV(value: any): value is ENV;
|
|
12
|
-
export declare function getApiEndpoint(programId: PublicKey): string;
|
|
12
|
+
export declare function getApiEndpoint(programId: PublicKey, apiBaseUrl?: string): string;
|
|
13
13
|
export declare const CDN_ENDPOINT = "https://cdn.kamino.finance/kamino_lend_config_v3.json";
|
|
14
14
|
export declare const ONE_HUNDRED_PCT_IN_BPS = 10000;
|
|
15
15
|
export declare function getProgramId(env?: 'mainnet-beta' | 'staging'): PublicKey;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,YAAY,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,MAAM,OAAO,CAAC;AAEvB,eAAO,MAAM,kBAAkB,EAAE,SAAwE,CAAC;AAC1G,eAAO,MAAM,wBAAwB,EAAE,MAA8B,CAAC;AACtE,eAAO,MAAM,OAAO,yBAAyB,CAAC;AAE9C,eAAO,MAAM,uBAAuB,SAAwC,CAAC;AAE7E,eAAO,MAAM,gBAAgB,QAAmC,CAAC;AAEjE,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C,MAAM,MAAM,GAAG,GAAG,cAAc,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEzD,wBAAgB,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,GAAG,CAE9C;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,YAAY,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,MAAM,OAAO,CAAC;AAEvB,eAAO,MAAM,kBAAkB,EAAE,SAAwE,CAAC;AAC1G,eAAO,MAAM,wBAAwB,EAAE,MAA8B,CAAC;AACtE,eAAO,MAAM,OAAO,yBAAyB,CAAC;AAE9C,eAAO,MAAM,uBAAuB,SAAwC,CAAC;AAE7E,eAAO,MAAM,gBAAgB,QAAmC,CAAC;AAEjE,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C,MAAM,MAAM,GAAG,GAAG,cAAc,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEzD,wBAAgB,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,GAAG,CAE9C;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,GAAE,MAAqC,UAMrG;AAED,eAAO,MAAM,YAAY,0DAA0D,CAAC;AAEpF,eAAO,MAAM,sBAAsB,QAAS,CAAC;AAE7C,wBAAgB,YAAY,CAAC,GAAG,GAAE,cAAc,GAAG,SAA0B,aAM5E;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAElC;;;GAGG;AACH,eAAO,MAAM,gBAAgB,QAAwB,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAwB,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,aAAa,QAAsB,CAAC;AAEjD;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAsB,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C,eAAO,MAAM,YAAY,IAAI,CAAC;AAE9B,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC,eAAO,MAAM,aAAa,IAAI,CAAC;AAC/B,eAAO,MAAM,cAAc,IAAI,CAAC;AAEhC,eAAO,MAAM,yBAAyB,UAAY,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,wBAAwB,IAAoB,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,mBAAmB,SAAU,CAAC;AAC3C,eAAO,MAAM,yBAAyB,aAAgB,CAAC;AAEvD,eAAO,MAAM,qBAAqB,OAAO,CAAC"}
|
package/dist/utils/constants.js
CHANGED
|
@@ -21,12 +21,12 @@ exports.TOTAL_NUMBER_OF_IDS_TO_CHECK = 25;
|
|
|
21
21
|
function isENV(value) {
|
|
22
22
|
return value === 'mainnet-beta' || value === 'devnet' || value === 'localnet';
|
|
23
23
|
}
|
|
24
|
-
function getApiEndpoint(programId) {
|
|
24
|
+
function getApiEndpoint(programId, apiBaseUrl = 'https://api.kamino.finance') {
|
|
25
25
|
if (programId.equals(programId_1.PROGRAM_ID)) {
|
|
26
|
-
return
|
|
26
|
+
return `${apiBaseUrl}/v2/kamino-market`;
|
|
27
27
|
}
|
|
28
28
|
else {
|
|
29
|
-
return
|
|
29
|
+
return `${apiBaseUrl}/v2/kamino-market/?programId=${programId.toString()}`;
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
exports.CDN_ENDPOINT = 'https://cdn.kamino.finance/kamino_lend_config_v3.json';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":";;;;;;AAiBA,sBAEC;AAED,wCAMC;AAMD,oCAMC;AAvCD,4DAAiC;AACjC,wDAAsD;AACtD,6CAA4C;AAC5C,kDAAuB;AAEV,QAAA,kBAAkB,GAAc,IAAI,mBAAS,CAAC,6CAA6C,CAAC,CAAC;AAC7F,QAAA,wBAAwB,GAAW,sBAAU,CAAC,QAAQ,EAAE,CAAC;AACzD,QAAA,OAAO,GAAG,sBAAsB,CAAC;AAC9C,MAAM,wBAAwB,GAAG,CAAC,CAAC;AACtB,QAAA,uBAAuB,GAAG,IAAI,oBAAO,CAAC,wBAAwB,CAAC,CAAC;AAEhE,QAAA,gBAAgB,GAAG,WAAW,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEpD,QAAA,4BAA4B,GAAG,EAAE,CAAC;AAI/C,SAAgB,KAAK,CAAC,KAAU;IAC9B,OAAO,KAAK,KAAK,cAAc,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,UAAU,CAAC;AAChF,CAAC;AAED,SAAgB,cAAc,CAAC,SAAoB;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":";;;;;;AAiBA,sBAEC;AAED,wCAMC;AAMD,oCAMC;AAvCD,4DAAiC;AACjC,wDAAsD;AACtD,6CAA4C;AAC5C,kDAAuB;AAEV,QAAA,kBAAkB,GAAc,IAAI,mBAAS,CAAC,6CAA6C,CAAC,CAAC;AAC7F,QAAA,wBAAwB,GAAW,sBAAU,CAAC,QAAQ,EAAE,CAAC;AACzD,QAAA,OAAO,GAAG,sBAAsB,CAAC;AAC9C,MAAM,wBAAwB,GAAG,CAAC,CAAC;AACtB,QAAA,uBAAuB,GAAG,IAAI,oBAAO,CAAC,wBAAwB,CAAC,CAAC;AAEhE,QAAA,gBAAgB,GAAG,WAAW,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEpD,QAAA,4BAA4B,GAAG,EAAE,CAAC;AAI/C,SAAgB,KAAK,CAAC,KAAU;IAC9B,OAAO,KAAK,KAAK,cAAc,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,UAAU,CAAC;AAChF,CAAC;AAED,SAAgB,cAAc,CAAC,SAAoB,EAAE,aAAqB,4BAA4B;IACpG,IAAI,SAAS,CAAC,MAAM,CAAC,sBAAU,CAAC,EAAE,CAAC;QACjC,OAAO,GAAG,UAAU,mBAAmB,CAAC;IAC1C,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,UAAU,gCAAgC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;IAC7E,CAAC;AACH,CAAC;AAEY,QAAA,YAAY,GAAG,uDAAuD,CAAC;AAEvE,QAAA,sBAAsB,GAAG,MAAM,CAAC;AAE7C,SAAgB,YAAY,CAAC,MAAkC,cAAc;IAC3E,IAAI,GAAG,KAAK,cAAc,EAAE,CAAC;QAC3B,OAAO,sBAAU,CAAC;IACpB,CAAC;SAAM,CAAC;QACN,OAAO,0BAAkB,CAAC;IAC5B,CAAC;AACH,CAAC;AAED;;GAEG;AACU,QAAA,gBAAgB,GAAG,CAAC,CAAC;AAElC;;;GAGG;AACU,QAAA,gBAAgB,GAAG,wBAAgB,GAAG,EAAE,CAAC;AAEtD;;;GAGG;AACU,QAAA,cAAc,GAAG,wBAAgB,GAAG,EAAE,CAAC;AAEpD;;;GAGG;AACU,QAAA,aAAa,GAAG,sBAAc,GAAG,EAAE,CAAC;AAEjD;;;GAGG;AACU,QAAA,cAAc,GAAG,qBAAa,GAAG,GAAG,CAAC;AAElD;;GAEG;AACU,QAAA,4BAA4B,GAAG,EAAE,CAAC;AAElC,QAAA,YAAY,GAAG,CAAC,CAAC;AAEjB,QAAA,qBAAqB,GAAG,GAAG,CAAC;AAE5B,QAAA,aAAa,GAAG,CAAC,CAAC;AAClB,QAAA,cAAc,GAAG,CAAC,CAAC;AAEnB,QAAA,yBAAyB,GAAG,SAAS,CAAC;AAEnD;;GAEG;AACU,QAAA,wBAAwB,GAAG,IAAI,eAAE,CAAC,SAAS,CAAC,CAAC;AAE1D;;GAEG;AACU,QAAA,mBAAmB,GAAG,OAAO,CAAC;AAC9B,QAAA,yBAAyB,GAAG,aAAa,CAAC;AAE1C,QAAA,qBAAqB,GAAG,IAAI,CAAC"}
|
package/package.json
CHANGED
package/src/classes/vault.ts
CHANGED
|
@@ -1059,13 +1059,14 @@ export class KaminoVaultClient {
|
|
|
1059
1059
|
async withdrawIxs(
|
|
1060
1060
|
user: PublicKey,
|
|
1061
1061
|
vault: KaminoVault,
|
|
1062
|
-
|
|
1062
|
+
shareAmountToWithdraw: Decimal,
|
|
1063
1063
|
slot: number,
|
|
1064
1064
|
vaultReservesMap?: PubkeyHashMap<PublicKey, KaminoReserve>,
|
|
1065
1065
|
farmState?: FarmState
|
|
1066
1066
|
): Promise<WithdrawIxs> {
|
|
1067
1067
|
const vaultState = await vault.getState(this.getConnection());
|
|
1068
1068
|
const kaminoVault = new KaminoVault(vault.address, vaultState, vault.programId);
|
|
1069
|
+
const hasFarm = await vault.hasFarm(this.getConnection());
|
|
1069
1070
|
|
|
1070
1071
|
const withdrawIxs: WithdrawIxs = {
|
|
1071
1072
|
unstakeFromFarmIfNeededIxs: [],
|
|
@@ -1073,9 +1074,56 @@ export class KaminoVaultClient {
|
|
|
1073
1074
|
postWithdrawIxs: [],
|
|
1074
1075
|
};
|
|
1075
1076
|
|
|
1076
|
-
|
|
1077
|
-
|
|
1077
|
+
// compute the total shares the user has (in ATA + in farm) and check if they want to withdraw everything or just a part
|
|
1078
|
+
let userSharesAtaBalance = new Decimal(0);
|
|
1079
|
+
const userSharesAta = getAssociatedTokenAddress(vaultState.sharesMint, user);
|
|
1080
|
+
const userSharesAtaState = await this.getConnection().getAccountInfo(userSharesAta);
|
|
1081
|
+
if (userSharesAtaState) {
|
|
1082
|
+
const userSharesAtaBalanceInLamports = getTokenBalanceFromAccountInfoLamports(userSharesAtaState);
|
|
1083
|
+
userSharesAtaBalance = userSharesAtaBalanceInLamports.div(
|
|
1084
|
+
new Decimal(10).pow(vaultState.sharesMintDecimals.toString())
|
|
1085
|
+
);
|
|
1086
|
+
}
|
|
1087
|
+
|
|
1088
|
+
let userSharesInFarm = new Decimal(0);
|
|
1078
1089
|
if (hasFarm) {
|
|
1090
|
+
userSharesInFarm = await getUserSharesInFarm(
|
|
1091
|
+
this.getConnection(),
|
|
1092
|
+
user,
|
|
1093
|
+
vaultState.vaultFarm,
|
|
1094
|
+
vaultState.sharesMintDecimals.toNumber()
|
|
1095
|
+
);
|
|
1096
|
+
}
|
|
1097
|
+
|
|
1098
|
+
let sharesToWithdraw = shareAmountToWithdraw;
|
|
1099
|
+
const totalUserShares = userSharesAtaBalance.add(userSharesInFarm);
|
|
1100
|
+
let withdrawAllShares = false;
|
|
1101
|
+
if (sharesToWithdraw.gt(totalUserShares)) {
|
|
1102
|
+
sharesToWithdraw = new Decimal(U64_MAX.toString()).div(
|
|
1103
|
+
new Decimal(10).pow(vaultState.sharesMintDecimals.toString())
|
|
1104
|
+
);
|
|
1105
|
+
withdrawAllShares = true;
|
|
1106
|
+
}
|
|
1107
|
+
|
|
1108
|
+
// if not enough shares in ATA unstake from farm
|
|
1109
|
+
const sharesInAtaAreEnoughForWithdraw = sharesToWithdraw.lte(userSharesAtaBalance);
|
|
1110
|
+
if (hasFarm && !sharesInAtaAreEnoughForWithdraw) {
|
|
1111
|
+
// if we need to unstake we need to make sure share ata is created
|
|
1112
|
+
const [{ createAtaIx }] = createAtasIdempotent(user, [
|
|
1113
|
+
{
|
|
1114
|
+
mint: vaultState.sharesMint,
|
|
1115
|
+
tokenProgram: TOKEN_PROGRAM_ID,
|
|
1116
|
+
},
|
|
1117
|
+
]);
|
|
1118
|
+
withdrawIxs.unstakeFromFarmIfNeededIxs.push(createAtaIx);
|
|
1119
|
+
let shareLamportsToWithdraw = new Decimal(U64_MAX.toString());
|
|
1120
|
+
if (!withdrawAllShares) {
|
|
1121
|
+
const sharesToWithdrawFromFarm = sharesToWithdraw.sub(userSharesAtaBalance);
|
|
1122
|
+
shareLamportsToWithdraw = collToLamportsDecimal(
|
|
1123
|
+
sharesToWithdrawFromFarm,
|
|
1124
|
+
vaultState.sharesMintDecimals.toNumber()
|
|
1125
|
+
);
|
|
1126
|
+
}
|
|
1079
1127
|
const unstakeAndWithdrawFromFarmIxs = await getFarmUnstakeAndWithdrawIxs(
|
|
1080
1128
|
this.getConnection(),
|
|
1081
1129
|
user,
|
|
@@ -1096,13 +1144,14 @@ export class KaminoVaultClient {
|
|
|
1096
1144
|
const withdrawFromVaultIxs = await this.withdrawWithReserveIxs(
|
|
1097
1145
|
user,
|
|
1098
1146
|
kaminoVault,
|
|
1099
|
-
|
|
1147
|
+
sharesToWithdraw,
|
|
1148
|
+
totalUserShares,
|
|
1100
1149
|
slot,
|
|
1101
1150
|
vaultReservesMap
|
|
1102
1151
|
);
|
|
1103
1152
|
withdrawIxs.withdrawIxs = withdrawFromVaultIxs;
|
|
1104
1153
|
} else {
|
|
1105
|
-
const withdrawFromVaultIxs = await this.withdrawFromAvailableIxs(user, kaminoVault,
|
|
1154
|
+
const withdrawFromVaultIxs = await this.withdrawFromAvailableIxs(user, kaminoVault, sharesToWithdraw);
|
|
1106
1155
|
withdrawIxs.withdrawIxs = withdrawFromVaultIxs;
|
|
1107
1156
|
}
|
|
1108
1157
|
|
|
@@ -1113,6 +1162,13 @@ export class KaminoVaultClient {
|
|
|
1113
1162
|
withdrawIxs.postWithdrawIxs.push(unwrapIx);
|
|
1114
1163
|
}
|
|
1115
1164
|
|
|
1165
|
+
// if we burn all of user's shares close its shares ATA
|
|
1166
|
+
const burnAllUserShares = sharesToWithdraw.gt(userSharesAtaBalance);
|
|
1167
|
+
if (burnAllUserShares) {
|
|
1168
|
+
const closeAtaIx = createCloseAccountInstruction(userSharesAta, user, user, [], TOKEN_PROGRAM_ID);
|
|
1169
|
+
withdrawIxs.postWithdrawIxs.push(closeAtaIx);
|
|
1170
|
+
}
|
|
1171
|
+
|
|
1116
1172
|
return withdrawIxs;
|
|
1117
1173
|
}
|
|
1118
1174
|
|
|
@@ -1149,6 +1205,7 @@ export class KaminoVaultClient {
|
|
|
1149
1205
|
user: PublicKey,
|
|
1150
1206
|
vault: KaminoVault,
|
|
1151
1207
|
shareAmount: Decimal,
|
|
1208
|
+
allUserShares: Decimal,
|
|
1152
1209
|
slot: number,
|
|
1153
1210
|
vaultReservesMap?: PubkeyHashMap<PublicKey, KaminoReserve>
|
|
1154
1211
|
): Promise<TransactionInstruction[]> {
|
|
@@ -1163,7 +1220,12 @@ export class KaminoVaultClient {
|
|
|
1163
1220
|
},
|
|
1164
1221
|
]);
|
|
1165
1222
|
|
|
1166
|
-
const
|
|
1223
|
+
const withdrawAllShares = shareAmount.gte(allUserShares);
|
|
1224
|
+
const actualSharesToWithdraw = shareAmount.lte(allUserShares) ? shareAmount : allUserShares;
|
|
1225
|
+
const shareLamportsToWithdraw = collToLamportsDecimal(
|
|
1226
|
+
actualSharesToWithdraw,
|
|
1227
|
+
vaultState.sharesMintDecimals.toNumber()
|
|
1228
|
+
);
|
|
1167
1229
|
const tokensPerShare = await this.getTokensPerShareSingleVault(vault, slot);
|
|
1168
1230
|
const sharesPerToken = new Decimal(1).div(tokensPerShare);
|
|
1169
1231
|
const tokensToWithdraw = shareLamportsToWithdraw.mul(tokensPerShare);
|
|
@@ -1181,10 +1243,17 @@ export class KaminoVaultClient {
|
|
|
1181
1243
|
const firstReserve = vaultState.vaultAllocationStrategy.find(
|
|
1182
1244
|
(reserve) => !reserve.reserve.equals(PublicKey.default)
|
|
1183
1245
|
);
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1246
|
+
if (withdrawAllShares) {
|
|
1247
|
+
reserveWithSharesAmountToWithdraw.push({
|
|
1248
|
+
reserve: firstReserve!.reserve,
|
|
1249
|
+
shares: new Decimal(U64_MAX.toString()),
|
|
1250
|
+
});
|
|
1251
|
+
} else {
|
|
1252
|
+
reserveWithSharesAmountToWithdraw.push({
|
|
1253
|
+
reserve: firstReserve!.reserve,
|
|
1254
|
+
shares: shareLamportsToWithdraw,
|
|
1255
|
+
});
|
|
1256
|
+
}
|
|
1188
1257
|
} else {
|
|
1189
1258
|
// Get decreasing order sorted available liquidity to withdraw from each reserve allocated to
|
|
1190
1259
|
const reserveAllocationAvailableLiquidityToWithdraw = await this.getReserveAllocationAvailableLiquidityToWithdraw(
|
|
@@ -1204,9 +1273,13 @@ export class KaminoVaultClient {
|
|
|
1204
1273
|
tokensToWithdrawFromReserve = tokensToWithdrawFromReserve.add(availableTokens);
|
|
1205
1274
|
isFirstWithdraw = false;
|
|
1206
1275
|
}
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1276
|
+
if (withdrawAllShares) {
|
|
1277
|
+
reserveWithSharesAmountToWithdraw.push({ reserve: key, shares: new Decimal(U64_MAX.toString()) });
|
|
1278
|
+
} else {
|
|
1279
|
+
// round up to the nearest integer the shares to withdraw
|
|
1280
|
+
const sharesToWithdrawFromReserve = tokensToWithdrawFromReserve.mul(sharesPerToken).ceil();
|
|
1281
|
+
reserveWithSharesAmountToWithdraw.push({ reserve: key, shares: sharesToWithdrawFromReserve });
|
|
1282
|
+
}
|
|
1210
1283
|
|
|
1211
1284
|
tokenLeftToWithdraw = tokenLeftToWithdraw.sub(tokensToWithdrawFromReserve);
|
|
1212
1285
|
}
|
|
@@ -48,7 +48,7 @@ export type DepositIxs = {
|
|
|
48
48
|
export type WithdrawIxs = {
|
|
49
49
|
unstakeFromFarmIfNeededIxs: TransactionInstruction[];
|
|
50
50
|
withdrawIxs: TransactionInstruction[];
|
|
51
|
-
postWithdrawIxs: TransactionInstruction[]; // wSOL ATA close ix
|
|
51
|
+
postWithdrawIxs: TransactionInstruction[]; // if needed: wSOL ATA close ix + share ATA close ix
|
|
52
52
|
};
|
|
53
53
|
|
|
54
54
|
/** The shares an user has in a vault (staked and unstaked), in tokens */
|
package/src/utils/api.ts
CHANGED
|
@@ -5,6 +5,12 @@ import { CDN_ENDPOINT, getApiEndpoint } from '../utils';
|
|
|
5
5
|
import { IBackOffOptions, backOff } from 'exponential-backoff';
|
|
6
6
|
import { PROGRAM_ID } from '../lib';
|
|
7
7
|
|
|
8
|
+
export type ApiRequestOptions = {
|
|
9
|
+
programId?: PublicKey;
|
|
10
|
+
source?: 'API' | 'CDN';
|
|
11
|
+
apiBaseUrl?: string;
|
|
12
|
+
};
|
|
13
|
+
|
|
8
14
|
export type ApiFilterOptions = {
|
|
9
15
|
isCurated?: boolean;
|
|
10
16
|
};
|
|
@@ -15,11 +21,11 @@ export type ApiFilterOptions = {
|
|
|
15
21
|
*
|
|
16
22
|
* @param programId - The program id to retrieve config for
|
|
17
23
|
* @param source - CDN is a json file hosted in the cloud, API is a webserver
|
|
24
|
+
* @param apiBaseUrl - Optional base URL for the API, if not provided, defaults to the standard API endpoint, not used for CDN
|
|
18
25
|
* @param filterOptions - Config options to filter markets by
|
|
19
26
|
*/
|
|
20
27
|
export async function getMarketsFromApi(
|
|
21
|
-
programId:
|
|
22
|
-
source: 'API' | 'CDN' = 'CDN',
|
|
28
|
+
{ programId = PROGRAM_ID, source = 'CDN', apiBaseUrl }: ApiRequestOptions = {},
|
|
23
29
|
filterOptions: ApiFilterOptions = {}
|
|
24
30
|
): Promise<ConfigType> {
|
|
25
31
|
let unfilteredConfigs: ConfigType = {} as ConfigType;
|
|
@@ -30,7 +36,7 @@ export async function getMarketsFromApi(
|
|
|
30
36
|
}
|
|
31
37
|
|
|
32
38
|
if (!unfilteredConfigs || isEmptyObject(unfilteredConfigs)) {
|
|
33
|
-
const API_ENDPOINT = getApiEndpoint(programId);
|
|
39
|
+
const API_ENDPOINT = getApiEndpoint(programId, apiBaseUrl);
|
|
34
40
|
unfilteredConfigs = (await backOff(() => axios.get(API_ENDPOINT), KAMINO_API_RETRY)).data as ConfigType;
|
|
35
41
|
}
|
|
36
42
|
|
package/src/utils/constants.ts
CHANGED
|
@@ -19,11 +19,11 @@ export function isENV(value: any): value is ENV {
|
|
|
19
19
|
return value === 'mainnet-beta' || value === 'devnet' || value === 'localnet';
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
export function getApiEndpoint(programId: PublicKey) {
|
|
22
|
+
export function getApiEndpoint(programId: PublicKey, apiBaseUrl: string = 'https://api.kamino.finance') {
|
|
23
23
|
if (programId.equals(PROGRAM_ID)) {
|
|
24
|
-
return
|
|
24
|
+
return `${apiBaseUrl}/v2/kamino-market`;
|
|
25
25
|
} else {
|
|
26
|
-
return
|
|
26
|
+
return `${apiBaseUrl}/v2/kamino-market/?programId=${programId.toString()}`;
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
|