@across-protocol/sdk 4.1.32 → 4.1.33
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/arch/evm/index.d.ts +1 -0
- package/dist/cjs/arch/evm/index.js +5 -0
- package/dist/cjs/arch/evm/index.js.map +1 -0
- package/dist/cjs/arch/index.d.ts +2 -0
- package/dist/cjs/arch/index.js +7 -0
- package/dist/cjs/arch/index.js.map +1 -0
- package/dist/cjs/arch/svm/index.d.ts +1 -0
- package/dist/cjs/arch/svm/index.js +5 -0
- package/dist/cjs/arch/svm/index.js.map +1 -0
- package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +24 -3
- package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
- package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +2 -2
- package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +19 -0
- package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js +170 -0
- package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -0
- package/dist/cjs/clients/{SpokePoolClient.d.ts → SpokePoolClient/SpokePoolClient.d.ts} +17 -22
- package/dist/cjs/clients/{SpokePoolClient.js → SpokePoolClient/SpokePoolClient.js} +24 -174
- package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -0
- package/dist/cjs/clients/SpokePoolClient/index.d.ts +5 -0
- package/dist/cjs/clients/SpokePoolClient/index.js +13 -0
- package/dist/cjs/clients/SpokePoolClient/index.js.map +1 -0
- package/dist/cjs/clients/index.d.ts +1 -1
- package/dist/cjs/clients/index.js +2 -1
- package/dist/cjs/clients/index.js.map +1 -1
- package/dist/cjs/clients/mocks/MockSpokePoolClient.d.ts +2 -2
- package/dist/cjs/clients/mocks/MockSpokePoolClient.js +1 -1
- package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
- package/dist/cjs/utils/BundleUtils.js +7 -7
- package/dist/cjs/utils/BundleUtils.js.map +1 -1
- package/dist/esm/arch/evm/index.d.ts +1 -0
- package/dist/esm/arch/evm/index.js +2 -0
- package/dist/esm/arch/evm/index.js.map +1 -0
- package/dist/esm/arch/index.d.ts +2 -0
- package/dist/esm/arch/index.js +5 -0
- package/dist/esm/arch/index.js.map +1 -0
- package/dist/esm/arch/svm/index.d.ts +1 -0
- package/dist/esm/arch/svm/index.js +2 -0
- package/dist/esm/arch/svm/index.js.map +1 -0
- package/dist/esm/clients/BundleDataClient/BundleDataClient.js +30 -3
- package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +2 -2
- package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +22 -0
- package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js +174 -0
- package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -0
- package/dist/{types/clients → esm/clients/SpokePoolClient}/SpokePoolClient.d.ts +58 -57
- package/dist/esm/clients/{SpokePoolClient.js → SpokePoolClient/SpokePoolClient.js} +22 -212
- package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js.map +1 -0
- package/dist/esm/clients/SpokePoolClient/index.d.ts +10 -0
- package/dist/esm/clients/SpokePoolClient/index.js +12 -0
- package/dist/esm/clients/SpokePoolClient/index.js.map +1 -0
- package/dist/esm/clients/index.d.ts +1 -1
- package/dist/esm/clients/index.js +1 -1
- package/dist/esm/clients/index.js.map +1 -1
- package/dist/esm/clients/mocks/MockSpokePoolClient.d.ts +2 -2
- package/dist/esm/clients/mocks/MockSpokePoolClient.js +2 -2
- package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
- package/dist/esm/utils/BundleUtils.js +7 -7
- package/dist/esm/utils/BundleUtils.js.map +1 -1
- package/dist/esm/utils/abi/typechain/Multicall3.d.ts +1 -4
- package/dist/esm/utils/abi/typechain/factories/Multicall3__factory.js.map +1 -1
- package/dist/types/arch/evm/index.d.ts +2 -0
- package/dist/types/arch/evm/index.d.ts.map +1 -0
- package/dist/types/arch/index.d.ts +3 -0
- package/dist/types/arch/index.d.ts.map +1 -0
- package/dist/types/arch/svm/index.d.ts +2 -0
- package/dist/types/arch/svm/index.d.ts.map +1 -0
- package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
- package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +2 -2
- package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +23 -0
- package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts.map +1 -0
- package/dist/{esm/clients → types/clients/SpokePoolClient}/SpokePoolClient.d.ts +59 -56
- package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts.map +1 -0
- package/dist/types/clients/SpokePoolClient/index.d.ts +11 -0
- package/dist/types/clients/SpokePoolClient/index.d.ts.map +1 -0
- package/dist/types/clients/index.d.ts +1 -1
- package/dist/types/clients/index.d.ts.map +1 -1
- package/dist/types/clients/mocks/MockSpokePoolClient.d.ts +2 -2
- package/dist/types/clients/mocks/MockSpokePoolClient.d.ts.map +1 -1
- package/dist/types/utils/abi/typechain/Multicall3.d.ts +1 -4
- package/dist/types/utils/abi/typechain/Multicall3.d.ts.map +1 -1
- package/dist/types/utils/abi/typechain/common.d.ts.map +1 -1
- package/dist/types/utils/abi/typechain/factories/Multicall3__factory.d.ts.map +1 -1
- package/package.json +4 -3
- package/src/arch/evm/index.ts +1 -0
- package/src/arch/index.ts +2 -0
- package/src/arch/svm/index.ts +1 -0
- package/src/clients/BundleDataClient/BundleDataClient.ts +29 -1
- package/src/clients/SpokePoolClient/EVMSpokePoolClient.ts +206 -0
- package/src/clients/{SpokePoolClient.ts → SpokePoolClient/SpokePoolClient.ts} +87 -237
- package/src/clients/SpokePoolClient/index.ts +14 -0
- package/src/clients/index.ts +1 -1
- package/src/clients/mocks/MockSpokePoolClient.ts +2 -2
- package/src/utils/BundleUtils.ts +6 -6
- package/dist/cjs/clients/SpokePoolClient.js.map +0 -1
- package/dist/esm/clients/SpokePoolClient.js.map +0 -1
- package/dist/types/clients/SpokePoolClient.d.ts.map +0 -1
|
@@ -5,6 +5,7 @@ import { FillType, FillStatus, } from "../../interfaces";
|
|
|
5
5
|
import { BigNumber, bnZero, queryHistoricalDepositForFill, assign, fixedPointAdjustment, isDefined, toBN, forEachAsync, getBlockRangeForChain, getImpliedBundleBlockRanges, getMessageHash, getRelayEventKey, isSlowFill, mapAsync, bnUint32Max, isZeroValueDeposit, findFillEvent, isZeroValueFillOrSlowFillRequest, chainIsEvm, isValidEvmAddress, duplicateEvent, } from "../../utils";
|
|
6
6
|
import { BundleDataSS, getEndBlockBuffers, getRefundInformationFromFill, getRefundsFromBundle, getWidestPossibleExpectedBlockRange, isChainDisabled, prettyPrintV3SpokePoolEvents, verifyFillRepayment, } from "./utils";
|
|
7
7
|
import { UNDEFINED_MESSAGE_HASH } from "../../constants";
|
|
8
|
+
import { isEVMSpokePoolClient } from "../SpokePoolClient";
|
|
8
9
|
// max(uint256) - 1
|
|
9
10
|
export var INFINITE_FILL_DEADLINE = bnUint32Max;
|
|
10
11
|
// V3 dictionary helper functions
|
|
@@ -307,7 +308,7 @@ var BundleDataClient = /** @class */ (function () {
|
|
|
307
308
|
return hasMatchingDeposit;
|
|
308
309
|
});
|
|
309
310
|
return [4 /*yield*/, forEachAsync(fillsToCount, function (_fill) { return __awaiter(_this, void 0, void 0, function () {
|
|
310
|
-
var matchingDeposit, fill, _a, chainToSendRefundTo, repaymentToken, relayer, refundAmount, existingRefundAmount;
|
|
311
|
+
var matchingDeposit, spokeClient, fill, _a, chainToSendRefundTo, repaymentToken, relayer, refundAmount, existingRefundAmount;
|
|
311
312
|
var _b, _c, _d;
|
|
312
313
|
var _e;
|
|
313
314
|
return __generator(this, function (_f) {
|
|
@@ -315,7 +316,12 @@ var BundleDataClient = /** @class */ (function () {
|
|
|
315
316
|
case 0:
|
|
316
317
|
matchingDeposit = this.spokePoolClients[_fill.originChainId].getDeposit(_fill.depositId);
|
|
317
318
|
assert(isDefined(matchingDeposit), "Deposit not found for fill.");
|
|
318
|
-
|
|
319
|
+
spokeClient = this.spokePoolClients[_fill.destinationChainId];
|
|
320
|
+
if (!isEVMSpokePoolClient(spokeClient)) {
|
|
321
|
+
// FIXME: Handle non-EVM chains.
|
|
322
|
+
throw new Error("Destination chain is not an EVM chain.");
|
|
323
|
+
}
|
|
324
|
+
return [4 /*yield*/, verifyFillRepayment(_fill, spokeClient.spokePool.provider, matchingDeposit, this.clients.hubPoolClient)];
|
|
319
325
|
case 1:
|
|
320
326
|
fill = _f.sent();
|
|
321
327
|
if (!isDefined(fill)) {
|
|
@@ -761,6 +767,10 @@ var BundleDataClient = /** @class */ (function () {
|
|
|
761
767
|
assert(isDefined(deposits) && deposits.length > 0, "Deposit should exist in relay hash dictionary.");
|
|
762
768
|
v3RelayHashes[relayDataHash].fill = fill;
|
|
763
769
|
if (!(fill.blockNumber >= destinationChainBlockRange[0])) return [3 /*break*/, 2];
|
|
770
|
+
if (!isEVMSpokePoolClient(destinationClient)) {
|
|
771
|
+
// FIXME: Handle non-EVM chains.
|
|
772
|
+
throw new Error("Destination chain is not an EVM chain.");
|
|
773
|
+
}
|
|
764
774
|
return [4 /*yield*/, verifyFillRepayment(fill, destinationClient.spokePool.provider, deposits[0], this.clients.hubPoolClient)];
|
|
765
775
|
case 1:
|
|
766
776
|
fillToRefund_1 = _a.sent();
|
|
@@ -830,6 +840,10 @@ var BundleDataClient = /** @class */ (function () {
|
|
|
830
840
|
return [2 /*return*/];
|
|
831
841
|
}
|
|
832
842
|
v3RelayHashes[relayDataHash].deposits = [matchedDeposit];
|
|
843
|
+
if (!isEVMSpokePoolClient(destinationClient)) {
|
|
844
|
+
// FIXME: Handle non-EVM chains.
|
|
845
|
+
throw new Error("Destination chain is not an EVM chain.");
|
|
846
|
+
}
|
|
833
847
|
return [4 /*yield*/, verifyFillRepayment(fill, destinationClient.spokePool.provider, matchedDeposit, this.clients.hubPoolClient)];
|
|
834
848
|
case 8:
|
|
835
849
|
fillToRefund = _a.sent();
|
|
@@ -992,6 +1006,10 @@ var BundleDataClient = /** @class */ (function () {
|
|
|
992
1006
|
}
|
|
993
1007
|
if (!fill) return [3 /*break*/, 3];
|
|
994
1008
|
if (!(fill.blockNumber < destinationChainBlockRange[0])) return [3 /*break*/, 2];
|
|
1009
|
+
if (!isEVMSpokePoolClient(destinationClient)) {
|
|
1010
|
+
// FIXME: Handle non-EVM chains.
|
|
1011
|
+
throw new Error("Destination chain is not an EVM chain.");
|
|
1012
|
+
}
|
|
995
1013
|
return [4 /*yield*/, verifyFillRepayment(fill, destinationClient.spokePool.provider, deposits[0], this.clients.hubPoolClient)];
|
|
996
1014
|
case 1:
|
|
997
1015
|
fillToRefund = _c.sent();
|
|
@@ -1033,6 +1051,10 @@ var BundleDataClient = /** @class */ (function () {
|
|
|
1033
1051
|
prefill = _c.sent();
|
|
1034
1052
|
assert(isDefined(prefill), "findFillEvent# Cannot find prefill: ".concat(relayDataHash));
|
|
1035
1053
|
assert(getRelayEventKey(prefill) === relayDataHash, "Relay hashes should match.");
|
|
1054
|
+
if (!isEVMSpokePoolClient(destinationClient)) {
|
|
1055
|
+
// FIXME: Handle non-EVM chains.
|
|
1056
|
+
throw new Error("Destination chain is not an EVM chain.");
|
|
1057
|
+
}
|
|
1036
1058
|
return [4 /*yield*/, verifyFillRepayment(prefill, destinationClient.spokePool.provider, deposit, this.clients.hubPoolClient)];
|
|
1037
1059
|
case 6:
|
|
1038
1060
|
verifiedFill = _c.sent();
|
|
@@ -1341,7 +1363,12 @@ var BundleDataClient = /** @class */ (function () {
|
|
|
1341
1363
|
return __awaiter(this, void 0, void 0, function () {
|
|
1342
1364
|
return __generator(this, function (_a) {
|
|
1343
1365
|
switch (_a.label) {
|
|
1344
|
-
case 0:
|
|
1366
|
+
case 0:
|
|
1367
|
+
if (!isEVMSpokePoolClient(spokePoolClient)) {
|
|
1368
|
+
// FIXME: Handle non-EVM chains.
|
|
1369
|
+
throw new Error("Destination chain is not an EVM chain.");
|
|
1370
|
+
}
|
|
1371
|
+
return [4 /*yield*/, findFillEvent(spokePoolClient.spokePool, deposit, spokePoolClient.deploymentBlock, spokePoolClient.latestBlockSearched)];
|
|
1345
1372
|
case 1: return [2 /*return*/, _a.sent()];
|
|
1346
1373
|
}
|
|
1347
1374
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BundleDataClient.js","sourceRoot":"","sources":["../../../../src/clients/BundleDataClient/BundleDataClient.ts"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,EAIL,QAAQ,EACR,UAAU,GAaX,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,SAAS,EACT,MAAM,EACN,6BAA6B,EAC7B,MAAM,EACN,oBAAoB,EACpB,SAAS,EACT,IAAI,EACJ,YAAY,EACZ,qBAAqB,EACrB,2BAA2B,EAC3B,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,QAAQ,EACR,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,gCAAgC,EAChC,UAAU,EACV,iBAAiB,EACjB,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,OAAO,EAEL,YAAY,EACZ,kBAAkB,EAClB,4BAA4B,EAC5B,oBAAoB,EACpB,mCAAmC,EACnC,eAAe,EACf,4BAA4B,EAG5B,mBAAmB,GACpB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,mBAAmB;AACnB,MAAM,CAAC,IAAM,sBAAsB,GAAG,WAAW,CAAC;AAIlD,iCAAiC;AACjC,SAAS,uBAAuB,CAAC,IAA+B,EAAE,OAA2B;;IAC3F,kIAAkI;IAClI,IAAI,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,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,MAAM,CAAC,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,MAAM,CAAC,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;;IAExB,mGAAmG;IACnG,MAAM,CACJ,UAAU,CAAC,gBAAgB,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,EAC/D,8FAA8F,CAC/F,CAAC;IACF,IAAI,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,gBAAgB,CAAC,0CAAG,cAAc,CAAC,CAAA,EAAE;QAC/C,MAAM,CAAC,IAAI,EAAE,CAAC,gBAAgB,EAAE,cAAc,CAAC,EAAE;YAC/C,KAAK,EAAE,EAAE;YACT,iBAAiB,EAAE,MAAM;YACzB,cAAc,EAAE,MAAM;YACtB,OAAO,EAAE,EAAE;SACZ,CAAC,CAAC;KACJ;IAED,IAAM,UAAU,yBAAsB,IAAI,KAAE,QAAQ,UAAA,EAAE,OAAO,EAAE,gBAAgB,GAAE,CAAC;IAElF,+CAA+C;IAC/C,MAAM,CAAC,IAAI,EAAE,CAAC,gBAAgB,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAExE,uCAAuC;IACvC,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,oBAAoB,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;IAElH,gCAAgC;IAChC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;QAC3B,IAAM,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,oBAAoB,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;QAEjB,8CAA8C;QAC9C,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,MAAM,CAAC,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;;IACzG,IAAI,UAAU,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QACnF,OAAO;KACR;IACO,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,MAAM,CAAC,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,qFAAqF;AACrF;IAME,kDAAkD;IAClD,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;IAEJ,mHAAmH;IACnH,iHAAiH;IACjH,qCAAU,GAAV;QACE,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;IAC1B,CAAC;IAEa,4CAAiB,GAA/B,UAAgC,GAAW;;;;;;wBAGlC,KAAA,CAAA,KAAA,CAAC,CAAA,CAAC,SAAS,CAAA;wBAAC,qBAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAA;;oBAFhD,gHAAgH;oBAChH,wFAAwF;oBACxF,sBAAO,cAAY,SAA6B,EAAC,EAAC;;;;KACnD;IAED,uDAA4B,GAA5B,UAA6B,GAAW;QACtC,IAAI,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE;YAClC,OAAO,CAAC,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;QACzD,kFAAkF;QAClF,uEAAuE;QACvE,2FAA2F;QAC3F,kCAAkC;QAClC,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;IAED,4CAA4C;IAC5C,sGAAsG;IACtG,gDAAqB,GAArB,UAAsB,IAA4D;QAChF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,UAAC,CAAC;YAC7C,OAAA,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAC,QAAQ;gBAChC,OAAA,QAAQ,CAAC,OAAO,CAAC,UAAC,OAAO;oBACvB,IAAI,OAAO,CAAC,WAAW,KAAK,sBAAsB,EAAE;wBAClD,OAAO,CAAC,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;qBACvD;gBACH,CAAC,CAAC;YAJF,CAIE,CACH;QAND,CAMC,CACF,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,UAAC,CAAC;YAC1C,OAAA,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAC,EAAS;oBAAP,KAAK,WAAA;gBAC/B,OAAA,KAAK,CAAC,OAAO,CAAC,UAAC,IAAI;oBACjB,IAAI,IAAI,CAAC,WAAW,KAAK,sBAAsB,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;wBAC1E,+FAA+F;wBAC/F,IAAI,CAAC,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qBACjD;oBACD,IACE,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,KAAK,sBAAsB;wBACrE,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,EACjD;wBACA,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,GAAG,cAAc,CAAC,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;qBACrG;gBACH,CAAC,CAAC;YAXF,CAWE,CACH;QAbD,CAaC,CACF,CAAC;IACJ,CAAC;IAEa,uDAA4B,GAA1C,UACE,oBAAgC;;;;;;;wBAEhC,IAAI,CAAC,SAAS,CAAC,MAAA,IAAI,CAAC,OAAO,0CAAE,aAAa,CAAC,EAAE;4BAC3C,sBAAO,SAAS,EAAC;yBAClB;wBACK,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBACV,qBAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAC/D,IAAI,CAAC,6BAA6B,CAAC,oBAAoB,CAAC,EACxD,YAAY,CACb,EAAA;;wBAHK,aAAa,GAAG,SAGrB;wBACD,iFAAiF;wBACjF,gDAAgD;wBAChD,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;4BACzD,sBAAO,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;wBAEnC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;wBAE3B,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,4BAA4B,CACtC,UAAU,CAAC,gBAAgB,EAC3B,UAAU,CAAC,aAAa,EACxB,UAAU,CAAC,iBAAiB,EAC5B,UAAU,CAAC,yBAAyB,EACpC,UAAU,CAAC,qBAAqB,CACjC;yBACF,CAAC,CAAC;wBACH,sBAAO,UAAU,EAAC;;;;KACnB;IAED,gHAAgH;IAC1G,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,wBAAoB;wBACtB,KAAA,CAAA,KAAA,OAAO,CAAA,CAAC,IAAI,CAAA;wBAAC,qBAAM,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,EAAA;;wBAA3D,cAAa,SAA8C,EAAC,CAAC;;4BAC7D,oCAAoC;oBACtC,sBAAO,OAAO,EAAC;;;;KAChB;IAED,gHAAgH;IAChH,oCAAoC;IAC9B,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,2BAA2B,CAC7D,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAC9B,MAAM,CACP,CAAC;wBAMkB,qBAAM,IAAI,CAAC,eAAe,CAAC,2BAA2B,CAAC,EAAA;;wBAArE,WAAW,GAAG,SAAuD;6BACvE,CAAA,WAAW,KAAK,SAAS,CAAA,EAAzB,wBAAyB;wBACT,qBAAM,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,oBAAoB,CAAC,aAAa,EAAE,yBAAyB,CAAC,CAAC;wBACjF,+GAA+G;wBAC/G,8GAA8G;wBAC9G,qFAAqF;wBACrF,qDAAqD;wBACrD,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;;;oBAGL,qGAAqG;oBACrG,wEAAwE;oBACxE,sBAAO,IAAI,CAAC,qBAAqB,CAAC,eAAe,EAAE,MAAM,CAAC,EAAC;;;;KAC5D;IAED,4EAA4E;IACtE,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;wCAMvC,YAAY,GAAG,OAAK,gBAAgB,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,UAAC,IAAI;4CACzE,IACE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gDAC7C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gDAC7C,gCAAgC,CAAC,IAAI,CAAC,EACtC;gDACA,OAAO,KAAK,CAAC;6CACd;4CAED,mEAAmE;4CACnE,IAAI,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,SAAS,EAAE;gDAC3D,OAAO,KAAK,CAAC;6CACd;4CACD,IAAM,eAAe,GAAG,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;4CAC7F,IAAM,kBAAkB,GACtB,eAAe,KAAK,SAAS,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,gBAAgB,CAAC,eAAe,CAAC,CAAC;4CAChG,OAAO,kBAAkB,CAAC;wCAC5B,CAAC,CAAC,CAAC;wCACH,qBAAM,YAAY,CAAC,YAAY,EAAE,UAAO,KAAK;;;;;;;4DACrC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;4DAC/F,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,6BAA6B,CAAC,CAAC;4DACrD,qBAAM,mBAAmB,CACpC,KAAK,EACL,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,SAAS,CAAC,QAAQ,EAClE,eAAe,EACf,IAAI,CAAC,OAAO,CAAC,aAAa,CAC3B,EAAA;;4DALK,IAAI,GAAG,SAKZ;4DACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;gEACpB,sBAAO;6DACR;4DACK,KAA0C,4BAA4B,CAC1E,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,WAAW,EACX,IAAI,CAAC,0CAA0C,EAC/C,eAAe,CAAC,aAAa,CAC9B,EANO,mBAAmB,yBAAA,EAAE,cAAc,oBAAA,CAMzC;4DAKM,OAAO,GAAgC,IAAI,QAApC,EAAe,YAAY,GAAK,IAAI,YAAT,CAAU;4DACpD,MAAA,eAAe,CAAC,mBAAmB,qCAAnC,eAAe,CAAC,mBAAmB,IAAM,EAAE,EAAC;4DAC5C,YAAA,eAAe,CAAC,mBAAmB,CAAC,EAAC,cAAc,wCAAd,cAAc,IAAM,EAAE,EAAC;4DACtD,oBAAoB,GAAG,MAAA,eAAe,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,mCAAI,MAAM,CAAC;4DACrG,eAAe,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,GAAG,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;;;;iDACxG,CAAC,EAAA;;wCA5BF,SA4BE,CAAC;;;;;;8BAxDyB,EAAR,qBAAQ;;;6BAAR,CAAA,sBAAQ,CAAA;wBAAnB,OAAO;sDAAP,OAAO;;;;;wBAAI,IAAQ,CAAA;;4BA0D9B,sBAAO,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,IAAI,CAAC,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,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,CAAC;IAED,gHAAgH;IAChH,oHAAoH;IACpH,iFAAiF;IACjF,+FAA+F;IAC/F,sCAAsC;IACtC,4DAA4D;IACtD,+CAAoB,GAA1B;;YAoBE,wFAAwF;YACxF,kFAAkF;YAClF,SAAS,kBAAkB,CAAC,mBAA+B;gBACzD,OAAO,uBAAuB,CAAC,GAAG,CAAC,UAAC,UAAU,EAAE,KAAK;;oBACnD,wGAAwG;oBACxG,4GAA4G;oBAC5G,gHAAgH;oBAChH,IAAM,iBAAiB,GAAG,MAAA,mBAAmB,CAAC,KAAK,CAAC,mCAAI,UAAU,CAAC;oBACnE,8CAA8C;oBAC9C,IAAI,iBAAiB,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC,CAAC,EAAE;wBACjD,OAAO,iBAAiB,CAAC;qBAC1B;oBACD,2FAA2F;oBAC3F,sHAAsH;oBACtH,2CAA2C;oBAC3C,IAAI,CAAC,SAAS,CAAC,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;oBACD,+EAA+E;oBAC/E,uGAAuG;oBACvG,0BAA0B;oBAC1B,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,mCAAmC,CAC/D,QAAQ,EACR,IAAI,CAAC,gBAAgB,EACrB,kBAAkB,CAAC,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,wBAAkC;wBAC9B,wBAAwB,GAAG,2BAA2B,CAC1D,aAAa,EACb,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAC9B,aAAa,CAAC,2BAA2B,EAAE,CAC5C,CAAC;wBAIkB,qBAAM,IAAI,CAAC,eAAe,CAAC,wBAAwB,CAAC,EAAA;;wBAAlE,WAAW,GAAG,SAAoD;6BACpE,CAAA,WAAW,KAAK,SAAS,CAAA,EAAzB,wBAAyB;wBAC3B,KAAA,CAAA,KAAA,eAAe,CAAA,CAAC,IAAI,CAAA;wBAAC,qBAAM,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,oBAAoB,CAAC,aAAa,EAAE,yBAAyB,CAAC,CAAC,CAAC;;;wBAGvF,yFAAyF;wBACzF,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,qBAAM,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,sBAAO,eAAe,EAAC;;;;KACxB;IAED,4EAA4E;IAC5E,6CAAkB,GAAlB,UACE,eAAgC,EAChC,iBAAyB;QAMzB,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE;YAC/B,OAAO,EAAE,CAAC;SACX;QACD,6GAA6G;QAC7G,2GAA2G;QAC3G,+CAA+C;QAC/C,IAAM,MAAM,GAAG,CAAC,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,MAAM,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;IAED,4EAA4E;IACpE,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,SAAS,CAAC,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;oBACD,6GAA6G;oBAC7G,mFAAmF;oBACnF,OAAO,CAAC,OAAO,CAAC,GAAG,MAAM,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,SAAS,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,SAAS,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,MAAM,CAAC,CAAC;IACb,CAAC;IAEa,0CAAe,GAA7B,UAA8B,oBAAgC;;;;;;wBACtD,UAAU,GAAG,IAAI,CAAC,6BAA6B,CAAC,oBAAoB,CAAC,CAAC;wBAC5E,kEAAkE;wBAClE,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,CAAC,CAAA,CAAC,SAAS,CAAA;wBAAC,qBAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAA;;wBAAjE,WAAW,GAAG,cAAY,SAAuC,EAAC;wBACxE,sBAAO,WAAY,EAAC;;;;KACrB;IAED,kFAAkF;IAClF,qHAAqH;IACrH,6BAA6B;IACvB,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,wBAAwB;wBACtB,WAAW,SAAA,CAAC;6BACZ,kBAAkB,EAAlB,wBAAkB;wBACN,qBAAM,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,EAAA;;wBAA9D,WAAW,GAAG,SAAgD,CAAC;;;wBAE/D,WAAW,GAAG,SAAS,CAAC;;;wBAEpB,IAAI,GAAG,SAAS,CAAC,WAAW,CAAC;4BACjC,CAAC,CAAC,0EAA0E;gCAC1E,uFAAuF;gCACvF,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,sBAAO,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,wBAAwB,GAAsB,EAAE,CAAC;wBACjD,6BAA6B,GAA+B,EAAE,CAAC;wBAC/D,iBAAiB,GAAoB,EAAE,CAAC;wBAExC,yBAAyB,GAA8B,EAAE,CAAC;wBAE1D,qBAAqB,GAA0B,EAAE,CAAC;wBAMlD,gBAAgB,GAAG,UAAC,OAAe;4BACvC,IAAM,kBAAkB,GAAG,qBAAqB,CAAC,oBAAoB,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;4BAC1F,OAAO,eAAe,CAAC,kBAAkB,CAAC,CAAC;wBAC7C,CAAC,CAAC;wBAEI,sBAAsB,GAAG,UAAC,OAAyB;4BACvD,OAAO;4BACL,oEAAoE;4BACpE,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;gCACD,4CAA4C;gCAC5C,CAAC,OAAO,CAAC,aAAa;gCACtB,CAAC,OAAO,CAAC,WAAW,CACrB,CAAC;wBACJ,CAAC,CAAC;wBAEI,iBAAiB,GAAG,UAAC,OAAyB;4BAClD,OAAO,OAAO,CAAC,YAAY,GAAG,qBAAqB,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;wBACrF,CAAC,CAAC;wBAEI,wBAAwB,GAAG,UAAC,OAAgB,EAAE,UAAkB;4BACpE,OAAO,gBAAgB,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,eAAe,CACjE,OAAO;4BACP,mCAAmC;4BACnC,2DAA2D;4BAC3D,uEAAuE;4BACvE,yDAAyD;4BACzD,wDAAwD;4BACxD,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,gBAAgB,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,mBAAmB,CAAC,EACtF,OAAO,CAAC,kBAAkB,CAC3B,CAAC;wBACJ,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,wBAAwB;wBACF,qBAAM,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;;;wBAM5C,aAAa,GASf,EAAE,CAAC;wBAID,mBAAmB,GAAa,EAAE,CAAC;wBACnC,kBAAkB,GAAa,EAAE,CAAC;wBAElC,uBAAuB,GAAG,UAAC,WAAmB;4BAC5C,IAAA,KAAqB,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,EAA1C,aAAa,QAAA,EAAE,CAAC,QAA0B,CAAC;4BAClD,OAAO,EAAE,aAAa,eAAA,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC7C,CAAC,CAAC;4CAIS,aAAa;4BACtB,IAAM,YAAY,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;4BACrD,IAAM,qBAAqB,GAAG,qBAAqB,CAAC,oBAAoB,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;4BAEnG,KAAiC,UAAW,EAAX,2BAAW,EAAX,yBAAW,EAAX,IAAW,EAAE;gCAAzC,IAAM,kBAAkB,oBAAA;gCAC3B,IAAI,aAAa,KAAK,kBAAkB,EAAE;oCACxC,SAAS;iCACV;gCACD,YAAY,CAAC,4CAA4C,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,UAAC,OAAO;;oCAC5F,IAAI,OAAO,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAC,OAAO,CAAC,EAAE;wCACjF,OAAO;qCACR;oCACD,IAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;oCAEhD,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE;wCACjC,aAAa,CAAC,aAAa,CAAC,GAAG;4CAC7B,QAAQ,EAAE,CAAC,OAAO,CAAC;4CACnB,IAAI,EAAE,SAAS;4CACf,eAAe,EAAE,SAAS;yCAC3B,CAAC;qCACH;yCAAM;wCACG,IAAA,UAAQ,GAAK,aAAa,CAAC,aAAa,CAAC,SAAjC,CAAkC;wCAClD,MAAM,CAAC,SAAS,CAAC,UAAQ,CAAC,IAAI,UAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,gDAAgD,CAAC,CAAC;wCACrG,UAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qCACxB;oCAED,0GAA0G;oCAC1G,0BAA0B;oCAClB,IAAA,QAAQ,GAAK,aAAa,CAAC,aAAa,CAAC,SAAjC,CAAkC;oCAClD,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,gDAAgD,CAAC,CAAC;oCACrG,IAAM,oBAAoB,GAAG,UAAG,aAAa,cAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;oCACvE,IAAM,wBAAwB,GAAG,uBAAuB,CAAC,oBAAoB,CAAC,CAAC;oCAC/E,MAAM,CACJ,wBAAwB,CAAC,aAAa,KAAK,aAAa;wCACtD,wBAAwB,CAAC,KAAK,KAAK,QAAQ,CAAC,MAAM,GAAG,CAAC,EACxD,2CAA2C,CAC5C,CAAC;oCACF,IAAI,OAAO,CAAC,WAAW,IAAI,qBAAqB,CAAC,CAAC,CAAC,EAAE;wCACnD,IAAI,MAAA,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAG,aAAa,CAAC,0CAAG,OAAO,CAAC,UAAU,CAAC,0CAAE,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,EAA1B,CAA0B,CAAC,EAAE;4CACpG,KAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gDAChB,EAAE,EAAE,2BAA2B;gDAC/B,OAAO,EAAE,4BAA4B;gDACrC,OAAO,SAAA;6CACR,CAAC,CAAC;4CACH,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;yCAC/C;wCACD,mBAAmB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;wCAC/C,sBAAsB,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;qCACnD;yCAAM,IAAI,OAAO,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,EAAE;wCACzD,kBAAkB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;qCAC/C;gCACH,CAAC,CAAC,CAAC;6BACJ;;wBAtDH,iHAAiH;wBACjH,sCAAsC;wBACtC,WAAuC,EAAX,2BAAW,EAAX,yBAAW,EAAX,IAAW;4BAA5B,aAAa;oCAAb,aAAa;yBAqDvB;wBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,2BAA2B;4BAC/B,OAAO,EAAE,oBAAa,mBAAmB,CAAC,MAAM,GAAG,kBAAkB,CAAC,MAAM,0BAC1E,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,QACtB;yBACN,CAAC,CAAC;wBACH,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBAcpB,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,qBAAqB,CAAC,oBAAoB,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;wDACvG,qBAAqB,GAAG,qBAAqB,CAAC,oBAAoB,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;wDAE7F,2BAA2B,GAAa,EAAE,CAAC;wDACjD,qBAAM,YAAY,CAChB,iBAAiB;iEACd,sBAAsB,CAAC,aAAa,CAAC;gEACtC,2GAA2G;gEAC3G,oGAAoG;gEACpG,iEAAiE;iEAChE,MAAM,CACL,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,gCAAgC,CAAC,IAAI,CAAC,EAA5F,CAA4F,CACvG,EACH,UAAO,IAAI;;;;;4EACT,WAAW,EAAE,CAAC;4EACR,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;iFACzC,aAAa,CAAC,aAAa,CAAC,EAA5B,wBAA4B;iFAC1B,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,EAAlC,wBAAkC;4EAC5B,QAAQ,GAAK,aAAa,CAAC,aAAa,CAAC,SAAjC,CAAkC;4EAClD,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,gDAAgD,CAAC,CAAC;4EACrG,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;iFACrC,CAAA,IAAI,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,CAAA,EAAjD,wBAAiD;4EAC9B,qBAAM,mBAAmB,CAC5C,IAAI,EACJ,iBAAiB,CAAC,SAAS,CAAC,QAAQ,EACpC,QAAQ,CAAC,CAAC,CAAC,EACX,IAAI,CAAC,OAAO,CAAC,aAAa,CAC3B,EAAA;;4EALK,iBAAe,SAKpB;4EACD,IAAI,CAAC,SAAS,CAAC,cAAY,CAAC,EAAE;gFAC5B,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gFACpC,uFAAuF;gFACvF,qEAAqE;6EACtE;iFAAM;gFACL,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,GAAG,cAAY,CAAC;gFACjD,sBAAsB,CAAC,IAAI,uBACtB,cAAY,KACf,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,cAAc,IAC1C,CAAC;gFAUG,iBAAiB,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gFAC5C,iBAAiB,CAAC,OAAO,CAAC,UAAC,gBAAgB;oFACzC,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;wFACpB,uBAAuB,CAAC,yBAAyB,EAAE,gBAAgB,CAAC,CAAC;qFACtE;yFAAM;wFACL,sBAAsB,CAAC,IAAI,uBACtB,cAAY,KACf,cAAc,EAAE,gBAAgB,CAAC,cAAc,IAC/C,CAAC;qFACJ;gFACH,CAAC,CAAC,CAAC;6EACJ;4EAED,uFAAuF;4EACvF,sFAAsF;4EACtF,UAAU;4EACV,IACE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,KAAK,QAAQ,CAAC,gBAAgB;gFAC9D,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EACnC;gFACA,2BAA2B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;6EACjD;;;;4EAGH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gFAChB,EAAE,EAAE,2BAA2B;gFAC/B,OAAO,EAAE,yBAAyB;gFAClC,IAAI,MAAA;6EACL,CAAC,CAAC;4EACH,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;gFAE7C,sBAAO;;4EAGT,sFAAsF;4EACtF,4FAA4F;4EAC5F,aAAa,CAAC,aAAa,CAAC,GAAG;gFAC7B,QAAQ,EAAE,SAAS;gFACnB,IAAI,MAAA;gFACJ,eAAe,EAAE,SAAS;6EAC3B,CAAC;iFAUE,CAAA,IAAI,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,CAAA,EAAjD,wBAAiD;4EACnD,oGAAoG;4EACpG,6FAA6F;4EAC7F,6BAA6B;4EAC7B,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;gFACjD,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gFAChC,sBAAO;6EACR;4EAIyB,qBAAM,6BAA6B,CAAC,YAAY,EAAE,IAAI,CAAC,EAAA;;4EAA3E,iBAAiB,GAAG,SAAuD;iFAC7E,CAAC,iBAAiB,CAAC,KAAK,EAAxB,wBAAwB;4EAC1B,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;;4EAE1B,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC;4EACjD,iGAAiG;4EACjG,4BAA4B;4EAC5B,IAAI,cAAc,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,EAAE;gFACzD,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gFAChC,sBAAO;6EACR;4EACD,aAAa,CAAC,aAAa,CAAC,CAAC,QAAQ,GAAG,CAAC,cAAc,CAAC,CAAC;4EAEpC,qBAAM,mBAAmB,CAC5C,IAAI,EACJ,iBAAiB,CAAC,SAAS,CAAC,QAAQ,EACpC,cAAc,EACd,IAAI,CAAC,OAAO,CAAC,aAAa,CAC3B,EAAA;;4EALK,YAAY,GAAG,SAKpB;4EACD,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE;gFAC5B,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gFACpC,mFAAmF;gFACnF,uDAAuD;6EACxD;iFAAM;gFACL,qFAAqF;gFACrF,mDAAmD;gFACnD,6FAA6F;gFAC7F,uDAAuD;gFACvD,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,KAAK,aAAa,EAAE,4BAA4B,CAAC,CAAC;gFACzF,sBAAsB,CAAC,IAAI,uBACtB,YAAY,KACf,cAAc,EAAE,cAAc,CAAC,cAAc,IAC7C,CAAC;gFACH,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,GAAG,YAAY,CAAC;gFAEjD,6EAA6E;gFAC7E,iEAAiE;6EAClE;4EAED,IACE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,KAAK,QAAQ,CAAC,gBAAgB;gFAC9D,sBAAsB,CAAC,cAAc,CAAC,EACtC;gFACA,2BAA2B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;6EACjD;;;;;iEAGN,CACF,EAAA;;wDAxJD,SAwJC,CAAC;wDAEF,0GAA0G;wDAC1G,uFAAuF;wDACvF,4EAA4E;wDAE5E,2BAA2B;wDAC3B,sFAAsF;wDACtF,2EAA2E;wDAC3E,2DAA2D;wDAC3D,qBAAM,YAAY,CAChB,iBAAiB;iEACd,iCAAiC,CAAC,aAAa,CAAC;iEAChD,MAAM,CACL,UAAC,OAAO;gEACN,OAAA,OAAO,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,gCAAgC,CAAC,OAAO,CAAC;4DAAlG,CAAkG,CACrG,EACH,UAAO,eAAyC;;;;;4EACxC,aAAa,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;4EAExD,IAAI,aAAa,CAAC,aAAa,CAAC,EAAE;gFAChC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,eAAe,EAAE;oFACjD,aAAa,CAAC,aAAa,CAAC,CAAC,eAAe,GAAG,eAAe,CAAC;oFACzD,KAAqB,aAAa,CAAC,aAAa,CAAC,EAA/C,QAAQ,cAAA,EAAE,IAAI,UAAA,CAAkC;oFACxD,IAAI,IAAI,EAAE;wFACR,0FAA0F;wFAC1F,+FAA+F;wFAC/F,gDAAgD;wFAChD,sBAAO;qFACR;oFACD,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,gDAAgD,CAAC,CAAC;oFAC/F,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;oFAEnC,IACE,eAAe,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC;wFAC5D,sBAAsB,CAAC,cAAc,CAAC;wFACtC,CAAC,iBAAiB,CAAC,cAAc,CAAC,EAClC;wFACA,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;qFAC/C;iFACF;qFAAM;oFACL,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;wFAChB,EAAE,EAAE,2BAA2B;wFAC/B,OAAO,EAAE,sCAAsC;wFAC/C,eAAe,iBAAA;qFAChB,CAAC,CAAC;oFACH,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;iFAC1D;gFACD,sBAAO;6EACR;4EAED,6EAA6E;4EAC7E,aAAa,CAAC,aAAa,CAAC,GAAG;gFAC7B,QAAQ,EAAE,SAAS;gFACnB,IAAI,EAAE,SAAS;gFACf,eAAe,EAAE,eAAe;6EACjC,CAAC;iFAcE,CAAA,eAAe,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,CAAA,EAA5D,wBAA4D;4EAC9D,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE;gFAC5D,6BAA6B,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gFACpD,sBAAO;6EACR;4EACyB,qBAAM,6BAA6B,CAAC,YAAY,EAAE,eAAe,CAAC,EAAA;;4EAAtF,iBAAiB,GAAG,SAAkE;4EAC5F,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE;gFAC5B,6BAA6B,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gFACpD,sBAAO;6EACR;4EACK,cAAc,GAAuB,iBAAiB,CAAC,OAAO,CAAC;4EACrE,2FAA2F;4EAC3F,8CAA8C;4EAC9C,IAAI,cAAc,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,EAAE;gFACzD,6BAA6B,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gFACpD,sBAAO;6EACR;4EACD,kGAAkG;4EAClG,mDAAmD;4EACnD,6FAA6F;4EAC7F,uDAAuD;4EACvD,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,KAAK,aAAa,EAAE,oCAAoC,CAAC,CAAC;4EACjG,aAAa,CAAC,aAAa,CAAC,CAAC,QAAQ,GAAG,CAAC,cAAc,CAAC,CAAC;4EAEzD,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,IAAI,iBAAiB,CAAC,cAAc,CAAC,EAAE;gFAChF,sBAAO;6EACR;4EACD,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;;;;;iEAEjD,CACF,EAAA;;wDAlGD,0GAA0G;wDAC1G,uFAAuF;wDACvF,4EAA4E;wDAE5E,2BAA2B;wDAC3B,sFAAsF;wDACtF,2EAA2E;wDAC3E,2DAA2D;wDAC3D,SA0FC,CAAC;wDAEF,0DAA0D;wDAC1D,wGAAwG;wDACxG,2BAA2B;wDAC3B,+GAA+G;wDAC/G,aAAa;wDACb,2GAA2G;wDAC3G,oBAAoB;wDACpB,qEAAqE;wDACrE,oGAAoG;wDACpG,uGAAuG;wDACvG,2CAA2C;wDAC3C,qGAAqG;wDACrG,sCAAsC;wDAEtC,eAAe;wDACf,sGAAsG;wDACtG,qCAAqC;wDACrC,2EAA2E;wDAC3E,2GAA2G;wDAC3G,oFAAoF;wDACpF,6GAA6G;wDAC7G,qBAAM,QAAQ,CAAC,mBAAmB,EAAE,UAAO,WAAW;;;;;4EAC9C,KAA2B,uBAAuB,CAAC,WAAW,CAAC,EAA7D,aAAa,mBAAA,EAAE,KAAK,WAAA,CAA0C;4EAChE,KAAsC,aAAa,CAAC,aAAa,CAAC,EAAhE,QAAQ,cAAA,EAAE,IAAI,UAAA,EAAE,eAAe,qBAAA,CAAkC;4EACzE,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;gFACtC,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;6EACpE;4EACK,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;4EAChC,IAAI,CAAC,OAAO;gFAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;4EAChF,IAAI,OAAO,CAAC,aAAa,KAAK,aAAa,IAAI,OAAO,CAAC,kBAAkB,KAAK,kBAAkB,EAAE;gFAChG,sBAAO;6EACR;iFAIG,IAAI,EAAJ,wBAAI;iFACF,CAAA,IAAI,CAAC,WAAW,GAAG,0BAA0B,CAAC,CAAC,CAAC,CAAA,EAAhD,wBAAgD;4EAC7B,qBAAM,mBAAmB,CAC5C,IAAI,EACJ,iBAAiB,CAAC,SAAS,CAAC,QAAQ,EACpC,QAAQ,CAAC,CAAC,CAAC,EACX,IAAI,CAAC,OAAO,CAAC,aAAa,CAC3B,EAAA;;4EALK,YAAY,GAAG,SAKpB;4EACD,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE;gFAC5B,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;6EACrC;iFAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;gFAC5B,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,GAAG,YAAY,CAAC;gFACjD,sBAAsB,CAAC,IAAI,uBACtB,YAAY,KACf,cAAc,EAAE,OAAO,CAAC,cAAc,IACtC,CAAC;6EACJ;iFAAM;gFACL,uBAAuB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;6EAC7D;;gFAEH,sBAAO;;4EAGT,sGAAsG;4EACtG,yFAAyF;4EACzF,oGAAoG;4EACpG,kGAAkG;4EAClG,uFAAuF;4EACvF,IAAI,eAAe,EAAE;gFACnB,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE;oFAC9B,uBAAuB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;iFAC7D;qFAAM,IACL,eAAe,CAAC,WAAW,GAAG,0BAA0B,CAAC,CAAC,CAAC;oFAC3D,sBAAsB,CAAC,OAAO,CAAC;oFAC/B,wBAAwB,CAAC,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,gBAAgB,CAAC,CAAC,CAAC,KAAK,aAAa,EAArC,CAAqC,CAAC,EAC5E;oFACA,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iFACxC;gFACD,sBAAO;6EACR;4EAOkB,qBAAM,wBAAwB,CAAC,OAAO,EAAE,0BAA0B,CAAC,CAAC,CAAC,CAAC,EAAA;;4EAAnF,UAAU,GAAG,SAAsE;iFACrF,CAAA,UAAU,KAAK,UAAU,CAAC,MAAM,CAAA,EAAhC,wBAAgC;4EAIlB,qBAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,iBAAiB,CAAC,EAAA;;4EAAtE,OAAO,GAAG,SAA4D;4EAC5E,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,8CAAuC,aAAa,CAAE,CAAC,CAAC;4EACnF,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,aAAa,EAAE,4BAA4B,CAAC,CAAC;4EAC7D,qBAAM,mBAAmB,CAC5C,OAAO,EACP,iBAAiB,CAAC,SAAS,CAAC,QAAQ,EACpC,OAAO,EACP,IAAI,CAAC,OAAO,CAAC,aAAa,CAC3B,EAAA;;4EALK,YAAY,GAAG,SAKpB;4EACD,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE;gFAC5B,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;6EACxC;iFAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;gFACpC,sBAAsB,CAAC,IAAI,uBACtB,YAAY,KACf,cAAc,EAAE,OAAO,CAAC,cAAc,IACtC,CAAC;6EACJ;iFAAM;gFACL,uBAAuB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;6EAC7D;;;4EACI,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE;gFACrC,uBAAuB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;6EAC7D;iFAAM,IACL,UAAU,KAAK,UAAU,CAAC,iBAAiB;gFAC3C,kEAAkE;gFAClE,wBAAwB,CAAC,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,gBAAgB,CAAC,CAAC,CAAC,KAAK,aAAa,EAArC,CAAqC,CAAC,EAC5E;gFACA,IAAI,sBAAsB,CAAC,OAAO,CAAC,EAAE;oFACnC,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iFACxC;6EACF;;;;;iEACF,CAAC,EAAA;;wDApHF,0DAA0D;wDAC1D,wGAAwG;wDACxG,2BAA2B;wDAC3B,+GAA+G;wDAC/G,aAAa;wDACb,2GAA2G;wDAC3G,oBAAoB;wDACpB,qEAAqE;wDACrE,oGAAoG;wDACpG,uGAAuG;wDACvG,2CAA2C;wDAC3C,qGAAqG;wDACrG,sCAAsC;wDAEtC,eAAe;wDACf,sGAAsG;wDACtG,qCAAqC;wDACrC,2EAA2E;wDAC3E,2GAA2G;wDAC3G,oFAAoF;wDACpF,6GAA6G;wDAC7G,SA+FE,CAAC;wDAEH,+FAA+F;wDAC/F,sGAAsG;wDACtG,iCAAiC;wDACjC,2BAA2B,CAAC,OAAO,CAAC,UAAC,aAAa;4DAC1C,IAAA,KAAsC,aAAa,CAAC,aAAa,CAAC,EAAhE,QAAQ,cAAA,EAAE,eAAe,qBAAA,EAAE,IAAI,UAAiC,CAAC;4DACzE,MAAM,CACJ,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,CAAC,QAAQ,MAAK,QAAQ,CAAC,gBAAgB,EAC/D,uCAAuC,CACxC,CAAC;4DACF,4FAA4F;4DAC5F,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gEACpC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;6DACnE;4DACD,8GAA8G;4DAC9G,MAAM,CACJ,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EACnC,kFAAkF,CACnF,CAAC;4DACF,IAAM,qBAAqB,GAAG,qBAAqB,CAAC,oBAAoB,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;4DACxG,IAAM,gBAAgB,GAAG,qBAAqB,CAAC,oBAAoB,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;4DAC9F,IAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;4DACnC,0GAA0G;4DAC1G,sGAAsG;4DACtG,iGAAiG;4DACjG,uGAAuG;4DACvG,2GAA2G;4DAC3G,oFAAoF;4DACpF,IACE,cAAc,CAAC,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC;gEAChD,0GAA0G;gEAC1G,2CAA2C;gEAC3C,CAAC,CAAC,eAAe,IAAI,eAAe,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAC5E;gEACA,oCAAoC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;6DACxD;wDACH,CAAC,CAAC,CAAC;;;;;8CAjauC,EAAX,2BAAW;;;6CAAX,CAAA,yBAAW,CAAA;wCAAjC,kBAAkB;sEAAlB,kBAAkB;;;;;wCAAI,IAAW,CAAA;;;;;;8BAFP,EAAX,2BAAW;;;6BAAX,CAAA,yBAAW,CAAA;wBAA5B,aAAa;sDAAb,aAAa;;;;;wBAAI,IAAW,CAAA;;;wBAsavC,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;wBAE1B,4GAA4G;wBAC5G,0GAA0G;wBAC1G,mCAAmC;wBACnC,qBAAM,YAAY,CAAC,kBAAkB,EAAE,UAAO,WAAW;;;;;4CACjD,KAA2B,uBAAuB,CAAC,WAAW,CAAC,EAA7D,aAAa,mBAAA,EAAE,KAAK,WAAA,CAA0C;4CAChE,KAAsC,aAAa,CAAC,aAAa,CAAC,EAAhE,QAAQ,cAAA,EAAE,eAAe,qBAAA,EAAE,IAAI,UAAA,CAAkC;4CACzE,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gDACpC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;6CACnE;4CACK,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;4CACxB,kBAAkB,GAAK,OAAO,mBAAZ,CAAa;4CACjC,qBAAqB,GAAG,qBAAqB,CAAC,oBAAoB,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;;4CAMtG,8FAA8F;4CAC9F,CAAA,CAAC,IAAI;gDACL,SAAS,CAAC,OAAO,CAAC,IAAI,wCAAwC;gDAC9D,iBAAiB,CAAC,OAAO,CAAC;gDAC1B,OAAO,CAAC,YAAY,IAAI,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;gDACpE,gBAAgB,CAAC,kBAAkB,CAAC,KAAK,SAAS,CAAA;4CALlD,8FAA8F;4CAC9F,wBAIkD;4CAI/B,qBAAM,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAAA;;4CAA9E,UAAU,GAAG,SAAiE;4CAEpF,0GAA0G;4CAC1G,0DAA0D;4CAC1D,IAAI,UAAU,KAAK,UAAU,CAAC,MAAM,EAAE;gDACpC,uBAAuB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;6CAC7D;4CACD,uFAAuF;4CACvF,wEAAwE;4CACxE,qDAAqD;4CACrD,IAAI,UAAU,KAAK,UAAU,CAAC,iBAAiB,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE;gDACnF,sBAAO;6CACR;4CACD,uGAAuG;4CACvG,sGAAsG;4CACtG,uFAAuF;4CAEvF,iGAAiG;4CACjG,0GAA0G;4CAC1G,wGAAwG;4CACxG,qGAAqG;4CACrG,uBAAuB;4CACvB,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,EAAE;gDAC9E,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;6CACpD;;;;;iCAEJ,CAAC,EAAA;;wBApDF,4GAA4G;wBAC5G,0GAA0G;wBAC1G,mCAAmC;wBACnC,SAiDE,CAAC;wBAEH,4BAA4B;wBAC5B,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;oCACtB,IAAA,QAAQ,GAAK,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,SAA1C,CAA2C;oCAC3D,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,gDAAgD,CAAC,CAAC;oCACrG,IAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;oCACnC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,gDAAgD,CAAC,CAAC;oCAC5E,IAAqB,cAAc,GAAK,4BAA4B,CAC1E,IAAI,EACJ,KAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,oBAAoB,EACpB,QAAQ,EACR,cAAc,CAAC,aAAa,CAC7B,oBAN0C,CAMzC;oCACF,6BACK,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,6BACK,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,6BACK,OAAO,KACV,cAAc,EAAE,OAAO,CAAC,kBAAkB,IAC1C;gCACJ,CAAC,CAAC,CACH;gCACH,CAAC,CAAC,EAAE;yBACP,CAAC;wBACqE,qBAAM,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;4BACjC,IAAA,QAAQ,GAAK,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,SAA1C,CAA2C;4BAC3D,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,gDAAgD,CAAC,CAAC;4BACrG,IAAM,iBAAiB,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;4BACtC,MAAM,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,gDAAgD,CAAC,CAAC;4BACjF,IAAA,KAA0C,4BAA4B,CAC1E,IAAI,EACJ,KAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,oBAAoB,EACpB,QAAQ,EACR,iBAAiB,CAAC,aAAa,CAChC,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,sGAAsG;4BACtG,oGAAoG;4BACpG,6GAA6G;4BAC7G,kEAAkE;4BAClE,IAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;4BAChD,IAAI,wBAAwB,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,gBAAgB,CAAC,CAAC,CAAC,KAAK,aAAa,EAArC,CAAqC,CAAC,EAAE;gCAC7F,OAAO;6BACR;4BACD,MAAM,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,mDAAmD,CAAC,CAAC;4BACzF,qBAAqB,CAAC,iBAAiB,wBAAO,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,wBAAO,OAAO,KAAE,QAAQ,UAAA,IAAG,CAAC;wBAC/E,CAAC,CAAC,CAAC;wBAEG,qBAAqB,GAAG,4BAA4B,CACxD,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,CACtB,CAAC;wBAEF,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE;4BAG7B,2CAA0D,EAAE,CAAC;4BAI7D,0BAAyC,EAAE,CAAC;4BAG5C,8BAA6C,EAAE,CAAC;4BAEtD,oBAAoB,CAAC,OAAO,CAAC,UAAC,IAAI;gCAChC,IAAM,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gCAC1D,IAAM,mBAAmB,GAAG,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;gCACjE,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,EAAE;oCACnC,IAAM,uBAAuB,GAAG,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oCACxE,IAAI,SAAS,CAAC,uBAAuB,CAAC,EAAE;wCACtC,wCAAsC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qCACnD;yCAAM;wCACL,2BAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qCACtC;iCACF;qCAAM;oCACL,IAAM,sBAAsB,GAAG,qBAAqB,CAAC,oBAAoB,EAAE,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;oCACzG,IAAI,mBAAmB,CAAC,WAAW,IAAI,sBAAsB,CAAC,CAAC,CAAC,EAAE;wCAChE,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC,CAAC;qCACvG;oCACD,uBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iCAClC;4BACH,CAAC,CAAC,CAAC;4BAEH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gCAChB,EAAE,EAAE,2BAA2B;gCAC/B,OAAO,EAAE,2EAA2E;gCACpF,oBAAoB,sBAAA;gCACpB,sCAAsC,0CAAA;gCACtC,qBAAqB,yBAAA;gCACrB,yBAAyB,6BAAA;6BAC1B,CAAC,CAAC;yBACJ;wBAED,IAAI,wBAAwB,CAAC,MAAM,GAAG,CAAC,EAAE;4BACvC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gCAChB,EAAE,EAAE,2BAA2B;gCAC/B,OAAO,EAAE,+EAA+E;gCACxF,oBAAoB,sBAAA;gCACpB,wBAAwB,0BAAA;6BACzB,CAAC,CAAC;yBACJ;wBAED,IAAI,6BAA6B,CAAC,MAAM,GAAG,CAAC,EAAE;4BAC5C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gCAChB,EAAE,EAAE,2BAA2B;gCAC/B,OAAO,EAAE,wFAAwF;gCACjG,oBAAoB,sBAAA;gCACpB,6BAA6B,+BAAA;6BAC9B,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,sBAAO;gCACL,gBAAgB,kBAAA;gCAChB,yBAAyB,2BAAA;gCACzB,aAAa,eAAA;gCACb,qBAAqB,uBAAA;gCACrB,iBAAiB,mBAAA;6BAClB,EAAC;;;;KACH;IAEe,gDAAqB,GAArC,UACE,OAAyB,EACzB,eAAgC;;;;4BAEzB,qBAAM,aAAa,CACxB,eAAe,CAAC,SAAS,EACzB,OAAO,EACP,eAAe,CAAC,eAAe,EAC/B,eAAe,CAAC,mBAAmB,CACpC,EAAA;4BALD,sBAAO,SAKN,EAAC;;;;KACH;IAEK,mDAAwB,GAA9B,UACE,QAAkB,EAClB,oBAAgC,EAChC,gBAAyC;;;;;;;wBAElC,KAAA,CAAA,KAAA,MAAM,CAAA,CAAC,WAAW,CAAA;wBAErB,qBAAM,QAAQ,CAAC,QAAQ,EAAE,UAAO,OAAO,EAAE,KAAK;;;;;4CACtC,kBAAkB,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;4CACvD,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,IAAI,eAAe,CAAC,kBAAkB,CAAC,EAAE;gDACzE,sBAAO;6CACR;4CACM,mBAAmB,GAAuB,kBAAkB,GAAzC,EAAE,iBAAiB,GAAI,kBAAkB,GAAtB,CAAuB;4CAC9D,eAAe,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;4CAElD,6GAA6G;4CAC7G,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE;gDAC/B,sBAAO;6CACR;4CAMK,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC;4CAMxF,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,GAAG,CAAC,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC;4CAE5F,qBAAM,eAAe,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,EAAA;;;gDAA9D,SAA8D;;4CAC9D,qBAAM,eAAe,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,EAAA;;4CAFxD;gDAEJ,SAA4D;8CAC7D,EAHM,SAAS,QAAA,EAAE,QAAQ,QAAA;4CAMpB,aAAa,GAAG,gBAAgB,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4CAC9D,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,aAAa,CAAC,CAAC;4CAEtD,iBAAiB;4CACjB,MAAM,CACJ,OAAO,IAAI,SAAS,EACpB,6BAAsB,gBAAgB,0DAAgD,kBAAkB,eAAK,OAAO,iBAAO,SAAS,MAAG,CACxI,CAAC;4CACF,MAAM,CACJ,kBAAkB,KAAK,CAAC,IAAI,SAAS,GAAG,CAAC,EACzC,8EAA8E,CAC/E,CAAC;4CACF,sBAAO,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,EAAC;;;iCACxC,CAAC,EAAA;4BA7CN,sBAAO,cACL,CACE,SA2CE,CACH,CAAC,MAAM,CAAC,SAAS,CAAC,EACpB,EAAC;;;;KACH;IACH,uBAAC;AAAD,CAAC,AAv4CD,IAu4CC"}
|
|
1
|
+
{"version":3,"file":"BundleDataClient.js","sourceRoot":"","sources":["../../../../src/clients/BundleDataClient/BundleDataClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -52,6 +52,7 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
52
52
|
exclusivityDeadline: number;
|
|
53
53
|
relayer: string;
|
|
54
54
|
repaymentChainId: number;
|
|
55
|
+
lpFeePct: BigNumber;
|
|
55
56
|
relayExecutionInfo: {
|
|
56
57
|
updatedRecipient: string;
|
|
57
58
|
updatedOutputAmount: BigNumber;
|
|
@@ -59,7 +60,6 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
59
60
|
updatedMessageHash: string;
|
|
60
61
|
updatedMessage?: string | undefined;
|
|
61
62
|
};
|
|
62
|
-
lpFeePct: BigNumber;
|
|
63
63
|
message?: string | undefined;
|
|
64
64
|
}[];
|
|
65
65
|
refunds: Record<string, BigNumber>;
|
|
@@ -296,6 +296,7 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
296
296
|
exclusivityDeadline: number;
|
|
297
297
|
relayer: string;
|
|
298
298
|
repaymentChainId: number;
|
|
299
|
+
lpFeePct: BigNumber;
|
|
299
300
|
relayExecutionInfo: {
|
|
300
301
|
updatedRecipient: string;
|
|
301
302
|
updatedOutputAmount: BigNumber;
|
|
@@ -303,7 +304,6 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
303
304
|
updatedMessageHash: string;
|
|
304
305
|
updatedMessage?: string | undefined;
|
|
305
306
|
};
|
|
306
|
-
lpFeePct: BigNumber;
|
|
307
307
|
message?: string | undefined;
|
|
308
308
|
}[];
|
|
309
309
|
refunds: Record<string, BigNumber>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Contract } from "ethers";
|
|
2
|
+
import { BigNumber, DepositSearchResult, MakeOptional } from "../../utils";
|
|
3
|
+
import { EventSearchConfig } from "../../utils/EventUtils";
|
|
4
|
+
import { SpokePoolClient, SpokePoolUpdate } from "./SpokePoolClient";
|
|
5
|
+
import winston from "winston";
|
|
6
|
+
import { HubPoolClient } from "../HubPoolClient";
|
|
7
|
+
import { FillStatus, RelayData } from "../../interfaces";
|
|
8
|
+
/**
|
|
9
|
+
* An EVM-specific SpokePoolClient.
|
|
10
|
+
*/
|
|
11
|
+
export declare class EVMSpokePoolClient extends SpokePoolClient {
|
|
12
|
+
readonly spokePool: Contract;
|
|
13
|
+
constructor(logger: winston.Logger, spokePool: Contract, hubPoolClient: HubPoolClient | null, chainId: number, deploymentBlock: number, eventSearchConfig?: MakeOptional<EventSearchConfig, "toBlock">);
|
|
14
|
+
relayFillStatus(relayData: RelayData, blockTag?: number | "latest", destinationChainId?: number): Promise<FillStatus>;
|
|
15
|
+
getMaxFillDeadlineInRange(startBlock: number, endBlock: number): Promise<number>;
|
|
16
|
+
private _availableEventsOnSpoke;
|
|
17
|
+
_queryableEventNames(): string[];
|
|
18
|
+
protected _update(eventsToQuery: string[]): Promise<SpokePoolUpdate>;
|
|
19
|
+
getTimeAt(blockNumber: number): Promise<number>;
|
|
20
|
+
findDeposit(depositId: BigNumber): Promise<DepositSearchResult>;
|
|
21
|
+
getTimestampForBlock(blockNumber: number): Promise<number>;
|
|
22
|
+
}
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { __assign, __awaiter, __extends, __generator, __spreadArray } from "tslib";
|
|
2
|
+
import { BigNumber, getNetworkName, InvalidFill, toBN } from "../../utils";
|
|
3
|
+
import { paginatedEventQuery, sortEventsAscendingInPlace, spreadEventWithBlockNumber, } from "../../utils/EventUtils";
|
|
4
|
+
import { isUpdateFailureReason } from "../BaseAbstractClient";
|
|
5
|
+
import { knownEventNames, SpokePoolClient } from "./SpokePoolClient";
|
|
6
|
+
import { findDepositBlock, getMaxFillDeadlineInRange as getMaxFillDeadline, getTimeAt as _getTimeAt, relayFillStatus, isZeroAddress, getTimestampForBlock as _getTimestampForBlock, } from "../../utils/SpokeUtils";
|
|
7
|
+
/**
|
|
8
|
+
* An EVM-specific SpokePoolClient.
|
|
9
|
+
*/
|
|
10
|
+
var EVMSpokePoolClient = /** @class */ (function (_super) {
|
|
11
|
+
__extends(EVMSpokePoolClient, _super);
|
|
12
|
+
function EVMSpokePoolClient(logger, spokePool, hubPoolClient, chainId, deploymentBlock, eventSearchConfig) {
|
|
13
|
+
if (eventSearchConfig === void 0) { eventSearchConfig = { fromBlock: 0, maxBlockLookBack: 0 }; }
|
|
14
|
+
var _this = _super.call(this, logger, hubPoolClient, chainId, deploymentBlock, eventSearchConfig) || this;
|
|
15
|
+
_this.spokePool = spokePool;
|
|
16
|
+
return _this;
|
|
17
|
+
}
|
|
18
|
+
EVMSpokePoolClient.prototype.relayFillStatus = function (relayData, blockTag, destinationChainId) {
|
|
19
|
+
return relayFillStatus(this.spokePool, relayData, blockTag, destinationChainId);
|
|
20
|
+
};
|
|
21
|
+
EVMSpokePoolClient.prototype.getMaxFillDeadlineInRange = function (startBlock, endBlock) {
|
|
22
|
+
return getMaxFillDeadline(this.spokePool, startBlock, endBlock);
|
|
23
|
+
};
|
|
24
|
+
EVMSpokePoolClient.prototype._availableEventsOnSpoke = function (eventNames) {
|
|
25
|
+
var _this = this;
|
|
26
|
+
if (eventNames === void 0) { eventNames = knownEventNames; }
|
|
27
|
+
return Object.fromEntries(this.spokePool.interface.fragments
|
|
28
|
+
.filter(function (_a) {
|
|
29
|
+
var name = _a.name, type = _a.type;
|
|
30
|
+
return type === "event" && eventNames.includes(name);
|
|
31
|
+
})
|
|
32
|
+
.map(function (_a) {
|
|
33
|
+
var name = _a.name;
|
|
34
|
+
return [name, _this.spokePool.filters[name]()];
|
|
35
|
+
}));
|
|
36
|
+
};
|
|
37
|
+
EVMSpokePoolClient.prototype._queryableEventNames = function () {
|
|
38
|
+
return Object.keys(this._availableEventsOnSpoke(knownEventNames));
|
|
39
|
+
};
|
|
40
|
+
EVMSpokePoolClient.prototype._update = function (eventsToQuery) {
|
|
41
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
42
|
+
var searchConfig, reason, eventSearchConfigs, spokePool, timerStart, multicallFunctions, _a, multicallOutput, events, currentTime, errMsg;
|
|
43
|
+
var _this = this;
|
|
44
|
+
return __generator(this, function (_b) {
|
|
45
|
+
switch (_b.label) {
|
|
46
|
+
case 0: return [4 /*yield*/, this.updateSearchConfig(this.spokePool.provider)];
|
|
47
|
+
case 1:
|
|
48
|
+
searchConfig = _b.sent();
|
|
49
|
+
if (isUpdateFailureReason(searchConfig)) {
|
|
50
|
+
reason = searchConfig;
|
|
51
|
+
return [2 /*return*/, { success: false, reason: reason }];
|
|
52
|
+
}
|
|
53
|
+
eventSearchConfigs = eventsToQuery.map(function (eventName) {
|
|
54
|
+
if (!_this._queryableEventNames().includes(eventName)) {
|
|
55
|
+
throw new Error("SpokePoolClient: Cannot query unrecognised SpokePool event name: ".concat(eventName));
|
|
56
|
+
}
|
|
57
|
+
var _searchConfig = __assign({}, searchConfig); // shallow copy
|
|
58
|
+
// By default, an event's query range is controlled by the `eventSearchConfig` passed in during instantiation.
|
|
59
|
+
// However, certain events have special overriding requirements to their search ranges:
|
|
60
|
+
// - EnabledDepositRoute: The full history is always required, so override the requested fromBlock.
|
|
61
|
+
if (eventName === "EnabledDepositRoute" && !_this.isUpdated) {
|
|
62
|
+
_searchConfig.fromBlock = _this.deploymentBlock;
|
|
63
|
+
}
|
|
64
|
+
return {
|
|
65
|
+
filter: _this._availableEventsOnSpoke()[eventName],
|
|
66
|
+
searchConfig: _searchConfig,
|
|
67
|
+
};
|
|
68
|
+
});
|
|
69
|
+
spokePool = this.spokePool;
|
|
70
|
+
this.log("debug", "Updating SpokePool client for chain ".concat(this.chainId), {
|
|
71
|
+
eventsToQuery: eventsToQuery,
|
|
72
|
+
searchConfig: searchConfig,
|
|
73
|
+
spokePool: spokePool.address,
|
|
74
|
+
});
|
|
75
|
+
timerStart = Date.now();
|
|
76
|
+
multicallFunctions = ["getCurrentTime"];
|
|
77
|
+
return [4 /*yield*/, Promise.all(__spreadArray([
|
|
78
|
+
spokePool.callStatic.multicall(multicallFunctions.map(function (f) { return spokePool.interface.encodeFunctionData(f); }), { blockTag: searchConfig.toBlock })
|
|
79
|
+
], eventSearchConfigs.map(function (config) { return paginatedEventQuery(_this.spokePool, config.filter, config.searchConfig); }), true))];
|
|
80
|
+
case 2:
|
|
81
|
+
_a = _b.sent(), multicallOutput = _a[0], events = _a.slice(1);
|
|
82
|
+
this.log("debug", "Time to query new events from RPC for ".concat(this.chainId, ": ").concat(Date.now() - timerStart, " ms"));
|
|
83
|
+
currentTime = multicallFunctions.map(function (fn, idx) { return spokePool.interface.decodeFunctionResult(fn, multicallOutput[idx])[0]; })[0];
|
|
84
|
+
if (!BigNumber.isBigNumber(currentTime) || currentTime.lt(this.currentTime)) {
|
|
85
|
+
errMsg = BigNumber.isBigNumber(currentTime)
|
|
86
|
+
? "currentTime: ".concat(currentTime, " < ").concat(toBN(this.currentTime))
|
|
87
|
+
: "currentTime is not a BigNumber: ".concat(JSON.stringify(currentTime));
|
|
88
|
+
throw new Error("SpokePoolClient::update: ".concat(errMsg));
|
|
89
|
+
}
|
|
90
|
+
// Sort all events to ensure they are stored in a consistent order.
|
|
91
|
+
events.forEach(function (events) { return sortEventsAscendingInPlace(events); });
|
|
92
|
+
return [2 /*return*/, {
|
|
93
|
+
success: true,
|
|
94
|
+
currentTime: currentTime.toNumber(),
|
|
95
|
+
searchEndBlock: searchConfig.toBlock,
|
|
96
|
+
events: events,
|
|
97
|
+
}];
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
});
|
|
101
|
+
};
|
|
102
|
+
EVMSpokePoolClient.prototype.getTimeAt = function (blockNumber) {
|
|
103
|
+
return _getTimeAt(this.spokePool, blockNumber);
|
|
104
|
+
};
|
|
105
|
+
EVMSpokePoolClient.prototype.findDeposit = function (depositId) {
|
|
106
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
107
|
+
var deposit, upperBound, fromBlock, chain, reason, toBlock, tStart, maxBlockLookBack, query, tStop, event, _a;
|
|
108
|
+
var _b;
|
|
109
|
+
return __generator(this, function (_c) {
|
|
110
|
+
switch (_c.label) {
|
|
111
|
+
case 0:
|
|
112
|
+
deposit = this.getDeposit(depositId);
|
|
113
|
+
if (deposit) {
|
|
114
|
+
return [2 /*return*/, { found: true, deposit: deposit }];
|
|
115
|
+
}
|
|
116
|
+
upperBound = this.latestBlockSearched || undefined;
|
|
117
|
+
return [4 /*yield*/, findDepositBlock(this.spokePool, depositId, this.deploymentBlock, upperBound)];
|
|
118
|
+
case 1:
|
|
119
|
+
fromBlock = _c.sent();
|
|
120
|
+
chain = getNetworkName(this.chainId);
|
|
121
|
+
if (!fromBlock) {
|
|
122
|
+
reason = "Unable to find ".concat(chain, " depositId ").concat(depositId) +
|
|
123
|
+
" within blocks [".concat(this.deploymentBlock, ", ").concat(upperBound !== null && upperBound !== void 0 ? upperBound : "latest", "].");
|
|
124
|
+
return [2 /*return*/, { found: false, code: InvalidFill.DepositIdNotFound, reason: reason }];
|
|
125
|
+
}
|
|
126
|
+
toBlock = fromBlock;
|
|
127
|
+
tStart = Date.now();
|
|
128
|
+
maxBlockLookBack = this.eventSearchConfig.maxBlockLookBack;
|
|
129
|
+
return [4 /*yield*/, Promise.all([
|
|
130
|
+
paginatedEventQuery(this.spokePool, this.spokePool.filters.V3FundsDeposited(null, null, null, null, null, depositId), { fromBlock: fromBlock, toBlock: toBlock, maxBlockLookBack: maxBlockLookBack }),
|
|
131
|
+
paginatedEventQuery(this.spokePool, this.spokePool.filters.FundsDeposited(null, null, null, null, null, depositId), { fromBlock: fromBlock, toBlock: toBlock, maxBlockLookBack: maxBlockLookBack }),
|
|
132
|
+
])];
|
|
133
|
+
case 2:
|
|
134
|
+
query = (_c.sent()).flat();
|
|
135
|
+
tStop = Date.now();
|
|
136
|
+
event = query.find(function (_a) {
|
|
137
|
+
var args = _a.args;
|
|
138
|
+
return args["depositId"].eq(depositId);
|
|
139
|
+
});
|
|
140
|
+
if (event === undefined) {
|
|
141
|
+
return [2 /*return*/, {
|
|
142
|
+
found: false,
|
|
143
|
+
code: InvalidFill.DepositIdNotFound,
|
|
144
|
+
reason: "".concat(chain, " depositId ").concat(depositId, " not found at block ").concat(fromBlock, "."),
|
|
145
|
+
}];
|
|
146
|
+
}
|
|
147
|
+
_a = [__assign({}, spreadEventWithBlockNumber(event))];
|
|
148
|
+
_b = { originChainId: this.chainId };
|
|
149
|
+
return [4 /*yield*/, this.getBlockNumber(Number(event.args["quoteTimestamp"]))];
|
|
150
|
+
case 3:
|
|
151
|
+
deposit = __assign.apply(void 0, _a.concat([(_b.quoteBlockNumber = _c.sent(), _b.fromLiteChain = true, _b.toLiteChain = true, _b)]));
|
|
152
|
+
if (isZeroAddress(deposit.outputToken)) {
|
|
153
|
+
deposit.outputToken = this.getDestinationTokenForDeposit(deposit);
|
|
154
|
+
}
|
|
155
|
+
deposit.fromLiteChain = this.isOriginLiteChain(deposit);
|
|
156
|
+
deposit.toLiteChain = this.isDestinationLiteChain(deposit);
|
|
157
|
+
this.logger.debug({
|
|
158
|
+
at: "SpokePoolClient#findDeposit",
|
|
159
|
+
message: "Located V3 deposit outside of SpokePoolClient's search range",
|
|
160
|
+
deposit: deposit,
|
|
161
|
+
elapsedMs: tStop - tStart,
|
|
162
|
+
});
|
|
163
|
+
return [2 /*return*/, { found: true, deposit: deposit }];
|
|
164
|
+
}
|
|
165
|
+
});
|
|
166
|
+
});
|
|
167
|
+
};
|
|
168
|
+
EVMSpokePoolClient.prototype.getTimestampForBlock = function (blockNumber) {
|
|
169
|
+
return _getTimestampForBlock(this.spokePool.provider, blockNumber);
|
|
170
|
+
};
|
|
171
|
+
return EVMSpokePoolClient;
|
|
172
|
+
}(SpokePoolClient));
|
|
173
|
+
export { EVMSpokePoolClient };
|
|
174
|
+
//# sourceMappingURL=EVMSpokePoolClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EVMSpokePoolClient.js","sourceRoot":"","sources":["../../../../src/clients/SpokePoolClient/EVMSpokePoolClient.ts"],"names":[],"mappings":"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"}
|