genius-intents 0.18.0 → 0.18.1-develop.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/CHANGELOG.md +28 -0
- package/dist/direct-pools/fourmeme/fourmeme-direct.service.d.ts +20 -41
- package/dist/direct-pools/fourmeme/fourmeme-direct.service.d.ts.map +1 -1
- package/dist/direct-pools/fourmeme/fourmeme-direct.service.js +203 -133
- package/dist/direct-pools/fourmeme/fourmeme-direct.service.js.map +1 -1
- package/dist/direct-pools/fourmeme/fourmeme-direct.types.d.ts +8 -1
- package/dist/direct-pools/fourmeme/fourmeme-direct.types.d.ts.map +1 -1
- package/dist/lib/dex/hyperswap/hyperswapV2-router.abi.d.ts +3 -0
- package/dist/lib/dex/hyperswap/hyperswapV2-router.abi.d.ts.map +1 -0
- package/dist/lib/dex/hyperswap/hyperswapV2-router.abi.js +249 -0
- package/dist/lib/dex/hyperswap/hyperswapV2-router.abi.js.map +1 -0
- package/dist/protocols/four-meme/four-meme.types.d.ts +3 -0
- package/dist/protocols/four-meme/four-meme.types.d.ts.map +1 -1
- package/dist/protocols/lifi/lifi.service.d.ts.map +1 -1
- package/dist/protocols/lifi/lifi.service.js +2 -0
- package/dist/protocols/lifi/lifi.service.js.map +1 -1
- package/dist/protocols/relay/relay.service.d.ts.map +1 -1
- package/dist/protocols/relay/relay.service.js +1 -0
- package/dist/protocols/relay/relay.service.js.map +1 -1
- package/dist/protocols/v2-dex/v2-dex.service.d.ts +1 -0
- package/dist/protocols/v2-dex/v2-dex.service.d.ts.map +1 -1
- package/dist/protocols/v2-dex/v2-dex.service.js +43 -67
- package/dist/protocols/v2-dex/v2-dex.service.js.map +1 -1
- package/dist/protocols/v2-dex/v2-dex.types.d.ts +9 -2
- package/dist/protocols/v2-dex/v2-dex.types.d.ts.map +1 -1
- package/dist/protocols/v2-dex/v2-dex.types.js +1 -0
- package/dist/protocols/v2-dex/v2-dex.types.js.map +1 -1
- package/dist/protocols/v3-dex/v3-dex.service.d.ts +1 -0
- package/dist/protocols/v3-dex/v3-dex.service.d.ts.map +1 -1
- package/dist/protocols/v3-dex/v3-dex.service.js +73 -16
- package/dist/protocols/v3-dex/v3-dex.service.js.map +1 -1
- package/dist/protocols/v3-dex/v3-dex.types.d.ts +2 -1
- package/dist/protocols/v3-dex/v3-dex.types.d.ts.map +1 -1
- package/dist/protocols/v3-dex/v3-dex.types.js +1 -0
- package/dist/protocols/v3-dex/v3-dex.types.js.map +1 -1
- package/dist/types/price-params.d.ts +2 -0
- package/dist/types/price-params.d.ts.map +1 -1
- package/dist/utils/check-vm.d.ts.map +1 -1
- package/dist/utils/check-vm.js +2 -1
- package/dist/utils/check-vm.js.map +1 -1
- package/package.json +1 -1
|
@@ -11,6 +11,7 @@ const uniswapV2_router_abi_1 = require("../../lib/dex/uniswapV2/uniswapV2-router
|
|
|
11
11
|
const uniswapV2_pair_abi_1 = require("../../lib/dex/uniswapV2/uniswapV2-pair.abi");
|
|
12
12
|
const uniswapV2_factory_abi_1 = require("../../lib/dex/uniswapV2/uniswapV2-factory.abi");
|
|
13
13
|
const avax_uniswapv2_router_abi_1 = require("../../lib/dex/uniswapV2/avax-uniswapv2-router.abi");
|
|
14
|
+
const hyperswapV2_router_abi_1 = require("../../lib/dex/hyperswap/hyperswapV2-router.abi");
|
|
14
15
|
const logger_1 = require("../../utils/logger");
|
|
15
16
|
const utils_1 = require("../../utils");
|
|
16
17
|
const wrapped_native_1 = require("../../utils/wrapped-native");
|
|
@@ -65,6 +66,7 @@ class V2StyleDexService {
|
|
|
65
66
|
enums_1.ChainIdEnum.OPTIMISM,
|
|
66
67
|
enums_1.ChainIdEnum.BASE,
|
|
67
68
|
enums_1.ChainIdEnum.POLYGON,
|
|
69
|
+
enums_1.ChainIdEnum.HYPEREVM,
|
|
68
70
|
];
|
|
69
71
|
if (config?.debug) {
|
|
70
72
|
logger_1.LoggerFactory.configure(logger_1.LoggerFactory.createConsoleLogger({ level: logger_1.LogLevelEnum.DEBUG }));
|
|
@@ -222,13 +224,14 @@ class V2StyleDexService {
|
|
|
222
224
|
const routerResults = await provider.multicall({
|
|
223
225
|
contracts: routerEntries.map(r => ({
|
|
224
226
|
address: r.addr,
|
|
225
|
-
abi: this.
|
|
226
|
-
? avax_uniswapv2_router_abi_1.avaxUniswapV2RouterAbi
|
|
227
|
-
: uniswapV2_router_abi_1.uniswapV2RouterAbi,
|
|
227
|
+
abi: this._getRouterAbi(r.dex, networkIn),
|
|
228
228
|
functionName: 'getAmountsOut',
|
|
229
229
|
args: [amountInBig, path],
|
|
230
230
|
})),
|
|
231
231
|
allowFailure: true,
|
|
232
|
+
...(networkIn === enums_1.ChainIdEnum.HYPEREVM && {
|
|
233
|
+
multicallAddress: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
|
234
|
+
}),
|
|
232
235
|
});
|
|
233
236
|
routerResults.forEach((res, i) => {
|
|
234
237
|
if (res.status !== 'success')
|
|
@@ -482,11 +485,10 @@ class V2StyleDexService {
|
|
|
482
485
|
minAmountOut, // already computed with overrides considered
|
|
483
486
|
route: [(0, viem_1.getAddress)(path[0]), (0, viem_1.getAddress)(path[1])],
|
|
484
487
|
recipient: toAddr,
|
|
488
|
+
dex: bestDeployment.dex,
|
|
485
489
|
});
|
|
486
490
|
const data = (0, viem_1.encodeFunctionData)({
|
|
487
|
-
abi: this.
|
|
488
|
-
? avax_uniswapv2_router_abi_1.avaxUniswapV2RouterAbi
|
|
489
|
-
: uniswapV2_router_abi_1.uniswapV2RouterAbi,
|
|
491
|
+
abi: this._getRouterAbi(bestDeployment.dex, networkIn),
|
|
490
492
|
functionName: fn,
|
|
491
493
|
args: args,
|
|
492
494
|
});
|
|
@@ -780,14 +782,29 @@ class V2StyleDexService {
|
|
|
780
782
|
}
|
|
781
783
|
}
|
|
782
784
|
_buildSwapFunctionArgs(params) {
|
|
783
|
-
const { swapFunction, amountIn, minAmountOut, route, recipient } = params;
|
|
784
|
-
const
|
|
785
|
+
const { swapFunction, amountIn, minAmountOut, route, recipient, dex } = params;
|
|
786
|
+
const withRef = dex === v2_dex_types_1.UniswapV2StyleDexEnum.HYPERSWAP_V2;
|
|
785
787
|
const deadline = Math.floor(Date.now() / 1000) + 600;
|
|
786
|
-
|
|
787
|
-
|
|
788
|
+
const r = constants_1.ZERO_ADDRESS;
|
|
789
|
+
const isNativeIn = swapFunction.includes('ExactETH') || swapFunction.includes('ExactAVAX');
|
|
790
|
+
if (isNativeIn) {
|
|
791
|
+
// ETH/HYPE in
|
|
792
|
+
return withRef
|
|
793
|
+
? [BigInt(minAmountOut), route, recipient, r, deadline]
|
|
794
|
+
: [BigInt(minAmountOut), route, recipient, deadline];
|
|
788
795
|
}
|
|
789
796
|
else {
|
|
790
|
-
|
|
797
|
+
// ERC20 in
|
|
798
|
+
return withRef
|
|
799
|
+
? [
|
|
800
|
+
BigInt(amountIn),
|
|
801
|
+
BigInt(minAmountOut),
|
|
802
|
+
route,
|
|
803
|
+
recipient,
|
|
804
|
+
r,
|
|
805
|
+
deadline,
|
|
806
|
+
]
|
|
807
|
+
: [BigInt(amountIn), BigInt(minAmountOut), route, recipient, deadline];
|
|
791
808
|
}
|
|
792
809
|
}
|
|
793
810
|
async _decideUniV2SwapMethodWithOverride(params) {
|
|
@@ -934,6 +951,13 @@ class V2StyleDexService {
|
|
|
934
951
|
throw new Error('IDENTICAL_ADDRESSES');
|
|
935
952
|
return aa.toLowerCase() < bb.toLowerCase() ? [aa, bb] : [bb, aa];
|
|
936
953
|
}
|
|
954
|
+
_getRouterAbi(dex, network) {
|
|
955
|
+
if (this._isAvaxEdgecase(dex, network))
|
|
956
|
+
return avax_uniswapv2_router_abi_1.avaxUniswapV2RouterAbi;
|
|
957
|
+
if (network === enums_1.ChainIdEnum.HYPEREVM && dex === v2_dex_types_1.UniswapV2StyleDexEnum.HYPERSWAP_V2)
|
|
958
|
+
return hyperswapV2_router_abi_1.hyperswapV2RouterAbi;
|
|
959
|
+
return uniswapV2_router_abi_1.uniswapV2RouterAbi;
|
|
960
|
+
}
|
|
937
961
|
}
|
|
938
962
|
exports.V2StyleDexService = V2StyleDexService;
|
|
939
963
|
V2StyleDexService.deployments = {
|
|
@@ -1077,61 +1101,13 @@ V2StyleDexService.deployments = {
|
|
|
1077
1101
|
initHash: '0x00fb7f630766e6a796048ea87d01acd3068e8ff67d078148a3fa3f4a84f69bd5',
|
|
1078
1102
|
},
|
|
1079
1103
|
],
|
|
1104
|
+
[enums_1.ChainIdEnum.HYPEREVM]: [
|
|
1105
|
+
{
|
|
1106
|
+
dex: v2_dex_types_1.UniswapV2StyleDexEnum.HYPERSWAP_V2,
|
|
1107
|
+
router: '0xb4a9C4e6Ea8E2191d2FA5B380452a634Fb21240A',
|
|
1108
|
+
factory: '0x724412C00059bf7d6ee7d4a1d0D5cd4de3ea1C48',
|
|
1109
|
+
initHash: '0xc83d9df19c8c8a0a1229bd3122cbb86fd8ff56f79cc6781c15999d39425466e9',
|
|
1110
|
+
},
|
|
1111
|
+
],
|
|
1080
1112
|
};
|
|
1081
|
-
// async function t() {
|
|
1082
|
-
// /**
|
|
1083
|
-
// export type UniV2Config = {
|
|
1084
|
-
// * The chain configs for supported Uniswap V2 style DEXes
|
|
1085
|
-
// uniV2ChainConfigs: Partial<Record<ChainIdEnum, Chain>>;
|
|
1086
|
-
// * Provide per-chain RPCs (same shape used by your V2 service)
|
|
1087
|
-
// rpcs: { [network: number]: string };
|
|
1088
|
-
// /**
|
|
1089
|
-
// * Extra deployments for the Uniswap V2 style DEXes
|
|
1090
|
-
// uniV2ExtraDeployments?: V2DexDeployments;
|
|
1091
|
-
// };
|
|
1092
|
-
// */
|
|
1093
|
-
// const uniV2ChainConfigs = {
|
|
1094
|
-
// [ChainIdEnum.ETHEREUM]: mainnet,
|
|
1095
|
-
// [ChainIdEnum.POLYGON]: polygon,
|
|
1096
|
-
// [ChainIdEnum.BSC]: bsc,
|
|
1097
|
-
// [ChainIdEnum.AVALANCHE]: avalanche,
|
|
1098
|
-
// [ChainIdEnum.ARBITRUM]: arbitrum,
|
|
1099
|
-
// [ChainIdEnum.OPTIMISM]: optimism,
|
|
1100
|
-
// [ChainIdEnum.BASE]: base,
|
|
1101
|
-
// };
|
|
1102
|
-
// const rpcs = {
|
|
1103
|
-
// [ChainIdEnum.ETHEREUM]:
|
|
1104
|
-
// 'https://radial-distinguished-field.quiknode.pro/c78722d95d09a1e0b42f6cac7c3b732fa9a611d5/',
|
|
1105
|
-
// [ChainIdEnum.POLYGON]: 'https://polygon-rpc.com/',
|
|
1106
|
-
// [ChainIdEnum.BSC]: 'https://bsc-dataseed.binance.org/',
|
|
1107
|
-
// [ChainIdEnum.AVALANCHE]: 'https://api.avax.network/ext/bc/C/rpc',
|
|
1108
|
-
// [ChainIdEnum.ARBITRUM]: 'https://arb1.arbitrum.io/rpc',
|
|
1109
|
-
// [ChainIdEnum.OPTIMISM]: 'https://mainnet.optimism.io/',
|
|
1110
|
-
// [ChainIdEnum.BASE]: 'https://mainnet.base.org',
|
|
1111
|
-
// };
|
|
1112
|
-
// const dex = new V2StyleDexService({
|
|
1113
|
-
// rpcs,
|
|
1114
|
-
// uniV2ChainConfigs,
|
|
1115
|
-
// });
|
|
1116
|
-
// const start = Date.now();
|
|
1117
|
-
// const quote = await dex.fetchQuote({
|
|
1118
|
-
// from: '0x438f9f5Aee3304C6A723Ac187D0bE309b1e6A3c0',
|
|
1119
|
-
// receiver: '0x438f9f5Aee3304C6A723Ac187D0bE309b1e6A3c0',
|
|
1120
|
-
// networkIn: ChainIdEnum.ETHEREUM,
|
|
1121
|
-
// networkOut: ChainIdEnum.ETHEREUM,
|
|
1122
|
-
// tokenIn: '0x95AF4aF910c28E8EcE4512BFE46F1F33687424ce',
|
|
1123
|
-
// tokenOut: ZERO_ADDRESS,
|
|
1124
|
-
// amountIn: '100000000000000000000', // 0.1 WETH
|
|
1125
|
-
// slippage: 0.5, // 0.5%
|
|
1126
|
-
// // overrideParamsV2Dex: {
|
|
1127
|
-
// // pair: '0xc4704f13d5E08b27B039d53873E813dD2fAD99d9', // Uniswap V2 WETH/DAI
|
|
1128
|
-
// // amountOutMin: '1', // 1 DAI
|
|
1129
|
-
// // dex: UniswapV2StyleDexEnum.UNISWAP_V2,
|
|
1130
|
-
// // },
|
|
1131
|
-
// });
|
|
1132
|
-
// const end = Date.now();
|
|
1133
|
-
// console.log(quote);
|
|
1134
|
-
// console.log(`Took ${end - start}s`);
|
|
1135
|
-
// }
|
|
1136
|
-
// t();
|
|
1137
1113
|
//# sourceMappingURL=v2-dex.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v2-dex.service.js","sourceRoot":"","sources":["../../../src/protocols/v2-dex/v2-dex.service.ts"],"names":[],"mappings":";;;AAAA,+BAec;AACd,4FAA4F;AAE5F,iDAgBwB;AAMxB,qDAAyE;AACzE,6CAA4E;AAC5E,yDAAqD;AACrD,uFAAkF;AAClF,mFAA8E;AAC9E,yFAAoF;AACpF,iGAA2F;AAE3F,+CAA0E;AAE1E,uCAA2D;AAC3D,+DAAiE;AACjE,qDAAiD;AAEjD,IAAI,MAAe,CAAC;AAEpB;;;;;;;;;;;;;GAaG;AACH,MAAa,iBAAiB;IA8L5B,YAAY,MAA6C;QA7LzD;;WAEG;QACI,aAAQ,GAAG,oBAAY,CAAC,UAAU,CAAC;QAE1C;;WAEG;QACI,gBAAW,GAAG,IAAI,CAAC;QAE1B;;WAEG;QACI,eAAU,GAAG,KAAK,CAAC;QAE1B;;WAEG;QACI,SAAI,GAA2B,EAAE,CAAC;QAEzC;;;WAGG;QACK,UAAK,GAAiB,EAAE,CAAC;QAEjC;;WAEG;QACI,WAAM,GAAG;YACd,mBAAW,CAAC,QAAQ;YACpB,mBAAW,CAAC,GAAG;YACf,mBAAW,CAAC,OAAO;YACnB,mBAAW,CAAC,SAAS;YACrB,mBAAW,CAAC,QAAQ;YACpB,mBAAW,CAAC,QAAQ;YACpB,mBAAW,CAAC,IAAI;YAChB,mBAAW,CAAC,OAAO;SACpB,CAAC;QAwJA,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC;YAClB,sBAAa,CAAC,SAAS,CAAC,sBAAa,CAAC,mBAAmB,CAAC,EAAE,KAAK,EAAE,qBAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC5F,CAAC;QACD,gCAAgC;aAC3B,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;YACxB,sBAAa,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACzC,CAAC;QACD,MAAM,GAAG,sBAAa,CAAC,SAAS,EAAE,CAAC;QAEnC,IAAI,MAAM,EAAE,IAAI,IAAI,MAAM,EAAE,iBAAiB,EAAE,CAAC;YAC9C,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YAChB,KAAK,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5D,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAgB,CAAC;gBAElD,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;oBACvB,MAAM,CAAC,IAAI,CAAC,kCAAkC,OAAO,EAAE,CAAC,CAAC;oBACzD,SAAS;gBACX,CAAC;gBAED,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC5C,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,MAAM,CAAC,IAAI,CAAC,gCAAgC,OAAO,4BAA4B,CAAC,CAAC;oBACjF,SAAS;gBACX,CAAC;gBAED,MAAM,WAAW,GAAG,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;gBACtD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,IAAA,yBAAkB,EAAC;oBACvC,KAAK,EAAE,WAAW;oBAClB,SAAS,EAAE,IAAA,WAAI,EAAC,GAAG,CAAC;iBACrB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAC;YAC1F,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,sEAAsE,CACvE,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,EAAE,qBAAqB,EAAE,CAAC;YAClC,KAAK,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,qBAAqB,CAAC,EAAE,CAAC;gBACvE,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAgB,CAAC;gBACvC,MAAM,IAAI,GAAG,iBAAiB,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBACxD,iBAAiB,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;YACpF,CAAC;QACH,CAAC;IACH,CAAC;IAEM,eAAe,CAAsC,OAE3D;QACC,oEAAoE;QACpE,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,MAAyB;QAC/C,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,GACzF,MAAM,CAAC;QAET,IAAI,CAAC;YACH,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;gBAC7B,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,qDAAqD,CACtD,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAwB,CAAC,CAAC;YACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,sCAAsC,SAAS,GAAG,CACnD,CAAC;YACJ,CAAC;YAED,MAAM,WAAW,GAAG,iBAAiB,CAAC,WAAW,CAAC,SAAwB,CAAC,IAAI,EAAE,CAAC;YAClF,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;gBACxB,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,kDAAkD,SAAS,GAAG,CAC/D,CAAC;YACJ,CAAC;YAED,iEAAiE;YACjE,IACE,mBAAmB;gBACnB,mBAAmB,CAAC,WAAW;gBAC/B,mBAAmB,CAAC,YAAY;gBAChC,mBAAmB,CAAC,eAAe,EACnC,CAAC;gBACD,MAAM,IAAI,CAAC,0BAA0B,CAAC;oBACpC,OAAO,EAAE,OAAkB;oBAC3B,SAAS,EAAE,SAAwB;oBACnC,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;oBAClC,WAAW,EAAE,mBAAmB,CAAC,WAAW;oBAC5C,YAAY,EAAE,mBAAmB,CAAC,YAAY;oBAC9C,eAAe,EAAE,mBAAmB,CAAC,eAAe;iBACrD,CAAC,CAAC;YACL,CAAC;YAED,MAAM,WAAW,GAAG,CAAC,IAAA,iBAAU,EAAC,OAAO,CAAC,EAAE,IAAA,iBAAU,EAAC,QAAQ,CAAC,CAAC,CAAC;YAChE,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,SAAwB,EAAE,WAAW,CAAC,CAAC;YAChF,MAAM,IAAI,GAAG,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;YAE7D,MAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC/E,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAA,gBAAQ,EAAC,oBAAY,CAAC,cAAc,EAAE,sBAAsB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC5F,CAAC;YACD,IAAI,WAAW,IAAI,EAAE,EAAE,CAAC;gBACtB,MAAM,IAAA,gBAAQ,EAAC,oBAAY,CAAC,cAAc,EAAE,oCAAoC,CAAC,CAAC;YACpF,CAAC;YAED,8FAA8F;YAC9F,IACE,mBAAmB,EAAE,IAAI;gBACzB,mBAAmB,EAAE,YAAY;gBACjC,mBAAmB,EAAE,GAAG,KAAK,SAAS,EACtC,CAAC;gBACD,0DAA0D;gBAC1D,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,mBAAmB,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;gBACtF,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,2BAA2B,mBAAmB,CAAC,GAAG,eAAe,SAAS,EAAE,CAC7E,CAAC;gBACJ,CAAC;gBAED,MAAM,kBAAkB,GAAoB;oBAC1C,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,SAAwB,EAAE,IAAA,iBAAU,EAAC,YAAY,CAAC,CAAC;oBAC1E,KAAK,EAAE,CAAC,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjD,MAAM,EAAE,IAAA,iBAAU,EAAC,YAAY,CAAC;oBAChC,QAAQ;oBACR,iBAAiB,EAAE,mBAAmB,CAAC,YAAY;oBACnD,YAAY,EAAE,mBAAmB,CAAC,YAAY;iBAC/C,CAAC;gBAEF,OAAO;oBACL,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE;oBAChC,SAAS,EAAE,mBAAmB,CAAC,YAAY;oBAC3C,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,SAAS;oBACT,UAAU;oBACV,OAAO;oBACP,QAAQ;oBACR,QAAQ;oBACR,gBAAgB,EAAE,kBAAkB;iBACrC,CAAC;YACJ,CAAC;YAED,uFAAuF;YACvF,IAAI,mBAAmB,EAAE,IAAI,EAAE,CAAC;gBAC9B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC;oBAC7C,OAAO,EAAE,SAAwB;oBACjC,eAAe,EAAE,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAY;oBAC/C,gBAAgB,EAAE,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAY;oBAChD,UAAU,EAAE,WAAW;oBACvB,IAAI,EAAE,IAAA,iBAAU,EAAC,mBAAmB,CAAC,IAAe,CAAC;iBACtD,CAAC,CAAC;gBAEH,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;gBAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC;oBAC/C,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;oBACpC,QAAQ,EAAE,WAAW;iBACtB,CAAC,CAAC;gBAEH,MAAM,kBAAkB,GAAoB;oBAC1C,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,SAAwB,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;oBACrE,KAAK,EAAE,CAAC,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjD,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;oBAC3B,QAAQ;oBACR,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;oBAC5C,YAAY;iBACb,CAAC;gBAEF,OAAO;oBACL,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE;oBAChC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;oBACpC,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,SAAS;oBACT,UAAU;oBACV,OAAO;oBACP,QAAQ;oBACR,QAAQ;oBACR,gBAAgB,EAAE,kBAAkB;iBACrC,CAAC;YACJ,CAAC;YAED,mCAAmC;YACnC,IAAI,IAA8B,CAAC;YAEnC,wDAAwD;YACxD,MAAM,aAAa,GAAG,WAAW;iBAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;iBACvB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,IAAA,iBAAU,EAAC,CAAC,CAAC,MAAO,CAAkB,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAE3F,IAAI,aAAa,CAAC,MAAM,EAAE,CAAC;gBACzB,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC;oBAC7C,SAAS,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBACjC,OAAO,EAAE,CAAC,CAAC,IAAI;wBACf,GAAG,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,CAAC;4BACzC,CAAC,CAAC,kDAAsB;4BACxB,CAAC,CAAC,yCAAkB;wBACtB,YAAY,EAAE,eAAe;wBAC7B,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC;qBAC1B,CAAC,CAAC;oBACH,YAAY,EAAE,IAAI;iBACnB,CAAC,CAAC;gBAEH,aAAa,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;oBAC/B,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;wBAAE,OAAO;oBACrC,IAAI,CAAC,GAAG,CAAC,MAAM;wBAAE,OAAO;oBACxB,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;wBAAE,OAAO;oBAE9B,MAAM,OAAO,GAAG,GAAG,CAAC,MAA2B,CAAC;oBAChD,MAAM,SAAS,GAAG,OAAO,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAChD,IAAI,SAAS,IAAI,IAAI;wBAAE,OAAO;oBAC9B,MAAM,GAAG,GAAG,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBAChD,IAAI,CAAC,GAAG;wBAAE,OAAO;oBAEjB,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBACzC,IAAI,CAAC,IAAI,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;wBACxC,IAAI,GAAG;4BACL,MAAM,EAAE,UAAU;4BAClB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,iBAAU,EAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;4BAC1D,SAAS;yBACV,CAAC;oBACJ,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;YAED,2EAA2E;YAC3E,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,cAAc,GAAG,WAAW;qBAC/B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;qBACxB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,IAAA,iBAAU,EAAC,CAAC,CAAC,OAAQ,CAAkB,EAAE,CAAC,CAAC,CAAC;gBAEhF,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;oBAC3B,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,uDAAuD,SAAS,kBAAkB,CACnF,CAAC;gBACJ,CAAC;gBAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAwB,CAAC,CAAC;gBACpD,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,sCAAsC,SAAS,kBAAkB,CAClE,CAAC;gBACJ,CAAC;gBAED,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC;oBAC5C,SAAS,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBAClC,OAAO,EAAE,CAAC,CAAC,IAAI;wBACf,GAAG,EAAE,2CAAmB;wBACxB,YAAY,EAAE,SAAS;wBACvB,IAAI,EAAE,IAAI;qBACX,CAAC,CAAC;oBACH,YAAY,EAAE,IAAI;iBACnB,CAAC,CAAC;gBAEH,MAAM,KAAK,GAAkD,EAAE,CAAC;gBAChE,cAAc,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;oBAChC,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;wBAAE,OAAO;oBACrC,MAAM,IAAI,GAAG,GAAG,CAAC,MAAiC,CAAC;oBACnD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,wBAAY,CAAC,WAAW,EAAE;wBAAE,OAAO;oBACvE,KAAK,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,IAAA,iBAAU,EAAC,IAAI,CAAkB,EAAE,CAAC,CAAC;gBACzE,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;oBAClB,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,eAAe,EAC5B,gEAAgE,SAAS,GAAG,CAC7E,CAAC;gBACJ,CAAC;gBAED,MAAM,kBAAkB,GAAG;oBACzB,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBACjB,OAAO,EAAE,CAAC,CAAC,IAAI;wBACf,GAAG,EAAE,qCAAgB;wBACrB,YAAY,EAAE,QAAiB;wBAC/B,IAAI,EAAE,EAAE;qBACT,CAAC,CAAC;oBACH,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBACjB,OAAO,EAAE,CAAC,CAAC,IAAI;wBACf,GAAG,EAAE,qCAAgB;wBACrB,YAAY,EAAE,aAAsB;wBACpC,IAAI,EAAE,EAAE;qBACT,CAAC,CAAC;iBACJ,CAAC;gBAEF,MAAM,gBAAgB,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC;oBAChD,SAAS,EAAE,kBAAkB;oBAC7B,YAAY,EAAE,IAAI;iBACnB,CAAC,CAAC;gBAEH,MAAM,aAAa,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC9D,MAAM,eAAe,GAAG,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAE7D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACtC,MAAM,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;oBAC5B,MAAM,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;oBAC9B,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE;wBAAE,SAAS;oBACzB,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS;wBAAE,SAAS;oBAEjE,MAAM,UAAU,GAAG,IAAA,iBAAU,EAAC,EAAE,CAAC,MAAgB,CAAC,CAAC;oBACnD,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,MAA2C,CAAC;oBAE5E,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAC3B,UAAU,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;wBAChD,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC;wBACtB,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;oBAE3B,IAAI,SAAS,KAAK,EAAE,IAAI,UAAU,KAAK,EAAE;wBAAE,SAAS;oBAEpD,gCAAgC;oBAChC,MAAM,eAAe,GAAG,WAAW,GAAG,IAAI,CAAC;oBAC3C,MAAM,SAAS,GAAG,eAAe,GAAG,UAAU,CAAC;oBAC/C,MAAM,WAAW,GAAG,SAAS,GAAG,KAAK,GAAG,eAAe,CAAC;oBACxD,IAAI,WAAW,KAAK,EAAE;wBAAE,SAAS;oBACjC,MAAM,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;oBAE1C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;oBACtB,IAAI,CAAC,IAAI;wBAAE,SAAS;oBACpB,MAAM,YAAY,GAAG,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;oBACtD,IAAI,CAAC,YAAY;wBAAE,SAAS;oBAC5B,MAAM,MAAM,GAAG,YAAY,EAAE,KAAK,CAAC;oBACnC,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;oBACvC,IAAI,CAAC,UAAU;wBAAE,SAAS;oBAC1B,MAAM,UAAU,GAAG,UAAU,EAAE,MAAM;wBACnC,CAAC,CAAE,IAAA,iBAAU,EAAC,UAAU,CAAC,MAAO,CAAmB;wBACnD,CAAC,CAAE,wBAA8B,CAAC;oBAEpC,IAAI,CAAC,IAAI,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;wBACxC,MAAM,iBAAiB,GAAG,IAAA,iBAAU,EAAC,UAAU,CAAC,OAAQ,CAAkB,CAAC;wBAC3E,IAAI,GAAG;4BACL,MAAM,EAAE,UAAU;4BAClB,OAAO,EAAE,iBAAiB;4BAC1B,SAAS;yBACV,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,eAAe,EAC5B,sCAAsC,SAAS,GAAG,CACnD,CAAC;YACJ,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;YAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC;gBAC/C,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;gBACpC,QAAQ,EAAE,WAAW;aACtB,CAAC,CAAC;YAEH,MAAM,kBAAkB,GAAG;gBACzB,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,SAAwB,EAAE,IAAI,CAAC,MAAM,CAAC;gBAC7D,KAAK,EAAE,CAAC,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjD,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,QAAQ;gBACR,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;gBAC5C,YAAY;aACb,CAAC;YAEF,MAAM,QAAQ,GAAkB;gBAC9B,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE;gBAChC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;gBACpC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,SAAS;gBACT,UAAU;gBACV,OAAO;gBACP,QAAQ;gBACR,QAAQ;gBACR,gBAAgB,EAAE,kBAAkB;aACrC,CAAC;YAEF,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,cAAc,GAAG,IAAA,0BAAkB,EAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChE,MAAM,IAAA,gBAAQ,EAAC,oBAAY,CAAC,eAAe,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,UAAU,CAAC,MAAyB;QAC/C,MAAM,EACJ,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,UAAU,EACV,QAAQ,EACR,mBAAmB,GACpB,GAAG,MAAM,CAAC;QAEX,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACvB,MAAM,IAAA,gBAAQ,EAAC,oBAAY,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;YAC7B,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,qDAAqD,CACtD,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAwB,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,sCAAsC,SAAS,GAAG,CACnD,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,iBAAiB,CAAC,WAAW,CAAC,SAAwB,CAAC,IAAI,EAAE,CAAC;QAClF,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;YACxB,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,kDAAkD,SAAS,GAAG,CAC/D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,iEAAiE;YACjE,IACE,mBAAmB;gBACnB,mBAAmB,CAAC,WAAW;gBAC/B,mBAAmB,CAAC,YAAY;gBAChC,mBAAmB,CAAC,eAAe,EACnC,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;gBAE3D,MAAM,IAAI,CAAC,0BAA0B,CAAC;oBACpC,OAAO,EAAE,OAAkB;oBAC3B,SAAS,EAAE,SAAwB;oBACnC,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;oBAClC,WAAW,EAAE,mBAAmB,CAAC,WAAW;oBAC5C,YAAY,EAAE,mBAAmB,CAAC,YAAY;oBAC9C,eAAe,EAAE,mBAAmB,CAAC,eAAe;iBACrD,CAAC,CAAC;YACL,CAAC;YAED,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE;gBACpD,IAAA,iBAAU,EAAC,OAAO,CAAC;gBACnB,IAAA,iBAAU,EAAC,QAAQ,CAAC;aACrB,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,CAAC,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;YACjE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,4BAA4B,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAClD,CAAC;YACJ,CAAC;YAED,MAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC/E,MAAM,QAAQ,GAAG,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC;YAClC,MAAM,MAAM,GAAG,IAAA,iBAAU,EAAC,QAAQ,CAAC,CAAC;YAEpC,0EAA0E;YAC1E,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC;gBAClC,IAAI,EAAE,QAAQ;gBACd,SAAS;gBACT,UAAU;gBACV,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE;gBAChC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;gBAChB,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;gBACjB,QAAQ;gBACR,mBAAmB;aACpB,CAAC,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,wBAAwB,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC;YAEtD,MAAM,aAAa,GAAG,KAAsB,CAAC;YAC7C,MAAM,UAAU,GAAG,IAAA,iBAAU,EAC1B,aAAa,CAAC,gBAAoC,CAAC,MAAM;gBACvD,aAAa,CAAC,gBAAoC,EAAE,MAAM,CAC9D,CAAC;YACF,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAElD,8DAA8D;YAC9D,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,CACrC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,WAAW,EAAE,CACrE,CAAC;YACF,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC;gBAC7B,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,kCAAkC,UAAU,6DAA6D,CAC1G,CAAC;YACJ,CAAC;YAED,MAAM,eAAe,GAAG,IAAA,oBAAQ,EAAC,OAAO,CAAC,CAAC;YAC1C,MAAM,gBAAgB,GAAG,IAAA,oBAAQ,EAAC,QAAQ,CAAC,CAAC;YAC5C,MAAM,WAAW,GAAG,IAAA,iBAAU,EAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YACvD,MAAM,YAAY,GAAI,aAAa,CAAC,gBAAoC,CAAC,YAAY,CAAC;YAEtF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,kCAAkC,CAAC;gBACpE,cAAc,EAAE,WAAW;gBAC3B,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;gBAChB,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;gBACjB,QAAQ,EAAE,WAAW;gBACrB,QAAQ;gBACR,QAAQ,EAAE,eAAe;gBACzB,YAAY,EAAE,mBAAmB,EAAE,IAAI;aACxC,CAAC,CAAC;YAEH,MAAM,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACxD,MAAM,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC;gBAClC,UAAU,EAAE,cAAc,CAAC,GAAG;gBAC9B,QAAQ,EAAE,eAAe;gBACzB,UAAU,EAAE,eAAe;gBAC3B,WAAW,EAAE,gBAAgB;gBAC7B,OAAO,EAAE,SAAS;aACnB,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC;gBACvC,YAAY,EAAE,EAAE;gBAChB,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE;gBAChC,YAAY,EAAE,6CAA6C;gBAC3D,KAAK,EAAE,CAAC,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjD,SAAS,EAAE,MAAM;aAClB,CAAC,CAAC;YAEH,MAAM,IAAI,GAAW,IAAA,yBAAkB,EAAC;gBACtC,GAAG,EAAE,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC;oBACtD,CAAC,CAAC,kDAAsB;oBACxB,CAAC,CAAC,yCAAkB;gBACtB,YAAY,EAAE,EAAE;gBAChB,IAAI,EAAE,IAAI;aACX,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAkB,eAAe;gBAC7C,CAAC,CAAE,SAAsC;gBACzC,CAAC,CAAC;oBACE,OAAO,EAAE,UAAU;oBACnB,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oBACd,MAAM,EAAE,WAAW,CAAC,QAAQ,EAAE;oBAC9B,OAAO,EAAE;wBACP,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;wBACX,IAAI,EAAE,IAAA,yBAAkB,EAAC;4BACvB,GAAG,EAAE,oBAAe;4BACpB,YAAY,EAAE,SAAS;4BACvB,IAAI,EAAE,CAAC,UAAU,EAAE,iBAAU,CAAC;yBAC/B,CAAC;wBACF,KAAK,EAAE,GAAG;qBACX;iBACF,CAAC;YAEN,MAAM,gBAAgB,GAAG;gBACvB,eAAe,EAAE;oBACf,EAAE,EAAE,UAAU;oBACd,IAAI;oBACJ,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE;iBACxB;gBACD,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;aAC9B,CAAC;YAEF,MAAM,gBAAgB,GAAoB;gBACxC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,SAAwB,EAAE,UAAU,CAAC;gBAC5D,MAAM,EAAE,UAAU;gBAClB,KAAK,EAAE,CAAC,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjD,QAAQ,EAAE,eAAe,CAAC,QAAQ;gBAClC,cAAc,EAAE,eAAe,CAAC,MAAM;gBACtC,iBAAiB,EAAE,iBAAiB,CAAC,QAAQ,EAAE;gBAC/C,YAAY;gBACZ,gBAAgB,EAAE,EAAE;aACrB,CAAC;YAEF,OAAO;gBACL,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,MAAM;gBAChB,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE;gBAChC,SAAS,EAAE,iBAAiB,CAAC,QAAQ,EAAE;gBACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,SAAS;gBACT,UAAU;gBACV,OAAO;gBACP,QAAQ;gBACR,QAAQ;gBACR,mBAAmB,EAAE,gBAAgB;gBACrC,gBAAgB;aACjB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,cAAc,GAAG,IAAA,0BAAkB,EAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChE,MAAM,IAAA,gBAAQ,EAAC,oBAAY,CAAC,eAAe,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED,mFAAmF;IAC3E,KAAK,CAAC,sBAAsB,CAAC,MAMpC;QAUC,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;QAChF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAkC,CAAiB,CAAC;QAC9E,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,wCAAwC,OAAO,EAAE,CAClD,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAE9F,qBAAqB;QACrB,MAAM,OAAO,GAAG,IAAA,iBAAU,EAAC,eAAe,CAAC,CAAC,WAAW,EAAE,CAAC;QAC1D,MAAM,QAAQ,GAAG,IAAA,iBAAU,EAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE,CAAC;QAC5D,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QAChC,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QAChC,MAAM,cAAc,GAClB,CAAC,OAAO,KAAK,EAAE,IAAI,QAAQ,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,EAAE,IAAI,QAAQ,KAAK,EAAE,CAAC,CAAC;QAC7E,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,gDAAgD,IAAI,eAAe,MAAM,IAAI,MAAM,cAAc,eAAe,IAAI,gBAAgB,EAAE,CACvI,CAAC;QACJ,CAAC;QAED,gBAAgB;QAChB,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,YAAY,CAAC;YAC1C,OAAO,EAAE,IAAI;YACb,GAAG,EAAE,qCAAgB;YACrB,YAAY,EAAE,aAAa;SAC5B,CAAC,CAAwC,CAAC;QAE3C,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAEvF,IAAI,SAAS,KAAK,EAAE,IAAI,UAAU,KAAK,EAAE,EAAE,CAAC;YAC1C,MAAM,IAAA,gBAAQ,EAAC,oBAAY,CAAC,eAAe,EAAE,iCAAiC,IAAI,EAAE,CAAC,CAAC;QACxF,CAAC;QAED,uBAAuB;QACvB,MAAM,eAAe,GAAG,UAAU,GAAG,IAAI,CAAC;QAC1C,MAAM,SAAS,GAAG,eAAe,GAAG,UAAU,CAAC;QAC/C,MAAM,WAAW,GAAG,SAAS,GAAG,KAAK,GAAG,eAAe,CAAC;QACxD,IAAI,WAAW,KAAK,EAAE,EAAE,CAAC;YACvB,MAAM,IAAA,gBAAQ,EAAC,oBAAY,CAAC,eAAe,EAAE,kCAAkC,IAAI,EAAE,CAAC,CAAC;QACzF,CAAC;QACD,MAAM,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;QAE1C,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7D,OAAO;YACL,SAAS;YACT,OAAO,EAAE;gBACP,GAAG,EAAE,MAAM;gBACX,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,MAAM,EAAE,kBAAkB;gBAC1B,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE;gBAC/B,KAAK,EAAE,yBAAyB,IAAI,IAAI;aACzC;SACF,CAAC;IACJ,CAAC;IAED,kEAAkE;IAC1D,KAAK,CAAC,4BAA4B,CACxC,OAAoB,EACpB,IAAa;QAYb,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAkC,CAAiB,CAAC;QAC9E,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,wCAAwC,OAAO,EAAE,CAClD,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC;YAC5C,YAAY,EAAE,KAAK;YACnB,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,qCAAgB,EAAE,YAAY,EAAE,QAAQ,EAAE;gBAChE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,qCAAgB,EAAE,YAAY,EAAE,QAAQ,EAAE;gBAChE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,qCAAgB,EAAE,YAAY,EAAE,SAAS,EAAE;aAClE;SACF,CAAC,CAID,CAAC;QAEF,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACnF,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,iCAAiC,IAAI,aAAa,OAAO,EAAE,CAC5D,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAA,iBAAU,EAAC,EAAE,CAAC,MAAiB,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,IAAA,iBAAU,EAAC,EAAE,CAAC,MAAiB,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,IAAA,iBAAU,EAAC,GAAG,CAAC,MAAiB,CAAC,CAAC;QAElD,MAAM,WAAW,GAAG,iBAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACjE,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,QAAQ,IAAI,YAAY,OAAO,0DAA0D,OAAO,EAAE,CACnG,CAAC;QACJ,CAAC;QAED,OAAO;YACL,MAAM;YACN,MAAM;YACN,OAAO;YACP,UAAU,EAAE;gBACV,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,MAAM,EAAE,IAAA,iBAAU,EAAC,OAAO,CAAC,MAAM,CAAY;gBAC7C,OAAO,EAAE,IAAA,iBAAU,EAAC,OAAO,CAAC,OAAO,CAAY;gBAC/C,gFAAgF;gBAChF,YAAY,EAAE,OAAO,EAAE,QAAmB;aAC3C;SACF,CAAC;IACJ,CAAC;IAED,kEAAkE;IAC1D,KAAK,CAAC,0BAA0B,CAAC,MAOxC;QACC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC;QAEzF,6EAA6E;QAC7E,MAAM,MAAM,GAAG,8BAAkB,CAAC,SAAwB,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAA,gBAAQ,EAAC,oBAAY,CAAC,cAAc,EAAE,qCAAqC,SAAS,EAAE,CAAC,CAAC;QAChG,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC;QAC9B,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC;QAE9B,MAAM,aAAa,GAAG,oCAAmB,CAAC,SAAwB,CAAC,CAAC;QACpE,MAAM,WAAW,GAAG,IAAA,iBAAU,EAAC,OAAkB,CAAC,CAAC;QAEnD,MAAM,cAAc,GAAc,CAAC,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC;aACtF,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;aAC/B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAA,oBAAQ,EAAC,CAAC,CAAC,CAAC;aACzB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,iBAAU,EAAC,CAAY,CAAC,CAAC;aAClC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC;QAElC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,wEAAwE,SAAS,EAAE,CACpF,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,CAAC,iBAAiB,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAC9E,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CACtB,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;YACxB,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,kDAAkD,SAAS,gBAAgB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAC/F,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAoC,CAAiB,CAAC;QAChF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,wCAAwC,SAAS,EAAE,CACpD,CAAC;QACJ,CAAC;QAED,MAAM,eAAe,GAAG,CAAC,IAAa,EAAW,EAAE,CACjD,CAAC,CAAC,aAAa;YACf,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,IAAA,iBAAU,EAAC,aAAwB,CAAC,CAAC,WAAW,EAAE,CAAC;QAExF,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B;YACE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,IAAA,iBAAU,EAAC,SAAS,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE;YACrE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,IAAA,iBAAU,EAAC,SAAS,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE;SACtE,CAAC,MAAM,CAAC,OAAO,CAAC,CAClB,CAAC;QAEF,MAAM,QAAQ,GAAG,CAAC,IAAa,EAAW,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAErF,MAAM,eAAe,GAAG,CAAC,IAAa,EAAU,EAAE;YAChD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACjC,IAAI,SAAS,IAAI,IAAA,iBAAU,EAAC,SAAS,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK;gBACpE,OAAO,SAAS,CAAC,QAAQ,CAAC;YAC5B,IAAI,SAAS,IAAI,IAAA,iBAAU,EAAC,SAAS,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK;gBACpE,OAAO,SAAS,CAAC,QAAQ,CAAC;YAC5B,IAAI,eAAe,CAAC,IAAI,CAAC;gBAAE,OAAO,EAAE,CAAC;YACrC,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QAEF,MAAM,eAAe,GAAG,CAAC,IAAa,EAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAItF,MAAM,UAAU,GAAkB,EAAE,CAAC;QAErC,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,CAAC,EAAE,QAA2B,CAAC;YACpD,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,kEAAkE;gBAClE,SAAS;YACX,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;gBAClC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC;oBAC1C,OAAO,EAAE,IAAA,iBAAU,EAAC,CAAC,CAAC,OAAkB,CAAC;oBACzC,YAAY;oBACZ,MAAM,EAAE,MAAM;oBACd,MAAM,EAAE,MAAM;iBACf,CAAC,CAAC;gBACH,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAA,iBAAU,EAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAA,iBAAU,EAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YACvB,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,0DAA0D,SAAS,EAAE,CACtE,CAAC;QACJ,CAAC;QAED,mCAAmC;QACnC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrC,OAAO,EAAE,CAAC,CAAC,IAAI;YACf,GAAG,EAAE,qCAAgB;YACrB,YAAY,EAAE,aAAsB;YACpC,IAAI,EAAE,EAAE;SACT,CAAC,CAAC,CAAC;QAEJ,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC;YAC7C,YAAY,EAAE,IAAI;YAClB,SAAS;SACV,CAAC,CAAC;QAQH,MAAM,IAAI,GAAsB,EAAE,CAAC;QAEnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,GAAG,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;YAC/B,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,IAAI;gBAAE,SAAS;YAExD,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,MAA6C,CAAC;YACnE,wEAAwE;YACxE,MAAM,UAAU,GAAG,CAAC,MAAM,MAAM,CAAC,YAAY,CAAC;gBAC5C,OAAO,EAAE,IAAI,CAAC,IAAI;gBAClB,GAAG,EAAE,qCAAgB;gBACrB,YAAY,EAAE,QAAQ;aACvB,CAAC,CAAY,CAAC;YAEf,MAAM,WAAW,GAAG,IAAA,iBAAU,EAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;YACzD,MAAM,eAAe,GAAG,WAAW,KAAK,IAAA,iBAAU,EAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;YAE9E,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5C,MAAM,WAAW,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAE9C,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,eAAe,CAAC;YAC7D,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAE5E,MAAM,QAAQ,GAAG,UAAU,GAAG,YAAY,GAAG,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAEvF,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,QAAQ;gBACR,YAAY,EAAE,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK;aACvD,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,eAAe,EAC5B,6BAA6B,OAAO,eAAe,SAAS,4BAA4B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC3G,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAEpB,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,eAAe,EAC5B,6BAA6B,OAAO,eAAe,SAAS,4BAA4B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC3G,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,eAAe,EAC5B,wBAAwB,OAAO,aAAa,SAAS,uCAAuC,CAC7F,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;YACtB,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,eAAe,EAC5B,wBAAwB,OAAO,mCAAmC,CACnE,CAAC;QACJ,CAAC;QAED,UAAU;QACV,OAAO;IACT,CAAC;IAEO,YAAY,CAAC,OAAoB,EAAE,MAAc;QACvD,+FAA+F;QAC/F,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,IAAI,CAC7D,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,WAAW,EAAE,CACrD,CAAC;QAEF,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAA,gBAAQ,EACZ,oBAAY,CAAC,cAAc,EAC3B,kCAAkC,MAAM,eAAe,OAAO,GAAG,CAClE,CAAC;QACJ,CAAC;QAED,OAAO,GAAG,UAAU,CAAC,GAAG,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;IAClD,CAAC;IAEO,mBAAmB,CAAC,MAAkC;QAC5D,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;QAE1E,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACjE,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QAErD,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,QAAQ,CAAC,QAAQ,KAAK,eAAe;gBAC1C,CAAC,CAAC,YAAY,YAAY,WAAW;gBACrC,CAAC,CAAC,YAAY,YAAY,wCAAwC,CAAC;QACvE,CAAC;aAAM,CAAC;YACN,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,QAAQ,CAAC,QAAQ,KAAK,eAAe;oBAC1C,CAAC,CAAC,qBAAqB,YAAY,EAAE;oBACrC,CAAC,CAAC,qBAAqB,YAAY,+BAA+B,CAAC;YACvE,CAAC;YAED,OAAO,QAAQ,CAAC,QAAQ,KAAK,eAAe;gBAC1C,CAAC,CAAC,0BAA0B;gBAC5B,CAAC,CAAC,uDAAuD,CAAC;QAC9D,CAAC;IACH,CAAC;IAEO,sBAAsB,CAAC,MAAkC;QAC/D,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;QAE1E,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACzF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;QAErD,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kCAAkC,CAC9C,MAAyC;QAEzC,MAAM,EACJ,cAAc,EACd,OAAO,EAAE,wCAAwC;QACjD,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,YAAY,GACb,GAAG,MAAM,CAAC;QAEX,IAAI,OAAO,KAAK,wBAAY,IAAI,QAAQ,KAAK,wBAAY,IAAI,QAAQ,IAAI,EAAE,EAAE,CAAC;YAC5E,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;QACvD,CAAC;QAED,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,EAAE,QAAQ,EAAE,yBAAyB,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC;QACnF,CAAC;QAED,4EAA4E;QAC5E,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC;YACvC,OAAO,EAAE,cAAyB;YAClC,GAAG,EAAE,2CAAmB;YACxB,YAAY,EAAE,SAAS;YACvB,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;SAC1B,CAAC,CAAC;QAEH,IAAI,IAAI,KAAK,wBAAY,EAAE,CAAC;YAC1B,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QACpD,CAAC;QAED,mFAAmF;QACnF,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,EAAE,QAAQ,EAAE,yBAAyB,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,OAAO,EAAE,QAAQ,EAAE,yBAAyB,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;QACxE,CAAC;IACH,CAAC;IAEO,iBAAiB,CAAC,IAAuB,EAAE,MAAyB;QAC1E,MAAM,IAAI,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAA,iBAAU,EAAC,IAAI,CAAC,CAAC;QAExD,4BAA4B;QAC5B,MAAM,GAAG,GAAsB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC5C,GAAG,EAAE,CAAC,CAAC,GAAG;YACV,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;YACtB,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;SACzB,CAAC,CAAC,CAAC;QAEJ,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,MAAM,KAAK,GAAoB;gBAC7B,GAAG,EAAE,CAAC,CAAC,GAAG;gBACV,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;gBACtB,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;aACzB,CAAC;YAEF,iGAAiG;YACjG,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,CACvB,CAAC,CAAC,EAAE,CACF,CAAC,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG;gBACnB,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC;oBACtD,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,CAAC,CACjE,CAAC;YAEF,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;gBACb,6BAA6B;gBAE7B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACd,MAAM,IAAA,gBAAQ,EAAC,oBAAY,CAAC,cAAc,EAAE,8BAA8B,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;gBACzF,CAAC;gBAED,GAAG,CAAC,GAAG,CAAC,GAAG;oBACT,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG;oBACjB,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM;oBACvC,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO;iBAC3C,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,+CAA+C;gBAC/C,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,oDAAoD;QACpD,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;IAEO,kBAAkB,CAAC,IAAuB;QAChD,MAAM,KAAK,GAAG,CAAC,CAAkB,EAAU,EAAE,CAC3C,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC;QAChE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,GAAG,GAAsB,EAAE,CAAC;QAClC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACZ,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACd,CAAC;QACH,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,sBAAsB,CAAC,MAAmC;QAChE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;QAEvC,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;YACrC,MAAM,IAAA,gBAAQ,EAAC,oBAAY,CAAC,cAAc,EAAE,qBAAqB,QAAQ,EAAE,CAAC,CAAC;QAC/E,CAAC;QAED,wDAAwD;QACxD,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,GAAG,KAAM;YAAE,GAAG,GAAG,KAAM,CAAC;QAE/B,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9B,MAAM,QAAQ,GAAG,MAAO,CAAC;QAEzB,uCAAuC;QACvC,MAAM,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;QACxD,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;IAEO,eAAe,CAAC,GAA0B,EAAE,OAAoB;QACtE,OAAO,CACL,CAAC,GAAG,KAAK,oCAAqB,CAAC,WAAW,IAAI,GAAG,KAAK,oCAAqB,CAAC,YAAY,CAAC;YACzF,OAAO,KAAK,mBAAW,CAAC,SAAS,CAClC,CAAC;IACJ,CAAC;IAEO,aAAa,CACnB,OAAoB,EACpB,IAAc;QAEd,IAAI,OAAO,GAAuB,SAAS,CAAC;QAC5C,IAAI,QAAQ,GAAuB,SAAS,CAAC;QAE7C,IAAI,IAAA,oBAAQ,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtB,OAAO,GAAG,oCAAmB,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,IAAI,IAAA,oBAAQ,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtB,QAAQ,GAAG,oCAAmB,CAAC,OAAO,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC1B,MAAM,IAAA,gBAAQ,EAAC,oBAAY,CAAC,cAAc,EAAE,6BAA6B,CAAC,CAAC;QAC7E,CAAC;QAED,OAAO;YACL,OAAO;YACP,QAAQ;SACT,CAAC;IACJ,CAAC;IAEO,qBAAqB,CAAC,MAAkC;QAC9D,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QACzD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAE7D,0BAA0B;QAC1B,MAAM,IAAI,GAAG,IAAA,cAAO,EAAC,IAAA,iBAAU,EAAC,OAAO,CAAC,CAAC,CAAC;QAE1C,uDAAuD;QACvD,MAAM,OAAO,GAAG,IAAA,gBAAS,EAAC,IAAA,mBAAY,EAAC,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QAClF,MAAM,IAAI,GAAG,IAAA,cAAO,EAAC,OAAO,CAAC,CAAC;QAE9B,oDAAoD;QACpD,MAAM,YAAY,GAAG,IAAA,cAAO,EAAC,YAAY,CAAC,CAAC;QAE3C,yDAAyD;QACzD,MAAM,YAAY,GAAG,IAAA,aAAM,EAAC,CAAC,IAAA,cAAO,EAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;QACzE,MAAM,WAAW,GAAG,IAAA,gBAAS,EAAC,YAAY,CAAC,CAAC;QAE5C,yDAAyD;QACzD,MAAM,IAAI,GAAG,IAAA,iBAAU,EAAC,IAAA,YAAK,EAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,uCAAuC;QACxF,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,cAAc,CAAC,CAAU,EAAE,CAAU;QAC3C,MAAM,EAAE,GAAG,IAAA,iBAAU,EAAC,CAAC,CAAC,CAAC;QACzB,MAAM,EAAE,GAAG,IAAA,iBAAU,EAAC,CAAC,CAAC,CAAC;QACzB,IAAI,EAAE,KAAK,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACtD,OAAO,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACnE,CAAC;;AAz1CH,8CA01CC;AAjzCe,6BAAW,GAAqB;IAC5C,CAAC,mBAAW,CAAC,QAAQ,CAAC,EAAE;QACtB;YACE,GAAG,EAAE,oCAAqB,CAAC,UAAU;YACrC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;QACD;YACE,GAAG,EAAE,oCAAqB,CAAC,YAAY;YACvC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;QACD;YACE,GAAG,EAAE,oCAAqB,CAAC,cAAc;YACzC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;KACF;IAED,CAAC,mBAAW,CAAC,GAAG,CAAC,EAAE;QACjB;YACE,GAAG,EAAE,oCAAqB,CAAC,cAAc;YACzC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;QACD;YACE,GAAG,EAAE,oCAAqB,CAAC,UAAU;YACrC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;QACD;YACE,GAAG,EAAE,oCAAqB,CAAC,YAAY;YACvC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;KACF;IAED,CAAC,mBAAW,CAAC,OAAO,CAAC,EAAE;QACrB;YACE,GAAG,EAAE,oCAAqB,CAAC,YAAY;YACvC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;QACD;YACE,GAAG,EAAE,oCAAqB,CAAC,UAAU;YACrC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;QACD;YACE,GAAG,EAAE,oCAAqB,CAAC,YAAY;YACvC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;KACF;IAED,CAAC,mBAAW,CAAC,SAAS,CAAC,EAAE;QACvB;YACE,GAAG,EAAE,oCAAqB,CAAC,YAAY;YACvC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;QACD;YACE,GAAG,EAAE,oCAAqB,CAAC,YAAY;YACvC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;QACD;YACE,GAAG,EAAE,oCAAqB,CAAC,UAAU;YACrC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;QACD;YACE,GAAG,EAAE,oCAAqB,CAAC,WAAW;YACtC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;KACF;IAED,CAAC,mBAAW,CAAC,QAAQ,CAAC,EAAE;QACtB;YACE,GAAG,EAAE,oCAAqB,CAAC,YAAY;YACvC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;QACD;YACE,GAAG,EAAE,oCAAqB,CAAC,UAAU;YACrC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;QACD;YACE,GAAG,EAAE,oCAAqB,CAAC,cAAc;YACzC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;KACF;IAED,CAAC,mBAAW,CAAC,QAAQ,CAAC,EAAE;QACtB;YACE,GAAG,EAAE,oCAAqB,CAAC,YAAY;YACvC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;QACD;YACE,GAAG,EAAE,oCAAqB,CAAC,UAAU;YACrC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;KACF;IAED,CAAC,mBAAW,CAAC,IAAI,CAAC,EAAE;QAClB;YACE,GAAG,EAAE,oCAAqB,CAAC,YAAY;YACvC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;QACD;YACE,GAAG,EAAE,oCAAqB,CAAC,UAAU;YACrC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;QACD;YACE,GAAG,EAAE,oCAAqB,CAAC,cAAc;YACzC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,oEAAoE;SAC/E;KACF;CACF,AAnJwB,CAmJvB;AAgqCJ,uBAAuB;AACvB,QAAQ;AACR,8BAA8B;AAE9B,8DAA8D;AAE9D,4DAA4D;AAE5D,mEAAmE;AAEnE,yCAAyC;AACzC,QAAQ;AACR,wDAAwD;AAExD,8CAA8C;AAC9C,KAAK;AACL,QAAQ;AAER,gCAAgC;AAChC,uCAAuC;AACvC,sCAAsC;AACtC,8BAA8B;AAC9B,0CAA0C;AAC1C,wCAAwC;AACxC,wCAAwC;AACxC,gCAAgC;AAChC,OAAO;AAEP,mBAAmB;AACnB,8BAA8B;AAC9B,qGAAqG;AACrG,yDAAyD;AACzD,8DAA8D;AAC9D,wEAAwE;AACxE,8DAA8D;AAC9D,8DAA8D;AAC9D,sDAAsD;AACtD,OAAO;AAEP,wCAAwC;AACxC,YAAY;AACZ,yBAAyB;AACzB,QAAQ;AAER,8BAA8B;AAC9B,yCAAyC;AACzC,0DAA0D;AAC1D,8DAA8D;AAC9D,uCAAuC;AACvC,wCAAwC;AACxC,6DAA6D;AAC7D,8BAA8B;AAC9B,qDAAqD;AACrD,6BAA6B;AAC7B,gCAAgC;AAChC,sFAAsF;AACtF,uCAAuC;AACvC,kDAAkD;AAClD,YAAY;AACZ,QAAQ;AACR,4BAA4B;AAE5B,wBAAwB;AACxB,yCAAyC;AACzC,IAAI;AAEJ,OAAO"}
|
|
1
|
+
{"version":3,"file":"v2-dex.service.js","sourceRoot":"","sources":["../../../src/protocols/v2-dex/v2-dex.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,8 @@ export declare enum UniswapV2StyleDexEnum {
|
|
|
6
6
|
PANCAKESWAP_V2 = "pancakeswap_v2",
|
|
7
7
|
QUICKSWAP_V2 = "quickswap_v2",
|
|
8
8
|
TRADERJOE_V2 = "traderjoe_v2",
|
|
9
|
-
PANGOLIN_V2 = "pangolin_v2"
|
|
9
|
+
PANGOLIN_V2 = "pangolin_v2",
|
|
10
|
+
HYPERSWAP_V2 = "hyperswap_v2"
|
|
10
11
|
}
|
|
11
12
|
export type DexCandidate = {
|
|
12
13
|
router: string;
|
|
@@ -16,9 +17,11 @@ export type DexCandidate = {
|
|
|
16
17
|
export type ProvidersMap = Partial<Record<ChainIdEnum, PublicClient>>;
|
|
17
18
|
export type V2DexDeployments = Partial<Record<ChainIdEnum, V2DexDeployment[]>>;
|
|
18
19
|
export type DexRpcUrls = Partial<Record<ChainIdEnum, DexRpcUrl>>;
|
|
19
|
-
export type V2SwapFunctionArgs = SwapExactETHForTokensArgs | SwapExactTokensForTokensArgs;
|
|
20
|
+
export type V2SwapFunctionArgs = SwapExactETHForTokensArgs | SwapExactTokensForTokensArgs | HyperSwapExactTokensForTokensArgs | HyperSwapExactETHForTokensArgs;
|
|
20
21
|
export type SwapExactETHForTokensArgs = [bigint, string[], string, number];
|
|
21
22
|
export type SwapExactTokensForTokensArgs = [bigint, bigint, string[], string, number];
|
|
23
|
+
export type HyperSwapExactTokensForTokensArgs = [bigint, bigint, string[], string, string, number];
|
|
24
|
+
export type HyperSwapExactETHForTokensArgs = [bigint, string[], string, string, number];
|
|
22
25
|
export type V2DexDeployment = {
|
|
23
26
|
dex: UniswapV2StyleDexEnum;
|
|
24
27
|
router: string;
|
|
@@ -317,6 +320,10 @@ export type BuildSwapFunctionArgParams = {
|
|
|
317
320
|
* The recipient address for the swap
|
|
318
321
|
*/
|
|
319
322
|
recipient: string;
|
|
323
|
+
/**
|
|
324
|
+
* The dex being used for the swap
|
|
325
|
+
*/
|
|
326
|
+
dex: UniswapV2StyleDexEnum;
|
|
320
327
|
};
|
|
321
328
|
export type SelectV2SwapFunctionParams = {
|
|
322
329
|
deployment: UniswapV2StyleDexEnum;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v2-dex.types.d.ts","sourceRoot":"","sources":["../../../src/protocols/v2-dex/v2-dex.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAE3C,oBAAY,qBAAqB;IAC/B,UAAU,eAAe;IACzB,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;IACjC,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,WAAW,gBAAgB;
|
|
1
|
+
{"version":3,"file":"v2-dex.types.d.ts","sourceRoot":"","sources":["../../../src/protocols/v2-dex/v2-dex.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,5 +9,6 @@ var UniswapV2StyleDexEnum;
|
|
|
9
9
|
UniswapV2StyleDexEnum["QUICKSWAP_V2"] = "quickswap_v2";
|
|
10
10
|
UniswapV2StyleDexEnum["TRADERJOE_V2"] = "traderjoe_v2";
|
|
11
11
|
UniswapV2StyleDexEnum["PANGOLIN_V2"] = "pangolin_v2";
|
|
12
|
+
UniswapV2StyleDexEnum["HYPERSWAP_V2"] = "hyperswap_v2";
|
|
12
13
|
})(UniswapV2StyleDexEnum || (exports.UniswapV2StyleDexEnum = UniswapV2StyleDexEnum = {}));
|
|
13
14
|
//# sourceMappingURL=v2-dex.types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v2-dex.types.js","sourceRoot":"","sources":["../../../src/protocols/v2-dex/v2-dex.types.ts"],"names":[],"mappings":";;;AAGA,IAAY,
|
|
1
|
+
{"version":3,"file":"v2-dex.types.js","sourceRoot":"","sources":["../../../src/protocols/v2-dex/v2-dex.types.ts"],"names":[],"mappings":";;;AAGA,IAAY,qBAQX;AARD,WAAY,qBAAqB;IAC/B,kDAAyB,CAAA;IACzB,sDAA6B,CAAA;IAC7B,0DAAiC,CAAA;IACjC,sDAA6B,CAAA;IAC7B,sDAA6B,CAAA;IAC7B,oDAA2B,CAAA;IAC3B,sDAA6B,CAAA;AAC/B,CAAC,EARW,qBAAqB,qCAArB,qBAAqB,QAQhC"}
|
|
@@ -51,6 +51,7 @@ export declare class V3StyleDexService implements IIntentProtocol {
|
|
|
51
51
|
uniFeeTiers: number[];
|
|
52
52
|
pancakeFeeTiers: number[];
|
|
53
53
|
pangolinFeeTiers: number[];
|
|
54
|
+
hyperswapFeeTiers: number[];
|
|
54
55
|
/**
|
|
55
56
|
* The deployments supported out of the box for V3 style dexes
|
|
56
57
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v3-dex.service.d.ts","sourceRoot":"","sources":["../../../src/protocols/v3-dex/v3-dex.service.ts"],"names":[],"mappings":"AAiBA,OAAO,EACL,WAAW,EAEX,eAAe,EACf,qBAAqB,EACrB,eAAe,EAMhB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAGL,iBAAiB,EACjB,sBAAsB,EACtB,aAAa,EACd,MAAM,OAAO,CAAC;AAOf,OAAO,EAAE,WAAW,EAAE,YAAY,EAAgB,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAM3D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,iBAAkB,YAAW,eAAe;IACvD;;OAEG;IACI,QAAQ,EAAE,YAAY,CAA2B;IAExD;;OAEG;IACI,WAAW,UAAQ;IAE1B;;OAEG;IACI,UAAU,UAAS;IAE1B;;OAEG;IACI,MAAM,
|
|
1
|
+
{"version":3,"file":"v3-dex.service.d.ts","sourceRoot":"","sources":["../../../src/protocols/v3-dex/v3-dex.service.ts"],"names":[],"mappings":"AAiBA,OAAO,EACL,WAAW,EAEX,eAAe,EACf,qBAAqB,EACrB,eAAe,EAMhB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAGL,iBAAiB,EACjB,sBAAsB,EACtB,aAAa,EACd,MAAM,OAAO,CAAC;AAOf,OAAO,EAAE,WAAW,EAAE,YAAY,EAAgB,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAM3D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,iBAAkB,YAAW,eAAe;IACvD;;OAEG;IACI,QAAQ,EAAE,YAAY,CAA2B;IAExD;;OAEG;IACI,WAAW,UAAQ;IAE1B;;OAEG;IACI,UAAU,UAAS;IAE1B;;OAEG;IACI,MAAM,gBASX;IAEF;;OAEG;IACH,OAAO,CAAC,QAAQ,CAA2E;IAE3F;;OAEG;IACI,WAAW,EAAE,MAAM,EAAE,CAA2B;IAChD,eAAe,EAAE,MAAM,EAAE,CAA2B;IACpD,gBAAgB,EAAE,MAAM,EAAE,CAA8B;IACxD,iBAAiB,EAAE,MAAM,EAAE,CAA2B;IAE7D;;OAEG;IACI,WAAW,EAAE,qBAAqB,CAmJvC;gBAEU,MAAM,CAAC,EAAE,sBAAsB,GAAG,WAAW;IAiClD,eAAe,CAAC,CAAC,SAAS;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,EAAE,OAAO,EAAE;QACnE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,GAAG,OAAO,IAAI,CAAC;IAKH,UAAU,CACrB,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,aAAa,GAAG;QAAE,gBAAgB,EAAE,eAAe,CAAA;KAAE,CAAC;IAicpD,UAAU,CACrB,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,aAAa,GAAG;QAAE,gBAAgB,EAAE,eAAe,CAAA;KAAE,CAAC;IA0UjE,OAAO,CAAC,YAAY;IAgBpB,OAAO,CAAC,oBAAoB;IAqB5B,OAAO,CAAC,wBAAwB;IA2BhC,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,eAAe;YA+BT,wBAAwB;IA0MtC;;;;OAIG;YACW,0BAA0B;IAuFxC;;;;;OAKG;YACW,oBAAoB;CAsJnC"}
|
|
@@ -61,6 +61,7 @@ class V3StyleDexService {
|
|
|
61
61
|
enums_1.ChainIdEnum.ETHEREUM,
|
|
62
62
|
enums_1.ChainIdEnum.OPTIMISM,
|
|
63
63
|
enums_1.ChainIdEnum.POLYGON,
|
|
64
|
+
enums_1.ChainIdEnum.HYPEREVM,
|
|
64
65
|
];
|
|
65
66
|
/**
|
|
66
67
|
* Public clients by chain
|
|
@@ -72,6 +73,7 @@ class V3StyleDexService {
|
|
|
72
73
|
this.uniFeeTiers = [100, 500, 3000, 10000];
|
|
73
74
|
this.pancakeFeeTiers = [100, 500, 2500, 10000];
|
|
74
75
|
this.pangolinFeeTiers = [40, 100, 500, 2500, 8000];
|
|
76
|
+
this.hyperswapFeeTiers = [100, 500, 3000, 10000];
|
|
75
77
|
/**
|
|
76
78
|
* The deployments supported out of the box for V3 style dexes
|
|
77
79
|
*/
|
|
@@ -213,6 +215,15 @@ class V3StyleDexService {
|
|
|
213
215
|
// factory: '0x917933899c6a5f8e37f31e19f92cdbff7e8ff0e2',
|
|
214
216
|
// },
|
|
215
217
|
],
|
|
218
|
+
[enums_1.ChainIdEnum.HYPEREVM]: [
|
|
219
|
+
{
|
|
220
|
+
dex: v3_dex_types_1.UniswapV3StyleDexEnum.HYPERSWAP_V3,
|
|
221
|
+
quoter: '0x03A918028f22D9E1473B7959C927AD7425A45C7C',
|
|
222
|
+
router: '0x6D99e7f6747AF2cDbB5164b6DD50e40D4fDe1e77',
|
|
223
|
+
factory: '0xB1c0fa0B789320044A6F623cFe5eBda9562602E3',
|
|
224
|
+
initHash: '0xe3572921be1688dba92df30c6781b8770499ff274d20ae9b325f4242634774fb',
|
|
225
|
+
},
|
|
226
|
+
],
|
|
216
227
|
};
|
|
217
228
|
if (config?.rpcs) {
|
|
218
229
|
for (const [chainIdStr, rpc] of Object.entries(config.rpcs)) {
|
|
@@ -297,6 +308,7 @@ class V3StyleDexService {
|
|
|
297
308
|
}
|
|
298
309
|
const client = this._clients[networkIn];
|
|
299
310
|
if (!client) {
|
|
311
|
+
console.log(`No RPC client configured for chainId ${networkIn}`);
|
|
300
312
|
throw (0, utils_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, `No RPC client configured for chainId ${networkIn}`);
|
|
301
313
|
}
|
|
302
314
|
// === Native <-> Wrapped normalization ===
|
|
@@ -304,6 +316,7 @@ class V3StyleDexService {
|
|
|
304
316
|
const nativeOut = (0, is_native_1.isNative)(tokenOut);
|
|
305
317
|
const wrapped = wrapped_native_1.wrappedNativeTokens[networkIn];
|
|
306
318
|
if ((nativeIn || nativeOut) && !wrapped) {
|
|
319
|
+
console.log(`No wrapped native token mapping for chainId ${networkIn}`);
|
|
307
320
|
throw (0, utils_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, `Missing wrapped native token mapping for chainId ${networkIn}`);
|
|
308
321
|
}
|
|
309
322
|
const tokenInForQuote = nativeIn ? wrapped : tokenIn;
|
|
@@ -365,9 +378,29 @@ class V3StyleDexService {
|
|
|
365
378
|
method: 'QuoterV2.quoteExactInputSingle',
|
|
366
379
|
}));
|
|
367
380
|
});
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
381
|
+
let v2Results;
|
|
382
|
+
if (networkIn === enums_1.ChainIdEnum.HYPEREVM) {
|
|
383
|
+
// Use individual calls with Promise.all for HyperEVM due to 30M gas limit
|
|
384
|
+
v2Results = await Promise.all(v2Contracts.map(async (contract) => {
|
|
385
|
+
try {
|
|
386
|
+
const result = await client.readContract({
|
|
387
|
+
address: contract.address,
|
|
388
|
+
abi: contract.abi,
|
|
389
|
+
functionName: contract.functionName,
|
|
390
|
+
args: contract.args,
|
|
391
|
+
});
|
|
392
|
+
return { status: 'success', result };
|
|
393
|
+
}
|
|
394
|
+
catch (error) {
|
|
395
|
+
return { status: 'failure', error };
|
|
396
|
+
}
|
|
397
|
+
}));
|
|
398
|
+
}
|
|
399
|
+
else {
|
|
400
|
+
v2Results = v2Contracts.length
|
|
401
|
+
? await client.multicall({ allowFailure: true, contracts: v2Contracts })
|
|
402
|
+
: [];
|
|
403
|
+
}
|
|
371
404
|
for (let i = 0; i < v2Results.length; i++) {
|
|
372
405
|
const res = v2Results[i];
|
|
373
406
|
const meta = v2Metas[i];
|
|
@@ -460,7 +493,13 @@ class V3StyleDexService {
|
|
|
460
493
|
}));
|
|
461
494
|
});
|
|
462
495
|
const v1Results = v1Contracts.length
|
|
463
|
-
? await client.multicall({
|
|
496
|
+
? await client.multicall({
|
|
497
|
+
allowFailure: true,
|
|
498
|
+
contracts: v1Contracts,
|
|
499
|
+
...(networkIn === enums_1.ChainIdEnum.HYPEREVM && {
|
|
500
|
+
multicallAddress: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
|
501
|
+
}),
|
|
502
|
+
})
|
|
464
503
|
: [];
|
|
465
504
|
for (let i = 0; i < v1Results.length; i++) {
|
|
466
505
|
const res = v1Results[i];
|
|
@@ -514,7 +553,7 @@ class V3StyleDexService {
|
|
|
514
553
|
best = candidate;
|
|
515
554
|
}
|
|
516
555
|
catch {
|
|
517
|
-
/* ignore */
|
|
556
|
+
/* ignore; no more fallbacks */
|
|
518
557
|
}
|
|
519
558
|
}
|
|
520
559
|
}
|
|
@@ -619,16 +658,23 @@ class V3StyleDexService {
|
|
|
619
658
|
// Price discovery (now includes off-chain fallback for quoter-less deployments)
|
|
620
659
|
let v3Price;
|
|
621
660
|
if (!params?.priceResponse) {
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
661
|
+
let priceRes;
|
|
662
|
+
try {
|
|
663
|
+
priceRes = await this.fetchPrice({
|
|
664
|
+
networkIn,
|
|
665
|
+
networkOut,
|
|
666
|
+
tokenIn,
|
|
667
|
+
tokenOut,
|
|
668
|
+
amountIn,
|
|
669
|
+
from,
|
|
670
|
+
slippage,
|
|
671
|
+
overrideParamsV3Dex,
|
|
672
|
+
});
|
|
673
|
+
}
|
|
674
|
+
catch (e) {
|
|
675
|
+
const errorMessage = e.message ?? e;
|
|
676
|
+
throw (0, utils_1.sdkError)(enums_1.SdkErrorEnum.QUOTE_NOT_FOUND, errorMessage);
|
|
677
|
+
}
|
|
632
678
|
v3Price = priceRes.protocolResponse;
|
|
633
679
|
}
|
|
634
680
|
if (!v3Price || !v3Price.amountOut || v3Price.amountOut === '0') {
|
|
@@ -870,6 +916,7 @@ class V3StyleDexService {
|
|
|
870
916
|
v3_dex_types_1.UniswapV3StyleDexEnum.SUSHISWAP_V3,
|
|
871
917
|
v3_dex_types_1.UniswapV3StyleDexEnum.PANCAKESWAP_V3,
|
|
872
918
|
v3_dex_types_1.UniswapV3StyleDexEnum.PANGOLIN_V3,
|
|
919
|
+
v3_dex_types_1.UniswapV3StyleDexEnum.HYPERSWAP_V3,
|
|
873
920
|
].includes(dexEnum)) {
|
|
874
921
|
throw (0, utils_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, `Unknown dex enum in key: ${dexKey}`);
|
|
875
922
|
}
|
|
@@ -882,7 +929,9 @@ class V3StyleDexService {
|
|
|
882
929
|
? v3_dex_types_1.UniswapV3StyleDexEnum.PANGOLIN_V3
|
|
883
930
|
: dexString === v3_dex_types_1.UniswapV3StyleDexEnum.SUSHISWAP_V3
|
|
884
931
|
? v3_dex_types_1.UniswapV3StyleDexEnum.SUSHISWAP_V3
|
|
885
|
-
: v3_dex_types_1.UniswapV3StyleDexEnum.
|
|
932
|
+
: dexString === v3_dex_types_1.UniswapV3StyleDexEnum.HYPERSWAP_V3
|
|
933
|
+
? v3_dex_types_1.UniswapV3StyleDexEnum.HYPERSWAP_V3
|
|
934
|
+
: v3_dex_types_1.UniswapV3StyleDexEnum.UNISWAP_V3;
|
|
886
935
|
switch (dex) {
|
|
887
936
|
case v3_dex_types_1.UniswapV3StyleDexEnum.PANCAKESWAP_V3:
|
|
888
937
|
return this.pancakeFeeTiers;
|
|
@@ -890,6 +939,8 @@ class V3StyleDexService {
|
|
|
890
939
|
return this.pangolinFeeTiers;
|
|
891
940
|
case v3_dex_types_1.UniswapV3StyleDexEnum.SUSHISWAP_V3:
|
|
892
941
|
return this.uniFeeTiers;
|
|
942
|
+
case v3_dex_types_1.UniswapV3StyleDexEnum.HYPERSWAP_V3:
|
|
943
|
+
return this.hyperswapFeeTiers;
|
|
893
944
|
case v3_dex_types_1.UniswapV3StyleDexEnum.UNISWAP_V3:
|
|
894
945
|
default:
|
|
895
946
|
return this.uniFeeTiers;
|
|
@@ -1011,6 +1062,9 @@ class V3StyleDexService {
|
|
|
1011
1062
|
const balanceResults = await client.multicall({
|
|
1012
1063
|
allowFailure: true,
|
|
1013
1064
|
contracts: balanceCalls,
|
|
1065
|
+
...(networkIn === enums_1.ChainIdEnum.HYPEREVM && {
|
|
1066
|
+
multicallAddress: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
|
1067
|
+
}),
|
|
1014
1068
|
});
|
|
1015
1069
|
const poolTVLs = [];
|
|
1016
1070
|
for (let i = 0; i < candidates.length; i++) {
|
|
@@ -1075,6 +1129,9 @@ class V3StyleDexService {
|
|
|
1075
1129
|
{ address: pair, abi: uniswapV3_pool_abi_1.uniswapV3PoolAbi, functionName: 'token1' },
|
|
1076
1130
|
{ address: pair, abi: uniswapV3_pool_abi_1.uniswapV3PoolAbi, functionName: 'fee' },
|
|
1077
1131
|
],
|
|
1132
|
+
...(network === enums_1.ChainIdEnum.HYPEREVM && {
|
|
1133
|
+
multicallAddress: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
|
1134
|
+
}),
|
|
1078
1135
|
}));
|
|
1079
1136
|
if (t0.status !== 'success' || t1.status !== 'success' || feeRes.status !== 'success') {
|
|
1080
1137
|
throw (0, utils_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, `Failed to read pool data from pair address ${pair} on chain ${network}`);
|