@pendle/core-v2 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/contracts/SuperComposableYield/implementations/IRewardManager.sol +16 -0
  2. package/contracts/SuperComposableYield/implementations/RewardManager.sol +24 -5
  3. package/contracts/core/PendleMarket.sol +10 -18
  4. package/contracts/core/PendleMarketFactory.sol +49 -22
  5. package/contracts/core/PendleRouter.sol +74 -0
  6. package/contracts/core/PendleYieldToken.sol +20 -12
  7. package/contracts/core/{router/PendleRouterStaticUpg.sol → RouterStatic.sol} +6 -6
  8. package/contracts/core/actions/ActionCallback.sol +101 -0
  9. package/contracts/core/{router/PendleRouterCoreUpg.sol → actions/ActionCore.sol} +6 -10
  10. package/contracts/core/{router/PendleRouterYTUpg.sol → actions/ActionYT.sol} +6 -11
  11. package/contracts/core/{router/base/PendleRouterOTBaseUpg.sol → actions/base/ActionSCYAndOTBase.sol} +1 -5
  12. package/contracts/core/{router/base/PendleRouterSCYAndForgeBaseUpg.sol → actions/base/ActionSCYAndYOBase.sol} +3 -5
  13. package/contracts/core/{router/base/PendleRouterYTBaseUpg.sol → actions/base/ActionSCYAndYTBase.sol} +7 -99
  14. package/contracts/core/actions/base/ActionType.sol +11 -0
  15. package/contracts/interfaces/{IPRouterCore.sol → IPActionCore.sol} +1 -1
  16. package/contracts/interfaces/{IPRouterYT.sol → IPActionYT.sol} +1 -3
  17. package/contracts/interfaces/IPAllAction.sol +9 -0
  18. package/contracts/interfaces/IPMarketFactory.sol +11 -0
  19. package/contracts/interfaces/IPYieldToken.sol +21 -3
  20. package/contracts/libraries/math/MarketMathCore.sol +3 -2
  21. package/package.json +1 -1
  22. package/typechain-types/{PendleRouterYTBaseUpg.ts → ActionCallback.ts} +5 -5
  23. package/typechain-types/{PendleRouterCoreUpg.ts → ActionCore.ts} +5 -5
  24. package/typechain-types/{PendleRouterSCYAndForgeBaseUpg.ts → ActionSCYAndYOBase.ts} +5 -6
  25. package/typechain-types/{BoringOwnableData.ts → ActionSCYAndYTBase.ts} +21 -24
  26. package/typechain-types/{PendleRouterStaticUpg.ts → ActionStatic.ts} +5 -5
  27. package/typechain-types/{IPRouterYT.ts → ActionYT.ts} +27 -42
  28. package/typechain-types/IPActionAll.ts +1431 -0
  29. package/typechain-types/{IPRouterCore.ts → IPActionCore.ts} +5 -5
  30. package/typechain-types/{IPRouterView.ts → IPActionStatic.ts} +57 -5
  31. package/typechain-types/{PendleRouterYTUpg.ts → IPActionYT.ts} +5 -97
  32. package/typechain-types/IPAllAction.ts +1431 -0
  33. package/typechain-types/IPMarket.ts +3 -0
  34. package/typechain-types/IPMarketFactory.ts +46 -0
  35. package/typechain-types/IPYieldToken.ts +342 -14
  36. package/typechain-types/IRewardManager.ts +178 -0
  37. package/typechain-types/PendleAaveV3SCY.ts +70 -64
  38. package/typechain-types/PendleBenQiErc20SCY.ts +70 -64
  39. package/typechain-types/PendleMarket.ts +3 -59
  40. package/typechain-types/PendleMarketFactory.ts +150 -24
  41. package/typechain-types/{PendleRouterProxy.ts → PendleRouter.ts} +29 -39
  42. package/typechain-types/PendleYieldToken.ts +116 -101
  43. package/typechain-types/RewardManager.ts +48 -42
  44. package/typechain-types/RouterStatic.ts +828 -0
  45. package/typechain-types/SCYBaseWithRewards.ts +70 -64
  46. package/typechain-types/factories/ActionCallback__factory.ts +116 -0
  47. package/typechain-types/factories/ActionCore__factory.ts +632 -0
  48. package/typechain-types/factories/{PendleRouterSCYAndForgeBaseUpg__factory.ts → ActionSCYAndYOBase__factory.ts} +8 -12
  49. package/typechain-types/factories/ActionSCYAndYTBase__factory.ts +52 -0
  50. package/typechain-types/factories/ActionStatic__factory.ts +308 -0
  51. package/typechain-types/factories/ActionYT__factory.ts +370 -0
  52. package/typechain-types/factories/IPActionAll__factory.ts +983 -0
  53. package/typechain-types/factories/{IPRouterCore__factory.ts → IPActionCore__factory.ts} +6 -6
  54. package/typechain-types/factories/{IPRouterView__factory.ts → IPActionStatic__factory.ts} +38 -6
  55. package/typechain-types/factories/{IPRouterYT__factory.ts → IPActionYT__factory.ts} +6 -29
  56. package/typechain-types/factories/IPAllAction__factory.ts +983 -0
  57. package/typechain-types/factories/IPMarketFactory__factory.ts +28 -0
  58. package/typechain-types/factories/IPMarket__factory.ts +7 -2
  59. package/typechain-types/factories/IPYieldToken__factory.ts +158 -1
  60. package/typechain-types/factories/IRewardManager__factory.ts +92 -0
  61. package/typechain-types/factories/PendleAaveV3SCY__factory.ts +34 -34
  62. package/typechain-types/factories/PendleBenQiErc20SCY__factory.ts +34 -34
  63. package/typechain-types/factories/PendleBtrflyScy__factory.ts +1 -1
  64. package/typechain-types/factories/PendleMarketFactory__factory.ts +112 -17
  65. package/typechain-types/factories/PendleMarket__factory.ts +8 -69
  66. package/typechain-types/factories/PendleRouter__factory.ts +282 -0
  67. package/typechain-types/factories/PendleYearnVaultScy__factory.ts +1 -1
  68. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  69. package/typechain-types/factories/PendleYieldToken__factory.ts +58 -58
  70. package/typechain-types/factories/RewardManager__factory.ts +18 -18
  71. package/typechain-types/factories/RouterStatic__factory.ts +883 -0
  72. package/typechain-types/factories/SCYBaseWithRewards__factory.ts +33 -33
  73. package/typechain-types/hardhat.d.ts +93 -75
  74. package/typechain-types/index.ts +22 -18
  75. package/contracts/core/router/PendleRouterProxy.sol +0 -84
  76. package/contracts/interfaces/IPFlashCallBack.sol +0 -10
  77. package/typechain-types/BoringOwnable.ts +0 -194
  78. package/typechain-types/BoringOwnableUpg.ts +0 -194
  79. package/typechain-types/BoringOwnableUpgData.ts +0 -100
  80. package/typechain-types/IPFlashCallback.ts +0 -115
  81. package/typechain-types/IPermissionsV2.ts +0 -87
  82. package/typechain-types/PendleRouterViewUpg.ts +0 -307
  83. package/typechain-types/PermissionsV2.ts +0 -87
  84. package/typechain-types/factories/BoringOwnableData__factory.ts +0 -90
  85. package/typechain-types/factories/BoringOwnableUpgData__factory.ts +0 -94
  86. package/typechain-types/factories/BoringOwnableUpg__factory.ts +0 -139
  87. package/typechain-types/factories/BoringOwnable__factory.ts +0 -149
  88. package/typechain-types/factories/IPFlashCallback__factory.ts +0 -49
  89. package/typechain-types/factories/IPermissionsV2__factory.ts +0 -39
  90. package/typechain-types/factories/PendleRouterCoreUpg__factory.ts +0 -635
  91. package/typechain-types/factories/PendleRouterProxy__factory.ts +0 -285
  92. package/typechain-types/factories/PendleRouterStaticUpg__factory.ts +0 -315
  93. package/typechain-types/factories/PendleRouterViewUpg__factory.ts +0 -265
  94. package/typechain-types/factories/PendleRouterYTBaseUpg__factory.ts +0 -66
  95. package/typechain-types/factories/PendleRouterYTUpg__factory.ts +0 -422
  96. package/typechain-types/factories/PermissionsV2__factory.ts +0 -36
@@ -32,8 +32,9 @@ export interface SCYBaseWithRewardsInterface extends utils.Interface {
32
32
  "decimals()": FunctionFragment;
33
33
  "decreaseAllowance(address,uint256)": FunctionFragment;
34
34
  "getBaseTokens()": FunctionFragment;
35
+ "getGlobalReward(address)": FunctionFragment;
35
36
  "getRewardTokens()": FunctionFragment;
36
- "globalReward(address)": FunctionFragment;
37
+ "getUserReward(address,address)": FunctionFragment;
37
38
  "increaseAllowance(address,uint256)": FunctionFragment;
38
39
  "isValidBaseToken(address)": FunctionFragment;
39
40
  "mint(address,address,uint256,uint256)": FunctionFragment;
@@ -50,7 +51,6 @@ export interface SCYBaseWithRewardsInterface extends utils.Interface {
50
51
  "transferFrom(address,address,uint256)": FunctionFragment;
51
52
  "updateGlobalReward()": FunctionFragment;
52
53
  "updateUserReward(address)": FunctionFragment;
53
- "userReward(address,address)": FunctionFragment;
54
54
  };
55
55
 
56
56
  encodeFunctionData(
@@ -75,13 +75,17 @@ export interface SCYBaseWithRewardsInterface extends utils.Interface {
75
75
  functionFragment: "getBaseTokens",
76
76
  values?: undefined
77
77
  ): string;
78
+ encodeFunctionData(
79
+ functionFragment: "getGlobalReward",
80
+ values: [string]
81
+ ): string;
78
82
  encodeFunctionData(
79
83
  functionFragment: "getRewardTokens",
80
84
  values?: undefined
81
85
  ): string;
82
86
  encodeFunctionData(
83
- functionFragment: "globalReward",
84
- values: [string]
87
+ functionFragment: "getUserReward",
88
+ values: [string, string]
85
89
  ): string;
86
90
  encodeFunctionData(
87
91
  functionFragment: "increaseAllowance",
@@ -141,10 +145,6 @@ export interface SCYBaseWithRewardsInterface extends utils.Interface {
141
145
  functionFragment: "updateUserReward",
142
146
  values: [string]
143
147
  ): string;
144
- encodeFunctionData(
145
- functionFragment: "userReward",
146
- values: [string, string]
147
- ): string;
148
148
 
149
149
  decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result;
150
150
  decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result;
@@ -162,12 +162,16 @@ export interface SCYBaseWithRewardsInterface extends utils.Interface {
162
162
  functionFragment: "getBaseTokens",
163
163
  data: BytesLike
164
164
  ): Result;
165
+ decodeFunctionResult(
166
+ functionFragment: "getGlobalReward",
167
+ data: BytesLike
168
+ ): Result;
165
169
  decodeFunctionResult(
166
170
  functionFragment: "getRewardTokens",
167
171
  data: BytesLike
168
172
  ): Result;
169
173
  decodeFunctionResult(
170
- functionFragment: "globalReward",
174
+ functionFragment: "getUserReward",
171
175
  data: BytesLike
172
176
  ): Result;
173
177
  decodeFunctionResult(
@@ -216,7 +220,6 @@ export interface SCYBaseWithRewardsInterface extends utils.Interface {
216
220
  functionFragment: "updateUserReward",
217
221
  data: BytesLike
218
222
  ): Result;
219
- decodeFunctionResult(functionFragment: "userReward", data: BytesLike): Result;
220
223
 
221
224
  events: {
222
225
  "Approval(address,address,uint256)": EventFragment;
@@ -297,13 +300,24 @@ export interface SCYBaseWithRewards extends BaseContract {
297
300
  overrides?: CallOverrides
298
301
  ): Promise<[string[]] & { res: string[] }>;
299
302
 
303
+ getGlobalReward(
304
+ rewardToken: string,
305
+ overrides?: CallOverrides
306
+ ): Promise<
307
+ [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
308
+ >;
309
+
300
310
  getRewardTokens(overrides?: CallOverrides): Promise<[string[]]>;
301
311
 
302
- globalReward(
303
- arg0: string,
312
+ getUserReward(
313
+ user: string,
314
+ rewardToken: string,
304
315
  overrides?: CallOverrides
305
316
  ): Promise<
306
- [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
317
+ [BigNumber, BigNumber] & {
318
+ lastIndex: BigNumber;
319
+ accruedReward: BigNumber;
320
+ }
307
321
  >;
308
322
 
309
323
  increaseAllowance(
@@ -387,17 +401,6 @@ export interface SCYBaseWithRewards extends BaseContract {
387
401
  user: string,
388
402
  overrides?: Overrides & { from?: string | Promise<string> }
389
403
  ): Promise<ContractTransaction>;
390
-
391
- userReward(
392
- arg0: string,
393
- arg1: string,
394
- overrides?: CallOverrides
395
- ): Promise<
396
- [BigNumber, BigNumber] & {
397
- lastIndex: BigNumber;
398
- accruedReward: BigNumber;
399
- }
400
- >;
401
404
  };
402
405
 
403
406
  allowance(
@@ -426,13 +429,21 @@ export interface SCYBaseWithRewards extends BaseContract {
426
429
 
427
430
  getBaseTokens(overrides?: CallOverrides): Promise<string[]>;
428
431
 
432
+ getGlobalReward(
433
+ rewardToken: string,
434
+ overrides?: CallOverrides
435
+ ): Promise<
436
+ [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
437
+ >;
438
+
429
439
  getRewardTokens(overrides?: CallOverrides): Promise<string[]>;
430
440
 
431
- globalReward(
432
- arg0: string,
441
+ getUserReward(
442
+ user: string,
443
+ rewardToken: string,
433
444
  overrides?: CallOverrides
434
445
  ): Promise<
435
- [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
446
+ [BigNumber, BigNumber] & { lastIndex: BigNumber; accruedReward: BigNumber }
436
447
  >;
437
448
 
438
449
  increaseAllowance(
@@ -512,14 +523,6 @@ export interface SCYBaseWithRewards extends BaseContract {
512
523
  overrides?: Overrides & { from?: string | Promise<string> }
513
524
  ): Promise<ContractTransaction>;
514
525
 
515
- userReward(
516
- arg0: string,
517
- arg1: string,
518
- overrides?: CallOverrides
519
- ): Promise<
520
- [BigNumber, BigNumber] & { lastIndex: BigNumber; accruedReward: BigNumber }
521
- >;
522
-
523
526
  callStatic: {
524
527
  allowance(
525
528
  owner: string,
@@ -547,13 +550,24 @@ export interface SCYBaseWithRewards extends BaseContract {
547
550
 
548
551
  getBaseTokens(overrides?: CallOverrides): Promise<string[]>;
549
552
 
553
+ getGlobalReward(
554
+ rewardToken: string,
555
+ overrides?: CallOverrides
556
+ ): Promise<
557
+ [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
558
+ >;
559
+
550
560
  getRewardTokens(overrides?: CallOverrides): Promise<string[]>;
551
561
 
552
- globalReward(
553
- arg0: string,
562
+ getUserReward(
563
+ user: string,
564
+ rewardToken: string,
554
565
  overrides?: CallOverrides
555
566
  ): Promise<
556
- [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
567
+ [BigNumber, BigNumber] & {
568
+ lastIndex: BigNumber;
569
+ accruedReward: BigNumber;
570
+ }
557
571
  >;
558
572
 
559
573
  increaseAllowance(
@@ -625,17 +639,6 @@ export interface SCYBaseWithRewards extends BaseContract {
625
639
  updateGlobalReward(overrides?: CallOverrides): Promise<void>;
626
640
 
627
641
  updateUserReward(user: string, overrides?: CallOverrides): Promise<void>;
628
-
629
- userReward(
630
- arg0: string,
631
- arg1: string,
632
- overrides?: CallOverrides
633
- ): Promise<
634
- [BigNumber, BigNumber] & {
635
- lastIndex: BigNumber;
636
- accruedReward: BigNumber;
637
- }
638
- >;
639
642
  };
640
643
 
641
644
  filters: {
@@ -689,9 +692,18 @@ export interface SCYBaseWithRewards extends BaseContract {
689
692
 
690
693
  getBaseTokens(overrides?: CallOverrides): Promise<BigNumber>;
691
694
 
695
+ getGlobalReward(
696
+ rewardToken: string,
697
+ overrides?: CallOverrides
698
+ ): Promise<BigNumber>;
699
+
692
700
  getRewardTokens(overrides?: CallOverrides): Promise<BigNumber>;
693
701
 
694
- globalReward(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
702
+ getUserReward(
703
+ user: string,
704
+ rewardToken: string,
705
+ overrides?: CallOverrides
706
+ ): Promise<BigNumber>;
695
707
 
696
708
  increaseAllowance(
697
709
  spender: string,
@@ -772,12 +784,6 @@ export interface SCYBaseWithRewards extends BaseContract {
772
784
  user: string,
773
785
  overrides?: Overrides & { from?: string | Promise<string> }
774
786
  ): Promise<BigNumber>;
775
-
776
- userReward(
777
- arg0: string,
778
- arg1: string,
779
- overrides?: CallOverrides
780
- ): Promise<BigNumber>;
781
787
  };
782
788
 
783
789
  populateTransaction: {
@@ -810,10 +816,16 @@ export interface SCYBaseWithRewards extends BaseContract {
810
816
 
811
817
  getBaseTokens(overrides?: CallOverrides): Promise<PopulatedTransaction>;
812
818
 
819
+ getGlobalReward(
820
+ rewardToken: string,
821
+ overrides?: CallOverrides
822
+ ): Promise<PopulatedTransaction>;
823
+
813
824
  getRewardTokens(overrides?: CallOverrides): Promise<PopulatedTransaction>;
814
825
 
815
- globalReward(
816
- arg0: string,
826
+ getUserReward(
827
+ user: string,
828
+ rewardToken: string,
817
829
  overrides?: CallOverrides
818
830
  ): Promise<PopulatedTransaction>;
819
831
 
@@ -896,11 +908,5 @@ export interface SCYBaseWithRewards extends BaseContract {
896
908
  user: string,
897
909
  overrides?: Overrides & { from?: string | Promise<string> }
898
910
  ): Promise<PopulatedTransaction>;
899
-
900
- userReward(
901
- arg0: string,
902
- arg1: string,
903
- overrides?: CallOverrides
904
- ): Promise<PopulatedTransaction>;
905
911
  };
906
912
  }
@@ -0,0 +1,116 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
5
+ import { Provider, TransactionRequest } from "@ethersproject/providers";
6
+ import type {
7
+ ActionCallback,
8
+ ActionCallbackInterface,
9
+ } from "../ActionCallback";
10
+
11
+ const _abi = [
12
+ {
13
+ inputs: [
14
+ {
15
+ internalType: "address",
16
+ name: "_marketFactory",
17
+ type: "address",
18
+ },
19
+ ],
20
+ stateMutability: "nonpayable",
21
+ type: "constructor",
22
+ },
23
+ {
24
+ inputs: [],
25
+ name: "marketFactory",
26
+ outputs: [
27
+ {
28
+ internalType: "address",
29
+ name: "",
30
+ type: "address",
31
+ },
32
+ ],
33
+ stateMutability: "view",
34
+ type: "function",
35
+ },
36
+ {
37
+ inputs: [
38
+ {
39
+ internalType: "int256",
40
+ name: "otToAccount",
41
+ type: "int256",
42
+ },
43
+ {
44
+ internalType: "int256",
45
+ name: "scyToAccount",
46
+ type: "int256",
47
+ },
48
+ {
49
+ internalType: "bytes",
50
+ name: "data",
51
+ type: "bytes",
52
+ },
53
+ ],
54
+ name: "swapCallback",
55
+ outputs: [],
56
+ stateMutability: "nonpayable",
57
+ type: "function",
58
+ },
59
+ ];
60
+
61
+ const _bytecode =
62
+ "0x60a060405234801561001057600080fd5b50604051610e94380380610e9483398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b608051610e04610090600039600081816040015260a60152610e046000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806306ae70951461003b578063fa483e7214610078575b600080fd5b6100627f000000000000000000000000000000000000000000000000000000000000000081565b60405161006f9190610a05565b60405180910390f35b61008b610086366004610a19565b61008d565b005b6040516358e6309f60e01b815233906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906358e6309f906100db908490600401610a05565b60206040518083038186803b1580156100f357600080fd5b505afa158015610107573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012b9190610a98565b61016d5760405162461bcd60e51b815260206004820152600e60248201526d1253959053125117d3505492d15560921b60448201526064015b60405180910390fd5b600061017b83850185610ae4565b509050600281600381111561019257610192610ba5565b14156101a8576101a3338585610254565b61024c565b60018160038111156101bc576101bc610ba5565b14156101cf576101a3338787878761035f565b60038160038111156101e3576101e3610ba5565b1480610200575060008160038111156101fe576101fe610ba5565b145b15610211576101a333868686610541565b60405162461bcd60e51b815260206004820152601060248201526f756e6b6e6f776e20737761705479706560801b6044820152606401610164565b505050505050565b6000836001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b15801561028f57600080fd5b505afa1580156102a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102c79190610bd3565b9250600091506102db905083850185610c20565b604051630aa1fb9760e41b81529092506001600160a01b038416915063aa1fb9709061030d9088908590600401610c57565b602060405180830381600087803b15801561032757600080fd5b505af115801561033b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024c9190610c71565b60008061036e83850185610c8a565b9250925050600080886001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b1580156103af57600080fd5b505afa1580156103c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103e79190610bd3565b925050915060006103ff6103fa8a6106ab565b6106bc565b9050600061040c896106bc565b9050600061048c856001600160a01b031663f65d6fc86040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561044e57600080fd5b505af1158015610462573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104869190610c71565b846106cf565b9050600061049a82846106f5565b90506104b16001600160a01b03871689878461070c565b846001600160a01b031663aa1fb9708e896040518363ffffffff1660e01b81526004016104df929190610c57565b602060405180830381600087803b1580156104f957600080fd5b505af115801561050d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105319190610c71565b5050505050505050505050505050565b600061054f82840184610c20565b915050600080866001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b15801561058e57600080fd5b505afa1580156105a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c69190610bd3565b925050915060006105d96103fa886106ab565b90506000826001600160a01b03166380a7c9ac306040518263ffffffff1660e01b81526004016106099190610a05565b602060405180830381600087803b15801561062357600080fd5b505af1158015610637573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065b9190610c71565b90506106716001600160a01b0385168a8461077d565b6001600160a01b03851630146106a0576106a08561068f8484610cde565b6001600160a01b038716919061077d565b505050505050505050565b60006106b682610cf5565b92915050565b6000808212156106cb57600080fd5b5090565b6000826106e4670de0b6b3a764000084610d12565b6106ee9190610d31565b9392505050565b6000818310156107065760006106ee565b50900390565b6040516001600160a01b03808516602483015283166044820152606481018290526107779085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526107b2565b50505050565b6040516001600160a01b0383166024820152604481018290526107ad90849063a9059cbb60e01b90606401610740565b505050565b6000610807826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166108849092919063ffffffff16565b8051909150156107ad57808060200190518101906108259190610a98565b6107ad5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610164565b6060610893848460008561089b565b949350505050565b6060824710156108fc5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610164565b6001600160a01b0385163b6109535760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610164565b600080866001600160a01b0316858760405161096f9190610d7f565b60006040518083038185875af1925050503d80600081146109ac576040519150601f19603f3d011682016040523d82523d6000602084013e6109b1565b606091505b50915091506109c18282866109cc565b979650505050505050565b606083156109db5750816106ee565b8251156109eb5782518084602001fd5b8160405162461bcd60e51b81526004016101649190610d9b565b6001600160a01b0391909116815260200190565b60008060008060608587031215610a2f57600080fd5b843593506020850135925060408501356001600160401b0380821115610a5457600080fd5b818701915087601f830112610a6857600080fd5b813581811115610a7757600080fd5b886020828501011115610a8957600080fd5b95989497505060200194505050565b600060208284031215610aaa57600080fd5b815180151581146106ee57600080fd5b803560048110610ac957600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215610af757600080fd5b610b0083610aba565b915060208301356001600160401b0380821115610b1c57600080fd5b818501915085601f830112610b3057600080fd5b813581811115610b4257610b42610ace565b604051601f8201601f19908116603f01168101908382118183101715610b6a57610b6a610ace565b81604052828152886020848701011115610b8357600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b634e487b7160e01b600052602160045260246000fd5b6001600160a01b0381168114610bd057600080fd5b50565b600080600060608486031215610be857600080fd5b8351610bf381610bbb565b6020850151909350610c0481610bbb565b6040850151909250610c1581610bbb565b809150509250925092565b60008060408385031215610c3357600080fd5b610c3c83610aba565b91506020830135610c4c81610bbb565b809150509250929050565b6001600160a01b0392831681529116602082015260400190565b600060208284031215610c8357600080fd5b5051919050565b600080600060608486031215610c9f57600080fd5b610ca884610aba565b92506020840135610cb881610bbb565b91506040840135610c1581610bbb565b634e487b7160e01b600052601160045260246000fd5b600082821015610cf057610cf0610cc8565b500390565b6000600160ff1b821415610d0b57610d0b610cc8565b5060000390565b6000816000190483118215151615610d2c57610d2c610cc8565b500290565b600082610d4e57634e487b7160e01b600052601260045260246000fd5b500490565b60005b83811015610d6e578181015183820152602001610d56565b838111156107775750506000910152565b60008251610d91818460208701610d53565b9190910192915050565b6020815260008251806020840152610dba816040850160208701610d53565b601f01601f1916919091016040019291505056fea2646970667358221220fad1139516a811a2838b9edbcd07431428fae734a9c56cbe726b57ddd903316f64736f6c63430008090033";
63
+
64
+ type ActionCallbackConstructorParams =
65
+ | [signer?: Signer]
66
+ | ConstructorParameters<typeof ContractFactory>;
67
+
68
+ const isSuperArgs = (
69
+ xs: ActionCallbackConstructorParams
70
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
71
+
72
+ export class ActionCallback__factory extends ContractFactory {
73
+ constructor(...args: ActionCallbackConstructorParams) {
74
+ if (isSuperArgs(args)) {
75
+ super(...args);
76
+ } else {
77
+ super(_abi, _bytecode, args[0]);
78
+ }
79
+ this.contractName = "ActionCallback";
80
+ }
81
+
82
+ deploy(
83
+ _marketFactory: string,
84
+ overrides?: Overrides & { from?: string | Promise<string> }
85
+ ): Promise<ActionCallback> {
86
+ return super.deploy(
87
+ _marketFactory,
88
+ overrides || {}
89
+ ) as Promise<ActionCallback>;
90
+ }
91
+ getDeployTransaction(
92
+ _marketFactory: string,
93
+ overrides?: Overrides & { from?: string | Promise<string> }
94
+ ): TransactionRequest {
95
+ return super.getDeployTransaction(_marketFactory, overrides || {});
96
+ }
97
+ attach(address: string): ActionCallback {
98
+ return super.attach(address) as ActionCallback;
99
+ }
100
+ connect(signer: Signer): ActionCallback__factory {
101
+ return super.connect(signer) as ActionCallback__factory;
102
+ }
103
+ static readonly contractName: "ActionCallback";
104
+ public readonly contractName: "ActionCallback";
105
+ static readonly bytecode = _bytecode;
106
+ static readonly abi = _abi;
107
+ static createInterface(): ActionCallbackInterface {
108
+ return new utils.Interface(_abi) as ActionCallbackInterface;
109
+ }
110
+ static connect(
111
+ address: string,
112
+ signerOrProvider: Signer | Provider
113
+ ): ActionCallback {
114
+ return new Contract(address, _abi, signerOrProvider) as ActionCallback;
115
+ }
116
+ }