More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 4,707 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Claim | 20886319 | 100 days ago | IN | 0 ETH | 0.00096701 | ||||
Claim | 20368960 | 172 days ago | IN | 0 ETH | 0.00044765 | ||||
Claim | 19038829 | 359 days ago | IN | 0 ETH | 0.00242304 | ||||
Claim | 18635224 | 415 days ago | IN | 0 ETH | 0.00446468 | ||||
Claim | 18053677 | 497 days ago | IN | 0 ETH | 0.00137833 | ||||
Claim | 18002160 | 504 days ago | IN | 0 ETH | 0.00157494 | ||||
Claim | 17535124 | 569 days ago | IN | 0 ETH | 0.00139072 | ||||
Claim | 17516274 | 572 days ago | IN | 0 ETH | 0.00058754 | ||||
Claim | 17516197 | 572 days ago | IN | 0 ETH | 0.00063886 | ||||
Claim | 17471327 | 578 days ago | IN | 0 ETH | 0.00067306 | ||||
Claim | 17471293 | 578 days ago | IN | 0 ETH | 0.0006953 | ||||
Claim | 17471282 | 578 days ago | IN | 0 ETH | 0.00070896 | ||||
Claim | 17471275 | 578 days ago | IN | 0 ETH | 0.00070061 | ||||
Claim | 17471271 | 578 days ago | IN | 0 ETH | 0.00065814 | ||||
Claim | 17471264 | 578 days ago | IN | 0 ETH | 0.00064133 | ||||
Claim | 17385484 | 590 days ago | IN | 0 ETH | 0.00206669 | ||||
Claim | 17166545 | 621 days ago | IN | 0 ETH | 0.01236189 | ||||
Claim | 17125161 | 627 days ago | IN | 0 ETH | 0.00224193 | ||||
Claim | 17071778 | 635 days ago | IN | 0 ETH | 0.00398838 | ||||
Claim | 17068012 | 635 days ago | IN | 0 ETH | 0.00317756 | ||||
Claim | 17064957 | 635 days ago | IN | 0 ETH | 0.00405745 | ||||
Claim | 17058374 | 636 days ago | IN | 0 ETH | 0.00347254 | ||||
Claim | 17057821 | 636 days ago | IN | 0 ETH | 0.00173313 | ||||
Claim | 17054919 | 637 days ago | IN | 0 ETH | 0.00269529 | ||||
Claim | 17045085 | 638 days ago | IN | 0 ETH | 0.00299072 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
EulDistributor
Compiler Version
v0.8.10+commit.fc410830
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: GPL-2.0-or-later pragma solidity ^0.8.0; import "../vendor/MerkleProof.sol"; import "../Utils.sol"; interface IEulStakes { function stakeGift(address beneficiary, address underlying, uint amount) external; } contract EulDistributor { address public immutable eul; address public immutable eulStakes; string public constant name = "EUL Distributor"; address public owner; bytes32 public currRoot; bytes32 public prevRoot; mapping(address => mapping(address => uint)) public claimed; // account -> token -> amount event OwnerChanged(address indexed newOwner); constructor(address eul_, address eulStakes_) { eul = eul_; eulStakes = eulStakes_; owner = msg.sender; Utils.safeApprove(eul_, eulStakes_, type(uint).max); } // Owner functions modifier onlyOwner { require(msg.sender == owner, "unauthorized"); _; } function transferOwnership(address newOwner) external onlyOwner { owner = newOwner; emit OwnerChanged(newOwner); } function updateRoot(bytes32 newRoot) external onlyOwner { prevRoot = currRoot; currRoot = newRoot; } // Claiming /// @notice Claim distributed tokens /// @param account Address that should receive tokens /// @param token Address of token being claimed (ie EUL) /// @param proof Merkle proof that validates this claim /// @param stake If non-zero, then the address of a token to auto-stake to, instead of claiming function claim(address account, address token, uint claimable, bytes32[] calldata proof, address stake) external { bytes32 candidateRoot = MerkleProof.processProof(proof, keccak256(abi.encodePacked(account, token, claimable))); // 72 byte leaf require(candidateRoot == currRoot || candidateRoot == prevRoot, "proof invalid/expired"); uint alreadyClaimed = claimed[account][token]; require(claimable > alreadyClaimed, "already claimed"); uint amount; unchecked { amount = claimable - alreadyClaimed; } claimed[account][token] = claimable; if (stake == address(0)) { Utils.safeTransfer(token, account, amount); } else { require(msg.sender == account, "can only auto-stake for yourself"); require(token == eul, "can only auto-stake EUL"); IEulStakes(eulStakes).stakeGift(account, stake, amount); } } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.5.0) (utils/cryptography/MerkleProof.sol) pragma solidity ^0.8.0; /** * @dev These functions deal with verification of Merkle Trees proofs. * * The proofs can be generated using the JavaScript library * https://github.com/miguelmota/merkletreejs[merkletreejs]. * Note: the hashing algorithm should be keccak256 and pair sorting should be enabled. * * See `test/utils/cryptography/MerkleProof.test.js` for some examples. */ library MerkleProof { /** * @dev Returns true if a `leaf` can be proved to be a part of a Merkle tree * defined by `root`. For this, a `proof` must be provided, containing * sibling hashes on the branch from the leaf to the root of the tree. Each * pair of leaves and each pair of pre-images are assumed to be sorted. */ function verify( bytes32[] memory proof, bytes32 root, bytes32 leaf ) internal pure returns (bool) { return processProof(proof, leaf) == root; } /** * @dev Returns the rebuilt hash obtained by traversing a Merklee tree up * from `leaf` using `proof`. A `proof` is valid if and only if the rebuilt * hash matches the root of the tree. When processing the proof, the pairs * of leafs & pre-images are assumed to be sorted. * * _Available since v4.4._ */ function processProof(bytes32[] memory proof, bytes32 leaf) internal pure returns (bytes32) { bytes32 computedHash = leaf; for (uint256 i = 0; i < proof.length; i++) { bytes32 proofElement = proof[i]; if (computedHash <= proofElement) { // Hash(current computed hash + current element of the proof) computedHash = _efficientHash(computedHash, proofElement); } else { // Hash(current element of the proof + current computed hash) computedHash = _efficientHash(proofElement, computedHash); } } return computedHash; } function _efficientHash(bytes32 a, bytes32 b) private pure returns (bytes32 value) { assembly { mstore(0x00, a) mstore(0x20, b) value := keccak256(0x00, 0x40) } } }
// SPDX-License-Identifier: GPL-2.0-or-later pragma solidity ^0.8.0; import "./Interfaces.sol"; library Utils { function safeTransferFrom(address token, address from, address to, uint value) internal { (bool success, bytes memory data) = token.call(abi.encodeWithSelector(IERC20.transferFrom.selector, from, to, value)); require(success && (data.length == 0 || abi.decode(data, (bool))), string(data)); } function safeTransfer(address token, address to, uint value) internal { (bool success, bytes memory data) = token.call(abi.encodeWithSelector(IERC20.transfer.selector, to, value)); require(success && (data.length == 0 || abi.decode(data, (bool))), string(data)); } function safeApprove(address token, address to, uint value) internal { (bool success, bytes memory data) = token.call(abi.encodeWithSelector(IERC20.approve.selector, to, value)); require(success && (data.length == 0 || abi.decode(data, (bool))), string(data)); } }
// SPDX-License-Identifier: GPL-2.0-or-later pragma solidity ^0.8.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); } interface IERC20Permit { function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; function permit(address holder, address spender, uint256 nonce, uint256 expiry, bool allowed, uint8 v, bytes32 r, bytes32 s) external; function permit(address owner, address spender, uint value, uint deadline, bytes calldata signature) external; } interface IERC3156FlashBorrower { function onFlashLoan(address initiator, address token, uint256 amount, uint256 fee, bytes calldata data) external returns (bytes32); } interface IERC3156FlashLender { function maxFlashLoan(address token) external view returns (uint256); function flashFee(address token, uint256 amount) external view returns (uint256); function flashLoan(IERC3156FlashBorrower receiver, address token, uint256 amount, bytes calldata data) external returns (bool); }
{ "optimizer": { "enabled": true, "runs": 1000000 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "abi" ] } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"eul_","type":"address"},{"internalType":"address","name":"eulStakes_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnerChanged","type":"event"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"claimable","type":"uint256"},{"internalType":"bytes32[]","name":"proof","type":"bytes32[]"},{"internalType":"address","name":"stake","type":"address"}],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"claimed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currRoot","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"eul","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"eulStakes","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"prevRoot","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"newRoot","type":"bytes32"}],"name":"updateRoot","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60c06040523480156200001157600080fd5b5060405162000f7c38038062000f7c83398101604081905262000034916200019e565b6001600160a01b03828116608052811660a05260008054336001600160a01b03199091161790556200007682826000196200007e602090811b6200079e17901c565b505062000287565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b1790529151600092839290871691620000dc919062000209565b6000604051808303816000865af19150503d80600081146200011b576040519150601f19603f3d011682016040523d82523d6000602084013e62000120565b606091505b50915091508180156200014e5750805115806200014e5750808060200190518101906200014e919062000227565b8190620001795760405162461bcd60e51b815260040162000170919062000252565b60405180910390fd5b505050505050565b80516001600160a01b03811681146200019957600080fd5b919050565b60008060408385031215620001b257600080fd5b620001bd8362000181565b9150620001cd6020840162000181565b90509250929050565b60005b83811015620001f3578181015183820152602001620001d9565b8381111562000203576000848401525b50505050565b600082516200021d818460208701620001d6565b9190910192915050565b6000602082840312156200023a57600080fd5b815180151581146200024b57600080fd5b9392505050565b602081526000825180602084015262000273816040850160208701620001d6565b601f01601f19169190910160400192915050565b60805160a051610cc1620002bb6000396000818161016801526106480152600081816101e701526105410152610cc16000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c80639011021811610076578063e3f5b1951161005b578063e3f5b19514610209578063f2fde38b14610212578063fdb4beda1461022557600080fd5b806390110218146101cf578063d0bd9067146101e257600080fd5b806321ff9970116100a757806321ff99701461014e57806367342d59146101635780638da5cb5b146101af57600080fd5b806306fdde03146100c35780630c9cbf0e14610115575b600080fd5b6100ff6040518060400160405280600f81526020017f45554c204469737472696275746f72000000000000000000000000000000000081525081565b60405161010c9190610a26565b60405180910390f35b610140610123366004610aa0565b600360209081526000928352604080842090915290825290205481565b60405190815260200161010c565b61016161015c366004610ad3565b61022e565b005b61018a7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161010c565b60005461018a9073ffffffffffffffffffffffffffffffffffffffff1681565b6101616101dd366004610aec565b6102be565b61018a7f000000000000000000000000000000000000000000000000000000000000000081565b61014060015481565b610161610220366004610b9c565b6106b0565b61014060025481565b60005473ffffffffffffffffffffffffffffffffffffffff1633146102b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f756e617574686f72697a6564000000000000000000000000000000000000000060448201526064015b60405180910390fd5b6001805460025555565b600061035b848480806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250506040517fffffffffffffffffffffffffffffffffffffffff00000000000000000000000060608d811b821660208401528c901b166034820152604881018a905260680191506103409050565b60405160208183030381529060405280519060200120610929565b905060015481148061036e575060025481145b6103d4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f70726f6f6620696e76616c69642f65787069726564000000000000000000000060448201526064016102ab565b73ffffffffffffffffffffffffffffffffffffffff8088166000908152600360209081526040808320938a1683529290522054808611610470576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f616c726561647920636c61696d6564000000000000000000000000000000000060448201526064016102ab565b73ffffffffffffffffffffffffffffffffffffffff80891660009081526003602090815260408083208b8516845290915290208790558187039084166104c0576104bb888a8361099d565b6106a5565b3373ffffffffffffffffffffffffffffffffffffffff8a161461053f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f63616e206f6e6c79206175746f2d7374616b6520666f7220796f757273656c6660448201526064016102ab565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff16146105f4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616e206f6e6c79206175746f2d7374616b652045554c00000000000000000060448201526064016102ab565b6040517f47a3644500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a811660048301528581166024830152604482018390527f000000000000000000000000000000000000000000000000000000000000000016906347a3644590606401600060405180830381600087803b15801561068c57600080fd5b505af11580156106a0573d6000803e3d6000fd5b505050505b505050505050505050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610731576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f756e617574686f72697a6564000000000000000000000000000000000000000060448201526064016102ab565b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8316908117825560405190917fa2ea9883a321a3e97b8266c2b078bfeec6d50c711ed71f874a90d500ae2eaf3691a250565b60405173ffffffffffffffffffffffffffffffffffffffff83811660248301526044820183905260009182918616907f095ea7b300000000000000000000000000000000000000000000000000000000906064015b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090941693909317909252905161087c9190610bbe565b6000604051808303816000865af19150503d80600081146108b9576040519150601f19603f3d011682016040523d82523d6000602084013e6108be565b606091505b50915091508180156108e85750805115806108e85750808060200190518101906108e89190610bda565b8190610921576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102ab9190610a26565b505050505050565b600081815b845181101561099557600085828151811061094b5761094b610bfc565b602002602001015190508083116109715760008381526020829052604090209250610982565b600081815260208490526040902092505b508061098d81610c2b565b91505061092e565b509392505050565b60405173ffffffffffffffffffffffffffffffffffffffff83811660248301526044820183905260009182918616907fa9059cbb00000000000000000000000000000000000000000000000000000000906064016107f3565b60005b83811015610a115781810151838201526020016109f9565b83811115610a20576000848401525b50505050565b6020815260008251806020840152610a458160408501602087016109f6565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610a9b57600080fd5b919050565b60008060408385031215610ab357600080fd5b610abc83610a77565b9150610aca60208401610a77565b90509250929050565b600060208284031215610ae557600080fd5b5035919050565b60008060008060008060a08789031215610b0557600080fd5b610b0e87610a77565b9550610b1c60208801610a77565b945060408701359350606087013567ffffffffffffffff80821115610b4057600080fd5b818901915089601f830112610b5457600080fd5b813581811115610b6357600080fd5b8a60208260051b8501011115610b7857600080fd5b602083019550809450505050610b9060808801610a77565b90509295509295509295565b600060208284031215610bae57600080fd5b610bb782610a77565b9392505050565b60008251610bd08184602087016109f6565b9190910192915050565b600060208284031215610bec57600080fd5b81518015158114610bb757600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415610c84577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b506001019056fea2646970667358221220b492a3c5904efd0b668fa6b35a5fd63c7a96a69147fe90d54444ab02a427976364736f6c634300080a0033000000000000000000000000d9fcd98c322942075a5c3860693e9f4f03aae07b000000000000000000000000c697bb6625d9f7adcf0fbf0cbd4dcf50d8716cd3
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100be5760003560e01c80639011021811610076578063e3f5b1951161005b578063e3f5b19514610209578063f2fde38b14610212578063fdb4beda1461022557600080fd5b806390110218146101cf578063d0bd9067146101e257600080fd5b806321ff9970116100a757806321ff99701461014e57806367342d59146101635780638da5cb5b146101af57600080fd5b806306fdde03146100c35780630c9cbf0e14610115575b600080fd5b6100ff6040518060400160405280600f81526020017f45554c204469737472696275746f72000000000000000000000000000000000081525081565b60405161010c9190610a26565b60405180910390f35b610140610123366004610aa0565b600360209081526000928352604080842090915290825290205481565b60405190815260200161010c565b61016161015c366004610ad3565b61022e565b005b61018a7f000000000000000000000000c697bb6625d9f7adcf0fbf0cbd4dcf50d8716cd381565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161010c565b60005461018a9073ffffffffffffffffffffffffffffffffffffffff1681565b6101616101dd366004610aec565b6102be565b61018a7f000000000000000000000000d9fcd98c322942075a5c3860693e9f4f03aae07b81565b61014060015481565b610161610220366004610b9c565b6106b0565b61014060025481565b60005473ffffffffffffffffffffffffffffffffffffffff1633146102b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f756e617574686f72697a6564000000000000000000000000000000000000000060448201526064015b60405180910390fd5b6001805460025555565b600061035b848480806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250506040517fffffffffffffffffffffffffffffffffffffffff00000000000000000000000060608d811b821660208401528c901b166034820152604881018a905260680191506103409050565b60405160208183030381529060405280519060200120610929565b905060015481148061036e575060025481145b6103d4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f70726f6f6620696e76616c69642f65787069726564000000000000000000000060448201526064016102ab565b73ffffffffffffffffffffffffffffffffffffffff8088166000908152600360209081526040808320938a1683529290522054808611610470576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f616c726561647920636c61696d6564000000000000000000000000000000000060448201526064016102ab565b73ffffffffffffffffffffffffffffffffffffffff80891660009081526003602090815260408083208b8516845290915290208790558187039084166104c0576104bb888a8361099d565b6106a5565b3373ffffffffffffffffffffffffffffffffffffffff8a161461053f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f63616e206f6e6c79206175746f2d7374616b6520666f7220796f757273656c6660448201526064016102ab565b7f000000000000000000000000d9fcd98c322942075a5c3860693e9f4f03aae07b73ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff16146105f4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f63616e206f6e6c79206175746f2d7374616b652045554c00000000000000000060448201526064016102ab565b6040517f47a3644500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a811660048301528581166024830152604482018390527f000000000000000000000000c697bb6625d9f7adcf0fbf0cbd4dcf50d8716cd316906347a3644590606401600060405180830381600087803b15801561068c57600080fd5b505af11580156106a0573d6000803e3d6000fd5b505050505b505050505050505050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610731576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f756e617574686f72697a6564000000000000000000000000000000000000000060448201526064016102ab565b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8316908117825560405190917fa2ea9883a321a3e97b8266c2b078bfeec6d50c711ed71f874a90d500ae2eaf3691a250565b60405173ffffffffffffffffffffffffffffffffffffffff83811660248301526044820183905260009182918616907f095ea7b300000000000000000000000000000000000000000000000000000000906064015b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090941693909317909252905161087c9190610bbe565b6000604051808303816000865af19150503d80600081146108b9576040519150601f19603f3d011682016040523d82523d6000602084013e6108be565b606091505b50915091508180156108e85750805115806108e85750808060200190518101906108e89190610bda565b8190610921576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102ab9190610a26565b505050505050565b600081815b845181101561099557600085828151811061094b5761094b610bfc565b602002602001015190508083116109715760008381526020829052604090209250610982565b600081815260208490526040902092505b508061098d81610c2b565b91505061092e565b509392505050565b60405173ffffffffffffffffffffffffffffffffffffffff83811660248301526044820183905260009182918616907fa9059cbb00000000000000000000000000000000000000000000000000000000906064016107f3565b60005b83811015610a115781810151838201526020016109f9565b83811115610a20576000848401525b50505050565b6020815260008251806020840152610a458160408501602087016109f6565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610a9b57600080fd5b919050565b60008060408385031215610ab357600080fd5b610abc83610a77565b9150610aca60208401610a77565b90509250929050565b600060208284031215610ae557600080fd5b5035919050565b60008060008060008060a08789031215610b0557600080fd5b610b0e87610a77565b9550610b1c60208801610a77565b945060408701359350606087013567ffffffffffffffff80821115610b4057600080fd5b818901915089601f830112610b5457600080fd5b813581811115610b6357600080fd5b8a60208260051b8501011115610b7857600080fd5b602083019550809450505050610b9060808801610a77565b90509295509295509295565b600060208284031215610bae57600080fd5b610bb782610a77565b9392505050565b60008251610bd08184602087016109f6565b9190910192915050565b600060208284031215610bec57600080fd5b81518015158114610bb757600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415610c84577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b506001019056fea2646970667358221220b492a3c5904efd0b668fa6b35a5fd63c7a96a69147fe90d54444ab02a427976364736f6c634300080a0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000d9fcd98c322942075a5c3860693e9f4f03aae07b000000000000000000000000c697bb6625d9f7adcf0fbf0cbd4dcf50d8716cd3
-----Decoded View---------------
Arg [0] : eul_ (address): 0xd9Fcd98c322942075A5C3860693e9f4f03AAE07b
Arg [1] : eulStakes_ (address): 0xc697BB6625D9f7AdcF0fbf0cbd4DcF50D8716cd3
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000d9fcd98c322942075a5c3860693e9f4f03aae07b
Arg [1] : 000000000000000000000000c697bb6625d9f7adcf0fbf0cbd4dcf50d8716cd3
Deployed Bytecode Sourcemap
244:2267:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;348:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;486:59;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;1336:25:4;;;1324:2;1309:18;486:59:2;1190:177:4;1094:120:2;;;;;;:::i;:::-;;:::i;:::-;;308:34;;;;;;;;1733:42:4;1721:55;;;1703:74;;1691:2;1676:18;308:34:2;1557:226:4;402:20:2;;;;;;;;;1557:952;;;;;;:::i;:::-;;:::i;274:28::-;;;;;428:23;;;;;;954:134;;;;;;:::i;:::-;;:::i;457:23::-;;;;;;1094:120;908:5;;;;894:10;:19;886:44;;;;;;;3275:2:4;886:44:2;;;3257:21:4;3314:2;3294:18;;;3287:30;3353:14;3333:18;;;3326:42;3385:18;;886:44:2;;;;;;;;;1171:8:::1;::::0;;1160::::1;:19:::0;1189:18;1094:120::o;1557:952::-;1680:21;1704:87;1729:5;;1704:87;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1746:43:2;;3609:66:4;3704:2;3700:15;;;3696:24;;1746:43:2;;;3684:37:4;3755:15;;;3751:24;3737:12;;;3730:46;3792:12;;;3785:28;;;3829:12;;;-1:-1:-1;1746:43:2;;-1:-1:-1;3414:433:4;1746:43:2;;;;;;;;;;;;;1736:54;;;;;;1704:24;:87::i;:::-;1680:111;;1842:8;;1825:13;:25;:54;;;;1871:8;;1854:13;:25;1825:54;1817:88;;;;;;;4054:2:4;1817:88:2;;;4036:21:4;4093:2;4073:18;;;4066:30;4132:23;4112:18;;;4105:51;4173:18;;1817:88:2;3852:345:4;1817:88:2;1938:16;;;;1916:19;1938:16;;;:7;:16;;;;;;;;:23;;;;;;;;;;1979:26;;;1971:54;;;;;;;4404:2:4;1971:54:2;;;4386:21:4;4443:2;4423:18;;;4416:30;4482:17;4462:18;;;4455:45;4517:18;;1971:54:2;4202:339:4;1971:54:2;2137:16;;;;2036:11;2137:16;;;:7;:16;;;;;;;;:23;;;;;;;;;;:35;;;2090:26;;;;2187:19;;2183:320;;2222:42;2241:5;2248:7;2257:6;2222:18;:42::i;:::-;2183:320;;;2303:10;:21;;;;2295:66;;;;;;;4748:2:4;2295:66:2;;;4730:21:4;;;4767:18;;;4760:30;4826:34;4806:18;;;4799:62;4878:18;;2295:66:2;4546:356:4;2295:66:2;2392:3;2383:12;;:5;:12;;;2375:48;;;;;;;5109:2:4;2375:48:2;;;5091:21:4;5148:2;5128:18;;;5121:30;5187:25;5167:18;;;5160:53;5230:18;;2375:48:2;4907:347:4;2375:48:2;2437:55;;;;;:31;5540:15:4;;;2437:55:2;;;5522:34:4;5592:15;;;5572:18;;;5565:43;5624:18;;;5617:34;;;2448:9:2;2437:31;;;;5434:18:4;;2437:55:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2183:320;1670:839;;;1557:952;;;;;;:::o;954:134::-;908:5;;;;894:10;:19;886:44;;;;;;;3275:2:4;886:44:2;;;3257:21:4;3314:2;3294:18;;;3287:30;3353:14;3333:18;;;3326:42;3385:18;;886:44:2;3073:336:4;886:44:2;1028:5:::1;:16:::0;;;::::1;;::::0;::::1;::::0;;::::1;::::0;;1059:22:::1;::::0;1028:16;;1059:22:::1;::::0;::::1;954:134:::0;:::o;727:282:1:-;853:58;;842:10;5854:55:4;;;853:58:1;;;5836:74:4;5926:18;;;5919:34;;;807:12:1;;;;842:10;;;876:23;;5809:18:4;;853:58:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;842:70;;;;853:58;842:70;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;806:106;;;;930:7;:57;;;;-1:-1:-1;942:11:1;;:16;;:44;;;973:4;962:24;;;;;;;;;;;;:::i;:::-;996:4;922:80;;;;;;;;;;;;;;:::i;:::-;;796:213;;727:282;;;:::o;1398:662:3:-;1481:7;1523:4;1481:7;1537:488;1561:5;:12;1557:1;:16;1537:488;;;1594:20;1617:5;1623:1;1617:8;;;;;;;;:::i;:::-;;;;;;;1594:31;;1659:12;1643;:28;1639:376;;2134:13;2182:15;;;2217:4;2210:15;;;2263:4;2247:21;;1769:57;;1639:376;;;2134:13;2182:15;;;2217:4;2210:15;;;2263:4;2247:21;;1943:57;;1639:376;-1:-1:-1;1575:3:3;;;;:::i;:::-;;;;1537:488;;;-1:-1:-1;2041:12:3;1398:662;-1:-1:-1;;;1398:662:3:o;437:284:1:-;564:59;;553:10;5854:55:4;;;564:59:1;;;5836:74:4;5926:18;;;5919:34;;;518:12:1;;;;553:10;;;587:24;;5809:18:4;;564:59:1;5662:297:4;14:258;86:1;96:113;110:6;107:1;104:13;96:113;;;186:11;;;180:18;167:11;;;160:39;132:2;125:10;96:113;;;227:6;224:1;221:13;218:48;;;262:1;253:6;248:3;244:16;237:27;218:48;;14:258;;;:::o;277:442::-;426:2;415:9;408:21;389:4;458:6;452:13;501:6;496:2;485:9;481:18;474:34;517:66;576:6;571:2;560:9;556:18;551:2;543:6;539:15;517:66;:::i;:::-;635:2;623:15;640:66;619:88;604:104;;;;710:2;600:113;;277:442;-1:-1:-1;;277:442:4:o;724:196::-;792:20;;852:42;841:54;;831:65;;821:93;;910:1;907;900:12;821:93;724:196;;;:::o;925:260::-;993:6;1001;1054:2;1042:9;1033:7;1029:23;1025:32;1022:52;;;1070:1;1067;1060:12;1022:52;1093:29;1112:9;1093:29;:::i;:::-;1083:39;;1141:38;1175:2;1164:9;1160:18;1141:38;:::i;:::-;1131:48;;925:260;;;;;:::o;1372:180::-;1431:6;1484:2;1472:9;1463:7;1459:23;1455:32;1452:52;;;1500:1;1497;1490:12;1452:52;-1:-1:-1;1523:23:4;;1372:180;-1:-1:-1;1372:180:4:o;1788:907::-;1910:6;1918;1926;1934;1942;1950;2003:3;1991:9;1982:7;1978:23;1974:33;1971:53;;;2020:1;2017;2010:12;1971:53;2043:29;2062:9;2043:29;:::i;:::-;2033:39;;2091:38;2125:2;2114:9;2110:18;2091:38;:::i;:::-;2081:48;;2176:2;2165:9;2161:18;2148:32;2138:42;;2231:2;2220:9;2216:18;2203:32;2254:18;2295:2;2287:6;2284:14;2281:34;;;2311:1;2308;2301:12;2281:34;2349:6;2338:9;2334:22;2324:32;;2394:7;2387:4;2383:2;2379:13;2375:27;2365:55;;2416:1;2413;2406:12;2365:55;2456:2;2443:16;2482:2;2474:6;2471:14;2468:34;;;2498:1;2495;2488:12;2468:34;2551:7;2546:2;2536:6;2533:1;2529:14;2525:2;2521:23;2517:32;2514:45;2511:65;;;2572:1;2569;2562:12;2511:65;2603:2;2599;2595:11;2585:21;;2625:6;2615:16;;;;;2650:39;2684:3;2673:9;2669:19;2650:39;:::i;:::-;2640:49;;1788:907;;;;;;;;:::o;2882:186::-;2941:6;2994:2;2982:9;2973:7;2969:23;2965:32;2962:52;;;3010:1;3007;3000:12;2962:52;3033:29;3052:9;3033:29;:::i;:::-;3023:39;2882:186;-1:-1:-1;;;2882:186:4:o;5964:274::-;6093:3;6131:6;6125:13;6147:53;6193:6;6188:3;6181:4;6173:6;6169:17;6147:53;:::i;:::-;6216:16;;;;;5964:274;-1:-1:-1;;5964:274:4:o;6243:277::-;6310:6;6363:2;6351:9;6342:7;6338:23;6334:32;6331:52;;;6379:1;6376;6369:12;6331:52;6411:9;6405:16;6464:5;6457:13;6450:21;6443:5;6440:32;6430:60;;6486:1;6483;6476:12;6525:184;6577:77;6574:1;6567:88;6674:4;6671:1;6664:15;6698:4;6695:1;6688:15;6714:349;6753:3;6784:66;6777:5;6774:77;6771:257;;;6884:77;6881:1;6874:88;6985:4;6982:1;6975:15;7013:4;7010:1;7003:15;6771:257;-1:-1:-1;7055:1:4;7044:13;;6714:349::o
Swarm Source
ipfs://b492a3c5904efd0b668fa6b35a5fd63c7a96a69147fe90d54444ab02a4279763
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | 100.00% | $3.43 | 248,671.1927 | $854,140.71 |
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.