@pendle/core-v2 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +100 -0
- package/contracts/SuperComposableYield/ISuperComposableYield.sol +68 -0
- package/contracts/SuperComposableYield/SCYUtils.sol +14 -0
- package/contracts/SuperComposableYield/implementations/RewardManager.sol +117 -0
- package/contracts/SuperComposableYield/implementations/SCYBase.sol +126 -0
- package/contracts/SuperComposableYield/implementations/SCYBaseWithRewards.sol +79 -0
- package/contracts/core/PendleBaseToken.sol +39 -0
- package/contracts/core/PendleMarket.sol +248 -0
- package/contracts/core/PendleMarketFactory.sol +60 -0
- package/contracts/core/PendleOwnershipToken.sol +44 -0
- package/contracts/core/PendleSCYImpl/AaveV3/PendleAaveV3SCY.sol +139 -0
- package/contracts/core/PendleSCYImpl/AaveV3/WadRayMath.sol +126 -0
- package/contracts/core/PendleSCYImpl/PendleBenQiErc20SCY.sol +127 -0
- package/contracts/core/PendleSCYImpl/PendleBtrflySCY.sol +125 -0
- package/contracts/core/PendleSCYImpl/PendleYearnVaultSCY.sol +115 -0
- package/contracts/core/PendleYieldContractFactory.sol +109 -0
- package/contracts/core/PendleYieldToken.sol +240 -0
- package/contracts/core/misc/BoringOwnable.sol +62 -0
- package/contracts/core/misc/BoringOwnableUpg.sol +64 -0
- package/contracts/core/misc/PendleJoeSwapHelperUpg.sol +82 -0
- package/contracts/core/router/PendleRouterCoreUpg.sol +219 -0
- package/contracts/core/router/PendleRouterProxy.sol +64 -0
- package/contracts/core/router/PendleRouterYTUpg.sol +134 -0
- package/contracts/core/router/base/PendleRouterOTBaseUpg.sol +218 -0
- package/contracts/core/router/base/PendleRouterSCYAndForgeBaseUpg.sol +141 -0
- package/contracts/core/router/base/PendleRouterYTBaseUpg.sol +212 -0
- package/contracts/interfaces/IAToken.sol +34 -0
- package/contracts/interfaces/IAavePool.sol +41 -0
- package/contracts/interfaces/IAaveRewardsController.sol +32 -0
- package/contracts/interfaces/IBenQiComptroller.sol +33 -0
- package/contracts/interfaces/IJoePair.sol +98 -0
- package/contracts/interfaces/IJoeRouter01.sol +162 -0
- package/contracts/interfaces/IPBaseToken.sol +9 -0
- package/contracts/interfaces/IPFlashCallBack.sol +10 -0
- package/contracts/interfaces/IPGovernanceManager.sol +28 -0
- package/contracts/interfaces/IPMarket.sol +57 -0
- package/contracts/interfaces/IPMarketAddRemoveCallback.sol +18 -0
- package/contracts/interfaces/IPMarketFactory.sol +8 -0
- package/contracts/interfaces/IPMarketSwapCallback.sol +10 -0
- package/contracts/interfaces/IPOwnershipToken.sol +15 -0
- package/contracts/interfaces/IPPermissionsV2.sol +28 -0
- package/contracts/interfaces/IPRouterCore.sol +108 -0
- package/contracts/interfaces/IPRouterYT.sol +47 -0
- package/contracts/interfaces/IPYieldContractFactory.sol +36 -0
- package/contracts/interfaces/IPYieldToken.sol +19 -0
- package/contracts/interfaces/IQiErc20.sol +35 -0
- package/contracts/interfaces/IQiToken.sol +29 -0
- package/contracts/interfaces/IREDACTEDStaking.sol +35 -0
- package/contracts/interfaces/IWETH.sol +34 -0
- package/contracts/interfaces/IWXBTRFLY.sol +37 -0
- package/contracts/interfaces/IYearnVault.sol +32 -0
- package/contracts/libraries/JoeLibrary.sol +121 -0
- package/contracts/libraries/SCYIndex.sol +55 -0
- package/contracts/libraries/helpers/ExpiryUtilsLib.sol +166 -0
- package/contracts/libraries/math/FixedPoint.sol +208 -0
- package/contracts/libraries/math/LogExpMath.sol +515 -0
- package/contracts/libraries/math/MarketApproxLib.sol +140 -0
- package/contracts/libraries/math/MarketMathLib.sol +606 -0
- package/contracts/periphery/PendleGovernanceManager.sol +36 -0
- package/contracts/periphery/PermissionsV2.sol +23 -0
- package/package.json +76 -0
- package/typechain-types/BoringOwnable.ts +194 -0
- package/typechain-types/BoringOwnableData.ts +100 -0
- package/typechain-types/BoringOwnableUpg.ts +194 -0
- package/typechain-types/BoringOwnableUpgData.ts +100 -0
- package/typechain-types/ERC1967UpgradeUpgradeable.ts +97 -0
- package/typechain-types/ERC20.ts +417 -0
- package/typechain-types/IAToken.ts +331 -0
- package/typechain-types/IAavePool.ts +192 -0
- package/typechain-types/IAaveRewardsController.ts +148 -0
- package/typechain-types/IBeaconUpgradeable.ts +87 -0
- package/typechain-types/IBenQiComptroller.ts +125 -0
- package/typechain-types/IERC1822ProxiableUpgradeable.ts +87 -0
- package/typechain-types/IERC20.ts +300 -0
- package/typechain-types/IERC20Metadata.ts +339 -0
- package/typechain-types/IJoePair.ts +888 -0
- package/typechain-types/IJoeRouter01.ts +1107 -0
- package/typechain-types/IPBaseToken.ts +365 -0
- package/typechain-types/IPFlashCallback.ts +115 -0
- package/typechain-types/IPGovernanceManager.ts +84 -0
- package/typechain-types/IPMarket.ts +701 -0
- package/typechain-types/IPMarketAddRemoveCallback.ts +169 -0
- package/typechain-types/IPMarketFactory.ts +109 -0
- package/typechain-types/IPMarketSwapCallback.ts +115 -0
- package/typechain-types/IPOwnershipToken.ts +488 -0
- package/typechain-types/IPRouterCore.ts +759 -0
- package/typechain-types/IPRouterYT.ts +405 -0
- package/typechain-types/IPYieldContractFactory.ts +192 -0
- package/typechain-types/IPYieldToken.ts +525 -0
- package/typechain-types/IPermissionsV2.ts +87 -0
- package/typechain-types/IQiErc20.ts +402 -0
- package/typechain-types/IQiToken.ts +327 -0
- package/typechain-types/IREDACTEDStaking.ts +216 -0
- package/typechain-types/ISuperComposableYield.ts +652 -0
- package/typechain-types/IWETH.ts +380 -0
- package/typechain-types/IWXBTRFLY.ts +254 -0
- package/typechain-types/IYearnVault.ts +152 -0
- package/typechain-types/PendleAaveV3SCY.ts +901 -0
- package/typechain-types/PendleBaseToken.ts +505 -0
- package/typechain-types/PendleBenQiErc20SCY.ts +914 -0
- package/typechain-types/PendleBtrflyScy.ts +794 -0
- package/typechain-types/PendleGovernanceManager.ts +187 -0
- package/typechain-types/PendleJoeSwapHelperUpg.ts +97 -0
- package/typechain-types/PendleMarket.ts +1008 -0
- package/typechain-types/PendleMarketFactory.ts +246 -0
- package/typechain-types/PendleOwnershipToken.ts +628 -0
- package/typechain-types/PendleRouterCoreUpg.ts +780 -0
- package/typechain-types/PendleRouterProxy.ts +417 -0
- package/typechain-types/PendleRouterSCYAndForgeBaseUpg.ts +98 -0
- package/typechain-types/PendleRouterYTBaseUpg.ts +134 -0
- package/typechain-types/PendleRouterYTUpg.ts +453 -0
- package/typechain-types/PendleYearnVaultScy.ts +784 -0
- package/typechain-types/PendleYieldContractFactory.ts +479 -0
- package/typechain-types/PendleYieldToken.ts +1030 -0
- package/typechain-types/PermissionsV2.ts +87 -0
- package/typechain-types/Proxy.ts +57 -0
- package/typechain-types/RewardManager.ts +172 -0
- package/typechain-types/SCYBase.ts +734 -0
- package/typechain-types/SCYBaseWithRewards.ts +819 -0
- package/typechain-types/UUPSUpgradeable.ts +197 -0
- package/typechain-types/common.ts +44 -0
- package/typechain-types/factories/BoringOwnableData__factory.ts +90 -0
- package/typechain-types/factories/BoringOwnableUpgData__factory.ts +94 -0
- package/typechain-types/factories/BoringOwnableUpg__factory.ts +139 -0
- package/typechain-types/factories/BoringOwnable__factory.ts +149 -0
- package/typechain-types/factories/ERC1967UpgradeUpgradeable__factory.ts +75 -0
- package/typechain-types/factories/ERC20__factory.ts +348 -0
- package/typechain-types/factories/IAToken__factory.ts +225 -0
- package/typechain-types/factories/IAavePool__factory.ts +99 -0
- package/typechain-types/factories/IAaveRewardsController__factory.ts +78 -0
- package/typechain-types/factories/IBeaconUpgradeable__factory.ts +39 -0
- package/typechain-types/factories/IBenQiComptroller__factory.ts +59 -0
- package/typechain-types/factories/IERC1822ProxiableUpgradeable__factory.ts +43 -0
- package/typechain-types/factories/IERC20Metadata__factory.ts +248 -0
- package/typechain-types/factories/IERC20__factory.ts +203 -0
- package/typechain-types/factories/IJoePair__factory.ts +674 -0
- package/typechain-types/factories/IJoeRouter01__factory.ts +772 -0
- package/typechain-types/factories/IPBaseToken__factory.ts +271 -0
- package/typechain-types/factories/IPFlashCallback__factory.ts +49 -0
- package/typechain-types/factories/IPGovernanceManager__factory.ts +39 -0
- package/typechain-types/factories/IPMarketAddRemoveCallback__factory.ts +86 -0
- package/typechain-types/factories/IPMarketFactory__factory.ts +58 -0
- package/typechain-types/factories/IPMarketSwapCallback__factory.ts +53 -0
- package/typechain-types/factories/IPMarket__factory.ts +559 -0
- package/typechain-types/factories/IPOwnershipToken__factory.ts +349 -0
- package/typechain-types/factories/IPRouterCore__factory.ts +516 -0
- package/typechain-types/factories/IPRouterYT__factory.ts +246 -0
- package/typechain-types/factories/IPYieldContractFactory__factory.ts +117 -0
- package/typechain-types/factories/IPYieldToken__factory.ts +383 -0
- package/typechain-types/factories/IPermissionsV2__factory.ts +39 -0
- package/typechain-types/factories/IQiErc20__factory.ts +270 -0
- package/typechain-types/factories/IQiToken__factory.ts +219 -0
- package/typechain-types/factories/IREDACTEDStaking__factory.ts +107 -0
- package/typechain-types/factories/ISuperComposableYield__factory.ts +438 -0
- package/typechain-types/factories/IWETH__factory.ts +261 -0
- package/typechain-types/factories/IWXBTRFLY__factory.ts +131 -0
- package/typechain-types/factories/IYearnVault__factory.ts +74 -0
- package/typechain-types/factories/PendleAaveV3SCY__factory.ts +727 -0
- package/typechain-types/factories/PendleBaseToken__factory.ts +386 -0
- package/typechain-types/factories/PendleBenQiErc20SCY__factory.ts +753 -0
- package/typechain-types/factories/PendleBtrflyScy__factory.ts +652 -0
- package/typechain-types/factories/PendleGovernanceManager__factory.ts +149 -0
- package/typechain-types/factories/PendleJoeSwapHelperUpg__factory.ts +56 -0
- package/typechain-types/factories/PendleMarketFactory__factory.ts +207 -0
- package/typechain-types/factories/PendleMarket__factory.ts +891 -0
- package/typechain-types/factories/PendleOwnershipToken__factory.ts +565 -0
- package/typechain-types/factories/PendleRouterCoreUpg__factory.ts +620 -0
- package/typechain-types/factories/PendleRouterProxy__factory.ts +316 -0
- package/typechain-types/factories/PendleRouterSCYAndForgeBaseUpg__factory.ts +56 -0
- package/typechain-types/factories/PendleRouterYTBaseUpg__factory.ts +66 -0
- package/typechain-types/factories/PendleRouterYTUpg__factory.ts +363 -0
- package/typechain-types/factories/PendleYearnVaultScy__factory.ts +630 -0
- package/typechain-types/factories/PendleYieldContractFactory__factory.ts +368 -0
- package/typechain-types/factories/PendleYieldToken__factory.ts +814 -0
- package/typechain-types/factories/PermissionsV2__factory.ts +36 -0
- package/typechain-types/factories/Proxy__factory.ts +28 -0
- package/typechain-types/factories/RewardManager__factory.ts +89 -0
- package/typechain-types/factories/SCYBaseWithRewards__factory.ts +535 -0
- package/typechain-types/factories/SCYBase__factory.ts +479 -0
- package/typechain-types/factories/UUPSUpgradeable__factory.ts +115 -0
- package/typechain-types/hardhat.d.ts +564 -0
- package/typechain-types/index.ts +122 -0
|
@@ -0,0 +1,363 @@
|
|
|
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
|
+
PendleRouterYTUpg,
|
|
8
|
+
PendleRouterYTUpgInterface,
|
|
9
|
+
} from "../PendleRouterYTUpg";
|
|
10
|
+
|
|
11
|
+
const _abi = [
|
|
12
|
+
{
|
|
13
|
+
inputs: [
|
|
14
|
+
{
|
|
15
|
+
internalType: "address",
|
|
16
|
+
name: "_joeRouter",
|
|
17
|
+
type: "address",
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
internalType: "address",
|
|
21
|
+
name: "_joeFactory",
|
|
22
|
+
type: "address",
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
internalType: "address",
|
|
26
|
+
name: "_marketFactory",
|
|
27
|
+
type: "address",
|
|
28
|
+
},
|
|
29
|
+
],
|
|
30
|
+
stateMutability: "nonpayable",
|
|
31
|
+
type: "constructor",
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
inputs: [],
|
|
35
|
+
name: "joeFactory",
|
|
36
|
+
outputs: [
|
|
37
|
+
{
|
|
38
|
+
internalType: "address",
|
|
39
|
+
name: "",
|
|
40
|
+
type: "address",
|
|
41
|
+
},
|
|
42
|
+
],
|
|
43
|
+
stateMutability: "view",
|
|
44
|
+
type: "function",
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
inputs: [],
|
|
48
|
+
name: "joeRouter",
|
|
49
|
+
outputs: [
|
|
50
|
+
{
|
|
51
|
+
internalType: "address",
|
|
52
|
+
name: "",
|
|
53
|
+
type: "address",
|
|
54
|
+
},
|
|
55
|
+
],
|
|
56
|
+
stateMutability: "view",
|
|
57
|
+
type: "function",
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
inputs: [],
|
|
61
|
+
name: "marketFactory",
|
|
62
|
+
outputs: [
|
|
63
|
+
{
|
|
64
|
+
internalType: "address",
|
|
65
|
+
name: "",
|
|
66
|
+
type: "address",
|
|
67
|
+
},
|
|
68
|
+
],
|
|
69
|
+
stateMutability: "view",
|
|
70
|
+
type: "function",
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
inputs: [
|
|
74
|
+
{
|
|
75
|
+
internalType: "int256",
|
|
76
|
+
name: "otToAccount",
|
|
77
|
+
type: "int256",
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
internalType: "int256",
|
|
81
|
+
name: "scyToAccount",
|
|
82
|
+
type: "int256",
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
internalType: "bytes",
|
|
86
|
+
name: "data",
|
|
87
|
+
type: "bytes",
|
|
88
|
+
},
|
|
89
|
+
],
|
|
90
|
+
name: "swapCallback",
|
|
91
|
+
outputs: [],
|
|
92
|
+
stateMutability: "nonpayable",
|
|
93
|
+
type: "function",
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
inputs: [
|
|
97
|
+
{
|
|
98
|
+
internalType: "uint256",
|
|
99
|
+
name: "exactRawTokenIn",
|
|
100
|
+
type: "uint256",
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
internalType: "address",
|
|
104
|
+
name: "receiver",
|
|
105
|
+
type: "address",
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
internalType: "address[]",
|
|
109
|
+
name: "path",
|
|
110
|
+
type: "address[]",
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
internalType: "address",
|
|
114
|
+
name: "market",
|
|
115
|
+
type: "address",
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
internalType: "uint256",
|
|
119
|
+
name: "minYtOut",
|
|
120
|
+
type: "uint256",
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
internalType: "uint256",
|
|
124
|
+
name: "netYtOutGuessMin",
|
|
125
|
+
type: "uint256",
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
internalType: "uint256",
|
|
129
|
+
name: "netYtOutGuessMax",
|
|
130
|
+
type: "uint256",
|
|
131
|
+
},
|
|
132
|
+
],
|
|
133
|
+
name: "swapExactRawTokenForYt",
|
|
134
|
+
outputs: [
|
|
135
|
+
{
|
|
136
|
+
internalType: "uint256",
|
|
137
|
+
name: "netYtOut",
|
|
138
|
+
type: "uint256",
|
|
139
|
+
},
|
|
140
|
+
],
|
|
141
|
+
stateMutability: "nonpayable",
|
|
142
|
+
type: "function",
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
inputs: [
|
|
146
|
+
{
|
|
147
|
+
internalType: "address",
|
|
148
|
+
name: "receiver",
|
|
149
|
+
type: "address",
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
internalType: "address",
|
|
153
|
+
name: "market",
|
|
154
|
+
type: "address",
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
internalType: "uint256",
|
|
158
|
+
name: "exactScyIn",
|
|
159
|
+
type: "uint256",
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
internalType: "uint256",
|
|
163
|
+
name: "minYtOut",
|
|
164
|
+
type: "uint256",
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
internalType: "uint256",
|
|
168
|
+
name: "netYtOutGuessMin",
|
|
169
|
+
type: "uint256",
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
internalType: "uint256",
|
|
173
|
+
name: "netYtOutGuessMax",
|
|
174
|
+
type: "uint256",
|
|
175
|
+
},
|
|
176
|
+
],
|
|
177
|
+
name: "swapExactScyForYt",
|
|
178
|
+
outputs: [
|
|
179
|
+
{
|
|
180
|
+
internalType: "uint256",
|
|
181
|
+
name: "",
|
|
182
|
+
type: "uint256",
|
|
183
|
+
},
|
|
184
|
+
],
|
|
185
|
+
stateMutability: "nonpayable",
|
|
186
|
+
type: "function",
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
inputs: [
|
|
190
|
+
{
|
|
191
|
+
internalType: "uint256",
|
|
192
|
+
name: "exactYtIn",
|
|
193
|
+
type: "uint256",
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
internalType: "address",
|
|
197
|
+
name: "receiver",
|
|
198
|
+
type: "address",
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
internalType: "address[]",
|
|
202
|
+
name: "path",
|
|
203
|
+
type: "address[]",
|
|
204
|
+
},
|
|
205
|
+
{
|
|
206
|
+
internalType: "address",
|
|
207
|
+
name: "market",
|
|
208
|
+
type: "address",
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
internalType: "uint256",
|
|
212
|
+
name: "minRawTokenOut",
|
|
213
|
+
type: "uint256",
|
|
214
|
+
},
|
|
215
|
+
],
|
|
216
|
+
name: "swapExactYtForRawToken",
|
|
217
|
+
outputs: [
|
|
218
|
+
{
|
|
219
|
+
internalType: "uint256",
|
|
220
|
+
name: "netRawTokenOut",
|
|
221
|
+
type: "uint256",
|
|
222
|
+
},
|
|
223
|
+
],
|
|
224
|
+
stateMutability: "nonpayable",
|
|
225
|
+
type: "function",
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
inputs: [
|
|
229
|
+
{
|
|
230
|
+
internalType: "address",
|
|
231
|
+
name: "receiver",
|
|
232
|
+
type: "address",
|
|
233
|
+
},
|
|
234
|
+
{
|
|
235
|
+
internalType: "address",
|
|
236
|
+
name: "market",
|
|
237
|
+
type: "address",
|
|
238
|
+
},
|
|
239
|
+
{
|
|
240
|
+
internalType: "uint256",
|
|
241
|
+
name: "exactYtIn",
|
|
242
|
+
type: "uint256",
|
|
243
|
+
},
|
|
244
|
+
{
|
|
245
|
+
internalType: "uint256",
|
|
246
|
+
name: "minScyOut",
|
|
247
|
+
type: "uint256",
|
|
248
|
+
},
|
|
249
|
+
],
|
|
250
|
+
name: "swapExactYtForScy",
|
|
251
|
+
outputs: [
|
|
252
|
+
{
|
|
253
|
+
internalType: "uint256",
|
|
254
|
+
name: "",
|
|
255
|
+
type: "uint256",
|
|
256
|
+
},
|
|
257
|
+
],
|
|
258
|
+
stateMutability: "nonpayable",
|
|
259
|
+
type: "function",
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
inputs: [
|
|
263
|
+
{
|
|
264
|
+
internalType: "address",
|
|
265
|
+
name: "receiver",
|
|
266
|
+
type: "address",
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
internalType: "address",
|
|
270
|
+
name: "market",
|
|
271
|
+
type: "address",
|
|
272
|
+
},
|
|
273
|
+
{
|
|
274
|
+
internalType: "uint256",
|
|
275
|
+
name: "exactYtOut",
|
|
276
|
+
type: "uint256",
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
internalType: "uint256",
|
|
280
|
+
name: "maxScyIn",
|
|
281
|
+
type: "uint256",
|
|
282
|
+
},
|
|
283
|
+
],
|
|
284
|
+
name: "swapScyForExactYt",
|
|
285
|
+
outputs: [
|
|
286
|
+
{
|
|
287
|
+
internalType: "uint256",
|
|
288
|
+
name: "",
|
|
289
|
+
type: "uint256",
|
|
290
|
+
},
|
|
291
|
+
],
|
|
292
|
+
stateMutability: "nonpayable",
|
|
293
|
+
type: "function",
|
|
294
|
+
},
|
|
295
|
+
];
|
|
296
|
+
|
|
297
|
+
const _bytecode =
|
|
298
|
+
"0x60e06040523480156200001157600080fd5b506040516200439a3803806200439a83398101604081905262000034916200006f565b6001600160a01b0392831660805290821660a0521660c052620000b9565b80516001600160a01b03811681146200006a57600080fd5b919050565b6000806000606084860312156200008557600080fd5b620000908462000052565b9250620000a06020850162000052565b9150620000b06040850162000052565b90509250925092565b60805160a05160c05161428f6200010b60003960008181608d01526102c90152600081816101380152818161141f0152818161148701528181611bb20152611bf501526000610111015261428f6000f3fe608060405234801561001057600080fd5b50600436106100835760003560e01c806306ae70951461008857806321aab859146100c55780633332bf08146100e6578063498ca558146100f957806359f571e81461010c5780638a38466e14610133578063d8cc26aa1461015a578063fa483e721461016d578063ff4a928a14610182575b600080fd5b6100af7f000000000000000000000000000000000000000000000000000000000000000081565b6040516100bc9190613860565b60405180910390f35b6100d86100d336600461388c565b610195565b6040519081526020016100bc565b6100d86100f4366004613916565b6101ac565b6100d8610107366004613991565b610283565b6100af7f000000000000000000000000000000000000000000000000000000000000000081565b6100af7f000000000000000000000000000000000000000000000000000000000000000081565b6100d861016836600461388c565b6102a0565b61018061017b3660046139ea565b6102b0565b005b6100d8610190366004613a69565b61045b565b60006101a38585858561050b565b95945050505050565b600080836001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b1580156101e857600080fd5b505afa1580156101fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102209190613af4565b50509050600061023482868b600180610786565b90506102768282868b8b8b8080602002602001604051908101604052809392919081815260200183836020028082843760009201829052509250610a27915050565b9998505050505050505050565b60006102958787878787876001610bbf565b979650505050505050565b60006101a3858585856001610786565b6040516358e6309f60e01b815233906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906358e6309f906102fe908490600401613860565b60206040518083038186803b15801561031657600080fd5b505afa15801561032a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061034e9190613b41565b6103905760405162461bcd60e51b815260206004820152600e60248201526d1253959053125117d3505492d15560921b60448201526064015b60405180910390fd5b600061039e83850185613be1565b50905060028160028111156103b5576103b5613c86565b14156103cb576103c6338585610dc0565b610453565b60008160028111156103df576103df613c86565b14156103f1576103c633868686610ecb565b600181600281111561040557610405613c86565b1415610418576103c6338787878761103a565b60405162461bcd60e51b815260206004820152601060248201526f756e6b6e6f776e20737761705479706560801b6044820152606401610387565b505050505050565b6000806000866001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b15801561049957600080fd5b505afa1580156104ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d19190613af4565b925050915060006104e98c846001858e8e6001611217565b90506104fb8b89838a8a8a6000610bbf565b9c9b505050505050505050505050565b600080846001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b15801561054757600080fd5b505afa15801561055b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061057f9190613af4565b50506040516370a0823160e01b815290915084906000906001600160a01b038416906370a08231906105b5908b90600401613860565b60206040518083038186803b1580156105cd57600080fd5b505afa1580156105e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106059190613c9c565b9050866001600160a01b03166399bc99988984600180338e60405160200161062f93929190613cd7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161065d9493929190613d5f565b6040805180830381600087803b15801561067657600080fd5b505af115801561068a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ae9190613d8c565b50506040516370a0823160e01b81526001600160a01b038416906370a08231906106dc908b90600401613860565b60206040518083038186803b1580156106f457600080fd5b505afa158015610708573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061072c9190613c9c565b6107369082613dc6565b93508484111561077b5760405162461bcd60e51b815260206004820152601060248201526f195e18d95959081bdd5d081b1a5b5a5d60821b6044820152606401610387565b505050949350505050565b6000806000866001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b1580156107c457600080fd5b505afa1580156107d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107fc9190613af4565b6040516370a0823160e01b815292945092508791600091506001600160a01b038516906370a0823190610833908d90600401613860565b60206040518083038186803b15801561084b57600080fd5b505afa15801561085f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108839190613c9c565b905085156108a0576108a06001600160a01b03841633858b6113ba565b886001600160a01b0316634f7b3d2f8b8460001960008f6040516020016108c8929190613ddd565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108f69493929190613d5f565b6040805180830381600087803b15801561090f57600080fd5b505af1158015610923573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109479190613d8c565b50506040516370a0823160e01b815281906001600160a01b038616906370a0823190610977908e90600401613860565b60206040518083038186803b15801561098f57600080fd5b505afa1580156109a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c79190613c9c565b6109d19190613dc6565b945086851015610a1a5760405162461bcd60e51b8152602060048201526014602482015273125394d551919250d251539517d4d0d657d3d55560621b6044820152606401610387565b5050505095945050505050565b60008115610a4457610a446001600160a01b0388163389896113ba565b600083600081518110610a5957610a59613e03565b60200260200101519050835160011415610af657604051630e6dfcd560e01b81526001600160a01b03891690630e6dfcd590610a9d90889085908b90600401613e19565b602060405180830381600087803b158015610ab757600080fd5b505af1158015610acb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aef9190613c9c565b9150610bb4565b6000886001600160a01b0316630e6dfcd5610b1087611418565b8460016040518463ffffffff1660e01b8152600401610b3193929190613e19565b602060405180830381600087803b158015610b4b57600080fd5b505af1158015610b5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b839190613c9c565b9050610b9085828861147f565b925086831015610bb25760405162461bcd60e51b815260040161038790613e3d565b505b509695505050505050565b6000806000886001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b158015610bfd57600080fd5b505afa158015610c11573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c359190613af4565b92505091506000896001600160a01b0316632778c3346040518163ffffffff1660e01b81526004016101606040518083038186803b158015610c7657600080fd5b505afa158015610c8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cae9190613e67565b9050610cc7610cbc846114eb565b82908b428b8b611560565b935087841015610ce95760405162461bcd60e51b815260040161038790613e3d565b508315610d0557610d056001600160a01b03831633838b6113ba565b50506000819050876001600160a01b03166399bc99988a83600160028e604051602001610d33929190613ddd565b6040516020818303038152906040526040518563ffffffff1660e01b8152600401610d619493929190613d5f565b6040805180830381600087803b158015610d7a57600080fd5b505af1158015610d8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db29190613d8c565b505050979650505050505050565b6000836001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b158015610dfb57600080fd5b505afa158015610e0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e339190613af4565b925060009150610e47905083850185613efa565b604051630aa1fb9760e41b81529092506001600160a01b038416915063aa1fb97090610e799088908590600401613f31565b602060405180830381600087803b158015610e9357600080fd5b505af1158015610ea7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104539190613c9c565b6000610ed982840184613efa565b915050600080866001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b158015610f1857600080fd5b505afa158015610f2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f509190613af4565b92505091506000610f68610f6388611715565b611720565b90506000826001600160a01b03166380a7c9ac306040518263ffffffff1660e01b8152600401610f989190613860565b602060405180830381600087803b158015610fb257600080fd5b505af1158015610fc6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fea9190613c9c565b90506110006001600160a01b0385168a84611733565b6001600160a01b038516301461102f5761102f8561101e8484613dc6565b6001600160a01b0387169190611733565b505050505050505050565b60008061104983850185613f4b565b9250925050600080886001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b15801561108a57600080fd5b505afa15801561109e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110c29190613af4565b925050915060006110d5610f638a611715565b905060006110e289611720565b90506000611162856001600160a01b031663f65d6fc86040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561112457600080fd5b505af1158015611138573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115c9190613c9c565b84611768565b90506000611170828461178e565b90506111876001600160a01b0387168987846113ba565b846001600160a01b031663aa1fb9708e896040518363ffffffff1660e01b81526004016111b5929190613f31565b602060405180830381600087803b1580156111cf57600080fd5b505af11580156111e3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112079190613c9c565b5050505050505050505050505050565b6000811561130257600183141561126c5761126733888a8787600081811061124157611241613e03565b90506020020160208101906112569190613f89565b6001600160a01b03169291906113ba565b611302565b6112c0336112ac86868080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525061141892505050565b8a8787600081811061124157611241613e03565b6113008484808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508c92508b915061147f9050565b505b60008484611311600182613dc6565b81811061132057611320613e03565b90506020020160208101906113359190613f89565b604051636361ddf360e11b81529091506001600160a01b0389169063c6c3bbe69061136890899085908c90600401613e19565b602060405180830381600087803b15801561138257600080fd5b505af1158015611396573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102769190613c9c565b611412846323b872dd60e01b8585856040516024016113db93929190613e19565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526117a9565b50505050565b60006114797f00000000000000000000000000000000000000000000000000000000000000008360008151811061145157611451613e03565b60200260200101518460018151811061146c5761146c613e03565b602002602001015161187b565b92915050565b6000806114ad7f0000000000000000000000000000000000000000000000000000000000000000858761194a565b90506114ba818685611acf565b80600182516114c99190613dc6565b815181106114d9576114d9613e03565b60200260200101519150509392505050565b6000816001600160a01b031663f65d6fc86040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561152857600080fd5b505af115801561153c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114799190613c9c565b60008085116115a25760405162461bcd60e51b815260206004820152600e60248201526d34b73b30b634b21039b1bc9034b760911b6044820152606401610387565b6115f5604051806101200160405280600081526020016000815260200160001515815260200160008152602001600081526020016000815260200160008152602001600081526020016000151581525090565b838152602081018390525b60208101518151146116cb576020810151815160029161161f91613fa6565b61162a906001613fa6565b6116349190613fd4565b6060820152600061164489611cc4565b6060830151608084018190529091506116619082908a9089611d92565b5060a08301819052611674908890613fa6565b60c08301819052611686908990611dd1565b60e083018190526060830151118015906116ad5760608301518352600160408401526116c4565b600183606001516116be9190613dc6565b60208401525b5050611600565b80604001516117095760405162461bcd60e51b815260206004820152600a60248201526919dd595cdcc819985a5b60b21b6044820152606401610387565b51979650505050505050565b600061147982613fe8565b60008082121561172f57600080fd5b5090565b6040516001600160a01b03831660248201526044810182905261176390849063a9059cbb60e01b906064016113db565b505050565b60008261177d670de0b6b3a764000084614005565b6117879190613fd4565b9392505050565b60008183101561179f576000611787565b6117878284613dc6565b60006117fe826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611ddd9092919063ffffffff16565b805190915015611763578080602001905181019061181c9190613b41565b6117635760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610387565b600080600061188a8585611df4565b6040516001600160601b0319606084811b8216602084015283901b16603482015291935091508690604801604051602081830303815290604052805190602001206040516020016119289291906001600160f81b0319815260609290921b6001600160601b031916600183015260158201527f0bbca9af0511ad1a1da383135cf3a8d2ac620e549ef9f6ae3a4c33c2fed0af91603582015260550190565b60408051601f1981840301815291905280516020909101209695505050505050565b60606002825110156119995760405162461bcd60e51b8152602060048201526018602482015277094deca98d2c4e4c2e4f27440929cac82989288bea082a8960431b6044820152606401610387565b81516001600160401b038111156119b2576119b2613b72565b6040519080825280602002602001820160405280156119db578160200160208202803683370190505b50905082816000815181106119f2576119f2613e03565b60200260200101818152505060005b60018351611a0f9190613dc6565b811015611ac757600080611a6287868581518110611a2f57611a2f613e03565b602002602001015187866001611a459190613fa6565b81518110611a5557611a55613e03565b6020026020010151611ed9565b91509150611a8a848481518110611a7b57611a7b613e03565b60200260200101518383611fb2565b84611a96856001613fa6565b81518110611aa657611aa6613e03565b60200260200101818152505050508080611abf90614024565b915050611a01565b509392505050565b60005b60018351611ae09190613dc6565b81101561141257600080848381518110611afc57611afc613e03565b602002602001015185846001611b129190613fa6565b81518110611b2257611b22613e03565b6020026020010151915091506000611b3a8383611df4565b509050600087611b4b866001613fa6565b81518110611b5b57611b5b613e03565b60200260200101519050600080836001600160a01b0316866001600160a01b031614611b8957826000611b8d565b6000835b91509150600060028a51611ba19190613dc6565b8810611bad5788611bee565b611bee7f0000000000000000000000000000000000000000000000000000000000000000878c611bde8c6002613fa6565b8151811061146c5761146c613e03565b9050611c1b7f0000000000000000000000000000000000000000000000000000000000000000888861187b565b6001600160a01b031663022c0d9f84848460006040519080825280601f01601f191660200182016040528015611c58576020820181803683370190505b506040518563ffffffff1660e01b8152600401611c78949392919061403f565b600060405180830381600087803b158015611c9257600080fd5b505af1158015611ca6573d6000803e3d6000fd5b50505050505050505050508080611cbc90614024565b915050611ad2565b611d2160405180610160016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b815181526020808301519082015260408083015190820152606080830151908201526080808301519082015260a0808301519082015260c0808301519082015260e0808301519082015261010080830151908201526101208083015190820152610140918201519181019190915290565b600080600080611dac8888611da6896120bb565b886120cf565b91509150611db982611720565b9350611dc481611720565b9250505094509492505050565b60006117878383612285565b6060611dec848460008561229a565b949350505050565b600080826001600160a01b0316846001600160a01b03161415611e595760405162461bcd60e51b815260206004820152601f60248201527f4a6f654c6962726172793a204944454e544943414c5f414444524553534553006044820152606401610387565b826001600160a01b0316846001600160a01b031610611e79578284611e7c565b83835b90925090506001600160a01b038216611ed25760405162461bcd60e51b81526020600482015260186024820152774a6f654c6962726172793a205a45524f5f4144445245535360401b6044820152606401610387565b9250929050565b6000806000611ee88585611df4565b509050600080611ef988888861187b565b6001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b158015611f3157600080fd5b505afa158015611f45573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f699190614083565b506001600160701b031691506001600160701b03169150826001600160a01b0316876001600160a01b031614611fa0578082611fa3565b81815b90999098509650505050505050565b60008084116120115760405162461bcd60e51b815260206004820152602560248201527f4a6f654c6962726172793a20494e53554646494349454e545f494e5055545f416044820152641353d5539560da1b6064820152608401610387565b6000831180156120215750600082115b6120785760405162461bcd60e51b815260206004820152602260248201527f4a6f654c6962726172793a20494e53554646494349454e545f4c495155494449604482015261545960f01b6064820152608401610387565b6000612086856103e5614005565b905060006120948483614005565b90506000826120a5876103e8614005565b6120af9190613fa6565b90506102958183613fd4565b60006120c6826123c0565b61147990613fe8565b6000808560e0015183106121165760405162461bcd60e51b815260206004820152600e60248201526d13505492d15517d156141254915160921b6044820152606401610387565b6121486040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b838760e001516121589190613dc6565b8152865185126121a35760405162461bcd60e51b8152602060048201526016602482015275696e73756666696369656e74206c697175696469747960501b6044820152606401610387565b6121b2878783600001516123d6565b60608401819052604084018290526020840183905289516121d6939092918961243a565b608082015260408051606081018252600080825260208201819052918101919091526122168860a0015183608001518885600001518c61010001516124ce565b604084015260208301528152875161222e90876125d0565b8089526020820151604084015161225a9291612249916140c8565b602085015160608601518651612617565b610120890181905261226b57600080fd5b611fa388888360000151846020015185604001518a61266a565b6000670de0b6b3a764000061177d8484614005565b6060824710156122fb5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610387565b6001600160a01b0385163b6123525760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610387565b600080866001600160a01b0316858760405161236e9190614109565b60006040518083038185875af1925050503d80600081146123ab576040519150601f19603f3d011682016040523d82523d6000602084013e6123b0565b606091505b50915091506102958282866126bb565b60006001600160ff1b0382111561172f57600080fd5b60008060006123e586856126f4565b92506123fe86602001518661277890919063ffffffff16565b86519092501580159061241057508115155b61241957600080fd5b61242f86600001518761012001518486886127af565b905093509350939050565b60008061244787846125d0565b9050600061245f612458888a6140c8565b839061281f565b9050670d529ae9e860000081131561247657600080fd5b60006124818261285f565b90508561248e828961281f565b61249891906140c8565b9350670de0b6b3a76400008412156124c25760405162461bcd60e51b815260040161038790614125565b50505095945050505050565b60008080806124e56124e0888a61281f565b611715565b905060006124f38a8861289f565b9050600088131561255857600061250a8a8361281f565b9050670de0b6b3a76400008112156125345760405162461bcd60e51b815260040161038790614125565b61255061254983670de0b6b3a7640000614154565b84906128d8565b915050612585565b6125828161256e81670de0b6b3a7640000614154565b6125789085614193565b6124e09190614218565b90505b60646125918783614193565b61259b9190614218565b92506125a78183614154565b94506125c1836125b78385614154565b6124e091906140c8565b93505050955095509592505050565b60008183121561260d5760405162461bcd60e51b81526020600482015260086024820152674e4547415449564560c01b6044820152606401610387565b6117878284614154565b60008061262887878787600061243a565b90506000612638610f6383612902565b90508361264a62015180610168614005565b6126549083614005565b61265e9190613fd4565b98975050505050505050565b6000808061267888876129b2565b905080896020015161268a91906140c8565b60208a015261014089018490526126a188866129b2565b91506126ad88886129b2565b925050965096945050505050565b606083156126ca575081611787565b8251156126da5782518084602001fd5b8160405162461bcd60e51b81526004016103879190614246565b60006126ff826123c0565b61271661271162015180610168614005565b6123c0565b84608001516127259190614193565b61272f9190614218565b9050600081136114795760405162461bcd60e51b8152602060048201526014602482015273726174655363616c617220756e646572666c6f7760601b6044820152606401610387565b6000806000831261278a57600161278e565b6000195b90506127a5612711856127a0866129df565b612285565b611dec9082614193565b6000806127bc868461289f565b9050670de0b6b3a76400008112156127e65760405162461bcd60e51b815260040161038790614125565b60006127fc6127f5878a6140c8565b899061281f565b905060006128098261285f565b9050612815818761281f565b6102769084614154565b60008261282e57506000611479565b6000612841670de0b6b3a76400006123c0565b61284b9085614193565b90506128578382614218565b915050611479565b6000670de0b6b3a764000082141561287657600080fd5b600061289461288d84670de0b6b3a7640000614154565b849061281f565b905061178781612902565b6000806128b162015180610168614005565b6128bb8486614005565b6128c59190613fd4565b9050611dec6128d3826123c0565b6129f6565b6000806128e58385614193565b90506128f8670de0b6b3a76400006123c0565b611dec9082614218565b60008082136129435760405162461bcd60e51b815260206004820152600d60248201526c6f7574206f6620626f756e647360981b6044820152606401610387565b8161295e67016345785d8a0000670de0b6b3a7640000614154565b1280156129835750612980670de0b6b3a764000067016345785d8a00006140c8565b82125b156129a457670de0b6b3a764000061299a8361305b565b6114799190614218565b61147982613292565b919050565b600080600083126129c45760016129c8565b6000195b90506127a5612711856129da866129df565b611768565b600080821361172f576129f182613fe8565b611479565b6000680238fd42c5cf03ffff198212158015612a1b575068070c1cc73b00c800008213155b612a5a5760405162461bcd60e51b815260206004820152601060248201526f125b9d985b1a5908195e1c1bdb995b9d60821b6044820152606401610387565b6000821215612a8157612a6f6128d383613fe8565b61299a670de0b6b3a764000080614193565b60006806f05b59d3b20000008312612ac657612aa66806f05b59d3b200000084614154565b925072195e54c5dd42177f53a27172fa9ec63026282760241b9050612b03565b6803782dace9d90000008312612aff57612ae96803782dace9d900000084614154565b92506b1425982cf597cd205cef73809050612b03565b5060015b612b0e606484614193565b925068056bc75e2d6310000068ad78ebc5ac620000008412612b6f57612b3d68ad78ebc5ac6200000085614154565b935068056bc75e2d63100000612b626e01855144814a7ff805980ff008400083614193565b612b6c9190614218565b90505b6856bc75e2d6310000008412612bc157612b926856bc75e2d63100000085614154565b935068056bc75e2d63100000612bb46b02df0ab5a80a22c61ab5a70083614193565b612bbe9190614218565b90505b682b5e3af16b188000008412612c1157612be4682b5e3af16b1880000085614154565b935068056bc75e2d63100000612c04693f1fce3da636ea5cf85083614193565b612c0e9190614218565b90505b6815af1d78b58c4000008412612c6157612c346815af1d78b58c40000085614154565b935068056bc75e2d63100000612c54690127fa27722cc06cc5e283614193565b612c5e9190614218565b90505b680ad78ebc5ac62000008412612cb057612c84680ad78ebc5ac620000085614154565b935068056bc75e2d63100000612ca368280e60114edb805d0383614193565b612cad9190614218565b90505b68056bc75e2d631000008412612cff57612cd368056bc75e2d6310000085614154565b935068056bc75e2d63100000612cf2680ebc5fb4174612111083614193565b612cfc9190614218565b90505b6802b5e3af16b18800008412612d4e57612d226802b5e3af16b188000085614154565b935068056bc75e2d63100000612d416808f00f760a4b2db55d83614193565b612d4b9190614218565b90505b68015af1d78b58c400008412612d9d57612d7168015af1d78b58c4000085614154565b935068056bc75e2d63100000612d906806f5f177578893793783614193565b612d9a9190614218565b90505b68056bc75e2d6310000084612db281836140c8565b9150600268056bc75e2d63100000612dca8884614193565b612dd49190614218565b612dde9190614218565b9050612dea81836140c8565b9150600368056bc75e2d63100000612e028884614193565b612e0c9190614218565b612e169190614218565b9050612e2281836140c8565b9150600468056bc75e2d63100000612e3a8884614193565b612e449190614218565b612e4e9190614218565b9050612e5a81836140c8565b9150600568056bc75e2d63100000612e728884614193565b612e7c9190614218565b612e869190614218565b9050612e9281836140c8565b9150600668056bc75e2d63100000612eaa8884614193565b612eb49190614218565b612ebe9190614218565b9050612eca81836140c8565b9150600768056bc75e2d63100000612ee28884614193565b612eec9190614218565b612ef69190614218565b9050612f0281836140c8565b9150600868056bc75e2d63100000612f1a8884614193565b612f249190614218565b612f2e9190614218565b9050612f3a81836140c8565b9150600968056bc75e2d63100000612f528884614193565b612f5c9190614218565b612f669190614218565b9050612f7281836140c8565b9150600a68056bc75e2d63100000612f8a8884614193565b612f949190614218565b612f9e9190614218565b9050612faa81836140c8565b9150600b68056bc75e2d63100000612fc28884614193565b612fcc9190614218565b612fd69190614218565b9050612fe281836140c8565b9150600c68056bc75e2d63100000612ffa8884614193565b6130049190614218565b61300e9190614218565b905061301a81836140c8565b915060648468056bc75e2d631000006130338587614193565b61303d9190614218565b6130479190614193565b6130519190614218565b9695505050505050565b600061306f670de0b6b3a764000083614193565b9150600061308b6a0c097ce7bc90715b34b9f160241b846140c8565b6a0c097ce7bc90715b34b9f160241b6130a48186614154565b6130ae9190614193565b6130b89190614218565b905060006a0c097ce7bc90715b34b9f160241b6130d58380614193565b6130df9190614218565b905081806a0c097ce7bc90715b34b9f160241b6130fc8483614193565b6131069190614218565b9150613113600383614218565b61311d90826140c8565b90506a0c097ce7bc90715b34b9f160241b6131388484614193565b6131429190614218565b915061314f600583614218565b61315990826140c8565b90506a0c097ce7bc90715b34b9f160241b6131748484614193565b61317e9190614218565b915061318b600783614218565b61319590826140c8565b90506a0c097ce7bc90715b34b9f160241b6131b08484614193565b6131ba9190614218565b91506131c7600983614218565b6131d190826140c8565b90506a0c097ce7bc90715b34b9f160241b6131ec8484614193565b6131f69190614218565b9150613203600b83614218565b61320d90826140c8565b90506a0c097ce7bc90715b34b9f160241b6132288484614193565b6132329190614218565b915061323f600d83614218565b61324990826140c8565b90506a0c097ce7bc90715b34b9f160241b6132648484614193565b61326e9190614218565b915061327b600f83614218565b61328590826140c8565b9050613051816002614193565b6000670de0b6b3a76400008212156132c9576120c6826132ba670de0b6b3a764000080614193565b6132c49190614218565b613292565b60006132f3670de0b6b3a764000072195e54c5dd42177f53a27172fa9ec63026282760241b614193565b83126133315761331972195e54c5dd42177f53a27172fa9ec63026282760241b84614218565b925061332e6806f05b59d3b2000000826140c8565b90505b61334f670de0b6b3a76400006b1425982cf597cd205cef7380614193565b83126133835761336b6b1425982cf597cd205cef738084614218565b92506133806803782dace9d9000000826140c8565b90505b61338e606482614193565b905061339b606484614193565b92506e01855144814a7ff805980ff008400083126133f8576e01855144814a7ff805980ff00840006133d668056bc75e2d6310000085614193565b6133e09190614218565b92506133f568ad78ebc5ac62000000826140c8565b90505b6b02df0ab5a80a22c61ab5a700831261344d576b02df0ab5a80a22c61ab5a70061342b68056bc75e2d6310000085614193565b6134359190614218565b925061344a6856bc75e2d631000000826140c8565b90505b693f1fce3da636ea5cf850831261349e57693f1fce3da636ea5cf85061347c68056bc75e2d6310000085614193565b6134869190614218565b925061349b682b5e3af16b18800000826140c8565b90505b690127fa27722cc06cc5e283126134ef57690127fa27722cc06cc5e26134cd68056bc75e2d6310000085614193565b6134d79190614218565b92506134ec6815af1d78b58c400000826140c8565b90505b68280e60114edb805d03831261353e5768280e60114edb805d0361351c68056bc75e2d6310000085614193565b6135269190614218565b925061353b680ad78ebc5ac6200000826140c8565b90505b680ebc5fb41746121110831261358d57680ebc5fb4174612111061356b68056bc75e2d6310000085614193565b6135759190614218565b925061358a68056bc75e2d63100000826140c8565b90505b6808f00f760a4b2db55d83126135dc576808f00f760a4b2db55d6135ba68056bc75e2d6310000085614193565b6135c49190614218565b92506135d96802b5e3af16b1880000826140c8565b90505b6806f5f1775788937937831261362b576806f5f177578893793761360968056bc75e2d6310000085614193565b6136139190614218565b925061362868015af1d78b58c40000826140c8565b90505b6806248f33704b2866038312613679576806248f33704b28660361365868056bc75e2d6310000085614193565b6136629190614218565b925061367667ad78ebc5ac620000826140c8565b90505b6805c548670b9510e7ac83126136c7576805c548670b9510e7ac6136a668056bc75e2d6310000085614193565b6136b09190614218565b92506136c46756bc75e2d6310000826140c8565b90505b60006136dc68056bc75e2d63100000856140c8565b68056bc75e2d631000006136f08187614154565b6136fa9190614193565b6137049190614218565b9050600068056bc75e2d6310000061371c8380614193565b6137269190614218565b9050818068056bc75e2d6310000061373e8483614193565b6137489190614218565b9150613755600383614218565b61375f90826140c8565b905068056bc75e2d631000006137758484614193565b61377f9190614218565b915061378c600583614218565b61379690826140c8565b905068056bc75e2d631000006137ac8484614193565b6137b69190614218565b91506137c3600783614218565b6137cd90826140c8565b905068056bc75e2d631000006137e38484614193565b6137ed9190614218565b91506137fa600983614218565b61380490826140c8565b905068056bc75e2d6310000061381a8484614193565b6138249190614218565b9150613831600b83614218565b61383b90826140c8565b9050613848600282614193565b9050606461385682876140c8565b6102959190614218565b6001600160a01b0391909116815260200190565b6001600160a01b038116811461388957600080fd5b50565b600080600080608085870312156138a257600080fd5b84356138ad81613874565b935060208501356138bd81613874565b93969395505050506040820135916060013590565b60008083601f8401126138e457600080fd5b5081356001600160401b038111156138fb57600080fd5b6020830191508360208260051b8501011115611ed257600080fd5b60008060008060008060a0878903121561392f57600080fd5b86359550602087013561394181613874565b945060408701356001600160401b0381111561395c57600080fd5b61396889828a016138d2565b909550935050606087013561397c81613874565b80925050608087013590509295509295509295565b60008060008060008060c087890312156139aa57600080fd5b86356139b581613874565b955060208701356139c581613874565b95989597505050506040840135936060810135936080820135935060a0909101359150565b60008060008060608587031215613a0057600080fd5b843593506020850135925060408501356001600160401b0380821115613a2557600080fd5b818701915087601f830112613a3957600080fd5b813581811115613a4857600080fd5b886020828501011115613a5a57600080fd5b95989497505060200194505050565b60008060008060008060008060e0898b031215613a8557600080fd5b883597506020890135613a9781613874565b965060408901356001600160401b03811115613ab257600080fd5b613abe8b828c016138d2565b9097509550506060890135613ad281613874565b979a96995094979396956080850135955060a08501359460c001359350915050565b600080600060608486031215613b0957600080fd5b8351613b1481613874565b6020850151909350613b2581613874565b6040850151909250613b3681613874565b809150509250925092565b600060208284031215613b5357600080fd5b8151801515811461178757600080fd5b8035600381106129ad57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405161016081016001600160401b0381118282101715613bab57613bab613b72565b60405290565b604051601f8201601f191681016001600160401b0381118282101715613bd957613bd9613b72565b604052919050565b60008060408385031215613bf457600080fd5b613bfd83613b63565b91506020838101356001600160401b0380821115613c1a57600080fd5b818601915086601f830112613c2e57600080fd5b813581811115613c4057613c40613b72565b613c52601f8201601f19168501613bb1565b91508082528784828501011115613c6857600080fd5b80848401858401376000848284010152508093505050509250929050565b634e487b7160e01b600052602160045260246000fd5b600060208284031215613cae57600080fd5b5051919050565b60038110613cd357634e487b7160e01b600052602160045260246000fd5b9052565b60608101613ce58286613cb5565b6001600160a01b03938416602083015291909216604090920191909152919050565b60005b83811015613d22578181015183820152602001613d0a565b838111156114125750506000910152565b60008151808452613d4b816020860160208601613d07565b601f01601f19169290920160200192915050565b60018060a01b03851681528360208201528260408201526080606082015260006130516080830184613d33565b60008060408385031215613d9f57600080fd5b505080516020909101519092909150565b634e487b7160e01b600052601160045260246000fd5b600082821015613dd857613dd8613db0565b500390565b60408101613deb8285613cb5565b6001600160a01b039290921660209190910152919050565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b039384168152919092166020820152604081019190915260600190565b60208082526010908201526f1a5b9cdd59999a58da595b9d081bdd5d60821b604082015260600190565b60006101608284031215613e7a57600080fd5b613e82613b88565b825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201526101008084015181830152506101208084015181830152506101408084015181830152508091505092915050565b60008060408385031215613f0d57600080fd5b613f1683613b63565b91506020830135613f2681613874565b809150509250929050565b6001600160a01b0392831681529116602082015260400190565b600080600060608486031215613f6057600080fd5b613f6984613b63565b92506020840135613f7981613874565b91506040840135613b3681613874565b600060208284031215613f9b57600080fd5b813561178781613874565b60008219821115613fb957613fb9613db0565b500190565b634e487b7160e01b600052601260045260246000fd5b600082613fe357613fe3613fbe565b500490565b6000600160ff1b821415613ffe57613ffe613db0565b5060000390565b600081600019048311821515161561401f5761401f613db0565b500290565b600060001982141561403857614038613db0565b5060010190565b84815283602082015260018060a01b03831660408201526080606082015260006130516080830184613d33565b80516001600160701b03811681146129ad57600080fd5b60008060006060848603121561409857600080fd5b6140a18461406c565b92506140af6020850161406c565b9150604084015163ffffffff81168114613b3657600080fd5b600080821280156001600160ff1b03849003851316156140ea576140ea613db0565b600160ff1b839003841281161561410357614103613db0565b50500190565b6000825161411b818460208701613d07565b9190910192915050565b60208082526015908201527465786368616e676520726174652062656c6f77203160581b604082015260600190565b60008083128015600160ff1b85018412161561417257614172613db0565b6001600160ff1b038401831381161561418d5761418d613db0565b50500390565b60006001600160ff1b03818413828413808216868404861116156141b9576141b9613db0565b600160ff1b60008712828116878305891216156141d8576141d8613db0565b600087129250878205871284841616156141f4576141f4613db0565b8785058712818416161561420a5761420a613db0565b505050929093029392505050565b60008261422757614227613fbe565b600160ff1b82146000198414161561424157614241613db0565b500590565b6020815260006117876020830184613d3356fea2646970667358221220d628b7b858246ec73e3cedf0378e5c1f540dbf15002c90fcdf4b51ced850488764736f6c63430008090033";
|
|
299
|
+
|
|
300
|
+
type PendleRouterYTUpgConstructorParams =
|
|
301
|
+
| [signer?: Signer]
|
|
302
|
+
| ConstructorParameters<typeof ContractFactory>;
|
|
303
|
+
|
|
304
|
+
const isSuperArgs = (
|
|
305
|
+
xs: PendleRouterYTUpgConstructorParams
|
|
306
|
+
): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
|
|
307
|
+
|
|
308
|
+
export class PendleRouterYTUpg__factory extends ContractFactory {
|
|
309
|
+
constructor(...args: PendleRouterYTUpgConstructorParams) {
|
|
310
|
+
if (isSuperArgs(args)) {
|
|
311
|
+
super(...args);
|
|
312
|
+
} else {
|
|
313
|
+
super(_abi, _bytecode, args[0]);
|
|
314
|
+
}
|
|
315
|
+
this.contractName = "PendleRouterYTUpg";
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
deploy(
|
|
319
|
+
_joeRouter: string,
|
|
320
|
+
_joeFactory: string,
|
|
321
|
+
_marketFactory: string,
|
|
322
|
+
overrides?: Overrides & { from?: string | Promise<string> }
|
|
323
|
+
): Promise<PendleRouterYTUpg> {
|
|
324
|
+
return super.deploy(
|
|
325
|
+
_joeRouter,
|
|
326
|
+
_joeFactory,
|
|
327
|
+
_marketFactory,
|
|
328
|
+
overrides || {}
|
|
329
|
+
) as Promise<PendleRouterYTUpg>;
|
|
330
|
+
}
|
|
331
|
+
getDeployTransaction(
|
|
332
|
+
_joeRouter: string,
|
|
333
|
+
_joeFactory: string,
|
|
334
|
+
_marketFactory: string,
|
|
335
|
+
overrides?: Overrides & { from?: string | Promise<string> }
|
|
336
|
+
): TransactionRequest {
|
|
337
|
+
return super.getDeployTransaction(
|
|
338
|
+
_joeRouter,
|
|
339
|
+
_joeFactory,
|
|
340
|
+
_marketFactory,
|
|
341
|
+
overrides || {}
|
|
342
|
+
);
|
|
343
|
+
}
|
|
344
|
+
attach(address: string): PendleRouterYTUpg {
|
|
345
|
+
return super.attach(address) as PendleRouterYTUpg;
|
|
346
|
+
}
|
|
347
|
+
connect(signer: Signer): PendleRouterYTUpg__factory {
|
|
348
|
+
return super.connect(signer) as PendleRouterYTUpg__factory;
|
|
349
|
+
}
|
|
350
|
+
static readonly contractName: "PendleRouterYTUpg";
|
|
351
|
+
public readonly contractName: "PendleRouterYTUpg";
|
|
352
|
+
static readonly bytecode = _bytecode;
|
|
353
|
+
static readonly abi = _abi;
|
|
354
|
+
static createInterface(): PendleRouterYTUpgInterface {
|
|
355
|
+
return new utils.Interface(_abi) as PendleRouterYTUpgInterface;
|
|
356
|
+
}
|
|
357
|
+
static connect(
|
|
358
|
+
address: string,
|
|
359
|
+
signerOrProvider: Signer | Provider
|
|
360
|
+
): PendleRouterYTUpg {
|
|
361
|
+
return new Contract(address, _abi, signerOrProvider) as PendleRouterYTUpg;
|
|
362
|
+
}
|
|
363
|
+
}
|