mirror of
https://github.com/Instadapp/aave-protocol-v2.git
synced 2024-07-29 21:47:30 +00:00
Updated initReserve() with proxies
This commit is contained in:
parent
45d12fd43d
commit
674b885b31
|
@ -32,6 +32,8 @@ contract LendingPoolConfigurator is VersionedInitializable {
|
|||
event ReserveInitialized(
|
||||
address indexed _reserve,
|
||||
address indexed _aToken,
|
||||
address _stableDebtToken,
|
||||
address _variableDebtToken,
|
||||
address _interestRateStrategyAddress
|
||||
);
|
||||
|
||||
|
@ -168,36 +170,45 @@ contract LendingPoolConfigurator is VersionedInitializable {
|
|||
* @dev initializes a reserve
|
||||
* @param _reserve the address of the reserve to be initialized
|
||||
* @param _aTokenImpl the address of the aToken contract implementation
|
||||
* @param _stableDebtTokenAddress the address of the stable debt token contract
|
||||
* @param _variableDebtTokenAddress the address of the variable debt token contract
|
||||
* @param _stableDebtTokenImpl the address of the stable debt token contract
|
||||
* @param _variableDebtTokenImpl the address of the variable debt token contract
|
||||
* @param _underlyingAssetDecimals the decimals of the reserve underlying asset
|
||||
* @param _interestRateStrategyAddress the address of the interest rate strategy contract for this reserve
|
||||
**/
|
||||
function initReserve(
|
||||
address _reserve,
|
||||
address _aTokenImpl,
|
||||
address _stableDebtTokenAddress,
|
||||
address _variableDebtTokenAddress,
|
||||
address _stableDebtTokenImpl,
|
||||
address _variableDebtTokenImpl,
|
||||
uint8 _underlyingAssetDecimals,
|
||||
address _interestRateStrategyAddress
|
||||
) public onlyLendingPoolManager {
|
||||
|
||||
InitializableAdminUpgradeabilityProxy aTokenProxy = new InitializableAdminUpgradeabilityProxy();
|
||||
|
||||
bytes memory params = abi.encodeWithSignature(
|
||||
'initialize(uint8,string,string)',
|
||||
address aTokenProxyAddress = _initWithProxy(
|
||||
_aTokenImpl,
|
||||
_underlyingAssetDecimals,
|
||||
IERC20Detailed(_aTokenImpl).name(),
|
||||
IERC20Detailed(_aTokenImpl).symbol()
|
||||
);
|
||||
|
||||
aTokenProxy.initialize(_aTokenImpl, address(this), params);
|
||||
address stableDebtTokenProxyAddress = _initWithProxy(
|
||||
_stableDebtTokenImpl,
|
||||
_underlyingAssetDecimals,
|
||||
IERC20Detailed(_stableDebtTokenImpl).name(),
|
||||
IERC20Detailed(_stableDebtTokenImpl).symbol()
|
||||
);
|
||||
|
||||
address variableDebtTokenProxyAddress = _initWithProxy(
|
||||
_variableDebtTokenImpl,
|
||||
_underlyingAssetDecimals,
|
||||
IERC20Detailed(_variableDebtTokenImpl).name(),
|
||||
IERC20Detailed(_variableDebtTokenImpl).symbol()
|
||||
);
|
||||
|
||||
pool.initReserve(
|
||||
_reserve,
|
||||
address(aTokenProxy),
|
||||
_stableDebtTokenAddress,
|
||||
_variableDebtTokenAddress,
|
||||
aTokenProxyAddress,
|
||||
stableDebtTokenProxyAddress,
|
||||
variableDebtTokenProxyAddress,
|
||||
_interestRateStrategyAddress
|
||||
);
|
||||
|
||||
|
@ -210,7 +221,13 @@ contract LendingPoolConfigurator is VersionedInitializable {
|
|||
|
||||
pool.setConfiguration(_reserve, currentConfig.data);
|
||||
|
||||
emit ReserveInitialized(_reserve, address(aTokenProxy), _interestRateStrategyAddress);
|
||||
emit ReserveInitialized(
|
||||
_reserve,
|
||||
aTokenProxyAddress,
|
||||
stableDebtTokenProxyAddress,
|
||||
variableDebtTokenProxyAddress,
|
||||
_interestRateStrategyAddress
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -488,4 +505,28 @@ contract LendingPoolConfigurator is VersionedInitializable {
|
|||
pool.setReserveInterestRateStrategyAddress(_reserve, _rateStrategyAddress);
|
||||
emit ReserveInterestRateStrategyChanged(_reserve, _rateStrategyAddress);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
**/
|
||||
function _initWithProxy(
|
||||
address _implementation,
|
||||
uint8 _decimals,
|
||||
string memory _name,
|
||||
string memory _symbol
|
||||
) internal returns (address) {
|
||||
InitializableAdminUpgradeabilityProxy proxy = new InitializableAdminUpgradeabilityProxy();
|
||||
|
||||
bytes memory params = abi.encodeWithSignature(
|
||||
'initialize(uint8,string,string)',
|
||||
_decimals,
|
||||
_name,
|
||||
_symbol
|
||||
);
|
||||
|
||||
proxy.initialize(_implementation, address(this), params);
|
||||
|
||||
return address(proxy);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -24,6 +24,7 @@ contract StableDebtToken is IStableDebtToken, DebtTokenBase {
|
|||
using WadRayMath for uint256;
|
||||
using Address for address;
|
||||
|
||||
uint256 public constant DEBT_TOKEN_REVISION = 0x1;
|
||||
struct UserData {
|
||||
uint256 currentRate;
|
||||
uint40 lastUpdateTimestamp;
|
||||
|
@ -72,6 +73,14 @@ contract StableDebtToken is IStableDebtToken, DebtTokenBase {
|
|||
DebtTokenBase(_pool, _underlyingAsset)
|
||||
{}
|
||||
|
||||
/**
|
||||
* @dev gets the revision of the stable debt token implementation
|
||||
* @return the debt token implementation revision
|
||||
**/
|
||||
function getRevision() internal override pure returns(uint256) {
|
||||
return DEBT_TOKEN_REVISION;
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev returns the average stable rate across all the stable rate debt
|
||||
* @return the average stable rate
|
||||
|
|
|
@ -20,6 +20,8 @@ contract VariableDebtToken is DebtTokenBase, IVariableDebtToken {
|
|||
using WadRayMath for uint256;
|
||||
using Address for address;
|
||||
|
||||
uint256 public constant DEBT_TOKEN_REVISION = 0x1;
|
||||
|
||||
mapping(address => uint256) private userIndexes;
|
||||
|
||||
/**
|
||||
|
@ -63,6 +65,15 @@ contract VariableDebtToken is DebtTokenBase, IVariableDebtToken {
|
|||
DebtTokenBase(_pool, _underlyingAsset)
|
||||
{}
|
||||
|
||||
/**
|
||||
* @dev gets the revision of the stable debt token implementation
|
||||
* @return the debt token implementation revision
|
||||
**/
|
||||
function getRevision() internal virtual override pure returns(uint256) {
|
||||
return DEBT_TOKEN_REVISION;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @dev calculates the accumulated debt balance of the user
|
||||
* @return the debt balance of the user
|
||||
|
|
|
@ -6,6 +6,7 @@ import {SafeMath} from '@openzeppelin/contracts/math/SafeMath.sol';
|
|||
import {Address} from '@openzeppelin/contracts/utils/Address.sol';
|
||||
import {ILendingPoolAddressesProvider} from '../../interfaces/ILendingPoolAddressesProvider.sol';
|
||||
import {LendingPool} from '../../lendingpool/LendingPool.sol';
|
||||
import {VersionedInitializable} from '../../libraries/openzeppelin-upgradeability/VersionedInitializable.sol';
|
||||
|
||||
/**
|
||||
* @title contract DebtTokenBase
|
||||
|
@ -13,7 +14,7 @@ import {LendingPool} from '../../lendingpool/LendingPool.sol';
|
|||
* @notice base contract for StableDebtToken and VariableDebtToken
|
||||
*/
|
||||
|
||||
abstract contract DebtTokenBase is IERC20 {
|
||||
abstract contract DebtTokenBase is IERC20, VersionedInitializable {
|
||||
using SafeMath for uint256;
|
||||
using Address for address;
|
||||
|
||||
|
@ -45,11 +46,11 @@ abstract contract DebtTokenBase is IERC20 {
|
|||
* @param _symbol the symbol of the token
|
||||
* @param _decimals the decimals of the token
|
||||
*/
|
||||
function init(
|
||||
function initialize(
|
||||
uint8 _decimals,
|
||||
string memory _name,
|
||||
string memory _symbol,
|
||||
uint8 _decimals
|
||||
) public {
|
||||
string memory _symbol
|
||||
) public initializer {
|
||||
name = _name;
|
||||
symbol = _symbol;
|
||||
decimals = _decimals;
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x4da11393102f7c324f7Bfd07B58773264986e211",
|
||||
"address": "0x666D47050E77ADB0B04076fB35DDcb74e95D1d7C",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -15,7 +15,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x479182FBD6270898bf472583876527667dE6aC04",
|
||||
"address": "0x1FB61ED838A993b8885Ceb08936524F742F525cf",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -25,7 +25,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x4cC8D5649e9d91a4bD054667691aebeC69B69FfB",
|
||||
"address": "0xcBf7A8f676Bf5fa60339ba8dFab867D4a074c604",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -34,7 +34,7 @@
|
|||
"address": "0xD9273d497eDBC967F39d419461CfcF382a0A822e"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x0f2cE53B3410a2007d6C4ad8940Ffa5AdCC2916C"
|
||||
"address": "0x26aBe949b24C10cc9b1d33100Cd7fF3Aa5e4C698"
|
||||
}
|
||||
},
|
||||
"LendingPoolParametersProvider": {
|
||||
|
@ -52,7 +52,7 @@
|
|||
"address": "0x9EC0480CF106d6dc1c7849BA141a56F874170F97"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x0ca5E5B6F09C97f30Ed6e5E99be65A38eE7edfaB"
|
||||
"address": "0xaD0FdA3C2D467DEE48DFc3b4C123240F6e90D3c2"
|
||||
}
|
||||
},
|
||||
"LendingPoolDataProvider": {
|
||||
|
@ -65,7 +65,7 @@
|
|||
"address": "0x6642B57e4265BAD868C17Fc1d1F4F88DBBA04Aa8"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x7FE8419fACf45dFa93d471644e87122923EC9D94"
|
||||
"address": "0x29c1e17Ac4aAf9fEE3091A8DdAAf5B7798bcC4b9"
|
||||
}
|
||||
},
|
||||
"PriceOracle": {
|
||||
|
@ -74,7 +74,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xEDf104A35B3293F4BdB987be9D57EFe3b69C19c7",
|
||||
"address": "0xfdAF4f6e47e854c05bE158993d32872e784F0502",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -84,7 +84,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x4CAf641bceba759b352e07B2aE3A079B5F409dA6",
|
||||
"address": "0x8d0FF86F21174b33f86A2673E96e8D7a472659A3",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -94,7 +94,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xCb9cdF2CfeE567b43FD654f8b831528c2d54D901",
|
||||
"address": "0xf6fFAbB561D5b265127459cB7e43c89f58b7cAbe",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -104,17 +104,17 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xeB3E3b080821399daF535D0C52f642b8f14993AC",
|
||||
"address": "0x5DAe571bb5B70f9851eeef12E3a43f548dCF923c",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
"DefaultReserveInterestRateStrategy": {
|
||||
"buidlerevm": {
|
||||
"address": "0x09d7cb7a0606a7f10DC8a37b3e0E420F39f0FAF1",
|
||||
"address": "0x830bceA96E56DBC1F8578f75fBaC0AF16B32A07d",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x3888B5ac0089C12cDF21DD8B0234029f80645324",
|
||||
"address": "0x5a3343A0CF72dC6933362676Bb5831784CaA0014",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -146,37 +146,37 @@
|
|||
},
|
||||
"TokenDistributor": {
|
||||
"buidlerevm": {
|
||||
"address": "0x22B37db37e9992728245A7dD0536892AF9bA1baB"
|
||||
"address": "0x2cfcA5785261fbC88EFFDd46fCFc04c22525F9e4"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x39f713653d31a8e0D7a51061F1159861290e65Fd"
|
||||
"address": "0x61751f72Fa303F3bB256707dD3cD368c89E82f1b"
|
||||
}
|
||||
},
|
||||
"InitializableAdminUpgradeabilityProxy": {
|
||||
"buidlerevm": {
|
||||
"address": "0x22B37db37e9992728245A7dD0536892AF9bA1baB",
|
||||
"address": "0x2cfcA5785261fbC88EFFDd46fCFc04c22525F9e4",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x39f713653d31a8e0D7a51061F1159861290e65Fd",
|
||||
"address": "0x61751f72Fa303F3bB256707dD3cD368c89E82f1b",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
"MockFlashLoanReceiver": {
|
||||
"buidlerevm": {
|
||||
"address": "0x850Fae11E1313e6C23Db7c2410Ec0985d9Ea325A"
|
||||
"address": "0x3bDA11B584dDff7F66E0cFe1da1562c92B45db60"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xC4e948241c7A63d1f21fD98D652aE4B59180e07F"
|
||||
"address": "0xdF19a9539Fdd701D8334299C6Dd04931e4022303"
|
||||
}
|
||||
},
|
||||
"WalletBalanceProvider": {
|
||||
"buidlerevm": {
|
||||
"address": "0x22058276Dd278bD037591805E62E797012d666f6",
|
||||
"address": "0x392E5355a0e88Bd394F717227c752670fb3a8020",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x5361A119A2b3daFB88585b24997aAB2232C655a3",
|
||||
"address": "0xBe6d8642382C241c9B4B50c89574DbF3f4181E7D",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -186,7 +186,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xeb544bEfD42128e6b08A821aCCc5562c395E8c9d",
|
||||
"address": "0x8733AfE8174BA7c04c6CD694bD673294079b7E10",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -196,7 +196,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xe3353ddEc0cf8aA6761a3C21D896D04ebd59bDe2",
|
||||
"address": "0xA8083d78B6ABC328b4d3B714F76F384eCC7147e1",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -206,7 +206,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xa7B8e0F888D416d7e08bD12029c6ec8b8Ed18373",
|
||||
"address": "0xa497f1Ed4edeA8151fECe457aa26e1D6A4318B6A",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -216,7 +216,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x7dF045e4721203EBEDD3436b15391f32A375Cbc4",
|
||||
"address": "0xB7b9568073C9e745acD84eEb30F1c32F74Ba4946",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -226,7 +226,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xbcd58cEF3F429f99CA32Dc06F28Ca7F7ea6aC5bB",
|
||||
"address": "0x64999a4272342C910FB8f6a71C2Ca50b878a8658",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -236,7 +236,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xb528f2371502B38d87af537292e88721F4728915",
|
||||
"address": "0xFB6800f1BB30e235587b574F8Ce6c7bba2242276",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -246,7 +246,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xC2CC8DD97D4680FCfE2338117D23fa7E4858E09B",
|
||||
"address": "0x832D8fDeeE7Df842796582bC7F804802c2c666fd",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -256,7 +256,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xfC6d9227413D021f7a50EF3AAdF9545aA4ebb439",
|
||||
"address": "0x8628E920E86DA923A79A57Ab4282CC9f89E12CEf",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -266,7 +266,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xdc006C4186148C29B57f52A8ad7694542ad4E675",
|
||||
"address": "0x04C90bD686E03782737C3f4C6bDC88dc3C92bDec",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -276,7 +276,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x77488a02Baf7a80a5E7D1Da37921D0554C112c7F",
|
||||
"address": "0x002164e9C8425D2F0c7dcde98E63317D305302C5",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -286,7 +286,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x107Aa2cc3FE981E78140424C3d4DD55aF00Ab24C",
|
||||
"address": "0xAe407A0bD891d02E495D3E79cE577C17BB61f366",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -296,7 +296,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x512555303417D50E8E2a3BE333896f5f8c54205c",
|
||||
"address": "0x96cf3831338c19F309121D48C12C3aB489FE7D5A",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -306,7 +306,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x8cD1B99Ff499438BC9B5A41F558E41e3Df10ff08",
|
||||
"address": "0xfd1346a9ee71839D6103C76Bb63d1592971C23aE",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -316,7 +316,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x66F7097B8204A7a93850D5D29eAcdA6E2AA09A06",
|
||||
"address": "0x9884cF2d612CdD7031cCaa12dd3Bc69D754fc701",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -326,7 +326,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xAfD2Ac057dA78019436cbc59E08a4567E1FDCB02",
|
||||
"address": "0x48fc85A6fcD880e2421586f4F9116f14e854E109",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -336,7 +336,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xc989A9cB29D1e65F5fD1f5e54306D81EC2aae2d4",
|
||||
"address": "0x1bfF9DBd010EF644863918f77aCF79BD35721c13",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -346,7 +346,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x5D5492e4659e8c26A86a4cB2122b59d3fC8afA23",
|
||||
"address": "0xB42D37cB0E78aaCC5980eC6B2EcB98CBeCeB9df7",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -356,7 +356,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x67863e08EBA141fe927605A9A4C614751d550416",
|
||||
"address": "0x8051CFC72E5c27fD752834a854eDD306c254D3b1",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -366,7 +366,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x83eDd07E49dFaBc288AF2215C9dC534C52AB549f",
|
||||
"address": "0x2F16C47532625acE7C652FC5EE7E9a9080B352f5",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -376,7 +376,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x02D4086e063Ef6cc8d8e6e811bFc596Ed4aa7F0f",
|
||||
"address": "0x7483ADEC5d3dA2203CCB2Fc5F837c6F8a1A92099",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -386,7 +386,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x1865BF8d8F8392a823D9063f55beC6D450c6756A",
|
||||
"address": "0xe6688b6Cc79268D2e39f799C08673034a5350F13",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -396,7 +396,7 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x2f2abb208a543B0A076aF58cc806a899dE9EFfAC",
|
||||
"address": "0xFa58524E6B3E432fb10B41A9fea95BAD32A608eF",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -406,51 +406,55 @@
|
|||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x4da11393102f7c324f7Bfd07B58773264986e211",
|
||||
"address": "0x666D47050E77ADB0B04076fB35DDcb74e95D1d7C",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
"AaveProtocolTestHelpers": {
|
||||
"buidlerevm": {
|
||||
"address": "0x6D3540a9F1a769bfd91A4A33169a8361aa82dC0F"
|
||||
"address": "0x3b050AFb4ac4ACE646b31fF3639C1CD43aC31460"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x26af54A97F214dB563711B0670c4FbA2Eb935E37"
|
||||
"address": "0x02BB514187B830d6A2111197cd7D8cb60650B970"
|
||||
}
|
||||
},
|
||||
"StableDebtToken": {
|
||||
"buidlerevm": {
|
||||
"address": "0x5Ea694f66BD0CBd08FC7967af01b67Dcef68cC5c",
|
||||
"address": "0xA0AB1cB92A4AF81f84dCd258155B5c25D247b54E",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xB76Ea4df0263F99daf33765541b1933AD5bB4410",
|
||||
"address": "0xbC15a5eEA769cfB4BA6d7574c9942f0b8C40Ae03",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
"VariableDebtToken": {
|
||||
"buidlerevm": {
|
||||
"address": "0xd4e934C2749CA8C1618659D02E7B28B074bf4df7",
|
||||
"address": "0x5f7134cd38C826a7649f9Cc47dda24d834DD2967",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x7376e7b11aCE5dDa9068f770a27796826e66E305",
|
||||
"address": "0x3c3AB51fF33032159e82E1FDEe6503dEd082F1d9",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
"AToken": {
|
||||
"localhost": {
|
||||
"address": "0x2abb2787B4C39a5667E95f11E8a44c034a58aaac",
|
||||
"address": "0x2d17b3E44e413F1fDa30E569895863EeD139CE6B",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"buidlerevm": {
|
||||
"address": "0x8280D40C9E9F04229D2435EAad6e0011309ce81B",
|
||||
"address": "0xE91bBe8ee03560E3dda2786f95335F5399813Ca0",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
"MockAToken": {
|
||||
"buidlerevm": {
|
||||
"address": "0x7f23223A2FAf869962B38f5eC4aAB7f37454A45e",
|
||||
"address": "0xD4B5A49d5bA242572ec3f4A8E52B97a10AF2543a",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0xc2517909aE3cFacC0283EB8FB917EAe273a3aE9e",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
},
|
||||
|
@ -458,6 +462,10 @@
|
|||
"buidlerevm": {
|
||||
"address": "0xf784709d2317D872237C4bC22f867d1BAe2913AB",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
},
|
||||
"localhost": {
|
||||
"address": "0x501A498e8FDA589038d6526C2153a9fdc9d8eDD2",
|
||||
"deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -265,8 +265,6 @@ export const deployStableDebtToken = async ([
|
|||
underlyingAsset,
|
||||
]);
|
||||
|
||||
await token.init(name, symbol, decimals);
|
||||
|
||||
return token;
|
||||
};
|
||||
|
||||
|
@ -282,8 +280,6 @@ export const deployVariableDebtToken = async ([
|
|||
underlyingAsset,
|
||||
]);
|
||||
|
||||
await token.init(name, symbol, decimals);
|
||||
|
||||
return token;
|
||||
};
|
||||
|
||||
|
|
8
types/AToken.d.ts
vendored
8
types/AToken.d.ts
vendored
|
@ -69,7 +69,7 @@ interface ATokenInterface extends Interface {
|
|||
}>;
|
||||
|
||||
mintOnDeposit: TypedFunctionDescription<{
|
||||
encode([_account, _amount]: [string, BigNumberish]): string;
|
||||
encode([_user, _amount]: [string, BigNumberish]): string;
|
||||
}>;
|
||||
|
||||
name: TypedFunctionDescription<{ encode([]: []): string }>;
|
||||
|
@ -278,7 +278,7 @@ export class AToken extends Contract {
|
|||
isTransferAllowed(_user: string, _amount: BigNumberish): Promise<boolean>;
|
||||
|
||||
mintOnDeposit(
|
||||
_account: string,
|
||||
_user: string,
|
||||
_amount: BigNumberish,
|
||||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
@ -391,7 +391,7 @@ export class AToken extends Contract {
|
|||
isTransferAllowed(_user: string, _amount: BigNumberish): Promise<boolean>;
|
||||
|
||||
mintOnDeposit(
|
||||
_account: string,
|
||||
_user: string,
|
||||
_amount: BigNumberish,
|
||||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
@ -554,7 +554,7 @@ export class AToken extends Contract {
|
|||
|
||||
isTransferAllowed(_user: string, _amount: BigNumberish): Promise<BigNumber>;
|
||||
|
||||
mintOnDeposit(_account: string, _amount: BigNumberish): Promise<BigNumber>;
|
||||
mintOnDeposit(_user: string, _amount: BigNumberish): Promise<BigNumber>;
|
||||
|
||||
name(): Promise<BigNumber>;
|
||||
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
22
types/DebtTokenBase.d.ts
vendored
22
types/DebtTokenBase.d.ts
vendored
|
@ -32,11 +32,11 @@ interface DebtTokenBaseInterface extends Interface {
|
|||
encode([spender, addedValue]: [string, BigNumberish]): string;
|
||||
}>;
|
||||
|
||||
init: TypedFunctionDescription<{
|
||||
encode([_name, _symbol, _decimals]: [
|
||||
initialize: TypedFunctionDescription<{
|
||||
encode([_decimals, _name, _symbol]: [
|
||||
BigNumberish,
|
||||
string,
|
||||
string,
|
||||
BigNumberish
|
||||
string
|
||||
]): string;
|
||||
}>;
|
||||
|
||||
|
@ -127,10 +127,10 @@ export class DebtTokenBase extends Contract {
|
|||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
init(
|
||||
initialize(
|
||||
_decimals: BigNumberish,
|
||||
_name: string,
|
||||
_symbol: string,
|
||||
_decimals: BigNumberish,
|
||||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
|
@ -182,10 +182,10 @@ export class DebtTokenBase extends Contract {
|
|||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
init(
|
||||
initialize(
|
||||
_decimals: BigNumberish,
|
||||
_name: string,
|
||||
_symbol: string,
|
||||
_decimals: BigNumberish,
|
||||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
|
@ -241,10 +241,10 @@ export class DebtTokenBase extends Contract {
|
|||
addedValue: BigNumberish
|
||||
): Promise<BigNumber>;
|
||||
|
||||
init(
|
||||
initialize(
|
||||
_decimals: BigNumberish,
|
||||
_name: string,
|
||||
_symbol: string,
|
||||
_decimals: BigNumberish
|
||||
_symbol: string
|
||||
): Promise<BigNumber>;
|
||||
|
||||
name(): Promise<BigNumber>;
|
||||
|
|
|
@ -212,6 +212,11 @@ const _abi = [
|
|||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "uint8",
|
||||
name: "_decimals",
|
||||
type: "uint8"
|
||||
},
|
||||
{
|
||||
internalType: "string",
|
||||
name: "_name",
|
||||
|
@ -221,14 +226,9 @@ const _abi = [
|
|||
internalType: "string",
|
||||
name: "_symbol",
|
||||
type: "string"
|
||||
},
|
||||
{
|
||||
internalType: "uint8",
|
||||
name: "_decimals",
|
||||
type: "uint8"
|
||||
}
|
||||
],
|
||||
name: "init",
|
||||
name: "initialize",
|
||||
outputs: [],
|
||||
stateMutability: "nonpayable",
|
||||
type: "function"
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -1,12 +1,12 @@
|
|||
/* Generated by ts-generator ver. 0.0.8 */
|
||||
/* tslint:disable */
|
||||
|
||||
import {Contract, ContractFactory, Signer} from 'ethers';
|
||||
import {Provider} from 'ethers/providers';
|
||||
import {UnsignedTransaction} from 'ethers/utils/transaction';
|
||||
import { Contract, ContractFactory, Signer } from "ethers";
|
||||
import { Provider } from "ethers/providers";
|
||||
import { UnsignedTransaction } from "ethers/utils/transaction";
|
||||
|
||||
import {TransactionOverrides} from '.';
|
||||
import {FeeProvider} from './FeeProvider';
|
||||
import { TransactionOverrides } from ".";
|
||||
import { FeeProvider } from "./FeeProvider";
|
||||
|
||||
export class FeeProviderFactory extends ContractFactory {
|
||||
constructor(signer?: Signer) {
|
||||
|
@ -25,7 +25,10 @@ export class FeeProviderFactory extends ContractFactory {
|
|||
connect(signer: Signer): FeeProviderFactory {
|
||||
return super.connect(signer) as FeeProviderFactory;
|
||||
}
|
||||
static connect(address: string, signerOrProvider: Signer | Provider): FeeProvider {
|
||||
static connect(
|
||||
address: string,
|
||||
signerOrProvider: Signer | Provider
|
||||
): FeeProvider {
|
||||
return new Contract(address, _abi, signerOrProvider) as FeeProvider;
|
||||
}
|
||||
}
|
||||
|
@ -33,81 +36,81 @@ export class FeeProviderFactory extends ContractFactory {
|
|||
const _abi = [
|
||||
{
|
||||
inputs: [],
|
||||
name: 'FEE_PROVIDER_REVISION',
|
||||
name: "FEE_PROVIDER_REVISION",
|
||||
outputs: [
|
||||
{
|
||||
internalType: 'uint256',
|
||||
name: '',
|
||||
type: 'uint256',
|
||||
},
|
||||
internalType: "uint256",
|
||||
name: "",
|
||||
type: "uint256"
|
||||
}
|
||||
],
|
||||
stateMutability: 'view',
|
||||
type: 'function',
|
||||
stateMutability: "view",
|
||||
type: "function"
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: 'address',
|
||||
name: '_user',
|
||||
type: 'address',
|
||||
internalType: "address",
|
||||
name: "_user",
|
||||
type: "address"
|
||||
},
|
||||
{
|
||||
internalType: 'uint256',
|
||||
name: '_amount',
|
||||
type: 'uint256',
|
||||
},
|
||||
internalType: "uint256",
|
||||
name: "_amount",
|
||||
type: "uint256"
|
||||
}
|
||||
],
|
||||
name: 'calculateLoanOriginationFee',
|
||||
name: "calculateLoanOriginationFee",
|
||||
outputs: [
|
||||
{
|
||||
internalType: 'uint256',
|
||||
name: '',
|
||||
type: 'uint256',
|
||||
},
|
||||
internalType: "uint256",
|
||||
name: "",
|
||||
type: "uint256"
|
||||
}
|
||||
],
|
||||
stateMutability: 'view',
|
||||
type: 'function',
|
||||
stateMutability: "view",
|
||||
type: "function"
|
||||
},
|
||||
{
|
||||
inputs: [],
|
||||
name: 'getLoanOriginationFeePercentage',
|
||||
name: "getLoanOriginationFeePercentage",
|
||||
outputs: [
|
||||
{
|
||||
internalType: 'uint256',
|
||||
name: '',
|
||||
type: 'uint256',
|
||||
},
|
||||
internalType: "uint256",
|
||||
name: "",
|
||||
type: "uint256"
|
||||
}
|
||||
],
|
||||
stateMutability: 'view',
|
||||
type: 'function',
|
||||
stateMutability: "view",
|
||||
type: "function"
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: 'address',
|
||||
name: '_addressesProvider',
|
||||
type: 'address',
|
||||
},
|
||||
internalType: "address",
|
||||
name: "_addressesProvider",
|
||||
type: "address"
|
||||
}
|
||||
],
|
||||
name: 'initialize',
|
||||
name: "initialize",
|
||||
outputs: [],
|
||||
stateMutability: 'nonpayable',
|
||||
type: 'function',
|
||||
stateMutability: "nonpayable",
|
||||
type: "function"
|
||||
},
|
||||
{
|
||||
inputs: [],
|
||||
name: 'originationFeePercentage',
|
||||
name: "originationFeePercentage",
|
||||
outputs: [
|
||||
{
|
||||
internalType: 'uint256',
|
||||
name: '',
|
||||
type: 'uint256',
|
||||
},
|
||||
internalType: "uint256",
|
||||
name: "",
|
||||
type: "uint256"
|
||||
}
|
||||
],
|
||||
stateMutability: 'view',
|
||||
type: 'function',
|
||||
},
|
||||
stateMutability: "view",
|
||||
type: "function"
|
||||
}
|
||||
];
|
||||
|
||||
const _bytecode =
|
||||
'0x60806040526000805534801561001457600080fd5b5061082d806100246000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80639403ed3a1461005c578063b0d73d4e14610076578063c211f9a41461007e578063c4d66de814610086578063e563a7d0146100ae575b600080fd5b6100646100da565b60408051918252519081900360200190f35b6100646100e0565b6100646100e5565b6100ac6004803603602081101561009c57600080fd5b50356001600160a01b03166100eb565b005b610064600480360360408110156100c457600080fd5b506001600160a01b03813516906020013561021f565b60345481565b600181565b60345490565b61011e6040518060400160405280601281526020017124b739b4b2329034b734ba34b0b634bd32b960711b81525061023f565b6000610128610381565b905061015a6040518060400160405280600e81526020016d5265766973696f6e20697320257360901b81525082610386565b61018460405180604001604052806008815260200167546869733a20257360c01b815250306104db565b60015460ff168061019857506101986105d4565b806101a4575060005481115b6101df5760405162461bcd60e51b815260040180806020018281038252602e8152602001806107ca602e913960400191505060405180910390fd5b60015460ff161580156101fe576001805460ff19168117905560008290555b6608e1bc9bf04000603455801561021a576001805460ff191690555b505050565b6000610236603454836105da90919063ffffffff16565b90505b92915050565b6040516020602482018181528351604484015283516000936a636f6e736f6c652e6c6f67938693928392606401918501908083838a5b8381101561028d578181015183820152602001610275565b50505050905090810190601f1680156102ba5780820380516001836020036101000a031916815260200191505b5060408051601f198184030181529181526020820180516001600160e01b031663104c13eb60e21b178152905182519295509350839250908083835b602083106103155780518252601f1990920191602091820191016102f6565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d8060008114610375576040519150601f19603f3d011682016040523d82523d6000602084013e61037a565b606091505b5050505050565b600190565b60006a636f6e736f6c652e6c6f676001600160a01b031683836040516024018080602001838152602001828103825284818151815260200191508051906020019080838360005b838110156103e55781810151838201526020016103cd565b50505050905090810190601f1680156104125780820380516001836020036101000a031916815260200191505b5060408051601f198184030181529181526020820180516001600160e01b03166309710a9d60e41b17815290518251929650945084935091508083835b6020831061046e5780518252601f19909201916020918201910161044f565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d80600081146104ce576040519150601f19603f3d011682016040523d82523d6000602084013e6104d3565b606091505b505050505050565b60006a636f6e736f6c652e6c6f676001600160a01b031683836040516024018080602001836001600160a01b03166001600160a01b03168152602001828103825284818151815260200191508051906020019080838360005b8381101561054c578181015183820152602001610534565b50505050905090810190601f1680156105795780820380516001836020036101000a031916815260200191505b5060408051601f198184030181529181526020820180516001600160e01b031663319af33360e01b17815290518251929650945084935091508083836020831061046e5780518252601f19909201916020918201910161044f565b303b1590565b6000610236670de0b6b3a764000061060a6105fb868663ffffffff61061616565b6706f05b59d3b200009061066f565b9063ffffffff6106c916565b60008261062557506000610239565b8282028284828161063257fe5b04146102365760405162461bcd60e51b81526004018080602001828103825260218152602001806107a96021913960400191505060405180910390fd5b600082820183811015610236576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600061023683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836107925760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561075757818101518382015260200161073f565b50505050905090810190601f1680156107845780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161079e57fe5b049594505050505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a264697066735822122096e37c04d1727fcae260159451045b2fd3d49634fccba582da71becd432f644f64736f6c63430006080033';
|
||||
"0x60806040526000805534801561001457600080fd5b50610411806100246000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80639403ed3a1461005c578063b0d73d4e14610076578063c211f9a41461007e578063c4d66de814610086578063e563a7d0146100ae575b600080fd5b6100646100da565b60408051918252519081900360200190f35b6100646100e0565b6100646100e5565b6100ac6004803603602081101561009c57600080fd5b50356001600160a01b03166100eb565b005b610064600480360360408110156100c457600080fd5b506001600160a01b038135169060200135610193565b60345481565b600181565b60345490565b60006100f56101b3565b60015490915060ff168061010c575061010c6101b8565b80610118575060005481115b6101535760405162461bcd60e51b815260040180806020018281038252602e8152602001806103ae602e913960400191505060405180910390fd5b60015460ff16158015610172576001805460ff19168117905560008290555b6608e1bc9bf04000603455801561018e576001805460ff191690555b505050565b60006101aa603454836101be90919063ffffffff16565b90505b92915050565b600190565b303b1590565b60006101aa670de0b6b3a76400006101ee6101df868663ffffffff6101fa16565b6706f05b59d3b2000090610253565b9063ffffffff6102ad16565b600082610209575060006101ad565b8282028284828161021657fe5b04146101aa5760405162461bcd60e51b815260040180806020018281038252602181526020018061038d6021913960400191505060405180910390fd5b6000828201838110156101aa576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60006101aa83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836103765760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561033b578181015183820152602001610323565b50505050905090810190601f1680156103685780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161038257fe5b049594505050505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212204d77e8d34c5af357117493d51adeef06b96bfc607557f6e85a417e94e7bb28fe64736f6c63430006080033";
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
134
types/LendingPoolConfigurator.d.ts
vendored
134
types/LendingPoolConfigurator.d.ts
vendored
|
@ -1,14 +1,18 @@
|
|||
/* Generated by ts-generator ver. 0.0.8 */
|
||||
/* tslint:disable */
|
||||
|
||||
import {Contract, ContractTransaction, EventFilter, Signer} from 'ethers';
|
||||
import {Listener, Provider} from 'ethers/providers';
|
||||
import {Arrayish, BigNumber, BigNumberish, Interface} from 'ethers/utils';
|
||||
import {TransactionOverrides, TypedEventDescription, TypedFunctionDescription} from '.';
|
||||
import { Contract, ContractTransaction, EventFilter, Signer } from "ethers";
|
||||
import { Listener, Provider } from "ethers/providers";
|
||||
import { Arrayish, BigNumber, BigNumberish, Interface } from "ethers/utils";
|
||||
import {
|
||||
TransactionOverrides,
|
||||
TypedEventDescription,
|
||||
TypedFunctionDescription
|
||||
} from ".";
|
||||
|
||||
interface LendingPoolConfiguratorInterface extends Interface {
|
||||
functions: {
|
||||
CONFIGURATOR_REVISION: TypedFunctionDescription<{encode([]: []): string}>;
|
||||
CONFIGURATOR_REVISION: TypedFunctionDescription<{ encode([]: []): string }>;
|
||||
|
||||
activateReserve: TypedFunctionDescription<{
|
||||
encode([_reserve]: [string]): string;
|
||||
|
@ -35,12 +39,12 @@ interface LendingPoolConfiguratorInterface extends Interface {
|
|||
}>;
|
||||
|
||||
enableReserveAsCollateral: TypedFunctionDescription<{
|
||||
encode([_reserve, _baseLTVasCollateral, _liquidationThreshold, _liquidationBonus]: [
|
||||
string,
|
||||
BigNumberish,
|
||||
BigNumberish,
|
||||
BigNumberish
|
||||
]): string;
|
||||
encode([
|
||||
_reserve,
|
||||
_baseLTVasCollateral,
|
||||
_liquidationThreshold,
|
||||
_liquidationBonus
|
||||
]: [string, BigNumberish, BigNumberish, BigNumberish]): string;
|
||||
}>;
|
||||
|
||||
enableReserveStableRate: TypedFunctionDescription<{
|
||||
|
@ -54,11 +58,11 @@ interface LendingPoolConfiguratorInterface extends Interface {
|
|||
initReserve: TypedFunctionDescription<{
|
||||
encode([
|
||||
_reserve,
|
||||
_aTokenInstance,
|
||||
_stableDebtTokenAddress,
|
||||
_variableDebtTokenAddress,
|
||||
_aTokenImpl,
|
||||
_stableDebtTokenImpl,
|
||||
_variableDebtTokenImpl,
|
||||
_underlyingAssetDecimals,
|
||||
_interestRateStrategyAddress,
|
||||
_interestRateStrategyAddress
|
||||
]: [string, string, string, string, BigNumberish, string]): string;
|
||||
}>;
|
||||
|
||||
|
@ -66,9 +70,9 @@ interface LendingPoolConfiguratorInterface extends Interface {
|
|||
encode([_poolAddressesProvider]: [string]): string;
|
||||
}>;
|
||||
|
||||
pool: TypedFunctionDescription<{encode([]: []): string}>;
|
||||
pool: TypedFunctionDescription<{ encode([]: []): string }>;
|
||||
|
||||
poolAddressesProvider: TypedFunctionDescription<{encode([]: []): string}>;
|
||||
poolAddressesProvider: TypedFunctionDescription<{ encode([]: []): string }>;
|
||||
|
||||
setLiquidationBonus: TypedFunctionDescription<{
|
||||
encode([_reserve, _bonus]: [string, BigNumberish]): string;
|
||||
|
@ -142,11 +146,13 @@ interface LendingPoolConfiguratorInterface extends Interface {
|
|||
}>;
|
||||
|
||||
ReserveInitialized: TypedEventDescription<{
|
||||
encodeTopics([_reserve, _aToken, _interestRateStrategyAddress]: [
|
||||
string | null,
|
||||
string | null,
|
||||
null
|
||||
]): string[];
|
||||
encodeTopics([
|
||||
_reserve,
|
||||
_aToken,
|
||||
_stableDebtToken,
|
||||
_variableDebtToken,
|
||||
_interestRateStrategyAddress
|
||||
]: [string | null, string | null, null, null, null]): string[];
|
||||
}>;
|
||||
|
||||
ReserveInterestRateStrategyChanged: TypedEventDescription<{
|
||||
|
@ -176,13 +182,21 @@ interface LendingPoolConfiguratorInterface extends Interface {
|
|||
}
|
||||
|
||||
export class LendingPoolConfigurator extends Contract {
|
||||
connect(signerOrProvider: Signer | Provider | string): LendingPoolConfigurator;
|
||||
connect(
|
||||
signerOrProvider: Signer | Provider | string
|
||||
): LendingPoolConfigurator;
|
||||
attach(addressOrName: string): LendingPoolConfigurator;
|
||||
deployed(): Promise<LendingPoolConfigurator>;
|
||||
|
||||
on(event: EventFilter | string, listener: Listener): LendingPoolConfigurator;
|
||||
once(event: EventFilter | string, listener: Listener): LendingPoolConfigurator;
|
||||
addListener(eventName: EventFilter | string, listener: Listener): LendingPoolConfigurator;
|
||||
once(
|
||||
event: EventFilter | string,
|
||||
listener: Listener
|
||||
): LendingPoolConfigurator;
|
||||
addListener(
|
||||
eventName: EventFilter | string,
|
||||
listener: Listener
|
||||
): LendingPoolConfigurator;
|
||||
removeAllListeners(eventName: EventFilter | string): LendingPoolConfigurator;
|
||||
removeListener(eventName: any, listener: Listener): LendingPoolConfigurator;
|
||||
|
||||
|
@ -235,13 +249,16 @@ export class LendingPoolConfigurator extends Contract {
|
|||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
freezeReserve(_reserve: string, overrides?: TransactionOverrides): Promise<ContractTransaction>;
|
||||
freezeReserve(
|
||||
_reserve: string,
|
||||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
initReserve(
|
||||
_reserve: string,
|
||||
_aTokenInstance: string,
|
||||
_stableDebtTokenAddress: string,
|
||||
_variableDebtTokenAddress: string,
|
||||
_aTokenImpl: string,
|
||||
_stableDebtTokenImpl: string,
|
||||
_variableDebtTokenImpl: string,
|
||||
_underlyingAssetDecimals: BigNumberish,
|
||||
_interestRateStrategyAddress: string,
|
||||
overrides?: TransactionOverrides
|
||||
|
@ -300,7 +317,10 @@ export class LendingPoolConfigurator extends Contract {
|
|||
|
||||
CONFIGURATOR_REVISION(): Promise<BigNumber>;
|
||||
|
||||
activateReserve(_reserve: string, overrides?: TransactionOverrides): Promise<ContractTransaction>;
|
||||
activateReserve(
|
||||
_reserve: string,
|
||||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
deactivateReserve(
|
||||
_reserve: string,
|
||||
|
@ -341,13 +361,16 @@ export class LendingPoolConfigurator extends Contract {
|
|||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
freezeReserve(_reserve: string, overrides?: TransactionOverrides): Promise<ContractTransaction>;
|
||||
freezeReserve(
|
||||
_reserve: string,
|
||||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
initReserve(
|
||||
_reserve: string,
|
||||
_aTokenInstance: string,
|
||||
_stableDebtTokenAddress: string,
|
||||
_variableDebtTokenAddress: string,
|
||||
_aTokenImpl: string,
|
||||
_stableDebtTokenImpl: string,
|
||||
_variableDebtTokenImpl: string,
|
||||
_underlyingAssetDecimals: BigNumberish,
|
||||
_interestRateStrategyAddress: string,
|
||||
overrides?: TransactionOverrides
|
||||
|
@ -392,7 +415,10 @@ export class LendingPoolConfigurator extends Contract {
|
|||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
unfreezeReserve(_reserve: string, overrides?: TransactionOverrides): Promise<ContractTransaction>;
|
||||
unfreezeReserve(
|
||||
_reserve: string,
|
||||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
updateAToken(
|
||||
_reserve: string,
|
||||
|
@ -403,7 +429,10 @@ export class LendingPoolConfigurator extends Contract {
|
|||
filters: {
|
||||
BorrowingDisabledOnReserve(_reserve: string | null): EventFilter;
|
||||
|
||||
BorrowingEnabledOnReserve(_reserve: null, _stableRateEnabled: null): EventFilter;
|
||||
BorrowingEnabledOnReserve(
|
||||
_reserve: null,
|
||||
_stableRateEnabled: null
|
||||
): EventFilter;
|
||||
|
||||
ReserveActivated(_reserve: string | null): EventFilter;
|
||||
|
||||
|
@ -427,14 +456,22 @@ export class LendingPoolConfigurator extends Contract {
|
|||
ReserveInitialized(
|
||||
_reserve: string | null,
|
||||
_aToken: string | null,
|
||||
_stableDebtToken: null,
|
||||
_variableDebtToken: null,
|
||||
_interestRateStrategyAddress: null
|
||||
): EventFilter;
|
||||
|
||||
ReserveInterestRateStrategyChanged(_reserve: null, _strategy: null): EventFilter;
|
||||
ReserveInterestRateStrategyChanged(
|
||||
_reserve: null,
|
||||
_strategy: null
|
||||
): EventFilter;
|
||||
|
||||
ReserveLiquidationBonusChanged(_reserve: null, _bonus: null): EventFilter;
|
||||
|
||||
ReserveLiquidationThresholdChanged(_reserve: null, _threshold: null): EventFilter;
|
||||
ReserveLiquidationThresholdChanged(
|
||||
_reserve: null,
|
||||
_threshold: null
|
||||
): EventFilter;
|
||||
|
||||
ReserveUnfreezed(_reserve: string | null): EventFilter;
|
||||
|
||||
|
@ -474,9 +511,9 @@ export class LendingPoolConfigurator extends Contract {
|
|||
|
||||
initReserve(
|
||||
_reserve: string,
|
||||
_aTokenInstance: string,
|
||||
_stableDebtTokenAddress: string,
|
||||
_variableDebtTokenAddress: string,
|
||||
_aTokenImpl: string,
|
||||
_stableDebtTokenImpl: string,
|
||||
_variableDebtTokenImpl: string,
|
||||
_underlyingAssetDecimals: BigNumberish,
|
||||
_interestRateStrategyAddress: string
|
||||
): Promise<BigNumber>;
|
||||
|
@ -487,13 +524,22 @@ export class LendingPoolConfigurator extends Contract {
|
|||
|
||||
poolAddressesProvider(): Promise<BigNumber>;
|
||||
|
||||
setLiquidationBonus(_reserve: string, _bonus: BigNumberish): Promise<BigNumber>;
|
||||
setLiquidationBonus(
|
||||
_reserve: string,
|
||||
_bonus: BigNumberish
|
||||
): Promise<BigNumber>;
|
||||
|
||||
setLiquidationThreshold(_reserve: string, _threshold: BigNumberish): Promise<BigNumber>;
|
||||
setLiquidationThreshold(
|
||||
_reserve: string,
|
||||
_threshold: BigNumberish
|
||||
): Promise<BigNumber>;
|
||||
|
||||
setLtv(_reserve: string, _ltv: BigNumberish): Promise<BigNumber>;
|
||||
|
||||
setReserveDecimals(_reserve: string, _decimals: BigNumberish): Promise<BigNumber>;
|
||||
setReserveDecimals(
|
||||
_reserve: string,
|
||||
_decimals: BigNumberish
|
||||
): Promise<BigNumber>;
|
||||
|
||||
setReserveInterestRateStrategyAddress(
|
||||
_reserve: string,
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
8
types/MockAToken.d.ts
vendored
8
types/MockAToken.d.ts
vendored
|
@ -69,7 +69,7 @@ interface MockATokenInterface extends Interface {
|
|||
}>;
|
||||
|
||||
mintOnDeposit: TypedFunctionDescription<{
|
||||
encode([_account, _amount]: [string, BigNumberish]): string;
|
||||
encode([_user, _amount]: [string, BigNumberish]): string;
|
||||
}>;
|
||||
|
||||
name: TypedFunctionDescription<{ encode([]: []): string }>;
|
||||
|
@ -278,7 +278,7 @@ export class MockAToken extends Contract {
|
|||
isTransferAllowed(_user: string, _amount: BigNumberish): Promise<boolean>;
|
||||
|
||||
mintOnDeposit(
|
||||
_account: string,
|
||||
_user: string,
|
||||
_amount: BigNumberish,
|
||||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
@ -391,7 +391,7 @@ export class MockAToken extends Contract {
|
|||
isTransferAllowed(_user: string, _amount: BigNumberish): Promise<boolean>;
|
||||
|
||||
mintOnDeposit(
|
||||
_account: string,
|
||||
_user: string,
|
||||
_amount: BigNumberish,
|
||||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
@ -554,7 +554,7 @@ export class MockAToken extends Contract {
|
|||
|
||||
isTransferAllowed(_user: string, _amount: BigNumberish): Promise<BigNumber>;
|
||||
|
||||
mintOnDeposit(_account: string, _amount: BigNumberish): Promise<BigNumber>;
|
||||
mintOnDeposit(_user: string, _amount: BigNumberish): Promise<BigNumber>;
|
||||
|
||||
name(): Promise<BigNumber>;
|
||||
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -171,4 +171,4 @@ const _abi = [
|
|||
];
|
||||
|
||||
const _bytecode =
|
||||
"0x60806040526000805460ff60a01b1916905534801561001d57600080fd5b506040516109663803806109668339818101604052602081101561004057600080fd5b5051600080546001600160a01b039092166001600160a01b03199092169190911790556108f4806100726000396000f3fe6080604052600436106100385760003560e01c8063388f70f114610044578063405b019d14610072578063c72c4d101461014a5761003f565b3661003f57005b600080fd5b34801561005057600080fd5b506100706004803603602081101561006757600080fd5b5035151561017b565b005b34801561007e57600080fd5b50610070600480360360a081101561009557600080fd5b6001600160a01b03823581169260208101359091169160408201359160608101359181019060a0810160808201356401000000008111156100d557600080fd5b8201836020820111156100e757600080fd5b8035906020019184600183028401116401000000008311171561010957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610199945050505050565b34801561015657600080fd5b5061015f61034e565b604080516001600160a01b039092168252519081900360200190f35b60008054911515600160a01b0260ff60a01b19909216919091179055565b846101a4308261035d565b8411156101f8576040805162461bcd60e51b815260206004820181905260248201527f496e76616c69642062616c616e636520666f722074686520636f6e7472616374604482015290519081900360640190fd5b600054600160a01b900460ff161561025957604080516001600160a01b03881681526020810186905280820185905290517f816f6a6bc084e1996be1a831afa1af30763d0501b6b43b9e1922a11f347366d79181900360600190a150610347565b61026b866001600160a01b0316610412565b6102e257806001600160a01b031663a0712d68846040518263ffffffff1660e01b815260040180828152602001915050602060405180830381600087803b1580156102b557600080fd5b505af11580156102c9573d6000803e3d6000fd5b505050506040513d60208110156102df57600080fd5b50505b6102fc86866102f7878763ffffffff61043716565b610498565b604080516001600160a01b03881681526020810186905280820185905290517f7d94e9d0c906b8d7b2b52a581b9e9ba728aa6f8cd8532bd87243d193f47401be9181900360600190a1505b5050505050565b6000546001600160a01b031681565b6000610371826001600160a01b0316610412565b1561038757506001600160a01b0382163161040c565b816001600160a01b03166370a08231846040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156103dd57600080fd5b505afa1580156103f1573d6000803e3d6000fd5b505050506040513d602081101561040757600080fd5b505190505b92915050565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b600082820183811015610491576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6104a38284836104a8565b505050565b6104a36001600160a01b038316848363ffffffff6104c216565b806104cc576104a3565b6104d583610412565b15610581576040516000906001600160a01b0384169061c35090849084818181858888f193505050503d806000811461052a576040519150601f19603f3d011682016040523d82523d6000602084013e61052f565b606091505b505090508061057b576040805162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b604482015290519081900360640190fd5b506104a3565b6104a36001600160a01b038416838363ffffffff61059b16565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526104a3908490606061063d826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166106999092919063ffffffff16565b8051909150156104a35780806020019051602081101561065c57600080fd5b50516104a35760405162461bcd60e51b815260040180806020018281038252602a815260200180610895602a913960400191505060405180910390fd5b60606106a884846000856106b0565b949350505050565b60606106bb8561085b565b61070c576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b6020831061074b5780518252601f19909201916020918201910161072c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146107ad576040519150601f19603f3d011682016040523d82523d6000602084013e6107b2565b606091505b509150915081156107c65791506106a89050565b8051156107d65780518082602001fd5b8360405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610820578181015183820152602001610808565b50505050905090810190601f16801561084d5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906106a857505015159291505056fe5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a2646970667358221220516cc8692ecd6324970df77ee93fb747bff000502ddb41784874b25d58bf1f1764736f6c63430006080033";
|
||||
"0x60806040526000805460ff60a01b1916905534801561001d57600080fd5b506040516108073803806108078339818101604052602081101561004057600080fd5b5051600080546001600160a01b039092166001600160a01b0319909216919091179055610795806100726000396000f3fe6080604052600436106100385760003560e01c8063388f70f114610044578063405b019d14610072578063c72c4d101461014a5761003f565b3661003f57005b600080fd5b34801561005057600080fd5b506100706004803603602081101561006757600080fd5b5035151561017b565b005b34801561007e57600080fd5b50610070600480360360a081101561009557600080fd5b6001600160a01b03823581169260208101359091169160408201359160608101359181019060a0810160808201356401000000008111156100d557600080fd5b8201836020820111156100e757600080fd5b8035906020019184600183028401116401000000008311171561010957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610199945050505050565b34801561015657600080fd5b5061015f6103a2565b604080516001600160a01b039092168252519081900360200190f35b60008054911515600160a01b0260ff60a01b19909216919091179055565b604080516370a0823160e01b8152306004820152905186916001600160a01b038316916370a0823191602480820192602092909190829003018186803b1580156101e257600080fd5b505afa1580156101f6573d6000803e3d6000fd5b505050506040513d602081101561020c57600080fd5b5051841115610262576040805162461bcd60e51b815260206004820181905260248201527f496e76616c69642062616c616e636520666f722074686520636f6e7472616374604482015290519081900360640190fd5b600054600160a01b900460ff16156102c357604080516001600160a01b03881681526020810186905280820185905290517f816f6a6bc084e1996be1a831afa1af30763d0501b6b43b9e1922a11f347366d79181900360600190a15061039b565b806001600160a01b031663a0712d68846040518263ffffffff1660e01b815260040180828152602001915050602060405180830381600087803b15801561030957600080fd5b505af115801561031d573d6000803e3d6000fd5b505050506040513d602081101561033357600080fd5b506103509050868661034b878763ffffffff6103b116565b610412565b604080516001600160a01b03881681526020810186905280820185905290517f7d94e9d0c906b8d7b2b52a581b9e9ba728aa6f8cd8532bd87243d193f47401be9181900360600190a1505b5050505050565b6000546001600160a01b031681565b60008282018381101561040b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b61041d828483610422565b505050565b61041d6001600160a01b038316848363ffffffff61043c16565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261041d90849060606104de826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661053a9092919063ffffffff16565b80519091501561041d578080602001905160208110156104fd57600080fd5b505161041d5760405162461bcd60e51b815260040180806020018281038252602a815260200180610736602a913960400191505060405180910390fd5b60606105498484600085610551565b949350505050565b606061055c856106fc565b6105ad576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b602083106105ec5780518252601f1990920191602091820191016105cd565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d806000811461064e576040519150601f19603f3d011682016040523d82523d6000602084013e610653565b606091505b509150915081156106675791506105499050565b8051156106775780518082602001fd5b8360405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156106c15781810151838201526020016106a9565b50505050905090810190601f1680156106ee5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061054957505015159291505056fe5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a2646970667358221220a2ae2dcf10cb7c76a949954c150b9f788279726674dc38c1c4d33c369af7ea6864736f6c63430006080033";
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -121,4 +121,4 @@ const _abi = [
|
|||
];
|
||||
|
||||
const _bytecode =
|
||||
"0x608060405234801561001057600080fd5b506040516106b53803806106b58339818101604052602081101561003357600080fd5b5051600080546001600160a01b039092166001600160a01b0319909216919091179055610650806100656000396000f3fe6080604052600436106100295760003560e01c806329589f611461002e5780634f1b86eb146100ec575b600080fd5b6100da600480360361010081101561004557600080fd5b6001600160a01b0382358116926020810135926040820135831692606083013581169260808101359260a08201359260c0830135169190810190610100810160e082013564010000000081111561009b57600080fd5b8201836020820111156100ad57600080fd5b803590602001918460018302840111640100000000831117156100cf57600080fd5b50909250905061011d565b60408051918252519081900360200190f35b3480156100f857600080fd5b50610101610266565b604080516001600160a01b039092168252519081900360200190f35b600080546040805163140e25ad60e31b8152670de0b6b3a7640000600482015290516001600160a01b039092169163a0712d689160248082019260209290919082900301818787803b15801561017257600080fd5b505af1158015610186573d6000803e3d6000fd5b505050506040513d602081101561019c57600080fd5b50516101ef576040805162461bcd60e51b815260206004820181905260248201527f54524144455f574954485f48494e542e205265766572746564206d696e742829604482015290519081900360640190fd5b6101f7610275565b6001600160a01b03168a6001600160a01b03161461022a5761022a6001600160a01b038b1633308c63ffffffff61028d16565b60005461024f906001600160a01b031633670de0b6b3a764000063ffffffff6102ed16565b50670de0b6b3a76400009998505050505050505050565b6000546001600160a01b031681565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee90565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b1790526102e7908590610344565b50505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261033f908490610344565b505050565b6060610399826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166103f59092919063ffffffff16565b80519091501561033f578080602001905160208110156103b857600080fd5b505161033f5760405162461bcd60e51b815260040180806020018281038252602a8152602001806105f1602a913960400191505060405180910390fd5b6060610404848460008561040c565b949350505050565b6060610417856105b7565b610468576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b602083106104a75780518252601f199092019160209182019101610488565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610509576040519150601f19603f3d011682016040523d82523d6000602084013e61050e565b606091505b509150915081156105225791506104049050565b8051156105325780518082602001fd5b8360405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561057c578181015183820152602001610564565b50505050905090810190601f1680156105a95780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061040457505015159291505056fe5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a264697066735822122099f447de7dc340bb9fad6029140c928c6fde2d7c3b3f7bb83714a93e38cb1f2f64736f6c63430006080033";
|
||||
"0x608060405234801561001057600080fd5b506040516105fd3803806105fd8339818101604052602081101561003357600080fd5b5051600080546001600160a01b039092166001600160a01b0319909216919091179055610598806100656000396000f3fe6080604052600436106100295760003560e01c806329589f611461002e5780634f1b86eb146100ec575b600080fd5b6100da600480360361010081101561004557600080fd5b6001600160a01b0382358116926020810135926040820135831692606083013581169260808101359260a08201359260c0830135169190810190610100810160e082013564010000000081111561009b57600080fd5b8201836020820111156100ad57600080fd5b803590602001918460018302840111640100000000831117156100cf57600080fd5b50909250905061011d565b60408051918252519081900360200190f35b3480156100f857600080fd5b50610101610266565b604080516001600160a01b039092168252519081900360200190f35b600080546040805163140e25ad60e31b8152670de0b6b3a7640000600482015290516001600160a01b039092169163a0712d689160248082019260209290919082900301818787803b15801561017257600080fd5b505af1158015610186573d6000803e3d6000fd5b505050506040513d602081101561019c57600080fd5b50516101ef576040805162461bcd60e51b815260206004820181905260248201527f54524144455f574954485f48494e542e205265766572746564206d696e742829604482015290519081900360640190fd5b6101f7610275565b6001600160a01b03168a6001600160a01b03161461022a5761022a6001600160a01b038b1633308c63ffffffff61028d16565b60005461024f906001600160a01b031633670de0b6b3a764000063ffffffff6102ed16565b50670de0b6b3a76400009998505050505050505050565b6000546001600160a01b031681565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee90565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b1790526102e7908590610344565b50505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261033f908490610344565b505050565b610356826001600160a01b03166104fc565b6103a7576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b602083106103e55780518252601f1990920191602091820191016103c6565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610447576040519150601f19603f3d011682016040523d82523d6000602084013e61044c565b606091505b5091509150816104a3576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b8051156102e7578080602001905160208110156104bf57600080fd5b50516102e75760405162461bcd60e51b815260040180806020018281038252602a815260200180610539602a913960400191505060405180910390fd5b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061053057508115155b94935050505056fe5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a26469706673582212204217cd7d546f66051c30fdaa4e283314470f9c5edda974b8ca382dab7b05781364736f6c63430006080033";
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
30
types/StableDebtToken.d.ts
vendored
30
types/StableDebtToken.d.ts
vendored
|
@ -12,6 +12,8 @@ import {
|
|||
|
||||
interface StableDebtTokenInterface extends Interface {
|
||||
functions: {
|
||||
DEBT_TOKEN_REVISION: TypedFunctionDescription<{ encode([]: []): string }>;
|
||||
|
||||
allowance: TypedFunctionDescription<{
|
||||
encode([owner, spender]: [string, string]): string;
|
||||
}>;
|
||||
|
@ -48,11 +50,11 @@ interface StableDebtTokenInterface extends Interface {
|
|||
encode([spender, addedValue]: [string, BigNumberish]): string;
|
||||
}>;
|
||||
|
||||
init: TypedFunctionDescription<{
|
||||
encode([_name, _symbol, _decimals]: [
|
||||
initialize: TypedFunctionDescription<{
|
||||
encode([_decimals, _name, _symbol]: [
|
||||
BigNumberish,
|
||||
string,
|
||||
string,
|
||||
BigNumberish
|
||||
string
|
||||
]): string;
|
||||
}>;
|
||||
|
||||
|
@ -148,6 +150,8 @@ export class StableDebtToken extends Contract {
|
|||
interface: StableDebtTokenInterface;
|
||||
|
||||
functions: {
|
||||
DEBT_TOKEN_REVISION(): Promise<BigNumber>;
|
||||
|
||||
allowance(owner: string, spender: string): Promise<BigNumber>;
|
||||
|
||||
approve(
|
||||
|
@ -184,10 +188,10 @@ export class StableDebtToken extends Contract {
|
|||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
init(
|
||||
initialize(
|
||||
_decimals: BigNumberish,
|
||||
_name: string,
|
||||
_symbol: string,
|
||||
_decimals: BigNumberish,
|
||||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
|
@ -222,6 +226,8 @@ export class StableDebtToken extends Contract {
|
|||
underlyingAssetAddress(): Promise<string>;
|
||||
};
|
||||
|
||||
DEBT_TOKEN_REVISION(): Promise<BigNumber>;
|
||||
|
||||
allowance(owner: string, spender: string): Promise<BigNumber>;
|
||||
|
||||
approve(
|
||||
|
@ -258,10 +264,10 @@ export class StableDebtToken extends Contract {
|
|||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
init(
|
||||
initialize(
|
||||
_decimals: BigNumberish,
|
||||
_name: string,
|
||||
_symbol: string,
|
||||
_decimals: BigNumberish,
|
||||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
|
@ -323,6 +329,8 @@ export class StableDebtToken extends Contract {
|
|||
};
|
||||
|
||||
estimate: {
|
||||
DEBT_TOKEN_REVISION(): Promise<BigNumber>;
|
||||
|
||||
allowance(owner: string, spender: string): Promise<BigNumber>;
|
||||
|
||||
approve(spender: string, _amount: BigNumberish): Promise<BigNumber>;
|
||||
|
@ -349,10 +357,10 @@ export class StableDebtToken extends Contract {
|
|||
addedValue: BigNumberish
|
||||
): Promise<BigNumber>;
|
||||
|
||||
init(
|
||||
initialize(
|
||||
_decimals: BigNumberish,
|
||||
_name: string,
|
||||
_symbol: string,
|
||||
_decimals: BigNumberish
|
||||
_symbol: string
|
||||
): Promise<BigNumber>;
|
||||
|
||||
mint(
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
30
types/VariableDebtToken.d.ts
vendored
30
types/VariableDebtToken.d.ts
vendored
|
@ -12,6 +12,8 @@ import {
|
|||
|
||||
interface VariableDebtTokenInterface extends Interface {
|
||||
functions: {
|
||||
DEBT_TOKEN_REVISION: TypedFunctionDescription<{ encode([]: []): string }>;
|
||||
|
||||
allowance: TypedFunctionDescription<{
|
||||
encode([owner, spender]: [string, string]): string;
|
||||
}>;
|
||||
|
@ -40,11 +42,11 @@ interface VariableDebtTokenInterface extends Interface {
|
|||
encode([spender, addedValue]: [string, BigNumberish]): string;
|
||||
}>;
|
||||
|
||||
init: TypedFunctionDescription<{
|
||||
encode([_name, _symbol, _decimals]: [
|
||||
initialize: TypedFunctionDescription<{
|
||||
encode([_decimals, _name, _symbol]: [
|
||||
BigNumberish,
|
||||
string,
|
||||
string,
|
||||
BigNumberish
|
||||
string
|
||||
]): string;
|
||||
}>;
|
||||
|
||||
|
@ -137,6 +139,8 @@ export class VariableDebtToken extends Contract {
|
|||
interface: VariableDebtTokenInterface;
|
||||
|
||||
functions: {
|
||||
DEBT_TOKEN_REVISION(): Promise<BigNumber>;
|
||||
|
||||
allowance(owner: string, spender: string): Promise<BigNumber>;
|
||||
|
||||
approve(
|
||||
|
@ -169,10 +173,10 @@ export class VariableDebtToken extends Contract {
|
|||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
init(
|
||||
initialize(
|
||||
_decimals: BigNumberish,
|
||||
_name: string,
|
||||
_symbol: string,
|
||||
_decimals: BigNumberish,
|
||||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
|
@ -206,6 +210,8 @@ export class VariableDebtToken extends Contract {
|
|||
underlyingAssetAddress(): Promise<string>;
|
||||
};
|
||||
|
||||
DEBT_TOKEN_REVISION(): Promise<BigNumber>;
|
||||
|
||||
allowance(owner: string, spender: string): Promise<BigNumber>;
|
||||
|
||||
approve(
|
||||
|
@ -238,10 +244,10 @@ export class VariableDebtToken extends Contract {
|
|||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
init(
|
||||
initialize(
|
||||
_decimals: BigNumberish,
|
||||
_name: string,
|
||||
_symbol: string,
|
||||
_decimals: BigNumberish,
|
||||
overrides?: TransactionOverrides
|
||||
): Promise<ContractTransaction>;
|
||||
|
||||
|
@ -303,6 +309,8 @@ export class VariableDebtToken extends Contract {
|
|||
};
|
||||
|
||||
estimate: {
|
||||
DEBT_TOKEN_REVISION(): Promise<BigNumber>;
|
||||
|
||||
allowance(owner: string, spender: string): Promise<BigNumber>;
|
||||
|
||||
approve(spender: string, _amount: BigNumberish): Promise<BigNumber>;
|
||||
|
@ -325,10 +333,10 @@ export class VariableDebtToken extends Contract {
|
|||
addedValue: BigNumberish
|
||||
): Promise<BigNumber>;
|
||||
|
||||
init(
|
||||
initialize(
|
||||
_decimals: BigNumberish,
|
||||
_name: string,
|
||||
_symbol: string,
|
||||
_decimals: BigNumberish
|
||||
_symbol: string
|
||||
): Promise<BigNumber>;
|
||||
|
||||
mint(_user: string, _amount: BigNumberish): Promise<BigNumber>;
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -134,4 +134,4 @@ const _abi = [
|
|||
];
|
||||
|
||||
const _bytecode =
|
||||
"0x608060405234801561001057600080fd5b506040516109863803806109868339818101604052602081101561003357600080fd5b5051600080546001600160a01b039092166001600160a01b0319909216919091179055610921806100656000396000f3fe6080604052600436106100385760003560e01c80639e3c930914610083578063b59b28ef1461014f578063f7888aec146102d35761007e565b3661007e5761004633610320565b61007c576040805162461bcd60e51b8152602060048201526002602482015261191960f11b604482015290519081900360640190fd5b005b600080fd5b34801561008f57600080fd5b506100b6600480360360208110156100a657600080fd5b50356001600160a01b031661035c565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b838110156100fa5781810151838201526020016100e2565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610139578181015183820152602001610121565b5050505090500194505050505060405180910390f35b34801561015b57600080fd5b506102836004803603604081101561017257600080fd5b81019060208101813564010000000081111561018d57600080fd5b82018360208201111561019f57600080fd5b803590602001918460208302840111640100000000831117156101c157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929594936020810193503591505064010000000081111561021157600080fd5b82018360208201111561022357600080fd5b8035906020019184602083028401116401000000008311171561024557600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506106a0945050505050565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156102bf5781810151838201526020016102a7565b505050509050019250505060405180910390f35b3480156102df57600080fd5b5061030e600480360360408110156102f657600080fd5b506001600160a01b038135811691602001351661081c565b60408051918252519081900360200190f35b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061035457508115155b949350505050565b60608060008060009054906101000a90046001600160a01b03166001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156103ae57600080fd5b505afa1580156103c2573d6000803e3d6000fd5b505050506040513d60208110156103d857600080fd5b505160408051630240bc6b60e21b815290519192506060916001600160a01b03841691630902f1ac916004808301926000929190829003018186803b15801561042057600080fd5b505afa158015610434573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561045d57600080fd5b810190808051604051939291908464010000000082111561047d57600080fd5b90830190602082018581111561049257600080fd5b82518660208202830111640100000000821117156104af57600080fd5b82525081516020918201928201910280838360005b838110156104dc5781810151838201526020016104c4565b5050505090500160405250505090506060815167ffffffffffffffff8111801561050557600080fd5b5060405190808252806020026020018201604052801561052f578160200160208202803683370190505b50905060005b8251811015610694576000846001600160a01b0316633e15014185848151811061055b57fe5b60200260200101516040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b031681526020019150506101406040518083038186803b1580156105aa57600080fd5b505afa1580156105be573d6000803e3d6000fd5b505050506040513d6101408110156105d557600080fd5b5061010001519050806106025760008383815181106105f057fe5b6020026020010181815250505061068c565b61062784838151811061061157fe5b60200260200101516001600160a01b03166108c6565b15610666576106498885848151811061063c57fe5b602002602001015161081c565b83838151811061065557fe5b60200260200101818152505061068a565b876001600160a01b03163183838151811061067d57fe5b6020026020010181815250505b505b600101610535565b50909350915050915091565b606080825184510267ffffffffffffffff811180156106be57600080fd5b506040519080825280602002602001820160405280156106e8578160200160208202803683370190505b50905060005b84518110156108125760005b845181101561080957600085518302905061071a86838151811061061157fe5b1561075c5786838151811061072b57fe5b60200260200101516001600160a01b031631848383018151811061074b57fe5b602002602001018181525050610800565b61078186838151811061076b57fe5b60200260200101516001600160a01b0316610320565b6107c2576040805162461bcd60e51b815260206004820152600d60248201526c24a72b20a624a22faa27a5a2a760991b604482015290519081900360640190fd5b6107e58784815181106107d157fe5b602002602001015187848151811061063c57fe5b84838301815181106107f357fe5b6020026020010181815250505b506001016106fa565b506001016106ee565b5090505b92915050565b6000610830826001600160a01b0316610320565b156108be57816001600160a01b03166370a08231846040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561088b57600080fd5b505afa15801561089f573d6000803e3d6000fd5b505050506040513d60208110156108b557600080fd5b50519050610816565b506000610816565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1491905056fea2646970667358221220ba894c2eba77f05be9d541a00a65fbec4e5924a19f513c8f596076cb70bd139c64736f6c63430006080033";
|
||||
"0x608060405234801561001057600080fd5b506040516108bc3803806108bc8339818101604052602081101561003357600080fd5b5051600080546001600160a01b039092166001600160a01b0319909216919091179055610857806100656000396000f3fe6080604052600436106100385760003560e01c80639e3c930914610083578063b59b28ef1461014f578063f7888aec146102d35761007e565b3661007e5761004633610320565b61007c576040805162461bcd60e51b8152602060048201526002602482015261191960f11b604482015290519081900360640190fd5b005b600080fd5b34801561008f57600080fd5b506100b6600480360360208110156100a657600080fd5b50356001600160a01b031661035c565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b838110156100fa5781810151838201526020016100e2565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610139578181015183820152602001610121565b5050505090500194505050505060405180910390f35b34801561015b57600080fd5b506102836004803603604081101561017257600080fd5b81019060208101813564010000000081111561018d57600080fd5b82018360208201111561019f57600080fd5b803590602001918460208302840111640100000000831117156101c157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929594936020810193503591505064010000000081111561021157600080fd5b82018360208201111561022357600080fd5b8035906020019184602083028401116401000000008311171561024557600080fd5b91908080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525092955061064d945050505050565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156102bf5781810151838201526020016102a7565b505050509050019250505060405180910390f35b3480156102df57600080fd5b5061030e600480360360408110156102f657600080fd5b506001600160a01b0381358116916020013516610777565b60408051918252519081900360200190f35b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061035457508115155b949350505050565b60608060008060009054906101000a90046001600160a01b03166001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156103ae57600080fd5b505afa1580156103c2573d6000803e3d6000fd5b505050506040513d60208110156103d857600080fd5b505160408051630240bc6b60e21b815290519192506060916001600160a01b03841691630902f1ac916004808301926000929190829003018186803b15801561042057600080fd5b505afa158015610434573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561045d57600080fd5b810190808051604051939291908464010000000082111561047d57600080fd5b90830190602082018581111561049257600080fd5b82518660208202830111640100000000821117156104af57600080fd5b82525081516020918201928201910280838360005b838110156104dc5781810151838201526020016104c4565b5050505090500160405250505090506060815167ffffffffffffffff8111801561050557600080fd5b5060405190808252806020026020018201604052801561052f578160200160208202803683370190505b50905060005b8251811015610641576000846001600160a01b0316633e15014185848151811061055b57fe5b60200260200101516040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b031681526020019150506101406040518083038186803b1580156105aa57600080fd5b505afa1580156105be573d6000803e3d6000fd5b505050506040513d6101408110156105d557600080fd5b5061010001519050806106025760008383815181106105f057fe5b60200260200101818152505050610639565b61061f8885848151811061061257fe5b6020026020010151610777565b83838151811061062b57fe5b602002602001018181525050505b600101610535565b50909350915050915091565b606080825184510267ffffffffffffffff8111801561066b57600080fd5b50604051908082528060200260200182016040528015610695578160200160208202803683370190505b50905060005b845181101561076d5760005b84518110156107645760008551830290506106dd8683815181106106c757fe5b60200260200101516001600160a01b0316610320565b61071e576040805162461bcd60e51b815260206004820152600d60248201526c24a72b20a624a22faa27a5a2a760991b604482015290519081900360640190fd5b61074187848151811061072d57fe5b602002602001015187848151811061061257fe5b848383018151811061074f57fe5b602002602001018181525050506001016106a7565b5060010161069b565b5090505b92915050565b600061078b826001600160a01b0316610320565b1561081957816001600160a01b03166370a08231846040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156107e657600080fd5b505afa1580156107fa573d6000803e3d6000fd5b505050506040513d602081101561081057600080fd5b50519050610771565b50600061077156fea26469706673582212200c49fc45bf8d6aedaf3cd09ab09eb29f7e718ec1bbd6342feaa0ae4422f04e7464736f6c63430006080033";
|
||||
|
|
Loading…
Reference in New Issue
Block a user