Overview
S Balance
S Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 6 from a total of 6 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
_set Reserves Ma... | 5708165 | 15 days ago | IN | 0 S | 0.00260254 | ||||
Initialize Lendi... | 5650275 | 15 days ago | IN | 0 S | 0.02266836 | ||||
Create Borrowabl... | 5650270 | 15 days ago | IN | 0 S | 0.20886497 | ||||
Create Borrowabl... | 5650268 | 15 days ago | IN | 0 S | 0.2088631 | ||||
Create Collatera... | 5650265 | 15 days ago | IN | 0 S | 0.2329036 | ||||
_set Pending Adm... | 5650163 | 15 days ago | IN | 0 S | 0.0026026 |
Loading...
Loading
Contract Name:
FactoryStable
Compiler Version
v0.5.16+commit.9c3226ce
Optimization Enabled:
Yes with 999999 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// File: contracts\interfaces\IFactory.sol pragma solidity >=0.5.0; interface IFactory { event LendingPoolInitialized(address indexed uniswapV2Pair, address indexed token0, address indexed token1, address collateral, address borrowable0, address borrowable1, uint lendingPoolId); event NewPendingAdmin(address oldPendingAdmin, address newPendingAdmin); event NewAdmin(address oldAdmin, address newAdmin); event NewReservesPendingAdmin(address oldReservesPendingAdmin, address newReservesPendingAdmin); event NewReservesAdmin(address oldReservesAdmin, address newReservesAdmin); event NewReservesManager(address oldReservesManager, address newReservesManager); function admin() external view returns (address); function pendingAdmin() external view returns (address); function reservesAdmin() external view returns (address); function reservesPendingAdmin() external view returns (address); function reservesManager() external view returns (address); function getLendingPool(address uniswapV2Pair) external view returns ( bool initialized, uint24 lendingPoolId, address collateral, address borrowable0, address borrowable1 ); function allLendingPools(uint) external view returns (address uniswapV2Pair); function allLendingPoolsLength() external view returns (uint); function bDeployer() external view returns (address); function cDeployer() external view returns (address); function createCollateral(address uniswapV2Pair) external returns (address collateral); function createBorrowable0(address uniswapV2Pair) external returns (address borrowable0); function createBorrowable1(address uniswapV2Pair) external returns (address borrowable1); function initializeLendingPool(address uniswapV2Pair) external; function _setPendingAdmin(address newPendingAdmin) external; function _acceptAdmin() external; function _setReservesPendingAdmin(address newPendingAdmin) external; function _acceptReservesAdmin() external; function _setReservesManager(address newReservesManager) external; } // File: contracts\interfaces\IBDeployer.sol pragma solidity >=0.5.0; interface IBDeployer { function deployBorrowable(address uniswapV2Pair, uint8 index) external returns (address borrowable); } // File: contracts\interfaces\IBorrowable.sol pragma solidity >=0.5.0; interface IBorrowable { /*** Impermax ERC20 ***/ event Transfer(address indexed from, address indexed to, uint value); event Approval(address indexed owner, address indexed spender, uint value); function name() external pure returns (string memory); function symbol() external pure returns (string memory); function decimals() external pure returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint); function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; /*** Pool Token ***/ event Mint(address indexed sender, address indexed minter, uint mintAmount, uint mintTokens); event Redeem(address indexed sender, address indexed redeemer, uint redeemAmount, uint redeemTokens); event Sync(uint totalBalance); function underlying() external view returns (address); function factory() external view returns (address); function totalBalance() external view returns (uint); function MINIMUM_LIQUIDITY() external pure returns (uint); function exchangeRate() external returns (uint); function mint(address minter) external returns (uint mintTokens); function redeem(address redeemer) external returns (uint redeemAmount); function skim(address to) external; function sync() external; function _setFactory() external; /*** Borrowable ***/ event BorrowApproval(address indexed owner, address indexed spender, uint value); event Borrow(address indexed sender, address indexed borrower, address indexed receiver, uint borrowAmount, uint repayAmount, uint accountBorrowsPrior, uint accountBorrows, uint totalBorrows); event Liquidate(address indexed sender, address indexed borrower, address indexed liquidator, uint seizeTokens, uint repayAmount, uint accountBorrowsPrior, uint accountBorrows, uint totalBorrows); function BORROW_FEE() external pure returns (uint); function collateral() external view returns (address); function reserveFactor() external view returns (uint); function exchangeRateLast() external view returns (uint); function borrowIndex() external view returns (uint); function totalBorrows() external view returns (uint); function borrowAllowance(address owner, address spender) external view returns (uint); function borrowBalance(address borrower) external view returns (uint); function borrowTracker() external view returns (address); function BORROW_PERMIT_TYPEHASH() external pure returns (bytes32); function borrowApprove(address spender, uint256 value) external returns (bool); function borrowPermit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; function borrow(address borrower, address receiver, uint borrowAmount, bytes calldata data) external; function liquidate(address borrower, address liquidator) external returns (uint seizeTokens); function trackBorrow(address borrower) external; /*** Borrowable Interest Rate Model ***/ event AccrueInterest(uint interestAccumulated, uint borrowIndex, uint totalBorrows); event CalculateKink(uint kinkRate); event CalculateBorrowRate(uint borrowRate); function KINK_BORROW_RATE_MAX() external pure returns (uint); function KINK_BORROW_RATE_MIN() external pure returns (uint); function KINK_MULTIPLIER() external pure returns (uint); function borrowRate() external view returns (uint); function kinkBorrowRate() external view returns (uint); function kinkUtilizationRate() external view returns (uint); function adjustSpeed() external view returns (uint); function rateUpdateTimestamp() external view returns (uint32); function accrualTimestamp() external view returns (uint32); function accrueInterest() external; /*** Borrowable Setter ***/ event NewReserveFactor(uint newReserveFactor); event NewKinkUtilizationRate(uint newKinkUtilizationRate); event NewAdjustSpeed(uint newAdjustSpeed); event NewBorrowTracker(address newBorrowTracker); function RESERVE_FACTOR_MAX() external pure returns (uint); function KINK_UR_MIN() external pure returns (uint); function KINK_UR_MAX() external pure returns (uint); function ADJUST_SPEED_MIN() external pure returns (uint); function ADJUST_SPEED_MAX() external pure returns (uint); function _initialize ( string calldata _name, string calldata _symbol, address _underlying, address _collateral ) external; function _setReserveFactor(uint newReserveFactor) external; function _setKinkUtilizationRate(uint newKinkUtilizationRate) external; function _setAdjustSpeed(uint newAdjustSpeed) external; function _setBorrowTracker(address newBorrowTracker) external; } // File: contracts\interfaces\ICDeployer.sol pragma solidity >=0.5.0; interface ICDeployer { function deployCollateral(address uniswapV2Pair) external returns (address collateral); } // File: contracts\interfaces\ICollateral.sol pragma solidity >=0.5.0; interface ICollateral { /*** Impermax ERC20 ***/ event Transfer(address indexed from, address indexed to, uint value); event Approval(address indexed owner, address indexed spender, uint value); function name() external pure returns (string memory); function symbol() external pure returns (string memory); function decimals() external pure returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint); function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; /*** Pool Token ***/ event Mint(address indexed sender, address indexed minter, uint mintAmount, uint mintTokens); event Redeem(address indexed sender, address indexed redeemer, uint redeemAmount, uint redeemTokens); event Sync(uint totalBalance); function underlying() external view returns (address); function factory() external view returns (address); function totalBalance() external view returns (uint); function MINIMUM_LIQUIDITY() external pure returns (uint); function exchangeRate() external returns (uint); function mint(address minter) external returns (uint mintTokens); function redeem(address redeemer) external returns (uint redeemAmount); function skim(address to) external; function sync() external; function _setFactory() external; /*** Collateral ***/ function borrowable0() external view returns (address); function borrowable1() external view returns (address); function safetyMarginSqrt() external view returns (uint); function liquidationIncentive() external view returns (uint); function liquidationFee() external view returns (uint); function liquidationPenalty() external view returns (uint); function getTwapReserves() external returns(uint112 twapReserve0, uint112 twapReserve1); function getPrices() external returns (uint price0, uint price1); function tokensUnlocked(address from, uint value) external returns (bool); function accountLiquidityAmounts(address account, uint amount0, uint amount1) external returns (uint liquidity, uint shortfall); function accountLiquidity(address account) external returns (uint liquidity, uint shortfall); function canBorrow(address account, address borrowable, uint accountBorrows) external returns (bool); function seize(address liquidator, address borrower, uint repayAmount) external returns (uint seizeTokens); function flashRedeem(address redeemer, uint redeemAmount, bytes calldata data) external; /*** Collateral Setter ***/ event NewSafetyMargin(uint newSafetyMarginSqrt); event NewLiquidationIncentive(uint newLiquidationIncentive); event NewLiquidationFee(uint newLiquidationFee); function SAFETY_MARGIN_MIN() external pure returns (uint); function SAFETY_MARGIN_MAX() external pure returns (uint); function LIQUIDATION_INCENTIVE_MIN() external pure returns (uint); function LIQUIDATION_INCENTIVE_MAX() external pure returns (uint); function LIQUIDATION_FEE_MAX() external pure returns (uint); function _initialize ( string calldata _name, string calldata _symbol, address _underlying, address _borrowable0, address _borrowable1 ) external; function _setSafetyMarginSqrt(uint newSafetyMarginSqrt) external; function _setLiquidationIncentive(uint newLiquidationIncentive) external; function _setLiquidationFee(uint newLiquidationFee) external; } // File: contracts\interfaces\IERC20.sol pragma solidity >=0.5.0; interface IERC20 { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(address indexed from, address indexed to, uint value); function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); } // File: contracts\interfaces\IUniswapV2Pair.sol pragma solidity >=0.5.0; interface IUniswapV2Pair { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(address indexed from, address indexed to, uint value); function stable() external view returns (bool); function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); function token0() external view returns (address); function token1() external view returns (address); function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast); function price0CumulativeLast() external view returns (uint); } // File: contracts\Factory.sol pragma solidity =0.5.16; contract FactoryStable is IFactory { address public admin; address public pendingAdmin; address public reservesAdmin; address public reservesPendingAdmin; address public reservesManager; struct LendingPool { bool initialized; uint24 lendingPoolId; address collateral; address borrowable0; address borrowable1; } mapping(address => LendingPool) public getLendingPool; // get by UniswapV2Pair address[] public allLendingPools; // address of the UniswapV2Pair function allLendingPoolsLength() external view returns (uint) { return allLendingPools.length; } IBDeployer public bDeployer; ICDeployer public cDeployer; event LendingPoolInitialized(address indexed uniswapV2Pair, address indexed token0, address indexed token1, address collateral, address borrowable0, address borrowable1, uint lendingPoolId); event NewPendingAdmin(address oldPendingAdmin, address newPendingAdmin); event NewAdmin(address oldAdmin, address newAdmin); event NewReservesPendingAdmin(address oldReservesPendingAdmin, address newReservesPendingAdmin); event NewReservesAdmin(address oldReservesAdmin, address newReservesAdmin); event NewReservesManager(address oldReservesManager, address newReservesManager); constructor(address _admin, address _reservesAdmin, IBDeployer _bDeployer, ICDeployer _cDeployer) public { admin = _admin; reservesAdmin = _reservesAdmin; bDeployer = _bDeployer; cDeployer = _cDeployer; emit NewAdmin(address(0), _admin); emit NewReservesAdmin(address(0), _reservesAdmin); } function _getTokens(address uniswapV2Pair) private view returns (address token0, address token1) { require(IUniswapV2Pair(uniswapV2Pair).stable(), "Impermax: VOLATILE_PAIR"); token0 = IUniswapV2Pair(uniswapV2Pair).token0(); token1 = IUniswapV2Pair(uniswapV2Pair).token1(); } function _createLendingPool(address uniswapV2Pair) private { if (getLendingPool[uniswapV2Pair].lendingPoolId != 0) return; allLendingPools.push(uniswapV2Pair); getLendingPool[uniswapV2Pair] = LendingPool(false, uint24(allLendingPools.length), address(0), address(0), address(0)); } function createCollateral(address uniswapV2Pair) external returns (address collateral) { _getTokens(uniswapV2Pair); require(getLendingPool[uniswapV2Pair].collateral == address(0), "Impermax: ALREADY_EXISTS"); collateral = cDeployer.deployCollateral(uniswapV2Pair); ICollateral(collateral)._setFactory(); _createLendingPool(uniswapV2Pair); getLendingPool[uniswapV2Pair].collateral = collateral; } function createBorrowable0(address uniswapV2Pair) external returns (address borrowable0) { _getTokens(uniswapV2Pair); require(getLendingPool[uniswapV2Pair].borrowable0 == address(0), "Impermax: ALREADY_EXISTS"); borrowable0 = bDeployer.deployBorrowable(uniswapV2Pair, 0); IBorrowable(borrowable0)._setFactory(); _createLendingPool(uniswapV2Pair); getLendingPool[uniswapV2Pair].borrowable0 = borrowable0; } function createBorrowable1(address uniswapV2Pair) external returns (address borrowable1) { _getTokens(uniswapV2Pair); require(getLendingPool[uniswapV2Pair].borrowable1 == address(0), "Impermax: ALREADY_EXISTS"); borrowable1 = bDeployer.deployBorrowable(uniswapV2Pair, 1); IBorrowable(borrowable1)._setFactory(); _createLendingPool(uniswapV2Pair); getLendingPool[uniswapV2Pair].borrowable1 = borrowable1; } function initializeLendingPool(address uniswapV2Pair) external { (address token0, address token1) = _getTokens(uniswapV2Pair); LendingPool memory lPool = getLendingPool[uniswapV2Pair]; require(!lPool.initialized, "Impermax: ALREADY_INITIALIZED"); require(lPool.collateral != address(0), "Impermax: COLLATERALIZABLE_NOT_CREATED"); require(lPool.borrowable0 != address(0), "Impermax: BORROWABLE0_NOT_CREATED"); require(lPool.borrowable1 != address(0), "Impermax: BORROWABLE1_NOT_CREATED"); ICollateral(lPool.collateral)._initialize("Impermax Collateral", "imxC", uniswapV2Pair, lPool.borrowable0, lPool.borrowable1); IBorrowable(lPool.borrowable0)._initialize("Impermax Borrowable", "imxB", token0, lPool.collateral); IBorrowable(lPool.borrowable1)._initialize("Impermax Borrowable", "imxB", token1, lPool.collateral); getLendingPool[uniswapV2Pair].initialized = true; emit LendingPoolInitialized(uniswapV2Pair, token0, token1, lPool.collateral, lPool.borrowable0, lPool.borrowable1, lPool.lendingPoolId); } function _setPendingAdmin(address newPendingAdmin) external { require(msg.sender == admin, "Impermax: UNAUTHORIZED"); address oldPendingAdmin = pendingAdmin; pendingAdmin = newPendingAdmin; emit NewPendingAdmin(oldPendingAdmin, newPendingAdmin); } function _acceptAdmin() external { require(msg.sender == pendingAdmin, "Impermax: UNAUTHORIZED"); address oldAdmin = admin; address oldPendingAdmin = pendingAdmin; admin = pendingAdmin; pendingAdmin = address(0); emit NewAdmin(oldAdmin, admin); emit NewPendingAdmin(oldPendingAdmin, address(0)); } function _setReservesPendingAdmin(address newReservesPendingAdmin) external { require(msg.sender == reservesAdmin, "Impermax: UNAUTHORIZED"); address oldReservesPendingAdmin = reservesPendingAdmin; reservesPendingAdmin = newReservesPendingAdmin; emit NewReservesPendingAdmin(oldReservesPendingAdmin, newReservesPendingAdmin); } function _acceptReservesAdmin() external { require(msg.sender == reservesPendingAdmin, "Impermax: UNAUTHORIZED"); address oldReservesAdmin = reservesAdmin; address oldReservesPendingAdmin = reservesPendingAdmin; reservesAdmin = reservesPendingAdmin; reservesPendingAdmin = address(0); emit NewReservesAdmin(oldReservesAdmin, reservesAdmin); emit NewReservesPendingAdmin(oldReservesPendingAdmin, address(0)); } function _setReservesManager(address newReservesManager) external { require(msg.sender == reservesAdmin, "Impermax: UNAUTHORIZED"); address oldReservesManager = reservesManager; reservesManager = newReservesManager; emit NewReservesManager(oldReservesManager, newReservesManager); } }
{ "optimizer": { "enabled": true, "runs": 999999 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_admin","type":"address"},{"internalType":"address","name":"_reservesAdmin","type":"address"},{"internalType":"contract IBDeployer","name":"_bDeployer","type":"address"},{"internalType":"contract ICDeployer","name":"_cDeployer","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"uniswapV2Pair","type":"address"},{"indexed":true,"internalType":"address","name":"token0","type":"address"},{"indexed":true,"internalType":"address","name":"token1","type":"address"},{"indexed":false,"internalType":"address","name":"collateral","type":"address"},{"indexed":false,"internalType":"address","name":"borrowable0","type":"address"},{"indexed":false,"internalType":"address","name":"borrowable1","type":"address"},{"indexed":false,"internalType":"uint256","name":"lendingPoolId","type":"uint256"}],"name":"LendingPoolInitialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"NewAdmin","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldPendingAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newPendingAdmin","type":"address"}],"name":"NewPendingAdmin","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldReservesAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newReservesAdmin","type":"address"}],"name":"NewReservesAdmin","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldReservesManager","type":"address"},{"indexed":false,"internalType":"address","name":"newReservesManager","type":"address"}],"name":"NewReservesManager","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldReservesPendingAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newReservesPendingAdmin","type":"address"}],"name":"NewReservesPendingAdmin","type":"event"},{"constant":false,"inputs":[],"name":"_acceptAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"_acceptReservesAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newPendingAdmin","type":"address"}],"name":"_setPendingAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newReservesManager","type":"address"}],"name":"_setReservesManager","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newReservesPendingAdmin","type":"address"}],"name":"_setReservesPendingAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"allLendingPools","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"allLendingPoolsLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"bDeployer","outputs":[{"internalType":"contract IBDeployer","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"cDeployer","outputs":[{"internalType":"contract ICDeployer","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"uniswapV2Pair","type":"address"}],"name":"createBorrowable0","outputs":[{"internalType":"address","name":"borrowable0","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"uniswapV2Pair","type":"address"}],"name":"createBorrowable1","outputs":[{"internalType":"address","name":"borrowable1","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"uniswapV2Pair","type":"address"}],"name":"createCollateral","outputs":[{"internalType":"address","name":"collateral","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"getLendingPool","outputs":[{"internalType":"bool","name":"initialized","type":"bool"},{"internalType":"uint24","name":"lendingPoolId","type":"uint24"},{"internalType":"address","name":"collateral","type":"address"},{"internalType":"address","name":"borrowable0","type":"address"},{"internalType":"address","name":"borrowable1","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"uniswapV2Pair","type":"address"}],"name":"initializeLendingPool","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"pendingAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reservesAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reservesManager","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reservesPendingAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b50604051611d83380380611d838339818101604052608081101561003357600080fd5b508051602080830151604080850151606090950151600080546001600160a01b03199081166001600160a01b038089169182178455600280548416828916179055600780548416828c161790556008805490931690851617909155835191825294810194909452815194959294929390927ff9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc929181900390910190a160408051600081526001600160a01b038516602082015281517fa328ba21363a99cbf330243928bb26a15acf20bf43166ef838e67ff5d84d4ae7929181900390910190a150505050611c5d806101266000396000f3fe608060405234801561001057600080fd5b50600436106101515760003560e01c80639e1348e3116100cd578063d407112711610081578063e9c714f211610066578063e9c714f21461039f578063eb5ab75f146103a7578063f851a440146103da57610151565b8063d40711271461037a578063db5a26901461039757610151565b8063b658ca75116100b2578063b658ca75146102e1578063b71d1a0c14610314578063cbed6d711461034757610151565b80639e1348e3146102a6578063b1ccc03e146102ae57610151565b806349a78838116101245780637a4660d5116101095780637a4660d51461028c578063822d73b214610294578063998c077d1461029c57610151565b806349a788381461023f578063714c02061461027257610151565b80630572bf5f1461015657806323c6145d146101d3578063267822471461022f578063345ef94114610237575b600080fd5b6101896004803603602081101561016c57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166103e2565b60408051951515865262ffffff909416602086015273ffffffffffffffffffffffffffffffffffffffff928316858501529082166060850152166080830152519081900360a00190f35b610206600480360360208110156101e957600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610436565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61020661066c565b610206610688565b6102066004803603602081101561025557600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166106a4565b61027a6108d8565b60408051918252519081900360200190f35b6102066108de565b6102066108fa565b6102a4610916565b005b610206610a81565b6102a4600480360360208110156102c457600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610a9d565b6102a4600480360360208110156102f757600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610bab565b6102a46004803603602081101561032a57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166111d2565b6102066004803603602081101561035d57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166112e0565b6102066004803603602081101561039057600080fd5b5035611512565b610206611546565b6102a4611562565b6102a4600480360360208110156103bd57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166116cd565b6102066117db565b60056020526000908152604090208054600182015460029092015460ff82169262ffffff6101008404169273ffffffffffffffffffffffffffffffffffffffff640100000000909104811692918116911685565b6000610441826117f7565b505073ffffffffffffffffffffffffffffffffffffffff828116600090815260056020526040902054640100000000900416156104df57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f496d7065726d61783a20414c52454144595f4558495354530000000000000000604482015290519081900360640190fd5b600854604080517f7924fedd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015291519190921691637924fedd9160248083019260209291908290030181600087803b15801561055457600080fd5b505af1158015610568573d6000803e3d6000fd5b505050506040513d602081101561057e57600080fd5b5051604080517f4a5d316c000000000000000000000000000000000000000000000000000000008152905191925073ffffffffffffffffffffffffffffffffffffffff831691634a5d316c9160048082019260009290919082900301818387803b1580156105eb57600080fd5b505af11580156105ff573d6000803e3d6000fd5b5050505061060c826119e7565b73ffffffffffffffffffffffffffffffffffffffff91821660009081526005602052604090208054928216640100000000027fffffffffffffffff0000000000000000000000000000000000000000ffffffff9093169290921790915590565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b60045473ffffffffffffffffffffffffffffffffffffffff1681565b60006106af826117f7565b505073ffffffffffffffffffffffffffffffffffffffff828116600090815260056020526040902060010154161561074857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f496d7065726d61783a20414c52454144595f4558495354530000000000000000604482015290519081900360640190fd5b600754604080517f54bcd7ad00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015260006024830181905292519316926354bcd7ad92604480840193602093929083900390910190829087803b1580156107c657600080fd5b505af11580156107da573d6000803e3d6000fd5b505050506040513d60208110156107f057600080fd5b5051604080517f4a5d316c000000000000000000000000000000000000000000000000000000008152905191925073ffffffffffffffffffffffffffffffffffffffff831691634a5d316c9160048082019260009290919082900301818387803b15801561085d57600080fd5b505af1158015610871573d6000803e3d6000fd5b5050505061087e826119e7565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260056020526040902060010180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169282169290921790915590565b60065490565b60085473ffffffffffffffffffffffffffffffffffffffff1681565b60025473ffffffffffffffffffffffffffffffffffffffff1681565b60035473ffffffffffffffffffffffffffffffffffffffff16331461099c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f496d7065726d61783a20554e415554484f52495a454400000000000000000000604482015290519081900360640190fd5b600280546003805473ffffffffffffffffffffffffffffffffffffffff8082167fffffffffffffffffffffffff000000000000000000000000000000000000000080861682179687905590921690925560408051938316808552949092166020840152815190927fa328ba21363a99cbf330243928bb26a15acf20bf43166ef838e67ff5d84d4ae792908290030190a16040805173ffffffffffffffffffffffffffffffffffffffff831681526000602082015281517f01d5e27ed5584d16c62ba1a14cfde0783f979d4797a3fc41342aff17d8ef5b41929181900390910190a15050565b60035473ffffffffffffffffffffffffffffffffffffffff1681565b60025473ffffffffffffffffffffffffffffffffffffffff163314610b2357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f496d7065726d61783a20554e415554484f52495a454400000000000000000000604482015290519081900360640190fd5b6003805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040805191909216808252602082019390935281517f01d5e27ed5584d16c62ba1a14cfde0783f979d4797a3fc41342aff17d8ef5b41929181900390910190a15050565b600080610bb7836117f7565b91509150610bc3611b92565b5073ffffffffffffffffffffffffffffffffffffffff808416600090815260056020908152604091829020825160a081018452815460ff8116158015835262ffffff61010083041694830194909452640100000000900485169381019390935260018101548416606084015260020154909216608082015290610ca757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f496d7065726d61783a20414c52454144595f494e495449414c495a4544000000604482015290519081900360640190fd5b604081015173ffffffffffffffffffffffffffffffffffffffff16610d17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180611be26026913960400191505060405180910390fd5b606081015173ffffffffffffffffffffffffffffffffffffffff16610d87576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180611c086021913960400191505060405180910390fd5b608081015173ffffffffffffffffffffffffffffffffffffffff16610df7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180611bc16021913960400191505060405180910390fd5b6040808201516060830151608084015183517fc548e3c500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660448301529283166064820152908216608482015260a0600480830191909152601360a48301527f496d7065726d617820436f6c6c61746572616c0000000000000000000000000060c483015260e0602483015260e48201527f696d784300000000000000000000000000000000000000000000000000000000610104820152925191169163c548e3c59161012480830192600092919082900301818387803b158015610ef057600080fd5b505af1158015610f04573d6000803e3d6000fd5b505050606082015160408084015181517f6a030c1100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff888116604483015291821660648201526080600480830191909152601360848301527f496d7065726d617820426f72726f7761626c650000000000000000000000000060a483015260c0602483015260c48201527f696d78420000000000000000000000000000000000000000000000000000000060e4820152915192169250636a030c119161010480830192600092919082900301818387803b158015610ff357600080fd5b505af1158015611007573d6000803e3d6000fd5b5050505060808181015160408084015181517f6a030c1100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87811660448301529182166064820152600480820195909552601360848201527f496d7065726d617820426f72726f7761626c650000000000000000000000000060a482015260c0602482015260c48101949094527f696d78420000000000000000000000000000000000000000000000000000000060e48501529051911691636a030c119161010480830192600092919082900301818387803b1580156110f857600080fd5b505af115801561110c573d6000803e3d6000fd5b50505073ffffffffffffffffffffffffffffffffffffffff80861660008181526005602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055858201516060808801516080808a01518a8601518751958a168652928916958501959095529387168386015262ffffff169082015291518785169550938816937f4c3ab495dc8ebd1b2f3232d7632e54411bc7e4d111475e7fbbd5547d9a28c4959281900390910190a450505050565b60005473ffffffffffffffffffffffffffffffffffffffff16331461125857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f496d7065726d61783a20554e415554484f52495a454400000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040805191909216808252602082019390935281517fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a9929181900390910190a15050565b60006112eb826117f7565b505073ffffffffffffffffffffffffffffffffffffffff828116600090815260056020526040902060020154161561138457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f496d7065726d61783a20414c52454144595f4558495354530000000000000000604482015290519081900360640190fd5b600754604080517f54bcd7ad00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015260016024830152915191909216916354bcd7ad9160448083019260209291908290030181600087803b15801561140057600080fd5b505af1158015611414573d6000803e3d6000fd5b505050506040513d602081101561142a57600080fd5b5051604080517f4a5d316c000000000000000000000000000000000000000000000000000000008152905191925073ffffffffffffffffffffffffffffffffffffffff831691634a5d316c9160048082019260009290919082900301818387803b15801561149757600080fd5b505af11580156114ab573d6000803e3d6000fd5b505050506114b8826119e7565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260056020526040902060020180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169282169290921790915590565b6006818154811061151f57fe5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b60075473ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff1633146115e857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f496d7065726d61783a20554e415554484f52495a454400000000000000000000604482015290519081900360640190fd5b600080546001805473ffffffffffffffffffffffffffffffffffffffff8082167fffffffffffffffffffffffff000000000000000000000000000000000000000080861682179687905590921690925560408051938316808552949092166020840152815190927ff9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc92908290030190a16040805173ffffffffffffffffffffffffffffffffffffffff831681526000602082015281517fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a9929181900390910190a15050565b60025473ffffffffffffffffffffffffffffffffffffffff16331461175357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f496d7065726d61783a20554e415554484f52495a454400000000000000000000604482015290519081900360640190fd5b6004805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040805191909216808252602082019390935281517f324bacfad26225895fcf55780481bec4ce49013c92500fa1c25626ff43fbf661929181900390910190a15050565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b6000808273ffffffffffffffffffffffffffffffffffffffff166322be3de16040518163ffffffff1660e01b815260040160206040518083038186803b15801561184057600080fd5b505afa158015611854573d6000803e3d6000fd5b505050506040513d602081101561186a57600080fd5b50516118d757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f496d7065726d61783a20564f4c4154494c455f50414952000000000000000000604482015290519081900360640190fd5b8273ffffffffffffffffffffffffffffffffffffffff16630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b15801561191d57600080fd5b505afa158015611931573d6000803e3d6000fd5b505050506040513d602081101561194757600080fd5b5051604080517fd21220a7000000000000000000000000000000000000000000000000000000008152905191935073ffffffffffffffffffffffffffffffffffffffff85169163d21220a791600480820192602092909190829003018186803b1580156119b357600080fd5b505afa1580156119c7573d6000803e3d6000fd5b505050506040513d60208110156119dd57600080fd5b5051919391925050565b73ffffffffffffffffffffffffffffffffffffffff8116600090815260056020526040902054610100900462ffffff1615611a2157611b8f565b60068054600181810183557ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f909101805473ffffffffffffffffffffffffffffffffffffffff8086167fffffffffffffffffffffffff000000000000000000000000000000000000000092831681179093556040805160a0810182526000808252965462ffffff90811660208381019182528385018a8152606085018b8152608086018c8152998c5260059092529490992092518354915194518616640100000000027fffffffffffffffff0000000000000000000000000000000000000000ffffffff95909316610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000ff9115157fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff009093169290921716179290921691909117815594519385018054948216948316949094179093559051600290930180549390921692169190911790555b50565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091529056fe496d7065726d61783a20424f52524f5741424c45315f4e4f545f43524541544544496d7065726d61783a20434f4c4c41544552414c495a41424c455f4e4f545f43524541544544496d7065726d61783a20424f52524f5741424c45305f4e4f545f43524541544544a265627a7a72315820e5234528bcab8115d081d366921f2e5d3dacad6bea6aec19c20c4d80f6e2279c64736f6c634300051000320000000000000000000000007226c7ca07056c655865216e04512e9b287829590000000000000000000000009fd93712400902bff6040efa72b28bf80152f05600000000000000000000000026c37dacd046975230ba8c3658e6c5cdaf760dd8000000000000000000000000e770c8b97b3e2e053471ddb96ea7b6b05303c6a9
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101515760003560e01c80639e1348e3116100cd578063d407112711610081578063e9c714f211610066578063e9c714f21461039f578063eb5ab75f146103a7578063f851a440146103da57610151565b8063d40711271461037a578063db5a26901461039757610151565b8063b658ca75116100b2578063b658ca75146102e1578063b71d1a0c14610314578063cbed6d711461034757610151565b80639e1348e3146102a6578063b1ccc03e146102ae57610151565b806349a78838116101245780637a4660d5116101095780637a4660d51461028c578063822d73b214610294578063998c077d1461029c57610151565b806349a788381461023f578063714c02061461027257610151565b80630572bf5f1461015657806323c6145d146101d3578063267822471461022f578063345ef94114610237575b600080fd5b6101896004803603602081101561016c57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166103e2565b60408051951515865262ffffff909416602086015273ffffffffffffffffffffffffffffffffffffffff928316858501529082166060850152166080830152519081900360a00190f35b610206600480360360208110156101e957600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610436565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61020661066c565b610206610688565b6102066004803603602081101561025557600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166106a4565b61027a6108d8565b60408051918252519081900360200190f35b6102066108de565b6102066108fa565b6102a4610916565b005b610206610a81565b6102a4600480360360208110156102c457600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610a9d565b6102a4600480360360208110156102f757600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610bab565b6102a46004803603602081101561032a57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166111d2565b6102066004803603602081101561035d57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166112e0565b6102066004803603602081101561039057600080fd5b5035611512565b610206611546565b6102a4611562565b6102a4600480360360208110156103bd57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166116cd565b6102066117db565b60056020526000908152604090208054600182015460029092015460ff82169262ffffff6101008404169273ffffffffffffffffffffffffffffffffffffffff640100000000909104811692918116911685565b6000610441826117f7565b505073ffffffffffffffffffffffffffffffffffffffff828116600090815260056020526040902054640100000000900416156104df57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f496d7065726d61783a20414c52454144595f4558495354530000000000000000604482015290519081900360640190fd5b600854604080517f7924fedd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015291519190921691637924fedd9160248083019260209291908290030181600087803b15801561055457600080fd5b505af1158015610568573d6000803e3d6000fd5b505050506040513d602081101561057e57600080fd5b5051604080517f4a5d316c000000000000000000000000000000000000000000000000000000008152905191925073ffffffffffffffffffffffffffffffffffffffff831691634a5d316c9160048082019260009290919082900301818387803b1580156105eb57600080fd5b505af11580156105ff573d6000803e3d6000fd5b5050505061060c826119e7565b73ffffffffffffffffffffffffffffffffffffffff91821660009081526005602052604090208054928216640100000000027fffffffffffffffff0000000000000000000000000000000000000000ffffffff9093169290921790915590565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b60045473ffffffffffffffffffffffffffffffffffffffff1681565b60006106af826117f7565b505073ffffffffffffffffffffffffffffffffffffffff828116600090815260056020526040902060010154161561074857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f496d7065726d61783a20414c52454144595f4558495354530000000000000000604482015290519081900360640190fd5b600754604080517f54bcd7ad00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015260006024830181905292519316926354bcd7ad92604480840193602093929083900390910190829087803b1580156107c657600080fd5b505af11580156107da573d6000803e3d6000fd5b505050506040513d60208110156107f057600080fd5b5051604080517f4a5d316c000000000000000000000000000000000000000000000000000000008152905191925073ffffffffffffffffffffffffffffffffffffffff831691634a5d316c9160048082019260009290919082900301818387803b15801561085d57600080fd5b505af1158015610871573d6000803e3d6000fd5b5050505061087e826119e7565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260056020526040902060010180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169282169290921790915590565b60065490565b60085473ffffffffffffffffffffffffffffffffffffffff1681565b60025473ffffffffffffffffffffffffffffffffffffffff1681565b60035473ffffffffffffffffffffffffffffffffffffffff16331461099c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f496d7065726d61783a20554e415554484f52495a454400000000000000000000604482015290519081900360640190fd5b600280546003805473ffffffffffffffffffffffffffffffffffffffff8082167fffffffffffffffffffffffff000000000000000000000000000000000000000080861682179687905590921690925560408051938316808552949092166020840152815190927fa328ba21363a99cbf330243928bb26a15acf20bf43166ef838e67ff5d84d4ae792908290030190a16040805173ffffffffffffffffffffffffffffffffffffffff831681526000602082015281517f01d5e27ed5584d16c62ba1a14cfde0783f979d4797a3fc41342aff17d8ef5b41929181900390910190a15050565b60035473ffffffffffffffffffffffffffffffffffffffff1681565b60025473ffffffffffffffffffffffffffffffffffffffff163314610b2357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f496d7065726d61783a20554e415554484f52495a454400000000000000000000604482015290519081900360640190fd5b6003805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040805191909216808252602082019390935281517f01d5e27ed5584d16c62ba1a14cfde0783f979d4797a3fc41342aff17d8ef5b41929181900390910190a15050565b600080610bb7836117f7565b91509150610bc3611b92565b5073ffffffffffffffffffffffffffffffffffffffff808416600090815260056020908152604091829020825160a081018452815460ff8116158015835262ffffff61010083041694830194909452640100000000900485169381019390935260018101548416606084015260020154909216608082015290610ca757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f496d7065726d61783a20414c52454144595f494e495449414c495a4544000000604482015290519081900360640190fd5b604081015173ffffffffffffffffffffffffffffffffffffffff16610d17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180611be26026913960400191505060405180910390fd5b606081015173ffffffffffffffffffffffffffffffffffffffff16610d87576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180611c086021913960400191505060405180910390fd5b608081015173ffffffffffffffffffffffffffffffffffffffff16610df7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180611bc16021913960400191505060405180910390fd5b6040808201516060830151608084015183517fc548e3c500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660448301529283166064820152908216608482015260a0600480830191909152601360a48301527f496d7065726d617820436f6c6c61746572616c0000000000000000000000000060c483015260e0602483015260e48201527f696d784300000000000000000000000000000000000000000000000000000000610104820152925191169163c548e3c59161012480830192600092919082900301818387803b158015610ef057600080fd5b505af1158015610f04573d6000803e3d6000fd5b505050606082015160408084015181517f6a030c1100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff888116604483015291821660648201526080600480830191909152601360848301527f496d7065726d617820426f72726f7761626c650000000000000000000000000060a483015260c0602483015260c48201527f696d78420000000000000000000000000000000000000000000000000000000060e4820152915192169250636a030c119161010480830192600092919082900301818387803b158015610ff357600080fd5b505af1158015611007573d6000803e3d6000fd5b5050505060808181015160408084015181517f6a030c1100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87811660448301529182166064820152600480820195909552601360848201527f496d7065726d617820426f72726f7761626c650000000000000000000000000060a482015260c0602482015260c48101949094527f696d78420000000000000000000000000000000000000000000000000000000060e48501529051911691636a030c119161010480830192600092919082900301818387803b1580156110f857600080fd5b505af115801561110c573d6000803e3d6000fd5b50505073ffffffffffffffffffffffffffffffffffffffff80861660008181526005602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055858201516060808801516080808a01518a8601518751958a168652928916958501959095529387168386015262ffffff169082015291518785169550938816937f4c3ab495dc8ebd1b2f3232d7632e54411bc7e4d111475e7fbbd5547d9a28c4959281900390910190a450505050565b60005473ffffffffffffffffffffffffffffffffffffffff16331461125857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f496d7065726d61783a20554e415554484f52495a454400000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040805191909216808252602082019390935281517fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a9929181900390910190a15050565b60006112eb826117f7565b505073ffffffffffffffffffffffffffffffffffffffff828116600090815260056020526040902060020154161561138457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f496d7065726d61783a20414c52454144595f4558495354530000000000000000604482015290519081900360640190fd5b600754604080517f54bcd7ad00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015260016024830152915191909216916354bcd7ad9160448083019260209291908290030181600087803b15801561140057600080fd5b505af1158015611414573d6000803e3d6000fd5b505050506040513d602081101561142a57600080fd5b5051604080517f4a5d316c000000000000000000000000000000000000000000000000000000008152905191925073ffffffffffffffffffffffffffffffffffffffff831691634a5d316c9160048082019260009290919082900301818387803b15801561149757600080fd5b505af11580156114ab573d6000803e3d6000fd5b505050506114b8826119e7565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260056020526040902060020180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169282169290921790915590565b6006818154811061151f57fe5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b60075473ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff1633146115e857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f496d7065726d61783a20554e415554484f52495a454400000000000000000000604482015290519081900360640190fd5b600080546001805473ffffffffffffffffffffffffffffffffffffffff8082167fffffffffffffffffffffffff000000000000000000000000000000000000000080861682179687905590921690925560408051938316808552949092166020840152815190927ff9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc92908290030190a16040805173ffffffffffffffffffffffffffffffffffffffff831681526000602082015281517fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a9929181900390910190a15050565b60025473ffffffffffffffffffffffffffffffffffffffff16331461175357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f496d7065726d61783a20554e415554484f52495a454400000000000000000000604482015290519081900360640190fd5b6004805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040805191909216808252602082019390935281517f324bacfad26225895fcf55780481bec4ce49013c92500fa1c25626ff43fbf661929181900390910190a15050565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b6000808273ffffffffffffffffffffffffffffffffffffffff166322be3de16040518163ffffffff1660e01b815260040160206040518083038186803b15801561184057600080fd5b505afa158015611854573d6000803e3d6000fd5b505050506040513d602081101561186a57600080fd5b50516118d757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f496d7065726d61783a20564f4c4154494c455f50414952000000000000000000604482015290519081900360640190fd5b8273ffffffffffffffffffffffffffffffffffffffff16630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b15801561191d57600080fd5b505afa158015611931573d6000803e3d6000fd5b505050506040513d602081101561194757600080fd5b5051604080517fd21220a7000000000000000000000000000000000000000000000000000000008152905191935073ffffffffffffffffffffffffffffffffffffffff85169163d21220a791600480820192602092909190829003018186803b1580156119b357600080fd5b505afa1580156119c7573d6000803e3d6000fd5b505050506040513d60208110156119dd57600080fd5b5051919391925050565b73ffffffffffffffffffffffffffffffffffffffff8116600090815260056020526040902054610100900462ffffff1615611a2157611b8f565b60068054600181810183557ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f909101805473ffffffffffffffffffffffffffffffffffffffff8086167fffffffffffffffffffffffff000000000000000000000000000000000000000092831681179093556040805160a0810182526000808252965462ffffff90811660208381019182528385018a8152606085018b8152608086018c8152998c5260059092529490992092518354915194518616640100000000027fffffffffffffffff0000000000000000000000000000000000000000ffffffff95909316610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000ff9115157fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff009093169290921716179290921691909117815594519385018054948216948316949094179093559051600290930180549390921692169190911790555b50565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091529056fe496d7065726d61783a20424f52524f5741424c45315f4e4f545f43524541544544496d7065726d61783a20434f4c4c41544552414c495a41424c455f4e4f545f43524541544544496d7065726d61783a20424f52524f5741424c45305f4e4f545f43524541544544a265627a7a72315820e5234528bcab8115d081d366921f2e5d3dacad6bea6aec19c20c4d80f6e2279c64736f6c63430005100032
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000007226c7ca07056c655865216e04512e9b287829590000000000000000000000009fd93712400902bff6040efa72b28bf80152f05600000000000000000000000026c37dacd046975230ba8c3658e6c5cdaf760dd8000000000000000000000000e770c8b97b3e2e053471ddb96ea7b6b05303c6a9
-----Decoded View---------------
Arg [0] : _admin (address): 0x7226C7ca07056c655865216E04512E9B28782959
Arg [1] : _reservesAdmin (address): 0x9fd93712400902bff6040efa72B28Bf80152F056
Arg [2] : _bDeployer (address): 0x26C37DACD046975230ba8c3658E6C5CDAf760dD8
Arg [3] : _cDeployer (address): 0xE770c8b97B3E2E053471DDb96EA7B6b05303C6A9
-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 0000000000000000000000007226c7ca07056c655865216e04512e9b28782959
Arg [1] : 0000000000000000000000009fd93712400902bff6040efa72b28bf80152f056
Arg [2] : 00000000000000000000000026c37dacd046975230ba8c3658e6c5cdaf760dd8
Arg [3] : 000000000000000000000000e770c8b97b3e2e053471ddb96ea7b6b05303c6a9
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.