@axelar-network/axelarjs-sdk 0.6.11-alpha.6 → 0.6.12

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.
Files changed (28) hide show
  1. package/dist/src/assets/mainnet.assets.d.ts +176 -0
  2. package/dist/src/assets/mainnet.assets.d.ts.map +1 -1
  3. package/dist/src/assets/mainnet.assets.js +176 -0
  4. package/dist/src/assets/mainnet.assets.js.map +1 -1
  5. package/dist/src/constants/index.js +1 -1
  6. package/dist/src/constants/index.js.map +1 -1
  7. package/dist/src/libs/TransactionRecoveryApi/AxelarGMPRecoveryAPI.d.ts.map +1 -1
  8. package/dist/src/libs/TransactionRecoveryApi/AxelarGMPRecoveryAPI.js +29 -5
  9. package/dist/src/libs/TransactionRecoveryApi/AxelarGMPRecoveryAPI.js.map +1 -1
  10. package/dist/src/libs/TransactionRecoveryApi/AxelarRecoveryApi.d.ts +2 -2
  11. package/dist/src/libs/TransactionRecoveryApi/AxelarRecoveryApi.d.ts.map +1 -1
  12. package/dist/src/libs/TransactionRecoveryApi/constants/error.d.ts +28 -17
  13. package/dist/src/libs/TransactionRecoveryApi/constants/error.d.ts.map +1 -1
  14. package/dist/src/libs/TransactionRecoveryApi/constants/error.js +46 -32
  15. package/dist/src/libs/TransactionRecoveryApi/constants/error.js.map +1 -1
  16. package/dist/src/libs/TransactionRecoveryApi/helpers/contractCallHelper.d.ts +4 -0
  17. package/dist/src/libs/TransactionRecoveryApi/helpers/contractCallHelper.d.ts.map +1 -1
  18. package/dist/src/libs/TransactionRecoveryApi/helpers/contractCallHelper.js +46 -14
  19. package/dist/src/libs/TransactionRecoveryApi/helpers/contractCallHelper.js.map +1 -1
  20. package/dist/src/libs/test/TransactionRecoveryAPI/AxelarGMPRecoveryAPI.spec.js +41 -27
  21. package/dist/src/libs/test/TransactionRecoveryAPI/AxelarGMPRecoveryAPI.spec.js.map +1 -1
  22. package/dist/src/libs/test/TransactionRecoveryAPI/helper/contractCallHelper.spec.js +81 -3
  23. package/dist/src/libs/test/TransactionRecoveryAPI/helper/contractCallHelper.spec.js.map +1 -1
  24. package/dist/src/libs/test/testUtils/localChain.d.ts +9 -0
  25. package/dist/src/libs/test/testUtils/localChain.d.ts.map +1 -0
  26. package/dist/src/libs/test/testUtils/localChain.js +33 -0
  27. package/dist/src/libs/test/testUtils/localChain.js.map +1 -0
  28. package/package.json +1 -1
@@ -1,20 +1,52 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.callExecute = void 0;
12
+ exports.callExecute = exports.CALL_EXECUTE_ERROR = void 0;
13
+ var CALL_EXECUTE_ERROR;
14
+ (function (CALL_EXECUTE_ERROR) {
15
+ CALL_EXECUTE_ERROR["REVERT"] = "REVERT";
16
+ CALL_EXECUTE_ERROR["INSUFFICIENT_FUNDS"] = "INSUFFICIENT_FUNDS";
17
+ })(CALL_EXECUTE_ERROR = exports.CALL_EXECUTE_ERROR || (exports.CALL_EXECUTE_ERROR = {}));
4
18
  function callExecute(params, contract) {
5
- const { commandId, isContractCallWithToken, payload, sourceAddress, sourceChain, amount, symbol, } = params;
6
- if (isContractCallWithToken) {
7
- return contract
8
- .executeWithToken(commandId, sourceChain, sourceAddress, payload, symbol, amount)
9
- .then((tx) => {
10
- return tx.wait();
11
- });
12
- }
13
- else {
14
- return contract
15
- .execute(commandId, sourceChain, sourceAddress, payload)
16
- .then((tx) => tx.wait());
17
- }
19
+ return __awaiter(this, void 0, void 0, function* () {
20
+ const { commandId, isContractCallWithToken, payload, sourceAddress, sourceChain, amount, symbol, } = params;
21
+ let txReceipt;
22
+ if (isContractCallWithToken) {
23
+ // Checking if the destination contract call reverted
24
+ const estimatedGas = yield contract.estimateGas
25
+ .executeWithToken(commandId, sourceChain, sourceAddress, payload, symbol, amount)
26
+ .catch(() => undefined);
27
+ if (!estimatedGas)
28
+ throw new Error(CALL_EXECUTE_ERROR.REVERT);
29
+ txReceipt = contract
30
+ .executeWithToken(commandId, sourceChain, sourceAddress, payload, symbol, amount)
31
+ .then((tx) => tx.wait())
32
+ .catch(() => undefined);
33
+ }
34
+ else {
35
+ // Checking if the destination contract call reverted
36
+ const estimatedGas = yield contract.estimateGas
37
+ .execute(commandId, sourceChain, sourceAddress, payload)
38
+ .catch(() => undefined);
39
+ if (!estimatedGas)
40
+ throw new Error(CALL_EXECUTE_ERROR.REVERT);
41
+ txReceipt = contract
42
+ .execute(commandId, sourceChain, sourceAddress, payload)
43
+ .then((tx) => tx.wait())
44
+ .catch(() => undefined);
45
+ }
46
+ if (!txReceipt)
47
+ throw new Error(CALL_EXECUTE_ERROR.INSUFFICIENT_FUNDS);
48
+ return txReceipt;
49
+ });
18
50
  }
19
51
  exports.callExecute = callExecute;
20
52
  //# sourceMappingURL=contractCallHelper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contractCallHelper.js","sourceRoot":"","sources":["../../../../../src/libs/TransactionRecoveryApi/helpers/contractCallHelper.ts"],"names":[],"mappings":";;;AAGA,SAAgB,WAAW,CAAC,MAAqB,EAAE,QAAkB;IACnE,MAAM,EACJ,SAAS,EACT,uBAAuB,EACvB,OAAO,EACP,aAAa,EACb,WAAW,EACX,MAAM,EACN,MAAM,GACP,GAAG,MAAM,CAAC;IAEX,IAAI,uBAAuB,EAAE;QAC3B,OAAO,QAAQ;aACZ,gBAAgB,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;aAChF,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE;YAChC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC,CAAC,CAAC;KACN;SAAM;QACL,OAAO,QAAQ;aACZ,OAAO,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,CAAC;aACvD,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;KACjD;AACH,CAAC;AAtBD,kCAsBC"}
1
+ {"version":3,"file":"contractCallHelper.js","sourceRoot":"","sources":["../../../../../src/libs/TransactionRecoveryApi/helpers/contractCallHelper.ts"],"names":[],"mappings":";;;;;;;;;;;;AAGA,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,uCAAiB,CAAA;IACjB,+DAAyC,CAAA;AAC3C,CAAC,EAHW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAG7B;AAED,SAAsB,WAAW,CAC/B,MAAqB,EACrB,QAAkB;;QAElB,MAAM,EACJ,SAAS,EACT,uBAAuB,EACvB,OAAO,EACP,aAAa,EACb,WAAW,EACX,MAAM,EACN,MAAM,GACP,GAAG,MAAM,CAAC;QAEX,IAAI,SAAsC,CAAC;QAC3C,IAAI,uBAAuB,EAAE;YAC3B,qDAAqD;YACrD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,WAAW;iBAC5C,gBAAgB,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;iBAChF,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC1B,IAAI,CAAC,YAAY;gBAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAE9D,SAAS,GAAG,QAAQ;iBACjB,gBAAgB,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;iBAChF,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;iBAC5C,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;SAC3B;aAAM;YACL,qDAAqD;YACrD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,WAAW;iBAC5C,OAAO,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,CAAC;iBACvD,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC1B,IAAI,CAAC,YAAY;gBAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAE9D,SAAS,GAAG,QAAQ;iBACjB,OAAO,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,CAAC;iBACvD,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;iBAC5C,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;SAC3B;QAED,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;QACvE,OAAO,SAAS,CAAC;IACnB,CAAC;CAAA;AAzCD,kCAyCC"}
@@ -679,7 +679,7 @@ describe("AxelarDepositRecoveryAPI", () => {
679
679
  const response = yield api.execute("0x86e5f91eff5a8a815e90449ca32e02781508f3b94620bbdf521f2ba07c41d9ae", evmWalletDetails);
680
680
  expect(response).toEqual((0, error_1.GMPQueryError)());
681
681
  }));
682
- test("it should call 'saveGMP' given contract call failed", () => __awaiter(void 0, void 0, void 0, function* () {
682
+ test("it calls 'execute' and return revert error given 'callExecute' throws 'CALL_EXECUTE_ERROR.REVERT' error", () => __awaiter(void 0, void 0, void 0, function* () {
683
683
  // mock query api
684
684
  const executeParams = (0, stubs_1.executeParamsStub)();
685
685
  const mockApi = jest.spyOn(api, "queryExecuteParams");
@@ -688,45 +688,46 @@ describe("AxelarDepositRecoveryAPI", () => {
688
688
  data: executeParams,
689
689
  });
690
690
  // Mock contract call is failed
691
- const error = {
692
- error: {
693
- reason: "execution reverted",
694
- transaction: {
695
- data: "0x1a98b2e00ba67952f32cac9a910b1a24a437ecd6c4b0bc37a58a7fad76aad241a11d647c00000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000009589400000000000000000000000000000000000000000000000000000000000000008457468657265756d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a30783743664338313935356164393238366335313638353638313743333762376641653837443865373900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000ba86a5719722b02a5d5e388999c25f3333c7a9fb00000000000000000000000000000000000000000000000000000000000000056155534443000000000000000000000000000000000000000000000000000000",
696
- },
697
- },
698
- };
691
+ const error = new Error(ContractCallHelper.CALL_EXECUTE_ERROR.REVERT);
699
692
  jest.spyOn(ContractCallHelper, "callExecute").mockRejectedValueOnce(error);
700
693
  // Mock private saveGMP
701
694
  const mockGMPApi = jest.spyOn(AxelarGMPRecoveryAPI_1.AxelarGMPRecoveryAPI.prototype, "saveGMP");
702
695
  mockGMPApi.mockImplementation(() => Promise.resolve(undefined));
703
- const response = yield api.execute("0x86e5f91eff5a8a815e90449ca32e02781508f3b94620bbdf521f2ba07c41d9ae", evmWalletDetails);
696
+ const sourceTxHash = "0x86e5f91eff5a8a815e90449ca32e02781508f3b94620bbdf521f2ba07c41d9ae";
697
+ const response = yield api.execute(sourceTxHash, evmWalletDetails);
704
698
  // Expect returns error
705
- const { commandId, sourceAddress, sourceChain, payload, symbol, amount } = executeParams;
706
- expect(response).toEqual({
707
- success: false,
708
- error: "Transaction execution was reverted. Please check the implementation of the destination contract's _executeWithToken function.",
709
- data: {
710
- functionName: "executeWithToken",
711
- args: {
712
- commandId,
713
- sourceChain,
714
- sourceAddress,
715
- payload,
716
- symbol,
717
- amount,
718
- },
719
- },
699
+ expect(response).toEqual((0, error_1.ExecutionRevertedError)(executeParams));
700
+ // Expect we don't call saveGMP api
701
+ expect(mockGMPApi).toHaveBeenCalledWith(sourceTxHash, new ethers_1.ethers.Wallet(evmWalletDetails.privateKey).address, "", response.error);
702
+ }));
703
+ test("it calls 'execute' and return revert error given 'callExecute' throws 'CALL_EXECUTE_ERROR.INSUFFICIENT_FUNDS' error", () => __awaiter(void 0, void 0, void 0, function* () {
704
+ // mock query api
705
+ const executeParams = (0, stubs_1.executeParamsStub)();
706
+ const mockApi = jest.spyOn(api, "queryExecuteParams");
707
+ mockApi.mockResolvedValueOnce({
708
+ status: AxelarRecoveryApi_1.GMPStatus.DEST_GATEWAY_APPROVED,
709
+ data: executeParams,
720
710
  });
711
+ // Mock contract call is failed
712
+ const error = new Error(ContractCallHelper.CALL_EXECUTE_ERROR.INSUFFICIENT_FUNDS);
713
+ jest.spyOn(ContractCallHelper, "callExecute").mockRejectedValueOnce(error);
714
+ // Mock private saveGMP
715
+ const mockGMPApi = jest.spyOn(AxelarGMPRecoveryAPI_1.AxelarGMPRecoveryAPI.prototype, "saveGMP");
716
+ mockGMPApi.mockImplementation(() => Promise.resolve(undefined));
717
+ const sourceTxHash = "0x86e5f91eff5a8a815e90449ca32e02781508f3b94620bbdf521f2ba07c41d9ae";
718
+ const response = yield api.execute(sourceTxHash, evmWalletDetails);
719
+ // Expect returns error
720
+ expect(response).toEqual((0, error_1.InsufficientFundsError)(executeParams));
721
721
  // Expect we don't call saveGMP api
722
- expect(mockGMPApi).toHaveBeenCalled();
722
+ expect(mockGMPApi).toHaveBeenCalledWith(sourceTxHash, new ethers_1.ethers.Wallet(evmWalletDetails.privateKey).address, "", response.error);
723
723
  }));
724
724
  test("it should call 'execute' and return success = true", () => __awaiter(void 0, void 0, void 0, function* () {
725
725
  // mock query api
726
726
  const mockApi = jest.spyOn(api, "queryExecuteParams");
727
+ const executeParams = (0, stubs_1.executeParamsStub)();
727
728
  mockApi.mockResolvedValueOnce({
728
729
  status: AxelarRecoveryApi_1.GMPStatus.DEST_GATEWAY_APPROVED,
729
- data: (0, stubs_1.executeParamsStub)(),
730
+ data: executeParams,
730
731
  });
731
732
  // Mock contract call is successful
732
733
  jest.spyOn(ContractCallHelper, "callExecute").mockResolvedValueOnce((0, stubs_1.contractReceiptStub)());
@@ -734,9 +735,22 @@ describe("AxelarDepositRecoveryAPI", () => {
734
735
  const mockGMPApi = jest.spyOn(AxelarGMPRecoveryAPI_1.AxelarGMPRecoveryAPI.prototype, "saveGMP");
735
736
  mockGMPApi.mockImplementation(() => Promise.resolve(undefined));
736
737
  const response = yield api.execute("0x86e5f91eff5a8a815e90449ca32e02781508f3b94620bbdf521f2ba07c41d9ae", evmWalletDetails);
738
+ const { commandId, sourceChain, sourceAddress, payload, symbol, amount, isContractCallWithToken, } = executeParams;
739
+ const functionName = isContractCallWithToken ? "executeWithToken" : "execute";
737
740
  expect(response).toEqual({
738
741
  success: true,
739
742
  transaction: (0, stubs_1.contractReceiptStub)(),
743
+ data: {
744
+ functionName,
745
+ args: {
746
+ commandId,
747
+ sourceChain,
748
+ sourceAddress,
749
+ payload,
750
+ symbol,
751
+ amount,
752
+ },
753
+ },
740
754
  });
741
755
  expect(mockGMPApi).toHaveBeenCalledTimes(1);
742
756
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"AxelarGMPRecoveryAPI.spec.js","sourceRoot":"","sources":["../../../../../src/libs/test/TransactionRecoveryAPI/AxelarGMPRecoveryAPI.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AxelarGMPRecoveryAPI.spec.js","sourceRoot":"","sources":["../../../../../src/libs/test/TransactionRecoveryAPI/AxelarGMPRecoveryAPI.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4FAAyF;AACzF,uCAOqB;AACrB,uEAAwE;AACxE,mCAAwF;AACxF,qGAAwE;AACxE,qHAA4F;AAC5F,8FAA6D;AAC7D,2EAA8C;AAC9C,yDAAsD;AACtD,kEAAmG;AACnG,4CAA6C;AAC7C,8EAA+E;AAC/E,wEAYsD;AACtD,uDAAqD;AACrD,sFAA2E;AAC3E,4GAA8F;AAC9F,oCAKkB;AAClB,4DAA8C;AAE9C,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,MAAM,EAAE,SAAS,EAAE,GAAG,wBAAK,CAAC;IAC5B,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAEtB,UAAU,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,kBAAkB,EAAE,GAAG,EAAE;QACjC,MAAM,GAAG,GAAG,IAAI,2CAAoB,CAAC,EAAE,WAAW,EAAE,mBAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAE3E,IAAI,CAAC,gCAAgC,EAAE,GAAS,EAAE;YAChD,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,gBAAgB,CAC7C,oEAAoE,EACpE,gBAAQ,CAAC,SAAS,CACnB,CAAC;YACF,MAAM,CAAC,YAAY,CAAC,CAAC,UAAU,EAAE,CAAC;QACpC,CAAC,CAAA,EAAE,KAAK,CAAC,CAAC;IACZ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,MAAM,GAAG,GAAG,IAAI,2CAAoB,CAAC,EAAE,WAAW,EAAE,mBAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAE3E,UAAU,CAAC,GAAG,EAAE;YACd,8BAA8B;YAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC7C,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,kEAAkE,EAAE,GAAS,EAAE;YAClF,MAAM,0BAA0B,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;YAC7E,0BAA0B,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,6BAAS,CAAC,qBAAqB,EAAE,CAAC,CAAC;YAE9F,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAExD,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;gBACvB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,2BAAmB,CAAC,sBAAsB;aAClD,CAAC,CAAC;QACL,CAAC,CAAA,CAAC,CAAC;QACH,IAAI,CAAC,0EAA0E,EAAE,GAAS,EAAE;YAC1F,MAAM,0BAA0B,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;YAC7E,0BAA0B,CAAC,qBAAqB,CAAC;gBAC/C,MAAM,EAAE,6BAAS,CAAC,kBAAkB;gBACpC,MAAM,EAAE;oBACN,KAAK,EAAE,gBAAQ,CAAC,SAAS;oBACzB,YAAY,EAAE,EAAE,gBAAgB,EAAE,gBAAQ,CAAC,QAAQ,EAAE;iBACtD;aACF,CAAC,CAAC;YACH,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;YACjE,oBAAoB,CAAC,qBAAqB,CAAC,IAAA,4BAAoB,GAAE,CAAC,CAAC;YACnE,MAAM,yBAAyB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;YAC5E,yBAAyB,CAAC,qBAAqB,CAAC,IAAA,4BAAoB,GAAE,CAAC,CAAC;YACxE,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAC1D,MAAM,eAAe,GAAG,IAAA,4BAAoB,EAAC;gBAC3C;oBACE,MAAM,EAAE;wBACN;4BACE,IAAI,EAAE,MAAM;4BACZ,UAAU,EAAE;gCACV;oCACE,GAAG,EAAE,kBAAkB;oCACvB,KAAK,EAAE,OAAO;iCACf;6BACF;yBACF;qBACF;iBACF;aACF,CAAC,CAAC;YACH,iBAAiB,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;YAEzD,MAAM,uBAAuB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC;YACxE,uBAAuB,CAAC,qBAAqB,CAAC,IAAA,kCAA0B,GAAE,CAAC,CAAC;YAE5E,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAExD,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;gBACvB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,2BAAmB,CAAC,qBAAqB;gBAChD,SAAS,EAAE,IAAA,4BAAoB,GAAE;gBACjC,uBAAuB,EAAE,IAAA,4BAAoB,GAAE;gBAC/C,aAAa,EAAE,eAAe;aAC/B,CAAC,CAAC;QACL,CAAC,CAAA,CAAC,CAAC;QACH,IAAI,CAAC,4DAA4D,EAAE,GAAS,EAAE;YAC5E,MAAM,0BAA0B,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;YAC7E,0BAA0B,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,6BAAS,CAAC,aAAa,EAAE,CAAC,CAAC;YAEtF,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAExD,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;gBACvB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,2BAAmB,CAAC,gBAAgB;aAC5C,CAAC,CAAC;QACL,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,4DAA4D,EAAE,GAAS,EAAE;YAC5E,MAAM,0BAA0B,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;YAC7E,0BAA0B,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,6BAAS,CAAC,qBAAqB,EAAE,CAAC,CAAC;YAE9F,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAExD,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;gBACvB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,2BAAmB,CAAC,gBAAgB;aAC5C,CAAC,CAAC;QACL,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,qFAAqF,EAAE,GAAS,EAAE;YACrG,MAAM,0BAA0B,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;YAC7E,0BAA0B,CAAC,qBAAqB,CAAC;gBAC/C,MAAM,EAAE,6BAAS,CAAC,kBAAkB;gBACpC,MAAM,EAAE;oBACN,KAAK,EAAE,gBAAQ,CAAC,SAAS;oBACzB,YAAY,EAAE,EAAE,gBAAgB,EAAE,gBAAQ,CAAC,QAAQ,EAAE;iBACtD;aACF,CAAC,CAAC;YACH,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;YACjE,oBAAoB,CAAC,qBAAqB,CAAC,IAAA,4BAAoB,GAAE,CAAC,CAAC;YACnE,MAAM,yBAAyB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;YAC5E,yBAAyB,CAAC,qBAAqB,CAAC,IAAA,4BAAoB,GAAE,CAAC,CAAC;YACxE,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAC1D,MAAM,eAAe,GAAG,IAAA,4BAAoB,EAAC;gBAC3C;oBACE,MAAM,EAAE,EAAE;iBACX;aACF,CAAC,CAAC;YACH,iBAAiB,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;YAEzD,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAExD,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;gBACvB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,2BAAmB,CAAC,mBAAmB;gBAC9C,SAAS,EAAE,IAAA,4BAAoB,GAAE;gBACjC,uBAAuB,EAAE,IAAA,4BAAoB,GAAE;gBAC/C,aAAa,EAAE,eAAe;aAC/B,CAAC,CAAC;QACL,CAAC,CAAA,CAAC,CAAC;QACH,IAAI,CAAC,+DAA+D,EAAE,GAAS,EAAE;YAC/E,MAAM,0BAA0B,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;YAC7E,0BAA0B,CAAC,qBAAqB,CAAC;gBAC/C,MAAM,EAAE,6BAAS,CAAC,kBAAkB;gBACpC,MAAM,EAAE;oBACN,KAAK,EAAE,gBAAQ,CAAC,SAAS;oBACzB,YAAY,EAAE,EAAE,gBAAgB,EAAE,gBAAQ,CAAC,QAAQ,EAAE;iBACtD;aACF,CAAC,CAAC;YACH,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;YACjE,oBAAoB,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;YAEnF,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAExD,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;gBACvB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,2BAAmB,CAAC,+BAA+B;aAC3D,CAAC,CAAC;QACL,CAAC,CAAA,CAAC,CAAC;QACH,IAAI,CAAC,oEAAoE,EAAE,GAAS,EAAE;YACpF,MAAM,0BAA0B,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;YAC7E,0BAA0B,CAAC,qBAAqB,CAAC;gBAC/C,MAAM,EAAE,6BAAS,CAAC,kBAAkB;gBACpC,MAAM,EAAE;oBACN,KAAK,EAAE,gBAAQ,CAAC,SAAS;oBACzB,YAAY,EAAE,EAAE,gBAAgB,EAAE,gBAAQ,CAAC,QAAQ,EAAE;iBACtD;aACF,CAAC,CAAC;YACH,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;YACjE,oBAAoB,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;YAEvE,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAExD,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;gBACvB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,2BAAmB,CAAC,aAAa;aACzC,CAAC,CAAC;QACL,CAAC,CAAA,CAAC,CAAC;QACH,IAAI,CAAC,qCAAqC,EAAE,GAAS,EAAE;YACrD,MAAM,0BAA0B,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;YAC7E,0BAA0B,CAAC,qBAAqB,CAAC;gBAC/C,MAAM,EAAE,6BAAS,CAAC,kBAAkB;gBACpC,MAAM,EAAE;oBACN,KAAK,EAAE,gBAAQ,CAAC,SAAS;oBACzB,YAAY,EAAE,EAAE,gBAAgB,EAAE,gBAAQ,CAAC,QAAQ,EAAE;iBACtD;aACF,CAAC,CAAC;YACH,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;YACjE,oBAAoB,CAAC,qBAAqB,CAAC,IAAA,4BAAoB,GAAE,CAAC,CAAC;YACnE,MAAM,yBAAyB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;YAC5E,yBAAyB,CAAC,qBAAqB,CAAC,IAAA,4BAAoB,GAAE,CAAC,CAAC;YACxE,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAC1D,MAAM,eAAe,GAAG,IAAA,4BAAoB,EAAC;gBAC3C;oBACE,MAAM,EAAE;wBACN;4BACE,IAAI,EAAE,MAAM;4BACZ,UAAU,EAAE;gCACV;oCACE,GAAG,EAAE,kBAAkB;oCACvB,KAAK,EAAE,OAAO;iCACf;6BACF;yBACF;qBACF;iBACF;aACF,CAAC,CAAC;YACH,iBAAiB,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;YAEzD,MAAM,uBAAuB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC;YACxE,uBAAuB,CAAC,qBAAqB,CAAC,IAAA,kCAA0B,EAAC,OAAO,CAAC,CAAC,CAAC;YACnF,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;YACvD,MAAM,eAAe,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;YACxD,aAAa,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;YAErD,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAExD,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;gBACvB,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,IAAA,4BAAoB,GAAE;gBACjC,uBAAuB,EAAE,IAAA,4BAAoB,GAAE;gBAC/C,aAAa,EAAE,eAAe;gBAC9B,SAAS,EAAE,eAAe;aAC3B,CAAC,CAAC;QACL,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACrC,MAAM,GAAG,GAAG,IAAI,2CAAoB,CAAC,EAAE,WAAW,EAAE,mBAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAE3E,IAAI,QAAkB,CAAC;QACvB,IAAI,UAAkB,CAAC;QACvB,IAAI,QAAuC,CAAC;QAC5C,MAAM,WAAW,GAAG,OAAO,CAAC;QAC5B,MAAM,QAAQ,GAAG,IAAI,+BAAc,CAAC,EAAE,WAAW,EAAE,mBAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAE1E,UAAU,CAAC,GAAS,EAAE;YACpB,gCAAgC;YAChC,MAAM,QAAQ,GAAG,MAAM,IAAA,gCAAa,EAAC,EAAE,IAAI,EAAE,gBAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;YACnE,UAAU,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACtC,QAAQ,GAAG,QAAQ,CAAC,QAAyC,CAAC;YAC9D,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAEtE,uBAAuB;YACvB,QAAQ,GAAG,MAAM,wBAAK,CAAC,cAAc,CAAC,UAAU,EAAE,qCAAsB,EAAE,IAAW,CAAC,CAAC;YAEvF,2CAA2C;YAC3C,MAAM,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;YAE9E,wCAAwC;YACxC,MAAM,QAAQ,CAAC,IAAI;iBAChB,OAAO,CAAC,UAAU,CAAC;iBACnB,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,eAAM,CAAC,SAAS,CAAC,UAAU,CAAC;iBACtD,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,gFAAgF,EAAE,GAAS,EAAE;YAChG,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAEpD,sDAAsD;YACtD,MAAM,EAAE,GAAG,MAAM,QAAQ;iBACtB,OAAO,CAAC,UAAU,CAAC;iBACnB,UAAU,CACT,gBAAQ,CAAC,QAAQ,EACjB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAC,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9B,WAAW,EACX,OAAO,EACP;gBACE,KAAK,EAAE,OAAO;aACf,CACF;iBACA,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,8CAA8C;YAC9C,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,qBAAqB,CAClD,EAAE,CAAC,eAAe,EAClB,gBAAQ,CAAC,SAAS,EAClB,gBAAQ,CAAC,QAAQ,EACjB,gBAAQ,CAAC,IAAI,EACb,EAAE,QAAQ,EAAE,CACb,CAAC;YAEF,mBAAmB;YACnB,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,cAAc,CAC/C,gBAAQ,CAAC,SAAS,EAClB,gBAAQ,CAAC,QAAQ,EACjB,gBAAQ,CAAC,IAAI,CACd,CAAC;YAEF,OAAO,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC/F,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,uDAAuD,EAAE,GAAS,EAAE;YACvE,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAE9C,0DAA0D;YAC1D,MAAM,EAAE,GAAG,MAAM,QAAQ;iBACtB,OAAO,CAAC,UAAU,CAAC;iBACnB,UAAU,CACT,gBAAQ,CAAC,QAAQ,EACjB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAC,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9B,WAAW,EACX,OAAO,EACP;gBACE,KAAK,EAAE,OAAO;aACf,CACF;iBACA,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,8CAA8C;YAC9C,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,qBAAqB,CAClD,EAAE,CAAC,eAAe,EAClB,gBAAQ,CAAC,SAAS,EAClB,gBAAQ,CAAC,QAAQ,EACjB,gBAAQ,CAAC,IAAI,EACb,EAAE,QAAQ,EAAE,CACb,CAAC;YAEF,OAAO,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxC,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,IAAI,GAAyB,CAAC;QAC9B,IAAI,QAAkB,CAAC;QACvB,IAAI,UAAkB,CAAC;QACvB,IAAI,QAAuC,CAAC;QAC5C,IAAI,mBAA6B,CAAC;QAClC,IAAI,IAAc,CAAC;QACnB,IAAI,mBAAkC,CAAC;QACvC,MAAM,KAAK,GAAG,gBAAQ,CAAC,SAAS,CAAC;QACjC,MAAM,WAAW,GAAG,OAAO,CAAC;QAE5B,UAAU,CAAC,GAAS,EAAE;YACpB,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,GAAG,GAAG,IAAI,2CAAoB,CAAC,EAAE,WAAW,EAAE,mBAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YACrE,gCAAgC;YAChC,MAAM,QAAQ,GAAG,MAAM,IAAA,gCAAa,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACtD,mBAAmB,GAAG,QAAQ,CAAC,WAAW,CAAC;YAC3C,UAAU,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACtC,QAAQ,GAAG,QAAQ,CAAC,QAAyC,CAAC;YAC9D,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAEzC,sEAAsE;YACtE,mBAAmB,GAAG;gBACpB,gBAAgB,EAAE;oBAChB,iBAAiB,EAAE,KAAK;oBACxB,UAAU,EAAE,UAAU,CAAC,UAAU;oBACjC,QAAQ;iBACT;aACF,CAAC;YAEF,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAEtE,uBAAuB;YACvB,QAAQ,GAAG,MAAM,wBAAK;iBACnB,cAAc,CAAC,UAAU,EAAE,qCAAsB,EAAE,IAAW,CAAC;iBAC/D,IAAI,CAAC,CAAC,QAAkB,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YAE9D,2CAA2C;YAC3C,MAAM,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;YAE9E,wCAAwC;YACxC,MAAM,QAAQ,CAAC,IAAI;iBAChB,OAAO,CAAC,UAAU,CAAC;iBACnB,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,eAAM,CAAC,SAAS,CAAC,UAAU,CAAC;iBACtD,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAEjD,qGAAqG;YACrG,uBAAY,CAAC,mBAAW,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,mBAAmB,CAAC,OAAO,CAAC;QACzE,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,+DAA+D,EAAE,GAAS,EAAE;YAC/E,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAEpD,sDAAsD;YACtD,MAAM,EAAE,GAAoB,MAAM,QAAQ;iBACvC,UAAU,CACT,gBAAQ,CAAC,QAAQ,EACjB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAC,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9B,WAAW,EACX,OAAO,EACP;gBACE,KAAK,EAAE,OAAO;aACf,CACF;iBACA,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,kDAAkD;YAClD,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAEzE,6BAA6B;YAC7B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,YAAY,CACrC,gBAAQ,CAAC,SAAS,EAClB,EAAE,CAAC,eAAe,EAClB,mBAAmB,CACpB,CAAC;YAEF,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,4BAAoB,GAAE,CAAC,CAAC;QACnD,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,yDAAyD,EAAE,GAAS,EAAE;YACzE,sEAAsE;YACtE,MAAM,mBAAmB,GAAG;gBAC1B,gBAAgB,EAAE;oBAChB,iBAAiB,EAAE,KAAK;oBACxB,UAAU,EAAE,UAAU,CAAC,UAAU;oBACjC,QAAQ;iBACT;aACF,CAAC;YAEF,6DAA6D;YAC7D,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,YAAY,CACrC,KAAK,EACL,oEAAoE,EAAE,iBAAiB;YACvF,mBAAmB,CACpB,CAAC;YAEF,oBAAoB;YACpB,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,+BAAuB,EAAC,KAAK,CAAC,CAAC,CAAC;QAC3D,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,2DAA2D,EAAE,GAAS,EAAE;YAC3E,8BAA8B;YAC9B,MAAM,QAAQ,GAAG,MAAM,IAAI;iBACxB,QAAQ,CAAC,4CAA4C,EAAE,GAAG,CAAC;iBAC3D,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,yDAAyD;YACzD,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,YAAY,CACrC,KAAK,EACL,QAAQ,CAAC,eAAe,EAAE,iBAAiB;YAC3C,mBAAmB,CACpB,CAAC;YAEF,oBAAoB;YACpB,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,8BAAsB,GAAE,CAAC,CAAC;QACrD,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,gEAAgE,EAAE,GAAS,EAAE;YAChF,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAE9C,yDAAyD;YACzD,MAAM,EAAE,GAAoB,MAAM,QAAQ;iBACvC,UAAU,CACT,gBAAQ,CAAC,QAAQ,EACjB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAC,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9B,WAAW,EACX,OAAO,EACP;gBACE,KAAK,EAAE,OAAO;aACf,CACF;iBACA,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,6BAA6B;YAC7B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;YAExF,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,8BAAsB,GAAE,CAAC,CAAC;QACrD,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,sGAAsG,EAAE,GAAS,EAAE;YACtH,sEAAsE;YACtE,MAAM,mBAAmB,GAAG;gBAC1B,gBAAgB,EAAE;oBAChB,iBAAiB,EAAE,KAAK;oBACxB,UAAU,EAAE,UAAU,CAAC,UAAU;oBACjC,QAAQ;iBACT;aACF,CAAC;YAEF,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAE9C,yDAAyD;YACzD,MAAM,EAAE,GAAoB,MAAM,QAAQ;iBACvC,OAAO,CAAC,UAAU,CAAC;iBACnB,UAAU,CACT,gBAAQ,CAAC,QAAQ,EACjB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAC,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9B,WAAW,EACX,OAAO,EACP;gBACE,KAAK,EAAE,OAAO;aACf,CACF;iBACA,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,8BAA8B;YAC9B,IAAI;iBACD,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAC;iBAC3C,qBAAqB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAEjD,6BAA6B;YAC7B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,YAAY,CACrC,KAAK,EAAE,wEAAwE;YAC/E,EAAE,CAAC,eAAe,EAClB,mBAAmB,CACpB,CAAC;YAEF,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QAC9D,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,+FAA+F,EAAE,GAAS,EAAE;YAC/G,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAEnD,yDAAyD;YACzD,mBAAmB,CAAC,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;YAEhD,MAAM,EAAE,GAAoB,MAAM,QAAQ;iBACvC,UAAU,CACT,gBAAQ,CAAC,QAAQ,EACjB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAC,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9B,WAAW,EACX,OAAO,EACP;gBACE,KAAK,EAAE,OAAO;aACf,CACF;iBACA,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,8BAA8B;YAC9B,IAAI;iBACD,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAC;iBAC3C,qBAAqB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAEjD,6BAA6B;YAC7B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;YAExF,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,4CAA4C,EAAE,GAAS,EAAE;;YAC5D,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAEpD,sDAAsD;YACtD,MAAM,EAAE,GAAoB,MAAM,QAAQ;iBACvC,UAAU,CACT,gBAAQ,CAAC,QAAQ,EACjB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAC,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9B,WAAW,EACX,OAAO,EACP;gBACE,KAAK,EAAE,OAAO;aACf,CACF;iBACA,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,6BAA6B;YAC7B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;YAExF,8BAA8B;YAC9B,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;YAE3C,MAAM,uBAAuB,GAAG,eAAM,CAAC,KAAK,CAAC,EAAE,CAC7C,iDAAiD,CAClD,CAAC;YACF,MAAM,mBAAmB,GAAG,IAAA,2BAAiB,EAC3C,QAAQ,CAAC,WAA8B,EACvC,CAAC,uBAAuB,CAAC,EACzB,IAAI,iBAAS,CAAC,gCAAa,CAAC,CAC7B,CAAC;YAEF,8CAA8C;YAC9C,MAAM,eAAe,GAAG,MAAM,GAAG,CAAC,qBAAqB,CACrD,EAAE,CAAC,eAAe,EAClB,KAAK,EACL,gBAAQ,CAAC,QAAQ,EACjB,gBAAQ,CAAC,IAAI,EACb,EAAE,QAAQ,EAAE,CACb,CAAC;YACF,MAAM,gBAAgB,GAAG,IAAA,kCAAwB,EAAC,EAAE,CAAC,CAAC;YAEtD,sBAAsB;YACtB,MAAM,IAAI,GAAG,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,QAAQ,CAAC,IAAI,CAAC;YAChD,MAAM,iBAAiB,GAAG,UAAU,CAAC,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC9F,MAAM,cAAc,GAAG,UAAU,CAAC,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAExF,MAAM,CAAC,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,0CAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC1D,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC/C,MAAM,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,aAAa,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACvD,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;QACtB,IAAI,GAAyB,CAAC;QAC9B,IAAI,QAAkB,CAAC;QACvB,IAAI,UAAkB,CAAC;QACvB,IAAI,QAAuC,CAAC;QAC5C,IAAI,mBAA6B,CAAC;QAClC,IAAI,IAAc,CAAC;QACnB,MAAM,KAAK,GAAG,gBAAQ,CAAC,SAAS,CAAC;QACjC,MAAM,WAAW,GAAG,OAAO,CAAC;QAC5B,sEAAsE;QACtE,IAAI,aAA4B,CAAC;QAEjC,UAAU,CAAC,GAAS,EAAE;YACpB,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,GAAG,GAAG,IAAI,2CAAoB,CAAC,EAAE,WAAW,EAAE,mBAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YACrE,gCAAgC;YAChC,MAAM,QAAQ,GAAG,MAAM,IAAA,gCAAa,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACtD,mBAAmB,GAAG,QAAQ,CAAC,WAAW,CAAC;YAC3C,UAAU,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACtC,QAAQ,GAAG,QAAQ,CAAC,QAAyC,CAAC;YAC9D,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACzC,aAAa,GAAG;gBACd,gBAAgB,EAAE;oBAChB,iBAAiB,EAAE,KAAK;oBACxB,UAAU,EAAE,UAAU,CAAC,UAAU;oBACjC,QAAQ;iBACT;aACF,CAAC;YACF,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAEtE,uBAAuB;YACvB,QAAQ,GAAG,MAAM,wBAAK;iBACnB,cAAc,CAAC,UAAU,EAAE,6CAAkC,EAAE,IAAW,CAAC;iBAC3E,IAAI,CAAC,CAAC,QAAkB,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YAE9D,2CAA2C;YAC3C,MAAM,QAAQ,CAAC,SAAS,CACtB,UAAU,CAAC,OAAO,EAClB,WAAW,EACX,MAAM,CAAC,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC,CACtD,CAAC;YAEF,wCAAwC;YACxC,MAAM,IAAI;iBACP,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,eAAM,CAAC,SAAS,CAAC,UAAU,CAAC;iBACtD,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAEjD,MAAM,IAAI;iBACP,OAAO,CAAC,mBAAmB,CAAC,OAAO,EAAE,eAAM,CAAC,SAAS,CAAC,UAAU,CAAC;iBACjE,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAEjD,qGAAqG;YACrG,uBAAY,CAAC,mBAAW,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,mBAAmB,CAAC,OAAO,CAAC;YACvE,8BAAc,CAAC,mBAAW,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;QACxE,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,yDAAyD,EAAE,GAAS,EAAE;YACzE,MAAM,MAAM,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACjD,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAEpD,sDAAsD;YACtD,MAAM,EAAE,GAAoB,MAAM,QAAQ;iBACvC,UAAU,CACT,gBAAQ,CAAC,QAAQ,EACjB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAC,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9B,WAAW,EACX,MAAM,EACN,IAAI,CAAC,OAAO,EACZ,OAAO,CACR;iBACA,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,kDAAkD;YAClD,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAEzE,uBAAuB;YACvB,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAC/B,gBAAQ,CAAC,SAAS,EAClB,EAAE,CAAC,eAAe,EAClB,IAAI,CAAC,OAAO,EACZ,aAAa,CACd,CAAC;YAEF,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,4BAAoB,GAAE,CAAC,CAAC;QACnD,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,mDAAmD,EAAE,GAAS,EAAE;YACnE,6DAA6D;YAC7D,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAC/B,KAAK,EACL,oEAAoE,EAAE,iBAAiB;YACvF,IAAI,CAAC,OAAO,EACZ,aAAa,CACd,CAAC;YAEF,oBAAoB;YACpB,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,+BAAuB,EAAC,KAAK,CAAC,CAAC,CAAC;QAC3D,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,qDAAqD,EAAE,GAAS,EAAE;YACrE,8BAA8B;YAC9B,MAAM,QAAQ,GAAG,MAAM,IAAI;iBACxB,QAAQ,CAAC,4CAA4C,EAAE,GAAG,CAAC;iBAC3D,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,yDAAyD;YACzD,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAC/B,KAAK,EACL,QAAQ,CAAC,eAAe,EAAE,iBAAiB;YAC3C,IAAI,CAAC,OAAO,EACZ,aAAa,CACd,CAAC;YAEF,oBAAoB;YACpB,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,8BAAsB,GAAE,CAAC,CAAC;QACrD,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,0DAA0D,EAAE,GAAS,EAAE;YAC1E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACvC,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAEzD,yDAAyD;YACzD,MAAM,EAAE,GAAoB,MAAM,QAAQ;iBACvC,OAAO,CAAC,UAAU,CAAC;iBACnB,UAAU,CACT,gBAAQ,CAAC,QAAQ,EACjB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAC,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9B,WAAW,EACX,OAAO,EACP,IAAI,CAAC,OAAO,EACZ,OAAO,CACR;iBACA,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,iCAAiC;YACjC,IAAI;iBACD,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAC;iBAC3C,iBAAiB,CAAC,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YAE1E,uBAAuB;YACvB,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAE1F,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,8BAAsB,GAAE,CAAC,CAAC;QACrD,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,gGAAgG,EAAE,GAAS,EAAE;YAChH,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAE9C,yDAAyD;YACzD,MAAM,EAAE,GAAoB,MAAM,QAAQ;iBACvC,UAAU,CACT,gBAAQ,CAAC,QAAQ,EACjB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAC,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9B,WAAW,EACX,OAAO,EACP,IAAI,CAAC,OAAO,EACZ,OAAO,CACR;iBACA,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,8BAA8B;YAC9B,IAAI;iBACD,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAC;iBAC3C,qBAAqB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAEjD,6BAA6B;YAC7B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAC/B,KAAK,EAAE,wEAAwE;YAC/E,EAAE,CAAC,eAAe,EAClB,IAAI,CAAC,OAAO,EACZ,aAAa,CACd,CAAC;YAEF,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,wBAAgB,GAAE,CAAC,CAAC;QAC/C,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,yFAAyF,EAAE,GAAS,EAAE;YACzG,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAEnD,yDAAyD;YACzD,MAAM,EAAE,GAAoB,MAAM,QAAQ;iBACvC,UAAU,CACT,gBAAQ,CAAC,QAAQ,EACjB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAC,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9B,WAAW,EACX,OAAO,EACP,IAAI,CAAC,OAAO,EACZ,OAAO,CACR;iBACA,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,8BAA8B;YAC9B,IAAI;iBACD,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAC;iBAC3C,qBAAqB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAEjD,gGAAgG;YAChG,aAAa,CAAC,MAAM,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YAEhE,uBAAuB;YACvB,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAE1F,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,mEAAmE,EAAE,GAAS,EAAE;YACnF,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAEnD,yDAAyD;YACzD,MAAM,EAAE,GAAoB,MAAM,QAAQ;iBACvC,UAAU,CACT,gBAAQ,CAAC,QAAQ,EACjB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAC,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9B,WAAW,EACX,OAAO,EACP,IAAI,CAAC,OAAO,EACZ,OAAO,CACR;iBACA,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,8BAA8B;YAC9B,IAAI;iBACD,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAC;iBAC3C,qBAAqB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAEjD,uBAAuB;YACvB,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAC/B,KAAK,EACL,EAAE,CAAC,eAAe,EAClB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,aAAa,CACd,CAAC;YAEF,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,4BAAoB,GAAE,CAAC,CAAC;QACnD,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,+EAA+E,EAAE,GAAS,EAAE;YAC/F,MAAM,SAAS,GAAG,MAAM,wBAAK;iBAC1B,cAAc,CAAC,UAAU,EAAE,wBAAS,EAAE,CAAC,cAAc,CAAQ,CAAC;iBAC9D,IAAI,CAAC,CAAC,QAAkB,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YAE9D,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAEnD,yDAAyD;YACzD,MAAM,EAAE,GAAoB,MAAM,QAAQ;iBACvC,UAAU,CACT,gBAAQ,CAAC,QAAQ,EACjB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAC,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9B,WAAW,EACX,OAAO,EACP,IAAI,CAAC,OAAO,EACZ,OAAO,CACR;iBACA,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,8BAA8B;YAC9B,IAAI;iBACD,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAC;iBAC3C,qBAAqB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAEjD,uBAAuB;YACvB,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAC/B,KAAK,EACL,EAAE,CAAC,eAAe,EAClB,SAAS,CAAC,OAAO,EACjB,aAAa,CACd,CAAC;YAEF,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,gCAAwB,EAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QACxE,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,sCAAsC,EAAE,GAAS,EAAE;;YACtD,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAEpD,sDAAsD;YACtD,MAAM,EAAE,GAAoB,MAAM,QAAQ;iBACvC,UAAU,CACT,gBAAQ,CAAC,QAAQ,EACjB,eAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAC,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9B,WAAW,EACX,OAAO,EACP,IAAI,CAAC,OAAO,EACZ,OAAO,CACR;iBACA,IAAI,CAAC,CAAC,EAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhD,iCAAiC;YACjC,IAAI;iBACD,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAC;iBAC3C,iBAAiB,CAAC,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YAEhE,uBAAuB;YACvB,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAE1F,8BAA8B;YAC9B,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;YAE3C,MAAM,iBAAiB,GAAG,eAAM,CAAC,KAAK,CAAC,EAAE,CACvC,mDAAmD,CACpD,CAAC;YACF,MAAM,aAAa,GAAG,IAAA,2BAAiB,EACrC,QAAQ,CAAC,WAA8B,EACvC,CAAC,iBAAiB,CAAC,EACnB,IAAI,iBAAS,CAAC,gCAAa,CAAC,CAC7B,CAAC;YAEF,8CAA8C;YAC9C,MAAM,eAAe,GAAG,MAAM,GAAG,CAAC,eAAe,CAC/C,EAAE,CAAC,eAAe,EAClB,KAAK,EACL,gBAAQ,CAAC,QAAQ,EACjB,gBAAQ,CAAC,IAAI,EACb,EAAE,QAAQ,EAAE,CACb,CAAC;YACF,MAAM,gBAAgB,GAAG,IAAA,kCAAwB,EAAC,EAAE,CAAC,CAAC;YAEtD,sBAAsB;YACtB,MAAM,IAAI,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,QAAQ,CAAC,IAAI,CAAC;YAC1C,MAAM,iBAAiB,GAAG,UAAU,CAAC,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC9F,MAAM,cAAc,GAAG,UAAU,CAAC,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAExF,MAAM,CAAC,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,0CAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC1D,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC/C,MAAM,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,aAAa,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACvD,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,IAAI,GAAyB,CAAC;QAC9B,MAAM,MAAM,GAAG,eAAM,CAAC,YAAY,EAAE,CAAC;QACrC,MAAM,gBAAgB,GAAqB;YACzC,UAAU,EAAE,MAAM,CAAC,UAAU;SAC9B,CAAC;QAEF,UAAU,CAAC,GAAS,EAAE;YACpB,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,GAAG,GAAG,IAAI,2CAAoB,CAAC,EAAE,WAAW,EAAE,mBAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACvE,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,0DAA0D,EAAE,GAAS,EAAE;YAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;YACtD,OAAO,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,6BAAS,CAAC,aAAa,EAAE,CAAC,CAAC;YAEnE,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,OAAO,CAChC,oEAAoE,EACpE,gBAAgB,CACjB,CAAC;YAEF,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,4BAAoB,GAAE,CAAC,CAAC;QACnD,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,2DAA2D,EAAE,GAAS,EAAE;YAC3E,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;YACtD,OAAO,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,6BAAS,CAAC,kBAAkB,EAAE,CAAC,CAAC;YAExE,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,OAAO,CAChC,oEAAoE,EACpE,gBAAgB,CACjB,CAAC;YAEF,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,wBAAgB,GAAE,CAAC,CAAC;QAC/C,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,iDAAiD,EAAE,GAAS,EAAE;YACjE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;YACtD,OAAO,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;YAEzC,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,OAAO,CAChC,oEAAoE,EACpE,gBAAgB,CACjB,CAAC;YAEF,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,qBAAa,GAAE,CAAC,CAAC;QAC5C,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,yGAAyG,EAAE,GAAS,EAAE;YACzH,iBAAiB;YACjB,MAAM,aAAa,GAAG,IAAA,yBAAiB,GAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;YACtD,OAAO,CAAC,qBAAqB,CAAC;gBAC5B,MAAM,EAAE,6BAAS,CAAC,qBAAqB;gBACvC,IAAI,EAAE,aAAa;aACpB,CAAC,CAAC;YAEH,+BAA+B;YAC/B,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YACtE,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAE3E,uBAAuB;YACvB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,2CAAoB,CAAC,SAAgB,EAAE,SAAS,CAAC,CAAC;YAChF,UAAU,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;YAEhE,MAAM,YAAY,GAAG,oEAAoE,CAAC;YAC1F,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;YAEnE,uBAAuB;YACvB,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,8BAAsB,EAAC,aAAa,CAAC,CAAC,CAAC;YAEhE,mCAAmC;YACnC,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CACrC,YAAY,EACZ,IAAI,eAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,UAAoB,CAAC,CAAC,OAAO,EAChE,EAAE,EACF,QAAQ,CAAC,KAAK,CACf,CAAC;QACJ,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,qHAAqH,EAAE,GAAS,EAAE;YACrI,iBAAiB;YACjB,MAAM,aAAa,GAAG,IAAA,yBAAiB,GAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;YACtD,OAAO,CAAC,qBAAqB,CAAC;gBAC5B,MAAM,EAAE,6BAAS,CAAC,qBAAqB;gBACvC,IAAI,EAAE,aAAa;aACpB,CAAC,CAAC;YAEH,+BAA+B;YAC/B,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;YAClF,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAE3E,uBAAuB;YACvB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,2CAAoB,CAAC,SAAgB,EAAE,SAAS,CAAC,CAAC;YAChF,UAAU,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;YAEhE,MAAM,YAAY,GAAG,oEAAoE,CAAC;YAC1F,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;YAEnE,uBAAuB;YACvB,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAA,8BAAsB,EAAC,aAAa,CAAC,CAAC,CAAC;YAEhE,mCAAmC;YACnC,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CACrC,YAAY,EACZ,IAAI,eAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,UAAoB,CAAC,CAAC,OAAO,EAChE,EAAE,EACF,QAAQ,CAAC,KAAK,CACf,CAAC;QACJ,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,oDAAoD,EAAE,GAAS,EAAE;YACpE,iBAAiB;YACjB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;YACtD,MAAM,aAAa,GAAG,IAAA,yBAAiB,GAAE,CAAC;YAC1C,OAAO,CAAC,qBAAqB,CAAC;gBAC5B,MAAM,EAAE,6BAAS,CAAC,qBAAqB;gBACvC,IAAI,EAAE,aAAa;aACpB,CAAC,CAAC;YAEH,mCAAmC;YACnC,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC,qBAAqB,CAAC,IAAA,2BAAmB,GAAE,CAAC,CAAC;YAE3F,uBAAuB;YACvB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,2CAAoB,CAAC,SAAgB,EAAE,SAAS,CAAC,CAAC;YAChF,UAAU,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;YAEhE,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,OAAO,CAChC,oEAAoE,EACpE,gBAAgB,CACjB,CAAC;YAEF,MAAM,EACJ,SAAS,EACT,WAAW,EACX,aAAa,EACb,OAAO,EACP,MAAM,EACN,MAAM,EACN,uBAAuB,GACxB,GAAG,aAAa,CAAC;YAClB,MAAM,YAAY,GAAG,uBAAuB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC;YAE9E,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;gBACvB,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,IAAA,2BAAmB,GAAE;gBAClC,IAAI,EAAE;oBACJ,YAAY;oBACZ,IAAI,EAAE;wBACJ,SAAS;wBACT,WAAW;wBACX,aAAa;wBACb,OAAO;wBACP,MAAM;wBACN,MAAM;qBACP;iBACF;aACF,CAAC,CAAC;YAEH,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -8,11 +8,18 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
15
  const helpers_1 = require("../../../TransactionRecoveryApi/helpers");
13
16
  const stubs_1 = require("../../stubs");
17
+ const types_1 = require("../../../types");
18
+ const IAxelarExecutable_1 = __importDefault(require("../../../abi/IAxelarExecutable"));
19
+ const ethers_1 = require("ethers");
20
+ const localChain_1 = require("../../testUtils/localChain");
14
21
  describe("contractCallHelper", () => {
15
- describe("callContract", () => {
22
+ describe("callExecute", () => {
16
23
  let mockWait;
17
24
  const stub = (0, stubs_1.executeParamsStub)();
18
25
  beforeEach(() => {
@@ -22,7 +29,10 @@ describe("contractCallHelper", () => {
22
29
  stub.isContractCallWithToken = true;
23
30
  // Mock contract's executeWithTokenFunction
24
31
  const mockExecuteWithToken = jest.fn().mockResolvedValueOnce({ wait: mockWait });
25
- const contract = { executeWithToken: mockExecuteWithToken };
32
+ const contract = {
33
+ executeWithToken: mockExecuteWithToken,
34
+ estimateGas: { executeWithToken: jest.fn().mockResolvedValueOnce(1) },
35
+ };
26
36
  yield (0, helpers_1.callExecute)(stub, contract);
27
37
  expect(mockExecuteWithToken).toHaveBeenCalledWith(stub.commandId, stub.sourceChain, stub.sourceAddress, stub.payload, stub.symbol, stub.amount);
28
38
  expect(mockWait).toBeCalledTimes(1);
@@ -31,12 +41,80 @@ describe("contractCallHelper", () => {
31
41
  const stub = (0, stubs_1.executeParamsStub)();
32
42
  // Mock contract's execute function
33
43
  const mockExecute = jest.fn().mockResolvedValueOnce({ wait: mockWait });
34
- const contract = { execute: mockExecute };
44
+ const contract = {
45
+ execute: mockExecute,
46
+ estimateGas: { execute: jest.fn().mockResolvedValueOnce(1) },
47
+ };
35
48
  stub.isContractCallWithToken = false;
36
49
  yield (0, helpers_1.callExecute)(stub, contract);
37
50
  expect(mockExecute).toHaveBeenCalledWith(stub.commandId, stub.sourceChain, stub.sourceAddress, stub.payload);
38
51
  expect(mockWait).toBeCalledTimes(1);
39
52
  }));
53
+ test("it should return 'tx reverted' error when the destination contract logic is failed", () => __awaiter(void 0, void 0, void 0, function* () {
54
+ const chain = types_1.EvmChain.AVALANCHE;
55
+ const destinationContractAddress = "0x065fD4a0eDeCD51360b511fd9B1F1Abe4f920fd1";
56
+ const impersonateAccount = "0x0000000000000000000000000000000000000000";
57
+ const provider = (0, localChain_1.fork)(chain, {
58
+ impersonateAccounts: [impersonateAccount],
59
+ });
60
+ const contract = new ethers_1.ethers.Contract(destinationContractAddress, IAxelarExecutable_1.default.abi, provider);
61
+ return (0, helpers_1.callExecute)({
62
+ commandId: "0x37a8ff7cc5cd6ec5ff3a043c1e30e7ebde9539cb2f12c36cb7fd6dac30c54c5c",
63
+ sourceChain: "Moonbeam",
64
+ sourceAddress: "0xcAF6bF8231Fbad0619A88cCDa469ef7Ef757f604",
65
+ payload: "0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000a411977dd24f1547065c6630e468a43275cb4d7f000000000000000000000000d54c1b20ffb06e9d229395abb45a064026fedea8",
66
+ symbol: "aUSDC",
67
+ amount: "5800000",
68
+ isContractCallWithToken: true,
69
+ destinationChain: chain,
70
+ destinationContractAddress: contract.address,
71
+ }, contract).catch((err) => expect(err).toEqual(new Error(helpers_1.CALL_EXECUTE_ERROR.REVERT)));
72
+ }));
73
+ test("it should return 'insufficient funds' error when the caller has insufficient funds", () => __awaiter(void 0, void 0, void 0, function* () {
74
+ const chain = types_1.EvmChain.AVALANCHE;
75
+ const destinationContractAddress = "0x065fD4a0eDeCD51360b511fd9B1F1Abe4f920fd1";
76
+ const signerAddress = ethers_1.Wallet.createRandom().address;
77
+ const provider = (0, localChain_1.fork)(chain, {
78
+ impersonateAccounts: [signerAddress],
79
+ blockNumber: 2490220, // A block number after approve transaction.
80
+ });
81
+ const signer = provider.getSigner(signerAddress);
82
+ const contract = new ethers_1.ethers.Contract(destinationContractAddress, IAxelarExecutable_1.default.abi, signer);
83
+ return (0, helpers_1.callExecute)({
84
+ commandId: "0xcf3eef6939a392b4ea9726830bf87bf4b5a4f6939ac3a062b0095944bc97278d",
85
+ sourceChain: "Avalanche",
86
+ sourceAddress: "0xebDF3AAc44eE77b1b194965dEA863d77BB9EB131",
87
+ payload: "0x0000000000000000000000000000000000000000000000000000000000000080365c0fd1705722cf3f1559c9ac62918ff591ad896aa545826a5a995e18260f80000000000000000000000000d36aac0c9676e984d72823fb662ce94d3ab5e55100000000000000000000000000000000000000000000000000000000000000c400000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000d34007bb8a54b2fbb1d6647c5aba04d507abd21d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f75f62464fb6ae6e7088b76457e164eecfb07db40000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000012438ed17390000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000d36aac0c9676e984d72823fb662ce94d3ab5e5510000000000000000000000000000000000000000000000000000000062d11f2a0000000000000000000000000000000000000000000000000000000000000003000000000000000000000000d34007bb8a54b2fbb1d6647c5aba04d507abd21d000000000000000000000000372d0695e75563d9180f8ce31c9924d7e8aaac47000000000000000000000000a1cf442e73045f1ea9960499fc8771454a01019d00000000000000000000000000000000000000000000000000000000",
88
+ symbol: "UST",
89
+ amount: "300000",
90
+ isContractCallWithToken: true,
91
+ destinationChain: chain,
92
+ destinationContractAddress: contract.address,
93
+ }, contract).catch((err) => expect(err).toEqual(new Error(helpers_1.CALL_EXECUTE_ERROR.INSUFFICIENT_FUNDS)));
94
+ }));
95
+ test("it should return ContractReceipt when the caller has sufficient funds and destination contract logic is legit", () => __awaiter(void 0, void 0, void 0, function* () {
96
+ const chain = types_1.EvmChain.AVALANCHE;
97
+ const destinationContractAddress = "0x065fD4a0eDeCD51360b511fd9B1F1Abe4f920fd1";
98
+ const signerAddress = "0x0000000000000000000000000000000000000000";
99
+ const provider = (0, localChain_1.fork)(chain, {
100
+ impersonateAccounts: [signerAddress],
101
+ blockNumber: 2490220, // A block number after approve transaction.
102
+ });
103
+ const signer = provider.getSigner(signerAddress);
104
+ const contract = new ethers_1.ethers.Contract(destinationContractAddress, IAxelarExecutable_1.default.abi, signer);
105
+ const response = yield (0, helpers_1.callExecute)({
106
+ commandId: "0xcf3eef6939a392b4ea9726830bf87bf4b5a4f6939ac3a062b0095944bc97278d",
107
+ sourceChain: "Avalanche",
108
+ sourceAddress: "0xebDF3AAc44eE77b1b194965dEA863d77BB9EB131",
109
+ payload: "0x0000000000000000000000000000000000000000000000000000000000000080365c0fd1705722cf3f1559c9ac62918ff591ad896aa545826a5a995e18260f80000000000000000000000000d36aac0c9676e984d72823fb662ce94d3ab5e55100000000000000000000000000000000000000000000000000000000000000c400000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000d34007bb8a54b2fbb1d6647c5aba04d507abd21d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f75f62464fb6ae6e7088b76457e164eecfb07db40000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000012438ed17390000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000d36aac0c9676e984d72823fb662ce94d3ab5e5510000000000000000000000000000000000000000000000000000000062d11f2a0000000000000000000000000000000000000000000000000000000000000003000000000000000000000000d34007bb8a54b2fbb1d6647c5aba04d507abd21d000000000000000000000000372d0695e75563d9180f8ce31c9924d7e8aaac47000000000000000000000000a1cf442e73045f1ea9960499fc8771454a01019d00000000000000000000000000000000000000000000000000000000",
110
+ symbol: "UST",
111
+ amount: "300000",
112
+ isContractCallWithToken: true,
113
+ destinationChain: chain,
114
+ destinationContractAddress: contract.address,
115
+ }, contract);
116
+ expect(response).toBeDefined();
117
+ }));
40
118
  });
41
119
  });
42
120
  //# sourceMappingURL=contractCallHelper.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contractCallHelper.spec.js","sourceRoot":"","sources":["../../../../../../src/libs/test/TransactionRecoveryAPI/helper/contractCallHelper.spec.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,qEAAsE;AACtE,uCAAqE;AAErE,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,IAAI,QAA6B,CAAC;QAClC,MAAM,IAAI,GAAG,IAAA,yBAAiB,GAAE,CAAC;QAEjC,UAAU,CAAC,GAAG,EAAE;YACd,QAAQ,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,IAAA,2BAAmB,GAAE,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,2EAA2E,EAAE,GAAS,EAAE;YAC3F,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;YAEpC,2CAA2C;YAC3C,MAAM,oBAAoB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YACjF,MAAM,QAAQ,GAAQ,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,CAAC;YAEjE,MAAM,IAAA,qBAAW,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAElC,MAAM,CAAC,oBAAoB,CAAC,CAAC,oBAAoB,CAC/C,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,CACZ,CAAC;YACF,MAAM,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACtC,CAAC,CAAA,CAAC,CAAC;QAEH,IAAI,CAAC,mEAAmE,EAAE,GAAS,EAAE;YACnF,MAAM,IAAI,GAAG,IAAA,yBAAiB,GAAE,CAAC;YAEjC,mCAAmC;YACnC,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YACxE,MAAM,QAAQ,GAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;YAE/C,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;YACrC,MAAM,IAAA,qBAAW,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAElC,MAAM,CAAC,WAAW,CAAC,CAAC,oBAAoB,CACtC,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,OAAO,CACb,CAAC;YACF,MAAM,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACtC,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"contractCallHelper.spec.js","sourceRoot":"","sources":["../../../../../../src/libs/test/TransactionRecoveryAPI/helper/contractCallHelper.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { ethers } from "ethers";
2
+ import { EvmChain } from "../../types";
3
+ export interface ForkOptions {
4
+ impersonateAccounts: string[];
5
+ defaultBalance?: number;
6
+ blockNumber?: number;
7
+ }
8
+ export declare function fork(evmChain: EvmChain, options?: ForkOptions): ethers.providers.Web3Provider;
9
+ //# sourceMappingURL=localChain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localChain.d.ts","sourceRoot":"","sources":["../../../../../src/libs/test/testUtils/localChain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,MAAM,WAAW,WAAW;IAC1B,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,IAAI,CAClB,QAAQ,EAAE,QAAQ,EAClB,OAAO,GAAE,WAGR,iCAoBF"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.fork = void 0;
7
+ const ethers_1 = require("ethers");
8
+ const ganache_1 = __importDefault(require("ganache"));
9
+ const chain_1 = require("../../TransactionRecoveryApi/constants/chain");
10
+ function fork(evmChain, options = {
11
+ impersonateAccounts: [],
12
+ defaultBalance: 1000,
13
+ }) {
14
+ const ganacheProvider = ganache_1.default.provider({
15
+ wallet: {
16
+ unlockedAccounts: options.impersonateAccounts,
17
+ defaultBalance: options.defaultBalance,
18
+ },
19
+ fork: {
20
+ url: chain_1.rpcMap[evmChain],
21
+ blockNumber: options === null || options === void 0 ? void 0 : options.blockNumber,
22
+ },
23
+ chain: {
24
+ vmErrorsOnRPCResponse: true,
25
+ },
26
+ logging: {
27
+ quiet: true,
28
+ },
29
+ });
30
+ return new ethers_1.ethers.providers.Web3Provider(ganacheProvider);
31
+ }
32
+ exports.fork = fork;
33
+ //# sourceMappingURL=localChain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localChain.js","sourceRoot":"","sources":["../../../../../src/libs/test/testUtils/localChain.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAgC;AAChC,sDAA8B;AAC9B,wEAAsE;AAStE,SAAgB,IAAI,CAClB,QAAkB,EAClB,UAAuB;IACrB,mBAAmB,EAAE,EAAE;IACvB,cAAc,EAAE,IAAI;CACrB;IAED,MAAM,eAAe,GAAG,iBAAO,CAAC,QAAQ,CAAC;QACvC,MAAM,EAAE;YACN,gBAAgB,EAAE,OAAO,CAAC,mBAAmB;YAC7C,cAAc,EAAE,OAAO,CAAC,cAAc;SACvC;QACD,IAAI,EAAE;YACJ,GAAG,EAAE,cAAM,CAAC,QAAQ,CAAC;YACrB,WAAW,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW;SAClC;QACD,KAAK,EAAE;YACL,qBAAqB,EAAE,IAAI;SAC5B;QACD,OAAO,EAAE;YACP,KAAK,EAAE,IAAI;SACZ;KACF,CAAC,CAAC;IAEH,OAAO,IAAI,eAAM,CAAC,SAAS,CAAC,YAAY,CAAC,eAAsB,CAAC,CAAC;AACnE,CAAC;AAzBD,oBAyBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@axelar-network/axelarjs-sdk",
3
- "version": "0.6.11-alpha.6",
3
+ "version": "0.6.12",
4
4
  "description": "The JavaScript SDK for Axelar Network",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",