@across-protocol/sdk 3.4.15 → 3.4.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/clients/BundleDataClient/BundleDataClient.d.ts +1 -1
- package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +174 -123
- package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
- package/dist/cjs/clients/BundleDataClient/utils/FillUtils.d.ts +3 -1
- package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js +33 -1
- package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
- package/dist/cjs/providers/index.d.ts +1 -0
- package/dist/cjs/providers/index.js +2 -0
- package/dist/cjs/providers/index.js.map +1 -1
- package/dist/cjs/providers/mockProvider.d.ts +19 -0
- package/dist/cjs/providers/mockProvider.js +70 -0
- package/dist/cjs/providers/mockProvider.js.map +1 -0
- package/dist/esm/clients/BundleDataClient/BundleDataClient.d.ts +1 -1
- package/dist/esm/clients/BundleDataClient/BundleDataClient.js +204 -151
- package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/utils/FillUtils.d.ts +3 -1
- package/dist/esm/clients/BundleDataClient/utils/FillUtils.js +42 -1
- package/dist/esm/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
- package/dist/esm/providers/index.d.ts +1 -0
- package/dist/esm/providers/index.js +2 -0
- package/dist/esm/providers/index.js.map +1 -1
- package/dist/esm/providers/mockProvider.d.ts +23 -0
- package/dist/esm/providers/mockProvider.js +73 -0
- package/dist/esm/providers/mockProvider.js.map +1 -0
- package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts +1 -1
- package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
- package/dist/types/clients/BundleDataClient/utils/FillUtils.d.ts +3 -1
- package/dist/types/clients/BundleDataClient/utils/FillUtils.d.ts.map +1 -1
- package/dist/types/providers/index.d.ts +1 -0
- package/dist/types/providers/index.d.ts.map +1 -1
- package/dist/types/providers/mockProvider.d.ts +24 -0
- package/dist/types/providers/mockProvider.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/clients/BundleDataClient/BundleDataClient.ts +98 -70
- package/src/clients/BundleDataClient/utils/FillUtils.ts +47 -2
- package/src/providers/index.ts +1 -0
- package/src/providers/mockProvider.ts +77 -0
|
@@ -35,7 +35,7 @@ export declare class BundleDataClient {
|
|
|
35
35
|
private loadPersistedDataFromArweave;
|
|
36
36
|
getPendingRefundsFromValidBundles(): Promise<CombinedRefunds[]>;
|
|
37
37
|
getPendingRefundsFromBundle(bundle: ProposedRootBundle): Promise<CombinedRefunds>;
|
|
38
|
-
getApproximateRefundsForBlockRange(chainIds: number[], blockRanges: number[][]): CombinedRefunds
|
|
38
|
+
getApproximateRefundsForBlockRange(chainIds: number[], blockRanges: number[][]): Promise<CombinedRefunds>;
|
|
39
39
|
getUpcomingDepositAmount(chainId: number, l2Token: string, latestBlockToSearch: number): BigNumber;
|
|
40
40
|
private getLatestProposedBundleData;
|
|
41
41
|
getLatestPoolRebalanceRoot(): Promise<{
|
|
@@ -26,9 +26,9 @@ function updateBundleDepositsV3(dict, deposit) {
|
|
|
26
26
|
}
|
|
27
27
|
dict[originChainId][inputToken].push(deposit);
|
|
28
28
|
}
|
|
29
|
-
function updateBundleFillsV3(dict, fill, lpFeePct, repaymentChainId, repaymentToken) {
|
|
29
|
+
function updateBundleFillsV3(dict, fill, lpFeePct, repaymentChainId, repaymentToken, repaymentAddress) {
|
|
30
30
|
var _a, _b;
|
|
31
|
-
if ((0, utils_1.chainIsEvm)(
|
|
31
|
+
if ((0, utils_1.chainIsEvm)(repaymentChainId) && !(0, utils_1.isValidEvmAddress)(repaymentAddress)) {
|
|
32
32
|
return;
|
|
33
33
|
}
|
|
34
34
|
if (!((_a = dict === null || dict === void 0 ? void 0 : dict[repaymentChainId]) === null || _a === void 0 ? void 0 : _a[repaymentToken])) {
|
|
@@ -39,22 +39,22 @@ function updateBundleFillsV3(dict, fill, lpFeePct, repaymentChainId, repaymentTo
|
|
|
39
39
|
refunds: {},
|
|
40
40
|
});
|
|
41
41
|
}
|
|
42
|
-
var bundleFill = tslib_1.__assign(tslib_1.__assign({}, fill), { lpFeePct: lpFeePct });
|
|
42
|
+
var bundleFill = tslib_1.__assign(tslib_1.__assign({}, fill), { lpFeePct: lpFeePct, relayer: repaymentAddress });
|
|
43
43
|
(0, utils_1.assign)(dict, [repaymentChainId, repaymentToken, "fills"], [bundleFill]);
|
|
44
44
|
var refundObj = dict[repaymentChainId][repaymentToken];
|
|
45
|
-
var realizedLpFee =
|
|
45
|
+
var realizedLpFee = bundleFill.inputAmount.mul(bundleFill.lpFeePct).div(utils_1.fixedPointAdjustment);
|
|
46
46
|
refundObj.realizedLpFees = refundObj.realizedLpFees ? refundObj.realizedLpFees.add(realizedLpFee) : realizedLpFee;
|
|
47
|
-
if (!(0, utils_1.isSlowFill)(
|
|
48
|
-
var refundAmount =
|
|
47
|
+
if (!(0, utils_1.isSlowFill)(bundleFill)) {
|
|
48
|
+
var refundAmount = bundleFill.inputAmount.mul(utils_1.fixedPointAdjustment.sub(lpFeePct)).div(utils_1.fixedPointAdjustment);
|
|
49
49
|
refundObj.totalRefundAmount = refundObj.totalRefundAmount
|
|
50
50
|
? refundObj.totalRefundAmount.add(refundAmount)
|
|
51
51
|
: refundAmount;
|
|
52
52
|
(_b = refundObj.refunds) !== null && _b !== void 0 ? _b : (refundObj.refunds = {});
|
|
53
|
-
if (refundObj.refunds[
|
|
54
|
-
refundObj.refunds[
|
|
53
|
+
if (refundObj.refunds[bundleFill.relayer]) {
|
|
54
|
+
refundObj.refunds[bundleFill.relayer] = refundObj.refunds[bundleFill.relayer].add(refundAmount);
|
|
55
55
|
}
|
|
56
56
|
else {
|
|
57
|
-
refundObj.refunds[
|
|
57
|
+
refundObj.refunds[bundleFill.relayer] = refundAmount;
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
60
|
}
|
|
@@ -194,64 +194,105 @@ var BundleDataClient = (function () {
|
|
|
194
194
|
return [4, this.loadArweaveData(bundleEvaluationBlockRanges)];
|
|
195
195
|
case 1:
|
|
196
196
|
arweaveData = _a.sent();
|
|
197
|
-
if (arweaveData === undefined)
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
197
|
+
if (!(arweaveData === undefined)) return [3, 3];
|
|
198
|
+
return [4, this.getApproximateRefundsForBlockRange(chainIds, bundleEvaluationBlockRanges)];
|
|
199
|
+
case 2:
|
|
200
|
+
combinedRefunds = _a.sent();
|
|
201
|
+
return [3, 4];
|
|
202
|
+
case 3:
|
|
203
|
+
bundleFillsV3 = arweaveData.bundleFillsV3, expiredDepositsToRefundV3 = arweaveData.expiredDepositsToRefundV3;
|
|
204
|
+
combinedRefunds = (0, utils_2.getRefundsFromBundle)(bundleFillsV3, expiredDepositsToRefundV3);
|
|
205
|
+
Object.keys(combinedRefunds).forEach(function (chainId) {
|
|
206
|
+
if (_this.spokePoolClients[Number(chainId)] === undefined) {
|
|
207
|
+
delete combinedRefunds[Number(chainId)];
|
|
208
|
+
}
|
|
209
|
+
});
|
|
210
|
+
_a.label = 4;
|
|
211
|
+
case 4: return [2, this.deductExecutedRefunds(combinedRefunds, bundle)];
|
|
210
212
|
}
|
|
211
213
|
});
|
|
212
214
|
});
|
|
213
215
|
};
|
|
214
216
|
BundleDataClient.prototype.getApproximateRefundsForBlockRange = function (chainIds, blockRanges) {
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
217
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
218
|
+
var refundsForChain, _loop_1, this_1, _i, chainIds_1, chainId;
|
|
219
|
+
var _this = this;
|
|
220
|
+
return tslib_1.__generator(this, function (_a) {
|
|
221
|
+
switch (_a.label) {
|
|
222
|
+
case 0:
|
|
223
|
+
refundsForChain = {};
|
|
224
|
+
_loop_1 = function (chainId) {
|
|
225
|
+
var chainIndex, fillsToCount;
|
|
226
|
+
return tslib_1.__generator(this, function (_b) {
|
|
227
|
+
switch (_b.label) {
|
|
228
|
+
case 0:
|
|
229
|
+
if (this_1.spokePoolClients[chainId] === undefined) {
|
|
230
|
+
return [2, "continue"];
|
|
231
|
+
}
|
|
232
|
+
chainIndex = chainIds.indexOf(chainId);
|
|
233
|
+
return [4, (0, utils_1.filterAsync)(this_1.spokePoolClients[chainId].getFills(), function (fill) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
234
|
+
var matchingDeposit, hasMatchingDeposit, validRepayment;
|
|
235
|
+
return tslib_1.__generator(this, function (_a) {
|
|
236
|
+
switch (_a.label) {
|
|
237
|
+
case 0:
|
|
238
|
+
if (fill.blockNumber < blockRanges[chainIndex][0] || fill.blockNumber > blockRanges[chainIndex][1]) {
|
|
239
|
+
return [2, false];
|
|
240
|
+
}
|
|
241
|
+
if (this.spokePoolClients[fill.originChainId] === undefined) {
|
|
242
|
+
return [2, false];
|
|
243
|
+
}
|
|
244
|
+
matchingDeposit = this.spokePoolClients[fill.originChainId].getDeposit(fill.depositId);
|
|
245
|
+
hasMatchingDeposit = matchingDeposit !== undefined &&
|
|
246
|
+
this.getRelayHashFromEvent(fill) === this.getRelayHashFromEvent(matchingDeposit);
|
|
247
|
+
if (!hasMatchingDeposit) return [3, 2];
|
|
248
|
+
return [4, (0, utils_2.verifyFillRepayment)(fill, this.spokePoolClients[fill.destinationChainId].spokePool.provider, matchingDeposit, this.clients.configStoreClient
|
|
249
|
+
.getChainIdIndicesForBlock(blockRanges[0][1])
|
|
250
|
+
.filter(function (_chainId, i) { return !(0, utils_2.isChainDisabled)(blockRanges[i]); }))];
|
|
251
|
+
case 1:
|
|
252
|
+
validRepayment = _a.sent();
|
|
253
|
+
if (!(0, utils_1.isDefined)(validRepayment)) {
|
|
254
|
+
return [2, false];
|
|
255
|
+
}
|
|
256
|
+
_a.label = 2;
|
|
257
|
+
case 2: return [2, hasMatchingDeposit];
|
|
258
|
+
}
|
|
259
|
+
});
|
|
260
|
+
}); })];
|
|
261
|
+
case 1:
|
|
262
|
+
fillsToCount = _b.sent();
|
|
263
|
+
fillsToCount.forEach(function (fill) {
|
|
264
|
+
var _a, _b, _c;
|
|
265
|
+
var _d;
|
|
266
|
+
var matchingDeposit = _this.spokePoolClients[fill.originChainId].getDeposit(fill.depositId);
|
|
267
|
+
(0, utils_1.assert)((0, utils_1.isDefined)(matchingDeposit), "Deposit not found for fill.");
|
|
268
|
+
var _e = (0, utils_2.getRefundInformationFromFill)(fill, _this.clients.hubPoolClient, blockRanges, _this.chainIdListForBundleEvaluationBlockNumbers, matchingDeposit.fromLiteChain), chainToSendRefundTo = _e.chainToSendRefundTo, repaymentToken = _e.repaymentToken;
|
|
269
|
+
var relayer = fill.relayer, refundAmount = fill.inputAmount;
|
|
270
|
+
(_a = refundsForChain[chainToSendRefundTo]) !== null && _a !== void 0 ? _a : (refundsForChain[chainToSendRefundTo] = {});
|
|
271
|
+
(_b = (_d = refundsForChain[chainToSendRefundTo])[repaymentToken]) !== null && _b !== void 0 ? _b : (_d[repaymentToken] = {});
|
|
272
|
+
var existingRefundAmount = (_c = refundsForChain[chainToSendRefundTo][repaymentToken][relayer]) !== null && _c !== void 0 ? _c : utils_1.bnZero;
|
|
273
|
+
refundsForChain[chainToSendRefundTo][repaymentToken][relayer] = existingRefundAmount.add(refundAmount);
|
|
274
|
+
});
|
|
275
|
+
return [2];
|
|
276
|
+
}
|
|
277
|
+
});
|
|
278
|
+
};
|
|
279
|
+
this_1 = this;
|
|
280
|
+
_i = 0, chainIds_1 = chainIds;
|
|
281
|
+
_a.label = 1;
|
|
282
|
+
case 1:
|
|
283
|
+
if (!(_i < chainIds_1.length)) return [3, 4];
|
|
284
|
+
chainId = chainIds_1[_i];
|
|
285
|
+
return [5, _loop_1(chainId)];
|
|
286
|
+
case 2:
|
|
287
|
+
_a.sent();
|
|
288
|
+
_a.label = 3;
|
|
289
|
+
case 3:
|
|
290
|
+
_i++;
|
|
291
|
+
return [3, 1];
|
|
292
|
+
case 4: return [2, refundsForChain];
|
|
230
293
|
}
|
|
231
|
-
var matchingDeposit = _this.spokePoolClients[fill.originChainId].getDeposit(fill.depositId);
|
|
232
|
-
var hasMatchingDeposit = matchingDeposit !== undefined &&
|
|
233
|
-
_this.getRelayHashFromEvent(fill) === _this.getRelayHashFromEvent(matchingDeposit);
|
|
234
|
-
return hasMatchingDeposit;
|
|
235
|
-
})
|
|
236
|
-
.forEach(function (fill) {
|
|
237
|
-
var _a, _b, _c;
|
|
238
|
-
var _d;
|
|
239
|
-
var matchingDeposit = _this.spokePoolClients[fill.originChainId].getDeposit(fill.depositId);
|
|
240
|
-
(0, utils_1.assert)((0, utils_1.isDefined)(matchingDeposit), "Deposit not found for fill.");
|
|
241
|
-
var _e = (0, utils_2.getRefundInformationFromFill)(fill, _this.clients.hubPoolClient, blockRanges, _this.chainIdListForBundleEvaluationBlockNumbers, matchingDeposit.fromLiteChain), chainToSendRefundTo = _e.chainToSendRefundTo, repaymentToken = _e.repaymentToken;
|
|
242
|
-
var relayer = fill.relayer, refundAmount = fill.inputAmount;
|
|
243
|
-
(_a = refundsForChain[chainToSendRefundTo]) !== null && _a !== void 0 ? _a : (refundsForChain[chainToSendRefundTo] = {});
|
|
244
|
-
(_b = (_d = refundsForChain[chainToSendRefundTo])[repaymentToken]) !== null && _b !== void 0 ? _b : (_d[repaymentToken] = {});
|
|
245
|
-
var existingRefundAmount = (_c = refundsForChain[chainToSendRefundTo][repaymentToken][relayer]) !== null && _c !== void 0 ? _c : utils_1.bnZero;
|
|
246
|
-
refundsForChain[chainToSendRefundTo][repaymentToken][relayer] = existingRefundAmount.add(refundAmount);
|
|
247
294
|
});
|
|
248
|
-
};
|
|
249
|
-
var this_1 = this;
|
|
250
|
-
for (var _i = 0, chainIds_1 = chainIds; _i < chainIds_1.length; _i++) {
|
|
251
|
-
var chainId = chainIds_1[_i];
|
|
252
|
-
_loop_1(chainId);
|
|
253
|
-
}
|
|
254
|
-
return refundsForChain;
|
|
295
|
+
});
|
|
255
296
|
};
|
|
256
297
|
BundleDataClient.prototype.getUpcomingDepositAmount = function (chainId, l2Token, latestBlockToSearch) {
|
|
257
298
|
if (this.spokePoolClients[chainId] === undefined) {
|
|
@@ -323,32 +364,39 @@ var BundleDataClient = (function () {
|
|
|
323
364
|
return [initialBlockRange[1] + 1, blockRange[1]];
|
|
324
365
|
});
|
|
325
366
|
}
|
|
326
|
-
var hubPoolClient, nextBundleMainnetStartBlock, chainIds, combinedRefunds, widestBundleBlockRanges, pendingBundleBlockRanges, arweaveData, bundleFillsV3, expiredDepositsToRefundV3, start;
|
|
327
|
-
return tslib_1.__generator(this, function (
|
|
328
|
-
switch (
|
|
367
|
+
var hubPoolClient, nextBundleMainnetStartBlock, chainIds, combinedRefunds, widestBundleBlockRanges, pendingBundleBlockRanges, arweaveData, _a, _b, bundleFillsV3, expiredDepositsToRefundV3, start, _c, _d;
|
|
368
|
+
return tslib_1.__generator(this, function (_e) {
|
|
369
|
+
switch (_e.label) {
|
|
329
370
|
case 0:
|
|
330
371
|
hubPoolClient = this.clients.hubPoolClient;
|
|
331
372
|
nextBundleMainnetStartBlock = hubPoolClient.getNextBundleStartBlockNumber(this.chainIdListForBundleEvaluationBlockNumbers, hubPoolClient.latestBlockSearched, hubPoolClient.chainId);
|
|
332
373
|
chainIds = this.clients.configStoreClient.getChainIdIndicesForBlock(nextBundleMainnetStartBlock);
|
|
333
374
|
combinedRefunds = [];
|
|
334
375
|
widestBundleBlockRanges = (0, utils_2.getWidestPossibleExpectedBlockRange)(chainIds, this.spokePoolClients, (0, utils_2.getEndBlockBuffers)(chainIds, this.blockRangeEndBlockBuffer), this.clients, this.clients.hubPoolClient.latestBlockSearched, this.clients.configStoreClient.getEnabledChains(this.clients.hubPoolClient.latestBlockSearched));
|
|
335
|
-
if (!hubPoolClient.hasPendingProposal()) return [3,
|
|
376
|
+
if (!hubPoolClient.hasPendingProposal()) return [3, 5];
|
|
336
377
|
pendingBundleBlockRanges = (0, utils_1.getImpliedBundleBlockRanges)(hubPoolClient, this.clients.configStoreClient, hubPoolClient.getLatestProposedRootBundle());
|
|
337
378
|
return [4, this.loadArweaveData(pendingBundleBlockRanges)];
|
|
338
379
|
case 1:
|
|
339
|
-
arweaveData =
|
|
340
|
-
if (arweaveData === undefined)
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
else {
|
|
344
|
-
bundleFillsV3 = arweaveData.bundleFillsV3, expiredDepositsToRefundV3 = arweaveData.expiredDepositsToRefundV3;
|
|
345
|
-
combinedRefunds.push((0, utils_2.getRefundsFromBundle)(bundleFillsV3, expiredDepositsToRefundV3));
|
|
346
|
-
}
|
|
347
|
-
widestBundleBlockRanges = getBlockRangeDelta(pendingBundleBlockRanges);
|
|
348
|
-
_a.label = 2;
|
|
380
|
+
arweaveData = _e.sent();
|
|
381
|
+
if (!(arweaveData === undefined)) return [3, 3];
|
|
382
|
+
_b = (_a = combinedRefunds).push;
|
|
383
|
+
return [4, this.getApproximateRefundsForBlockRange(chainIds, pendingBundleBlockRanges)];
|
|
349
384
|
case 2:
|
|
385
|
+
_b.apply(_a, [_e.sent()]);
|
|
386
|
+
return [3, 4];
|
|
387
|
+
case 3:
|
|
388
|
+
bundleFillsV3 = arweaveData.bundleFillsV3, expiredDepositsToRefundV3 = arweaveData.expiredDepositsToRefundV3;
|
|
389
|
+
combinedRefunds.push((0, utils_2.getRefundsFromBundle)(bundleFillsV3, expiredDepositsToRefundV3));
|
|
390
|
+
_e.label = 4;
|
|
391
|
+
case 4:
|
|
392
|
+
widestBundleBlockRanges = getBlockRangeDelta(pendingBundleBlockRanges);
|
|
393
|
+
_e.label = 5;
|
|
394
|
+
case 5:
|
|
350
395
|
start = performance.now();
|
|
351
|
-
combinedRefunds.push
|
|
396
|
+
_d = (_c = combinedRefunds).push;
|
|
397
|
+
return [4, this.getApproximateRefundsForBlockRange(chainIds, widestBundleBlockRanges)];
|
|
398
|
+
case 6:
|
|
399
|
+
_d.apply(_c, [_e.sent()]);
|
|
352
400
|
this.logger.debug({
|
|
353
401
|
at: "BundleDataClient#getNextBundleRefunds",
|
|
354
402
|
message: "Loading approximate refunds for next bundle in ".concat(Math.round(performance.now() - start) / 1000, "s."),
|
|
@@ -609,68 +657,71 @@ var BundleDataClient = (function () {
|
|
|
609
657
|
fastFillsReplacingSlowFills = [];
|
|
610
658
|
return [4, (0, utils_1.forEachAsync)(destinationClient
|
|
611
659
|
.getFillsForOriginChain(originChainId)
|
|
612
|
-
.filter(function (fill) { return fill.blockNumber <= destinationChainBlockRange[1] && !(0, utils_1.isZeroValueDeposit)(fill); }), function (
|
|
613
|
-
var relayDataHash,
|
|
660
|
+
.filter(function (fill) { return fill.blockNumber <= destinationChainBlockRange[1] && !(0, utils_1.isZeroValueDeposit)(fill); }), function (_fill) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
661
|
+
var relayDataHash, fill, historicalDeposit, matchedDeposit, fill;
|
|
614
662
|
return tslib_1.__generator(this, function (_a) {
|
|
615
663
|
switch (_a.label) {
|
|
616
664
|
case 0:
|
|
617
|
-
relayDataHash = this.getRelayHashFromEvent(fill);
|
|
618
665
|
fillCounter++;
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
fastFillsReplacingSlowFills.push(relayDataHash);
|
|
629
|
-
}
|
|
630
|
-
}
|
|
631
|
-
}
|
|
666
|
+
relayDataHash = this.getRelayHashFromEvent(_fill);
|
|
667
|
+
if (!v3RelayHashes[relayDataHash]) return [3, 3];
|
|
668
|
+
if (!!v3RelayHashes[relayDataHash].fill) return [3, 2];
|
|
669
|
+
(0, utils_1.assert)((0, utils_1.isDefined)(v3RelayHashes[relayDataHash].deposit), "Deposit should exist in relay hash dictionary.");
|
|
670
|
+
return [4, (0, utils_2.verifyFillRepayment)(_fill, destinationClient.spokePool.provider, v3RelayHashes[relayDataHash].deposit, allChainIds)];
|
|
671
|
+
case 1:
|
|
672
|
+
fill = _a.sent();
|
|
673
|
+
if (!(0, utils_1.isDefined)(fill)) {
|
|
674
|
+
bundleInvalidFillsV3.push(_fill);
|
|
632
675
|
return [2];
|
|
633
676
|
}
|
|
677
|
+
v3RelayHashes[relayDataHash].fill = fill;
|
|
678
|
+
if (fill.blockNumber >= destinationChainBlockRange[0]) {
|
|
679
|
+
validatedBundleV3Fills.push(tslib_1.__assign(tslib_1.__assign({}, fill), { quoteTimestamp: v3RelayHashes[relayDataHash].deposit.quoteTimestamp }));
|
|
680
|
+
if (fill.relayExecutionInfo.fillType === interfaces_1.FillType.ReplacedSlowFill &&
|
|
681
|
+
!v3RelayHashes[relayDataHash].deposit.fromLiteChain &&
|
|
682
|
+
!v3RelayHashes[relayDataHash].deposit.toLiteChain) {
|
|
683
|
+
fastFillsReplacingSlowFills.push(relayDataHash);
|
|
684
|
+
}
|
|
685
|
+
}
|
|
686
|
+
_a.label = 2;
|
|
687
|
+
case 2: return [2];
|
|
688
|
+
case 3:
|
|
634
689
|
v3RelayHashes[relayDataHash] = {
|
|
635
690
|
deposit: undefined,
|
|
636
|
-
fill:
|
|
691
|
+
fill: _fill,
|
|
637
692
|
slowFillRequest: undefined,
|
|
638
693
|
};
|
|
639
|
-
if (!(
|
|
640
|
-
if (!exports.INFINITE_FILL_DEADLINE.eq(
|
|
641
|
-
bundleInvalidFillsV3.push(
|
|
694
|
+
if (!(_fill.blockNumber >= destinationChainBlockRange[0])) return [3, 7];
|
|
695
|
+
if (!exports.INFINITE_FILL_DEADLINE.eq(_fill.fillDeadline)) {
|
|
696
|
+
bundleInvalidFillsV3.push(_fill);
|
|
642
697
|
return [2];
|
|
643
698
|
}
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
case 1:
|
|
647
|
-
fillTransaction = _a.sent();
|
|
648
|
-
originRelayer = fillTransaction.from;
|
|
649
|
-
if (!(0, utils_1.isValidEvmAddress)(originRelayer)) {
|
|
650
|
-
bundleInvalidFillsV3.push(fill);
|
|
651
|
-
return [2];
|
|
652
|
-
}
|
|
653
|
-
fill.relayer = originRelayer;
|
|
654
|
-
_a.label = 2;
|
|
655
|
-
case 2: return [4, (0, utils_1.queryHistoricalDepositForFill)(originClient, fill)];
|
|
656
|
-
case 3:
|
|
699
|
+
return [4, (0, utils_1.queryHistoricalDepositForFill)(originClient, _fill)];
|
|
700
|
+
case 4:
|
|
657
701
|
historicalDeposit = _a.sent();
|
|
658
|
-
if (
|
|
659
|
-
|
|
702
|
+
if (!!historicalDeposit.found) return [3, 5];
|
|
703
|
+
bundleInvalidFillsV3.push(_fill);
|
|
704
|
+
return [3, 7];
|
|
705
|
+
case 5:
|
|
706
|
+
matchedDeposit = historicalDeposit.deposit;
|
|
707
|
+
return [4, (0, utils_2.verifyFillRepayment)(_fill, destinationClient.spokePool.provider, matchedDeposit, allChainIds)];
|
|
708
|
+
case 6:
|
|
709
|
+
fill = _a.sent();
|
|
710
|
+
if (!(0, utils_1.isDefined)(fill)) {
|
|
711
|
+
bundleInvalidFillsV3.push(_fill);
|
|
712
|
+
return [2];
|
|
660
713
|
}
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
fastFillsReplacingSlowFills.push(relayDataHash);
|
|
670
|
-
}
|
|
714
|
+
v3RelayHashes[relayDataHash].fill = fill;
|
|
715
|
+
(0, utils_1.assert)(this.getRelayHashFromEvent(matchedDeposit) === relayDataHash, "Relay hashes should match.");
|
|
716
|
+
validatedBundleV3Fills.push(tslib_1.__assign(tslib_1.__assign({}, fill), { quoteTimestamp: matchedDeposit.quoteTimestamp }));
|
|
717
|
+
v3RelayHashes[relayDataHash].deposit = matchedDeposit;
|
|
718
|
+
if (fill.relayExecutionInfo.fillType === interfaces_1.FillType.ReplacedSlowFill &&
|
|
719
|
+
!matchedDeposit.fromLiteChain &&
|
|
720
|
+
!matchedDeposit.toLiteChain) {
|
|
721
|
+
fastFillsReplacingSlowFills.push(relayDataHash);
|
|
671
722
|
}
|
|
672
|
-
_a.label =
|
|
673
|
-
case
|
|
723
|
+
_a.label = 7;
|
|
724
|
+
case 7: return [2];
|
|
674
725
|
}
|
|
675
726
|
});
|
|
676
727
|
}); })];
|
|
@@ -865,7 +916,7 @@ var BundleDataClient = (function () {
|
|
|
865
916
|
var associatedDeposit = v3RelayHashes[_this.getRelayHashFromEvent(fill)].deposit;
|
|
866
917
|
(0, utils_1.assert)((0, utils_1.isDefined)(associatedDeposit), "Deposit should exist in relay hash dictionary.");
|
|
867
918
|
var _b = (0, utils_2.getRefundInformationFromFill)(fill, _this.clients.hubPoolClient, blockRangesForChains, chainIds, associatedDeposit.fromLiteChain), chainToSendRefundTo = _b.chainToSendRefundTo, repaymentToken = _b.repaymentToken;
|
|
868
|
-
updateBundleFillsV3(bundleFillsV3, fill, realizedLpFeePct, chainToSendRefundTo, repaymentToken);
|
|
919
|
+
updateBundleFillsV3(bundleFillsV3, fill, realizedLpFeePct, chainToSendRefundTo, repaymentToken, fill.relayer);
|
|
869
920
|
});
|
|
870
921
|
v3SlowFillLpFees.forEach(function (_a, idx) {
|
|
871
922
|
var lpFeePct = _a.realizedLpFeePct;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BundleDataClient.js","sourceRoot":"","sources":["../../../../src/clients/BundleDataClient/BundleDataClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BundleDataClient.js","sourceRoot":"","sources":["../../../../src/clients/BundleDataClient/BundleDataClient.ts"],"names":[],"mappings":";;;;AAAA,0DAAuB;AACvB,+CAe0B;AAE1B,qCAmBqB;AAErB,iCAaiB;AAGJ,QAAA,sBAAsB,GAAG,mBAAW,CAAC;AAKlD,SAAS,uBAAuB,CAAC,IAA+B,EAAE,OAA2B;;IAE3F,IAAI,IAAA,kBAAU,EAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,IAAA,yBAAiB,EAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC9E,OAAO;KACR;IACO,IAAA,aAAa,GAAiB,OAAO,cAAxB,EAAE,UAAU,GAAK,OAAO,WAAZ,CAAa;IAC9C,IAAI,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,aAAa,CAAC,0CAAG,UAAU,CAAC,CAAA,EAAE;QACxC,IAAA,cAAM,EAAC,IAAI,EAAE,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;KAC/C;IACD,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAsB,EAAE,OAA2B;;IACzE,IAAA,aAAa,GAAiB,OAAO,cAAxB,EAAE,UAAU,GAAK,OAAO,WAAZ,CAAa;IAC9C,IAAI,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,aAAa,CAAC,0CAAG,UAAU,CAAC,CAAA,EAAE;QACxC,IAAA,cAAM,EAAC,IAAI,EAAE,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;KAC/C;IACD,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,mBAAmB,CAC1B,IAAmB,EACnB,IAAqB,EACrB,QAAmB,EACnB,gBAAwB,EACxB,cAAsB,EACtB,gBAAwB;;IAGxB,IAAI,IAAA,kBAAU,EAAC,gBAAgB,CAAC,IAAI,CAAC,IAAA,yBAAiB,EAAC,gBAAgB,CAAC,EAAE;QACxE,OAAO;KACR;IACD,IAAI,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,gBAAgB,CAAC,0CAAG,cAAc,CAAC,CAAA,EAAE;QAC/C,IAAA,cAAM,EAAC,IAAI,EAAE,CAAC,gBAAgB,EAAE,cAAc,CAAC,EAAE;YAC/C,KAAK,EAAE,EAAE;YACT,iBAAiB,EAAE,cAAM;YACzB,cAAc,EAAE,cAAM;YACtB,OAAO,EAAE,EAAE;SACZ,CAAC,CAAC;KACJ;IAED,IAAM,UAAU,yCAAsB,IAAI,KAAE,QAAQ,UAAA,EAAE,OAAO,EAAE,gBAAgB,GAAE,CAAC;IAGlF,IAAA,cAAM,EAAC,IAAI,EAAE,CAAC,gBAAgB,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAGxE,IAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,cAAc,CAAC,CAAC;IACzD,IAAM,aAAa,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC;IAChG,SAAS,CAAC,cAAc,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;IAGlH,IAAI,CAAC,IAAA,kBAAU,EAAC,UAAU,CAAC,EAAE;QAC3B,IAAM,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,4BAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC;QAC9G,SAAS,CAAC,iBAAiB,GAAG,SAAS,CAAC,iBAAiB;YACvD,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC;YAC/C,CAAC,CAAC,YAAY,CAAC;QAGjB,MAAA,SAAS,CAAC,OAAO,oCAAjB,SAAS,CAAC,OAAO,GAAK,EAAE,EAAC;QAEzB,IAAI,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YACzC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;SACjG;aAAM;YACL,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC;SACtD;KACF;AACH,CAAC;AAED,SAAS,2BAA2B,CAClC,IAA2B,EAC3B,OAAqD;;IAE7C,IAAA,kBAAkB,GAAkB,OAAO,mBAAzB,EAAE,WAAW,GAAK,OAAO,YAAZ,CAAa;IACpD,IAAI,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,kBAAkB,CAAC,0CAAG,WAAW,CAAC,CAAA,EAAE;QAC9C,IAAA,cAAM,EAAC,IAAI,EAAE,CAAC,kBAAkB,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;KACrD;IACD,IAAI,CAAC,kBAAkB,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAqB,EAAE,OAAqD;;IACjG,IAAA,kBAAkB,GAAkB,OAAO,mBAAzB,EAAE,WAAW,GAAK,OAAO,YAAZ,CAAa;IACpD,IAAI,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,kBAAkB,CAAC,0CAAG,WAAW,CAAC,CAAA,EAAE;QAC9C,IAAA,cAAM,EAAC,IAAI,EAAE,CAAC,kBAAkB,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;KACrD;IACD,IAAI,CAAC,kBAAkB,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACtD,CAAC;AAGD;IAOE,0BACW,MAAsB,EACtB,OAAgB,EAChB,gBAAwD,EACxD,0CAAoD,EACpD,wBAA4D;QAA5D,yCAAA,EAAA,6BAA4D;QAJ5D,WAAM,GAAN,MAAM,CAAgB;QACtB,YAAO,GAAP,OAAO,CAAS;QAChB,qBAAgB,GAAhB,gBAAgB,CAAwC;QACxD,+CAA0C,GAA1C,0CAA0C,CAAU;QACpD,6BAAwB,GAAxB,wBAAwB,CAAoC;QAX/D,kBAAa,GAAc,EAAE,CAAC;QAC9B,qBAAgB,GAA6D,EAAE,CAAC;QAEhF,yBAAoB,GAAoD,EAAE,CAAC;IAShF,CAAC;IAIJ,qCAAU,GAAV;QACE,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;IAC1B,CAAC;IAEa,4CAAiB,GAA/B,UAAgC,GAAW;;;;;;wBAGlC,KAAA,CAAA,KAAA,gBAAC,CAAA,CAAC,SAAS,CAAA;wBAAC,WAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAA;4BAAhD,WAAO,cAAY,SAA6B,EAAC,EAAC;;;;KACnD;IAED,uDAA4B,GAA5B,UAA6B,GAAW;QACtC,IAAI,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE;YAClC,OAAO,gBAAC,CAAC,SAAS,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC;SACpD;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,qDAA0B,GAA1B,UAA2B,GAAW,EAAE,UAA2C;QACjF,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC;IAC9C,CAAC;IAEM,oCAAmB,GAA1B,UAA2B,oBAAgC;QAKzD,OAAO,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC/C,CAAC;IAEO,wDAA6B,GAArC,UAAsC,oBAAgC;QACpE,OAAO,kBAAW,gBAAgB,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,CAAE,CAAC;IACjF,CAAC;IAEa,uDAA4B,GAA1C,UACE,oBAAgC;;;;;;;wBAEhC,IAAI,CAAC,IAAA,iBAAS,EAAC,MAAA,IAAI,CAAC,OAAO,0CAAE,aAAa,CAAC,EAAE;4BAC3C,WAAO,SAAS,EAAC;yBAClB;wBACK,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBACV,WAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAC/D,IAAI,CAAC,6BAA6B,CAAC,oBAAoB,CAAC,EACxD,oBAAY,CACb,EAAA;;wBAHK,aAAa,GAAG,SAGrB;wBAGD,IAAI,CAAC,IAAA,iBAAS,EAAC,aAAa,CAAC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;4BACzD,WAAO,SAAS,EAAC;yBAClB;wBAIK,yCAAyC,GAAG,UAChD,IAAoD;4BAEpD,OAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CACtB,UAAC,GAAG,EAAE,OAAO;gCACX,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;gCACrC,OAAO,GAAG,CAAC;4BACb,CAAC,EACD,EAAoD,CACrD;wBAND,CAMC,CAAC;wBAEE,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;wBAC7B,UAAU,GAAG;4BACjB,aAAa,EAAE,yCAAyC,CAAC,IAAI,CAAC,aAAa,CAAC;4BAC5E,yBAAyB,EAAE,yCAAyC,CAAC,IAAI,CAAC,yBAAyB,CAAC;4BACpG,gBAAgB,EAAE,yCAAyC,CAAC,IAAI,CAAC,gBAAgB,CAAC;4BAClF,qBAAqB,EAAE,yCAAyC,CAAC,IAAI,CAAC,qBAAqB,CAAC;4BAC5F,iBAAiB,EAAE,yCAAyC,CAAC,IAAI,CAAC,iBAAiB,CAAC;yBACrF,CAAC;wBACF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,+CAA+C;4BACnD,OAAO,EAAE,gDAAyC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,IAAI,OAAI;4BAClG,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;4BACjD,UAAU,EAAE,IAAA,oCAA4B,EACtC,UAAU,CAAC,gBAAgB,EAC3B,UAAU,CAAC,aAAa,EACxB,EAAE,EACF,UAAU,CAAC,iBAAiB,EAC5B,UAAU,CAAC,yBAAyB,EACpC,UAAU,CAAC,qBAAqB,CACjC;yBACF,CAAC,CAAC;wBACH,WAAO,UAAU,EAAC;;;;KACnB;IAGK,4DAAiC,GAAvC;;;;;;wBACQ,OAAO,GAAG,EAAE,CAAC;wBACnB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE;4BACzC,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAC;yBACnG;wBAEK,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,gCAAgC,CACxE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAC/C,CAAC;6BACE,CAAA,MAAM,KAAK,SAAS,CAAA,EAApB,cAAoB;wBACtB,KAAA,CAAA,KAAA,OAAO,CAAA,CAAC,IAAI,CAAA;wBAAC,WAAM,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,EAAA;;wBAA3D,cAAa,SAA8C,EAAC,CAAC;;4BAE/D,WAAO,OAAO,EAAC;;;;KAChB;IAIK,sDAA2B,GAAjC,UAAkC,MAA0B;;;;;;;wBACpD,2BAA2B,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,6BAA6B,CAC1F,IAAI,CAAC,0CAA0C,EAC/C,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,EAC9C,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CACnC,CAAC;wBACI,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,2BAA2B,CAAC,CAAC;wBAGjG,2BAA2B,GAAG,IAAA,mCAA2B,EAC7D,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAC9B,MAAM,CACP,CAAC;wBAMkB,WAAM,IAAI,CAAC,eAAe,CAAC,2BAA2B,CAAC,EAAA;;wBAArE,WAAW,GAAG,SAAuD;6BACvE,CAAA,WAAW,KAAK,SAAS,CAAA,EAAzB,cAAyB;wBACT,WAAM,IAAI,CAAC,kCAAkC,CAAC,QAAQ,EAAE,2BAA2B,CAAC,EAAA;;wBAAtG,eAAe,GAAG,SAAoF,CAAC;;;wBAE/F,aAAa,GAAgC,WAAW,cAA3C,EAAE,yBAAyB,GAAK,WAAW,0BAAhB,CAAiB;wBACjE,eAAe,GAAG,IAAA,4BAAoB,EAAC,aAAa,EAAE,yBAAyB,CAAC,CAAC;wBAKjF,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,UAAC,OAAO;4BAC3C,IAAI,KAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,SAAS,EAAE;gCACxD,OAAO,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;6BACzC;wBACH,CAAC,CAAC,CAAC;;4BAKL,WAAO,IAAI,CAAC,qBAAqB,CAAC,eAAe,EAAE,MAAM,CAAC,EAAC;;;;KAC5D;IAGK,6DAAkC,GAAxC,UAAyC,QAAkB,EAAE,WAAuB;;;;;;;wBAC5E,eAAe,GAAoB,EAAE,CAAC;4CACjC,OAAO;;;;;wCAChB,IAAI,OAAK,gBAAgB,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE;;yCAEjD;wCACK,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;wCACxB,WAAM,IAAA,mBAAW,EAAC,OAAK,gBAAgB,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,UAAO,IAAI;;;;;4DAC3F,IAAI,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;gEAClG,WAAO,KAAK,EAAC;6DACd;4DAGD,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,SAAS,EAAE;gEAC3D,WAAO,KAAK,EAAC;6DACd;4DACK,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;4DACvF,kBAAkB,GACtB,eAAe,KAAK,SAAS;gEAC7B,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;iEAC/E,kBAAkB,EAAlB,cAAkB;4DACG,WAAM,IAAA,2BAAmB,EAC9C,IAAI,EACJ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,SAAS,CAAC,QAAQ,EACjE,eAAe,EAGf,IAAI,CAAC,OAAO,CAAC,iBAAiB;qEAC3B,yBAAyB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;qEAC5C,MAAM,CAAC,UAAC,QAAQ,EAAE,CAAC,IAAK,OAAA,CAAC,IAAA,uBAAe,EAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAhC,CAAgC,CAAC,CAC7D,EAAA;;4DATK,cAAc,GAAG,SAStB;4DACD,IAAI,CAAC,IAAA,iBAAS,EAAC,cAAc,CAAC,EAAE;gEAC9B,WAAO,KAAK,EAAC;6DACd;;gEAEH,WAAO,kBAAkB,EAAC;;;iDAC3B,CAAC,EAAA;;wCA7BI,YAAY,GAAG,SA6BnB;wCACF,YAAY,CAAC,OAAO,CAAC,UAAC,IAAI;;;4CACxB,IAAM,eAAe,GAAG,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;4CAC7F,IAAA,cAAM,EAAC,IAAA,iBAAS,EAAC,eAAe,CAAC,EAAE,6BAA6B,CAAC,CAAC;4CAC5D,IAAA,KAA0C,IAAA,oCAA4B,EAC1E,IAAI,EACJ,KAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,WAAW,EACX,KAAI,CAAC,0CAA0C,EAC/C,eAAgB,CAAC,aAAa,CAC/B,EANO,mBAAmB,yBAAA,EAAE,cAAc,oBAM1C,CAAC;4CAKM,IAAA,OAAO,GAAgC,IAAI,QAApC,EAAe,YAAY,GAAK,IAAI,YAAT,CAAU;4CACpD,MAAA,eAAe,CAAC,mBAAmB,qCAAnC,eAAe,CAAC,mBAAmB,IAAM,EAAE,EAAC;4CAC5C,YAAA,eAAe,CAAC,mBAAmB,CAAC,EAAC,cAAc,wCAAd,cAAc,IAAM,EAAE,EAAC;4CAC5D,IAAM,oBAAoB,GAAG,MAAA,eAAe,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,mCAAI,cAAM,CAAC;4CACrG,eAAe,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,GAAG,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;wCACzG,CAAC,CAAC,CAAC;;;;;;8BAtDyB,EAAR,qBAAQ;;;6BAAR,CAAA,sBAAQ,CAAA;wBAAnB,OAAO;2CAAP,OAAO;;;;;wBAAI,IAAQ,CAAA;;4BAwD9B,WAAO,eAAe,EAAC;;;;KACxB;IAED,mDAAwB,GAAxB,UAAyB,OAAe,EAAE,OAAe,EAAE,mBAA2B;QACpF,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE;YAChD,OAAO,IAAA,YAAI,EAAC,CAAC,CAAC,CAAC;SAChB;QACD,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;aAClC,WAAW,EAAE;aACb,MAAM,CAAC,UAAC,OAAO,IAAK,OAAA,OAAO,CAAC,WAAW,GAAG,mBAAmB,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,EAA3E,CAA2E,CAAC;aAChG,MAAM,CAAC,UAAC,GAAG,EAAE,OAAO;YACnB,OAAO,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACtC,CAAC,EAAE,IAAA,YAAI,EAAC,CAAC,CAAC,CAAC,CAAC;IAChB,CAAC;IAEa,sDAA2B,GAAzC;;;;;;;wBACQ,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;wBAM3C,iBAAiB,GAAG,IAAA,mCAA2B,EACnD,aAAa,EACb,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAC9B,aAAa,CAAC,kBAAkB,EAAE;4BAChC,CAAC,CAAC,aAAa,CAAC,2BAA2B,EAAE;4BAC7C,CAAC,CAAC,aAAa,CAAC,gCAAgC,CAAC,aAAa,CAAC,mBAAmB,CAAE,CACvF,CAAC;;4BAEA,WAAW,EAAE,iBAAiB;;wBAClB,WAAM,IAAI,CAAC,QAAQ,CAC7B,iBAAiB,EACjB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CACL,EAAA;4BANH,YAEE,aAAU,GAAE,SAIX;iCACD;;;;KACH;IAEK,qDAA0B,GAAhC;;;;;4BACsC,WAAM,IAAI,CAAC,2BAA2B,EAAE,EAAA;;wBAAtE,KAA8B,SAAwC,EAApE,UAAU,gBAAA,EAAE,WAAW,iBAAA;wBACzB,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;wBACpC,WAAM,IAAA,+BAAuB,EACxC,aAAa,CAAC,mBAAmB,EACjC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACjB,UAAU,CAAC,gBAAgB,EAC3B,UAAU,CAAC,aAAa,EACxB,UAAU,CAAC,iBAAiB,EAC5B,UAAU,CAAC,qBAAqB,EAChC,UAAU,CAAC,yBAAyB,EACpC;gCACE,aAAa,eAAA;gCACb,iBAAiB,EAAE,aAAa,CAAC,iBAA4C;6BAC9E,CACF,EAAA;;wBAZK,IAAI,GAAG,SAYZ;wBACD,WAAO;gCACL,IAAI,MAAA;gCACJ,WAAW,aAAA;6BACZ,EAAC;;;;KACH;IAQK,+CAAoB,GAA1B;;YAsBE,SAAS,kBAAkB,CAAC,mBAA+B;gBACzD,OAAO,uBAAuB,CAAC,GAAG,CAAC,UAAC,UAAU,EAAE,KAAK;;oBAInD,IAAM,iBAAiB,GAAG,MAAA,mBAAmB,CAAC,KAAK,CAAC,mCAAI,UAAU,CAAC;oBAEnE,IAAI,iBAAiB,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC,CAAC,EAAE;wBACjD,OAAO,iBAAiB,CAAC;qBAC1B;oBAID,IAAI,CAAC,IAAA,iBAAS,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE;wBACtE,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;qBACrD;oBAID,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnD,CAAC,CAAC,CAAC;YACL,CAAC;;;;;wBA1CK,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;wBAC3C,2BAA2B,GAAG,aAAa,CAAC,6BAA6B,CAC7E,IAAI,CAAC,0CAA0C,EAC/C,aAAa,CAAC,mBAAmB,EACjC,aAAa,CAAC,OAAO,CACtB,CAAC;wBACI,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,2BAA2B,CAAC,CAAC;wBACjG,eAAe,GAAsB,EAAE,CAAC;wBAI1C,uBAAuB,GAAG,IAAA,2CAAmC,EAC/D,QAAQ,EACR,IAAI,CAAC,gBAAgB,EACrB,IAAA,0BAAkB,EAAC,QAAQ,EAAE,IAAI,CAAC,wBAAwB,CAAC,EAC3D,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,EAC9C,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAChG,CAAC;6BA4BE,aAAa,CAAC,kBAAkB,EAAE,EAAlC,cAAkC;wBAC9B,wBAAwB,GAAG,IAAA,mCAA2B,EAC1D,aAAa,EACb,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAC9B,aAAa,CAAC,2BAA2B,EAAE,CAC5C,CAAC;wBAIkB,WAAM,IAAI,CAAC,eAAe,CAAC,wBAAwB,CAAC,EAAA;;wBAAlE,WAAW,GAAG,SAAoD;6BACpE,CAAA,WAAW,KAAK,SAAS,CAAA,EAAzB,cAAyB;wBAC3B,KAAA,CAAA,KAAA,eAAe,CAAA,CAAC,IAAI,CAAA;wBAAC,WAAM,IAAI,CAAC,kCAAkC,CAAC,QAAQ,EAAE,wBAAwB,CAAC,EAAA;;wBAAtG,cAAqB,SAAiF,EAAC,CAAC;;;wBAEhG,aAAa,GAAgC,WAAW,cAA3C,EAAE,yBAAyB,GAAK,WAAW,0BAAhB,CAAiB;wBACjE,eAAe,CAAC,IAAI,CAAC,IAAA,4BAAoB,EAAC,aAAa,EAAE,yBAAyB,CAAC,CAAC,CAAC;;;wBAIvF,uBAAuB,GAAG,kBAAkB,CAAC,wBAAwB,CAAC,CAAC;;;wBAOnE,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBAChC,KAAA,CAAA,KAAA,eAAe,CAAA,CAAC,IAAI,CAAA;wBAAC,WAAM,IAAI,CAAC,kCAAkC,CAAC,QAAQ,EAAE,uBAAuB,CAAC,EAAA;;wBAArG,cAAqB,SAAgF,EAAC,CAAC;wBACvG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,uCAAuC;4BAC3C,OAAO,EAAE,yDAAkD,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,IAAI,OAAI;4BAC3G,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC;yBACrD,CAAC,CAAC;wBACH,WAAO,eAAe,EAAC;;;;KACxB;IAGD,6CAAkB,GAAlB,UACE,eAAgC,EAChC,iBAAyB;QAMzB,IAAI,CAAC,IAAA,iBAAS,EAAC,eAAe,CAAC,EAAE;YAC/B,OAAO,EAAE,CAAC;SACX;QAID,IAAM,MAAM,GAAG,gBAAC,CAAC,QAAQ,CACvB,eAAe,CAAC,mBAAmB,EAAE,EACrC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,iBAAiB,KAAK,iBAAiB,EAA9C,CAA8C,CAC3D,CAAC;QACF,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,OAAO,EAAE,CAAC;SACX;QAED,IAAM,oBAAoB,GAAG,eAAe;aACzC,0BAA0B,EAAE;aAC5B,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,YAAY,KAAK,MAAM,CAAC,YAAY,EAAzC,CAAyC,CAAC,CAAC;QAC/D,IAAM,eAAe,GAAiE,EAAE,CAAC;QACzF,KAAyB,UAAoB,EAApB,6CAAoB,EAApB,kCAAoB,EAApB,IAAoB,EAAE;YAA1C,IAAM,UAAU,6BAAA;YACnB,IAAM,YAAY,GAAG,UAAU,CAAC,cAAc,CAAC;YAC/C,IAAI,eAAe,CAAC,YAAY,CAAC,KAAK,SAAS,EAAE;gBAC/C,eAAe,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;aACpC;YACD,IAAM,oBAAoB,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;YAE3D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC1D,IAAM,OAAO,GAAG,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;gBAC9C,IAAM,YAAY,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;gBACjD,IAAI,oBAAoB,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE;oBAC/C,oBAAoB,CAAC,OAAO,CAAC,GAAG,cAAM,CAAC;iBACxC;gBACD,oBAAoB,CAAC,OAAO,CAAC,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;aACjF;SACF;QACD,OAAO,eAAe,CAAC;IACzB,CAAC;IAGO,gDAAqB,GAA7B,UACE,UAA2B,EAC3B,uBAA2C;QAE3C,KAAyB,UAAuB,EAAvB,KAAA,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAvB,cAAuB,EAAvB,IAAuB,EAAE;YAA7C,IAAM,UAAU,SAAA;YACnB,IAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;YACnC,IAAI,CAAC,IAAA,iBAAS,EAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,EAAE;gBAC9C,SAAS;aACV;YACD,IAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAC7C,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAC9B,uBAAuB,CAAC,iBAAiB,CAC1C,CAAC;YAEF,KAA2B,UAAgC,EAAhC,KAAA,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAhC,cAAgC,EAAhC,IAAgC,EAAE;gBAAxD,IAAM,YAAY,SAAA;gBACrB,IAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC;gBAClD,IAAI,eAAe,CAAC,YAAY,CAAC,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,EAAE;oBACxE,SAAS;iBACV;gBAED,KAAsB,UAAoB,EAApB,KAAA,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAApB,cAAoB,EAApB,IAAoB,EAAE;oBAAvC,IAAM,OAAO,SAAA;oBAChB,IAAM,cAAc,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC;oBAC9D,IAAI,cAAc,KAAK,SAAS,EAAE;wBAChC,SAAS;qBACV;oBAGD,OAAO,CAAC,OAAO,CAAC,GAAG,cAAM,CAAC;iBAC3B;aACF;SACF;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,wCAAa,GAAb,UAAc,aAA8B,EAAE,OAAe,EAAE,OAAe,EAAE,KAAa;QAC3F,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,EAAE;YAC7D,OAAO,iBAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC1B;QACD,IAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC;QACjD,OAAO,UAAU,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,iBAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,yCAAc,GAAd,UAAe,OAA0B,EAAE,OAAe,EAAE,OAAe,EAAE,WAAmB;QAAhG,iBAIC;QAHC,OAAO,OAAO,CAAC,MAAM,CAAC,UAAC,WAAW,EAAE,OAAO;YACzC,OAAO,WAAW,CAAC,GAAG,CAAC,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;QACrF,CAAC,EAAE,cAAM,CAAC,CAAC;IACb,CAAC;IAEa,0CAAe,GAA7B,UAA8B,oBAAgC;;;;;;wBACtD,UAAU,GAAG,IAAI,CAAC,6BAA6B,CAAC,oBAAoB,CAAC,CAAC;wBAE5E,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE;4BACtC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,4BAA4B,CAAC,oBAAoB,CAAC,CAAC;yBAC7F;wBACmB,KAAA,CAAA,KAAA,gBAAC,CAAA,CAAC,SAAS,CAAA;wBAAC,WAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAA;;wBAAjE,WAAW,GAAG,cAAY,SAAuC,EAAC;wBACxE,WAAO,WAAY,EAAC;;;;KACrB;IAKK,mCAAQ,GAAd,UACE,oBAAgC,EAChC,gBAAyC,EACzC,kBAA0B;QAA1B,mCAAA,EAAA,0BAA0B;;;;;;wBAEpB,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;6BAE7C,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAxB,cAAwB;wBACtB,WAAW,SAAA,CAAC;6BACZ,kBAAkB,EAAlB,cAAkB;wBACN,WAAM,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,EAAA;;wBAA9D,WAAW,GAAG,SAAgD,CAAC;;;wBAE/D,WAAW,GAAG,SAAS,CAAC;;;wBAEpB,IAAI,GAAG,IAAA,iBAAS,EAAC,WAAW,CAAC;4BACjC,CAAC;gCAEC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;4BAC9B,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;wBACrE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;;4BAGjC,WAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAC;;;;KACpC;IAEa,8CAAmB,GAAjC,UACE,oBAAgC,EAChC,gBAAyC;;;;;;;wBAErC,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBACxB,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;wBAEjD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,EAAE;4BAC7C,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;yBAClD;6BAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE;4BAChD,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;yBAC9C;wBAEK,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBAEtG,IAAI,oBAAoB,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE;4BACjD,MAAM,IAAI,KAAK,CACb,gDAAyC,oBAAoB,CAAC,MAAM,4BAAkB,QAAQ,CAAC,MAAM,CAAE,CACxG,CAAC;yBACH;wBAGK,gBAAgB,GAAqB,EAAE,CAAC;wBACxC,aAAa,GAAkB,EAAE,CAAC;wBAClC,oBAAoB,GAAsB,EAAE,CAAC;wBAC7C,iBAAiB,GAAoB,EAAE,CAAC;wBAExC,yBAAyB,GAA8B,EAAE,CAAC;wBAE1D,qBAAqB,GAA0B,EAAE,CAAC;wBAMlD,gBAAgB,GAAG,UAAC,OAAe;4BACvC,IAAM,kBAAkB,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;4BAC1F,OAAO,IAAA,uBAAe,EAAC,kBAAkB,CAAC,CAAC;wBAC7C,CAAC,CAAC;wBAGI,WAAW,GAAG,oBAAoB;6BACrC,GAAG,CAAC,UAAC,WAAW,EAAE,KAAK,IAAK,OAAA,QAAQ,CAAC,KAAK,CAAC,EAAf,CAAe,CAAC;6BAC5C,MAAM,CAAC,UAAC,OAAO,IAAK,OAAA,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,gBAAgB,CAAC,OAAO,CAAC,KAAK,SAAS,EAArE,CAAqE,CAAC,CAAC;wBAC9F,WAAW,CAAC,OAAO,CAAC,UAAC,OAAO;4BAC1B,IAAM,eAAe,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;4BAClD,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE;gCAC9B,MAAM,IAAI,KAAK,CAAC,oCAA6B,OAAO,kBAAe,CAAC,CAAC;6BACtE;wBACH,CAAC,CAAC,CAAC;wBAMG,uBAAuB,GAAG,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC;wBACnE,qBAAqB,GAAoC,EAAE,CAAC;6BAC5D,CAAC,uBAAuB,EAAxB,cAAwB;wBACF,WAAM,IAAI,CAAC,wBAAwB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,gBAAgB,CAAC,EAAA;;wBAA7G,qBAAqB,GAAG,SAAqF,CAAC;wBAC9G,IAAI,CAAC,0BAA0B,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC;wBAC5D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,2BAA2B;4BAC/B,OAAO,EAAE,yBAAyB;4BAClC,qBAAqB,uBAAA;4BACrB,oBAAoB,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;yBAC3D,CAAC,CAAC;;;wBAEH,qBAAqB,GAAG,uBAAuB,CAAC;;;wBA2D5C,aAAa,GAUf,EAAE,CAAC;wBAID,0BAA0B,GAAgB,IAAI,GAAG,EAAU,CAAC;wBAE5D,kBAAkB,GAAgB,IAAI,GAAG,EAAU,CAAC;wBAEtD,cAAc,GAAG,CAAC,CAAC;4CACZ,aAAa;4BACtB,IAAM,YAAY,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;4BACrD,IAAM,qBAAqB,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;oDAExF,kBAAkB;gCAC3B,IAAI,aAAa,KAAK,kBAAkB,EAAE;;iCAEzC;gCACD,YAAY,CAAC,8BAA8B,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,UAAC,OAAO;oCAC9E,IAAI,IAAA,0BAAkB,EAAC,OAAO,CAAC,EAAE;wCAC/B,OAAO;qCACR;oCACD,cAAc,EAAE,CAAC;oCACjB,IAAM,aAAa,GAAG,KAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;oCAC1D,IAAI,aAAa,CAAC,aAAa,CAAC,EAAE;wCAGhC,OAAO;qCACR;oCAGD,aAAa,CAAC,aAAa,CAAC,GAAG;wCAC7B,OAAO,EAAE,OAAO;wCAChB,IAAI,EAAE,SAAS;wCACf,eAAe,EAAE,SAAS;qCAC3B,CAAC;oCAMF,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;wCAC7B,OAAO;qCACR;oCAQD,IAAI,OAAO,CAAC,WAAW,IAAI,qBAAqB,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,WAAW,IAAI,qBAAqB,CAAC,CAAC,CAAC,EAAE;wCAEtG,sBAAsB,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;wCAKlD,IAAI,OAAO,CAAC,YAAY,GAAG,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE;4CACvE,0BAA0B,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;yCAC/C;qCACF;yCAAM,IAAI,OAAO,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,EAAE;wCACzD,kBAAkB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;qCACvC;gCACH,CAAC,CAAC,CAAC;;4BAlDL,KAAiC,UAAW,EAAX,2BAAW,EAAX,yBAAW,EAAX,IAAW;gCAAvC,IAAM,kBAAkB,oBAAA;wCAAlB,kBAAkB;6BAmD5B;;wBAvDH,WAAuC,EAAX,2BAAW,EAAX,yBAAW,EAAX,IAAW;4BAA5B,aAAa;oCAAb,aAAa;yBAwDvB;wBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,2BAA2B;4BAC/B,OAAO,EAAE,oBAAa,cAAc,0BAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,QAAK;yBACnF,CAAC,CAAC;wBACH,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBAGpB,sBAAsB,GAAqD,EAAE,CAAC;wBAC9E,wBAAwB,GAAyB,EAAE,CAAC;wBACpD,oCAAoC,GAAyB,EAAE,CAAC;wBAClE,WAAW,GAAG,CAAC,CAAC;4CACT,aAAa;;;;;wCAChB,YAAY,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;4DAC1C,kBAAkB;;;;;wDAC3B,IAAI,aAAa,KAAK,kBAAkB,EAAE;;yDAEzC;wDAEK,iBAAiB,GAAG,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;wDACzD,0BAA0B,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;wDAIvG,2BAA2B,GAAa,EAAE,CAAC;wDACjD,WAAM,IAAA,oBAAY,EAChB,iBAAiB;iEACd,sBAAsB,CAAC,aAAa,CAAC;iEAIrC,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,IAAA,0BAAkB,EAAC,IAAI,CAAC,EAA9E,CAA8E,CAAC,EACnG,UAAO,KAAK;;;;;4EACV,WAAW,EAAE,CAAC;4EACR,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;iFACpD,aAAa,CAAC,aAAa,CAAC,EAA5B,cAA4B;iFAC1B,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,EAAlC,cAAkC;4EACpC,IAAA,cAAM,EACJ,IAAA,iBAAS,EAAC,aAAa,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,EAC/C,gDAAgD,CACjD,CAAC;4EAGW,WAAM,IAAA,2BAAmB,EACpC,KAAK,EACL,iBAAiB,CAAC,SAAS,CAAC,QAAQ,EACpC,aAAa,CAAC,aAAa,CAAC,CAAC,OAAQ,EACrC,WAAW,CACZ,EAAA;;4EALK,IAAI,GAAG,SAKZ;4EACD,IAAI,CAAC,IAAA,iBAAS,EAAC,IAAI,CAAC,EAAE;gFACpB,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gFACjC,WAAO;6EACR;4EAID,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;4EACzC,IAAI,IAAI,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,EAAE;gFACrD,sBAAsB,CAAC,IAAI,uCACtB,IAAI,KACP,cAAc,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC,OAAQ,CAAC,cAAc,IACpE,CAAC;gFAKH,IACE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,KAAK,qBAAQ,CAAC,gBAAgB;oFAC9D,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,OAAQ,CAAC,aAAa;oFACpD,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,OAAQ,CAAC,WAAW,EAClD;oFACA,2BAA2B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;iFACjD;6EACF;;gFAEH,WAAO;;4EAKT,aAAa,CAAC,aAAa,CAAC,GAAG;gFAC7B,OAAO,EAAE,SAAS;gFAClB,IAAI,EAAE,KAAK;gFACX,eAAe,EAAE,SAAS;6EAC3B,CAAC;iFAUE,CAAA,KAAK,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,CAAA,EAAlD,cAAkD;4EAIpD,IAAI,CAAC,8BAAsB,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;gFAClD,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gFACjC,WAAO;6EACR;4EAIyB,WAAM,IAAA,qCAA6B,EAAC,YAAY,EAAE,KAAK,CAAC,EAAA;;4EAA5E,iBAAiB,GAAG,SAAwD;iFAC9E,CAAC,iBAAiB,CAAC,KAAK,EAAxB,cAAwB;4EAC1B,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;;4EAE3B,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC;4EACpC,WAAM,IAAA,2BAAmB,EACpC,KAAK,EACL,iBAAiB,CAAC,SAAS,CAAC,QAAQ,EACpC,cAAc,EACd,WAAW,CACZ,EAAA;;4EALK,IAAI,GAAG,SAKZ;4EACD,IAAI,CAAC,IAAA,iBAAS,EAAC,IAAI,CAAC,EAAE;gFACpB,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gFACjC,WAAO;6EACR;4EACD,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;4EAMzC,IAAA,cAAM,EAAC,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,aAAa,EAAE,4BAA4B,CAAC,CAAC;4EACnG,sBAAsB,CAAC,IAAI,uCACtB,IAAI,KACP,cAAc,EAAE,cAAc,CAAC,cAAc,IAC7C,CAAC;4EACH,aAAa,CAAC,aAAa,CAAC,CAAC,OAAO,GAAG,cAAc,CAAC;4EAEtD,IACE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,KAAK,qBAAQ,CAAC,gBAAgB;gFAC9D,CAAC,cAAc,CAAC,aAAa;gFAC7B,CAAC,cAAc,CAAC,WAAW,EAC3B;gFACA,2BAA2B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;6EACjD;;;;;iEAGN,CACF,EAAA;;wDAtHD,SAsHC,CAAC;wDAEF,WAAM,IAAA,oBAAY,EAChB,iBAAiB;iEACd,iCAAiC,CAAC,aAAa,CAAC;iEAChD,MAAM,CAAC,UAAC,OAAO,IAAK,OAAA,OAAO,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,IAAA,0BAAkB,EAAC,OAAO,CAAC,EAApF,CAAoF,CAAC,EAC5G,UAAO,eAAyC;;;;;;4EACxC,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;4EAElE,IAAI,aAAa,CAAC,aAAa,CAAC,EAAE;gFAChC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,eAAe,EAAE;oFAGjD,aAAa,CAAC,aAAa,CAAC,CAAC,eAAe,GAAG,eAAe,CAAC;oFAC/D,IAAI,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE;wFAGrC,WAAO;qFACR;oFACD,IAAA,cAAM,EACJ,IAAA,iBAAS,EAAC,aAAa,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,EAC/C,gDAAgD,CACjD,CAAC;oFAEI,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC,OAAQ,CAAC;oFAG7D,IACE,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAC7C,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,WAAW,EAC1B,cAAc,CAAC,kBAAkB,EACjC,cAAc,CAAC,gBAAgB,CAChC,EACD;wFACA,WAAO;qFACR;oFAGD,IACE,CAAA,MAAA,aAAa,CAAC,aAAa,CAAC,CAAC,OAAO,0CAAE,aAAa;yFACnD,MAAA,aAAa,CAAC,aAAa,CAAC,CAAC,OAAO,0CAAE,WAAW,CAAA,EACjD;wFACA,WAAO;qFACR;oFAKD,IACE,eAAe,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC;wFAE5D,eAAe,CAAC,YAAY,IAAI,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAC5E;wFAGA,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;qFAC/C;iFACF;gFACD,WAAO;6EACR;4EAGD,aAAa,CAAC,aAAa,CAAC,GAAG;gFAC7B,OAAO,EAAE,SAAS;gFAClB,IAAI,EAAE,SAAS;gFACf,eAAe,EAAE,eAAe;6EACjC,CAAC;iFAeA,CAAA,8BAAsB,CAAC,EAAE,CAAC,eAAe,CAAC,YAAY,CAAC;gFACvD,eAAe,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,CAAA,EAD5D,cAC4D;4EAElC,WAAM,IAAA,qCAA6B,EAAC,YAAY,EAAE,eAAe,CAAC,EAAA;;4EAAtF,iBAAiB,GAAG,SAAkE;4EAC5F,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE;gFAE5B,WAAO;6EACR;4EACK,cAAc,GAAuB,iBAAiB,CAAC,OAAO,CAAC;4EAKrE,IAAA,cAAM,EACJ,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,aAAa,EAC5D,oCAAoC,CACrC,CAAC;4EAGF,IAAI,cAAc,CAAC,aAAa,IAAI,cAAc,CAAC,WAAW,EAAE;gFAC9D,WAAO;6EACR;4EAED,aAAa,CAAC,aAAa,CAAC,CAAC,OAAO,GAAG,cAAc,CAAC;4EAKtD,IAEE,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAC7C,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,WAAW,EAC1B,cAAc,CAAC,kBAAkB,EACjC,cAAc,CAAC,gBAAgB,CAChC;gFAED,eAAe,CAAC,YAAY,GAAG,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAC3E;gFAEA,WAAO;6EACR;4EACD,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;;;;;iEAEjD,CACF,EAAA;;wDA/HD,SA+HC,CAAC;wDAKF,2BAA2B,CAAC,OAAO,CAAC,UAAC,aAAa;4DAC1C,IAAA,KAAqC,aAAa,CAAC,aAAa,CAAC,EAA/D,OAAO,aAAA,EAAE,eAAe,qBAAA,EAAE,IAAI,UAAiC,CAAC;4DACxE,IAAA,cAAM,EACJ,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,CAAC,QAAQ,MAAK,qBAAQ,CAAC,gBAAgB,EAC/D,uCAAuC,CACxC,CAAC;4DAEF,IAAI,CAAC,OAAO,EAAE;gEACZ,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;6DACnE;4DAED,IAAA,cAAM,EACJ,CAAC,OAAO,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,WAAW,EAC9C,oEAAoE,CACrE,CAAC;4DACF,IAAM,qBAAqB,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;4DACxG,IAIE,KAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAC5C,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,kBAAkB,EAC1B,OAAO,CAAC,gBAAgB,CACzB;gEAGD,CAAC,CAAC,eAAe,IAAI,eAAe,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAC5E;gEACA,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;6DACpD;wDACH,CAAC,CAAC,CAAC;;;;;8CAxSuC,EAAX,2BAAW;;;6CAAX,CAAA,yBAAW,CAAA;wCAAjC,kBAAkB;2DAAlB,kBAAkB;;;;;wCAAI,IAAW,CAAA;;;;;;8BAFP,EAAX,2BAAW;;;6BAAX,CAAA,yBAAW,CAAA;wBAA5B,aAAa;2CAAb,aAAa;;;;;wBAAI,IAAW,CAAA;;;wBA6SvC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,2BAA2B;4BAC/B,OAAO,EAAE,oBAAa,WAAW,uBAAa,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,QAAK;yBAC7E,CAAC,CAAC;wBACH,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBAI1B,0BAA0B,CAAC,OAAO,CAAC,UAAC,aAAa;4BACzC,IAAA,KAAoB,aAAa,CAAC,aAAa,CAAC,EAA9C,OAAO,aAAA,EAAE,IAAI,UAAiC,CAAC;4BACvD,IAAA,cAAM,EAAC,IAAA,iBAAS,EAAC,OAAO,CAAC,EAAE,gDAAgD,CAAC,CAAC;4BAC7E,IACE,CAAC,IAAI;gCACL,IAAA,iBAAS,EAAC,OAAO,CAAC,EAClB;gCACA,uBAAuB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;6BAC7D;wBACH,CAAC,CAAC,CAAC;wBAKH,WAAM,IAAA,oBAAY,EAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,UAAO,aAAa;;;;;4CAC/D,KAAqC,aAAa,CAAC,aAAa,CAAC,EAA/D,OAAO,aAAA,EAAE,eAAe,qBAAA,EAAE,IAAI,UAAA,CAAkC;4CACxE,IAAA,cAAM,EAAC,IAAA,iBAAS,EAAC,OAAO,CAAC,EAAE,gDAAgD,CAAC,CAAC;4CACrE,kBAAkB,GAAK,OAAQ,mBAAb,CAAc;4CAClC,qBAAqB,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;iDAOtG,CAAA,CAAC,IAAI;gDACL,IAAA,iBAAS,EAAC,OAAO,CAAC;gDAClB,OAAO,CAAC,YAAY,GAAG,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;gDACnE,OAAO,CAAC,YAAY,IAAI,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;gDACpE,gBAAgB,CAAC,kBAAkB,CAAC,KAAK,SAAS,CAAA,EAJlD,cAIkD;4CAI/B,WAAM,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,eAAe,CAC3E,OAAO,EAMP,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,mBAAmB,CAAC,EAC5F,kBAAkB,CACnB,EAAA;;4CATK,UAAU,GAAG,SASlB;4CAID,IAAI,UAAU,KAAK,uBAAU,CAAC,MAAM,EAAE;gDACpC,uBAAuB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;6CAC7D;4CAKD,IAAI,UAAU,KAAK,uBAAU,CAAC,iBAAiB,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,WAAW,EAAE;gDAC/F,WAAO;6CACR;4CASD,IAIE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAC5C,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,kBAAkB,EAC1B,OAAO,CAAC,gBAAgB,CACzB;gDACD,CAAC,CAAC,eAAe,IAAI,eAAe,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAC5E;gDACA,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;6CACpD;;;;;iCAEJ,CAAC,EAAA;;wBAlEF,SAkEE,CAAC;wBAGH,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBACpB,QAAQ,GAAG;4BACf,sBAAsB,CAAC,MAAM,GAAG,CAAC;gCAC/B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,4BAA4B,CACrD,sBAAsB,CAAC,GAAG,CAAC,UAAC,IAAI;oCAC9B,IAAM,cAAc,GAAG,aAAa,CAAC,KAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;oCAC/E,IAAA,cAAM,EAAC,IAAA,iBAAS,EAAC,cAAc,CAAC,EAAE,gDAAgD,CAAC,CAAC;oCAC5E,IAAqB,cAAc,GAAK,IAAA,oCAA4B,EAC1E,IAAI,EACJ,KAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,oBAAoB,EACpB,QAAQ,EACR,cAAe,CAAC,aAAa,CAC9B,oBAN0C,CAMzC;oCACF,6CACK,IAAI,KACP,cAAc,gBAAA,IACd;gCACJ,CAAC,CAAC,CACH;gCACH,CAAC,CAAC,EAAE;4BACN,wBAAwB,CAAC,MAAM,GAAG,CAAC;gCACjC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,4BAA4B,CACrD,wBAAwB,CAAC,GAAG,CAAC,UAAC,OAAO;oCACnC,6CACK,OAAO,KACV,cAAc,EAAE,OAAO,CAAC,kBAAkB,IAC1C;gCACJ,CAAC,CAAC,CACH;gCACH,CAAC,CAAC,EAAE;4BACN,oCAAoC,CAAC,MAAM,GAAG,CAAC;gCAC7C,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,4BAA4B,CACrD,oCAAoC,CAAC,GAAG,CAAC,UAAC,OAAO;oCAC/C,6CACK,OAAO,KACV,cAAc,EAAE,OAAO,CAAC,kBAAkB,IAC1C;gCACJ,CAAC,CAAC,CACH;gCACH,CAAC,CAAC,EAAE;yBACP,CAAC;wBACqE,WAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAA;;wBAA5F,KAAiE,SAA2B,EAA3F,YAAY,QAAA,EAAE,gBAAgB,QAAA,EAAE,4BAA4B,QAAA;wBACnE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,2BAA2B;4BAC/B,OAAO,EAAE,0CAAmC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,QAAK;yBAC3E,CAAC,CAAC;wBACH,YAAY,CAAC,OAAO,CAAC,UAAC,EAAoB,EAAE,GAAG;gCAAvB,gBAAgB,sBAAA;4BACtC,IAAM,IAAI,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;4BACzC,IAAM,iBAAiB,GAAG,aAAa,CAAC,KAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;4BAClF,IAAA,cAAM,EAAC,IAAA,iBAAS,EAAC,iBAAiB,CAAC,EAAE,gDAAgD,CAAC,CAAC;4BACjF,IAAA,KAA0C,IAAA,oCAA4B,EAC1E,IAAI,EACJ,KAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,oBAAoB,EACpB,QAAQ,EACR,iBAAkB,CAAC,aAAa,CACjC,EANO,mBAAmB,yBAAA,EAAE,cAAc,oBAM1C,CAAC;4BACF,mBAAmB,CAAC,aAAa,EAAE,IAAI,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;wBAChH,CAAC,CAAC,CAAC;wBACH,gBAAgB,CAAC,OAAO,CAAC,UAAC,EAA8B,EAAE,GAAG;gCAAf,QAAQ,sBAAA;4BACpD,IAAM,OAAO,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;4BAC9C,qBAAqB,CAAC,iBAAiB,wCAAO,OAAO,KAAE,QAAQ,UAAA,IAAG,CAAC;wBACrE,CAAC,CAAC,CAAC;wBACH,4BAA4B,CAAC,OAAO,CAAC,UAAC,EAA8B,EAAE,GAAG;gCAAf,QAAQ,sBAAA;4BAChE,IAAM,OAAO,GAAG,oCAAoC,CAAC,GAAG,CAAC,CAAC;4BAC1D,2BAA2B,CAAC,qBAAqB,wCAAO,OAAO,KAAE,QAAQ,UAAA,IAAG,CAAC;wBAC/E,CAAC,CAAC,CAAC;wBAEG,qBAAqB,GAAG,IAAA,oCAA4B,EACxD,gBAAgB,EAChB,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,CACtB,CAAC;wBAEF,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE;4BACnC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gCAChB,EAAE,EAAE,2BAA2B;gCAC/B,OAAO,EAAE,8EAA8E;gCACvF,oBAAoB,sBAAA;gCACpB,oBAAoB,sBAAA;6BACrB,CAAC,CAAC;yBACJ;wBAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,sCAAsC;4BAC1C,OAAO,EAAE,kCAA2B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,IAAI,OAAI;4BACpF,oBAAoB,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;4BAC1D,qBAAqB,uBAAA;yBACtB,CAAC,CAAC;wBACH,WAAO;gCACL,gBAAgB,kBAAA;gCAChB,yBAAyB,2BAAA;gCACzB,aAAa,eAAA;gCACb,qBAAqB,uBAAA;gCACrB,iBAAiB,mBAAA;6BAClB,EAAC;;;;KACH;IAMO,gDAAqB,GAA7B,UAA8B,KAAsE;QAClG,OAAO,UAAG,KAAK,CAAC,SAAS,cAAI,KAAK,CAAC,SAAS,cAAI,KAAK,CAAC,gBAAgB,cAAI,KAAK,CAAC,UAAU,cAAI,KAAK,CAAC,WAAW,cAC7G,KAAK,CAAC,WAAW,cACf,KAAK,CAAC,YAAY,cAAI,KAAK,CAAC,aAAa,cAAI,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,cAAI,KAAK,CAAC,YAAY,cAC/F,KAAK,CAAC,mBAAmB,cACvB,KAAK,CAAC,OAAO,cAAI,KAAK,CAAC,kBAAkB,CAAE,CAAC;IAClD,CAAC;IAEK,mDAAwB,GAA9B,UACE,QAAkB,EAClB,oBAAgC,EAChC,gBAAyC;;;;;;;wBAElC,KAAA,CAAA,KAAA,MAAM,CAAA,CAAC,WAAW,CAAA;wBAErB,WAAM,IAAA,gBAAQ,EAAC,QAAQ,EAAE,UAAO,OAAO,EAAE,KAAK;;;;;4CACtC,kBAAkB,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;4CACvD,IAAI,CAAC,IAAA,iBAAS,EAAC,kBAAkB,CAAC,IAAI,IAAA,uBAAe,EAAC,kBAAkB,CAAC,EAAE;gDACzE,WAAO;6CACR;4CACM,mBAAmB,GAAuB,kBAAkB,GAAzC,EAAE,iBAAiB,GAAI,kBAAkB,GAAtB,CAAuB;4CAC9D,eAAe,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;4CAGlD,IAAI,CAAC,IAAA,iBAAS,EAAC,eAAe,CAAC,EAAE;gDAC/B,WAAO;6CACR;4CAMK,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC;4CACxF,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC;4CAExF,WAAM,eAAe,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,EAAA;;;gDAA9D,SAA8D;;4CAC9D,WAAM,eAAe,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,EAAA;;4CAFxD;gDAEJ,SAA4D;8CAC7D,EAHM,SAAS,QAAA,EAAE,OAAO,QAAA;4CAKzB,IAAA,cAAM,EAAC,OAAO,IAAI,SAAS,EAAE,6CAA6C,CAAC,CAAC;4CAC5E,IAAA,cAAM,EACJ,kBAAkB,KAAK,CAAC,IAAI,SAAS,GAAG,CAAC,EACzC,8EAA8E,CAC/E,CAAC;4CACF,WAAO,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,EAAC;;;iCACxC,CAAC,EAAA;4BAhCN,WAAO,cACL,CACE,SA8BE,CACH,CAAC,MAAM,CAAC,iBAAS,CAAC,EACpB,EAAC;;;;KACH;IACH,uBAAC;AAAD,CAAC,AAhvCD,IAgvCC;AAhvCY,4CAAgB"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { providers } from "ethers";
|
|
2
|
+
import { DepositWithBlock, Fill, FillWithBlock } from "../../../interfaces";
|
|
2
3
|
import { HubPoolClient } from "../../HubPoolClient";
|
|
3
4
|
export declare function getRefundInformationFromFill(fill: Fill, hubPoolClient: HubPoolClient, blockRangesForChains: number[][], chainIdListForBundleEvaluationBlockNumbers: number[], fromLiteChain: boolean): {
|
|
4
5
|
chainToSendRefundTo: number;
|
|
5
6
|
repaymentToken: string;
|
|
6
7
|
};
|
|
8
|
+
export declare function verifyFillRepayment(fill: FillWithBlock, destinationChainProvider: providers.Provider, matchedDeposit: DepositWithBlock, possibleRepaymentChainIds: number[]): Promise<FillWithBlock | undefined>;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getRefundInformationFromFill = void 0;
|
|
3
|
+
exports.verifyFillRepayment = exports.getRefundInformationFromFill = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var lodash_1 = tslib_1.__importDefault(require("lodash"));
|
|
4
6
|
var utils_1 = require("../../../utils");
|
|
5
7
|
function getRefundInformationFromFill(fill, hubPoolClient, blockRangesForChains, chainIdListForBundleEvaluationBlockNumbers, fromLiteChain) {
|
|
6
8
|
var chainToSendRefundTo = (0, utils_1.isSlowFill)(fill) ? fill.destinationChainId : fill.repaymentChainId;
|
|
@@ -16,4 +18,34 @@ function getRefundInformationFromFill(fill, hubPoolClient, blockRangesForChains,
|
|
|
16
18
|
};
|
|
17
19
|
}
|
|
18
20
|
exports.getRefundInformationFromFill = getRefundInformationFromFill;
|
|
21
|
+
function verifyFillRepayment(fill, destinationChainProvider, matchedDeposit, possibleRepaymentChainIds) {
|
|
22
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
23
|
+
var repaymentChainId, updatedFill, fillTransaction, destinationRelayer;
|
|
24
|
+
return tslib_1.__generator(this, function (_a) {
|
|
25
|
+
switch (_a.label) {
|
|
26
|
+
case 0:
|
|
27
|
+
if ((0, utils_1.isSlowFill)(fill)) {
|
|
28
|
+
return [2, fill];
|
|
29
|
+
}
|
|
30
|
+
repaymentChainId = matchedDeposit.fromLiteChain ? fill.originChainId : fill.repaymentChainId;
|
|
31
|
+
if (!possibleRepaymentChainIds.includes(repaymentChainId)) {
|
|
32
|
+
return [2, undefined];
|
|
33
|
+
}
|
|
34
|
+
updatedFill = lodash_1.default.cloneDeep(fill);
|
|
35
|
+
if (!((0, utils_1.chainIsEvm)(repaymentChainId) && !(0, utils_1.isValidEvmAddress)(updatedFill.relayer))) return [3, 2];
|
|
36
|
+
return [4, destinationChainProvider.getTransaction(updatedFill.transactionHash)];
|
|
37
|
+
case 1:
|
|
38
|
+
fillTransaction = _a.sent();
|
|
39
|
+
destinationRelayer = fillTransaction === null || fillTransaction === void 0 ? void 0 : fillTransaction.from;
|
|
40
|
+
if (!(0, utils_1.isDefined)(destinationRelayer) || !(0, utils_1.isValidEvmAddress)(destinationRelayer)) {
|
|
41
|
+
return [2, undefined];
|
|
42
|
+
}
|
|
43
|
+
updatedFill.relayer = destinationRelayer;
|
|
44
|
+
_a.label = 2;
|
|
45
|
+
case 2: return [2, updatedFill];
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
exports.verifyFillRepayment = verifyFillRepayment;
|
|
19
51
|
//# sourceMappingURL=FillUtils.js.map
|