@paraswap/dex-lib 5.0.6 → 5.0.8-force-rfq-revert.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/build/config.js +15 -14
- package/build/config.js.map +1 -1
- package/build/dex/bebop/bebop.d.ts +2 -2
- package/build/dex/bebop/bebop.js +15 -2
- package/build/dex/bebop/bebop.js.map +1 -1
- package/build/dex/cables/cables.d.ts +2 -2
- package/build/dex/cables/cables.js +6 -2
- package/build/dex/cables/cables.js.map +1 -1
- package/build/dex/dexalot/dexalot.d.ts +2 -2
- package/build/dex/dexalot/dexalot.js +6 -2
- package/build/dex/dexalot/dexalot.js.map +1 -1
- package/build/dex/fluid-dex/fluid-dex.d.ts +2 -0
- package/build/dex/fluid-dex/fluid-dex.js +55 -31
- package/build/dex/fluid-dex/fluid-dex.js.map +1 -1
- package/build/dex/fluid-dex-lite/fluid-dex-lite-math.d.ts +2 -0
- package/build/dex/fluid-dex-lite/fluid-dex-lite-math.js +24 -0
- package/build/dex/fluid-dex-lite/fluid-dex-lite-math.js.map +1 -1
- package/build/dex/generic-rfq/generic-rfq.d.ts +2 -2
- package/build/dex/generic-rfq/generic-rfq.js +11 -2
- package/build/dex/generic-rfq/generic-rfq.js.map +1 -1
- package/build/dex/hashflow/hashflow.d.ts +2 -2
- package/build/dex/hashflow/hashflow.js +6 -2
- package/build/dex/hashflow/hashflow.js.map +1 -1
- package/build/dex/index.js +8 -0
- package/build/dex/index.js.map +1 -1
- package/build/dex/metric/metric.js +5 -1
- package/build/dex/metric/metric.js.map +1 -1
- package/build/dex/native/native.d.ts +2 -2
- package/build/dex/native/native.js +8 -2
- package/build/dex/native/native.js.map +1 -1
- package/build/dex/paraswap-limit-orders/config.js +6 -0
- package/build/dex/paraswap-limit-orders/config.js.map +1 -1
- package/build/dex/paraswap-limit-orders/paraswap-limit-orders.d.ts +2 -2
- package/build/dex/paraswap-limit-orders/paraswap-limit-orders.js +11 -2
- package/build/dex/paraswap-limit-orders/paraswap-limit-orders.js.map +1 -1
- package/build/dex/swaap-v2/swaap-v2.d.ts +2 -2
- package/build/dex/swaap-v2/swaap-v2.js +10 -2
- package/build/dex/swaap-v2/swaap-v2.js.map +1 -1
- package/build/dex/uniswap-v3/config.js +2 -1
- package/build/dex/uniswap-v3/config.js.map +1 -1
- package/build/executor/Executor01BytecodeBuilder.d.ts +8 -0
- package/build/executor/Executor01BytecodeBuilder.js +160 -14
- package/build/executor/Executor01BytecodeBuilder.js.map +1 -1
- package/build/executor/Executor02BytecodeBuilder.d.ts +22 -0
- package/build/executor/Executor02BytecodeBuilder.js +226 -3
- package/build/executor/Executor02BytecodeBuilder.js.map +1 -1
- package/build/executor/ExecutorDetector.d.ts +1 -0
- package/build/executor/ExecutorDetector.js +14 -0
- package/build/executor/ExecutorDetector.js.map +1 -1
- package/build/executor/fallback-routes/generate.d.ts +5 -0
- package/build/executor/fallback-routes/generate.js +328 -0
- package/build/executor/fallback-routes/generate.js.map +1 -0
- package/build/executor/fallback-routes/scenarios.d.ts +7 -0
- package/build/executor/fallback-routes/scenarios.js +241 -0
- package/build/executor/fallback-routes/scenarios.js.map +1 -0
- package/build/executor/fallback-routes/types.d.ts +45 -0
- package/build/executor/fallback-routes/types.js +3 -0
- package/build/executor/fallback-routes/types.js.map +1 -0
- package/build/executor/types.d.ts +2 -1
- package/build/executor/types.js +4 -0
- package/build/executor/types.js.map +1 -1
- package/build/generic-swap-transaction-builder.d.ts +3 -1
- package/build/generic-swap-transaction-builder.js +176 -51
- package/build/generic-swap-transaction-builder.js.map +1 -1
- package/build/implementations/local-paraswap-sdk.d.ts +1 -0
- package/build/implementations/local-paraswap-sdk.js +7 -1
- package/build/implementations/local-paraswap-sdk.js.map +1 -1
- package/build/types.d.ts +3 -0
- package/build/utils.d.ts +1 -0
- package/build/utils.js +15 -1
- package/build/utils.js.map +1 -1
- package/package.json +2 -2
|
@@ -103,7 +103,8 @@ class FluidDex extends simple_exchange_1.SimpleExchange {
|
|
|
103
103
|
return eventPool;
|
|
104
104
|
}));
|
|
105
105
|
if (!this.dexHelper.config.isSlave) {
|
|
106
|
-
|
|
106
|
+
// Await the first fetch so pricing is usable as soon as init returns.
|
|
107
|
+
await this.updateReserves();
|
|
107
108
|
if (!this.reserveUpdateIntervalTask) {
|
|
108
109
|
this.reserveUpdateIntervalTask = setInterval(this.updateReserves.bind(this), constants_2.RESERVE_REFRESH_INTERVAL_MS);
|
|
109
110
|
}
|
|
@@ -130,12 +131,30 @@ class FluidDex extends simple_exchange_1.SimpleExchange {
|
|
|
130
131
|
// across DEXes. It is recommended to use
|
|
131
132
|
// ${dexKey}_${poolAddress} as a poolIdentifier
|
|
132
133
|
async getPoolIdentifiers(srcToken, destToken, side, blockNumber) {
|
|
134
|
+
if (this.isUnsupportedWethBuy(srcToken.address, side))
|
|
135
|
+
return [];
|
|
133
136
|
const pools = this.getPoolsByTokenPair(srcToken.address, destToken.address);
|
|
134
137
|
return pools.map(pool => pool.id);
|
|
135
138
|
}
|
|
139
|
+
// Exact-out swaps send the slippage-scaled max input as msg.value and the
|
|
140
|
+
// pool refunds the unused ETH to the executor — with a WETH-paying user
|
|
141
|
+
// there is no path returning that raw-ETH refund, so the user would be
|
|
142
|
+
// silently overcharged. Keep WETH-src BUY unpriced until the executor
|
|
143
|
+
// supports rewrapping the refund.
|
|
144
|
+
isUnsupportedWethBuy(srcToken, side) {
|
|
145
|
+
return side === constants_1.SwapSide.BUY && this.dexHelper.config.isWETH(srcToken);
|
|
146
|
+
}
|
|
147
|
+
// Fluid pools hold native ETH, never WETH. Map WETH to the native address so
|
|
148
|
+
// WETH-denominated routes price against the native pools; the executor
|
|
149
|
+
// unwraps/wraps around the swap (see needUnwrapNative in getDexParam).
|
|
150
|
+
normalizeTokenAddress(tokenAddress) {
|
|
151
|
+
return this.dexHelper.config.isWETH(tokenAddress)
|
|
152
|
+
? constants_1.ETHER_ADDRESS
|
|
153
|
+
: tokenAddress.toLowerCase();
|
|
154
|
+
}
|
|
136
155
|
getPoolsByTokenPair(srcToken, destToken) {
|
|
137
|
-
const srcAddress =
|
|
138
|
-
const destAddress =
|
|
156
|
+
const srcAddress = this.normalizeTokenAddress(srcToken);
|
|
157
|
+
const destAddress = this.normalizeTokenAddress(destToken);
|
|
139
158
|
// A pair must have 2 different tokens.
|
|
140
159
|
if (srcAddress === destAddress)
|
|
141
160
|
return [];
|
|
@@ -148,7 +167,11 @@ class FluidDex extends simple_exchange_1.SimpleExchange {
|
|
|
148
167
|
// any pools can be used.
|
|
149
168
|
async getPricesVolume(srcToken, destToken, amounts, side, blockNumber, limitPools) {
|
|
150
169
|
try {
|
|
151
|
-
if (srcToken.address
|
|
170
|
+
if (this.isUnsupportedWethBuy(srcToken.address, side))
|
|
171
|
+
return null;
|
|
172
|
+
const srcTokenAddress = this.normalizeTokenAddress(srcToken.address);
|
|
173
|
+
const destTokenAddress = this.normalizeTokenAddress(destToken.address);
|
|
174
|
+
if (srcTokenAddress === destTokenAddress)
|
|
152
175
|
return null;
|
|
153
176
|
// Get the pools to use.
|
|
154
177
|
let pools = this.getPoolsByTokenPair(srcToken.address, destToken.address);
|
|
@@ -176,10 +199,10 @@ class FluidDex extends simple_exchange_1.SimpleExchange {
|
|
|
176
199
|
}
|
|
177
200
|
const prices = amounts.map(amount => {
|
|
178
201
|
if (side === constants_1.SwapSide.SELL) {
|
|
179
|
-
return this.swapIn(
|
|
202
|
+
return this.swapIn(srcTokenAddress === pool.token0.toLowerCase(), amount, currentPoolReserves.collateralReserves, currentPoolReserves.debtReserves, srcToken.decimals, destToken.decimals, BigInt(currentPoolReserves.fee), currentPoolReserves.dexLimits, BigInt(currentPoolReserves.centerPrice), Math.floor(Date.now() / 1000));
|
|
180
203
|
}
|
|
181
204
|
else {
|
|
182
|
-
return this.swapOut(
|
|
205
|
+
return this.swapOut(srcTokenAddress === pool.token0.toLowerCase(), amount, currentPoolReserves.collateralReserves, currentPoolReserves.debtReserves, srcToken.decimals, destToken.decimals, BigInt(currentPoolReserves.fee), currentPoolReserves.dexLimits, BigInt(currentPoolReserves.centerPrice), Math.floor(Date.now() / 1000));
|
|
183
206
|
}
|
|
184
207
|
});
|
|
185
208
|
return {
|
|
@@ -231,7 +254,7 @@ class FluidDex extends simple_exchange_1.SimpleExchange {
|
|
|
231
254
|
// limit number pools should be returned.
|
|
232
255
|
async getTopPoolsForToken(tokenAddress, limit) {
|
|
233
256
|
try {
|
|
234
|
-
const normalizedTokenAddress =
|
|
257
|
+
const normalizedTokenAddress = this.normalizeTokenAddress(tokenAddress);
|
|
235
258
|
const relevantPools = this.pools.filter(pool => pool.token0 === normalizedTokenAddress ||
|
|
236
259
|
pool.token1 === normalizedTokenAddress);
|
|
237
260
|
if (!relevantPools.length) {
|
|
@@ -286,10 +309,19 @@ class FluidDex extends simple_exchange_1.SimpleExchange {
|
|
|
286
309
|
},
|
|
287
310
|
token1LiquidityUSD,
|
|
288
311
|
];
|
|
312
|
+
const connectorTokens = [connectorToken];
|
|
313
|
+
// Native-ETH pools are also reachable with WETH (see
|
|
314
|
+
// normalizeTokenAddress), so advertise the wrapped connector too.
|
|
315
|
+
if (connectorToken.address === constants_1.ETHER_ADDRESS) {
|
|
316
|
+
connectorTokens.push({
|
|
317
|
+
...connectorToken,
|
|
318
|
+
address: this.dexHelper.config.data.wrappedNativeTokenAddress.toLowerCase(),
|
|
319
|
+
});
|
|
320
|
+
}
|
|
289
321
|
poolLiquidity.push({
|
|
290
322
|
exchange: this.dexKey,
|
|
291
323
|
address: pool.address,
|
|
292
|
-
connectorTokens
|
|
324
|
+
connectorTokens,
|
|
293
325
|
liquidityUSD,
|
|
294
326
|
});
|
|
295
327
|
}
|
|
@@ -315,36 +347,28 @@ class FluidDex extends simple_exchange_1.SimpleExchange {
|
|
|
315
347
|
const pool = this.pools.find(pool => pool.id === data.poolId);
|
|
316
348
|
if (!pool)
|
|
317
349
|
throw new Error(`${this.dexKey}-${this.network}: Pool with id: ${data.poolId} was not found`);
|
|
350
|
+
const swap0To1 = pool.token0.toLowerCase() === this.normalizeTokenAddress(srcToken);
|
|
351
|
+
const isWethDest = this.dexHelper.config.isWETH(destToken);
|
|
352
|
+
// WETH dest: the pool pays out native ETH; deliver it to the executor so
|
|
353
|
+
// its wrap-after step can pick it up, and report no recipient support so
|
|
354
|
+
// the wrapped output is forwarded like any executor-held result.
|
|
355
|
+
const swapRecipient = isWethDest ? executorAddress : recipient;
|
|
318
356
|
if (side === constants_1.SwapSide.SELL) {
|
|
319
|
-
|
|
320
|
-
args = [false, BigInt(srcAmount), BigInt(destAmount), recipient];
|
|
321
|
-
}
|
|
322
|
-
else {
|
|
323
|
-
args = [true, BigInt(srcAmount), BigInt(destAmount), recipient];
|
|
324
|
-
}
|
|
357
|
+
args = [swap0To1, BigInt(srcAmount), BigInt(destAmount), swapRecipient];
|
|
325
358
|
}
|
|
326
359
|
else {
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
];
|
|
334
|
-
}
|
|
335
|
-
else {
|
|
336
|
-
args = [
|
|
337
|
-
true,
|
|
338
|
-
(BigInt(destAmount) * 1000001n) / 1000000n, // 0.0001% increase target out amount when calling Fluid Dex as it is not 100% exact. Guarantees meeting reaching exact out amount condition
|
|
339
|
-
BigInt(srcAmount),
|
|
340
|
-
recipient,
|
|
341
|
-
];
|
|
342
|
-
}
|
|
360
|
+
args = [
|
|
361
|
+
swap0To1,
|
|
362
|
+
(BigInt(destAmount) * 1000001n) / 1000000n, // 0.0001% increase target out amount when calling Fluid Dex as it is not 100% exact. Guarantees meeting reaching exact out amount condition
|
|
363
|
+
BigInt(srcAmount),
|
|
364
|
+
swapRecipient,
|
|
365
|
+
];
|
|
343
366
|
}
|
|
344
367
|
const swapData = this.fluidDexPoolIface.encodeFunctionData(method, args);
|
|
345
368
|
return {
|
|
346
369
|
needWrapNative: this.needWrapNative,
|
|
347
|
-
|
|
370
|
+
needUnwrapNative: true,
|
|
371
|
+
dexFuncHasRecipient: !isWethDest,
|
|
348
372
|
exchangeData: swapData,
|
|
349
373
|
targetExchange: pool.address,
|
|
350
374
|
returnAmountPos,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fluid-dex.js","sourceRoot":"","sources":["../../../src/dex/fluid-dex/fluid-dex.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fluid-dex.js","sourceRoot":"","sources":["../../../src/dex/fluid-dex/fluid-dex.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAA+C;AAW/C,+CAAmE;AACnE,2EAA6D;AAY7D,wDAAoD;AACpD,gGAAqE;AACrE,qCAA8D;AAC9D,2DAAsD;AACtD,uCAAkE;AAClE,gDAAmE;AACnE,mCAA+B;AAC/B,2EAAqE;AACrE,qDAAqD;AACrD,2CAIqB;AAErB,MAAa,QAAS,SAAQ,gCAAc;IAuB/B;IACA;IACA;IAxBF,4BAA4B,GAAG,KAAK,CAAC;IACrC,cAAc,GAAG,KAAK,CAAC;IACvB,wBAAwB,GAAG,KAAK,CAAC;IACjC,iBAAiB,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,kBAAkB,GAC9B,IAAA,6BAAqB,EAAC,uBAAc,CAAC,CAAC;IAExC,MAAM,CAAS;IAEf,KAAK,GAAmB,EAAE,CAAC;IAE3B,UAAU,GAAwB,EAAE,CAAC;IAE5B,OAAO,CAAkB;IAEzB,cAAc,CAAyB;IAEvC,iBAAiB,CAAY;IAE9B,yBAAyB,CAAkB;IAEnD,YACW,OAAgB,EAChB,MAAc,EACd,SAAqB;QAE9B,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAJhB,YAAO,GAAP,OAAO,CAAS;QAChB,WAAM,GAAN,MAAM,CAAQ;QACd,cAAS,GAAT,SAAS,CAAY;QAG9B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAG,IAAI,mCAAe,CAChC,MAAM,EACN,uBAAc,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,eAAe,EAC/C,OAAO,EACP,SAAS,EACT,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,CACzC,CAAC;QAEF,IAAI,CAAC,cAAc,GAAG,IAAI,kDAAsB,CAC9C,MAAM,EACN,IAAI,CAAC,OAAO,CAAC,eAAe,EAC5B,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,CACZ,CAAC;QAEF,IAAI,CAAC,iBAAiB,GAAG,IAAI,eAAS,CAAC,4BAAe,CAAC,CAAC;IAC1D,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,WAAmB;QAEnB,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAC5D,WAAW,EACX,KAAK,CACN,CAAC;QACF,OAAO,IAAI,CAAC,qCAAqC,CAAC,gBAAgB,CAAC,CAAC;IACtE,CAAC;IAEO,qCAAqC,CAC3C,KAAkC;QAElC,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACxB,EAAE,EAAE,YAAY,IAAI,CAAC,OAAO,EAAE;YAC9B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAC,CAAC,CAAC;IACN,CAAC;IAED,oDAAoD;IACpD,2DAA2D;IAC3D,oDAAoD;IACpD,0BAA0B;IAC1B,KAAK,CAAC,iBAAiB,CAAC,WAAmB;QACzC,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC,UAAU,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAC,IAAI,EAAC,EAAE;YAC1B,MAAM,SAAS,GAAG,IAAI,kCAAiB,CACrC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,CACZ,CAAC;YACF,MAAM,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YACxC,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,CACH,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACnC,sEAAsE;YACtE,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAE5B,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;gBACpC,IAAI,CAAC,yBAAyB,GAAG,WAAW,CAC1C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAC9B,uCAA2B,CAC5B,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc;QAC1B,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;YACnE,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,4BAA4B,EAAE,KAAK,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED,WAAW,CAAC,IAAc;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAES,wBAAwB,CAChC,gBAA6C;QAE7C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,qCAAqC,CAAC,gBAAgB,CAAC,CAAC;QAC1E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,8BAA8B,CAAC,CAAC;IACjE,CAAC;IAED,oDAAoD;IACpD,mDAAmD;IACnD,yCAAyC;IACzC,+CAA+C;IAC/C,KAAK,CAAC,kBAAkB,CACtB,QAAe,EACf,SAAgB,EAChB,IAAc,EACd,WAAmB;QAEnB,IAAI,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;YAAE,OAAO,EAAE,CAAC;QAEjE,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;QAC5E,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,0EAA0E;IAC1E,wEAAwE;IACxE,uEAAuE;IACvE,sEAAsE;IACtE,kCAAkC;IAC1B,oBAAoB,CAAC,QAAiB,EAAE,IAAc;QAC5D,OAAO,IAAI,KAAK,oBAAQ,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACzE,CAAC;IAED,6EAA6E;IAC7E,uEAAuE;IACvE,uEAAuE;IAC/D,qBAAqB,CAAC,YAAqB;QACjD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;YAC/C,CAAC,CAAC,yBAAa;YACf,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IACjC,CAAC;IAED,mBAAmB,CAAC,QAAiB,EAAE,SAAkB;QACvD,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QACxD,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;QAE1D,uCAAuC;QACvC,IAAI,UAAU,KAAK,WAAW;YAAE,OAAO,EAAE,CAAC;QAE1C,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CACtB,IAAI,CAAC,EAAE,CACL,CAAC,UAAU,KAAK,IAAI,CAAC,MAAM,IAAI,WAAW,KAAK,IAAI,CAAC,MAAM,CAAC;YAC3D,CAAC,UAAU,KAAK,IAAI,CAAC,MAAM,IAAI,WAAW,KAAK,IAAI,CAAC,MAAM,CAAC,CAC9D,CAAC;IACJ,CAAC;IAED,mCAAmC;IACnC,oDAAoD;IACpD,kDAAkD;IAClD,yBAAyB;IACzB,KAAK,CAAC,eAAe,CACnB,QAAe,EACf,SAAgB,EAChB,OAAiB,EACjB,IAAc,EACd,WAAmB,EACnB,UAAqB;QAErB,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAC;YAEnE,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACrE,MAAM,gBAAgB,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAEvE,IAAI,eAAe,KAAK,gBAAgB;gBAAE,OAAO,IAAI,CAAC;YAEtD,wBAAwB;YACxB,IAAI,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;YAE1E,IAAI,UAAU,EAAE,CAAC;gBACf,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YAC7D,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAC;YAE/B,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;YAEjE,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACzB,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,0CAA0C,CACzE,CAAC;gBACF,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,GAAG,CACnC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAC,IAAI,EAAC,EAAE;gBACrB,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,aAAa,CAAC,IAAI,CAChE,WAAW,CAAC,EAAE,CACZ,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAChE,CAAC;gBAEF,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CACpC,SAAS,CAAC,EAAE,CACV,SAAS,CAAC,WAAW,CAAC,WAAW,EAAE;oBACnC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAC7B,CAAC;gBAEF,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,gBAAgB,IAAI,CAAC,OAAO,mBAAmB,CAC9E,CAAC;oBACF,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;gBAE9D,IAAI,CAAC,mBAAmB,IAAI,KAAK,CAAC,wBAAwB,KAAK,IAAI,EAAE,CAAC;oBACpE,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;oBAClC,IAAI,IAAI,KAAK,oBAAQ,CAAC,IAAI,EAAE,CAAC;wBAC3B,OAAO,IAAI,CAAC,MAAM,CAChB,eAAe,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAC7C,MAAM,EACN,mBAAmB,CAAC,kBAAkB,EACtC,mBAAmB,CAAC,YAAY,EAChC,QAAQ,CAAC,QAAQ,EACjB,SAAS,CAAC,QAAQ,EAClB,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAC/B,mBAAmB,CAAC,SAAS,EAC7B,MAAM,CAAC,mBAAmB,CAAC,WAAW,CAAC,EACvC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAC9B,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,OAAO,IAAI,CAAC,OAAO,CACjB,eAAe,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAC7C,MAAM,EACN,mBAAmB,CAAC,kBAAkB,EACtC,mBAAmB,CAAC,YAAY,EAChC,QAAQ,CAAC,QAAQ,EACjB,SAAS,CAAC,QAAQ,EAClB,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAC/B,mBAAmB,CAAC,SAAS,EAC7B,MAAM,CAAC,mBAAmB,CAAC,WAAW,CAAC,EACvC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAC9B,CAAC;oBACJ,CAAC;gBACH,CAAC,CAAC,CAAC;gBAEH,OAAO;oBACL,MAAM,EAAE,MAAM;oBACd,IAAI,EAAE,IAAA,oBAAY,EAAC,SAAS,CAAC,QAAQ,CAAC;oBACtC,IAAI,EAAE;wBACJ,MAAM,EAAE,IAAI,CAAC,EAAE;qBAChB;oBACD,QAAQ,EAAE,IAAI,CAAC,MAAM;oBACrB,eAAe,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC1B,OAAO,EAAE,2BAAkB;oBAC3B,aAAa,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;iBAC9B,CAAC;YACJ,CAAC,CAAC,CACH,CAAC;YAEF,OAAO,WAAW,CAAC,MAAM,CACvB,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,IAAI,CACY,CAAC;QACpC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,yBAAyB,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,MAAM,KAC1D,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,MACjC,KAAK,IAAI,GAAG,EACZ,CAAC,CACF,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,mEAAmE;IACnE,kBAAkB,CAAC,UAAoC;QACrD,OAAO,iBAAiB,CAAC,cAAc,CAAC;IAC1C,CAAC;IAED,iDAAiD;IACjD,yCAAyC;IACzC,kCAAkC;IAClC,mDAAmD;IACnD,eAAe,CACb,QAAgB,EAChB,SAAiB,EACjB,SAAiB,EACjB,UAAkB,EAClB,IAAkB,EAClB,IAAc;QAEd,sCAAsC;QACtC,MAAM,OAAO,GAAG,EAAE,CAAC;QAEnB,OAAO;YACL,cAAc,EAAE,IAAI;YACpB,OAAO;YACP,UAAU,EAAE,GAAG;SAChB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;QAE3E,IAAI,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAExD,IAAI,CAAC,UAAU,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAC,IAAI,EAAC,EAAE;YAC1B,MAAM,SAAS,GAAG,IAAI,kCAAiB,CACrC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,CACZ,CAAC;YACF,MAAM,SAAS,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YAC7C,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,oDAAoD;IACpD,yCAAyC;IACzC,KAAK,CAAC,mBAAmB,CACvB,YAAqB,EACrB,KAAa;QAEb,IAAI,CAAC;YACH,MAAM,sBAAsB,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;YAExE,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CACrC,IAAI,CAAC,EAAE,CACL,IAAI,CAAC,MAAM,KAAK,sBAAsB;gBACtC,IAAI,CAAC,MAAM,KAAK,sBAAsB,CACzC,CAAC;YAEF,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;gBAC1B,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;YAEjE,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACzB,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,MAAM,aAAa,GAAoB,EAAE,CAAC;YAE1C,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;gBACjC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,aAAa,CAAC,IAAI,CAChE,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,OAAO,CAC/D,CAAC;gBAEF,IAAI,CAAC,mBAAmB,EAAE,CAAC;oBACzB,SAAS;gBACX,CAAC;gBAED,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CACpC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,OAAO,CAClE,CAAC;gBAEF,IAAI,CAAC,SAAS;oBAAE,SAAS;gBAEzB,IAAI,CAAC;oBACH,MAAM,KAAK,GAAG,SAAS,CAAC,aAAa,EAAE,CAAC;oBACxC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,wBAAwB,EAAE,CAAC;wBAC7C,oBAAoB;wBACpB,SAAS;oBACX,CAAC;oBAED,MAAM,YAAY,GAChB,mBAAmB,CAAC,SAAS,CAAC,kBAAkB,CAAC,SAAS;wBAC1D,mBAAmB,CAAC,SAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC;oBAC3D,MAAM,YAAY,GAChB,mBAAmB,CAAC,SAAS,CAAC,kBAAkB,CAAC,SAAS;wBAC1D,mBAAmB,CAAC,SAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC;oBAE3D,IAAI,YAAY,KAAK,EAAE,IAAI,YAAY,KAAK,EAAE,EAAE,CAAC;wBAC/C,+BAA+B;wBAC/B,SAAS;oBACX,CAAC;oBAED,MAAM,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,GAC5C,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC;wBACtC,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC;wBAC3B,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC;qBAC5B,CAAC,CAAC;oBAEL,0DAA0D;oBAC1D,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC,GAClC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,sBAAsB;wBAClD,CAAC,CAAC;4BACE;gCACE,OAAO,EAAE,IAAI,CAAC,MAAM;gCACpB,QAAQ,EAAE,IAAI,CAAC,cAAc;gCAC7B,YAAY,EAAE,kBAAkB;6BACjC;4BACD,kBAAkB;yBACnB;wBACH,CAAC,CAAC;4BACE;gCACE,OAAO,EAAE,IAAI,CAAC,MAAM;gCACpB,QAAQ,EAAE,IAAI,CAAC,cAAc;gCAC7B,YAAY,EAAE,kBAAkB;6BACjC;4BACD,kBAAkB;yBACnB,CAAC;oBAER,MAAM,eAAe,GAAG,CAAC,cAAc,CAAC,CAAC;oBACzC,qDAAqD;oBACrD,kEAAkE;oBAClE,IAAI,cAAc,CAAC,OAAO,KAAK,yBAAa,EAAE,CAAC;wBAC7C,eAAe,CAAC,IAAI,CAAC;4BACnB,GAAG,cAAc;4BACjB,OAAO,EACL,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE;yBACrE,CAAC,CAAC;oBACL,CAAC;oBAED,aAAa,CAAC,IAAI,CAAC;wBACjB,QAAQ,EAAE,IAAI,CAAC,MAAM;wBACrB,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,eAAe;wBACf,YAAY;qBACb,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,oCAAoC,IAAI,CAAC,EAAE,EAAE,EAC7C,KAAK,CACN,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,yCAAyC;YACzC,OAAO,aAAa;iBACjB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC;iBAC/C,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACrB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;YACzD,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,WAAW,CACf,QAAiB,EACjB,SAAkB,EAClB,SAAiB,EACjB,UAAkB,EAClB,SAAkB,EAClB,IAAkB,EAClB,IAAc,EACd,eAAwB;QAExB,IAAI,IAAS,CAAC;QACd,IAAI,eAAmC,CAAC;QAExC,MAAM,MAAM,GAAG,IAAI,KAAK,oBAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QAE7D,eAAe,GAAG,IAAA,mCAA2B,EAC3C,IAAI,CAAC,iBAAiB,EACtB,MAAM,EACN,IAAI,KAAK,oBAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CACpD,CAAC;QAEF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9D,IAAI,CAAC,IAAI;YACP,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,mBAAmB,IAAI,CAAC,MAAM,gBAAgB,CAC7E,CAAC;QAEJ,MAAM,QAAQ,GACZ,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QACrE,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAE3D,yEAAyE;QACzE,yEAAyE;QACzE,iEAAiE;QACjE,MAAM,aAAa,GAAG,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;QAE/D,IAAI,IAAI,KAAK,oBAAQ,CAAC,IAAI,EAAE,CAAC;YAC3B,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC,CAAC;QAC1E,CAAC;aAAM,CAAC;YACN,IAAI,GAAG;gBACL,QAAQ;gBACR,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC,GAAG,QAAQ,EAAE,4IAA4I;gBACxL,MAAM,CAAC,SAAS,CAAC;gBACjB,aAAa;aACd,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACzE,OAAO;YACL,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,gBAAgB,EAAE,IAAI;YACtB,mBAAmB,EAAE,CAAC,UAAU;YAChC,YAAY,EAAE,QAAQ;YACtB,cAAc,EAAE,IAAK,CAAC,OAAO;YAC7B,eAAe;YACf,kCAAkC,EAAE,IAAI;SACzC,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACI,MAAM,CACX,QAAiB,EACjB,QAAgB,EAChB,WAA+B,EAC/B,YAA0B,EAC1B,UAAkB,EAClB,WAAmB,EACnB,GAAW,EACX,aAAwB,EACxB,WAAmB,EACnB,QAAgB;QAEhB,IAAI,QAAQ,KAAK,EAAE,EAAE,CAAC;YACpB,OAAO,EAAE,CAAC,CAAC,gCAAgC;QAC7C,CAAC;QACD,IACE,WAAW,CAAC,kBAAkB,GAAG,YAAY,CAAC,kBAAkB,IAAI,EAAE;YACtE,WAAW,CAAC,kBAAkB,GAAG,YAAY,CAAC,kBAAkB,IAAI,EAAE,EACtE,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,gBAAgB,GACpB,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,IAAI,UAAU,CAAC,CAAC;QAE3D,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CACnC,QAAQ,EACR,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,GAAG,EACH,WAAW,EACX,aAAa,EACb,WAAW,EACX,QAAQ,CACT,CAAC;QACF,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,EAAE,IAAI,WAAW,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;OAOG;IACI,cAAc,CACnB,QAAiB,EACjB,YAAoB,EACpB,WAA+B,EAC/B,YAA0B,EAC1B,GAAW,EACX,WAAmB,EACnB,aAAwB,EACxB,WAAmB,EACnB,QAAgB;QAEhB,MAAM,EACJ,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,GACxB,GAAG,WAAW,CAAC;QAChB,MAAM,EACJ,kBAAkB,EAAE,sBAAsB,EAC1C,kBAAkB,EAAE,sBAAsB,EAC1C,uBAAuB,EAAE,2BAA2B,EACpD,uBAAuB,EAAE,2BAA2B,GACrD,GAAG,YAAY,CAAC;QAEjB,8DAA8D;QAC9D,MAAM,cAAc,GAClB,kBAAkB,GAAG,CAAC;YACtB,kBAAkB,GAAG,CAAC;YACtB,uBAAuB,GAAG,CAAC;YAC3B,uBAAuB,GAAG,CAAC,CAAC;QAE9B,wDAAwD;QACxD,MAAM,eAAe,GACnB,sBAAsB,GAAG,CAAC;YAC1B,sBAAsB,GAAG,CAAC;YAC1B,2BAA2B,GAAG,CAAC;YAC/B,2BAA2B,GAAG,CAAC,CAAC;QAElC,IAAI,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,CAAC;QAC/D,IAAI,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,CAAC;QACnE,IAAI,UAAU,EAAE,YAAY,CAAC;QAE7B,IAAI,QAAQ,EAAE,CAAC;YACb,YAAY,GAAG,kBAAkB,CAAC;YAClC,aAAa,GAAG,kBAAkB,CAAC;YACnC,aAAa,GAAG,uBAAuB,CAAC;YACxC,cAAc,GAAG,uBAAuB,CAAC;YACzC,aAAa,GAAG,sBAAsB,CAAC;YACvC,cAAc,GAAG,sBAAsB,CAAC;YACxC,cAAc,GAAG,2BAA2B,CAAC;YAC7C,eAAe,GAAG,2BAA2B,CAAC;YAC9C,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAChC,QAAQ,EACR,aAAa,CAAC,gBAAgB,CAC/B,CAAC;YACF,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAClC,QAAQ,EACR,aAAa,CAAC,kBAAkB,CACjC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,YAAY,GAAG,kBAAkB,CAAC;YAClC,aAAa,GAAG,kBAAkB,CAAC;YACnC,aAAa,GAAG,uBAAuB,CAAC;YACxC,cAAc,GAAG,uBAAuB,CAAC;YACzC,aAAa,GAAG,sBAAsB,CAAC;YACvC,cAAc,GAAG,sBAAsB,CAAC;YACxC,cAAc,GAAG,2BAA2B,CAAC;YAC7C,eAAe,GAAG,2BAA2B,CAAC;YAC9C,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAChC,QAAQ,EACR,aAAa,CAAC,gBAAgB,CAC/B,CAAC;YACF,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAClC,QAAQ,EACR,aAAa,CAAC,kBAAkB,CACjC,CAAC;QACJ,CAAC;QAED,0FAA0F;QAC1F,UAAU,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,IAAI,WAAW,CAAC,CAAC;QACzE,YAAY;YACV,CAAC,YAAY,GAAG,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,IAAI,WAAW,CAAC,CAAC;QAEhE,IAAI,CAAS,CAAC;QACd,IAAI,cAAc,IAAI,eAAe,EAAE,CAAC;YACtC,CAAC,GAAG,IAAI,CAAC,aAAa,CACpB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,eAAe,EACf,cAAc,CACf,CAAC;QACJ,CAAC;aAAM,IAAI,eAAe,EAAE,CAAC;YAC3B,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,uBAAuB;QAClC,CAAC;aAAM,IAAI,cAAc,EAAE,CAAC;YAC1B,CAAC,GAAG,YAAY,GAAG,EAAE,CAAC,CAAC,6BAA6B;QACtD,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,mBAAmB,GAAG,EAAE,CAAC;QAC7B,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,IAAI,kBAAkB,GAAG,EAAE,CAAC;QAC5B,IAAI,YAAY,GAAG,EAAE,CAAC;QAEtB,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACZ,wCAAwC;YACxC,YAAY,GAAG,YAAY,CAAC;YAE5B,aAAa,GAAG,IAAI,CAAC,YAAY,CAC/B,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,GAAG,CAAC,EACvC,cAAc,EACd,eAAe,CAChB,CAAC;QACJ,CAAC;aAAM,IAAI,CAAC,IAAI,YAAY,EAAE,CAAC;YAC7B,8CAA8C;YAC9C,kBAAkB,GAAG,YAAY,CAAC;YAClC,mBAAmB,GAAG,IAAI,CAAC,YAAY,CACrC,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,GAAG,CAAC,EACvC,aAAa,EACb,cAAc,CACf,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,kCAAkC;YAClC,kBAAkB,GAAG,CAAC,CAAC;YACvB,mBAAmB,GAAG,IAAI,CAAC,YAAY,CACrC,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC,EAC5B,aAAa,EACb,cAAc,CACf,CAAC;YACF,YAAY,GAAG,YAAY,GAAG,CAAC,CAAC;YAChC,aAAa,GAAG,IAAI,CAAC,YAAY,CAC/B,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,GAAG,CAAC,EACvC,cAAc,EACd,eAAe,CAChB,CAAC;QACJ,CAAC;QAED,IAAI,aAAa,GAAG,cAAc,EAAE,CAAC;YACnC,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,IAAI,aAAa,GAAG,UAAU,EAAE,CAAC;YAC/B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,mBAAmB,GAAG,aAAa,EAAE,CAAC;YACxC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,mBAAmB,GAAG,YAAY,EAAE,CAAC;YACvC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,kBAAkB,GAAG,CAAC,EAAE,CAAC;YAC3B,IAAI,kBAAkB,GAAG,QAAQ;gBAC/B,CAAC,CAAC,IAAI,CAAC,oBAAoB,CACvB,YAAY,GAAG,kBAAkB,EACjC,aAAa,GAAG,mBAAmB,EACnC,WAAW,CACZ;gBACH,CAAC,CAAC,IAAI,CAAC,oBAAoB,CACvB,aAAa,GAAG,mBAAmB,EACnC,YAAY,GAAG,kBAAkB,EACjC,WAAW,CACZ,CAAC;YACN,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QAED,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,IAAI,kBAAkB,GAAG,QAAQ;gBAC/B,CAAC,CAAC,IAAI,CAAC,oBAAoB,CACvB,aAAa,GAAG,YAAY,EAC5B,cAAc,GAAG,aAAa,EAC9B,WAAW,CACZ;gBACH,CAAC,CAAC,IAAI,CAAC,oBAAoB,CACvB,cAAc,GAAG,aAAa,EAC9B,aAAa,GAAG,YAAY,EAC5B,WAAW,CACZ,CAAC;YACN,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,MAAM,SAAS,GAAG,6BAA6B,CAAC,CAAC,OAAO;QAExD,IAAI,QAAgB,CAAC;QACrB,IAAI,QAAgB,CAAC;QAErB,IAAI,kBAAkB,GAAG,YAAY,EAAE,CAAC;YACtC,+BAA+B;YAC/B,QAAQ,GAAG,QAAQ;gBACjB,CAAC,CAAC,CAAC,cAAc,GAAG,SAAS,CAAC,GAAG,aAAa;gBAC9C,CAAC,CAAC,CAAC,aAAa,GAAG,SAAS,CAAC,GAAG,cAAc,CAAC;YAEjD,QAAQ,GAAG,QAAQ;gBACjB,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,mBAAmB,CAAC,GAAG,SAAS,CAAC;oBACpD,CAAC,aAAa,GAAG,kBAAkB,CAAC;gBACtC,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,kBAAkB,CAAC,GAAG,SAAS,CAAC;oBAClD,CAAC,cAAc,GAAG,mBAAmB,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,gCAAgC;YAChC,QAAQ,GAAG,QAAQ;gBACjB,CAAC,CAAC,CAAC,eAAe,GAAG,SAAS,CAAC,GAAG,cAAc;gBAChD,CAAC,CAAC,CAAC,cAAc,GAAG,SAAS,CAAC,GAAG,eAAe,CAAC;YAEnD,QAAQ,GAAG,QAAQ;gBACjB,CAAC,CAAC,CAAC,CAAC,eAAe,GAAG,aAAa,CAAC,GAAG,SAAS,CAAC;oBAC/C,CAAC,cAAc,GAAG,YAAY,CAAC;gBACjC,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,YAAY,CAAC,GAAG,SAAS,CAAC;oBAC7C,CAAC,eAAe,GAAG,aAAa,CAAC,CAAC;QACxC,CAAC;QACD,qDAAqD;QACrD,MAAM,cAAc,GAAG,EAAE,CAAC,CAAC,KAAK;QAChC,MAAM,SAAS,GACb,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAClE,MAAM,cAAc,GAAG,CAAC,QAAQ,GAAG,cAAc,CAAC,GAAG,IAAI,CAAC;QAE1D,IAAI,SAAS,GAAG,cAAc,EAAE,CAAC;YAC/B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,cAAc,GAAG,mBAAmB,GAAG,aAAa,CAAC;QAE3D,OAAO,cAAc,CAAC;IACxB,CAAC;IAED;;;;;;;OAOG;IACO,oBAAoB,CAC5B,cAAsB,EACtB,cAAsB,EACtB,KAAa;QAEb,OAAO,CACL,cAAc;YACd,CAAC,cAAc,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,8BAAkB,CAAC,CAC7D,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACO,oBAAoB,CAC5B,cAAsB,EACtB,cAAsB,EACtB,KAAa;QAEb,OAAO,CACL,cAAc;YACd,CAAC,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,GAAG,8BAAkB,CAAC,CAC7D,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACI,gBAAgB,CAAC,QAAgB,EAAE,KAAiB;QACzD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,kCAAkC;QACrF,MAAM,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;QAC3C,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,IAAI,EAAE,CAAC;QACpD,IAAI,WAAW,GAAG,GAAG,EAAE,CAAC;YACtB,yDAAyD;YACzD,OAAO,KAAK,CAAC,SAAS,CAAC;QACzB,CAAC;QAED,IAAI,WAAW,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;YACzC,4CAA4C;YAC5C,OAAO,KAAK,CAAC,SAAS,CAAC;QACzB,CAAC;QAED,oDAAoD;QACpD,iEAAiE;QACjE,MAAM,SAAS,GAAG,OAAO,CAAC;QAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,GAAG,SAAS,CAAC,GAAG,KAAK,CAAC,eAAe,CAAC;QAEtE,kDAAkD;QAClD,MAAM,SAAS,GACb,CAAC,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QACpE,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;QACnD,OAAO,cAAc,CAAC;IACxB,CAAC;IAED;;;;;;OAMG;IACI,YAAY,CACjB,QAAgB,EAChB,UAAkB,EAClB,WAAmB;QAEnB,6EAA6E;QAC7E,MAAM,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC;QACzC,MAAM,WAAW,GAAG,UAAU,GAAG,QAAQ,CAAC;QAE1C,0EAA0E;QAC1E,+EAA+E;QAE/E,OAAO,SAAS,GAAG,WAAW,CAAC;IACjC,CAAC;IAED;;;;;;OAMG;IACI,WAAW,CAChB,SAAiB,EACjB,UAAkB,EAClB,WAAmB;QAEnB,6EAA6E;QAC7E,MAAM,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;QACzC,MAAM,WAAW,GAAG,WAAW,GAAG,SAAS,CAAC;QAE5C,4EAA4E;QAC5E,OAAO,SAAS,GAAG,WAAW,CAAC;IACjC,CAAC;IAED;;;;;;;;;;;OAWG;IACI,cAAc,CACnB,CAAS,EACT,CAAS,EACT,CAAS,EACT,EAAU,EACV,EAAU;QAEV,wBAAwB;QACxB,MAAM,MAAM,GAAG,IAAA,YAAI,EAAC,CAAC,GAAG,CAAC,GAAG,mBAAO,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG,IAAA,YAAI,EAAC,EAAE,GAAG,EAAE,GAAG,mBAAO,CAAC,CAAC;QAEzC,gDAAgD;QAChD,MAAM,SAAS,GAAG,CAAC,GAAG,MAAM,GAAG,CAAC,GAAG,QAAQ,GAAG,EAAE,GAAG,MAAM,CAAC;QAC1D,MAAM,WAAW,GAAG,MAAM,GAAG,QAAQ,CAAC;QAEtC,qCAAqC;QACrC,MAAM,CAAC,GAAG,SAAS,GAAG,WAAW,CAAC;QAElC,OAAO,CAAC,CAAC;IACX,CAAC;IAED;;;;;;;;;;;OAWG;IACI,aAAa,CAClB,CAAS,EACT,CAAS,EACT,CAAS,EACT,EAAU,EACV,EAAU;QAEV,wBAAwB;QACxB,MAAM,MAAM,GAAG,IAAA,YAAI,EAAC,CAAC,GAAG,CAAC,GAAG,mBAAO,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG,IAAA,YAAI,EAAC,EAAE,GAAG,EAAE,GAAG,mBAAO,CAAC,CAAC;QAEzC,0CAA0C;QAC1C,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,GAAG,CAAC,GAAG,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC;QAC1E,OAAO,CAAC,CAAC;IACX,CAAC;IAED;;;;;;;;;;OAUG;IACI,OAAO,CACZ,QAAiB,EACjB,SAAiB,EACjB,WAA+B,EAC/B,YAA0B,EAC1B,UAAkB,EAClB,WAAmB,EACnB,GAAW,EACX,aAAwB,EACxB,WAAmB,EACnB,QAAgB;QAEhB,MAAM,iBAAiB,GACrB,CAAC,SAAS,GAAG,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,IAAI,WAAW,CAAC,CAAC;QAE7D,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CACnC,QAAQ,EACR,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,GAAG,EACH,WAAW,EACX,aAAa,EACb,WAAW,EACX,QAAQ,CACT,CAAC;QAEF,MAAM,GAAG,GAAG,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE,IAAI,UAAU,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;;;OAOG;IACI,eAAe,CACpB,QAAiB,EACjB,SAAiB,EACjB,WAA+B,EAC/B,YAA0B,EAC1B,GAAW,EACX,WAAmB,EACnB,aAAwB,EACxB,WAAmB,EACnB,QAAgB;QAEhB,IAAI,SAAS,KAAK,EAAE,EAAE,CAAC;YACrB,OAAO,EAAE,CAAC,CAAC,iCAAiC;QAC9C,CAAC;QACD,MAAM,EACJ,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,GACxB,GAAG,WAAW,CAAC;QAEhB,MAAM,EACJ,kBAAkB,EAAE,sBAAsB,EAC1C,kBAAkB,EAAE,sBAAsB,EAC1C,uBAAuB,EAAE,2BAA2B,EACpD,uBAAuB,EAAE,2BAA2B,GACrD,GAAG,YAAY,CAAC;QAEjB,8DAA8D;QAC9D,MAAM,cAAc,GAClB,kBAAkB,GAAG,EAAE;YACvB,kBAAkB,GAAG,EAAE;YACvB,uBAAuB,GAAG,EAAE;YAC5B,uBAAuB,GAAG,EAAE,CAAC;QAE/B,wDAAwD;QACxD,MAAM,eAAe,GACnB,sBAAsB,GAAG,EAAE;YAC3B,sBAAsB,GAAG,EAAE;YAC3B,2BAA2B,GAAG,EAAE;YAChC,2BAA2B,GAAG,EAAE,CAAC;QAEnC,IAAI,YAAoB,EACtB,aAAqB,EACrB,aAAqB,EACrB,cAAsB,CAAC;QACzB,IAAI,aAAqB,EACvB,cAAsB,EACtB,cAAsB,EACtB,eAAuB,CAAC;QAC1B,IAAI,UAAkB,EAAE,YAAoB,CAAC;QAE7C,IAAI,QAAQ,EAAE,CAAC;YACb,YAAY,GAAG,kBAAkB,CAAC;YAClC,aAAa,GAAG,kBAAkB,CAAC;YACnC,aAAa,GAAG,uBAAuB,CAAC;YACxC,cAAc,GAAG,uBAAuB,CAAC;YACzC,aAAa,GAAG,sBAAsB,CAAC;YACvC,cAAc,GAAG,sBAAsB,CAAC;YACxC,cAAc,GAAG,2BAA2B,CAAC;YAC7C,eAAe,GAAG,2BAA2B,CAAC;YAC9C,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAChC,QAAQ,EACR,aAAa,CAAC,gBAAgB,CAC/B,CAAC;YACF,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAClC,QAAQ,EACR,aAAa,CAAC,kBAAkB,CACjC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,YAAY,GAAG,kBAAkB,CAAC;YAClC,aAAa,GAAG,kBAAkB,CAAC;YACnC,aAAa,GAAG,uBAAuB,CAAC;YACxC,cAAc,GAAG,uBAAuB,CAAC;YACzC,aAAa,GAAG,sBAAsB,CAAC;YACvC,cAAc,GAAG,sBAAsB,CAAC;YACxC,cAAc,GAAG,2BAA2B,CAAC;YAC7C,eAAe,GAAG,2BAA2B,CAAC;YAC9C,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAChC,QAAQ,EACR,aAAa,CAAC,gBAAgB,CAC/B,CAAC;YACF,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAClC,QAAQ,EACR,aAAa,CAAC,kBAAkB,CACjC,CAAC;QACJ,CAAC;QAED,0FAA0F;QAC1F,UAAU,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,IAAI,WAAW,CAAC,CAAC;QACzE,YAAY;YACV,CAAC,YAAY,GAAG,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,IAAI,WAAW,CAAC,CAAC;QAEhE,IAAI,CAAS,CAAC;QACd,IAAI,cAAc,IAAI,eAAe,EAAE,CAAC;YACtC,CAAC,GAAG,IAAI,CAAC,cAAc,CACrB,SAAS,EACT,aAAa,EACb,cAAc,EACd,cAAc,EACd,eAAe,CAChB,CAAC;QACJ,CAAC;aAAM,IAAI,eAAe,EAAE,CAAC;YAC3B,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,uBAAuB;QAClC,CAAC;aAAM,IAAI,cAAc,EAAE,CAAC;YAC1B,CAAC,GAAG,SAAS,GAAG,EAAE,CAAC,CAAC,6BAA6B;QACnD,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,kBAAkB,GAAW,EAAE,CAAC;QACpC,IAAI,YAAY,GAAW,EAAE,CAAC;QAC9B,IAAI,mBAAmB,GAAW,EAAE,CAAC;QACrC,IAAI,aAAa,GAAW,EAAE,CAAC;QAE/B,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACZ,wCAAwC;YAExC,aAAa,GAAG,SAAS,CAAC;YAC1B,YAAY,GAAG,IAAI,CAAC,WAAW,CAC7B,SAAS,EACT,cAAc,EACd,eAAe,CAChB,CAAC;YACF,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;YACtD,IAAI,SAAS,GAAG,cAAc,EAAE,CAAC;gBAC/B,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,IAAI,SAAS,GAAG,UAAU,EAAE,CAAC;gBAC3B,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,IAAI,SAAS,EAAE,CAAC;YAC1B,8CAA8C;YAC9C,mBAAmB,GAAG,SAAS,CAAC;YAChC,kBAAkB,GAAG,IAAI,CAAC,WAAW,CACnC,SAAS,EACT,aAAa,EACb,cAAc,CACf,CAAC;YACF,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;YAClE,IAAI,SAAS,GAAG,aAAa,EAAE,CAAC;gBAC9B,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,IAAI,SAAS,GAAG,YAAY,EAAE,CAAC;gBAC7B,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,kCAAkC;YAClC,mBAAmB,GAAG,CAAC,CAAC;YACxB,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;YACxE,MAAM,qBAAqB,GAAG,SAAS,GAAG,CAAC,CAAC;YAE5C,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;YAElE,YAAY,GAAG,IAAI,CAAC,WAAW,CAC7B,qBAAqB,EACrB,cAAc,EACd,eAAe,CAChB,CAAC;YAEF,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;YACtD,IAAI,aAAa,GAAG,cAAc,IAAI,CAAC,GAAG,aAAa,EAAE,CAAC;gBACxD,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,IAAI,aAAa,GAAG,UAAU,IAAI,CAAC,GAAG,YAAY,EAAE,CAAC;gBACnD,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QAED,IAAI,kBAAkB,GAAG,CAAC,EAAE,CAAC;YAC3B,IAAI,kBAAkB,GAAG,QAAQ;gBAC/B,CAAC,CAAC,IAAI,CAAC,oBAAoB,CACvB,YAAY,GAAG,kBAAkB,EACjC,aAAa,GAAG,mBAAmB,EACnC,WAAW,CACZ;gBACH,CAAC,CAAC,IAAI,CAAC,oBAAoB,CACvB,aAAa,GAAG,mBAAmB,EACnC,YAAY,GAAG,kBAAkB,EACjC,WAAW,CACZ,CAAC;YACN,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QACD,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,IAAI,kBAAkB,GAAG,QAAQ;gBAC/B,CAAC,CAAC,IAAI,CAAC,oBAAoB,CACvB,aAAa,GAAG,YAAY,EAC5B,cAAc,GAAG,aAAa,EAC9B,WAAW,CACZ;gBACH,CAAC,CAAC,IAAI,CAAC,oBAAoB,CACvB,cAAc,GAAG,aAAa,EAC9B,aAAa,GAAG,YAAY,EAC5B,WAAW,CACZ,CAAC;YACN,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QAED,IAAI,QAAgB,CAAC;QACrB,IAAI,QAAgB,CAAC;QACrB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAE3B,4JAA4J;QAC5J,IAAI,mBAAmB,GAAG,aAAa,EAAE,CAAC;YACxC,+BAA+B;YAC/B,QAAQ,GAAG,QAAQ;gBACjB,CAAC,CAAC,CAAC,cAAc,GAAG,KAAK,CAAC,GAAG,aAAa;gBAC1C,CAAC,CAAC,CAAC,aAAa,GAAG,KAAK,CAAC,GAAG,cAAc,CAAC;YAC7C,QAAQ,GAAG,QAAQ;gBACjB,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,mBAAmB,CAAC,GAAG,KAAK,CAAC;oBAChD,CAAC,aAAa,GAAG,kBAAkB,CAAC;gBACtC,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,kBAAkB,CAAC,GAAG,KAAK,CAAC;oBAC9C,CAAC,cAAc,GAAG,mBAAmB,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,gCAAgC;YAChC,QAAQ,GAAG,QAAQ;gBACjB,CAAC,CAAC,CAAC,eAAe,GAAG,KAAK,CAAC,GAAG,cAAc;gBAC5C,CAAC,CAAC,CAAC,cAAc,GAAG,KAAK,CAAC,GAAG,eAAe,CAAC;YAC/C,QAAQ,GAAG,QAAQ;gBACjB,CAAC,CAAC,CAAC,CAAC,eAAe,GAAG,aAAa,CAAC,GAAG,KAAK,CAAC;oBAC3C,CAAC,cAAc,GAAG,YAAY,CAAC;gBACjC,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,YAAY,CAAC,GAAG,KAAK,CAAC;oBACzC,CAAC,eAAe,GAAG,aAAa,CAAC,CAAC;QACxC,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK;QACvC,IACE,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAC7B,CAAC,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,cAAc,EACzC,CAAC;YACD,gDAAgD;YAChD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,aAAa,GAAG,kBAAkB,GAAG,YAAY,CAAC;QAExD,OAAO,aAAa,CAAC;IACvB,CAAC;IAEO,cAAc,CAAC,MAAc,EAAE,GAAW;QAChD,OAAO,CAAC,MAAM,GAAG,GAAG,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC,CAAC;IAClD,CAAC;IAEO,eAAe,CAAC,MAAc,EAAE,GAAW;QACjD,OAAO,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC;IAClD,CAAC;IAEO,GAAG,CAAC,KAAa;QACvB,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IACpC,CAAC;IAED,gBAAgB;QACd,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;YACnC,aAAa,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YAC9C,IAAI,CAAC,yBAAyB,GAAG,SAAS,CAAC;QAC7C,CAAC;IACH,CAAC;;AA9wCH,4BA+wCC"}
|
|
@@ -61,3 +61,5 @@ export declare function unpackDexVariables(dexVariables: bigint): UnpackedDexVar
|
|
|
61
61
|
export declare function sqrt(value: bigint): bigint;
|
|
62
62
|
export declare function getPricesAndReserves(state: PoolState, currentTimestamp?: bigint): PricingResult;
|
|
63
63
|
export declare function calculateSwap(state: PoolState, swap0To1: boolean, amountSpecified: bigint, side: SwapSide): SwapResult;
|
|
64
|
+
export declare function calculateSwapIn(amountIn: bigint, swap0To1: boolean, unpackedVars: UnpackedDexVariables, token0ImaginaryReserves: bigint, token1ImaginaryReserves: bigint): SwapResult;
|
|
65
|
+
export declare function calculateSwapOut(amountOut: bigint, swap0To1: boolean, unpackedVars: UnpackedDexVariables, token0ImaginaryReserves: bigint, token1ImaginaryReserves: bigint): SwapResult;
|
|
@@ -6,6 +6,8 @@ exports.unpackDexVariables = unpackDexVariables;
|
|
|
6
6
|
exports.sqrt = sqrt;
|
|
7
7
|
exports.getPricesAndReserves = getPricesAndReserves;
|
|
8
8
|
exports.calculateSwap = calculateSwap;
|
|
9
|
+
exports.calculateSwapIn = calculateSwapIn;
|
|
10
|
+
exports.calculateSwapOut = calculateSwapOut;
|
|
9
11
|
const constants_1 = require("../../constants");
|
|
10
12
|
// Constants for bit manipulation (from DexLiteSlotsLink and constantVariables)
|
|
11
13
|
exports.BITS_DEX_LITE_DEX_VARIABLES_FEE = 0;
|
|
@@ -425,6 +427,18 @@ function calculateSwapIn(amountIn, swap0To1, unpackedVars, token0ImaginaryReserv
|
|
|
425
427
|
const denominator = token1ImaginaryReserves + amountInAfterFee;
|
|
426
428
|
amountOut = numerator / denominator;
|
|
427
429
|
}
|
|
430
|
+
// The pool can only pay out what it actually holds: imaginary reserves (the
|
|
431
|
+
// concentrated-curve extension) can vastly exceed the real adjusted
|
|
432
|
+
// supplies, and the contract rejects such swaps with
|
|
433
|
+
// TokenReservesTooLow(amountOut, tokenAdjustedSupply) — see fluid-contracts
|
|
434
|
+
// dexLite/core/coreInternals.sol. Mirror it so we never quote an unfillable
|
|
435
|
+
// swap (both amounts are in the adjusted precision here).
|
|
436
|
+
const outTotalSupplyAdjusted = swap0To1
|
|
437
|
+
? unpackedVars.token1TotalSupplyAdjusted
|
|
438
|
+
: unpackedVars.token0TotalSupplyAdjusted;
|
|
439
|
+
if (amountOut > outTotalSupplyAdjusted) {
|
|
440
|
+
throw new FluidDexLiteMathError('Token reserves too low');
|
|
441
|
+
}
|
|
428
442
|
// Apply decimal adjustments to output
|
|
429
443
|
if (swap0To1) {
|
|
430
444
|
const token1Decimals = unpackedVars.token1Decimals;
|
|
@@ -490,6 +504,16 @@ function calculateSwapOut(amountOut, swap0To1, unpackedVars, token0ImaginaryRese
|
|
|
490
504
|
if (adjustedAmountOut > relevantReserves / 2n) {
|
|
491
505
|
throw new FluidDexLiteMathError('Excessive swap amount');
|
|
492
506
|
}
|
|
507
|
+
// The pool can only pay out what it actually holds — matches the contract's
|
|
508
|
+
// TokenReservesTooLow(amountOut, tokenAdjustedSupply) check (fluid-contracts
|
|
509
|
+
// dexLite/core/coreInternals.sol); imaginary reserves can vastly exceed the
|
|
510
|
+
// real adjusted supplies.
|
|
511
|
+
const outTotalSupplyAdjusted = swap0To1
|
|
512
|
+
? unpackedVars.token1TotalSupplyAdjusted
|
|
513
|
+
: unpackedVars.token0TotalSupplyAdjusted;
|
|
514
|
+
if (adjustedAmountOut > outTotalSupplyAdjusted) {
|
|
515
|
+
throw new FluidDexLiteMathError('Token reserves too low');
|
|
516
|
+
}
|
|
493
517
|
// Reverse constant product formula: amountIn = (amountOut * reserveIn) / (reserveOut - amountOut)
|
|
494
518
|
let amountInBeforeFee;
|
|
495
519
|
if (swap0To1) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fluid-dex-lite-math.js","sourceRoot":"","sources":["../../../src/dex/fluid-dex-lite/fluid-dex-lite-math.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fluid-dex-lite-math.js","sourceRoot":"","sources":["../../../src/dex/fluid-dex-lite/fluid-dex-lite-math.ts"],"names":[],"mappings":";;;;AAsGA,gDAwDC;AAmID,oBAkBC;AAGD,oDA8KC;AAGD,sCAoCC;AAGD,0CAmGC;AAGD,4CA4GC;AAhuBD,+CAA2C;AAS3C,+EAA+E;AAClE,QAAA,+BAA+B,GAAG,CAAC,CAAC;AACpC,QAAA,uCAAuC,GAAG,EAAE,CAAC;AAC7C,QAAA,8CAA8C,GAAG,EAAE,CAAC;AACpD,QAAA,qDAAqD,GAAG,EAAE,CAAC;AAC3D,QAAA,wCAAwC,GAAG,EAAE,CAAC;AAC9C,QAAA,yDAAyD,GAAG,EAAE,CAAC;AAC/D,QAAA,sDAAsD,GAAG,EAAE,CAAC;AAC5D,QAAA,yCAAyC,GAAG,EAAE,CAAC;AAC/C,QAAA,yCAAyC,GAAG,EAAE,CAAC;AAC/C,QAAA,0DAA0D,GAAG,GAAG,CAAC;AACjE,QAAA,yDAAyD,GAAG,GAAG,CAAC;AAChE,QAAA,yDAAyD,GAAG,GAAG,CAAC;AAChE,QAAA,4CAA4C,GAAG,GAAG,CAAC;AACnD,QAAA,4CAA4C,GAAG,GAAG,CAAC;AACnD,QAAA,yDAAyD,GAAG,GAAG,CAAC;AAChE,QAAA,yDAAyD,GAAG,GAAG,CAAC;AAE7E,yCAAyC;AAC5B,QAAA,EAAE,GAAG,IAAI,CAAC;AACV,QAAA,EAAE,GAAG,IAAI,CAAC;AACV,QAAA,EAAE,GAAG,KAAK,CAAC;AACX,QAAA,EAAE,GAAG,KAAK,CAAC;AACX,QAAA,GAAG,GAAG,OAAO,CAAC;AACd,QAAA,GAAG,GAAG,OAAO,CAAC;AACd,QAAA,GAAG,GAAG,QAAQ,CAAC;AACf,QAAA,GAAG,GAAG,QAAQ,CAAC;AACf,QAAA,GAAG,GAAG,SAAS,CAAC;AAChB,QAAA,GAAG,GAAG,UAAU,CAAC;AACjB,QAAA,GAAG,GAAG,YAAY,CAAC;AACnB,QAAA,GAAG,GAAG,aAAa,CAAC;AACpB,QAAA,GAAG,GAAG,kBAAkB,CAAC;AACzB,QAAA,GAAG,GAAG,mBAAmB,CAAC;AAC1B,QAAA,GAAG,GAAG,sBAAsB,CAAC;AAE1C,iCAAiC;AACpB,QAAA,2DAA2D,GAAG,CAAC,CAAC;AAChE,QAAA,8CAA8C,GAAG,EAAE,CAAC;AACpD,QAAA,iDAAiD,GAAG,EAAE,CAAC;AACvD,QAAA,iDAAiD,GAAG,EAAE,CAAC;AACvD,QAAA,wCAAwC,GAAG,GAAG,CAAC;AAC/C,QAAA,8CAA8C,GAAG,GAAG,CAAC;AACrD,QAAA,0CAA0C,GAAG,GAAG,CAAC;AAE9D,2BAA2B;AACd,QAAA,iDAAiD,GAAG,CAAC,CAAC;AACtD,QAAA,iDAAiD,GAAG,EAAE,CAAC;AACvD,QAAA,uCAAuC,GAAG,EAAE,CAAC;AAC7C,QAAA,mCAAmC,GAAG,EAAE,CAAC;AAEtD,+BAA+B;AAClB,QAAA,yDAAyD,GAAG,CAAC,CAAC;AAC9D,QAAA,yDAAyD,GAAG,CAAC,CAAC;AAC9D,QAAA,2CAA2C,GAAG,EAAE,CAAC;AACjD,QAAA,uCAAuC,GAAG,EAAE,CAAC;AAE1D,kBAAkB;AACL,QAAA,YAAY,GAAG,IAAI,CAAC;AACpB,QAAA,aAAa,GAAG,MAAM,CAAC;AACvB,QAAA,YAAY,GAAG,QAAQ,CAAC;AACxB,QAAA,eAAe,GAAG,GAAG,IAAI,GAAG,CAAC;AAC7B,QAAA,yBAAyB,GAAG,EAAE,CAAC;AAC/B,QAAA,sBAAsB,GAAG,MAAM,CAAC;AAChC,QAAA,qBAAqB,GAAG,EAAE,CAAC;AAC3B,QAAA,qBAAqB,GAAG,KAAK,CAAC;AAE3C,MAAa,qBAAsB,SAAQ,KAAK;IAC9C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AALD,sDAKC;AAED,4CAA4C;AAC5C,SAAS,MAAM,CAAC,KAAa;IAC3B,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE/B,gDAAgD;IAChD,IAAI,QAAQ,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACjC,IAAI,QAAQ,KAAK,CAAC;QAAE,OAAO,WAAW,CAAC;IACvC,IAAI,QAAQ,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC;IAC/B,IAAI,QAAQ,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC9B,IAAI,QAAQ,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,QAAQ,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,QAAQ,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACnC,IAAI,QAAQ,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC;IACpC,IAAI,QAAQ,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACrC,IAAI,QAAQ,KAAK,CAAC;QAAE,OAAO,UAAU,CAAC;IAEtC,MAAM,IAAI,qBAAqB,CAAC,kBAAkB,KAAK,GAAG,CAAC,CAAC;AAC9D,CAAC;AAED,8CAA8C;AAC9C,SAAgB,kBAAkB,CAAC,YAAoB;IACrD,OAAO;QACL,GAAG,EAAE,CAAC,YAAY,IAAI,MAAM,CAAC,uCAA+B,CAAC,CAAC,GAAG,WAAG;QACpE,UAAU,EACR,CAAC,YAAY,IAAI,MAAM,CAAC,+CAAuC,CAAC,CAAC,GAAG,UAAE;QACxE,iBAAiB,EACf,CAAC,YAAY,IAAI,MAAM,CAAC,sDAA8C,CAAC,CAAC;YACxE,UAAE;QACJ,sBAAsB,EACpB,CAAC,CAAC,YAAY;YACZ,MAAM,CAAC,6DAAqD,CAAC,CAAC;YAC9D,UAAE,CAAC;YACL,EAAE;QACJ,WAAW,EACT,CAAC,YAAY,IAAI,MAAM,CAAC,gDAAwC,CAAC,CAAC,GAAG,WAAG;QAC1E,0BAA0B,EACxB,CAAC,YAAY;YACX,MAAM,CAAC,iEAAyD,CAAC,CAAC;YACpE,WAAG;QACL,uBAAuB,EACrB,CAAC,CAAC,YAAY;YACZ,MAAM,CAAC,8DAAsD,CAAC,CAAC;YAC/D,UAAE,CAAC;YACL,EAAE;QACJ,YAAY,EACV,CAAC,YAAY,IAAI,MAAM,CAAC,iDAAyC,CAAC,CAAC,GAAG,WAAG;QAC3E,YAAY,EACV,CAAC,YAAY,IAAI,MAAM,CAAC,iDAAyC,CAAC,CAAC,GAAG,WAAG;QAC3E,2BAA2B,EACzB,CAAC,CAAC,YAAY;YACZ,MAAM,CAAC,kEAA0D,CAAC,CAAC;YACnE,UAAE,CAAC;YACL,EAAE;QACJ,0BAA0B,EACxB,CAAC,YAAY;YACX,MAAM,CAAC,iEAAyD,CAAC,CAAC;YACpE,UAAE;QACJ,0BAA0B,EACxB,CAAC,YAAY;YACX,MAAM,CAAC,iEAAyD,CAAC,CAAC;YACpE,UAAE;QACJ,cAAc,EACZ,CAAC,YAAY,IAAI,MAAM,CAAC,oDAA4C,CAAC,CAAC;YACtE,UAAE;QACJ,cAAc,EACZ,CAAC,YAAY,IAAI,MAAM,CAAC,oDAA4C,CAAC,CAAC;YACtE,UAAE;QACJ,yBAAyB,EACvB,CAAC,YAAY;YACX,MAAM,CAAC,iEAAyD,CAAC,CAAC;YACpE,WAAG;QACL,yBAAyB,EACvB,CAAC,YAAY;YACX,MAAM,CAAC,iEAAyD,CAAC,CAAC;YACpE,WAAG;KACN,CAAC;AACJ,CAAC;AAED,6CAA6C;AAC7C,SAAS,iBAAiB,CAAC,WAAmB;IAC5C,OAAO,CACL,CAAC,WAAW,IAAI,6BAAqB,CAAC;QACtC,CAAC,WAAW,GAAG,6BAAqB,CAAC,CACtC,CAAC;AACJ,CAAC;AAED,2DAA2D;AAC3D,SAAS,gBAAgB,CACvB,OAAe,EACf,GAAW,EACX,UAAkB,EAClB,aAAqB;IAErB,IAAI,OAAO,GAAG,GAAG,EAAE,CAAC;QAClB,OAAO,GAAG,GAAG,CAAC,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,aAAa,CAAC;IAC9D,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,UAAU,CAAC,GAAG,aAAa,CAAC;IAC9D,CAAC;AACH,CAAC;AAED,sEAAsE;AACtE,SAAS,iBAAiB,CACxB,UAAkB,EAClB,UAAkB,EAClB,UAAkB,EAClB,gBAAwB;IAExB,MAAM,aAAa,GACjB,CAAC,UAAU,IAAI,MAAM,CAAC,+CAAuC,CAAC,CAAC,GAAG,WAAG,CAAC;IACxE,MAAM,cAAc,GAClB,CAAC,UAAU,IAAI,MAAM,CAAC,2CAAmC,CAAC,CAAC,GAAG,WAAG,CAAC;IAEpE,IAAI,cAAc,GAAG,aAAa,GAAG,gBAAgB,EAAE,CAAC;QACtD,sBAAsB;QACtB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;IACpC,CAAC;IAED,MAAM,UAAU,GAAG,gBAAgB,GAAG,cAAc,CAAC;IACrD,MAAM,aAAa,GACjB,CAAC,UAAU,IAAI,MAAM,CAAC,yDAAiD,CAAC,CAAC;QACzE,WAAG,CAAC;IACN,MAAM,aAAa,GACjB,CAAC,UAAU,IAAI,MAAM,CAAC,yDAAiD,CAAC,CAAC;QACzE,WAAG,CAAC;IAEN,OAAO;QACL,UAAU,EAAE,gBAAgB,CAC1B,UAAU,EACV,aAAa,EACb,UAAU,EACV,aAAa,CACd;QACD,UAAU,EAAE,gBAAgB,CAC1B,UAAU,EACV,aAAa,EACb,UAAU,EACV,aAAa,CACd;KACF,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,SAAS,qBAAqB,CAC5B,cAAsB,EACtB,cAAsB,EACtB,cAAsB,EACtB,gBAAwB;IAExB,MAAM,aAAa,GACjB,CAAC,cAAc,IAAI,MAAM,CAAC,mDAA2C,CAAC,CAAC;QACvE,WAAG,CAAC;IACN,MAAM,cAAc,GAClB,CAAC,cAAc,IAAI,MAAM,CAAC,+CAAuC,CAAC,CAAC,GAAG,WAAG,CAAC;IAE5E,IAAI,cAAc,GAAG,aAAa,GAAG,gBAAgB,EAAE,CAAC;QACtD,sBAAsB;QACtB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;IAC5C,CAAC;IAED,MAAM,UAAU,GAAG,gBAAgB,GAAG,cAAc,CAAC;IACrD,MAAM,iBAAiB,GACrB,CAAC,cAAc;QACb,MAAM,CAAC,iEAAyD,CAAC,CAAC;QACpE,UAAE,CAAC;IACL,MAAM,iBAAiB,GACrB,CAAC,cAAc;QACb,MAAM,CAAC,iEAAyD,CAAC,CAAC;QACpE,UAAE,CAAC;IAEL,OAAO;QACL,cAAc,EAAE,gBAAgB,CAC9B,cAAc,EACd,iBAAiB,EACjB,UAAU,EACV,aAAa,CACd;QACD,cAAc,EAAE,gBAAgB,CAC9B,cAAc,EACd,iBAAiB,EACjB,UAAU,EACV,aAAa,CACd;KACF,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,SAAS,6BAA6B,CACpC,aAAqB,EACrB,EAAU,EACV,EAAU,EACV,EAAU;IAEV,MAAM,EAAE,GAAG,EAAE,GAAG,aAAa,CAAC;IAE9B,MAAM,EAAE,GAAG,CAAC,aAAa,GAAG,EAAE,GAAG,EAAE,GAAG,uBAAe,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IAEnE,MAAM,YAAY,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,uBAAe,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;IAEhE,+CAA+C;IAC/C,eAAe;IACf,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;IACnC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,aAAa,CAAC,GAAG,uBAAe,CAAC;IAElD,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AACpB,CAAC;AAED,wCAAwC;AACxC,SAAgB,IAAI,CAAC,KAAa;IAChC,IAAI,KAAK,GAAG,EAAE,EAAE,CAAC;QACf,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,GAAG,KAAK,CAAC;IACd,IAAI,MAAM,GAAG,KAAK,CAAC;IAEnB,kBAAkB;IAClB,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;QACd,CAAC,GAAG,CAAC,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC;QACnC,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC;YAChB,MAAM;QACR,CAAC;QACD,MAAM,GAAG,CAAC,CAAC;IACb,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,iEAAiE;AACjE,SAAgB,oBAAoB,CAClC,KAAgB,EAChB,mBAA2B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAEhE,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAE5D,yBAAyB;IACzB,IAAI,WAAmB,CAAC;IAExB,kDAAkD;IAClD,IAAI,YAAY,CAAC,0BAA0B,KAAK,EAAE,EAAE,CAAC;QACnD,MAAM,IAAI,qBAAqB,CAC7B,mDAAmD,CACpD,CAAC;IACJ,CAAC;IAED,4CAA4C;IAC5C,IAAI,YAAY,CAAC,sBAAsB,EAAE,CAAC;QACxC,MAAM,IAAI,qBAAqB,CAC7B,gDAAgD,CACjD,CAAC;IACJ,CAAC;IAED,0BAA0B;IAC1B,WAAW,GAAG,iBAAiB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IAE1D,2BAA2B;IAC3B,IAAI,iBAAiB,GAAG,YAAY,CAAC,YAAY,CAAC;IAClD,IAAI,iBAAiB,GAAG,YAAY,CAAC,YAAY,CAAC;IAElD,IAAI,YAAY,CAAC,uBAAuB,EAAE,CAAC;QACzC,MAAM,WAAW,GAAG,iBAAiB,CACnC,iBAAiB,EACjB,iBAAiB,EACjB,KAAK,CAAC,UAAU,EAChB,gBAAgB,CACjB,CAAC;QACF,iBAAiB,GAAG,WAAW,CAAC,UAAU,CAAC;QAC3C,iBAAiB,GAAG,WAAW,CAAC,UAAU,CAAC;IAC7C,CAAC;IAED,yBAAyB;IACzB,IAAI,eAAe,GACjB,CAAC,WAAW,GAAG,qBAAa,CAAC,GAAG,CAAC,qBAAa,GAAG,iBAAiB,CAAC,CAAC;IACtE,IAAI,eAAe,GACjB,CAAC,WAAW,GAAG,CAAC,qBAAa,GAAG,iBAAiB,CAAC,CAAC,GAAG,qBAAa,CAAC;IAEtE,2BAA2B;IAC3B,MAAM,iBAAiB,GAAG,YAAY,CAAC,iBAAiB,CAAC;IAEzD,IAAI,iBAAiB,GAAG,EAAE,EAAE,CAAC;QAC3B,IAAI,oBAAoB,GAAG,EAAE,CAAC;QAE9B,IAAI,iBAAiB,KAAK,EAAE,EAAE,CAAC;YAC7B,qCAAqC;YACrC,oBAAoB,GAAG,KAAK,CAAC,gBAAgB,CAAC;YAC9C,MAAM,YAAY,GAChB,CAAC,oBAAoB;gBACnB,MAAM,CAAC,sDAA8C,CAAC,CAAC;gBACzD,WAAG,CAAC;YACN,MAAM,WAAW,GAAG,gBAAgB,GAAG,KAAK,CAAC,wBAAwB,CAAC;YAEtE,IAAI,WAAW,GAAG,YAAY,EAAE,CAAC;gBAC/B,WAAW;oBACT,WAAW;wBACX,CAAC,CAAC,eAAe,GAAG,WAAW,CAAC,GAAG,WAAW,CAAC,GAAG,YAAY,CAAC;YACnE,CAAC;iBAAM,CAAC;gBACN,qBAAqB;gBACrB,WAAW,GAAG,eAAe,CAAC;YAChC,CAAC;QACH,CAAC;aAAM,IAAI,iBAAiB,KAAK,EAAE,EAAE,CAAC;YACpC,qCAAqC;YACrC,oBAAoB,GAAG,KAAK,CAAC,gBAAgB,CAAC;YAC9C,MAAM,YAAY,GAChB,CAAC,oBAAoB;gBACnB,MAAM,CAAC,sDAA8C,CAAC,CAAC;gBACzD,WAAG,CAAC;YACN,MAAM,WAAW,GAAG,gBAAgB,GAAG,KAAK,CAAC,wBAAwB,CAAC;YAEtE,IAAI,WAAW,GAAG,YAAY,EAAE,CAAC;gBAC/B,WAAW;oBACT,WAAW;wBACX,CAAC,CAAC,WAAW,GAAG,eAAe,CAAC,GAAG,WAAW,CAAC,GAAG,YAAY,CAAC;YACnE,CAAC;iBAAM,CAAC;gBACN,qBAAqB;gBACrB,WAAW,GAAG,eAAe,CAAC;YAChC,CAAC;QACH,CAAC;QAED,+CAA+C;QAC/C,IAAI,oBAAoB,GAAG,EAAE,EAAE,CAAC;YAC9B,yBAAyB;YACzB,IAAI,cAAc,GAChB,CAAC,oBAAoB;gBACnB,MAAM,CAAC,yDAAiD,CAAC,CAAC;gBAC5D,WAAG,CAAC;YACN,cAAc;gBACZ,CAAC,cAAc,IAAI,6BAAqB,CAAC;oBACzC,CAAC,cAAc,GAAG,6BAAqB,CAAC,CAAC;YAE3C,IAAI,WAAW,GAAG,cAAc,EAAE,CAAC;gBACjC,WAAW,GAAG,cAAc,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,yBAAyB;gBACzB,IAAI,cAAc,GAChB,CAAC,oBAAoB;oBACnB,MAAM,CAAC,yDAAiD,CAAC,CAAC;oBAC5D,WAAG,CAAC;gBACN,cAAc;oBACZ,CAAC,cAAc,IAAI,6BAAqB,CAAC;wBACzC,CAAC,cAAc,GAAG,6BAAqB,CAAC,CAAC;gBAE3C,IAAI,WAAW,GAAG,cAAc,EAAE,CAAC;oBACjC,WAAW,GAAG,cAAc,CAAC;gBAC/B,CAAC;YACH,CAAC;YAED,4CAA4C;YAC5C,eAAe;gBACb,CAAC,WAAW,GAAG,qBAAa,CAAC,GAAG,CAAC,qBAAa,GAAG,iBAAiB,CAAC,CAAC;YACtE,eAAe;gBACb,CAAC,WAAW,GAAG,CAAC,qBAAa,GAAG,iBAAiB,CAAC,CAAC,GAAG,qBAAa,CAAC;QACxE,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,IAAI,aAAqB,CAAC;IAE1B,IAAI,eAAe,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QACjC,cAAc;QACd,aAAa,GAAG,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC,CAAC;IAC1D,CAAC;SAAM,CAAC;QACN,2BAA2B;QAC3B,aAAa;YACX,IAAI,CAAC,CAAC,eAAe,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,eAAe,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC;gBACrE,GAAG,IAAI,GAAG,CAAC;IACf,CAAC;IAED,+BAA+B;IAC/B,IAAI,uBAA+B,CAAC;IACpC,IAAI,uBAA+B,CAAC;IAEpC,IAAI,aAAa,GAAG,uBAAe,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,6BAA6B,CAC5C,aAAa,EACb,eAAe,EACf,YAAY,CAAC,yBAAyB,EACtC,YAAY,CAAC,yBAAyB,CACvC,CAAC;QACF,uBAAuB,GAAG,QAAQ,CAAC,EAAE,CAAC;QACtC,uBAAuB,GAAG,QAAQ,CAAC,EAAE,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,+CAA+C;QAC/C,MAAM,QAAQ,GAAG,6BAA6B,CAC5C,GAAG,IAAI,GAAG,GAAG,aAAa,EAC1B,GAAG,IAAI,GAAG,GAAG,eAAe,EAC5B,YAAY,CAAC,yBAAyB,EACtC,YAAY,CAAC,yBAAyB,CACvC,CAAC;QACF,uBAAuB,GAAG,QAAQ,CAAC,EAAE,CAAC;QACtC,uBAAuB,GAAG,QAAQ,CAAC,EAAE,CAAC;IACxC,CAAC;IAED,4CAA4C;IAC5C,uBAAuB,IAAI,YAAY,CAAC,yBAAyB,CAAC;IAClE,uBAAuB,IAAI,YAAY,CAAC,yBAAyB,CAAC;IAElE,OAAO;QACL,WAAW;QACX,eAAe;QACf,eAAe;QACf,uBAAuB;QACvB,uBAAuB;KACxB,CAAC;AACJ,CAAC;AAED,iCAAiC;AACjC,SAAgB,aAAa,CAC3B,KAAgB,EAChB,QAAiB,EACjB,eAAuB,EACvB,IAAc;IAEd,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAE5D,mBAAmB;IACnB,IACE,YAAY,CAAC,yBAAyB,KAAK,EAAE;QAC7C,YAAY,CAAC,yBAAyB,KAAK,EAAE,EAC7C,CAAC;QACD,MAAM,IAAI,qBAAqB,CAAC,sBAAsB,CAAC,CAAC;IAC1D,CAAC;IAED,8CAA8C;IAC9C,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAE5C,IAAI,IAAI,KAAK,oBAAQ,CAAC,IAAI,EAAE,CAAC;QAC3B,OAAO,eAAe,CACpB,eAAe,EACf,QAAQ,EACR,YAAY,EACZ,OAAO,CAAC,uBAAuB,EAC/B,OAAO,CAAC,uBAAuB,CAChC,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO,gBAAgB,CACrB,eAAe,EACf,QAAQ,EACR,YAAY,EACZ,OAAO,CAAC,uBAAuB,EAC/B,OAAO,CAAC,uBAAuB,CAChC,CAAC;IACJ,CAAC;AACH,CAAC;AAED,6CAA6C;AAC7C,SAAgB,eAAe,CAC7B,QAAgB,EAChB,QAAiB,EACjB,YAAkC,EAClC,uBAA+B,EAC/B,uBAA+B;IAE/B,IAAI,gBAAgB,GAAG,QAAQ,CAAC;IAEhC,4BAA4B;IAC5B,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,cAAc,GAAG,YAAY,CAAC,cAAc,CAAC;QACnD,IAAI,cAAc,GAAG,iCAAyB,EAAE,CAAC;YAC/C,gBAAgB;gBACd,gBAAgB,GAAG,MAAM,CAAC,cAAc,GAAG,iCAAyB,CAAC,CAAC;QAC1E,CAAC;aAAM,CAAC;YACN,gBAAgB;gBACd,gBAAgB,GAAG,MAAM,CAAC,iCAAyB,GAAG,cAAc,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,cAAc,GAAG,YAAY,CAAC,cAAc,CAAC;QACnD,IAAI,cAAc,GAAG,iCAAyB,EAAE,CAAC;YAC/C,gBAAgB;gBACd,gBAAgB,GAAG,MAAM,CAAC,cAAc,GAAG,iCAAyB,CAAC,CAAC;QAC1E,CAAC;aAAM,CAAC;YACN,gBAAgB;gBACd,gBAAgB,GAAG,MAAM,CAAC,iCAAyB,GAAG,cAAc,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,8DAA8D;IAC9D,IAAI,gBAAgB,GAAG,qBAAa,IAAI,gBAAgB,GAAG,WAAG,EAAE,CAAC;QAC/D,MAAM,IAAI,qBAAqB,CAAC,qBAAqB,CAAC,CAAC;IACzD,CAAC;IAED,8EAA8E;IAC9E,MAAM,gBAAgB,GAAG,QAAQ;QAC/B,CAAC,CAAC,uBAAuB;QACzB,CAAC,CAAC,uBAAuB,CAAC;IAC5B,IAAI,gBAAgB,GAAG,gBAAgB,GAAG,EAAE,EAAE,CAAC;QAC7C,MAAM,IAAI,qBAAqB,CAAC,uBAAuB,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,GAAG,GAAG,CAAC,gBAAgB,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,oBAAY,CAAC;IACjE,MAAM,gBAAgB,GAAG,gBAAgB,GAAG,GAAG,CAAC;IAEhD,yFAAyF;IACzF,IAAI,SAAiB,CAAC;IACtB,IAAI,QAAQ,EAAE,CAAC;QACb,2DAA2D;QAC3D,MAAM,SAAS,GAAG,gBAAgB,GAAG,uBAAuB,CAAC;QAC7D,MAAM,WAAW,GAAG,uBAAuB,GAAG,gBAAgB,CAAC;QAE/D,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,GAAG,gBAAgB,GAAG,uBAAuB,CAAC;QAC7D,MAAM,WAAW,GAAG,uBAAuB,GAAG,gBAAgB,CAAC;QAE/D,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IACtC,CAAC;IAED,4EAA4E;IAC5E,oEAAoE;IACpE,qDAAqD;IACrD,4EAA4E;IAC5E,4EAA4E;IAC5E,0DAA0D;IAC1D,MAAM,sBAAsB,GAAG,QAAQ;QACrC,CAAC,CAAC,YAAY,CAAC,yBAAyB;QACxC,CAAC,CAAC,YAAY,CAAC,yBAAyB,CAAC;IAC3C,IAAI,SAAS,GAAG,sBAAsB,EAAE,CAAC;QACvC,MAAM,IAAI,qBAAqB,CAAC,wBAAwB,CAAC,CAAC;IAC5D,CAAC;IAED,sCAAsC;IACtC,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,cAAc,GAAG,YAAY,CAAC,cAAc,CAAC;QACnD,IAAI,cAAc,GAAG,iCAAyB,EAAE,CAAC;YAC/C,SAAS;gBACP,SAAS,GAAG,MAAM,CAAC,cAAc,GAAG,iCAAyB,CAAC,CAAC;QACnE,CAAC;aAAM,CAAC;YACN,SAAS;gBACP,SAAS,GAAG,MAAM,CAAC,iCAAyB,GAAG,cAAc,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,cAAc,GAAG,YAAY,CAAC,cAAc,CAAC;QACnD,IAAI,cAAc,GAAG,iCAAyB,EAAE,CAAC;YAC/C,SAAS;gBACP,SAAS,GAAG,MAAM,CAAC,cAAc,GAAG,iCAAyB,CAAC,CAAC;QACnE,CAAC;aAAM,CAAC;YACN,SAAS;gBACP,SAAS,GAAG,MAAM,CAAC,iCAAyB,GAAG,cAAc,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,QAAQ;QAClB,SAAS,EAAE,SAAS;KACrB,CAAC;AACJ,CAAC;AAED,6CAA6C;AAC7C,SAAgB,gBAAgB,CAC9B,SAAiB,EACjB,QAAiB,EACjB,YAAkC,EAClC,uBAA+B,EAC/B,uBAA+B;IAE/B,IAAI,iBAAiB,GAAG,SAAS,CAAC;IAElC,4BAA4B;IAC5B,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,cAAc,GAAG,YAAY,CAAC,cAAc,CAAC;QACnD,IAAI,cAAc,GAAG,iCAAyB,EAAE,CAAC;YAC/C,iBAAiB;gBACf,iBAAiB,GAAG,MAAM,CAAC,cAAc,GAAG,iCAAyB,CAAC,CAAC;QAC3E,CAAC;aAAM,CAAC;YACN,iBAAiB;gBACf,iBAAiB,GAAG,MAAM,CAAC,iCAAyB,GAAG,cAAc,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,cAAc,GAAG,YAAY,CAAC,cAAc,CAAC;QACnD,IAAI,cAAc,GAAG,iCAAyB,EAAE,CAAC;YAC/C,iBAAiB;gBACf,iBAAiB,GAAG,MAAM,CAAC,cAAc,GAAG,iCAAyB,CAAC,CAAC;QAC3E,CAAC;aAAM,CAAC;YACN,iBAAiB;gBACf,iBAAiB,GAAG,MAAM,CAAC,iCAAyB,GAAG,cAAc,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,8DAA8D;IAC9D,IAAI,iBAAiB,GAAG,qBAAa,IAAI,iBAAiB,GAAG,WAAG,EAAE,CAAC;QACjE,MAAM,IAAI,qBAAqB,CAAC,qBAAqB,CAAC,CAAC;IACzD,CAAC;IAED,8EAA8E;IAC9E,MAAM,gBAAgB,GAAG,QAAQ;QAC/B,CAAC,CAAC,uBAAuB;QACzB,CAAC,CAAC,uBAAuB,CAAC;IAC5B,IAAI,iBAAiB,GAAG,gBAAgB,GAAG,EAAE,EAAE,CAAC;QAC9C,MAAM,IAAI,qBAAqB,CAAC,uBAAuB,CAAC,CAAC;IAC3D,CAAC;IAED,4EAA4E;IAC5E,6EAA6E;IAC7E,4EAA4E;IAC5E,0BAA0B;IAC1B,MAAM,sBAAsB,GAAG,QAAQ;QACrC,CAAC,CAAC,YAAY,CAAC,yBAAyB;QACxC,CAAC,CAAC,YAAY,CAAC,yBAAyB,CAAC;IAC3C,IAAI,iBAAiB,GAAG,sBAAsB,EAAE,CAAC;QAC/C,MAAM,IAAI,qBAAqB,CAAC,wBAAwB,CAAC,CAAC;IAC5D,CAAC;IAED,kGAAkG;IAClG,IAAI,iBAAyB,CAAC;IAC9B,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,WAAW,GAAG,uBAAuB,GAAG,iBAAiB,CAAC;QAChE,IAAI,WAAW,IAAI,EAAE,EAAE,CAAC;YACtB,MAAM,IAAI,qBAAqB,CAC7B,+CAA+C,CAChD,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,iBAAiB,GAAG,uBAAuB,CAAC;QAC9D,iBAAiB,GAAG,SAAS,GAAG,WAAW,CAAC;IAC9C,CAAC;SAAM,CAAC;QACN,MAAM,WAAW,GAAG,uBAAuB,GAAG,iBAAiB,CAAC;QAChE,IAAI,WAAW,IAAI,EAAE,EAAE,CAAC;YACtB,MAAM,IAAI,qBAAqB,CAC7B,+CAA+C,CAChD,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,iBAAiB,GAAG,uBAAuB,CAAC;QAC9D,iBAAiB,GAAG,SAAS,GAAG,WAAW,CAAC;IAC9C,CAAC;IAED,MAAM,cAAc,GAAG,oBAAY,GAAG,YAAY,CAAC,GAAG,CAAC;IAEvD,MAAM,GAAG,GACP,CAAC,iBAAiB,GAAG,oBAAY,CAAC,GAAG,cAAc,GAAG,iBAAiB,CAAC;IAC1E,MAAM,QAAQ,GAAG,iBAAiB,GAAG,GAAG,CAAC;IAEzC,qCAAqC;IACrC,IAAI,aAAa,GAAG,QAAQ,CAAC;IAC7B,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,cAAc,GAAG,YAAY,CAAC,cAAc,CAAC;QACnD,IAAI,cAAc,GAAG,iCAAyB,EAAE,CAAC;YAC/C,aAAa;gBACX,aAAa,GAAG,MAAM,CAAC,cAAc,GAAG,iCAAyB,CAAC,CAAC;QACvE,CAAC;aAAM,CAAC;YACN,aAAa;gBACX,aAAa,GAAG,MAAM,CAAC,iCAAyB,GAAG,cAAc,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,cAAc,GAAG,YAAY,CAAC,cAAc,CAAC;QACnD,IAAI,cAAc,GAAG,iCAAyB,EAAE,CAAC;YAC/C,aAAa;gBACX,aAAa,GAAG,MAAM,CAAC,cAAc,GAAG,iCAAyB,CAAC,CAAC;QACvE,CAAC;aAAM,CAAC;YACN,aAAa;gBACX,aAAa,GAAG,MAAM,CAAC,iCAAyB,GAAG,cAAc,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,aAAa;QACvB,SAAS,EAAE,SAAS;KACrB,CAAC;AACJ,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import BigNumber from 'bignumber.js';
|
|
2
|
-
import { Token, ExchangePrices, ExchangeTxInfo, PreprocessTransactionOptions, Config, PoolLiquidity, Address, DexExchangeParam } from '../../types';
|
|
2
|
+
import { Token, ExchangePrices, ExchangeTxInfo, PreprocessTransactionOptions, Config, PoolLiquidity, Address, DexExchangeParam, GetDexParamOptions } from '../../types';
|
|
3
3
|
import { Network, SwapSide } from '../../constants';
|
|
4
4
|
import { IDexHelper } from '../../dex-helper';
|
|
5
5
|
import { ParaSwapLimitOrders } from '../paraswap-limit-orders/paraswap-limit-orders';
|
|
@@ -32,7 +32,7 @@ export declare class GenericRFQ extends ParaSwapLimitOrders {
|
|
|
32
32
|
encoder: (...params: (string | RFQDirectPayload)[]) => string;
|
|
33
33
|
networkFee: string;
|
|
34
34
|
};
|
|
35
|
-
getDexParam(srcToken: Address, destToken: Address, srcAmount: NumberAsString, destAmount: NumberAsString, recipient: Address, data: ParaSwapLimitOrdersData, side: SwapSide): DexExchangeParam;
|
|
35
|
+
getDexParam(srcToken: Address, destToken: Address, srcAmount: NumberAsString, destAmount: NumberAsString, recipient: Address, data: ParaSwapLimitOrdersData, side: SwapSide, _executorAddress?: Address, options?: GetDexParamOptions): DexExchangeParam;
|
|
36
36
|
preProcessTransaction(optimalSwapExchange: OptimalSwapExchange<ParaSwapLimitOrdersData>, srcToken: Token, destToken: Token, side: SwapSide, options: PreprocessTransactionOptions): Promise<[OptimalSwapExchange<ParaSwapLimitOrdersData>, ExchangeTxInfo]>;
|
|
37
37
|
getTopPoolsForToken(tokenAddress: string, limit: number): Promise<PoolLiquidity[]>;
|
|
38
38
|
releaseResources(): void;
|
|
@@ -176,12 +176,21 @@ class GenericRFQ extends paraswap_limit_orders_1.ParaSwapLimitOrders {
|
|
|
176
176
|
};
|
|
177
177
|
return { params: payload, encoder, networkFee: '0' };
|
|
178
178
|
}
|
|
179
|
-
getDexParam(srcToken, destToken, srcAmount, destAmount, recipient, data, side) {
|
|
180
|
-
|
|
179
|
+
getDexParam(srcToken, destToken, srcAmount, destAmount, recipient, data, side, _executorAddress, options) {
|
|
180
|
+
let { orderInfos } = data;
|
|
181
181
|
if (orderInfos === null) {
|
|
182
182
|
throw new Error(`Error_${this.dexKey}_getDexParam payload is not received. It may be because of` +
|
|
183
183
|
`not calling preProcessTransaction before`);
|
|
184
184
|
}
|
|
185
|
+
if (options?.forceRfqRevert) {
|
|
186
|
+
// TEST-ONLY: tryBatchFill skips orders whose maker signature fails but
|
|
187
|
+
// reverts when the requested fill amount remains unfilled — corrupting
|
|
188
|
+
// EVERY order's signature guarantees the revert.
|
|
189
|
+
orderInfos = orderInfos.map(oi => ({
|
|
190
|
+
...oi,
|
|
191
|
+
signature: (0, utils_2.corruptHexTail)(oi.signature, 1),
|
|
192
|
+
}));
|
|
193
|
+
}
|
|
185
194
|
const isSell = side === constants_1.SwapSide.SELL;
|
|
186
195
|
const specialDexExchangeData = this.rfqIface.encodeFunctionData(isSell ? 'tryBatchFillOrderTakerAmount' : 'tryBatchFillOrderMakerAmount', [orderInfos, isSell ? srcAmount : destAmount, recipient]);
|
|
187
196
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generic-rfq.js","sourceRoot":"","sources":["../../../src/dex/generic-rfq/generic-rfq.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generic-rfq.js","sourceRoot":"","sources":["../../../src/dex/generic-rfq/generic-rfq.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { Interface } from 'ethers/lib/utils';
|
|
|
4
4
|
import { Network, SwapSide } from '../../constants';
|
|
5
5
|
import { IDexHelper } from '../../dex-helper/idex-helper';
|
|
6
6
|
import { IDex } from '../../dex/idex';
|
|
7
|
-
import { AdapterExchangeParam, Address, DexExchangeParam, ExchangePrices, ExchangeTxInfo, Logger, NumberAsString, OptimalSwapExchange, PoolLiquidity, PoolPrices, PreprocessTransactionOptions, SimpleExchangeParam, Token } from '../../types';
|
|
7
|
+
import { AdapterExchangeParam, Address, DexExchangeParam, ExchangePrices, ExchangeTxInfo, Logger, NumberAsString, OptimalSwapExchange, PoolLiquidity, PoolPrices, PreprocessTransactionOptions, SimpleExchangeParam, Token, GetDexParamOptions } from '../../types';
|
|
8
8
|
import { SimpleExchangeWithRestrictions } from '../simple-exchange-with-restrictions';
|
|
9
9
|
import { ErrorCode, HashflowData, PriceLevel } from './types';
|
|
10
10
|
export declare class Hashflow extends SimpleExchangeWithRestrictions implements IDex<HashflowData> {
|
|
@@ -58,7 +58,7 @@ export declare class Hashflow extends SimpleExchangeWithRestrictions implements
|
|
|
58
58
|
getCalldataGasCost(poolPrices: PoolPrices<HashflowData>): number | number[];
|
|
59
59
|
getAdapterParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: HashflowData, side: SwapSide): AdapterExchangeParam;
|
|
60
60
|
getSimpleParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: HashflowData, side: SwapSide): Promise<SimpleExchangeParam>;
|
|
61
|
-
getDexParam(srcToken: Address, destToken: Address, srcAmount: NumberAsString, destAmount: NumberAsString, recipient: Address, data: HashflowData, side: SwapSide): DexExchangeParam;
|
|
61
|
+
getDexParam(srcToken: Address, destToken: Address, srcAmount: NumberAsString, destAmount: NumberAsString, recipient: Address, data: HashflowData, side: SwapSide, _executorAddress?: Address, options?: GetDexParamOptions): DexExchangeParam;
|
|
62
62
|
extractQuoteToken: (pair: {
|
|
63
63
|
baseToken: string;
|
|
64
64
|
baseTokenName: string;
|
|
@@ -580,12 +580,16 @@ class Hashflow extends simple_exchange_with_restrictions_1.SimpleExchangeWithRes
|
|
|
580
580
|
]);
|
|
581
581
|
return this.buildSimpleParamWithoutWETHConversion(srcToken, quoteData.baseTokenAmount, destToken, quoteData.quoteTokenAmount, swapData, this.routerAddress);
|
|
582
582
|
}
|
|
583
|
-
getDexParam(srcToken, destToken, srcAmount, destAmount, recipient, data, side) {
|
|
583
|
+
getDexParam(srcToken, destToken, srcAmount, destAmount, recipient, data, side, _executorAddress, options) {
|
|
584
584
|
try {
|
|
585
585
|
const { quoteData, signature } = data;
|
|
586
586
|
(0, ts_essentials_1.assert)(quoteData !== undefined, `${this.dexKey}-${this.network}: quoteData undefined`);
|
|
587
587
|
// Encode here the transaction arguments
|
|
588
|
-
|
|
588
|
+
let sig = signature?.startsWith('0x') ? signature : `0x${signature}`;
|
|
589
|
+
if (options?.forceRfqRevert) {
|
|
590
|
+
// TEST-ONLY: guaranteed on-chain revert at the maker-signature check
|
|
591
|
+
sig = (0, utils_2.corruptHexTail)(sig, 1);
|
|
592
|
+
}
|
|
589
593
|
const exchangeData = this.routerInterface.encodeFunctionData('tradeRFQT', [
|
|
590
594
|
[
|
|
591
595
|
quoteData.pool,
|