@pendle/core-v2 0.5.1-beta-4 → 0.6.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 +2 -0
- package/contracts/SuperComposableYield/implementations/RewardManager.sol +35 -20
- package/contracts/SuperComposableYield/implementations/SCYBase.sol +39 -19
- package/contracts/SuperComposableYield/implementations/SCYBaseWithRewards.sol +26 -14
- package/contracts/core/PendleBaseToken.sol +2 -2
- package/contracts/core/PendleMarket.sol +145 -61
- package/contracts/core/PendleMarketFactory.sol +30 -19
- package/contracts/core/{PendleOwnershipToken.sol → PendlePrincipalToken.sol} +14 -2
- package/contracts/core/PendleRouter.sol +23 -9
- package/contracts/core/PendleSCYImpl/AaveV3/PendleAaveV3SCY.sol +21 -20
- package/contracts/core/PendleSCYImpl/PendleBenQiErc20SCY.sol +22 -16
- package/contracts/core/PendleSCYImpl/PendleBtrflySCY.sol +13 -13
- package/contracts/core/PendleSCYImpl/PendleStETHSCY.sol +107 -0
- package/contracts/core/PendleSCYImpl/PendleYearnVaultSCY.sol +14 -15
- package/contracts/core/PendleYieldContractFactory.sol +29 -14
- package/contracts/core/PendleYieldToken.sol +130 -76
- package/contracts/core/RouterStatic.sol +16 -157
- package/contracts/core/actions/ActionCallback.sol +36 -18
- package/contracts/core/actions/ActionCore.sol +41 -88
- package/contracts/core/actions/ActionRedeem.sol +36 -0
- package/contracts/core/actions/ActionYT.sol +41 -59
- package/contracts/core/actions/base/{ActionSCYAndOTBase.sol → ActionSCYAndPTBase.sol} +59 -45
- package/contracts/core/actions/base/{ActionSCYAndYOBase.sol → ActionSCYAndPYBase.sol} +57 -19
- package/contracts/core/actions/base/ActionSCYAndYTBase.sol +31 -21
- package/contracts/interfaces/IPActionCore.sol +21 -28
- package/contracts/interfaces/IPActionRedeem.sol +17 -0
- package/contracts/interfaces/IPActionYT.sol +5 -12
- package/contracts/interfaces/IPAllAction.sol +2 -2
- package/contracts/interfaces/IPMarket.sol +33 -10
- package/contracts/interfaces/IPMarketAddRemoveCallback.sol +2 -2
- package/contracts/interfaces/IPMarketFactory.sol +3 -1
- package/contracts/interfaces/IPMarketSwapCallback.sol +1 -1
- package/contracts/interfaces/{IPOwnershipToken.sol → IPPrincipalToken.sol} +1 -1
- package/contracts/interfaces/IPRouterStatic.sol +7 -82
- package/contracts/interfaces/IPYieldContractFactory.sol +10 -2
- package/contracts/interfaces/IPYieldToken.sol +14 -5
- package/contracts/interfaces/IWstETH.sol +10 -0
- package/contracts/libraries/JoeLibrary.sol +1 -1
- package/contracts/libraries/math/LogExpMath.sol +1 -1
- package/contracts/libraries/math/MarketApproxLib.sol +128 -88
- package/contracts/libraries/math/MarketMathAux.sol +13 -13
- package/contracts/libraries/math/MarketMathCore.sol +62 -93
- package/contracts/libraries/math/Math.sol +14 -2
- package/contracts/periphery/PendleGovernanceManager.sol +5 -3
- package/package.json +3 -2
- package/typechain-types/ActionCallback.ts +5 -5
- package/typechain-types/ActionCore.ts +312 -234
- package/typechain-types/ActionRedeem.ts +125 -0
- package/typechain-types/ActionSCYAndPYBase.ts +223 -0
- package/typechain-types/ActionSCYAndYOBase.ts +129 -3
- package/typechain-types/ActionSCYAndYTBase.ts +149 -3
- package/typechain-types/ActionYT.ts +192 -94
- package/typechain-types/IPActionCore.ts +183 -231
- package/typechain-types/IPActionRedeem.ts +125 -0
- package/typechain-types/IPActionYT.ts +43 -91
- package/typechain-types/IPAllAction.ts +258 -321
- package/typechain-types/IPMarket.ts +150 -50
- package/typechain-types/IPMarketAddRemoveCallback.ts +10 -10
- package/typechain-types/IPMarketFactory.ts +28 -6
- package/typechain-types/IPMarketSwapCallback.ts +5 -5
- package/typechain-types/{IPOwnershipToken.ts → IPPrincipalToken.ts} +5 -5
- package/typechain-types/IPRouterStatic.ts +50 -530
- package/typechain-types/IPYieldContractFactory.ts +85 -19
- package/typechain-types/IPYieldToken.ts +138 -37
- package/typechain-types/ISuperComposableYield.ts +13 -0
- package/typechain-types/IWstETH.ts +149 -0
- package/typechain-types/PendleAaveV3SCY.ts +110 -0
- package/typechain-types/PendleBaseToken.ts +1 -1
- package/typechain-types/PendleBenQiErc20SCY.ts +55 -12
- package/typechain-types/PendleBtrflyScy.ts +27 -23
- package/typechain-types/PendleGovernanceManager.ts +5 -5
- package/typechain-types/PendleMarket.ts +197 -100
- package/typechain-types/PendleMarketFactory.ts +96 -34
- package/typechain-types/{PendleOwnershipToken.ts → PendlePrincipalToken.ts} +15 -6
- package/typechain-types/PendleRouter.ts +19 -0
- package/typechain-types/PendleRouterRedeemUpg.ts +125 -0
- package/typechain-types/PendleStEthSCY.ts +872 -0
- package/typechain-types/PendleYearnVaultScy.ts +27 -23
- package/typechain-types/PendleYieldContractFactory.ts +94 -28
- package/typechain-types/PendleYieldToken.ts +142 -57
- package/typechain-types/RewardManager.ts +21 -0
- package/typechain-types/RouterStatic.ts +50 -530
- package/typechain-types/SCYBase.ts +25 -0
- package/typechain-types/SCYBaseWithRewards.ts +64 -0
- package/typechain-types/factories/ActionCallback__factory.ts +2 -2
- package/typechain-types/factories/ActionCore__factory.ts +263 -79
- package/typechain-types/factories/ActionRedeem__factory.ts +105 -0
- package/typechain-types/factories/ActionSCYAndPYBase__factory.ts +200 -0
- package/typechain-types/factories/ActionSCYAndYOBase__factory.ts +148 -0
- package/typechain-types/factories/ActionSCYAndYTBase__factory.ts +173 -0
- package/typechain-types/factories/ActionYT__factory.ts +265 -56
- package/typechain-types/factories/IPActionCore__factory.ts +114 -78
- package/typechain-types/factories/IPActionRedeem__factory.ts +70 -0
- package/typechain-types/factories/IPActionYT__factory.ts +90 -54
- package/typechain-types/factories/IPAllAction__factory.ts +254 -138
- package/typechain-types/factories/IPMarketAddRemoveCallback__factory.ts +2 -2
- package/typechain-types/factories/IPMarketFactory__factory.ts +26 -1
- package/typechain-types/factories/IPMarketSwapCallback__factory.ts +1 -1
- package/typechain-types/factories/IPMarket__factory.ts +125 -13
- package/typechain-types/factories/{IPOwnershipToken__factory.ts → IPPrincipalToken__factory.ts} +8 -8
- package/typechain-types/factories/IPRouterStatic__factory.ts +12 -628
- package/typechain-types/factories/IPYieldContractFactory__factory.ts +72 -2
- package/typechain-types/factories/IPYieldToken__factory.ts +93 -7
- package/typechain-types/factories/ISuperComposableYield__factory.ts +13 -0
- package/typechain-types/factories/IWstETH__factory.ts +74 -0
- package/typechain-types/factories/PendleAaveV3SCY__factory.ts +97 -3
- package/typechain-types/factories/PendleBaseToken__factory.ts +1 -1
- package/typechain-types/factories/PendleBenQiErc20SCY__factory.ts +62 -7
- package/typechain-types/factories/PendleBtrflyScy__factory.ts +42 -19
- package/typechain-types/factories/PendleGovernanceManager__factory.ts +2 -2
- package/typechain-types/factories/PendleMarketFactory__factory.ts +66 -15
- package/typechain-types/factories/PendleMarket__factory.ts +170 -53
- package/typechain-types/factories/PendlePrincipalToken__factory.ts +540 -0
- package/typechain-types/factories/PendleRouterRedeemUpg__factory.ts +112 -0
- package/typechain-types/factories/PendleRouter__factory.ts +23 -1
- package/typechain-types/factories/PendleStEthSCY__factory.ts +716 -0
- package/typechain-types/factories/PendleYearnVaultScy__factory.ts +41 -18
- package/typechain-types/factories/PendleYieldContractFactory__factory.ts +75 -5
- package/typechain-types/factories/PendleYieldToken__factory.ts +102 -33
- package/typechain-types/factories/RewardManager__factory.ts +13 -0
- package/typechain-types/factories/RouterStatic__factory.ts +13 -629
- package/typechain-types/factories/SCYBaseWithRewards__factory.ts +60 -2
- package/typechain-types/factories/SCYBase__factory.ts +28 -2
- package/typechain-types/hardhat.d.ts +52 -16
- package/typechain-types/index.ts +14 -6
- package/typechain-types/factories/PendleOwnershipToken__factory.ts +0 -527
|
@@ -25,7 +25,7 @@ const _abi = [
|
|
|
25
25
|
},
|
|
26
26
|
{
|
|
27
27
|
internalType: "address",
|
|
28
|
-
name: "
|
|
28
|
+
name: "_PT",
|
|
29
29
|
type: "address",
|
|
30
30
|
},
|
|
31
31
|
{
|
|
@@ -77,6 +77,44 @@ const _abi = [
|
|
|
77
77
|
name: "Approval",
|
|
78
78
|
type: "event",
|
|
79
79
|
},
|
|
80
|
+
{
|
|
81
|
+
anonymous: false,
|
|
82
|
+
inputs: [
|
|
83
|
+
{
|
|
84
|
+
indexed: true,
|
|
85
|
+
internalType: "address",
|
|
86
|
+
name: "user",
|
|
87
|
+
type: "address",
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
indexed: false,
|
|
91
|
+
internalType: "uint256",
|
|
92
|
+
name: "interestOut",
|
|
93
|
+
type: "uint256",
|
|
94
|
+
},
|
|
95
|
+
],
|
|
96
|
+
name: "RedeemInterest",
|
|
97
|
+
type: "event",
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
anonymous: false,
|
|
101
|
+
inputs: [
|
|
102
|
+
{
|
|
103
|
+
indexed: true,
|
|
104
|
+
internalType: "address",
|
|
105
|
+
name: "user",
|
|
106
|
+
type: "address",
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
indexed: false,
|
|
110
|
+
internalType: "uint256[]",
|
|
111
|
+
name: "amountRewardsOut",
|
|
112
|
+
type: "uint256[]",
|
|
113
|
+
},
|
|
114
|
+
],
|
|
115
|
+
name: "RedeemReward",
|
|
116
|
+
type: "event",
|
|
117
|
+
},
|
|
80
118
|
{
|
|
81
119
|
anonymous: false,
|
|
82
120
|
inputs: [
|
|
@@ -102,9 +140,28 @@ const _abi = [
|
|
|
102
140
|
name: "Transfer",
|
|
103
141
|
type: "event",
|
|
104
142
|
},
|
|
143
|
+
{
|
|
144
|
+
anonymous: false,
|
|
145
|
+
inputs: [
|
|
146
|
+
{
|
|
147
|
+
indexed: false,
|
|
148
|
+
internalType: "uint256[]",
|
|
149
|
+
name: "amountRewardsOut",
|
|
150
|
+
type: "uint256[]",
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
indexed: false,
|
|
154
|
+
internalType: "uint256",
|
|
155
|
+
name: "scyOut",
|
|
156
|
+
type: "uint256",
|
|
157
|
+
},
|
|
158
|
+
],
|
|
159
|
+
name: "WithdrawFeeToTreasury",
|
|
160
|
+
type: "event",
|
|
161
|
+
},
|
|
105
162
|
{
|
|
106
163
|
inputs: [],
|
|
107
|
-
name: "
|
|
164
|
+
name: "PT",
|
|
108
165
|
outputs: [
|
|
109
166
|
{
|
|
110
167
|
internalType: "address",
|
|
@@ -340,11 +397,16 @@ const _abi = [
|
|
|
340
397
|
},
|
|
341
398
|
{
|
|
342
399
|
inputs: [],
|
|
343
|
-
name: "
|
|
400
|
+
name: "getScyIndex",
|
|
344
401
|
outputs: [
|
|
345
402
|
{
|
|
346
403
|
internalType: "uint256",
|
|
347
|
-
name: "
|
|
404
|
+
name: "currentIndex",
|
|
405
|
+
type: "uint256",
|
|
406
|
+
},
|
|
407
|
+
{
|
|
408
|
+
internalType: "uint256",
|
|
409
|
+
name: "lastIndexBeforeExpiry",
|
|
348
410
|
type: "uint256",
|
|
349
411
|
},
|
|
350
412
|
],
|
|
@@ -410,13 +472,26 @@ const _abi = [
|
|
|
410
472
|
outputs: [
|
|
411
473
|
{
|
|
412
474
|
internalType: "bool",
|
|
413
|
-
name: "
|
|
475
|
+
name: "",
|
|
414
476
|
type: "bool",
|
|
415
477
|
},
|
|
416
478
|
],
|
|
417
479
|
stateMutability: "view",
|
|
418
480
|
type: "function",
|
|
419
481
|
},
|
|
482
|
+
{
|
|
483
|
+
inputs: [],
|
|
484
|
+
name: "lastRewardUpdateBlock",
|
|
485
|
+
outputs: [
|
|
486
|
+
{
|
|
487
|
+
internalType: "uint256",
|
|
488
|
+
name: "",
|
|
489
|
+
type: "uint256",
|
|
490
|
+
},
|
|
491
|
+
],
|
|
492
|
+
stateMutability: "view",
|
|
493
|
+
type: "function",
|
|
494
|
+
},
|
|
420
495
|
{
|
|
421
496
|
inputs: [],
|
|
422
497
|
name: "lastScyBalance",
|
|
@@ -447,7 +522,7 @@ const _abi = [
|
|
|
447
522
|
inputs: [
|
|
448
523
|
{
|
|
449
524
|
internalType: "address",
|
|
450
|
-
name: "
|
|
525
|
+
name: "receiverPT",
|
|
451
526
|
type: "address",
|
|
452
527
|
},
|
|
453
528
|
{
|
|
@@ -456,11 +531,11 @@ const _abi = [
|
|
|
456
531
|
type: "address",
|
|
457
532
|
},
|
|
458
533
|
],
|
|
459
|
-
name: "
|
|
534
|
+
name: "mintPY",
|
|
460
535
|
outputs: [
|
|
461
536
|
{
|
|
462
537
|
internalType: "uint256",
|
|
463
|
-
name: "
|
|
538
|
+
name: "amountPYOut",
|
|
464
539
|
type: "uint256",
|
|
465
540
|
},
|
|
466
541
|
],
|
|
@@ -480,25 +555,6 @@ const _abi = [
|
|
|
480
555
|
stateMutability: "view",
|
|
481
556
|
type: "function",
|
|
482
557
|
},
|
|
483
|
-
{
|
|
484
|
-
inputs: [
|
|
485
|
-
{
|
|
486
|
-
internalType: "uint256",
|
|
487
|
-
name: "",
|
|
488
|
-
type: "uint256",
|
|
489
|
-
},
|
|
490
|
-
],
|
|
491
|
-
name: "paramL",
|
|
492
|
-
outputs: [
|
|
493
|
-
{
|
|
494
|
-
internalType: "uint256",
|
|
495
|
-
name: "",
|
|
496
|
-
type: "uint256",
|
|
497
|
-
},
|
|
498
|
-
],
|
|
499
|
-
stateMutability: "view",
|
|
500
|
-
type: "function",
|
|
501
|
-
},
|
|
502
558
|
{
|
|
503
559
|
inputs: [
|
|
504
560
|
{
|
|
@@ -569,7 +625,7 @@ const _abi = [
|
|
|
569
625
|
type: "address",
|
|
570
626
|
},
|
|
571
627
|
],
|
|
572
|
-
name: "
|
|
628
|
+
name: "redeemPY",
|
|
573
629
|
outputs: [
|
|
574
630
|
{
|
|
575
631
|
internalType: "uint256",
|
|
@@ -606,6 +662,19 @@ const _abi = [
|
|
|
606
662
|
stateMutability: "view",
|
|
607
663
|
type: "function",
|
|
608
664
|
},
|
|
665
|
+
{
|
|
666
|
+
inputs: [],
|
|
667
|
+
name: "totalInterestPostExpiry",
|
|
668
|
+
outputs: [
|
|
669
|
+
{
|
|
670
|
+
internalType: "uint256",
|
|
671
|
+
name: "",
|
|
672
|
+
type: "uint256",
|
|
673
|
+
},
|
|
674
|
+
],
|
|
675
|
+
stateMutability: "view",
|
|
676
|
+
type: "function",
|
|
677
|
+
},
|
|
609
678
|
{
|
|
610
679
|
inputs: [],
|
|
611
680
|
name: "totalProtocolFee",
|
|
@@ -747,7 +816,7 @@ const _abi = [
|
|
|
747
816
|
];
|
|
748
817
|
|
|
749
818
|
const _bytecode =
|
|
750
|
-
"0x6101406040523480156200001257600080fd5b5060405162002d2738038062002d27833981016040819052620000359162000274565b838383838383816003908051906020019062000053929190620000e4565b50805162000069906004906020840190620000e4565b505050428111620000b15760405162461bcd60e51b815260206004820152600e60248201526d494e56414c49445f45585049525960901b604482015260640160405180910390fd5b60ff9091166080524260a05260c05250503360e052505050506001600160a01b0391821661010052166101205262000365565b828054620000f29062000328565b90600052602060002090601f01602090048101928262000116576000855562000161565b82601f106200013157805160ff191683800117855562000161565b8280016001018555821562000161579182015b828111156200016157825182559160200191906001019062000144565b506200016f92915062000173565b5090565b5b808211156200016f576000815560010162000174565b80516001600160a01b0381168114620001a257600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112620001cf57600080fd5b81516001600160401b0380821115620001ec57620001ec620001a7565b604051601f8301601f19908116603f01168101908282118183101715620002175762000217620001a7565b816040528381526020925086838588010111156200023457600080fd5b600091505b8382101562000258578582018301518183018401529082019062000239565b838211156200026a5760008385830101525b9695505050505050565b60008060008060008060c087890312156200028e57600080fd5b62000299876200018a565b9550620002a9602088016200018a565b60408801519095506001600160401b0380821115620002c757600080fd5b620002d58a838b01620001bd565b95506060890151915080821115620002ec57600080fd5b50620002fb89828a01620001bd565b935050608087015160ff811681146200031357600080fd5b8092505060a087015190509295509295509295565b600181811c908216806200033d57607f821691505b602082108114156200035f57634e487b7160e01b600052602260045260246000fd5b50919050565b60805160a05160c05160e05161010051610120516128f462000433600039600081816104af01528181610863015281816109400152610daa015260008181610286015281816107a7015281816109c101528181610a1d01528181610ad701528181610c8601528181610f3001528181610fd90152818161152801528181611ab001528181611b3f01528181611d7f0152611e7d01526000818161046001528181610b2b015261146a01526000818161051201526106730152600061057f0152600061023101526128f46000f3fe608060405234801561001057600080fd5b50600436106101b75760003560e01c806306fdde03146101bc578063095ea7b3146101da57806318160ddd146101fd57806323b872dd1461020f5780632f13b60c14610222578063313ce5671461022a578063395093511461025b578063443cb7f81461026e57806347bfac62146102815780635ab764ed146102b5578063649a00d61461031d57806366247a721461033057806370a082311461034357806371fd241f146103565780637695caa21461038757806379e6ea161461039157806380a7c9ac146103b157806388611f35146103c457806395d89b41146103cd5780639b1e03f0146103d55780639c9fdc3b146103dd578063a090ee50146103e6578063a457c2d7146103ee578063a9059cbb14610401578063aa1fb97014610414578063afb442e914610427578063bdaba5361461043a578063c45a01551461045b578063c4f59f9b14610482578063c6d6916c14610497578063c836545a146104aa578063d86e0302146104d1578063dcda874d146104da578063dd62ed3e146104fa578063e184c9be1461050d578063f048181414610534578063f1653f6e1461057a575b600080fd5b6101c46105a1565b6040516101d191906123a2565b60405180910390f35b6101ed6101e83660046123ea565b610633565b60405190151581526020016101d1565b6002545b6040519081526020016101d1565b6101ed61021d366004612416565b61064b565b6101ed610671565b60405160ff7f00000000000000000000000000000000000000000000000000000000000000001681526020016101d1565b6101ed6102693660046123ea565b610698565b61020161027c366004612457565b6106d7565b6102a87f000000000000000000000000000000000000000000000000000000000000000081565b6040516101d19190612470565b6103086102c3366004612484565b6001600160a01b039182166000908152600660209081526040808320939094168252918252829020825180840190935280548084526001909101549290910182905291565b604080519283526020830191909152016101d1565b61020161032b3660046124bd565b6106f8565b61020161033e3660046124bd565b610757565b6102016103513660046124bd565b61077a565b6103086103643660046124bd565b6001600160a01b03166000908152600c6020526040902080546001909101549091565b61038f610795565b005b6103a461039f3660046124bd565b610849565b6040516101d19190612515565b6102016103bf3660046124bd565b61085e565b610201600b5481565b6101c46109f6565b610201610a05565b61020160085481565b61038f610ab8565b6101ed6103fc3660046123ea565b610cc1565b6101ed61040f3660046123ea565b610d63565b610201610422366004612484565b610d71565b61038f6104353660046124bd565b610e1a565b61044d6104483660046124bd565b610efa565b6040516101d1929190612528565b6102a87f000000000000000000000000000000000000000000000000000000000000000081565b61048a610f2c565b6040516101d19190612541565b61038f6104a53660046124bd565b610fc8565b6102a87f000000000000000000000000000000000000000000000000000000000000000081565b61020160075481565b6102016104e83660046124bd565b600a6020526000908152604090205481565b610201610508366004612484565b611080565b6102017f000000000000000000000000000000000000000000000000000000000000000081565b6103086105423660046124bd565b6001600160a01b0316600090815260056020908152604091829020825180840190935280548084526001909101549290910182905291565b6102017f000000000000000000000000000000000000000000000000000000000000000081565b6060600380546105b09061258e565b80601f01602080910402602001604051908101604052809291908181526020018280546105dc9061258e565b80156106295780601f106105fe57610100808354040283529160200191610629565b820191906000526020600020905b81548152906001019060200180831161060c57829003601f168201915b5050505050905090565b6000336106418185856110ab565b5060019392505050565b6000336106598582856111cf565b610664858585611249565b60019150505b9392505050565b7f000000000000000000000000000000000000000000000000000000000000000042101590565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919061064190829086906106d29087906125d9565b6110ab565b600981815481106106e757600080fd5b600091825260209091200154905081565b6001600160a01b0381166000908152600c60205260408120548061071f5750600092915050565b6001600160a01b0383166000908152600c602052604090206001015461074d826107488661077a565b611410565b61066a91906125d9565b600061076282610fc8565b61076b82610e1a565b6107748261142f565b92915050565b6001600160a01b031660009081526020819052604090205490565b600061079f610f2c565b9050610846817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016107f19190612470565b60206040518083038186803b15801561080957600080fd5b505afa15801561081d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061084191906125f1565b61155f565b50565b606061085482610fc8565b61077482836116f5565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016108ad9190612470565b60206040518083038186803b1580156108c557600080fd5b505afa1580156108d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108fd91906125f1565b9050610907610671565b6109295761091d816109183061077a565b6118d2565b905061092930826118e8565b60405163b64761f960e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b64761f990610977903090859060040161260a565b600060405180830381600087803b15801561099157600080fd5b505af11580156109a5573d6000803e3d6000fd5b505050506109b281611a30565b91506109e86001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168484611a43565b6109f0611a99565b50919050565b6060600480546105b09061258e565b6000610a0f610671565b15610a1b575060085490565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f65d6fc86040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610a7657600080fd5b505af1158015610a8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aae91906125f1565b6008819055919050565b6000610ac2610f2c565b9050610acc610671565b15610b2157610b21817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016107f19190612470565b60008151905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166361d027b36040518163ffffffff1660e01b815260040160206040518083038186803b158015610b8257600080fd5b505afa158015610b96573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bba9190612623565b905060005b82811015610c6c576000848281518110610bdb57610bdb612640565b6020908102919091018101516001600160a01b0381166000908152600a9092526040909120549091508015610c4157610c418482888681518110610c2157610c21612640565b60200260200101516001600160a01b0316611a439092919063ffffffff16565b506001600160a01b03166000908152600a602052604081205580610c6481612656565b915050610bbf565b50600b5415610cbc57600b54610cae906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016908390611a43565b610cb6611a99565b6000600b555b505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919083811015610d4b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610d5882868684036110ab565b506001949350505050565b600033610641818585611249565b600080610d7c611b3a565b9050610d8781611c30565b9150610d938383611c43565b6040516304a8c77360e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906312a31dcc90610de1908790869060040161260a565b600060405180830381600087803b158015610dfb57600080fd5b505af1158015610e0f573d6000803e3d6000fd5b505050505092915050565b6001600160a01b0381166000908152600c602052604081205490610e3c610a05565b905080821415610e4b57505050565b81610e70576001600160a01b039092166000908152600c602052604090209190915550565b6000610e7b8461077a565b90506000610ea6610e8c8486612671565b610e968686612690565b610ea09085612671565b90611d1d565b6001600160a01b0386166000908152600c6020526040812060010180549293508392909190610ed69084906125d9565b9091555050506001600160a01b039093166000908152600c60205260409020555050565b60006060610f0783610fc8565b610f1083610e1a565b610f1a83846116f5565b9050610f258361142f565b9150915091565b60607f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c4f59f9b6040518163ffffffff1660e01b815260040160006040518083038186803b158015610f8757600080fd5b505afa158015610f9b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fc39190810190612710565b905090565b6000610fd3826106f8565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016110239190612470565b60206040518083038186803b15801561103b57600080fd5b505afa15801561104f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061107391906125f1565b9050610cbc838383611d4c565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b03831661110d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610d42565b6001600160a01b03821661116e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610d42565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006111db8484611080565b9050600019811461124357818110156112365760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610d42565b61124384848484036110ab565b50505050565b6001600160a01b0383166112ad5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610d42565b6001600160a01b03821661130f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610d42565b61131a838383611d6d565b6001600160a01b038316600090815260208190526040902054818110156113925760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610d42565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906113c99084906125d9565b92505081905550826001600160a01b0316846001600160a01b031660008051602061289f8339815191528460405161140391815260200190565b60405180910390a3611243565b600082611425670de0b6b3a764000084612671565b61066a91906127b9565b6001600160a01b038082166000908152600c60209081526040808320600101805490849055815163dd86fea160e01b815291519394909385937f00000000000000000000000000000000000000000000000000000000000000009092169263dd86fea1926004808301939192829003018186803b1580156114af57600080fd5b505afa1580156114c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114e791906125f1565b905060006114f58383611e48565b905080600b600082825461150991906125d9565b9091555061151990508184612690565b935061154f6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168686611a43565b611557611a99565b505050919050565b611567611e66565b61157082611f08565b600061157a610671565b905060005b835181101561124357600084828151811061159c5761159c612640565b602002602001015190506000816001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016115d49190612470565b60206040518083038186803b1580156115ec57600080fd5b505afa158015611600573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061162491906125f1565b6001600160a01b0383166000908152600560205260408120600101549192509061164e9083612690565b90508415611689576001600160a01b0383166000908152600a60205260408120805483929061167e9084906125d9565b909155506116c79050565b85156116c7576116998187611d1d565b6001600160a01b038416600090815260056020526040812080549091906116c19084906125d9565b90915550505b506001600160a01b039091166000908152600560205260409020600101556116ee81612656565b905061157f565b60606000611701610f2c565b905080516001600160401b0381111561171c5761171c6126a7565b604051908082528060200260200182016040528015611745578160200160208202803683370190505b50915060005b81518110156118ca57600082828151811061176857611768612640565b6020026020010151905060066000876001600160a01b03166001600160a01b031681526020019081526020016000206000826001600160a01b03166001600160a01b03168152602001908152602001600020600101548483815181106117d0576117d0612640565b6020908102919091018101919091526001600160a01b038088166000908152600683526040808220928516825291909252812060010155835184908390811061181b5761181b612640565b602002602001015160056000836001600160a01b03166001600160a01b03168152602001908152602001600020600101600082825461185a9190612690565b9250508190555083828151811061187357611873612640565b60200260200101516000146118b9576118b98585848151811061189857611898612640565b6020026020010151836001600160a01b0316611a439092919063ffffffff16565b506118c381612656565b905061174b565b505092915050565b60008183106118e1578161066a565b5090919050565b6001600160a01b0382166119485760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610d42565b61195482600083611d6d565b6001600160a01b038216600090815260208190526040902054818110156119c85760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610d42565b6001600160a01b03831660009081526020819052604081208383039055600280548492906119f7908490612690565b90915550506040518281526000906001600160a01b0385169060008051602061289f8339815191529060200160405180910390a3505050565b6000610774611a3d610a05565b83611410565b610cbc8363a9059cbb60e01b8484604051602401611a6292919061260a565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611fab565b6040516370a0823160e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190611ae5903090600401612470565b60206040518083038186803b158015611afd57600080fd5b505afa158015611b11573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b3591906125f1565b600755565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611b899190612470565b60206040518083038186803b158015611ba157600080fd5b505afa158015611bb5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd991906125f1565b905060075481611be99190612690565b915060008211611c2a5760405162461bcd60e51b815260206004820152600c60248201526b524543454956455f5a45524f60a01b6044820152606401610d42565b60075590565b6000610774611c3d610a05565b8361207d565b6001600160a01b038216611c995760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610d42565b611ca560008383611d6d565b8060026000828254611cb791906125d9565b90915550506001600160a01b03821660009081526020819052604081208054839290611ce49084906125d9565b90915550506040518181526001600160a01b0383169060009060008051602061289f8339815191529060200160405180910390a35b5050565b600080611d32670de0b6b3a764000085612671565b9050828181611d4357611d436127a3565b04949350505050565b6000611d56610f2c565b9050611d62818361155f565b611243818585612092565b6000611d77610f2c565b9050611dc9817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016107f19190612470565b6001600160a01b03841615801590611dea57506001600160a01b0384163014155b15611e0b57611df884610e1a565b611e0b8185611e06876106f8565b612092565b6001600160a01b03831615801590611e2c57506001600160a01b0383163014155b1561124357611e3a83610e1a565b6112438184611e06866106f8565b600080611e558385612671565b9050670de0b6b3a764000081611d43565b6040516359436f3b60e11b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b286de7690611eb2903090600401612470565b600060405180830381600087803b158015611ecc57600080fd5b505af1158015611ee0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261084691908101906127db565b60005b8151811015611d195760056000838381518110611f2a57611f2a612640565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000015460001415611f9b57600160056000848481518110611f7657611f76612640565b6020908102919091018101516001600160a01b03168252810191909152604001600020555b611fa481612656565b9050611f0b565b6000612000826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166121f59092919063ffffffff16565b805190915015610cbc578080602001905181019061201e9190612860565b610cbc5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610d42565b6000670de0b6b3a76400006114258484612671565b60005b83518110156112435760008482815181106120b2576120b2612640565b6020908102919091018101516001600160a01b038087166000908152600684526040808220928416825291845281812054600590945220549092508114156120fb5750506121e5565b8061213757506001600160a01b0390811660008181526005602090815260408083205494881683526006825280832093835292905220556121e5565b6001600160a01b03821660009081526005602052604081205461215b908390612690565b905060006121698683611e48565b6001600160a01b0380891660009081526006602090815260408083209389168352929052908120600101805492935083929091906121a89084906125d9565b9091555050506001600160a01b03928316600081815260056020908152604080832054968a16835260068252808320938352929052209290925550505b6121ee81612656565b9050612095565b6060612204848460008561220c565b949350505050565b60608247101561226d5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610d42565b6001600160a01b0385163b6122c45760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610d42565b600080866001600160a01b031685876040516122e09190612882565b60006040518083038185875af1925050503d806000811461231d576040519150601f19603f3d011682016040523d82523d6000602084013e612322565b606091505b509150915061233282828661233d565b979650505050505050565b6060831561234c57508161066a565b82511561235c5782518084602001fd5b8160405162461bcd60e51b8152600401610d4291906123a2565b60005b83811015612391578181015183820152602001612379565b838111156112435750506000910152565b60208152600082518060208401526123c1816040850160208701612376565b601f01601f19169190910160400192915050565b6001600160a01b038116811461084657600080fd5b600080604083850312156123fd57600080fd5b8235612408816123d5565b946020939093013593505050565b60008060006060848603121561242b57600080fd5b8335612436816123d5565b92506020840135612446816123d5565b929592945050506040919091013590565b60006020828403121561246957600080fd5b5035919050565b6001600160a01b0391909116815260200190565b6000806040838503121561249757600080fd5b82356124a2816123d5565b915060208301356124b2816123d5565b809150509250929050565b6000602082840312156124cf57600080fd5b813561066a816123d5565b600081518084526020808501945080840160005b8381101561250a578151875295820195908201906001016124ee565b509495945050505050565b60208152600061066a60208301846124da565b82815260406020820152600061220460408301846124da565b6020808252825182820181905260009190848201906040850190845b818110156125825783516001600160a01b03168352928401929184019160010161255d565b50909695505050505050565b600181811c908216806125a257607f821691505b602082108114156109f057634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082198211156125ec576125ec6125c3565b500190565b60006020828403121561260357600080fd5b5051919050565b6001600160a01b03929092168252602082015260400190565b60006020828403121561263557600080fd5b815161066a816123d5565b634e487b7160e01b600052603260045260246000fd5b600060001982141561266a5761266a6125c3565b5060010190565b600081600019048311821515161561268b5761268b6125c3565b500290565b6000828210156126a2576126a26125c3565b500390565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156126e5576126e56126a7565b604052919050565b60006001600160401b03821115612706576127066126a7565b5060051b60200190565b6000602080838503121561272357600080fd5b82516001600160401b0381111561273957600080fd5b8301601f8101851361274a57600080fd5b805161275d612758826126ed565b6126bd565b81815260059190911b8201830190838101908783111561277c57600080fd5b928401925b82841015612332578351612794816123d5565b82529284019290840190612781565b634e487b7160e01b600052601260045260246000fd5b6000826127d657634e487b7160e01b600052601260045260246000fd5b500490565b600060208083850312156127ee57600080fd5b82516001600160401b0381111561280457600080fd5b8301601f8101851361281557600080fd5b8051612823612758826126ed565b81815260059190911b8201830190838101908783111561284257600080fd5b928401925b8284101561233257835182529284019290840190612847565b60006020828403121561287257600080fd5b8151801515811461066a57600080fd5b60008251612894818460208701612376565b919091019291505056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122008f83521426b932e71e99a3105ba369fb64a66c89c2b82f68a13b984b8b7af1d64736f6c63430008090033";
|
|
819
|
+
"0x6101406040523480156200001257600080fd5b5060405162002ffb38038062002ffb8339810160408190526200003591620002d8565b83838383838381600390805190602001906200005392919062000148565b5080516200006990600490602084019062000148565b505050428111620000b25760405162461bcd60e51b815260206004820152600e60248201526d494e56414c49445f45585049525960901b60448201526064015b60405180910390fd5b60ff9091166080524260a05260c05250503360e05260016008556001600160a01b03861615801590620000ed57506001600160a01b03851615155b6200012a5760405162461bcd60e51b815260206004820152600c60248201526b7a65726f206164647265737360a01b6044820152606401620000a9565b5050506001600160a01b0392831661010052501661012052620003c9565b82805462000156906200038c565b90600052602060002090601f0160209004810192826200017a5760008555620001c5565b82601f106200019557805160ff1916838001178555620001c5565b82800160010185558215620001c5579182015b82811115620001c5578251825591602001919060010190620001a8565b50620001d3929150620001d7565b5090565b5b80821115620001d35760008155600101620001d8565b80516001600160a01b03811681146200020657600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200023357600080fd5b81516001600160401b03808211156200025057620002506200020b565b604051601f8301601f19908116603f011681019082821181831017156200027b576200027b6200020b565b816040528381526020925086838588010111156200029857600080fd5b600091505b83821015620002bc57858201830151818301840152908201906200029d565b83821115620002ce5760008385830101525b9695505050505050565b60008060008060008060c08789031215620002f257600080fd5b620002fd87620001ee565b95506200030d60208801620001ee565b60408801519095506001600160401b03808211156200032b57600080fd5b620003398a838b0162000221565b955060608901519150808211156200035057600080fd5b506200035f89828a0162000221565b935050608087015160ff811681146200037757600080fd5b8092505060a087015190509295509295509295565b600181811c90821680620003a157607f821691505b60208210811415620003c357634e487b7160e01b600052602260045260246000fd5b50919050565b60805160a05160c05160e0516101005161012051612b7962000482600039600081816104a601528181610cc601528181610d8e015261105a01526000818161027e01528181610a7801528181610bd001528181610e2f01528181610f2f0152818161166d01528181611aaf01528181611cdc0152818161212f01526121d401526000818161044e0152818161089a01526115af015260008181610513015261067d015260006105890152600061023c0152612b796000f3fe608060405234801561001057600080fd5b50600436106101c25760003560e01c806306fdde03146101c7578063095ea7b3146101e557806318160ddd1461020857806323b872dd1461021a5780632f13b60c1461022d578063313ce56714610235578063395093511461026657806347bfac62146102795780635ab764ed146102ad578063649a00d61461031557806366247a721461032857806370a082311461033b57806371fd241f1461034e5780637695caa21461037f57806379e6ea161461038957806388611f35146103a957806395d89b41146103b25780639c9fdc3b146103ba578063a090ee50146103c3578063a457c2d7146103cb578063a9059cbb146103de578063afb442e9146103f1578063b9d9a45314610404578063ba50154d1461040c578063bcb7ea5d14610415578063bdaba53614610428578063c45a015514610449578063c4f59f9b14610470578063c6d6916c14610485578063d86e030214610498578063d94073d4146104a1578063db74aa15146104c8578063dcda874d146104db578063dd62ed3e146104fb578063e184c9be1461050e578063eded816114610535578063f04818141461053e578063f1653f6e14610584575b600080fd5b6101cf6105ab565b6040516101dc91906125a1565b60405180910390f35b6101f86101f33660046125e9565b61063d565b60405190151581526020016101dc565b6002545b6040519081526020016101dc565b6101f8610228366004612615565b610655565b6101f861067b565b60405160ff7f00000000000000000000000000000000000000000000000000000000000000001681526020016101dc565b6101f86102743660046125e9565b6106a2565b6102a07f000000000000000000000000000000000000000000000000000000000000000081565b6040516101dc9190612656565b6103006102bb36600461266a565b6001600160a01b039182166000908152600760209081526040808320939094168252918252829020825180840190935280548084526001909101549290910182905291565b604080519283526020830191909152016101dc565b61020c6103233660046126a3565b6106e1565b61020c6103363660046126a3565b61071d565b61020c6103493660046126a3565b6107a8565b61030061035c3660046126a3565b6001600160a01b03166000908152600e6020526040902080546001909101549091565b6103876107c3565b005b61039c6103973660046126a3565b6107fa565b6040516101dc91906126fb565b61020c600d5481565b6101cf610860565b61020c600a5481565b61038761086f565b6101f86103d93660046125e9565b610ae7565b6101f86103ec3660046125e9565b610b84565b6103876103ff3660046126a3565b610b92565b610300610bcb565b61020c60055481565b61020c6104233660046126a3565b610c82565b61043b6104363660046126a3565b610e6a565b6040516101dc92919061270e565b6102a07f000000000000000000000000000000000000000000000000000000000000000081565b610478610f2b565b6040516101dc9190612727565b6103876104933660046126a3565b610fc7565b61020c60095481565b6102a07f000000000000000000000000000000000000000000000000000000000000000081565b61020c6104d636600461266a565b610ff8565b61020c6104e93660046126a3565b600b6020526000908152604090205481565b61020c61050936600461266a565b6110d0565b61020c7f000000000000000000000000000000000000000000000000000000000000000081565b61020c600c5481565b61030061054c3660046126a3565b6001600160a01b0316600090815260066020908152604091829020825180840190935280548084526001909101549290910182905291565b61020c7f000000000000000000000000000000000000000000000000000000000000000081565b6060600380546105ba90612774565b80601f01602080910402602001604051908101604052809291908181526020018280546105e690612774565b80156106335780601f1061060857610100808354040283529160200191610633565b820191906000526020600020905b81548152906001019060200180831161061657829003601f168201915b5050505050905090565b60003361064b8185856110fb565b5060019392505050565b60003361066385828561121f565b61066e858585611299565b60019150505b9392505050565b7f000000000000000000000000000000000000000000000000000000000000000042101590565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919061064b90829086906106dc9087906127c5565b6110fb565b6001600160a01b0381166000908152600e6020526040812080546001909101546107138261070e866107a8565b611460565b61067491906127c5565b60006002600854141561074b5760405162461bcd60e51b8152600401610742906127dd565b60405180910390fd5b60026008556107598261147f565b61076282611493565b61076b82611574565b9050816001600160a01b0316600080516020612b048339815191528260405161079691815260200190565b60405180910390a26001600855919050565b6001600160a01b031660009081526020819052604090205490565b600260085414156107e65760405162461bcd60e51b8152600401610742906127dd565b60026008556107f36116a4565b6001600855565b60606002600854141561081f5760405162461bcd60e51b8152600401610742906127dd565b600260085561082d8261147f565b6108378283611860565b9050816001600160a01b0316600080516020612ae48339815191528260405161079691906126fb565b6060600480546105ba90612774565b6000610879610f2b565b905061088361067b565b15610890576108906116a4565b60008151905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166361d027b36040518163ffffffff1660e01b815260040160206040518083038186803b1580156108f157600080fd5b505afa158015610905573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109299190612814565b90506000826001600160401b0381111561094557610945612831565b60405190808252806020026020018201604052801561096e578160200160208202803683370190505b50905060005b83811015610a4657600085828151811061099057610990612847565b6020908102919091018101516001600160a01b0381166000908152600b90925260409091205490915080156109f6576109f685828986815181106109d6576109d6612847565b60200260200101516001600160a01b0316611a3d9092919063ffffffff16565b6001600160a01b0382166000908152600b602052604081205583518190859085908110610a2557610a25612847565b60200260200101818152505050508080610a3e9061285d565b915050610974565b506000600c54600d54610a5991906127c5565b6000600c819055600d5590508015610aa757610a9f6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168483611a3d565b610aa7611a98565b7f1f8d4ebdbc9b09c20d70cab598013079424b00c1e028075b6d5d5eaee6e5c1228282604051610ad8929190612878565b60405180910390a15050505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919083811015610b6c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610742565b610b7982868684036110fb565b506001949350505050565b60003361064b818585611299565b60026008541415610bb55760405162461bcd60e51b8152600401610742906127dd565b6002600855610bc381611493565b506001600855565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f65d6fc86040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610c2957600080fd5b505af1158015610c3d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c61919061289a565b9150610c6b61067b565b15610c785750600a549091565b50600a8190558091565b600060026008541415610ca75760405162461bcd60e51b8152600401610742906127dd565b60026008556040516370a0823160e01b81526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190610cfb903090600401612656565b60206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d4b919061289a565b9050610d5561067b565b610d7757610d6b81610d66306107a8565b611b39565b9050610d773082611b4f565b60405163b64761f960e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b64761f990610dc590309085906004016128b3565b600060405180830381600087803b158015610ddf57600080fd5b505af1158015610df3573d6000803e3d6000fd5b505050506000610e0282611c97565b809250819450505080600c6000828254610e1c91906127c5565b90915550610e5690506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168585611a3d565b610e5e611a98565b50506001600855919050565b6000606060026008541415610e915760405162461bcd60e51b8152600401610742906127dd565b6002600855610e9f8361147f565b610ea883611493565b610eb28384611860565b9050610ebd83611574565b9150826001600160a01b0316600080516020612ae483398151915282604051610ee691906126fb565b60405180910390a2826001600160a01b0316600080516020612b0483398151915283604051610f1791815260200190565b60405180910390a260016008559092909150565b60607f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c4f59f9b6040518163ffffffff1660e01b815260040160006040518083038186803b158015610f8657600080fd5b505afa158015610f9a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fc2919081019061291f565b905090565b60026008541415610fea5760405162461bcd60e51b8152600401610742906127dd565b6002600855610bc38161147f565b60006002600854141561101d5760405162461bcd60e51b8152600401610742906127dd565b6002600855600061102c611cd7565b905061103781611dcd565b91506110438383611de5565b6040516304a8c77360e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906312a31dcc9061109190879086906004016128b3565b600060405180830381600087803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b505060016008555091949350505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b03831661115d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610742565b6001600160a01b0382166111be5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610742565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061122b84846110d0565b9050600019811461129357818110156112865760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610742565b61129384848484036110fb565b50505050565b6001600160a01b0383166112fd5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610742565b6001600160a01b03821661135f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610742565b61136a838383611ebf565b6001600160a01b038316600090815260208190526040902054818110156113e25760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610742565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906114199084906127c5565b92505081905550826001600160a01b0316846001600160a01b0316600080516020612b248339815191528460405161145391815260200190565b60405180910390a3611293565b600082611475670de0b6b3a7640000846129b2565b61067491906129e7565b6114876116a4565b61149081611f33565b50565b6001600160a01b0381166000908152600e6020526040812054906114b5610bcb565b915050808214156114c557505050565b816114ea576001600160a01b039092166000908152600e602052604090209190915550565b60006114f5846107a8565b9050600061152061150684866129b2565b6115108686612a09565b61151a90856129b2565b906120af565b6001600160a01b0386166000908152600e60205260408120600101805492935083929091906115509084906127c5565b9091555050506001600160a01b039093166000908152600e60205260409020555050565b6001600160a01b038082166000908152600e60209081526040808320600101805490849055815163dd86fea160e01b815291519394909385937f00000000000000000000000000000000000000000000000000000000000000009092169263dd86fea1926004808301939192829003018186803b1580156115f457600080fd5b505afa158015611608573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061162c919061289a565b9050600061163a83836120de565b905080600d600082825461164e91906127c5565b9091555061165e90508184612a09565b93506116946001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168686611a3d565b61169c611a98565b505050919050565b6116ac6120fc565b6116b257565b6116ba612118565b60006116c46121ba565b905060006116d0610f2b565b90506116db81612259565b60006116e561067b565b905060005b825181101561129357600083828151811061170757611707612847565b602002602001015190506000816001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161173f9190612656565b60206040518083038186803b15801561175757600080fd5b505afa15801561176b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061178f919061289a565b6001600160a01b038316600090815260066020526040812060010154919250906117b99083612a09565b905084156117f4576001600160a01b0383166000908152600b6020526040812080548392906117e99084906127c5565b909155506118329050565b86156118325761180481886120af565b6001600160a01b0384166000908152600660205260408120805490919061182c9084906127c5565b90915550505b506001600160a01b039091166000908152600660205260409020600101556118598161285d565b90506116ea565b6060600061186c610f2b565b905080516001600160401b0381111561188757611887612831565b6040519080825280602002602001820160405280156118b0578160200160208202803683370190505b50915060005b8151811015611a355760008282815181106118d3576118d3612847565b6020026020010151905060076000876001600160a01b03166001600160a01b031681526020019081526020016000206000826001600160a01b03166001600160a01b031681526020019081526020016000206001015484838151811061193b5761193b612847565b6020908102919091018101919091526001600160a01b038088166000908152600783526040808220928516825291909252812060010155835184908390811061198657611986612847565b602002602001015160066000836001600160a01b03166001600160a01b0316815260200190815260200160002060010160008282546119c59190612a09565b925050819055508382815181106119de576119de612847565b6020026020010151600014611a2457611a2485858481518110611a0357611a03612847565b6020026020010151836001600160a01b0316611a3d9092919063ffffffff16565b50611a2e8161285d565b90506118b6565b505092915050565b611a938363a9059cbb60e01b8484604051602401611a5c9291906128b3565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526122fc565b505050565b6040516370a0823160e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190611ae4903090600401612656565b60206040518083038186803b158015611afc57600080fd5b505afa158015611b10573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b34919061289a565b600955565b6000818310611b485781610674565b5090919050565b6001600160a01b038216611baf5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610742565b611bbb82600083611ebf565b6001600160a01b03821660009081526020819052604090205481811015611c2f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610742565b6001600160a01b0383166000908152602081905260408120838303905560028054849290611c5e908490612a09565b90915550506040518281526000906001600160a01b03851690600080516020612b248339815191529060200160405180910390a3505050565b600080600080611ca5610bcb565b915091506000611cb58287611460565b9050611cc18387611460565b9450611ccd8582612a09565b9350505050915091565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611d269190612656565b60206040518083038186803b158015611d3e57600080fd5b505afa158015611d52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d76919061289a565b905060095481611d869190612a09565b915060008211611dc75760405162461bcd60e51b815260206004820152600c60248201526b524543454956455f5a45524f60a01b6044820152606401610742565b60095590565b600080611dd8610bcb565b91505061067481846123ce565b6001600160a01b038216611e3b5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610742565b611e4760008383611ebf565b8060026000828254611e5991906127c5565b90915550506001600160a01b03821660009081526020819052604081208054839290611e869084906127c5565b90915550506040518181526001600160a01b03831690600090600080516020612b248339815191529060200160405180910390a35b5050565b611ec76116a4565b6001600160a01b03831615801590611ee857506001600160a01b0383163014155b15611eff57611ef683611493565b611eff83611f33565b6001600160a01b03821615801590611f2057506001600160a01b0382163014155b15611a9357611f2e82611493565b611a93825b6000611f3d610f2b565b90506000611f4a836123e3565b905060005b8251811015611293576000838281518110611f6c57611f6c612847565b6020908102919091018101516001600160a01b03808816600090815260078452604080822092841682529184528181205460069094522054909250811415611fb557505061209f565b80611ff157506001600160a01b03908116600081815260066020908152604080832054948916835260078252808320938352929052205561209f565b6001600160a01b038216600090815260066020526040812054612015908390612a09565b9050600061202386836120de565b6001600160a01b03808a1660009081526007602090815260408083209389168352929052908120600101805492935083929091906120629084906127c5565b9091555050506001600160a01b03928316600081815260066020908152604080832054968b16835260078252808320938352929052209290925550505b6120a88161285d565b9050611f4f565b6000806120c4670de0b6b3a7640000856129b2565b90508281816120d5576120d56129d1565b04949350505050565b6000806120eb83856129b2565b9050670de0b6b3a7640000816120d5565b600043600554141561210e5750600090565b5043600555600190565b6040516359436f3b60e11b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b286de7690612164903090600401612656565b600060405180830381600087803b15801561217e57600080fd5b505af1158015612192573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114909190810190612a20565b6040516370a0823160e01b81526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190612209903090600401612656565b60206040518083038186803b15801561222157600080fd5b505afa158015612235573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fc2919061289a565b60005b8151811015611ebb576006600083838151811061227b5761227b612847565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060000154600014156122ec576001600660008484815181106122c7576122c7612847565b6020908102919091018101516001600160a01b03168252810191909152604001600020555b6122f58161285d565b905061225c565b6000612351826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166123f49092919063ffffffff16565b805190915015611a93578080602001905181019061236f9190612aa5565b611a935760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610742565b6000670de0b6b3a764000061147584846129b2565b60006123ee826106e1565b92915050565b6060612403848460008561240b565b949350505050565b60608247101561246c5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610742565b6001600160a01b0385163b6124c35760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610742565b600080866001600160a01b031685876040516124df9190612ac7565b60006040518083038185875af1925050503d806000811461251c576040519150601f19603f3d011682016040523d82523d6000602084013e612521565b606091505b509150915061253182828661253c565b979650505050505050565b6060831561254b575081610674565b82511561255b5782518084602001fd5b8160405162461bcd60e51b815260040161074291906125a1565b60005b83811015612590578181015183820152602001612578565b838111156112935750506000910152565b60208152600082518060208401526125c0816040850160208701612575565b601f01601f19169190910160400192915050565b6001600160a01b038116811461149057600080fd5b600080604083850312156125fc57600080fd5b8235612607816125d4565b946020939093013593505050565b60008060006060848603121561262a57600080fd5b8335612635816125d4565b92506020840135612645816125d4565b929592945050506040919091013590565b6001600160a01b0391909116815260200190565b6000806040838503121561267d57600080fd5b8235612688816125d4565b91506020830135612698816125d4565b809150509250929050565b6000602082840312156126b557600080fd5b8135610674816125d4565b600081518084526020808501945080840160005b838110156126f0578151875295820195908201906001016126d4565b509495945050505050565b60208152600061067460208301846126c0565b82815260406020820152600061240360408301846126c0565b6020808252825182820181905260009190848201906040850190845b818110156127685783516001600160a01b031683529284019291840191600101612743565b50909695505050505050565b600181811c9082168061278857607f821691505b602082108114156127a957634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600082198211156127d8576127d86127af565b500190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b60006020828403121561282657600080fd5b8151610674816125d4565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000600019821415612871576128716127af565b5060010190565b60408152600061288b60408301856126c0565b90508260208301529392505050565b6000602082840312156128ac57600080fd5b5051919050565b6001600160a01b03929092168252602082015260400190565b604051601f8201601f191681016001600160401b03811182821017156128f4576128f4612831565b604052919050565b60006001600160401b0382111561291557612915612831565b5060051b60200190565b6000602080838503121561293257600080fd5b82516001600160401b0381111561294857600080fd5b8301601f8101851361295957600080fd5b805161296c612967826128fc565b6128cc565b81815260059190911b8201830190838101908783111561298b57600080fd5b928401925b828410156125315783516129a3816125d4565b82529284019290840190612990565b60008160001904831182151516156129cc576129cc6127af565b500290565b634e487b7160e01b600052601260045260246000fd5b600082612a0457634e487b7160e01b600052601260045260246000fd5b500490565b600082821015612a1b57612a1b6127af565b500390565b60006020808385031215612a3357600080fd5b82516001600160401b03811115612a4957600080fd5b8301601f81018513612a5a57600080fd5b8051612a68612967826128fc565b81815260059190911b82018301908381019087831115612a8757600080fd5b928401925b8284101561253157835182529284019290840190612a8c565b600060208284031215612ab757600080fd5b8151801515811461067457600080fd5b60008251612ad9818460208701612575565b919091019291505056fe3a77fed7c9a4917745bde0b97b576d95b02425a5222ff309ebb6e1d34c18a10f83a945bd12c713615b59a6e48a3467c05d1a7442350600d6f7fce6af9f7190e9ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122096f86a5dc05c7806e737c8e9483637f6bc6e47e092e68a9ba765ae55af5c48ff64736f6c63430008090033";
|
|
751
820
|
|
|
752
821
|
type PendleYieldTokenConstructorParams =
|
|
753
822
|
| [signer?: Signer]
|
|
@@ -769,7 +838,7 @@ export class PendleYieldToken__factory extends ContractFactory {
|
|
|
769
838
|
|
|
770
839
|
deploy(
|
|
771
840
|
_SCY: string,
|
|
772
|
-
|
|
841
|
+
_PT: string,
|
|
773
842
|
_name: string,
|
|
774
843
|
_symbol: string,
|
|
775
844
|
__decimals: BigNumberish,
|
|
@@ -778,7 +847,7 @@ export class PendleYieldToken__factory extends ContractFactory {
|
|
|
778
847
|
): Promise<PendleYieldToken> {
|
|
779
848
|
return super.deploy(
|
|
780
849
|
_SCY,
|
|
781
|
-
|
|
850
|
+
_PT,
|
|
782
851
|
_name,
|
|
783
852
|
_symbol,
|
|
784
853
|
__decimals,
|
|
@@ -788,7 +857,7 @@ export class PendleYieldToken__factory extends ContractFactory {
|
|
|
788
857
|
}
|
|
789
858
|
getDeployTransaction(
|
|
790
859
|
_SCY: string,
|
|
791
|
-
|
|
860
|
+
_PT: string,
|
|
792
861
|
_name: string,
|
|
793
862
|
_symbol: string,
|
|
794
863
|
__decimals: BigNumberish,
|
|
@@ -797,7 +866,7 @@ export class PendleYieldToken__factory extends ContractFactory {
|
|
|
797
866
|
): TransactionRequest {
|
|
798
867
|
return super.getDeployTransaction(
|
|
799
868
|
_SCY,
|
|
800
|
-
|
|
869
|
+
_PT,
|
|
801
870
|
_name,
|
|
802
871
|
_symbol,
|
|
803
872
|
__decimals,
|
|
@@ -73,6 +73,19 @@ const _abi = [
|
|
|
73
73
|
stateMutability: "view",
|
|
74
74
|
type: "function",
|
|
75
75
|
},
|
|
76
|
+
{
|
|
77
|
+
inputs: [],
|
|
78
|
+
name: "lastRewardUpdateBlock",
|
|
79
|
+
outputs: [
|
|
80
|
+
{
|
|
81
|
+
internalType: "uint256",
|
|
82
|
+
name: "",
|
|
83
|
+
type: "uint256",
|
|
84
|
+
},
|
|
85
|
+
],
|
|
86
|
+
stateMutability: "view",
|
|
87
|
+
type: "function",
|
|
88
|
+
},
|
|
76
89
|
];
|
|
77
90
|
|
|
78
91
|
export class RewardManager__factory {
|