Overview
ETH Balance
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 13 from a total of 13 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Distribute Balan... | 21604129 | 3 days ago | IN | 0 ETH | 0.00020547 | ||||
Delegate Upgrade | 21154531 | 66 days ago | IN | 0 ETH | 0.00028057 | ||||
Distribute Balan... | 20593846 | 144 days ago | IN | 0 ETH | 0.00013605 | ||||
Distribute Balan... | 19508133 | 296 days ago | IN | 0 ETH | 0.00097182 | ||||
Distribute Balan... | 19100526 | 353 days ago | IN | 0 ETH | 0.00077746 | ||||
Distribute Balan... | 18845240 | 389 days ago | IN | 0 ETH | 0.00150564 | ||||
Reduce Bond Amou... | 18405616 | 450 days ago | IN | 0 ETH | 0.00414371 | ||||
Distribute Balan... | 18299310 | 465 days ago | IN | 0 ETH | 0.0006536 | ||||
Distribute Balan... | 18081709 | 496 days ago | IN | 0 ETH | 0.00089073 | ||||
Distribute Balan... | 17901288 | 521 days ago | IN | 0 ETH | 0.00110711 | ||||
Distribute Balan... | 17501572 | 577 days ago | IN | 0 ETH | 0.00140888 | ||||
Delegate Upgrade | 17252014 | 612 days ago | IN | 0 ETH | 0.00339332 | ||||
Stake | 15658930 | 836 days ago | IN | 0 ETH | 0.00155628 |
Latest 25 internal transactions (View All)
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
21604129 | 3 days ago | 0.10264426 ETH | ||||
21598574 | 4 days ago | 0.07515277 ETH | ||||
21253672 | 52 days ago | 0.11134173 ETH | ||||
20593846 | 144 days ago | 0.11239037 ETH | ||||
20593846 | 144 days ago | 0.20420223 ETH | ||||
19508133 | 296 days ago | 0.07601882 ETH | ||||
19508133 | 296 days ago | 0.13811871 ETH | ||||
19100526 | 353 days ago | 0.06580655 ETH | ||||
19100526 | 353 days ago | 0.11956402 ETH | ||||
18845240 | 389 days ago | 0.08251464 ETH | ||||
18845240 | 389 days ago | 0.11519452 ETH | ||||
18405616 | 450 days ago | 0.014127 ETH | ||||
18299310 | 465 days ago | 0.06053823 ETH | ||||
18299310 | 465 days ago | 0.04474565 ETH | ||||
18081709 | 496 days ago | 0.07938285 ETH | ||||
18081709 | 496 days ago | 0.05867428 ETH | ||||
17901288 | 521 days ago | 0.08325178 ETH | ||||
17901288 | 521 days ago | 0.06153392 ETH | ||||
17501572 | 577 days ago | 0.58078245 ETH | ||||
17501572 | 577 days ago | 0.42927399 ETH | ||||
15658930 | 836 days ago | 16 ETH | ||||
15655343 | 836 days ago | 16 ETH | ||||
15655343 | 836 days ago | 16 ETH | ||||
15655343 | 836 days ago | 16 ETH | ||||
15655343 | 836 days ago | Contract Creation | 0 ETH |
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0x4241A990...f6707Da9B The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Source Code (Solidity Standard Json-Input format)
/** * . * / \ * |.'.| * |'.'| * ,'| |`. * |,-'-|-'-.| * __|_| | _ _ _____ _ * | ___ \| | | | | | ___ \ | | * | |_/ /|__ ___| | _____| |_ | |_/ /__ ___ | | * | // _ \ / __| |/ / _ \ __| | __/ _ \ / _ \| | * | |\ \ (_) | (__| < __/ |_ | | | (_) | (_) | | * \_| \_\___/ \___|_|\_\___|\__| \_| \___/ \___/|_| * +---------------------------------------------------+ * | DECENTRALISED STAKING PROTOCOL FOR ETHEREUM 2.0 | * +---------------------------------------------------+ * * Rocket Pool is a first-of-its-kind ETH2 Proof of Stake protocol, designed to be community owned, * decentralised, trustless and compatible with staking in Ethereum 2.0. * * For more information about Rocket Pool, visit https://rocketpool.net * * Authors: David Rugendyke, Jake Pospischil, Kane Wallmann, Darren Langley, Joe Clapis, Nick Doherty * */ pragma solidity 0.7.6; // SPDX-License-Identifier: GPL-3.0-only import "./RocketMinipoolStorageLayout.sol"; import "../../interface/RocketStorageInterface.sol"; import "../../types/MinipoolDeposit.sol"; import "../../types/MinipoolStatus.sol"; // An individual minipool in the Rocket Pool network contract RocketMinipool is RocketMinipoolStorageLayout { // Events event EtherReceived(address indexed from, uint256 amount, uint256 time); event DelegateUpgraded(address oldDelegate, address newDelegate, uint256 time); event DelegateRolledBack(address oldDelegate, address newDelegate, uint256 time); // Modifiers // Only allow access from the owning node address modifier onlyMinipoolOwner() { // Only the node operator can upgrade address withdrawalAddress = rocketStorage.getNodeWithdrawalAddress(nodeAddress); require(msg.sender == nodeAddress || msg.sender == withdrawalAddress, "Only the node operator can access this method"); _; } // Construct constructor(RocketStorageInterface _rocketStorageAddress, address _nodeAddress, MinipoolDeposit _depositType) { // Initialise RocketStorage require(address(_rocketStorageAddress) != address(0x0), "Invalid storage address"); rocketStorage = RocketStorageInterface(_rocketStorageAddress); // Set storage state to uninitialised storageState = StorageState.Uninitialised; // Set the current delegate address delegateAddress = getContractAddress("rocketMinipoolDelegate"); rocketMinipoolDelegate = delegateAddress; // Check for contract existence require(contractExists(delegateAddress), "Delegate contract does not exist"); // Call initialise on delegate (bool success, bytes memory data) = delegateAddress.delegatecall(abi.encodeWithSignature('initialise(address,uint8)', _nodeAddress, uint8(_depositType))); if (!success) { revert(getRevertMessage(data)); } } // Receive an ETH deposit receive() external payable { // Emit ether received event emit EtherReceived(msg.sender, msg.value, block.timestamp); } // Upgrade this minipool to the latest network delegate contract function delegateUpgrade() external onlyMinipoolOwner { // Set previous address rocketMinipoolDelegatePrev = rocketMinipoolDelegate; // Set new delegate rocketMinipoolDelegate = getContractAddress("rocketMinipoolDelegate"); // Verify require(rocketMinipoolDelegate != rocketMinipoolDelegatePrev, "New delegate is the same as the existing one"); // Log event emit DelegateUpgraded(rocketMinipoolDelegatePrev, rocketMinipoolDelegate, block.timestamp); } // Rollback to previous delegate contract function delegateRollback() external onlyMinipoolOwner { // Make sure they have upgraded before require(rocketMinipoolDelegatePrev != address(0x0), "Previous delegate contract is not set"); // Store original address originalDelegate = rocketMinipoolDelegate; // Update delegate to previous and zero out previous rocketMinipoolDelegate = rocketMinipoolDelegatePrev; rocketMinipoolDelegatePrev = address(0x0); // Log event emit DelegateRolledBack(originalDelegate, rocketMinipoolDelegate, block.timestamp); } // If set to true, will automatically use the latest delegate contract function setUseLatestDelegate(bool _setting) external onlyMinipoolOwner { useLatestDelegate = _setting; } // Getter for useLatestDelegate setting function getUseLatestDelegate() external view returns (bool) { return useLatestDelegate; } // Returns the address of the minipool's stored delegate function getDelegate() external view returns (address) { return rocketMinipoolDelegate; } // Returns the address of the minipool's previous delegate (or address(0) if not set) function getPreviousDelegate() external view returns (address) { return rocketMinipoolDelegatePrev; } // Returns the delegate which will be used when calling this minipool taking into account useLatestDelegate setting function getEffectiveDelegate() external view returns (address) { return useLatestDelegate ? getContractAddress("rocketMinipoolDelegate") : rocketMinipoolDelegate; } // Delegate all other calls to minipool delegate contract fallback(bytes calldata _input) external payable returns (bytes memory) { // If useLatestDelegate is set, use the latest delegate contract address delegateContract = useLatestDelegate ? getContractAddress("rocketMinipoolDelegate") : rocketMinipoolDelegate; // Check for contract existence require(contractExists(delegateContract), "Delegate contract does not exist"); // Execute delegatecall (bool success, bytes memory data) = delegateContract.delegatecall(_input); if (!success) { revert(getRevertMessage(data)); } return data; } // Get the address of a Rocket Pool network contract function getContractAddress(string memory _contractName) private view returns (address) { address contractAddress = rocketStorage.getAddress(keccak256(abi.encodePacked("contract.address", _contractName))); require(contractAddress != address(0x0), "Contract not found"); return contractAddress; } // Get a revert message from delegatecall return data function getRevertMessage(bytes memory _returnData) private pure returns (string memory) { if (_returnData.length < 68) { return "Transaction reverted silently"; } assembly { _returnData := add(_returnData, 0x04) } return abi.decode(_returnData, (string)); } // Returns true if contract exists at _contractAddress (if called during that contract's construction it will return a false negative) function contractExists(address _contractAddress) private returns (bool) { uint32 codeSize; assembly { codeSize := extcodesize(_contractAddress) } return codeSize > 0; } }
/** * . * / \ * |.'.| * |'.'| * ,'| |`. * |,-'-|-'-.| * __|_| | _ _ _____ _ * | ___ \| | | | | | ___ \ | | * | |_/ /|__ ___| | _____| |_ | |_/ /__ ___ | | * | // _ \ / __| |/ / _ \ __| | __/ _ \ / _ \| | * | |\ \ (_) | (__| < __/ |_ | | | (_) | (_) | | * \_| \_\___/ \___|_|\_\___|\__| \_| \___/ \___/|_| * +---------------------------------------------------+ * | DECENTRALISED STAKING PROTOCOL FOR ETHEREUM 2.0 | * +---------------------------------------------------+ * * Rocket Pool is a first-of-its-kind ETH2 Proof of Stake protocol, designed to be community owned, * decentralised, trustless and compatible with staking in Ethereum 2.0. * * For more information about Rocket Pool, visit https://rocketpool.net * * Authors: David Rugendyke, Jake Pospischil, Kane Wallmann, Darren Langley, Joe Clapis, Nick Doherty * */ pragma solidity 0.7.6; // SPDX-License-Identifier: GPL-3.0-only import "../../interface/RocketStorageInterface.sol"; import "../../types/MinipoolDeposit.sol"; import "../../types/MinipoolStatus.sol"; // The RocketMinipool contract storage layout, shared by RocketMinipoolDelegate // ****************************************************** // Note: This contract MUST NOT BE UPDATED after launch. // All deployed minipool contracts must maintain a // Consistent storage layout with RocketMinipoolDelegate. // ****************************************************** abstract contract RocketMinipoolStorageLayout { // Storage state enum enum StorageState { Undefined, Uninitialised, Initialised } // Main Rocket Pool storage contract RocketStorageInterface internal rocketStorage = RocketStorageInterface(0); // Status MinipoolStatus internal status; uint256 internal statusBlock; uint256 internal statusTime; uint256 internal withdrawalBlock; // Deposit type MinipoolDeposit internal depositType; // Node details address internal nodeAddress; uint256 internal nodeFee; uint256 internal nodeDepositBalance; bool internal nodeDepositAssigned; uint256 internal nodeRefundBalance; uint256 internal nodeSlashBalance; // User deposit details uint256 internal userDepositBalance; uint256 internal userDepositAssignedTime; // Upgrade options bool internal useLatestDelegate = false; address internal rocketMinipoolDelegate; address internal rocketMinipoolDelegatePrev; // Local copy of RETH address address internal rocketTokenRETH; // Local copy of penalty contract address internal rocketMinipoolPenalty; // Used to prevent direct access to delegate and prevent calling initialise more than once StorageState storageState = StorageState.Undefined; // Whether node operator has finalised the pool bool internal finalised; // Trusted member scrub votes mapping(address => bool) memberScrubVotes; uint256 totalScrubVotes; }
/** * . * / \ * |.'.| * |'.'| * ,'| |`. * |,-'-|-'-.| * __|_| | _ _ _____ _ * | ___ \| | | | | | ___ \ | | * | |_/ /|__ ___| | _____| |_ | |_/ /__ ___ | | * | // _ \ / __| |/ / _ \ __| | __/ _ \ / _ \| | * | |\ \ (_) | (__| < __/ |_ | | | (_) | (_) | | * \_| \_\___/ \___|_|\_\___|\__| \_| \___/ \___/|_| * +---------------------------------------------------+ * | DECENTRALISED STAKING PROTOCOL FOR ETHEREUM 2.0 | * +---------------------------------------------------+ * * Rocket Pool is a first-of-its-kind ETH2 Proof of Stake protocol, designed to be community owned, * decentralised, trustless and compatible with staking in Ethereum 2.0. * * For more information about Rocket Pool, visit https://rocketpool.net * * Authors: David Rugendyke, Jake Pospischil, Kane Wallmann, Darren Langley, Joe Clapis, Nick Doherty * */ pragma solidity 0.7.6; // SPDX-License-Identifier: GPL-3.0-only interface RocketStorageInterface { // Deploy status function getDeployedStatus() external view returns (bool); // Guardian function getGuardian() external view returns(address); function setGuardian(address _newAddress) external; function confirmGuardian() external; // Getters function getAddress(bytes32 _key) external view returns (address); function getUint(bytes32 _key) external view returns (uint); function getString(bytes32 _key) external view returns (string memory); function getBytes(bytes32 _key) external view returns (bytes memory); function getBool(bytes32 _key) external view returns (bool); function getInt(bytes32 _key) external view returns (int); function getBytes32(bytes32 _key) external view returns (bytes32); // Setters function setAddress(bytes32 _key, address _value) external; function setUint(bytes32 _key, uint _value) external; function setString(bytes32 _key, string calldata _value) external; function setBytes(bytes32 _key, bytes calldata _value) external; function setBool(bytes32 _key, bool _value) external; function setInt(bytes32 _key, int _value) external; function setBytes32(bytes32 _key, bytes32 _value) external; // Deleters function deleteAddress(bytes32 _key) external; function deleteUint(bytes32 _key) external; function deleteString(bytes32 _key) external; function deleteBytes(bytes32 _key) external; function deleteBool(bytes32 _key) external; function deleteInt(bytes32 _key) external; function deleteBytes32(bytes32 _key) external; // Arithmetic function addUint(bytes32 _key, uint256 _amount) external; function subUint(bytes32 _key, uint256 _amount) external; // Protected storage function getNodeWithdrawalAddress(address _nodeAddress) external view returns (address); function getNodePendingWithdrawalAddress(address _nodeAddress) external view returns (address); function setWithdrawalAddress(address _nodeAddress, address _newWithdrawalAddress, bool _confirm) external; function confirmWithdrawalAddress(address _nodeAddress) external; }
/** * . * / \ * |.'.| * |'.'| * ,'| |`. * |,-'-|-'-.| * __|_| | _ _ _____ _ * | ___ \| | | | | | ___ \ | | * | |_/ /|__ ___| | _____| |_ | |_/ /__ ___ | | * | // _ \ / __| |/ / _ \ __| | __/ _ \ / _ \| | * | |\ \ (_) | (__| < __/ |_ | | | (_) | (_) | | * \_| \_\___/ \___|_|\_\___|\__| \_| \___/ \___/|_| * +---------------------------------------------------+ * | DECENTRALISED STAKING PROTOCOL FOR ETHEREUM 2.0 | * +---------------------------------------------------+ * * Rocket Pool is a first-of-its-kind ETH2 Proof of Stake protocol, designed to be community owned, * decentralised, trustless and compatible with staking in Ethereum 2.0. * * For more information about Rocket Pool, visit https://rocketpool.net * * Authors: David Rugendyke, Jake Pospischil, Kane Wallmann, Darren Langley, Joe Clapis, Nick Doherty * */ pragma solidity 0.7.6; // SPDX-License-Identifier: GPL-3.0-only // Represents the type of deposits required by a minipool enum MinipoolDeposit { None, // Marks an invalid deposit type Full, // The minipool requires 32 ETH from the node operator, 16 ETH of which will be refinanced from user deposits Half, // The minipool required 16 ETH from the node operator to be matched with 16 ETH from user deposits Empty // The minipool requires 0 ETH from the node operator to be matched with 32 ETH from user deposits (trusted nodes only) }
/** * . * / \ * |.'.| * |'.'| * ,'| |`. * |,-'-|-'-.| * __|_| | _ _ _____ _ * | ___ \| | | | | | ___ \ | | * | |_/ /|__ ___| | _____| |_ | |_/ /__ ___ | | * | // _ \ / __| |/ / _ \ __| | __/ _ \ / _ \| | * | |\ \ (_) | (__| < __/ |_ | | | (_) | (_) | | * \_| \_\___/ \___|_|\_\___|\__| \_| \___/ \___/|_| * +---------------------------------------------------+ * | DECENTRALISED STAKING PROTOCOL FOR ETHEREUM 2.0 | * +---------------------------------------------------+ * * Rocket Pool is a first-of-its-kind ETH2 Proof of Stake protocol, designed to be community owned, * decentralised, trustless and compatible with staking in Ethereum 2.0. * * For more information about Rocket Pool, visit https://rocketpool.net * * Authors: David Rugendyke, Jake Pospischil, Kane Wallmann, Darren Langley, Joe Clapis, Nick Doherty * */ pragma solidity 0.7.6; // SPDX-License-Identifier: GPL-3.0-only // Represents a minipool's status within the network enum MinipoolStatus { Initialised, // The minipool has been initialised and is awaiting a deposit of user ETH Prelaunch, // The minipool has enough ETH to begin staking and is awaiting launch by the node operator Staking, // The minipool is currently staking Withdrawable, // The minipool has become withdrawable on the beacon chain and can be withdrawn from by the node operator Dissolved // The minipool has been dissolved and its user deposited ETH has been returned to the deposit pool }
{ "remappings": [], "optimizer": { "enabled": true, "runs": 15000 }, "evmVersion": "istanbul", "libraries": {}, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "abi" ] } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"contract RocketStorageInterface","name":"_rocketStorageAddress","type":"address"},{"internalType":"address","name":"_nodeAddress","type":"address"},{"internalType":"enum MinipoolDeposit","name":"_depositType","type":"uint8"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldDelegate","type":"address"},{"indexed":false,"internalType":"address","name":"newDelegate","type":"address"},{"indexed":false,"internalType":"uint256","name":"time","type":"uint256"}],"name":"DelegateRolledBack","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldDelegate","type":"address"},{"indexed":false,"internalType":"address","name":"newDelegate","type":"address"},{"indexed":false,"internalType":"uint256","name":"time","type":"uint256"}],"name":"DelegateUpgraded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"time","type":"uint256"}],"name":"EtherReceived","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"delegateRollback","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"delegateUpgrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getDelegate","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getEffectiveDelegate","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPreviousDelegate","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getUseLatestDelegate","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_setting","type":"bool"}],"name":"setUseLatestDelegate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Deployed Bytecode
0x6080604052600436106100745760003560e01c80638dfe8b2d1161004e5780638dfe8b2d1461034f5780638ee7d0cb14610364578063bc7f3b501461038d578063be1d1d32146103a2576100b4565b80631dcef0bf146102ce57806326d1c0681461030c57806352def61d14610323576100b4565b366100b45760408051348152426020820152815133927f1d57945c1033a96907a78f6e0ebf6a03815725dac25f33cc806558670344ac88928290030190a2005b600c546000903690606090839060ff166100eb57600c54610100900473ffffffffffffffffffffffffffffffffffffffff16610129565b6101296040518060400160405280601681526020017f726f636b65744d696e69706f6f6c44656c6567617465000000000000000000008152506103b7565b905061013481610596565b61019f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f44656c656761746520636f6e747261637420646f6573206e6f74206578697374604482015290519081900360640190fd5b6000808273ffffffffffffffffffffffffffffffffffffffff1686866040518083838082843760405192019450600093509091505080830381855af49150503d806000811461020a576040519150601f19603f3d011682016040523d82523d6000602084013e61020f565b606091505b5091509150816102c057610222816105a2565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561028557818101518382015260200161026d565b50505050905090810190601f1680156102b25780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b805195506020019350505050f35b3480156102da57600080fd5b506102e36106b9565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b34801561031857600080fd5b5061032161072c565b005b34801561032f57600080fd5b506103216004803603602081101561034657600080fd5b50351515610a09565b34801561035b57600080fd5b50610321610b7c565b34801561037057600080fd5b50610379610dee565b604080519115158252519081900360200190f35b34801561039957600080fd5b506102e3610df7565b3480156103ae57600080fd5b506102e3610e18565b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166321f8a7218460405160200180807f636f6e74726163742e616464726573730000000000000000000000000000000081525060100182805190602001908083835b6020831061046f57805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09092019160209182019101610432565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156104de57600080fd5b505afa1580156104f2573d6000803e3d6000fd5b505050506040513d602081101561050857600080fd5b5051905073ffffffffffffffffffffffffffffffffffffffff811661058e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f436f6e7472616374206e6f7420666f756e640000000000000000000000000000604482015290519081900360640190fd5b90505b919050565b3b63ffffffff16151590565b60606044825110156105e8575060408051808201909152601d81527f5472616e73616374696f6e2072657665727465642073696c656e746c790000006020820152610591565b600482018051909260240190602081101561060257600080fd5b810190808051604051939291908464010000000082111561062257600080fd5b90830190602082018581111561063757600080fd5b825164010000000081118282018810171561065157600080fd5b82525081516020918201929091019080838360005b8381101561067e578181015183820152602001610666565b50505050905090810190601f1680156106ab5780820380516001836020036101000a031916815260200191505b506040525050509050919050565b600c5460009060ff166106e957600c54610100900473ffffffffffffffffffffffffffffffffffffffff16610727565b6107276040518060400160405280601681526020017f726f636b65744d696e69706f6f6c44656c6567617465000000000000000000008152506103b7565b905090565b6000805460048054604080517f5b49ff6200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff61010090930483169381019390935251921691635b49ff6291602480820192602092909190829003018186803b1580156107a957600080fd5b505afa1580156107bd573d6000803e3d6000fd5b505050506040513d60208110156107d357600080fd5b5051600454909150610100900473ffffffffffffffffffffffffffffffffffffffff1633148061081857503373ffffffffffffffffffffffffffffffffffffffff8216145b61086d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d815260200180610e86602d913960400191505060405180910390fd5b600c54600d805461010090920473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffff000000000000000000000000000000000000000090921691909117905560408051808201909152601681527f726f636b65744d696e69706f6f6c44656c65676174650000000000000000000060208201526108f7906103b7565b600c80547fffffffffffffffffffffff0000000000000000000000000000000000000000ff1661010073ffffffffffffffffffffffffffffffffffffffff93841681029190911791829055600d548316910490911614156109a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c815260200180610e5a602c913960400191505060405180910390fd5b600d54600c546040805173ffffffffffffffffffffffffffffffffffffffff93841681526101009092049092166020820152428183015290517f720d539b7abaee498c7536b8bf9f854bcd839fb4db9dc00e7494c219b3a20d459181900360600190a150565b6000805460048054604080517f5b49ff6200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff61010090930483169381019390935251921691635b49ff6291602480820192602092909190829003018186803b158015610a8657600080fd5b505afa158015610a9a573d6000803e3d6000fd5b505050506040513d6020811015610ab057600080fd5b5051600454909150610100900473ffffffffffffffffffffffffffffffffffffffff16331480610af557503373ffffffffffffffffffffffffffffffffffffffff8216145b610b4a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d815260200180610e86602d913960400191505060405180910390fd5b50600c80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b6000805460048054604080517f5b49ff6200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff61010090930483169381019390935251921691635b49ff6291602480820192602092909190829003018186803b158015610bf957600080fd5b505afa158015610c0d573d6000803e3d6000fd5b505050506040513d6020811015610c2357600080fd5b5051600454909150610100900473ffffffffffffffffffffffffffffffffffffffff16331480610c6857503373ffffffffffffffffffffffffffffffffffffffff8216145b610cbd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d815260200180610e86602d913960400191505060405180910390fd5b600d5473ffffffffffffffffffffffffffffffffffffffff16610d2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180610e356025913960400191505060405180910390fd5b600c8054600d805473ffffffffffffffffffffffffffffffffffffffff8181166101009081027fffffffffffffffffffffff0000000000000000000000000000000000000000ff861617958690557fffffffffffffffffffffffff000000000000000000000000000000000000000090921690925560408051938290048316808552919094049091166020830152428284015291517f01d12a47982bd695d9fa134134fa172f56f650d817bb4fb0bd4ae3754d2fdca69181900360600190a15050565b600c5460ff1690565b600c54610100900473ffffffffffffffffffffffffffffffffffffffff1690565b600d5473ffffffffffffffffffffffffffffffffffffffff169056fe50726576696f75732064656c656761746520636f6e7472616374206973206e6f74207365744e65772064656c6567617465206973207468652073616d6520617320746865206578697374696e67206f6e654f6e6c7920746865206e6f6465206f70657261746f722063616e206163636573732074686973206d6574686f64a26469706673582212209a6daedd83e54e66fbfbf927322718b812db513528d0b0bf4667b671d50dbd5364736f6c63430007060033
Deployed Bytecode Sourcemap
1309:5914:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3118:53;;;3144:9;3118:53;;3155:15;3118:53;;;;;;3132:10;;3118:53;;;;;;;;1309:5914;;5686:17;;1309:5914;;;;5562:12;;1309:5914;;5686:17;;:89;;5753:22;;;;;;;5686:89;;;5706:44;;;;;;;;;;;;;;;;;;:18;:44::i;:::-;5659:116;;5833:32;5848:16;5833:14;:32::i;:::-;5825:77;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5945:12;5959:17;5980:16;:29;;6010:6;;5980:37;;;;;;;;;;;;;;-1:-1:-1;5980:37:0;;-1:-1:-1;5980:37:0;;-1:-1:-1;;5980:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5944:73;;;;6032:7;6027:49;;6050:22;6067:4;6050:16;:22::i;:::-;6043:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6027:49;1309:5914;;;-1:-1:-1;1309:5914:0;;;-1:-1:-1;;;;1309:5914:0;5259:177;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3253:519;;;;;;;;;;;;;:::i;:::-;;4487:117;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4487:117:0;;;;:::i;3824:582::-;;;;;;;;;;;;;:::i;4654:102::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;4823:101;;;;;;;;;;;;;:::i;5020:113::-;;;;;;;;;;;;;:::i;6166:323::-;6245:7;6264:23;6290:13;;;;;;;;;;:24;;;6362:13;6325:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6315:62;;;;;;6290:88;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6290:88:0;;-1:-1:-1;6396:31:0;;;6388:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6467:15;-1:-1:-1;6166:323:0;;;;:::o;7004:217::-;7147:29;7202:12;;;;;7004:217::o;6553:306::-;6627:13;6677:2;6656:11;:18;:23;6652:72;;;-1:-1:-1;6683:38:0;;;;;;;;;;;;;;;;;;;6652:72;6788:4;6771:22;;6819:33;;6771:22;;6819:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6819:33:0;;;;;;;;;;-1:-1:-1;6819:33:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6812:40;;6553:306;;;:::o;5259:177::-;5340:17;;5314:7;;5340:17;;:89;;5407:22;;;;;;;5340:89;;;5360:44;;;;;;;;;;;;;;;;;;:18;:44::i;:::-;5333:96;;5259:177;:::o;3253:519::-;1790:25;1818:13;;1857:11;;;1818:51;;;;;;:13;;1857:11;;;;;1818:51;;;;;;;;:13;;;:38;;:51;;;;;;;;;;;;;;;:13;:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1818:51:0;1901:11;;1818:51;;-1:-1:-1;1901:11:0;;;;;1887:10;:25;;:60;;-1:-1:-1;1916:10:0;:31;;;;1887:60;1879:118;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3378:22:::1;::::0;3349:26:::1;:51:::0;;3378:22:::1;::::0;;::::1;;;3349:51:::0;;;::::1;::::0;;;::::1;::::0;;3463:44:::1;::::0;;;;::::1;::::0;;;::::1;::::0;;::::1;;::::0;::::1;::::0;::::1;::::0;:18:::1;:44::i;:::-;3438:22;:69:::0;;;::::1;;;::::0;;::::1;::::0;::::1;::::0;;;::::1;::::0;;;;3569:26:::1;::::0;;::::1;3543:22:::0;::::1;::::0;;::::1;:52;;3535:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3697:26;::::0;3725:22:::1;::::0;3680:85:::1;::::0;;3697:26:::1;::::0;;::::1;3680:85:::0;;3697:26:::1;3725:22:::0;;::::1;::::0;;::::1;3680:85;::::0;::::1;::::0;3749:15:::1;3680:85:::0;;;;;;::::1;::::0;;;;;;;::::1;3253:519:::0;:::o;4487:117::-;1790:25;1818:13;;1857:11;;;1818:51;;;;;;:13;;1857:11;;;;;1818:51;;;;;;;;:13;;;:38;;:51;;;;;;;;;;;;;;;:13;:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1818:51:0;1901:11;;1818:51;;-1:-1:-1;1901:11:0;;;;;1887:10;:25;;:60;;-1:-1:-1;1916:10:0;:31;;;;1887:60;1879:118;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4569:17:0::1;:28:::0;;;::::1;::::0;::::1;;::::0;;;::::1;::::0;;4487:117::o;3824:582::-;1790:25;1818:13;;1857:11;;;1818:51;;;;;;:13;;1857:11;;;;;1818:51;;;;;;;;:13;;;:38;;:51;;;;;;;;;;;;;;;:13;:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1818:51:0;1901:11;;1818:51;;-1:-1:-1;1901:11:0;;;;;1887:10;:25;;:60;;-1:-1:-1;1916:10:0;:31;;;;1887:60;1879:118;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3944:26:::1;::::0;:42:::1;:26;3936:92;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4091:22;::::0;;4209:26:::1;::::0;;4091:22:::1;4209:26:::0;;::::1;4091:22;4184:51:::0;;::::1;::::0;;::::1;;::::0;;;;4245:41;;;::::1;::::0;;;4322:77:::1;::::0;;4091:22;;;::::1;::::0;::::1;4322:77:::0;;;4359:22;;;::::1;::::0;;::::1;4322:77;::::0;::::1;::::0;4383:15:::1;4322:77:::0;;;;;;::::1;::::0;;;;;;;::::1;2007:1;3824:582:::0;:::o;4654:102::-;4732:17;;;;4654:102;:::o;4823:101::-;4895:22;;;;;;;;4823:101::o;5020:113::-;5100:26;;;;5020:113;:::o
Swarm Source
ipfs://9a6daedd83e54e66fbfbf927322718b812db513528d0b0bf4667b671d50dbd53
Latest 25 from a total of 87 withdrawals (2.615258888 ETH withdrawn)
Validator Index | Block | Amount | |
---|---|---|---|
439964 | 21590957 | 5 days ago | 0.019228001 ETH |
439964 | 21524668 | 14 days ago | 0.019357201 ETH |
439964 | 21458085 | 23 days ago | 0.019410472 ETH |
439964 | 21391024 | 33 days ago | 0.019466466 ETH |
439964 | 21323664 | 42 days ago | 0.019543227 ETH |
439964 | 21256142 | 52 days ago | 0.019510566 ETH |
439964 | 21188561 | 61 days ago | 0.019414909 ETH |
439964 | 21120748 | 70 days ago | 0.019418816 ETH |
439964 | 21053105 | 80 days ago | 0.019411938 ETH |
439964 | 20985781 | 89 days ago | 0.019385681 ETH |
439964 | 20918369 | 99 days ago | 0.018010291 ETH |
439964 | 20851086 | 108 days ago | 0.01924082 ETH |
439964 | 20784215 | 117 days ago | 0.019309617 ETH |
439964 | 20717399 | 127 days ago | 0.019269808 ETH |
439964 | 20650847 | 136 days ago | 0.019160965 ETH |
439964 | 20584664 | 145 days ago | 0.018357853 ETH |
439964 | 20518608 | 155 days ago | 0.019112189 ETH |
439964 | 20452629 | 164 days ago | 0.018953265 ETH |
439964 | 20387223 | 173 days ago | 0.018286877 ETH |
439964 | 20322529 | 182 days ago | 0.018817007 ETH |
439964 | 20257873 | 191 days ago | 0.018804573 ETH |
439964 | 20193400 | 200 days ago | 0.01878579 ETH |
439964 | 20129100 | 209 days ago | 0.018781049 ETH |
439964 | 20065214 | 218 days ago | 0.01868368 ETH |
439964 | 20001921 | 227 days ago | 0.018549883 ETH |
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.