More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 229 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Claim | 14557512 | 936 days ago | IN | 0 ETH | 0.00169701 | ||||
Claim | 14518781 | 942 days ago | IN | 0 ETH | 0.004528 | ||||
Claim | 14416348 | 958 days ago | IN | 0 ETH | 0.00146634 | ||||
Claim | 14411970 | 959 days ago | IN | 0 ETH | 0.00426813 | ||||
Claim | 14411575 | 959 days ago | IN | 0 ETH | 0.00476152 | ||||
Claim | 14411565 | 959 days ago | IN | 0 ETH | 0.00436973 | ||||
Claim | 14411546 | 959 days ago | IN | 0 ETH | 0.00365198 | ||||
Claim | 14408767 | 960 days ago | IN | 0 ETH | 0.00300897 | ||||
Claim | 14408002 | 960 days ago | IN | 0 ETH | 0.00600855 | ||||
Claim | 14407991 | 960 days ago | IN | 0 ETH | 0.00680859 | ||||
Claim | 14407980 | 960 days ago | IN | 0 ETH | 0.00862351 | ||||
Claim | 14406186 | 960 days ago | IN | 0 ETH | 0.00308082 | ||||
Claim | 14405796 | 960 days ago | IN | 0 ETH | 0.00580158 | ||||
Claim | 14396119 | 962 days ago | IN | 0 ETH | 0.00192498 | ||||
Claim | 14396110 | 962 days ago | IN | 0 ETH | 0.00220505 | ||||
Claim | 14390315 | 962 days ago | IN | 0 ETH | 0.00140336 | ||||
Claim | 14389506 | 963 days ago | IN | 0 ETH | 0.00113528 | ||||
Claim | 14386475 | 963 days ago | IN | 0 ETH | 0.00291327 | ||||
Claim | 14384123 | 963 days ago | IN | 0 ETH | 0.00189777 | ||||
Claim | 14381743 | 964 days ago | IN | 0 ETH | 0.00182616 | ||||
Claim | 14377157 | 964 days ago | IN | 0 ETH | 0.00185364 | ||||
Claim | 14376961 | 965 days ago | IN | 0 ETH | 0.00110943 | ||||
Claim | 14376582 | 965 days ago | IN | 0 ETH | 0.00395569 | ||||
Claim | 14375425 | 965 days ago | IN | 0 ETH | 0.00224485 | ||||
Claim | 14373490 | 965 days ago | IN | 0 ETH | 0.0038752 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
Destributor
Compiler Version
v0.8.4+commit.c7e474f2
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-04-07 */ // SPDX-License-Identifier: UNLICENSED pragma solidity 0.8.4; interface Erc20 { function transfer(address, uint256) external returns (bool); function balanceOf(address) external returns (uint256); function transferFrom(address, address, uint256) external returns (bool); } /** * @dev These functions deal with verification of Merkle trees (hash trees), */ 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. /// @param p Array of merkle proofs /// @param r Merkle root /// @param l Candidate 'leaf' of the merkle tree function verify(bytes32[] memory p, bytes32 r, bytes32 l) internal pure returns (bool) { uint256 len = p.length; bytes32 hash = l; for (uint256 i = 0; i < len; i++) { bytes32 element = p[i]; if (hash <= element) { // Hash(current computed hash + current element of the proof) hash = keccak256(abi.encodePacked(hash, element)); } else { // Hash(current element of the proof + current computed hash) hash = keccak256(abi.encodePacked(element, hash)); } } // Check if the computed hash (root) is equal to the provided root return hash == r; } } contract Destributor { mapping (uint256 => bytes32) public merkleRoot; mapping (uint256 => mapping (uint256 => uint256)) private claims; mapping (uint256 => bool) private cancelled; uint256 public distribution; address public immutable token; address public admin; bool public paused; event Distribute(bytes32 merkleRoot, uint256 distribution); event Claim(uint256 index, address owner, uint256 amount); /// @param t Address of an ERC20 token /// @param r Initial merkle root constructor(address t, bytes32 r) { admin = msg.sender; token = t; merkleRoot[0] = r; } /// @notice Generate a new distribution, cancelling the would be current one /// @param f The address of the wallet containing tokens to distribute /// @param t The address that will receive any currently remaining distributions (will normally be the same as from) /// @param a The amount of tokens in the new distribution /// @param r The merkle root associated with the new distribution function distribute(address f, address t, uint256 a, bytes32 r) external authorized(admin) returns (bool) { // remove curent token balance Erc20 erc = Erc20(token); uint256 balance = erc.balanceOf(address(this)); erc.transfer(t, balance); // transfer enough tokens for new distribution erc.transferFrom(f, address(this), a); // we are working with the distribution, eventually bumping it... uint256 current = distribution; // cancel the (to-be) previous distribution cancelled[current] = true; current++; // add the new distribution's merkleRoot merkleRoot[current] = r; distribution = current; // unpause redemptions pause(false); emit Distribute(r, current); return true; } /// @param i An index which to construct a possible claim from /// @param d The distribution to check for a claim function claimed(uint256 i, uint256 d) public view returns (bool) { require(i > 0, 'passed index must be > 0'); uint256 wordIndex = i / 256; uint256 bitIndex = i % 256; uint256 word = claims[d][wordIndex]; uint256 mask = (1 << bitIndex); return word & mask == mask; } /// @param i An index which to construct a claim from /// @param o Owner address of the token being transferred /// @param a Amount being transferred /// @param p array of merkle proofs function claim(uint256 i, address o, uint256 a, bytes32[] calldata p) external returns (bool) { require(!paused, 'claiming is paused'); require(!claimed(i, distribution), 'distribution claimed'); require(!cancelled[distribution], 'distribution cancelled'); // Verify the merkle proof... bytes32 node = keccak256(abi.encodePacked(i, o, a)); require(MerkleProof.verify(p, merkleRoot[distribution], node), 'invalid proof'); // Mark it claimed... uint256 wordIndex = i / 256; uint256 bitIndex = i % 256; claims[distribution][wordIndex] = claims[distribution][wordIndex] | (1 << bitIndex); // send the token... require(Erc20(token).transfer(o, a), 'transfer failed.'); emit Claim(i, o, a); return true; } /// @param a Address of a new admin function transferAdmin(address a) external authorized(admin) returns (bool) { admin = a; return true; } /// @notice Allows admin to pause or unpause claims /// @param b Boolean value to set paused to function pause(bool b) public authorized(admin) returns (bool) { paused = b; return true; } modifier authorized(address a) { require(msg.sender == a, 'sender must be authorized'); _; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"t","type":"address"},{"internalType":"bytes32","name":"r","type":"bytes32"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"index","type":"uint256"},{"indexed":false,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Claim","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"merkleRoot","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"distribution","type":"uint256"}],"name":"Distribute","type":"event"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"i","type":"uint256"},{"internalType":"address","name":"o","type":"address"},{"internalType":"uint256","name":"a","type":"uint256"},{"internalType":"bytes32[]","name":"p","type":"bytes32[]"}],"name":"claim","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"i","type":"uint256"},{"internalType":"uint256","name":"d","type":"uint256"}],"name":"claimed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"f","type":"address"},{"internalType":"address","name":"t","type":"address"},{"internalType":"uint256","name":"a","type":"uint256"},{"internalType":"bytes32","name":"r","type":"bytes32"}],"name":"distribute","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"distribution","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"merkleRoot","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"b","type":"bool"}],"name":"pause","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"token","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"transferAdmin","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60a060405234801561001057600080fd5b5060405161107a38038061107a83398101604081905261002f91610085565b60048054336001600160a01b031990911617905560609190911b6001600160601b03191660805260008080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5556100bd565b60008060408385031215610097578182fd5b82516001600160a01b03811681146100ad578283fd5b6020939093015192949293505050565b60805160601c610f916100e9600039600081816101dd015281816105f301526109740152610f916000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c806375829def11610076578063eb0edcfb1161005b578063eb0edcfb14610180578063f851a44014610193578063fc0c546a146101d857600080fd5b806375829def1461015a578063a54ab4571461016d57600080fd5b80633c70b357116100a75780633c70b357146100fe5780635c975abb1461012c5780635ee58efc1461015157600080fd5b806302329a29146100c35780632e7ba6ef146100eb575b600080fd5b6100d66100d1366004610d7a565b6101ff565b60405190151581526020015b60405180910390f35b6100d66100f9366004610de2565b6102d8565b61011e61010c366004610db2565b60006020819052908152604090205481565b6040519081526020016100e2565b6004546100d69074010000000000000000000000000000000000000000900460ff1681565b61011e60035481565b6100d6610168366004610d18565b61073c565b6100d661017b366004610e74565b61080d565b6100d661018e366004610d39565b6108c1565b6004546101b39073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100e2565b6101b37f000000000000000000000000000000000000000000000000000000000000000081565b60045460009073ffffffffffffffffffffffffffffffffffffffff16338114610289576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f73656e646572206d75737420626520617574686f72697a65640000000000000060448201526064015b60405180910390fd5b6004805484151574010000000000000000000000000000000000000000027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff9091161790556001915050919050565b60045460009074010000000000000000000000000000000000000000900460ff1615610360576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f636c61696d696e672069732070617573656400000000000000000000000000006044820152606401610280565b61036c8660035461080d565b156103d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f646973747269627574696f6e20636c61696d65640000000000000000000000006044820152606401610280565b60035460009081526002602052604090205460ff161561044f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f646973747269627574696f6e2063616e63656c6c6564000000000000000000006044820152606401610280565b60408051602081018890527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606088901b1691810191909152605481018590526000906074016040516020818303038152906040528051906020012090506104fa84848080602002602001604051908101604052809392919081815260200183836020028082843760009201829052506003548152602081905260409020549250859150610c169050565b610560576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f696e76616c69642070726f6f66000000000000000000000000000000000000006044820152606401610280565b600061056e61010089610e95565b9050600061057e6101008a610f07565b600354600090815260016020818152604080842087855290915291829020805491841b9091179055517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152602482018a90529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb90604401602060405180830381600087803b15801561063957600080fd5b505af115801561064d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106719190610d96565b6106d7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f7472616e73666572206661696c65642e000000000000000000000000000000006044820152606401610280565b604080518a815273ffffffffffffffffffffffffffffffffffffffff8a1660208201529081018890527f3ed1528b0fdc7c5207c1bf935e34a667e13656b9ed165260c522be0bc544f3039060600160405180910390a150600198975050505050505050565b60045460009073ffffffffffffffffffffffffffffffffffffffff163381146107c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f73656e646572206d75737420626520617574686f72697a6564000000000000006044820152606401610280565b6004805473ffffffffffffffffffffffffffffffffffffffff85167fffffffffffffffffffffffff00000000000000000000000000000000000000009091161790556001915050919050565b6000808311610878576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f70617373656420696e646578206d757374206265203e203000000000000000006044820152606401610280565b600061088661010085610e95565b9050600061089661010086610f07565b600094855260016020818152604080882095885294905292909420549190931b908116149392505050565b60045460009073ffffffffffffffffffffffffffffffffffffffff16338114610946576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f73656e646572206d75737420626520617574686f72697a6564000000000000006044820152606401610280565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201527f00000000000000000000000000000000000000000000000000000000000000009060009073ffffffffffffffffffffffffffffffffffffffff8316906370a0823190602401602060405180830381600087803b1580156109d257600080fd5b505af11580156109e6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a0a9190610dca565b6040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8981166004830152602482018390529192509083169063a9059cbb90604401602060405180830381600087803b158015610a7e57600080fd5b505af1158015610a92573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab69190610d96565b506040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8981166004830152306024830152604482018890528316906323b872dd90606401602060405180830381600087803b158015610b2d57600080fd5b505af1158015610b41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b659190610d96565b50600354600081815260026020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580610baa81610ea9565b60008181526020819052604081208990556003829055909250610bcd91506101ff565b5060408051878152602081018390527f9d30f704de5f2d6155b872bae8dcfb406d03fd551cbf6dce019b9fc8f56c2033910160405180910390a150600198975050505050505050565b825160009082825b82811015610ce3576000878281518110610c61577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101519050808311610ca3576040805160208101859052908101829052606001604051602081830303815290604052805190602001209250610cd0565b60408051602081018390529081018490526060016040516020818303038152906040528051906020012092505b5080610cdb81610ea9565b915050610c1e565b50909314949350505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610d1357600080fd5b919050565b600060208284031215610d29578081fd5b610d3282610cef565b9392505050565b60008060008060808587031215610d4e578283fd5b610d5785610cef565b9350610d6560208601610cef565b93969395505050506040820135916060013590565b600060208284031215610d8b578081fd5b8135610d3281610f4a565b600060208284031215610da7578081fd5b8151610d3281610f4a565b600060208284031215610dc3578081fd5b5035919050565b600060208284031215610ddb578081fd5b5051919050565b600080600080600060808688031215610df9578081fd5b85359450610e0960208701610cef565b935060408601359250606086013567ffffffffffffffff80821115610e2c578283fd5b818801915088601f830112610e3f578283fd5b813581811115610e4d578384fd5b8960208260051b8501011115610e61578384fd5b9699959850939650602001949392505050565b60008060408385031215610e86578182fd5b50508035926020909101359150565b600082610ea457610ea4610f1b565b500490565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415610f00577f4e487b710000000000000000000000000000000000000000000000000000000081526011600452602481fd5b5060010190565b600082610f1657610f16610f1b565b500690565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b8015158114610f5857600080fd5b5056fea26469706673582212204843107ce43bf623ed52096277bc12fadef635253e39b1c07bb3042948ed5a8164736f6c63430008040033000000000000000000000000bf30461210b37012783957d90dc26b95ce3b6f2d0000000000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100be5760003560e01c806375829def11610076578063eb0edcfb1161005b578063eb0edcfb14610180578063f851a44014610193578063fc0c546a146101d857600080fd5b806375829def1461015a578063a54ab4571461016d57600080fd5b80633c70b357116100a75780633c70b357146100fe5780635c975abb1461012c5780635ee58efc1461015157600080fd5b806302329a29146100c35780632e7ba6ef146100eb575b600080fd5b6100d66100d1366004610d7a565b6101ff565b60405190151581526020015b60405180910390f35b6100d66100f9366004610de2565b6102d8565b61011e61010c366004610db2565b60006020819052908152604090205481565b6040519081526020016100e2565b6004546100d69074010000000000000000000000000000000000000000900460ff1681565b61011e60035481565b6100d6610168366004610d18565b61073c565b6100d661017b366004610e74565b61080d565b6100d661018e366004610d39565b6108c1565b6004546101b39073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100e2565b6101b37f000000000000000000000000bf30461210b37012783957d90dc26b95ce3b6f2d81565b60045460009073ffffffffffffffffffffffffffffffffffffffff16338114610289576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f73656e646572206d75737420626520617574686f72697a65640000000000000060448201526064015b60405180910390fd5b6004805484151574010000000000000000000000000000000000000000027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff9091161790556001915050919050565b60045460009074010000000000000000000000000000000000000000900460ff1615610360576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f636c61696d696e672069732070617573656400000000000000000000000000006044820152606401610280565b61036c8660035461080d565b156103d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f646973747269627574696f6e20636c61696d65640000000000000000000000006044820152606401610280565b60035460009081526002602052604090205460ff161561044f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f646973747269627574696f6e2063616e63656c6c6564000000000000000000006044820152606401610280565b60408051602081018890527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606088901b1691810191909152605481018590526000906074016040516020818303038152906040528051906020012090506104fa84848080602002602001604051908101604052809392919081815260200183836020028082843760009201829052506003548152602081905260409020549250859150610c169050565b610560576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f696e76616c69642070726f6f66000000000000000000000000000000000000006044820152606401610280565b600061056e61010089610e95565b9050600061057e6101008a610f07565b600354600090815260016020818152604080842087855290915291829020805491841b9091179055517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152602482018a90529192507f000000000000000000000000bf30461210b37012783957d90dc26b95ce3b6f2d9091169063a9059cbb90604401602060405180830381600087803b15801561063957600080fd5b505af115801561064d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106719190610d96565b6106d7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f7472616e73666572206661696c65642e000000000000000000000000000000006044820152606401610280565b604080518a815273ffffffffffffffffffffffffffffffffffffffff8a1660208201529081018890527f3ed1528b0fdc7c5207c1bf935e34a667e13656b9ed165260c522be0bc544f3039060600160405180910390a150600198975050505050505050565b60045460009073ffffffffffffffffffffffffffffffffffffffff163381146107c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f73656e646572206d75737420626520617574686f72697a6564000000000000006044820152606401610280565b6004805473ffffffffffffffffffffffffffffffffffffffff85167fffffffffffffffffffffffff00000000000000000000000000000000000000009091161790556001915050919050565b6000808311610878576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f70617373656420696e646578206d757374206265203e203000000000000000006044820152606401610280565b600061088661010085610e95565b9050600061089661010086610f07565b600094855260016020818152604080882095885294905292909420549190931b908116149392505050565b60045460009073ffffffffffffffffffffffffffffffffffffffff16338114610946576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f73656e646572206d75737420626520617574686f72697a6564000000000000006044820152606401610280565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201527f000000000000000000000000bf30461210b37012783957d90dc26b95ce3b6f2d9060009073ffffffffffffffffffffffffffffffffffffffff8316906370a0823190602401602060405180830381600087803b1580156109d257600080fd5b505af11580156109e6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a0a9190610dca565b6040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8981166004830152602482018390529192509083169063a9059cbb90604401602060405180830381600087803b158015610a7e57600080fd5b505af1158015610a92573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab69190610d96565b506040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8981166004830152306024830152604482018890528316906323b872dd90606401602060405180830381600087803b158015610b2d57600080fd5b505af1158015610b41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b659190610d96565b50600354600081815260026020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580610baa81610ea9565b60008181526020819052604081208990556003829055909250610bcd91506101ff565b5060408051878152602081018390527f9d30f704de5f2d6155b872bae8dcfb406d03fd551cbf6dce019b9fc8f56c2033910160405180910390a150600198975050505050505050565b825160009082825b82811015610ce3576000878281518110610c61577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101519050808311610ca3576040805160208101859052908101829052606001604051602081830303815290604052805190602001209250610cd0565b60408051602081018390529081018490526060016040516020818303038152906040528051906020012092505b5080610cdb81610ea9565b915050610c1e565b50909314949350505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610d1357600080fd5b919050565b600060208284031215610d29578081fd5b610d3282610cef565b9392505050565b60008060008060808587031215610d4e578283fd5b610d5785610cef565b9350610d6560208601610cef565b93969395505050506040820135916060013590565b600060208284031215610d8b578081fd5b8135610d3281610f4a565b600060208284031215610da7578081fd5b8151610d3281610f4a565b600060208284031215610dc3578081fd5b5035919050565b600060208284031215610ddb578081fd5b5051919050565b600080600080600060808688031215610df9578081fd5b85359450610e0960208701610cef565b935060408601359250606086013567ffffffffffffffff80821115610e2c578283fd5b818801915088601f830112610e3f578283fd5b813581811115610e4d578384fd5b8960208260051b8501011115610e61578384fd5b9699959850939650602001949392505050565b60008060408385031215610e86578182fd5b50508035926020909101359150565b600082610ea457610ea4610f1b565b500490565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415610f00577f4e487b710000000000000000000000000000000000000000000000000000000081526011600452602481fd5b5060010190565b600082610f1657610f16610f1b565b500690565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b8015158114610f5857600080fd5b5056fea26469706673582212204843107ce43bf623ed52096277bc12fadef635253e39b1c07bb3042948ed5a8164736f6c63430008040033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000bf30461210b37012783957d90dc26b95ce3b6f2d0000000000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : t (address): 0xbf30461210b37012783957D90dC26B95Ce3b6f2d
Arg [1] : r (bytes32): 0x0000000000000000000000000000000000000000000000000000000000000000
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000bf30461210b37012783957d90dc26b95ce3b6f2d
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
1476:3752:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5010:104;;;;;;:::i;:::-;;:::i;:::-;;;4634:14:1;;4627:22;4609:41;;4597:2;4582:18;5010:104:0;;;;;;;;3953:786;;;;;;:::i;:::-;;:::i;1502:46::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;4807:25:1;;;4795:2;4780:18;1502:46:0;4762:76:1;1766:18:0;;;;;;;;;;;;1672:27;;;;;;4784:118;;;;;;:::i;:::-;;:::i;3445:304::-;;;;;;:::i;:::-;;:::i;2511:808::-;;;;;;:::i;:::-;;:::i;1741:20::-;;;;;;;;;;;;3709:42:1;3697:55;;;3679:74;;3667:2;3652:18;1741:20:0;3634:125:1;1706:30:0;;;;;5010:104;5051:5;;5067:4;;5051:5;;5166:10;:15;;5158:53;;;;;;;5645:2:1;5158:53:0;;;5627:21:1;5684:2;5664:18;;;5657:30;5723:27;5703:18;;;5696:55;5768:18;;5158:53:0;;;;;;;;;5080:6:::1;:10:::0;;;::::1;;::::0;::::1;::::0;;;::::1;;::::0;;-1:-1:-1;;;5010:104:0;;;;:::o;3953:786::-;4063:6;;4041:4;;4063:6;;;;;4062:7;4054:38;;;;;;;5298:2:1;4054:38:0;;;5280:21:1;5337:2;5317:18;;;5310:30;5376:20;5356:18;;;5349:48;5414:18;;4054:38:0;5270:168:1;4054:38:0;4108:24;4116:1;4119:12;;4108:7;:24::i;:::-;4107:25;4099:58;;;;;;;7048:2:1;4099:58:0;;;7030:21:1;7087:2;7067:18;;;7060:30;7126:22;7106:18;;;7099:50;7166:18;;4099:58:0;7020:170:1;4099:58:0;4183:12;;4173:23;;;;:9;:23;;;;;;;;4172:24;4164:59;;;;;;;6697:2:1;4164:59:0;;;6679:21:1;6736:2;6716:18;;;6709:30;6775:24;6755:18;;;6748:52;6817:18;;4164:59:0;6669:172:1;4164:59:0;4292:25;;;;;;3319:19:1;;;3389:66;3376:2;3372:15;;;3368:88;3354:12;;;3347:110;;;;3473:12;;;3466:28;;;4267:12:0;;3510::1;;4292:25:0;;;;;;;;;;;;4282:36;;;;;;4267:51;;4333:53;4352:1;;4333:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4366:12:0;;4355:24;;;;;;;;;;;-1:-1:-1;4381:4:0;;-1:-1:-1;4333:18:0;;-1:-1:-1;4333:53:0:i;:::-;4325:79;;;;;;;7397:2:1;4325:79:0;;;7379:21:1;7436:2;7416:18;;;7409:30;7475:15;7455:18;;;7448:43;7508:18;;4325:79:0;7369:163:1;4325:79:0;4440:17;4460:7;4464:3;4460:1;:7;:::i;:::-;4440:27;-1:-1:-1;4474:16:0;4493:7;4497:3;4493:1;:7;:::i;:::-;4548:12;;4541:20;;;;4576:1;4541:20;;;;;;;;:31;;;;;;;;;;;;4576:13;;;4541:49;;;4507:83;;4637:27;;;;:21;4359:55:1;;;4637:27:0;;;4341:74:1;4431:18;;;4424:34;;;4576:13:0;;-1:-1:-1;4643:5:0;4637:21;;;;;;4314:18:1;;4637:27:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4629:56;;;;;;;5999:2:1;4629:56:0;;;5981:21:1;6038:2;6018:18;;;6011:30;6077:18;6057;;;6050:46;6113:18;;4629:56:0;5971:166:1;4629:56:0;4699:14;;;7921:25:1;;;7994:42;7982:55;;7977:2;7962:18;;7955:83;8054:18;;;8047:34;;;4699:14:0;;7909:2:1;7894:18;4699:14:0;;;;;;;-1:-1:-1;4729:4:0;;3953:786;-1:-1:-1;;;;;;;;3953:786:0:o;4784:118::-;4838:5;;4854:4;;4838:5;;5166:10;:15;;5158:53;;;;;;;5645:2:1;5158:53:0;;;5627:21:1;5684:2;5664:18;;;5657:30;5723:27;5703:18;;;5696:55;5768:18;;5158:53:0;5617:175:1;5158:53:0;4867:5:::1;:9:::0;;::::1;::::0;::::1;::::0;;;::::1;;::::0;;;;-1:-1:-1;4784:118:0;;;;:::o;3445:304::-;3505:4;3530:1;3526;:5;3518:42;;;;;;;6344:2:1;3518:42:0;;;6326:21:1;6383:2;6363:18;;;6356:30;6422:26;6402:18;;;6395:54;6466:18;;3518:42:0;6316:174:1;3518:42:0;3569:17;3589:7;3593:3;3589:1;:7;:::i;:::-;3569:27;-1:-1:-1;3603:16:0;3622:7;3626:3;3622:1;:7;:::i;:::-;3636:12;3651:9;;;:6;:9;;;;;;;;:20;;;;;;;;;;;3694:13;;;;3724:11;;;:19;;3445:304;-1:-1:-1;;;3445:304:0:o;2511:808::-;2595:5;;2611:4;;2595:5;;5166:10;:15;;5158:53;;;;;;;5645:2:1;5158:53:0;;;5627:21:1;5684:2;5664:18;;;5657:30;5723:27;5703:18;;;5696:55;5768:18;;5158:53:0;5617:175:1;5158:53:0;2709:28:::1;::::0;;;;2731:4:::1;2709:28;::::0;::::1;3679:74:1::0;2678:5:0::1;::::0;2660:9:::1;::::0;2709:13:::1;::::0;::::1;::::0;::::1;::::0;3652:18:1;;2709:28:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2744:24;::::0;;;;:12:::1;4359:55:1::0;;;2744:24:0::1;::::0;::::1;4341:74:1::0;4431:18;;;4424:34;;;2691:46:0;;-1:-1:-1;2744:12:0;;::::1;::::0;::::1;::::0;4314:18:1;;2744:24:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;2837:37:0::1;::::0;;;;:16:::1;4045:15:1::0;;;2837:37:0::1;::::0;::::1;4027:34:1::0;2865:4:0::1;4077:18:1::0;;;4070:43;4129:18;;;4122:34;;;2837:16:0;::::1;::::0;::::1;::::0;3939:18:1;;2837:37:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;2972:12:0::1;::::0;2954:15:::1;3050:18:::0;;;:9:::1;:18;::::0;;;;:25;;;::::1;3071:4;3050:25;::::0;;2972:12;3084:9:::1;2972:12:::0;3084:9:::1;:::i;:::-;3146:10;:19:::0;;;::::1;::::0;;;;;;:23;;;3178:12:::1;:22:::0;;;3084:9;;-1:-1:-1;3237:12:0::1;::::0;-1:-1:-1;3237:5:0::1;:12::i;:::-;-1:-1:-1::0;3263:22:0::1;::::0;;5017:25:1;;;5073:2;5058:18;;5051:34;;;3263:22:0::1;::::0;4990:18:1;3263:22:0::1;;;;;;;-1:-1:-1::0;3309:4:0::1;::::0;2511:808;-1:-1:-1;;;;;;;;2511:808:0:o;827:642::-;935:8;;908:4;;965:1;908:4;975:392;999:3;995:1;:7;975:392;;;1018:15;1036:1;1038;1036:4;;;;;;;;;;;;;;;;;;;;;;1018:22;;1063:7;1055:4;:15;1051:309;;1171:31;;;;;;3039:19:1;;;3074:12;;;3067:28;;;3111:12;;1171:31:0;;;;;;;;;;;;1161:42;;;;;;1154:49;;1051:309;;;1318:31;;;;;;3039:19:1;;;3074:12;;;3067:28;;;3111:12;;1318:31:0;;;;;;;;;;;;1308:42;;;;;;1301:49;;1051:309;-1:-1:-1;1004:3:0;;;;:::i;:::-;;;;975:392;;;-1:-1:-1;1454:9:0;;;;827:642;-1:-1:-1;;;;827:642:0:o;14:196:1:-;82:20;;142:42;131:54;;121:65;;111:2;;200:1;197;190:12;111:2;63:147;;;:::o;215:196::-;274:6;327:2;315:9;306:7;302:23;298:32;295:2;;;348:6;340;333:22;295:2;376:29;395:9;376:29;:::i;:::-;366:39;285:126;-1:-1:-1;;;285:126:1:o;416:407::-;502:6;510;518;526;579:3;567:9;558:7;554:23;550:33;547:2;;;601:6;593;586:22;547:2;629:29;648:9;629:29;:::i;:::-;619:39;;677:38;711:2;700:9;696:18;677:38;:::i;:::-;537:286;;667:48;;-1:-1:-1;;;;762:2:1;747:18;;734:32;;813:2;798:18;785:32;;537:286::o;828:251::-;884:6;937:2;925:9;916:7;912:23;908:32;905:2;;;958:6;950;943:22;905:2;1002:9;989:23;1021:28;1043:5;1021:28;:::i;1084:255::-;1151:6;1204:2;1192:9;1183:7;1179:23;1175:32;1172:2;;;1225:6;1217;1210:22;1172:2;1262:9;1256:16;1281:28;1303:5;1281:28;:::i;1344:190::-;1403:6;1456:2;1444:9;1435:7;1431:23;1427:32;1424:2;;;1477:6;1469;1462:22;1424:2;-1:-1:-1;1505:23:1;;1414:120;-1:-1:-1;1414:120:1:o;1539:194::-;1609:6;1662:2;1650:9;1641:7;1637:23;1633:32;1630:2;;;1683:6;1675;1668:22;1630:2;-1:-1:-1;1711:16:1;;1620:113;-1:-1:-1;1620:113:1:o;1738:876::-;1851:6;1859;1867;1875;1883;1936:3;1924:9;1915:7;1911:23;1907:33;1904:2;;;1958:6;1950;1943:22;1904:2;1999:9;1986:23;1976:33;;2028:38;2062:2;2051:9;2047:18;2028:38;:::i;:::-;2018:48;;2113:2;2102:9;2098:18;2085:32;2075:42;;2168:2;2157:9;2153:18;2140:32;2191:18;2232:2;2224:6;2221:14;2218:2;;;2253:6;2245;2238:22;2218:2;2296:6;2285:9;2281:22;2271:32;;2341:7;2334:4;2330:2;2326:13;2322:27;2312:2;;2368:6;2360;2353:22;2312:2;2413;2400:16;2439:2;2431:6;2428:14;2425:2;;;2460:6;2452;2445:22;2425:2;2518:7;2513:2;2503:6;2500:1;2496:14;2492:2;2488:23;2484:32;2481:45;2478:2;;;2544:6;2536;2529:22;2478:2;1894:720;;;;-1:-1:-1;1894:720:1;;-1:-1:-1;2580:2:1;2572:11;;2602:6;1894:720;-1:-1:-1;;;1894:720:1:o;2619:258::-;2687:6;2695;2748:2;2736:9;2727:7;2723:23;2719:32;2716:2;;;2769:6;2761;2754:22;2716:2;-1:-1:-1;;2797:23:1;;;2867:2;2852:18;;;2839:32;;-1:-1:-1;2706:171:1:o;8092:120::-;8132:1;8158;8148:2;;8163:18;;:::i;:::-;-1:-1:-1;8197:9:1;;8138:74::o;8217:353::-;8256:3;8287:66;8280:5;8277:77;8274:2;;;8389:77;8384:3;8377:90;8490:4;8487:1;8480:15;8520:4;8515:3;8508:17;8274:2;-1:-1:-1;8562:1:1;8551:13;;8264:306::o;8575:112::-;8607:1;8633;8623:2;;8638:18;;:::i;:::-;-1:-1:-1;8672:9:1;;8613:74::o;8692:184::-;8744:77;8741:1;8734:88;8841:4;8838:1;8831:15;8865:4;8862:1;8855:15;8881:118;8967:5;8960:13;8953:21;8946:5;8943:32;8933:2;;8989:1;8986;8979:12;8933:2;8923:76;:::o
Swarm Source
ipfs://4843107ce43bf623ed52096277bc12fadef635253e39b1c07bb3042948ed5a81
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.