@pendle/core-v2 0.3.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.
- package/contracts/SuperComposableYield/ISuperComposableYield.sol +14 -0
- package/contracts/SuperComposableYield/implementations/IRewardManager.sol +16 -0
- package/contracts/SuperComposableYield/implementations/RewardManager.sol +24 -5
- package/contracts/SuperComposableYield/implementations/SCYBase.sol +21 -1
- package/contracts/core/PendleMarket.sol +10 -18
- package/contracts/core/PendleMarketFactory.sol +49 -22
- package/contracts/core/PendleRouter.sol +74 -0
- package/contracts/core/PendleYieldToken.sol +20 -12
- package/contracts/core/{router/PendleRouterStaticUpg.sol → RouterStatic.sol} +6 -6
- package/contracts/core/actions/ActionCallback.sol +101 -0
- package/contracts/core/{router/PendleRouterCoreUpg.sol → actions/ActionCore.sol} +6 -10
- package/contracts/core/{router/PendleRouterYTUpg.sol → actions/ActionYT.sol} +6 -11
- package/contracts/core/{router/base/PendleRouterOTBaseUpg.sol → actions/base/ActionSCYAndOTBase.sol} +1 -5
- package/contracts/core/{router/base/PendleRouterSCYAndForgeBaseUpg.sol → actions/base/ActionSCYAndYOBase.sol} +6 -8
- package/contracts/core/{router/base/PendleRouterYTBaseUpg.sol → actions/base/ActionSCYAndYTBase.sol} +7 -99
- package/contracts/core/actions/base/ActionType.sol +11 -0
- package/contracts/interfaces/{IPRouterCore.sol → IPActionCore.sol} +1 -1
- package/contracts/interfaces/{IPRouterYT.sol → IPActionYT.sol} +1 -3
- package/contracts/interfaces/IPAllAction.sol +9 -0
- package/contracts/interfaces/IPMarketFactory.sol +11 -0
- package/contracts/interfaces/IPYieldToken.sol +21 -3
- package/contracts/libraries/math/MarketMathCore.sol +3 -2
- package/package.json +1 -1
- package/typechain-types/{PendleRouterYTBaseUpg.ts → ActionCallback.ts} +5 -5
- package/typechain-types/{PendleRouterCoreUpg.ts → ActionCore.ts} +5 -5
- package/typechain-types/{PendleRouterSCYAndForgeBaseUpg.ts → ActionSCYAndYOBase.ts} +5 -6
- package/typechain-types/{BoringOwnableData.ts → ActionSCYAndYTBase.ts} +21 -24
- package/typechain-types/{PendleRouterStaticUpg.ts → ActionStatic.ts} +5 -5
- package/typechain-types/{IPRouterYT.ts → ActionYT.ts} +27 -42
- package/typechain-types/IPActionAll.ts +1431 -0
- package/typechain-types/{IPRouterCore.ts → IPActionCore.ts} +5 -5
- package/typechain-types/{IPRouterView.ts → IPActionStatic.ts} +57 -5
- package/typechain-types/{PendleRouterYTUpg.ts → IPActionYT.ts} +5 -97
- package/typechain-types/IPAllAction.ts +1431 -0
- package/typechain-types/IPMarket.ts +3 -0
- package/typechain-types/IPMarketFactory.ts +46 -0
- package/typechain-types/IPYieldToken.ts +342 -14
- package/typechain-types/IRewardManager.ts +178 -0
- package/typechain-types/ISuperComposableYield.ts +97 -2
- package/typechain-types/PendleAaveV3SCY.ts +167 -66
- package/typechain-types/PendleBenQiErc20SCY.ts +167 -66
- package/typechain-types/PendleBtrflyScy.ts +97 -2
- package/typechain-types/PendleMarket.ts +3 -59
- package/typechain-types/PendleMarketFactory.ts +150 -24
- package/typechain-types/{PendleRouterProxy.ts → PendleRouter.ts} +29 -39
- package/typechain-types/PendleYearnVaultScy.ts +97 -2
- package/typechain-types/PendleYieldToken.ts +116 -101
- package/typechain-types/RewardManager.ts +48 -42
- package/typechain-types/RouterStatic.ts +828 -0
- package/typechain-types/SCYBase.ts +97 -2
- package/typechain-types/SCYBaseWithRewards.ts +167 -66
- package/typechain-types/factories/ActionCallback__factory.ts +116 -0
- package/typechain-types/factories/ActionCore__factory.ts +632 -0
- package/typechain-types/factories/{PendleRouterSCYAndForgeBaseUpg__factory.ts → ActionSCYAndYOBase__factory.ts} +8 -12
- package/typechain-types/factories/ActionSCYAndYTBase__factory.ts +52 -0
- package/typechain-types/factories/ActionStatic__factory.ts +308 -0
- package/typechain-types/factories/ActionYT__factory.ts +370 -0
- package/typechain-types/factories/IPActionAll__factory.ts +983 -0
- package/typechain-types/factories/{IPRouterCore__factory.ts → IPActionCore__factory.ts} +6 -6
- package/typechain-types/factories/{IPRouterView__factory.ts → IPActionStatic__factory.ts} +38 -6
- package/typechain-types/factories/{IPRouterYT__factory.ts → IPActionYT__factory.ts} +6 -29
- package/typechain-types/factories/IPAllAction__factory.ts +983 -0
- package/typechain-types/factories/IPMarketFactory__factory.ts +28 -0
- package/typechain-types/factories/IPMarket__factory.ts +7 -2
- package/typechain-types/factories/IPYieldToken__factory.ts +158 -1
- package/typechain-types/factories/IRewardManager__factory.ts +92 -0
- package/typechain-types/factories/ISuperComposableYield__factory.ts +68 -0
- package/typechain-types/factories/PendleAaveV3SCY__factory.ts +102 -34
- package/typechain-types/factories/PendleBenQiErc20SCY__factory.ts +102 -34
- package/typechain-types/factories/PendleBtrflyScy__factory.ts +69 -1
- package/typechain-types/factories/PendleMarketFactory__factory.ts +112 -17
- package/typechain-types/factories/PendleMarket__factory.ts +8 -69
- package/typechain-types/factories/PendleRouter__factory.ts +282 -0
- package/typechain-types/factories/PendleYearnVaultScy__factory.ts +69 -1
- package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldToken__factory.ts +58 -58
- package/typechain-types/factories/RewardManager__factory.ts +18 -18
- package/typechain-types/factories/RouterStatic__factory.ts +883 -0
- package/typechain-types/factories/SCYBaseWithRewards__factory.ts +101 -33
- package/typechain-types/factories/SCYBase__factory.ts +68 -0
- package/typechain-types/hardhat.d.ts +93 -75
- package/typechain-types/index.ts +22 -18
- package/contracts/core/router/PendleRouterProxy.sol +0 -84
- package/contracts/interfaces/IPFlashCallBack.sol +0 -10
- package/typechain-types/BoringOwnable.ts +0 -194
- package/typechain-types/BoringOwnableUpg.ts +0 -194
- package/typechain-types/BoringOwnableUpgData.ts +0 -100
- package/typechain-types/IPFlashCallback.ts +0 -115
- package/typechain-types/IPermissionsV2.ts +0 -87
- package/typechain-types/PendleRouterViewUpg.ts +0 -307
- package/typechain-types/PermissionsV2.ts +0 -87
- package/typechain-types/factories/BoringOwnableData__factory.ts +0 -90
- package/typechain-types/factories/BoringOwnableUpgData__factory.ts +0 -94
- package/typechain-types/factories/BoringOwnableUpg__factory.ts +0 -139
- package/typechain-types/factories/BoringOwnable__factory.ts +0 -149
- package/typechain-types/factories/IPFlashCallback__factory.ts +0 -49
- package/typechain-types/factories/IPermissionsV2__factory.ts +0 -39
- package/typechain-types/factories/PendleRouterCoreUpg__factory.ts +0 -635
- package/typechain-types/factories/PendleRouterProxy__factory.ts +0 -285
- package/typechain-types/factories/PendleRouterStaticUpg__factory.ts +0 -315
- package/typechain-types/factories/PendleRouterViewUpg__factory.ts +0 -265
- package/typechain-types/factories/PendleRouterYTBaseUpg__factory.ts +0 -66
- package/typechain-types/factories/PendleRouterYTUpg__factory.ts +0 -422
- package/typechain-types/factories/PermissionsV2__factory.ts +0 -36
|
@@ -195,30 +195,6 @@ const _abi = [
|
|
|
195
195
|
stateMutability: "view",
|
|
196
196
|
type: "function",
|
|
197
197
|
},
|
|
198
|
-
{
|
|
199
|
-
inputs: [
|
|
200
|
-
{
|
|
201
|
-
internalType: "address",
|
|
202
|
-
name: "",
|
|
203
|
-
type: "address",
|
|
204
|
-
},
|
|
205
|
-
],
|
|
206
|
-
name: "data",
|
|
207
|
-
outputs: [
|
|
208
|
-
{
|
|
209
|
-
internalType: "uint256",
|
|
210
|
-
name: "lastScyIndex",
|
|
211
|
-
type: "uint256",
|
|
212
|
-
},
|
|
213
|
-
{
|
|
214
|
-
internalType: "uint256",
|
|
215
|
-
name: "dueInterest",
|
|
216
|
-
type: "uint256",
|
|
217
|
-
},
|
|
218
|
-
],
|
|
219
|
-
stateMutability: "view",
|
|
220
|
-
type: "function",
|
|
221
|
-
},
|
|
222
198
|
{
|
|
223
199
|
inputs: [],
|
|
224
200
|
name: "decimals",
|
|
@@ -282,6 +258,30 @@ const _abi = [
|
|
|
282
258
|
stateMutability: "view",
|
|
283
259
|
type: "function",
|
|
284
260
|
},
|
|
261
|
+
{
|
|
262
|
+
inputs: [
|
|
263
|
+
{
|
|
264
|
+
internalType: "address",
|
|
265
|
+
name: "rewardToken",
|
|
266
|
+
type: "address",
|
|
267
|
+
},
|
|
268
|
+
],
|
|
269
|
+
name: "getGlobalReward",
|
|
270
|
+
outputs: [
|
|
271
|
+
{
|
|
272
|
+
internalType: "uint256",
|
|
273
|
+
name: "index",
|
|
274
|
+
type: "uint256",
|
|
275
|
+
},
|
|
276
|
+
{
|
|
277
|
+
internalType: "uint256",
|
|
278
|
+
name: "lastBalance",
|
|
279
|
+
type: "uint256",
|
|
280
|
+
},
|
|
281
|
+
],
|
|
282
|
+
stateMutability: "view",
|
|
283
|
+
type: "function",
|
|
284
|
+
},
|
|
285
285
|
{
|
|
286
286
|
inputs: [
|
|
287
287
|
{
|
|
@@ -301,6 +301,30 @@ const _abi = [
|
|
|
301
301
|
stateMutability: "view",
|
|
302
302
|
type: "function",
|
|
303
303
|
},
|
|
304
|
+
{
|
|
305
|
+
inputs: [
|
|
306
|
+
{
|
|
307
|
+
internalType: "address",
|
|
308
|
+
name: "user",
|
|
309
|
+
type: "address",
|
|
310
|
+
},
|
|
311
|
+
],
|
|
312
|
+
name: "getInterestData",
|
|
313
|
+
outputs: [
|
|
314
|
+
{
|
|
315
|
+
internalType: "uint256",
|
|
316
|
+
name: "lastScyIndex",
|
|
317
|
+
type: "uint256",
|
|
318
|
+
},
|
|
319
|
+
{
|
|
320
|
+
internalType: "uint256",
|
|
321
|
+
name: "dueInterest",
|
|
322
|
+
type: "uint256",
|
|
323
|
+
},
|
|
324
|
+
],
|
|
325
|
+
stateMutability: "view",
|
|
326
|
+
type: "function",
|
|
327
|
+
},
|
|
304
328
|
{
|
|
305
329
|
inputs: [],
|
|
306
330
|
name: "getRewardTokens",
|
|
@@ -331,20 +355,25 @@ const _abi = [
|
|
|
331
355
|
inputs: [
|
|
332
356
|
{
|
|
333
357
|
internalType: "address",
|
|
334
|
-
name: "",
|
|
358
|
+
name: "user",
|
|
359
|
+
type: "address",
|
|
360
|
+
},
|
|
361
|
+
{
|
|
362
|
+
internalType: "address",
|
|
363
|
+
name: "rewardToken",
|
|
335
364
|
type: "address",
|
|
336
365
|
},
|
|
337
366
|
],
|
|
338
|
-
name: "
|
|
367
|
+
name: "getUserReward",
|
|
339
368
|
outputs: [
|
|
340
369
|
{
|
|
341
370
|
internalType: "uint256",
|
|
342
|
-
name: "
|
|
371
|
+
name: "lastIndex",
|
|
343
372
|
type: "uint256",
|
|
344
373
|
},
|
|
345
374
|
{
|
|
346
375
|
internalType: "uint256",
|
|
347
|
-
name: "
|
|
376
|
+
name: "accruedReward",
|
|
348
377
|
type: "uint256",
|
|
349
378
|
},
|
|
350
379
|
],
|
|
@@ -708,35 +737,6 @@ const _abi = [
|
|
|
708
737
|
stateMutability: "nonpayable",
|
|
709
738
|
type: "function",
|
|
710
739
|
},
|
|
711
|
-
{
|
|
712
|
-
inputs: [
|
|
713
|
-
{
|
|
714
|
-
internalType: "address",
|
|
715
|
-
name: "",
|
|
716
|
-
type: "address",
|
|
717
|
-
},
|
|
718
|
-
{
|
|
719
|
-
internalType: "address",
|
|
720
|
-
name: "",
|
|
721
|
-
type: "address",
|
|
722
|
-
},
|
|
723
|
-
],
|
|
724
|
-
name: "userReward",
|
|
725
|
-
outputs: [
|
|
726
|
-
{
|
|
727
|
-
internalType: "uint256",
|
|
728
|
-
name: "lastIndex",
|
|
729
|
-
type: "uint256",
|
|
730
|
-
},
|
|
731
|
-
{
|
|
732
|
-
internalType: "uint256",
|
|
733
|
-
name: "accruedReward",
|
|
734
|
-
type: "uint256",
|
|
735
|
-
},
|
|
736
|
-
],
|
|
737
|
-
stateMutability: "view",
|
|
738
|
-
type: "function",
|
|
739
|
-
},
|
|
740
740
|
{
|
|
741
741
|
inputs: [],
|
|
742
742
|
name: "withdrawFeeToTreasury",
|
|
@@ -747,7 +747,7 @@ const _abi = [
|
|
|
747
747
|
];
|
|
748
748
|
|
|
749
749
|
const _bytecode =
|
|
750
|
-
"0x6101406040523480156200001257600080fd5b5060405162002cdd38038062002cdd833981016040819052620000359162000274565b838383838383816003908051906020019062000053929190620000e4565b50805162000069906004906020840190620000e4565b505050428111620000b15760405162461bcd60e51b815260206004820152600e60248201526d494e56414c49445f45585049525960901b604482015260640160405180910390fd5b60ff9091166080524260a05260c05250503360e052505050506001600160a01b0391821661010052166101205262000365565b828054620000f29062000328565b90600052602060002090601f01602090048101928262000116576000855562000161565b82601f106200013157805160ff191683800117855562000161565b8280016001018555821562000161579182015b828111156200016157825182559160200191906001019062000144565b506200016f92915062000173565b5090565b5b808211156200016f576000815560010162000174565b80516001600160a01b0381168114620001a257600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112620001cf57600080fd5b81516001600160401b0380821115620001ec57620001ec620001a7565b604051601f8301601f19908116603f01168101908282118183101715620002175762000217620001a7565b816040528381526020925086838588010111156200023457600080fd5b600091505b8382101562000258578582018301518183018401529082019062000239565b838211156200026a5760008385830101525b9695505050505050565b60008060008060008060c087890312156200028e57600080fd5b62000299876200018a565b9550620002a9602088016200018a565b60408801519095506001600160401b0380821115620002c757600080fd5b620002d58a838b01620001bd565b95506060890151915080821115620002ec57600080fd5b50620002fb89828a01620001bd565b935050608087015160ff811681146200031357600080fd5b8092505060a087015190509295509295509295565b600181811c908216806200033d57607f821691505b602082108114156200035f57634e487b7160e01b600052602260045260246000fd5b50919050565b60805160a05160c05160e05161010051610120516128aa62000433600039600081816104ab01528181610819015281816108f60152610d600152600081816102860152818161075d01528181610977015281816109d301528181610a8d01528181610c3c01528181610ee601528181610f8f015281816114de01528181611a6601528181611af501528181611d350152611e3301526000818161045c01528181610ae1015261142001526000818161050e0152610629015260006105350152600061023101526128aa6000f3fe608060405234801561001057600080fd5b50600436106101b75760003560e01c806306fdde03146101bc578063095ea7b3146101da57806318160ddd146101fd57806323b872dd1461020f5780632f13b60c14610222578063313ce5671461022a578063395093511461025b578063443cb7f81461026e57806347bfac62146102815780635cbadbe4146102b5578063649a00d6146102fc57806366247a721461030f57806370a08231146103225780637695caa21461033557806379e6ea161461033f57806380a7c9ac1461035f57806388611f351461037257806395d89b411461037b5780639b1e03f0146103835780639c9fdc3b1461038b578063a090ee5014610394578063a457c2d71461039c578063a9059cbb146103af578063aa1fb970146103c2578063afb442e9146103d5578063b2427a6c146103e8578063b90d3d0c1461040f578063bdaba53614610436578063c45a015514610457578063c4f59f9b1461047e578063c6d6916c14610493578063c836545a146104a6578063d86e0302146104cd578063dcda874d146104d6578063dd62ed3e146104f6578063e184c9be14610509578063f1653f6e14610530575b600080fd5b6101c4610557565b6040516101d19190612358565b60405180910390f35b6101ed6101e83660046123a0565b6105e9565b60405190151581526020016101d1565b6002545b6040519081526020016101d1565b6101ed61021d3660046123cc565b610601565b6101ed610627565b60405160ff7f00000000000000000000000000000000000000000000000000000000000000001681526020016101d1565b6101ed6102693660046123a0565b61064e565b61020161027c36600461240d565b61068d565b6102a87f000000000000000000000000000000000000000000000000000000000000000081565b6040516101d19190612426565b6102e76102c336600461243a565b60066020908152600092835260408084209091529082529020805460019091015482565b604080519283526020830191909152016101d1565b61020161030a366004612473565b6106ae565b61020161031d366004612473565b61070d565b610201610330366004612473565b610730565b61033d61074b565b005b61035261034d366004612473565b6107ff565b6040516101d191906124cb565b61020161036d366004612473565b610814565b610201600b5481565b6101c46109ac565b6102016109bb565b61020160085481565b61033d610a6e565b6101ed6103aa3660046123a0565b610c77565b6101ed6103bd3660046123a0565b610d19565b6102016103d036600461243a565b610d27565b61033d6103e3366004612473565b610dd0565b6102e76103f6366004612473565b6005602052600090815260409020805460019091015482565b6102e761041d366004612473565b600c602052600090815260409020805460019091015482565b610449610444366004612473565b610eb0565b6040516101d19291906124de565b6102a87f000000000000000000000000000000000000000000000000000000000000000081565b610486610ee2565b6040516101d191906124f7565b61033d6104a1366004612473565b610f7e565b6102a87f000000000000000000000000000000000000000000000000000000000000000081565b61020160075481565b6102016104e4366004612473565b600a6020526000908152604090205481565b61020161050436600461243a565b611036565b6102017f000000000000000000000000000000000000000000000000000000000000000081565b6102017f000000000000000000000000000000000000000000000000000000000000000081565b60606003805461056690612544565b80601f016020809104026020016040519081016040528092919081815260200182805461059290612544565b80156105df5780601f106105b4576101008083540402835291602001916105df565b820191906000526020600020905b8154815290600101906020018083116105c257829003601f168201915b5050505050905090565b6000336105f7818585611061565b5060019392505050565b60003361060f858285611185565b61061a8585856111ff565b60019150505b9392505050565b7f000000000000000000000000000000000000000000000000000000000000000042101590565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091906105f7908290869061068890879061258f565b611061565b6009818154811061069d57600080fd5b600091825260209091200154905081565b6001600160a01b0381166000908152600c6020526040812054806106d55750600092915050565b6001600160a01b0383166000908152600c6020526040902060010154610703826106fe86610730565b6113c6565b610620919061258f565b600061071882610f7e565b61072182610dd0565b61072a826113e5565b92915050565b6001600160a01b031660009081526020819052604090205490565b6000610755610ee2565b90506107fc817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016107a79190612426565b60206040518083038186803b1580156107bf57600080fd5b505afa1580156107d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f791906125a7565b611515565b50565b606061080a82610f7e565b61072a82836116ab565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016108639190612426565b60206040518083038186803b15801561087b57600080fd5b505afa15801561088f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b391906125a7565b90506108bd610627565b6108df576108d3816108ce30610730565b611888565b90506108df308261189e565b60405163b64761f960e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b64761f99061092d90309085906004016125c0565b600060405180830381600087803b15801561094757600080fd5b505af115801561095b573d6000803e3d6000fd5b50505050610968816119e6565b915061099e6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001684846119f9565b6109a6611a4f565b50919050565b60606004805461056690612544565b60006109c5610627565b156109d1575060085490565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f65d6fc86040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610a2c57600080fd5b505af1158015610a40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a6491906125a7565b6008819055919050565b6000610a78610ee2565b9050610a82610627565b15610ad757610ad7817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016107a79190612426565b60008151905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166361d027b36040518163ffffffff1660e01b815260040160206040518083038186803b158015610b3857600080fd5b505afa158015610b4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7091906125d9565b905060005b82811015610c22576000848281518110610b9157610b916125f6565b6020908102919091018101516001600160a01b0381166000908152600a9092526040909120549091508015610bf757610bf78482888681518110610bd757610bd76125f6565b60200260200101516001600160a01b03166119f99092919063ffffffff16565b506001600160a01b03166000908152600a602052604081205580610c1a8161260c565b915050610b75565b50600b5415610c7257600b54610c64906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169083906119f9565b610c6c611a4f565b6000600b555b505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919083811015610d015760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610d0e8286868403611061565b506001949350505050565b6000336105f78185856111ff565b600080610d32611af0565b9050610d3d81611be6565b9150610d498383611bf9565b6040516304a8c77360e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906312a31dcc90610d9790879086906004016125c0565b600060405180830381600087803b158015610db157600080fd5b505af1158015610dc5573d6000803e3d6000fd5b505050505092915050565b6001600160a01b0381166000908152600c602052604081205490610df26109bb565b905080821415610e0157505050565b81610e26576001600160a01b039092166000908152600c602052604090209190915550565b6000610e3184610730565b90506000610e5c610e428486612627565b610e4c8686612646565b610e569085612627565b90611cd3565b6001600160a01b0386166000908152600c6020526040812060010180549293508392909190610e8c90849061258f565b9091555050506001600160a01b039093166000908152600c60205260409020555050565b60006060610ebd83610f7e565b610ec683610dd0565b610ed083846116ab565b9050610edb836113e5565b9150915091565b60607f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c4f59f9b6040518163ffffffff1660e01b815260040160006040518083038186803b158015610f3d57600080fd5b505afa158015610f51573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610f7991908101906126c6565b905090565b6000610f89826106ae565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401610fd99190612426565b60206040518083038186803b158015610ff157600080fd5b505afa158015611005573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061102991906125a7565b9050610c72838383611d02565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166110c35760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610cf8565b6001600160a01b0382166111245760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610cf8565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006111918484611036565b905060001981146111f957818110156111ec5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610cf8565b6111f98484848403611061565b50505050565b6001600160a01b0383166112635760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610cf8565b6001600160a01b0382166112c55760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610cf8565b6112d0838383611d23565b6001600160a01b038316600090815260208190526040902054818110156113485760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610cf8565b6001600160a01b0380851660009081526020819052604080822085850390559185168152908120805484929061137f90849061258f565b92505081905550826001600160a01b0316846001600160a01b0316600080516020612855833981519152846040516113b991815260200190565b60405180910390a36111f9565b6000826113db670de0b6b3a764000084612627565b610620919061276f565b6001600160a01b038082166000908152600c60209081526040808320600101805490849055815163dd86fea160e01b815291519394909385937f00000000000000000000000000000000000000000000000000000000000000009092169263dd86fea1926004808301939192829003018186803b15801561146557600080fd5b505afa158015611479573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061149d91906125a7565b905060006114ab8383611dfe565b905080600b60008282546114bf919061258f565b909155506114cf90508184612646565b93506115056001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001686866119f9565b61150d611a4f565b505050919050565b61151d611e1c565b61152682611ebe565b6000611530610627565b905060005b83518110156111f9576000848281518110611552576115526125f6565b602002602001015190506000816001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161158a9190612426565b60206040518083038186803b1580156115a257600080fd5b505afa1580156115b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115da91906125a7565b6001600160a01b038316600090815260056020526040812060010154919250906116049083612646565b9050841561163f576001600160a01b0383166000908152600a60205260408120805483929061163490849061258f565b9091555061167d9050565b851561167d5761164f8187611cd3565b6001600160a01b0384166000908152600560205260408120805490919061167790849061258f565b90915550505b506001600160a01b039091166000908152600560205260409020600101556116a48161260c565b9050611535565b606060006116b7610ee2565b905080516001600160401b038111156116d2576116d261265d565b6040519080825280602002602001820160405280156116fb578160200160208202803683370190505b50915060005b815181101561188057600082828151811061171e5761171e6125f6565b6020026020010151905060066000876001600160a01b03166001600160a01b031681526020019081526020016000206000826001600160a01b03166001600160a01b0316815260200190815260200160002060010154848381518110611786576117866125f6565b6020908102919091018101919091526001600160a01b03808816600090815260068352604080822092851682529190925281206001015583518490839081106117d1576117d16125f6565b602002602001015160056000836001600160a01b03166001600160a01b0316815260200190815260200160002060010160008282546118109190612646565b92505081905550838281518110611829576118296125f6565b602002602001015160001461186f5761186f8585848151811061184e5761184e6125f6565b6020026020010151836001600160a01b03166119f99092919063ffffffff16565b506118798161260c565b9050611701565b505092915050565b60008183106118975781610620565b5090919050565b6001600160a01b0382166118fe5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610cf8565b61190a82600083611d23565b6001600160a01b0382166000908152602081905260409020548181101561197e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610cf8565b6001600160a01b03831660009081526020819052604081208383039055600280548492906119ad908490612646565b90915550506040518281526000906001600160a01b038516906000805160206128558339815191529060200160405180910390a3505050565b600061072a6119f36109bb565b836113c6565b610c728363a9059cbb60e01b8484604051602401611a189291906125c0565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611f61565b6040516370a0823160e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190611a9b903090600401612426565b60206040518083038186803b158015611ab357600080fd5b505afa158015611ac7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611aeb91906125a7565b600755565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611b3f9190612426565b60206040518083038186803b158015611b5757600080fd5b505afa158015611b6b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b8f91906125a7565b905060075481611b9f9190612646565b915060008211611be05760405162461bcd60e51b815260206004820152600c60248201526b524543454956455f5a45524f60a01b6044820152606401610cf8565b60075590565b600061072a611bf36109bb565b83612033565b6001600160a01b038216611c4f5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610cf8565b611c5b60008383611d23565b8060026000828254611c6d919061258f565b90915550506001600160a01b03821660009081526020819052604081208054839290611c9a90849061258f565b90915550506040518181526001600160a01b038316906000906000805160206128558339815191529060200160405180910390a35b5050565b600080611ce8670de0b6b3a764000085612627565b9050828181611cf957611cf9612759565b04949350505050565b6000611d0c610ee2565b9050611d188183611515565b6111f9818585612048565b6000611d2d610ee2565b9050611d7f817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016107a79190612426565b6001600160a01b03841615801590611da057506001600160a01b0384163014155b15611dc157611dae84610dd0565b611dc18185611dbc876106ae565b612048565b6001600160a01b03831615801590611de257506001600160a01b0383163014155b156111f957611df083610dd0565b6111f98184611dbc866106ae565b600080611e0b8385612627565b9050670de0b6b3a764000081611cf9565b6040516359436f3b60e11b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b286de7690611e68903090600401612426565b600060405180830381600087803b158015611e8257600080fd5b505af1158015611e96573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107fc9190810190612791565b60005b8151811015611ccf5760056000838381518110611ee057611ee06125f6565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000015460001415611f5157600160056000848481518110611f2c57611f2c6125f6565b6020908102919091018101516001600160a01b03168252810191909152604001600020555b611f5a8161260c565b9050611ec1565b6000611fb6826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166121ab9092919063ffffffff16565b805190915015610c725780806020019051810190611fd49190612816565b610c725760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610cf8565b6000670de0b6b3a76400006113db8484612627565b60005b83518110156111f9576000848281518110612068576120686125f6565b6020908102919091018101516001600160a01b038087166000908152600684526040808220928416825291845281812054600590945220549092508114156120b157505061219b565b806120ed57506001600160a01b03908116600081815260056020908152604080832054948816835260068252808320938352929052205561219b565b6001600160a01b038216600090815260056020526040812054612111908390612646565b9050600061211f8683611dfe565b6001600160a01b03808916600090815260066020908152604080832093891683529290529081206001018054929350839290919061215e90849061258f565b9091555050506001600160a01b03928316600081815260056020908152604080832054968a16835260068252808320938352929052209290925550505b6121a48161260c565b905061204b565b60606121ba84846000856121c2565b949350505050565b6060824710156122235760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610cf8565b6001600160a01b0385163b61227a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610cf8565b600080866001600160a01b031685876040516122969190612838565b60006040518083038185875af1925050503d80600081146122d3576040519150601f19603f3d011682016040523d82523d6000602084013e6122d8565b606091505b50915091506122e88282866122f3565b979650505050505050565b60608315612302575081610620565b8251156123125782518084602001fd5b8160405162461bcd60e51b8152600401610cf89190612358565b60005b8381101561234757818101518382015260200161232f565b838111156111f95750506000910152565b602081526000825180602084015261237781604085016020870161232c565b601f01601f19169190910160400192915050565b6001600160a01b03811681146107fc57600080fd5b600080604083850312156123b357600080fd5b82356123be8161238b565b946020939093013593505050565b6000806000606084860312156123e157600080fd5b83356123ec8161238b565b925060208401356123fc8161238b565b929592945050506040919091013590565b60006020828403121561241f57600080fd5b5035919050565b6001600160a01b0391909116815260200190565b6000806040838503121561244d57600080fd5b82356124588161238b565b915060208301356124688161238b565b809150509250929050565b60006020828403121561248557600080fd5b81356106208161238b565b600081518084526020808501945080840160005b838110156124c0578151875295820195908201906001016124a4565b509495945050505050565b6020815260006106206020830184612490565b8281526040602082015260006121ba6040830184612490565b6020808252825182820181905260009190848201906040850190845b818110156125385783516001600160a01b031683529284019291840191600101612513565b50909695505050505050565b600181811c9082168061255857607f821691505b602082108114156109a657634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082198211156125a2576125a2612579565b500190565b6000602082840312156125b957600080fd5b5051919050565b6001600160a01b03929092168252602082015260400190565b6000602082840312156125eb57600080fd5b81516106208161238b565b634e487b7160e01b600052603260045260246000fd5b600060001982141561262057612620612579565b5060010190565b600081600019048311821515161561264157612641612579565b500290565b60008282101561265857612658612579565b500390565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561269b5761269b61265d565b604052919050565b60006001600160401b038211156126bc576126bc61265d565b5060051b60200190565b600060208083850312156126d957600080fd5b82516001600160401b038111156126ef57600080fd5b8301601f8101851361270057600080fd5b805161271361270e826126a3565b612673565b81815260059190911b8201830190838101908783111561273257600080fd5b928401925b828410156122e857835161274a8161238b565b82529284019290840190612737565b634e487b7160e01b600052601260045260246000fd5b60008261278c57634e487b7160e01b600052601260045260246000fd5b500490565b600060208083850312156127a457600080fd5b82516001600160401b038111156127ba57600080fd5b8301601f810185136127cb57600080fd5b80516127d961270e826126a3565b81815260059190911b820183019083810190878311156127f857600080fd5b928401925b828410156122e8578351825292840192908401906127fd565b60006020828403121561282857600080fd5b8151801515811461062057600080fd5b6000825161284a81846020870161232c565b919091019291505056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122063866aa470355f3b7a40802a5142402c4616d65da5c14c0cc6183c9171c0889464736f6c63430008090033";
|
|
750
|
+
"0x6101406040523480156200001257600080fd5b5060405162002d2738038062002d27833981016040819052620000359162000274565b838383838383816003908051906020019062000053929190620000e4565b50805162000069906004906020840190620000e4565b505050428111620000b15760405162461bcd60e51b815260206004820152600e60248201526d494e56414c49445f45585049525960901b604482015260640160405180910390fd5b60ff9091166080524260a05260c05250503360e052505050506001600160a01b0391821661010052166101205262000365565b828054620000f29062000328565b90600052602060002090601f01602090048101928262000116576000855562000161565b82601f106200013157805160ff191683800117855562000161565b8280016001018555821562000161579182015b828111156200016157825182559160200191906001019062000144565b506200016f92915062000173565b5090565b5b808211156200016f576000815560010162000174565b80516001600160a01b0381168114620001a257600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112620001cf57600080fd5b81516001600160401b0380821115620001ec57620001ec620001a7565b604051601f8301601f19908116603f01168101908282118183101715620002175762000217620001a7565b816040528381526020925086838588010111156200023457600080fd5b600091505b8382101562000258578582018301518183018401529082019062000239565b838211156200026a5760008385830101525b9695505050505050565b60008060008060008060c087890312156200028e57600080fd5b62000299876200018a565b9550620002a9602088016200018a565b60408801519095506001600160401b0380821115620002c757600080fd5b620002d58a838b01620001bd565b95506060890151915080821115620002ec57600080fd5b50620002fb89828a01620001bd565b935050608087015160ff811681146200031357600080fd5b8092505060a087015190509295509295509295565b600181811c908216806200033d57607f821691505b602082108114156200035f57634e487b7160e01b600052602260045260246000fd5b50919050565b60805160a05160c05160e05161010051610120516128f462000433600039600081816104af01528181610863015281816109400152610daa015260008181610286015281816107a7015281816109c101528181610a1d01528181610ad701528181610c8601528181610f3001528181610fd90152818161152801528181611ab001528181611b3f01528181611d7f0152611e7d01526000818161046001528181610b2b015261146a01526000818161051201526106730152600061057f0152600061023101526128f46000f3fe608060405234801561001057600080fd5b50600436106101b75760003560e01c806306fdde03146101bc578063095ea7b3146101da57806318160ddd146101fd57806323b872dd1461020f5780632f13b60c14610222578063313ce5671461022a578063395093511461025b578063443cb7f81461026e57806347bfac62146102815780635ab764ed146102b5578063649a00d61461031d57806366247a721461033057806370a082311461034357806371fd241f146103565780637695caa21461038757806379e6ea161461039157806380a7c9ac146103b157806388611f35146103c457806395d89b41146103cd5780639b1e03f0146103d55780639c9fdc3b146103dd578063a090ee50146103e6578063a457c2d7146103ee578063a9059cbb14610401578063aa1fb97014610414578063afb442e914610427578063bdaba5361461043a578063c45a01551461045b578063c4f59f9b14610482578063c6d6916c14610497578063c836545a146104aa578063d86e0302146104d1578063dcda874d146104da578063dd62ed3e146104fa578063e184c9be1461050d578063f048181414610534578063f1653f6e1461057a575b600080fd5b6101c46105a1565b6040516101d191906123a2565b60405180910390f35b6101ed6101e83660046123ea565b610633565b60405190151581526020016101d1565b6002545b6040519081526020016101d1565b6101ed61021d366004612416565b61064b565b6101ed610671565b60405160ff7f00000000000000000000000000000000000000000000000000000000000000001681526020016101d1565b6101ed6102693660046123ea565b610698565b61020161027c366004612457565b6106d7565b6102a87f000000000000000000000000000000000000000000000000000000000000000081565b6040516101d19190612470565b6103086102c3366004612484565b6001600160a01b039182166000908152600660209081526040808320939094168252918252829020825180840190935280548084526001909101549290910182905291565b604080519283526020830191909152016101d1565b61020161032b3660046124bd565b6106f8565b61020161033e3660046124bd565b610757565b6102016103513660046124bd565b61077a565b6103086103643660046124bd565b6001600160a01b03166000908152600c6020526040902080546001909101549091565b61038f610795565b005b6103a461039f3660046124bd565b610849565b6040516101d19190612515565b6102016103bf3660046124bd565b61085e565b610201600b5481565b6101c46109f6565b610201610a05565b61020160085481565b61038f610ab8565b6101ed6103fc3660046123ea565b610cc1565b6101ed61040f3660046123ea565b610d63565b610201610422366004612484565b610d71565b61038f6104353660046124bd565b610e1a565b61044d6104483660046124bd565b610efa565b6040516101d1929190612528565b6102a87f000000000000000000000000000000000000000000000000000000000000000081565b61048a610f2c565b6040516101d19190612541565b61038f6104a53660046124bd565b610fc8565b6102a87f000000000000000000000000000000000000000000000000000000000000000081565b61020160075481565b6102016104e83660046124bd565b600a6020526000908152604090205481565b610201610508366004612484565b611080565b6102017f000000000000000000000000000000000000000000000000000000000000000081565b6103086105423660046124bd565b6001600160a01b0316600090815260056020908152604091829020825180840190935280548084526001909101549290910182905291565b6102017f000000000000000000000000000000000000000000000000000000000000000081565b6060600380546105b09061258e565b80601f01602080910402602001604051908101604052809291908181526020018280546105dc9061258e565b80156106295780601f106105fe57610100808354040283529160200191610629565b820191906000526020600020905b81548152906001019060200180831161060c57829003601f168201915b5050505050905090565b6000336106418185856110ab565b5060019392505050565b6000336106598582856111cf565b610664858585611249565b60019150505b9392505050565b7f000000000000000000000000000000000000000000000000000000000000000042101590565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919061064190829086906106d29087906125d9565b6110ab565b600981815481106106e757600080fd5b600091825260209091200154905081565b6001600160a01b0381166000908152600c60205260408120548061071f5750600092915050565b6001600160a01b0383166000908152600c602052604090206001015461074d826107488661077a565b611410565b61066a91906125d9565b600061076282610fc8565b61076b82610e1a565b6107748261142f565b92915050565b6001600160a01b031660009081526020819052604090205490565b600061079f610f2c565b9050610846817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016107f19190612470565b60206040518083038186803b15801561080957600080fd5b505afa15801561081d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061084191906125f1565b61155f565b50565b606061085482610fc8565b61077482836116f5565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016108ad9190612470565b60206040518083038186803b1580156108c557600080fd5b505afa1580156108d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108fd91906125f1565b9050610907610671565b6109295761091d816109183061077a565b6118d2565b905061092930826118e8565b60405163b64761f960e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b64761f990610977903090859060040161260a565b600060405180830381600087803b15801561099157600080fd5b505af11580156109a5573d6000803e3d6000fd5b505050506109b281611a30565b91506109e86001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168484611a43565b6109f0611a99565b50919050565b6060600480546105b09061258e565b6000610a0f610671565b15610a1b575060085490565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f65d6fc86040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610a7657600080fd5b505af1158015610a8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aae91906125f1565b6008819055919050565b6000610ac2610f2c565b9050610acc610671565b15610b2157610b21817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016107f19190612470565b60008151905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166361d027b36040518163ffffffff1660e01b815260040160206040518083038186803b158015610b8257600080fd5b505afa158015610b96573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bba9190612623565b905060005b82811015610c6c576000848281518110610bdb57610bdb612640565b6020908102919091018101516001600160a01b0381166000908152600a9092526040909120549091508015610c4157610c418482888681518110610c2157610c21612640565b60200260200101516001600160a01b0316611a439092919063ffffffff16565b506001600160a01b03166000908152600a602052604081205580610c6481612656565b915050610bbf565b50600b5415610cbc57600b54610cae906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016908390611a43565b610cb6611a99565b6000600b555b505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919083811015610d4b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610d5882868684036110ab565b506001949350505050565b600033610641818585611249565b600080610d7c611b3a565b9050610d8781611c30565b9150610d938383611c43565b6040516304a8c77360e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906312a31dcc90610de1908790869060040161260a565b600060405180830381600087803b158015610dfb57600080fd5b505af1158015610e0f573d6000803e3d6000fd5b505050505092915050565b6001600160a01b0381166000908152600c602052604081205490610e3c610a05565b905080821415610e4b57505050565b81610e70576001600160a01b039092166000908152600c602052604090209190915550565b6000610e7b8461077a565b90506000610ea6610e8c8486612671565b610e968686612690565b610ea09085612671565b90611d1d565b6001600160a01b0386166000908152600c6020526040812060010180549293508392909190610ed69084906125d9565b9091555050506001600160a01b039093166000908152600c60205260409020555050565b60006060610f0783610fc8565b610f1083610e1a565b610f1a83846116f5565b9050610f258361142f565b9150915091565b60607f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c4f59f9b6040518163ffffffff1660e01b815260040160006040518083038186803b158015610f8757600080fd5b505afa158015610f9b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fc39190810190612710565b905090565b6000610fd3826106f8565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016110239190612470565b60206040518083038186803b15801561103b57600080fd5b505afa15801561104f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061107391906125f1565b9050610cbc838383611d4c565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b03831661110d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610d42565b6001600160a01b03821661116e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610d42565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006111db8484611080565b9050600019811461124357818110156112365760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610d42565b61124384848484036110ab565b50505050565b6001600160a01b0383166112ad5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610d42565b6001600160a01b03821661130f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610d42565b61131a838383611d6d565b6001600160a01b038316600090815260208190526040902054818110156113925760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610d42565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906113c99084906125d9565b92505081905550826001600160a01b0316846001600160a01b031660008051602061289f8339815191528460405161140391815260200190565b60405180910390a3611243565b600082611425670de0b6b3a764000084612671565b61066a91906127b9565b6001600160a01b038082166000908152600c60209081526040808320600101805490849055815163dd86fea160e01b815291519394909385937f00000000000000000000000000000000000000000000000000000000000000009092169263dd86fea1926004808301939192829003018186803b1580156114af57600080fd5b505afa1580156114c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114e791906125f1565b905060006114f58383611e48565b905080600b600082825461150991906125d9565b9091555061151990508184612690565b935061154f6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168686611a43565b611557611a99565b505050919050565b611567611e66565b61157082611f08565b600061157a610671565b905060005b835181101561124357600084828151811061159c5761159c612640565b602002602001015190506000816001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016115d49190612470565b60206040518083038186803b1580156115ec57600080fd5b505afa158015611600573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061162491906125f1565b6001600160a01b0383166000908152600560205260408120600101549192509061164e9083612690565b90508415611689576001600160a01b0383166000908152600a60205260408120805483929061167e9084906125d9565b909155506116c79050565b85156116c7576116998187611d1d565b6001600160a01b038416600090815260056020526040812080549091906116c19084906125d9565b90915550505b506001600160a01b039091166000908152600560205260409020600101556116ee81612656565b905061157f565b60606000611701610f2c565b905080516001600160401b0381111561171c5761171c6126a7565b604051908082528060200260200182016040528015611745578160200160208202803683370190505b50915060005b81518110156118ca57600082828151811061176857611768612640565b6020026020010151905060066000876001600160a01b03166001600160a01b031681526020019081526020016000206000826001600160a01b03166001600160a01b03168152602001908152602001600020600101548483815181106117d0576117d0612640565b6020908102919091018101919091526001600160a01b038088166000908152600683526040808220928516825291909252812060010155835184908390811061181b5761181b612640565b602002602001015160056000836001600160a01b03166001600160a01b03168152602001908152602001600020600101600082825461185a9190612690565b9250508190555083828151811061187357611873612640565b60200260200101516000146118b9576118b98585848151811061189857611898612640565b6020026020010151836001600160a01b0316611a439092919063ffffffff16565b506118c381612656565b905061174b565b505092915050565b60008183106118e1578161066a565b5090919050565b6001600160a01b0382166119485760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610d42565b61195482600083611d6d565b6001600160a01b038216600090815260208190526040902054818110156119c85760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610d42565b6001600160a01b03831660009081526020819052604081208383039055600280548492906119f7908490612690565b90915550506040518281526000906001600160a01b0385169060008051602061289f8339815191529060200160405180910390a3505050565b6000610774611a3d610a05565b83611410565b610cbc8363a9059cbb60e01b8484604051602401611a6292919061260a565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611fab565b6040516370a0823160e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190611ae5903090600401612470565b60206040518083038186803b158015611afd57600080fd5b505afa158015611b11573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b3591906125f1565b600755565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611b899190612470565b60206040518083038186803b158015611ba157600080fd5b505afa158015611bb5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd991906125f1565b905060075481611be99190612690565b915060008211611c2a5760405162461bcd60e51b815260206004820152600c60248201526b524543454956455f5a45524f60a01b6044820152606401610d42565b60075590565b6000610774611c3d610a05565b8361207d565b6001600160a01b038216611c995760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610d42565b611ca560008383611d6d565b8060026000828254611cb791906125d9565b90915550506001600160a01b03821660009081526020819052604081208054839290611ce49084906125d9565b90915550506040518181526001600160a01b0383169060009060008051602061289f8339815191529060200160405180910390a35b5050565b600080611d32670de0b6b3a764000085612671565b9050828181611d4357611d436127a3565b04949350505050565b6000611d56610f2c565b9050611d62818361155f565b611243818585612092565b6000611d77610f2c565b9050611dc9817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016107f19190612470565b6001600160a01b03841615801590611dea57506001600160a01b0384163014155b15611e0b57611df884610e1a565b611e0b8185611e06876106f8565b612092565b6001600160a01b03831615801590611e2c57506001600160a01b0383163014155b1561124357611e3a83610e1a565b6112438184611e06866106f8565b600080611e558385612671565b9050670de0b6b3a764000081611d43565b6040516359436f3b60e11b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b286de7690611eb2903090600401612470565b600060405180830381600087803b158015611ecc57600080fd5b505af1158015611ee0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261084691908101906127db565b60005b8151811015611d195760056000838381518110611f2a57611f2a612640565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000015460001415611f9b57600160056000848481518110611f7657611f76612640565b6020908102919091018101516001600160a01b03168252810191909152604001600020555b611fa481612656565b9050611f0b565b6000612000826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166121f59092919063ffffffff16565b805190915015610cbc578080602001905181019061201e9190612860565b610cbc5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610d42565b6000670de0b6b3a76400006114258484612671565b60005b83518110156112435760008482815181106120b2576120b2612640565b6020908102919091018101516001600160a01b038087166000908152600684526040808220928416825291845281812054600590945220549092508114156120fb5750506121e5565b8061213757506001600160a01b0390811660008181526005602090815260408083205494881683526006825280832093835292905220556121e5565b6001600160a01b03821660009081526005602052604081205461215b908390612690565b905060006121698683611e48565b6001600160a01b0380891660009081526006602090815260408083209389168352929052908120600101805492935083929091906121a89084906125d9565b9091555050506001600160a01b03928316600081815260056020908152604080832054968a16835260068252808320938352929052209290925550505b6121ee81612656565b9050612095565b6060612204848460008561220c565b949350505050565b60608247101561226d5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610d42565b6001600160a01b0385163b6122c45760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610d42565b600080866001600160a01b031685876040516122e09190612882565b60006040518083038185875af1925050503d806000811461231d576040519150601f19603f3d011682016040523d82523d6000602084013e612322565b606091505b509150915061233282828661233d565b979650505050505050565b6060831561234c57508161066a565b82511561235c5782518084602001fd5b8160405162461bcd60e51b8152600401610d4291906123a2565b60005b83811015612391578181015183820152602001612379565b838111156112435750506000910152565b60208152600082518060208401526123c1816040850160208701612376565b601f01601f19169190910160400192915050565b6001600160a01b038116811461084657600080fd5b600080604083850312156123fd57600080fd5b8235612408816123d5565b946020939093013593505050565b60008060006060848603121561242b57600080fd5b8335612436816123d5565b92506020840135612446816123d5565b929592945050506040919091013590565b60006020828403121561246957600080fd5b5035919050565b6001600160a01b0391909116815260200190565b6000806040838503121561249757600080fd5b82356124a2816123d5565b915060208301356124b2816123d5565b809150509250929050565b6000602082840312156124cf57600080fd5b813561066a816123d5565b600081518084526020808501945080840160005b8381101561250a578151875295820195908201906001016124ee565b509495945050505050565b60208152600061066a60208301846124da565b82815260406020820152600061220460408301846124da565b6020808252825182820181905260009190848201906040850190845b818110156125825783516001600160a01b03168352928401929184019160010161255d565b50909695505050505050565b600181811c908216806125a257607f821691505b602082108114156109f057634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082198211156125ec576125ec6125c3565b500190565b60006020828403121561260357600080fd5b5051919050565b6001600160a01b03929092168252602082015260400190565b60006020828403121561263557600080fd5b815161066a816123d5565b634e487b7160e01b600052603260045260246000fd5b600060001982141561266a5761266a6125c3565b5060010190565b600081600019048311821515161561268b5761268b6125c3565b500290565b6000828210156126a2576126a26125c3565b500390565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156126e5576126e56126a7565b604052919050565b60006001600160401b03821115612706576127066126a7565b5060051b60200190565b6000602080838503121561272357600080fd5b82516001600160401b0381111561273957600080fd5b8301601f8101851361274a57600080fd5b805161275d612758826126ed565b6126bd565b81815260059190911b8201830190838101908783111561277c57600080fd5b928401925b82841015612332578351612794816123d5565b82529284019290840190612781565b634e487b7160e01b600052601260045260246000fd5b6000826127d657634e487b7160e01b600052601260045260246000fd5b500490565b600060208083850312156127ee57600080fd5b82516001600160401b0381111561280457600080fd5b8301601f8101851361281557600080fd5b8051612823612758826126ed565b81815260059190911b8201830190838101908783111561284257600080fd5b928401925b8284101561233257835182529284019290840190612847565b60006020828403121561287257600080fd5b8151801515811461066a57600080fd5b60008251612894818460208701612376565b919091019291505056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122008f83521426b932e71e99a3105ba369fb64a66c89c2b82f68a13b984b8b7af1d64736f6c63430008090033";
|
|
751
751
|
|
|
752
752
|
type PendleYieldTokenConstructorParams =
|
|
753
753
|
| [signer?: Signer]
|
|
@@ -7,28 +7,15 @@ import { Provider } from "@ethersproject/providers";
|
|
|
7
7
|
import type { RewardManager, RewardManagerInterface } from "../RewardManager";
|
|
8
8
|
|
|
9
9
|
const _abi = [
|
|
10
|
-
{
|
|
11
|
-
inputs: [],
|
|
12
|
-
name: "getRewardTokens",
|
|
13
|
-
outputs: [
|
|
14
|
-
{
|
|
15
|
-
internalType: "address[]",
|
|
16
|
-
name: "",
|
|
17
|
-
type: "address[]",
|
|
18
|
-
},
|
|
19
|
-
],
|
|
20
|
-
stateMutability: "view",
|
|
21
|
-
type: "function",
|
|
22
|
-
},
|
|
23
10
|
{
|
|
24
11
|
inputs: [
|
|
25
12
|
{
|
|
26
13
|
internalType: "address",
|
|
27
|
-
name: "",
|
|
14
|
+
name: "rewardToken",
|
|
28
15
|
type: "address",
|
|
29
16
|
},
|
|
30
17
|
],
|
|
31
|
-
name: "
|
|
18
|
+
name: "getGlobalReward",
|
|
32
19
|
outputs: [
|
|
33
20
|
{
|
|
34
21
|
internalType: "uint256",
|
|
@@ -44,20 +31,33 @@ const _abi = [
|
|
|
44
31
|
stateMutability: "view",
|
|
45
32
|
type: "function",
|
|
46
33
|
},
|
|
34
|
+
{
|
|
35
|
+
inputs: [],
|
|
36
|
+
name: "getRewardTokens",
|
|
37
|
+
outputs: [
|
|
38
|
+
{
|
|
39
|
+
internalType: "address[]",
|
|
40
|
+
name: "",
|
|
41
|
+
type: "address[]",
|
|
42
|
+
},
|
|
43
|
+
],
|
|
44
|
+
stateMutability: "view",
|
|
45
|
+
type: "function",
|
|
46
|
+
},
|
|
47
47
|
{
|
|
48
48
|
inputs: [
|
|
49
49
|
{
|
|
50
50
|
internalType: "address",
|
|
51
|
-
name: "",
|
|
51
|
+
name: "user",
|
|
52
52
|
type: "address",
|
|
53
53
|
},
|
|
54
54
|
{
|
|
55
55
|
internalType: "address",
|
|
56
|
-
name: "",
|
|
56
|
+
name: "rewardToken",
|
|
57
57
|
type: "address",
|
|
58
58
|
},
|
|
59
59
|
],
|
|
60
|
-
name: "
|
|
60
|
+
name: "getUserReward",
|
|
61
61
|
outputs: [
|
|
62
62
|
{
|
|
63
63
|
internalType: "uint256",
|