More Info
Private Name Tags
ContractCreator
Latest 15 from a total of 15 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Execute Transact... | 16524789 | 543 days ago | IN | 0 ETH | 0.0006588 | ||||
Queue Transactio... | 16509874 | 545 days ago | IN | 0 ETH | 0.00075511 | ||||
Cancel Transacti... | 16509864 | 545 days ago | IN | 0 ETH | 0.00045297 | ||||
Queue Transactio... | 14953884 | 775 days ago | IN | 0 ETH | 0.00391554 | ||||
Execute Transact... | 14170555 | 899 days ago | IN | 0 ETH | 0.0030955 | ||||
Queue Transactio... | 14157304 | 901 days ago | IN | 0 ETH | 0.00354911 | ||||
Cancel Transacti... | 14157287 | 901 days ago | IN | 0 ETH | 0.00158391 | ||||
Queue Transactio... | 13420916 | 1016 days ago | IN | 0 ETH | 0.00764351 | ||||
Cancel Transacti... | 13420911 | 1016 days ago | IN | 0 ETH | 0.00300731 | ||||
Queue Transactio... | 13222852 | 1047 days ago | IN | 0 ETH | 0.00280335 | ||||
Execute Transact... | 12854419 | 1104 days ago | IN | 0 ETH | 0.00085505 | ||||
Queue Transactio... | 12830482 | 1108 days ago | IN | 0 ETH | 0.00150057 | ||||
Execute Transact... | 12455494 | 1166 days ago | IN | 0 ETH | 0.00225353 | ||||
Queue Transactio... | 12411325 | 1173 days ago | IN | 0 ETH | 0.01205355 | ||||
0x60806040 | 12341526 | 1184 days ago | IN | 0 ETH | 0.03207998 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
Timelock
Compiler Version
v0.5.17+commit.d19bba13
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-05-18 */ /** *Submitted for verification at Etherscan.io on 2020-09-16 */ /** *Submitted for verification at Etherscan.io on 2020-09-14 */ pragma solidity ^0.5.16; // From https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/math/Math.sol // Subject to the MIT license. /** * @dev Wrappers over Solidity's arithmetic operations with added overflow * checks. * * Arithmetic operations in Solidity wrap on overflow. This can easily result * in bugs, because programmers usually assume that an overflow raises an * error, which is the standard behavior in high level programming languages. * `SafeMath` restores this intuition by reverting the transaction when an * operation overflows. * * Using this library instead of the unchecked operations eliminates an entire * class of bugs, so it's recommended to use it always. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, reverting on overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the addition of two unsigned integers, reverting with custom message on overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * - Addition cannot overflow. */ function add( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, errorMessage); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on underflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * - Subtraction cannot underflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction underflow"); } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on underflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * - Subtraction cannot underflow. */ function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * - Multiplication cannot overflow. */ function mul( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, errorMessage); return c; } /** * @dev Returns the integer division of two unsigned integers. * Reverts on division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } /** * @dev Returns the integer division of two unsigned integers. * Reverts with custom message on division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts with custom message when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function mod( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } contract Timelock { using SafeMath for uint256; event NewAdmin(address indexed newAdmin); event NewPendingAdmin(address indexed newPendingAdmin); event NewDelay(uint256 indexed newDelay); event CancelTransaction( bytes32 indexed txHash, address indexed target, address lev, uint256 amount, uint256 eta ); event ExecuteTransaction( bytes32 indexed txHash, address indexed target, address lev, uint256 amount, uint256 eta ); event QueueTransaction( bytes32 indexed txHash, address indexed target, address lev, uint256 amount, uint256 eta ); uint256 public constant GRACE_PERIOD = 14 days; uint256 public constant MINIMUM_DELAY = 2 days; uint256 public constant MAXIMUM_DELAY = 30 days; address public admin; uint256 public delay; mapping(bytes32 => bool) public queuedTransactions; constructor(address admin_, uint256 delay_) public { require( admin_ != address(0), "Timelock::constructor: Cannot set the admin to the zero address" ); require( delay_ >= MINIMUM_DELAY, "Timelock::constructor: Delay must exceed minimum delay." ); require( delay_ <= MAXIMUM_DELAY, "Timelock::setDelay: Delay must not exceed maximum delay." ); admin = admin_; delay = delay_; } function setDelay(uint256 delay_) external { require( msg.sender == admin, "Timelock::setDelay: Call must come from admin." ); require( delay_ >= MINIMUM_DELAY, "Timelock::setDelay: Delay must exceed minimum delay." ); require( delay_ <= MAXIMUM_DELAY, "Timelock::setDelay: Delay must not exceed maximum delay." ); delay = delay_; emit NewDelay(delay); } function acceptAdmin(address pendingAdmin_, uint256 eta) external { require( msg.sender == admin, "Timelock::queueTransaction: Call must come from admin." ); require( getBlockTimestamp() >= eta, "Timelock::executeTransaction: Transaction hasn't surpassed time lock." ); bytes32 txHash = keccak256(abi.encode(pendingAdmin_, eta)); require( queuedTransactions[txHash], "Timelock::executeTransaction: Transaction hasn't been queued." ); queuedTransactions[txHash] = false; admin = pendingAdmin_; emit NewAdmin(admin); } function setPendingAdmin(address pendingAdmin_, uint256 eta) external { require( msg.sender == admin, "Timelock::queueTransaction: Call must come from admin." ); require( pendingAdmin_ != address(0), "Timelock::queueTransaction: Cannot change the admin to the zero address" ); require( eta >= getBlockTimestamp().add(delay), "Timelock::queueTransaction: Estimated execution block must satisfy delay." ); bytes32 txHash = keccak256(abi.encode(pendingAdmin_, eta)); queuedTransactions[txHash] = true; emit NewPendingAdmin(pendingAdmin_); } function queueTransaction( address target, address lev, uint256 amount, uint256 eta ) external returns (bytes32) { require( msg.sender == admin, "Timelock::queueTransaction: Call must come from admin." ); require( eta >= getBlockTimestamp().add(delay), "Timelock::queueTransaction: Estimated execution block must satisfy delay." ); bytes32 txHash = keccak256(abi.encode(target, lev, amount, eta)); queuedTransactions[txHash] = true; emit QueueTransaction(txHash, target, lev, amount, eta); return txHash; } function cancelTransaction( address target, address lev, uint256 amount, uint256 eta ) external { require( msg.sender == admin, "Timelock::cancelTransaction: Call must come from admin." ); bytes32 txHash = keccak256(abi.encode(target, lev, amount, eta)); queuedTransactions[txHash] = false; emit CancelTransaction(txHash, target, lev, amount, eta); } function executeTransaction( address target, address lev, uint256 amount, uint256 eta ) external { require( msg.sender == admin, "Timelock::executeTransaction: Call must come from admin." ); bytes32 txHash = keccak256(abi.encode(target, lev, amount, eta)); require( queuedTransactions[txHash], "Timelock::executeTransaction: Transaction hasn't been queued." ); require( getBlockTimestamp() >= eta, "Timelock::executeTransaction: Transaction hasn't surpassed time lock." ); require( getBlockTimestamp() <= eta.add(GRACE_PERIOD), "Timelock::executeTransaction: Transaction is stale." ); queuedTransactions[txHash] = false; bool success = ILev(lev).transfer(target, amount); require( success, "Timelock::executeTransaction: Transaction execution reverted." ); emit ExecuteTransaction(txHash, target, lev, amount, eta); } function getBlockTimestamp() internal view returns (uint256) { // solium-disable-next-line security/no-block-members return block.timestamp; } } interface ILev { function transfer(address dst, uint256 rawAmount) external returns (bool); }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"admin_","type":"address"},{"internalType":"uint256","name":"delay_","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"txHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"address","name":"lev","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"eta","type":"uint256"}],"name":"CancelTransaction","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"txHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"address","name":"lev","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"eta","type":"uint256"}],"name":"ExecuteTransaction","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newAdmin","type":"address"}],"name":"NewAdmin","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"newDelay","type":"uint256"}],"name":"NewDelay","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newPendingAdmin","type":"address"}],"name":"NewPendingAdmin","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"txHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"address","name":"lev","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"eta","type":"uint256"}],"name":"QueueTransaction","type":"event"},{"constant":true,"inputs":[],"name":"GRACE_PERIOD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"MAXIMUM_DELAY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"MINIMUM_DELAY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"pendingAdmin_","type":"address"},{"internalType":"uint256","name":"eta","type":"uint256"}],"name":"acceptAdmin","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":false,"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"address","name":"lev","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"eta","type":"uint256"}],"name":"cancelTransaction","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"delay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"address","name":"lev","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"eta","type":"uint256"}],"name":"executeTransaction","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"address","name":"lev","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"eta","type":"uint256"}],"name":"queueTransaction","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"queuedTransactions","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"delay_","type":"uint256"}],"name":"setDelay","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"pendingAdmin_","type":"address"},{"internalType":"uint256","name":"eta","type":"uint256"}],"name":"setPendingAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b506040516110913803806110918339818101604052604081101561003357600080fd5b5080516020909101516001600160a01b0382166100815760405162461bcd60e51b815260040180806020018281038252603f815260200180611052603f913960400191505060405180910390fd5b6202a3008110156100c35760405162461bcd60e51b8152600401808060200182810382526037815260200180610fe36037913960400191505060405180910390fd5b62278d008111156101055760405162461bcd60e51b815260040180806020018281038252603881526020018061101a6038913960400191505060405180910390fd5b600080546001600160a01b039093166001600160a01b031990931692909217909155600155610eaa806101396000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c8063b72dc35f11610071578063b72dc35f14610189578063c1a287e2146101b5578063e177246e146101bd578063ed1046c9146101da578063f2b0653714610216578063f851a44014610247576100b4565b80631b936924146100b957806369de5d38146100e75780636a42b8f8146101355780637d645fab1461013d5780639e94935914610145578063b1b43ae514610181575b600080fd5b6100e5600480360360408110156100cf57600080fd5b506001600160a01b03813516906020013561026b565b005b610123600480360360808110156100fd57600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356103ca565b60408051918252519081900360200190f35b61012361050c565b610123610512565b6100e56004803603608081101561015b57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610519565b610123610609565b6100e56004803603604081101561019f57600080fd5b506001600160a01b038135169060200135610610565b610123610783565b6100e5600480360360208110156101d357600080fd5b503561078a565b6100e5600480360360808110156101f057600080fd5b506001600160a01b0381358116916020810135909116906040810135906060013561088a565b6102336004803603602081101561022c57600080fd5b5035610b2b565b604080519115158252519081900360200190f35b61024f610b40565b604080516001600160a01b039092168252519081900360200190f35b6000546001600160a01b031633146102b45760405162461bcd60e51b8152600401808060200182810382526036815260200180610dba6036913960400191505060405180910390fd5b6001600160a01b0382166102f95760405162461bcd60e51b8152600401808060200182810382526047815260200180610bb56047913960600191505060405180910390fd5b610313600154610307610b4f565b9063ffffffff610b5316565b8110156103515760405162461bcd60e51b8152600401808060200182810382526049815260200180610e2d6049913960600191505060405180910390fd5b604080516001600160a01b0384166020808301829052828401859052835180840385018152606090930180855283519382019390932060008181526002909252938120805460ff1916600117905590917f69d78e38a01985fbb1462961809b4b2d65531bc93b2b94037f3334b82ca4a7569190a2505050565b600080546001600160a01b031633146104145760405162461bcd60e51b8152600401808060200182810382526036815260200180610dba6036913960400191505060405180910390fd5b610422600154610307610b4f565b8210156104605760405162461bcd60e51b8152600401808060200182810382526049815260200180610e2d6049913960600191505060405180910390fd5b604080516001600160a01b0380881660208084018290529188168385018190526060840188905260808085018890528551808603909101815260a085018087528151918501919091206000818152600290955293869020805460ff191660011790555260c0830187905260e08301869052925190929183917feeb3d19b7bbeaed87a8da50639d75b32dd1043ee12378af2b989eac1d19fceec918190036101000190a395945050505050565b60015481565b62278d0081565b6000546001600160a01b031633146105625760405162461bcd60e51b8152600401808060200182810382526037815260200180610c346037913960400191505060405180910390fd5b604080516001600160a01b0380871660208084018290529187168385018190526060840187905260808085018790528551808603909101815260a085018087528151918501919091206000818152600290955293869020805460ff191690555260c0830186905260e08301859052925190929183917faf511beb56df19b7070a6fe49b519df031f261c6994b72b18fb224b38ae9bb4a918190036101000190a35050505050565b6202a30081565b6000546001600160a01b031633146106595760405162461bcd60e51b8152600401808060200182810382526036815260200180610dba6036913960400191505060405180910390fd5b80610662610b4f565b101561069f5760405162461bcd60e51b8152600401808060200182810382526045815260200180610c9e6045913960600191505060405180910390fd5b604080516001600160a01b03841660208083019190915281830184905282518083038401815260609092018352815191810191909120600081815260029092529190205460ff166107215760405162461bcd60e51b815260040180806020018281038252603d815260200180610d4f603d913960400191505060405180910390fd5b600081815260026020526040808220805460ff1916905581546001600160a01b0319166001600160a01b038681169190911780845591519116917f71614071b88dee5e0b2ae578a9dd7b2ebbe9ae832ba419dc0242cd065a290b6c91a2505050565b6212750081565b6000546001600160a01b031633146107d35760405162461bcd60e51b815260040180806020018281038252602e815260200180610d8c602e913960400191505060405180910390fd5b6202a3008110156108155760405162461bcd60e51b8152600401808060200182810382526034815260200180610ce36034913960400191505060405180910390fd5b62278d008111156108575760405162461bcd60e51b8152600401808060200182810382526038815260200180610d176038913960400191505060405180910390fd5b600181905560405181907f948b1f6a42ee138b7e34058ba85a37f716d55ff25ff05a763f15bed6a04c8d2c90600090a250565b6000546001600160a01b031633146108d35760405162461bcd60e51b8152600401808060200182810382526038815260200180610bfc6038913960400191505060405180910390fd5b604080516001600160a01b03808716602080840191909152908616828401526060820185905260808083018590528351808403909101815260a09092018352815191810191909120600081815260029092529190205460ff166109675760405162461bcd60e51b815260040180806020018281038252603d815260200180610d4f603d913960400191505060405180910390fd5b81610970610b4f565b10156109ad5760405162461bcd60e51b8152600401808060200182810382526045815260200180610c9e6045913960600191505060405180910390fd5b6109c0826212750063ffffffff610b5316565b6109c8610b4f565b1115610a055760405162461bcd60e51b8152600401808060200182810382526033815260200180610c6b6033913960400191505060405180910390fd5b6000818152600260209081526040808320805460ff19169055805163a9059cbb60e01b81526001600160a01b0389811660048301526024820188905291519188169263a9059cbb9260448084019382900301818787803b158015610a6857600080fd5b505af1158015610a7c573d6000803e3d6000fd5b505050506040513d6020811015610a9257600080fd5b5051905080610ad25760405162461bcd60e51b815260040180806020018281038252603d815260200180610df0603d913960400191505060405180910390fd5b604080516001600160a01b0387811682526020820187905281830186905291519188169184917f6d3e6e3afc856e26bef974088bd4335caab97bc9d36bcf9a20be8e25bc9fd105919081900360600190a3505050505050565b60026020526000908152604090205460ff1681565b6000546001600160a01b031681565b4290565b600082820183811015610bad576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b939250505056fe54696d656c6f636b3a3a71756575655472616e73616374696f6e3a2043616e6e6f74206368616e6765207468652061646d696e20746f20746865207a65726f206164647265737354696d656c6f636b3a3a657865637574655472616e73616374696f6e3a2043616c6c206d75737420636f6d652066726f6d2061646d696e2e54696d656c6f636b3a3a63616e63656c5472616e73616374696f6e3a2043616c6c206d75737420636f6d652066726f6d2061646d696e2e54696d656c6f636b3a3a657865637574655472616e73616374696f6e3a205472616e73616374696f6e206973207374616c652e54696d656c6f636b3a3a657865637574655472616e73616374696f6e3a205472616e73616374696f6e206861736e2774207375727061737365642074696d65206c6f636b2e54696d656c6f636b3a3a73657444656c61793a2044656c6179206d75737420657863656564206d696e696d756d2064656c61792e54696d656c6f636b3a3a73657444656c61793a2044656c6179206d757374206e6f7420657863656564206d6178696d756d2064656c61792e54696d656c6f636b3a3a657865637574655472616e73616374696f6e3a205472616e73616374696f6e206861736e2774206265656e207175657565642e54696d656c6f636b3a3a73657444656c61793a2043616c6c206d75737420636f6d652066726f6d2061646d696e2e54696d656c6f636b3a3a71756575655472616e73616374696f6e3a2043616c6c206d75737420636f6d652066726f6d2061646d696e2e54696d656c6f636b3a3a657865637574655472616e73616374696f6e3a205472616e73616374696f6e20657865637574696f6e2072657665727465642e54696d656c6f636b3a3a71756575655472616e73616374696f6e3a20457374696d6174656420657865637574696f6e20626c6f636b206d75737420736174697366792064656c61792ea265627a7a723158201f8fbdf8084aa3c7dd08c19d331a9ac0c2520824eceae3954b34e9a79af85f2064736f6c6343000511003254696d656c6f636b3a3a636f6e7374727563746f723a2044656c6179206d75737420657863656564206d696e696d756d2064656c61792e54696d656c6f636b3a3a73657444656c61793a2044656c6179206d757374206e6f7420657863656564206d6178696d756d2064656c61792e54696d656c6f636b3a3a636f6e7374727563746f723a2043616e6e6f7420736574207468652061646d696e20746f20746865207a65726f2061646472657373000000000000000000000000e0d02780b6874cb06704d8e26b08a89a1a969999000000000000000000000000000000000000000000000000000000000002a300
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100b45760003560e01c8063b72dc35f11610071578063b72dc35f14610189578063c1a287e2146101b5578063e177246e146101bd578063ed1046c9146101da578063f2b0653714610216578063f851a44014610247576100b4565b80631b936924146100b957806369de5d38146100e75780636a42b8f8146101355780637d645fab1461013d5780639e94935914610145578063b1b43ae514610181575b600080fd5b6100e5600480360360408110156100cf57600080fd5b506001600160a01b03813516906020013561026b565b005b610123600480360360808110156100fd57600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356103ca565b60408051918252519081900360200190f35b61012361050c565b610123610512565b6100e56004803603608081101561015b57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610519565b610123610609565b6100e56004803603604081101561019f57600080fd5b506001600160a01b038135169060200135610610565b610123610783565b6100e5600480360360208110156101d357600080fd5b503561078a565b6100e5600480360360808110156101f057600080fd5b506001600160a01b0381358116916020810135909116906040810135906060013561088a565b6102336004803603602081101561022c57600080fd5b5035610b2b565b604080519115158252519081900360200190f35b61024f610b40565b604080516001600160a01b039092168252519081900360200190f35b6000546001600160a01b031633146102b45760405162461bcd60e51b8152600401808060200182810382526036815260200180610dba6036913960400191505060405180910390fd5b6001600160a01b0382166102f95760405162461bcd60e51b8152600401808060200182810382526047815260200180610bb56047913960600191505060405180910390fd5b610313600154610307610b4f565b9063ffffffff610b5316565b8110156103515760405162461bcd60e51b8152600401808060200182810382526049815260200180610e2d6049913960600191505060405180910390fd5b604080516001600160a01b0384166020808301829052828401859052835180840385018152606090930180855283519382019390932060008181526002909252938120805460ff1916600117905590917f69d78e38a01985fbb1462961809b4b2d65531bc93b2b94037f3334b82ca4a7569190a2505050565b600080546001600160a01b031633146104145760405162461bcd60e51b8152600401808060200182810382526036815260200180610dba6036913960400191505060405180910390fd5b610422600154610307610b4f565b8210156104605760405162461bcd60e51b8152600401808060200182810382526049815260200180610e2d6049913960600191505060405180910390fd5b604080516001600160a01b0380881660208084018290529188168385018190526060840188905260808085018890528551808603909101815260a085018087528151918501919091206000818152600290955293869020805460ff191660011790555260c0830187905260e08301869052925190929183917feeb3d19b7bbeaed87a8da50639d75b32dd1043ee12378af2b989eac1d19fceec918190036101000190a395945050505050565b60015481565b62278d0081565b6000546001600160a01b031633146105625760405162461bcd60e51b8152600401808060200182810382526037815260200180610c346037913960400191505060405180910390fd5b604080516001600160a01b0380871660208084018290529187168385018190526060840187905260808085018790528551808603909101815260a085018087528151918501919091206000818152600290955293869020805460ff191690555260c0830186905260e08301859052925190929183917faf511beb56df19b7070a6fe49b519df031f261c6994b72b18fb224b38ae9bb4a918190036101000190a35050505050565b6202a30081565b6000546001600160a01b031633146106595760405162461bcd60e51b8152600401808060200182810382526036815260200180610dba6036913960400191505060405180910390fd5b80610662610b4f565b101561069f5760405162461bcd60e51b8152600401808060200182810382526045815260200180610c9e6045913960600191505060405180910390fd5b604080516001600160a01b03841660208083019190915281830184905282518083038401815260609092018352815191810191909120600081815260029092529190205460ff166107215760405162461bcd60e51b815260040180806020018281038252603d815260200180610d4f603d913960400191505060405180910390fd5b600081815260026020526040808220805460ff1916905581546001600160a01b0319166001600160a01b038681169190911780845591519116917f71614071b88dee5e0b2ae578a9dd7b2ebbe9ae832ba419dc0242cd065a290b6c91a2505050565b6212750081565b6000546001600160a01b031633146107d35760405162461bcd60e51b815260040180806020018281038252602e815260200180610d8c602e913960400191505060405180910390fd5b6202a3008110156108155760405162461bcd60e51b8152600401808060200182810382526034815260200180610ce36034913960400191505060405180910390fd5b62278d008111156108575760405162461bcd60e51b8152600401808060200182810382526038815260200180610d176038913960400191505060405180910390fd5b600181905560405181907f948b1f6a42ee138b7e34058ba85a37f716d55ff25ff05a763f15bed6a04c8d2c90600090a250565b6000546001600160a01b031633146108d35760405162461bcd60e51b8152600401808060200182810382526038815260200180610bfc6038913960400191505060405180910390fd5b604080516001600160a01b03808716602080840191909152908616828401526060820185905260808083018590528351808403909101815260a09092018352815191810191909120600081815260029092529190205460ff166109675760405162461bcd60e51b815260040180806020018281038252603d815260200180610d4f603d913960400191505060405180910390fd5b81610970610b4f565b10156109ad5760405162461bcd60e51b8152600401808060200182810382526045815260200180610c9e6045913960600191505060405180910390fd5b6109c0826212750063ffffffff610b5316565b6109c8610b4f565b1115610a055760405162461bcd60e51b8152600401808060200182810382526033815260200180610c6b6033913960400191505060405180910390fd5b6000818152600260209081526040808320805460ff19169055805163a9059cbb60e01b81526001600160a01b0389811660048301526024820188905291519188169263a9059cbb9260448084019382900301818787803b158015610a6857600080fd5b505af1158015610a7c573d6000803e3d6000fd5b505050506040513d6020811015610a9257600080fd5b5051905080610ad25760405162461bcd60e51b815260040180806020018281038252603d815260200180610df0603d913960400191505060405180910390fd5b604080516001600160a01b0387811682526020820187905281830186905291519188169184917f6d3e6e3afc856e26bef974088bd4335caab97bc9d36bcf9a20be8e25bc9fd105919081900360600190a3505050505050565b60026020526000908152604090205460ff1681565b6000546001600160a01b031681565b4290565b600082820183811015610bad576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b939250505056fe54696d656c6f636b3a3a71756575655472616e73616374696f6e3a2043616e6e6f74206368616e6765207468652061646d696e20746f20746865207a65726f206164647265737354696d656c6f636b3a3a657865637574655472616e73616374696f6e3a2043616c6c206d75737420636f6d652066726f6d2061646d696e2e54696d656c6f636b3a3a63616e63656c5472616e73616374696f6e3a2043616c6c206d75737420636f6d652066726f6d2061646d696e2e54696d656c6f636b3a3a657865637574655472616e73616374696f6e3a205472616e73616374696f6e206973207374616c652e54696d656c6f636b3a3a657865637574655472616e73616374696f6e3a205472616e73616374696f6e206861736e2774207375727061737365642074696d65206c6f636b2e54696d656c6f636b3a3a73657444656c61793a2044656c6179206d75737420657863656564206d696e696d756d2064656c61792e54696d656c6f636b3a3a73657444656c61793a2044656c6179206d757374206e6f7420657863656564206d6178696d756d2064656c61792e54696d656c6f636b3a3a657865637574655472616e73616374696f6e3a205472616e73616374696f6e206861736e2774206265656e207175657565642e54696d656c6f636b3a3a73657444656c61793a2043616c6c206d75737420636f6d652066726f6d2061646d696e2e54696d656c6f636b3a3a71756575655472616e73616374696f6e3a2043616c6c206d75737420636f6d652066726f6d2061646d696e2e54696d656c6f636b3a3a657865637574655472616e73616374696f6e3a205472616e73616374696f6e20657865637574696f6e2072657665727465642e54696d656c6f636b3a3a71756575655472616e73616374696f6e3a20457374696d6174656420657865637574696f6e20626c6f636b206d75737420736174697366792064656c61792ea265627a7a723158201f8fbdf8084aa3c7dd08c19d331a9ac0c2520824eceae3954b34e9a79af85f2064736f6c63430005110032
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000e0d02780b6874cb06704d8e26b08a89a1a969999000000000000000000000000000000000000000000000000000000000002a300
-----Decoded View---------------
Arg [0] : admin_ (address): 0xe0D02780B6874cB06704D8E26B08A89A1A969999
Arg [1] : delay_ (uint256): 172800
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000e0d02780b6874cb06704d8e26b08a89a1a969999
Arg [1] : 000000000000000000000000000000000000000000000000000000000002a300
Deployed Bytecode Sourcemap
6914:5957:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6914:5957:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9688:705;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;9688:705:0;;;;;;;;:::i;:::-;;10401:680;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;;;;;;10401:680:0;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;7836:20;;;:::i;7753:47::-;;;:::i;11089:471::-;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;;;;;;11089:471:0;;;;;;;;;;;;;;;;;;;;;;:::i;7700:46::-;;;:::i;8985:695::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;8985:695:0;;;;;;;;:::i;7647:46::-;;;:::i;8466:511::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8466:511:0;;:::i;11568:1127::-;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;;;;;;11568:1127:0;;;;;;;;;;;;;;;;;;;;;;:::i;7865:50::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7865:50:0;;:::i;:::-;;;;;;;;;;;;;;;;;;7809:20;;;:::i;:::-;;;;-1:-1:-1;;;;;7809:20:0;;;;;;;;;;;;;;9688:705;9805:5;;-1:-1:-1;;;;;9805:5:0;9791:10;:19;9769:123;;;;-1:-1:-1;;;9769:123:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9925:27:0;;9903:148;;;;-1:-1:-1;;;9903:148:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10091:30;10115:5;;10091:19;:17;:19::i;:::-;:23;:30;:23;:30;:::i;:::-;10084:3;:37;;10062:160;;;;-1:-1:-1;;;10062:160:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10262:30;;;-1:-1:-1;;;;;10262:30:0;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;6:49;;10262:30:0;;;;;;;10252:41;;;;;;;;;10235:14;10304:26;;;:18;:26;;;;;;:33;;-1:-1:-1;;10304:33:0;10333:4;10304:33;;;10262:30;;10355;;10235:14;10355:30;9688:705;;;:::o;10401:680::-;10546:7;10602:5;;-1:-1:-1;;;;;10602:5:0;10588:10;:19;10566:123;;;;-1:-1:-1;;;10566:123:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10729:30;10753:5;;10729:19;:17;:19::i;:30::-;10722:3;:37;;10700:160;;;;-1:-1:-1;;;10700:160:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10900:36;;;-1:-1:-1;;;;;10900:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;10900:36:0;;;;;;10890:47;;;;;;;;;10873:14;10948:26;;;:18;:26;;;;;;;:33;;-1:-1:-1;;10948:33:0;10977:4;10948:33;;;10999:50;;;;;;;;;;;;;;;10890:47;;10900:36;10890:47;;10999:50;;;;;10948:33;10999:50;;;11067:6;10401:680;-1:-1:-1;;;;;10401:680:0:o;7836:20::-;;;;:::o;7753:47::-;7793:7;7753:47;:::o;11089:471::-;11273:5;;-1:-1:-1;;;;;11273:5:0;11259:10;:19;11237:124;;;;-1:-1:-1;;;11237:124:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11401:36;;;-1:-1:-1;;;;;11401:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;11401:36:0;;;;;;11391:47;;;;;;;;;11374:14;11449:26;;;:18;:26;;;;;;;:34;;-1:-1:-1;;11449:34:0;;;11501:51;;;;;;;;;;;;;;;11391:47;;11401:36;11391:47;;11501:51;;;;;11449:34;11501:51;;;11089:471;;;;;:::o;7700:46::-;7740:6;7700:46;:::o;8985:695::-;9098:5;;-1:-1:-1;;;;;9098:5:0;9084:10;:19;9062:123;;;;-1:-1:-1;;;9062:123:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9241:3;9218:19;:17;:19::i;:::-;:26;;9196:145;;;;-1:-1:-1;;;9196:145:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9381:30;;;-1:-1:-1;;;;;9381:30:0;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;6:49;;9381:30:0;;;;;;9371:41;;;;;;;;;9354:14;9447:26;;;:18;:26;;;;;;;;;9425:137;;;;-1:-1:-1;;;9425:137:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9602:5;9573:26;;;:18;:26;;;;;;:34;;-1:-1:-1;;9573:34:0;;;9618:21;;-1:-1:-1;;;;;;9618:21:0;-1:-1:-1;;;;;9618:21:0;;;;;;;;;;9657:15;;9666:5;;;9657:15;;;8985:695;;;:::o;7647:46::-;7686:7;7647:46;:::o;8466:511::-;8556:5;;-1:-1:-1;;;;;8556:5:0;8542:10;:19;8520:115;;;;-1:-1:-1;;;8520:115:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7740:6;8668;:23;;8646:125;;;;-1:-1:-1;;;8646:125:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7793:7;8804:6;:23;;8782:129;;;;-1:-1:-1;;;8782:129:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8922:5;:14;;;8954:15;;8930:6;;8954:15;;;;;8466:511;:::o;11568:1127::-;11753:5;;-1:-1:-1;;;;;11753:5:0;11739:10;:19;11717:125;;;;-1:-1:-1;;;11717:125:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11882:36;;;-1:-1:-1;;;;;11882:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;11882:36:0;;;;;;11872:47;;;;;;;;;11855:14;11952:26;;;:18;:26;;;;;;;;;11930:137;;;;-1:-1:-1;;;11930:137:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12123:3;12100:19;:17;:19::i;:::-;:26;;12078:145;;;;-1:-1:-1;;;12078:145:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12279:21;:3;7686:7;12279:21;:7;:21;:::i;:::-;12256:19;:17;:19::i;:::-;:44;;12234:145;;;;-1:-1:-1;;;12234:145:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12421:5;12392:26;;;:18;:26;;;;;;;;:34;;-1:-1:-1;;12392:34:0;;;12454;;-1:-1:-1;;;12454:34:0;;-1:-1:-1;;;;;12454:34:0;;;;;;;;;;;;;;;:18;;;;;;:34;;;;;;;;;;12421:5;12454:18;:34;;;5:2:-1;;;;30:1;27;20:12;5:2;12454:34:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12454:34:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12454:34:0;;-1:-1:-1;12454:34:0;12499:118;;;;-1:-1:-1;;;12499:118:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12635:52;;;-1:-1:-1;;;;;12635:52:0;;;;;;;;;;;;;;;;;;;;;;;12654:6;;12635:52;;;;;;;;;;11568:1127;;;;;;:::o;7865:50::-;;;;;;;;;;;;;;;:::o;7809:20::-;;;-1:-1:-1;;;;;7809:20:0;;:::o;12703:165::-;12845:15;12703:165;:::o;1130:181::-;1188:7;1220:5;;;1244:6;;;;1236:46;;;;;-1:-1:-1;;;1236:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;1302:1;1130:181;-1:-1:-1;;;1130:181:0:o
Swarm Source
bzzr://1f8fbdf8084aa3c7dd08c19d331a9ac0c2520824eceae3954b34e9a79af85f20
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | 100.00% | $0.002886 | 25,000,000 | $72,152 |
Loading...
Loading
[ 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.