Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 187 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Vote | 11750592 | 1493 days ago | IN | 0 ETH | 0.00311001 | ||||
Vote | 11750453 | 1493 days ago | IN | 0 ETH | 0.00324885 | ||||
Vote | 11741368 | 1495 days ago | IN | 0 ETH | 0.00136063 | ||||
Vote | 11738211 | 1495 days ago | IN | 0 ETH | 0.00290175 | ||||
Vote | 11738204 | 1495 days ago | IN | 0 ETH | 0.0027768 | ||||
Vote | 11719790 | 1498 days ago | IN | 0 ETH | 0.00269349 | ||||
Vote | 11717643 | 1498 days ago | IN | 0 ETH | 0.00127732 | ||||
Vote | 11717242 | 1498 days ago | IN | 0 ETH | 0.00146615 | ||||
Vote | 11717219 | 1498 days ago | IN | 0 ETH | 0.00141616 | ||||
Vote | 11715033 | 1499 days ago | IN | 0 ETH | 0.00169384 | ||||
Vote | 11713084 | 1499 days ago | IN | 0 ETH | 0.00174938 | ||||
Vote | 11710469 | 1499 days ago | IN | 0 ETH | 0.00149947 | ||||
Vote | 11710392 | 1499 days ago | IN | 0 ETH | 0.00172161 | ||||
Vote | 11710371 | 1499 days ago | IN | 0 ETH | 0.00152724 | ||||
Vote | 11709850 | 1500 days ago | IN | 0 ETH | 0.00137451 | ||||
Vote | 11709803 | 1500 days ago | IN | 0 ETH | 0.00127732 | ||||
Vote | 11709742 | 1500 days ago | IN | 0 ETH | 0.00124956 | ||||
Vote | 11709605 | 1500 days ago | IN | 0 ETH | 0.00152724 | ||||
Vote | 11709501 | 1500 days ago | IN | 0 ETH | 0.00213652 | ||||
Vote | 11709497 | 1500 days ago | IN | 0 ETH | 0.00213813 | ||||
Vote | 11708827 | 1500 days ago | IN | 0 ETH | 0.00238804 | ||||
Vote | 11708236 | 1500 days ago | IN | 0 ETH | 0.00227697 | ||||
Vote | 11707413 | 1500 days ago | IN | 0 ETH | 0.00202706 | ||||
Vote | 11706851 | 1500 days ago | IN | 0 ETH | 0.00166608 | ||||
Vote | 11706843 | 1500 days ago | IN | 0 ETH | 0.00245746 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
VoteBox
Compiler Version
v0.6.10+commit.00c0fcaf
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-08-18 */ // SPDX-License-Identifier: UNLICENSED pragma solidity 0.6.10; /** * @dev Wrappers over Solidity's arithmetic operations with added overflow * checks. * * Arithmetic operations in Solidity wrap on overflow. This can easily result * in bugs, because programmers usually assume that an overflow raises an * error, which is the standard behavior in high level programming languages. * `SafeMath` restores this intuition by reverting the transaction when an * operation overflows. * * Using this library instead of the unchecked operations eliminates an entire * class of bugs, so it's recommended to use it always. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } /** * @dev Returns the integer division of two unsigned integers. Reverts with custom message on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts with custom message when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); } /** * @title A simple smart contract which only records everyone’s voting on each proposal. */ contract VoteBox { using SafeMath for uint256; // Meta data struct Meta { string link; uint256 beginBlock; uint256 endBlock; } // Vote content enum Content { INVALID, FOR, AGAINST } // Min MCB for creating a new proposal uint256 public constant MIN_PROPOSAL_MCB = 1000000 * 10**18; // 1% of MCB // Min voting period in blocks. 1 day for 15s/block uint256 public constant MIN_PERIOD = 5760; // MCB address IERC20 public mcb; // All proposal meta data Meta[] public proposals; /** * @dev The new proposal is created */ event Proposal(uint256 indexed id, string link, uint256 beginBlock, uint256 endBlock); /** * @dev Someone changes his/her vote on the proposal */ event Vote(address indexed voter, uint256 indexed id, Content voteContent); /** * @dev Constructor * @param mcbAddress MCB address */ constructor(address mcbAddress) public { mcb = IERC20(mcbAddress); } /** * @dev Accessor to the total number of proposal */ function totalProposals() external view returns (uint256) { return proposals.length; } /** * @dev Create a new proposal, need a proposal privilege * @param link The forum link of the proposal * @param beginBlock Voting is enabled between [begin block, end block] * @param endBlock Voting is enabled between [begin block, end block] */ function propose(string calldata link, uint256 beginBlock, uint256 endBlock) external { require(mcb.balanceOf(msg.sender) >= MIN_PROPOSAL_MCB, "proposal privilege required"); require(bytes(link).length > 0, "empty link"); require(block.number <= beginBlock, "old proposal"); require(beginBlock.add(MIN_PERIOD) <= endBlock, "period is too short"); proposals.push(Meta({ link: link, beginBlock: beginBlock, endBlock: endBlock })); emit Proposal(proposals.length - 1, link, beginBlock, endBlock); } /** * @notice Vote for/against the proposal with id * @param id Proposal id * @param voteContent Vote content */ function vote(uint256 id, Content voteContent) external { require(id < proposals.length, "invalid id"); require(voteContent != Content.INVALID, "invalid content"); require(proposals[id].beginBlock <= block.number, "< begin"); require(block.number <= proposals[id].endBlock, "> end"); emit Vote(msg.sender, id, voteContent); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"mcbAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"string","name":"link","type":"string"},{"indexed":false,"internalType":"uint256","name":"beginBlock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"endBlock","type":"uint256"}],"name":"Proposal","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"voter","type":"address"},{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"enum VoteBox.Content","name":"voteContent","type":"uint8"}],"name":"Vote","type":"event"},{"inputs":[],"name":"MIN_PERIOD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MIN_PROPOSAL_MCB","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"mcb","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"proposals","outputs":[{"internalType":"string","name":"link","type":"string"},{"internalType":"uint256","name":"beginBlock","type":"uint256"},{"internalType":"uint256","name":"endBlock","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"link","type":"string"},{"internalType":"uint256","name":"beginBlock","type":"uint256"},{"internalType":"uint256","name":"endBlock","type":"uint256"}],"name":"propose","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalProposals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"enum VoteBox.Content","name":"voteContent","type":"uint8"}],"name":"vote","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b506040516108ec3803806108ec8339818101604052602081101561003357600080fd5b5051600080546001600160a01b039092166001600160a01b0319909216919091179055610887806100656000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806381192eb71161005b57806381192eb7146101b7578063943e8216146101db578063a78d80fc14610201578063bbccf154146102095761007d565b8063013cf08b146100825780632aa77c4c146101255780635e3c97731461019d575b600080fd5b61009f6004803603602081101561009857600080fd5b5035610211565b6040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156100e85781810151838201526020016100d0565b50505050905090810190601f1680156101155780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b61019b6004803603606081101561013b57600080fd5b81019060208101813564010000000081111561015657600080fd5b82018360208201111561016857600080fd5b8035906020019184600183028401116401000000008311171561018a57600080fd5b9193509150803590602001356102cd565b005b6101a561058c565b60408051918252519081900360200190f35b6101bf61059a565b604080516001600160a01b039092168252519081900360200190f35b61019b600480360360408110156101f157600080fd5b508035906020013560ff166105a9565b6101a561074b565b6101a5610752565b6001818154811061021e57fe5b60009182526020918290206003919091020180546040805160026001841615610100026000190190931692909204601f8101859004850283018501909152808252919350918391908301828280156102b75780601f1061028c576101008083540402835291602001916102b7565b820191906000526020600020905b81548152906001019060200180831161029a57829003601f168201915b5050505050908060010154908060020154905083565b600054604080516370a0823160e01b8152336004820152905169d3c21bcecceda1000000926001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561032157600080fd5b505afa158015610335573d6000803e3d6000fd5b505050506040513d602081101561034b57600080fd5b505110156103a0576040805162461bcd60e51b815260206004820152601b60248201527f70726f706f73616c2070726976696c6567652072657175697265640000000000604482015290519081900360640190fd5b826103df576040805162461bcd60e51b815260206004820152600a602482015269656d707479206c696e6b60b01b604482015290519081900360640190fd5b81431115610423576040805162461bcd60e51b815260206004820152600c60248201526b1bdb19081c1c9bdc1bdcd85b60a21b604482015290519081900360640190fd5b806104368361168063ffffffff61075816565b111561047f576040805162461bcd60e51b81526020600482015260136024820152721c195c9a5bd9081a5cc81d1bdbc81cda1bdc9d606a1b604482015290519081900360640190fd5b6040805160806020601f870181900402820181019092526060810185815260019282919088908890819085018382808284376000920182905250938552505050602080830187905260409092018590528354600181018555938152819020825180519394600302909101926104f792849201906107b9565b506020820151816001015560408201518160020155505060018080549050037f60889d4da53649cd6c3e5b75075c9436fbb04154400e5f9a94d57c99f267fc308585858560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a250505050565b69d3c21bcecceda100000081565b6000546001600160a01b031681565b60015482106105ec576040805162461bcd60e51b815260206004820152600a6024820152691a5b9d985b1a59081a5960b21b604482015290519081900360640190fd5b60008160028111156105fa57fe5b141561063f576040805162461bcd60e51b815260206004820152600f60248201526e1a5b9d985b1a590818dbdb9d195b9d608a1b604482015290519081900360640190fd5b436001838154811061064d57fe5b906000526020600020906003020160010154111561069c576040805162461bcd60e51b81526020600482015260076024820152661e103132b3b4b760c91b604482015290519081900360640190fd5b600182815481106106a957fe5b9060005260206000209060030201600201544311156106f7576040805162461bcd60e51b81526020600482015260056024820152640f88195b9960da1b604482015290519081900360640190fd5b81336001600160a01b03167fea646db319bf204816f80359be35bfd60d0daea88ac98b858a99323eb80681bc836040518082600281111561073457fe5b60ff16815260200191505060405180910390a35050565b6001545b90565b61168081565b6000828201838110156107b2576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106107fa57805160ff1916838001178555610827565b82800160010185558215610827579182015b8281111561082757825182559160200191906001019061080c565b50610833929150610837565b5090565b61074f91905b80821115610833576000815560010161083d56fea26469706673582212204d424bebfb60588581ce3206020fa706d396b387ea1cda046626f5417e46126664736f6c634300060a00330000000000000000000000004e352cf164e64adcbad318c3a1e222e9eba4ce42
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061007d5760003560e01c806381192eb71161005b57806381192eb7146101b7578063943e8216146101db578063a78d80fc14610201578063bbccf154146102095761007d565b8063013cf08b146100825780632aa77c4c146101255780635e3c97731461019d575b600080fd5b61009f6004803603602081101561009857600080fd5b5035610211565b6040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156100e85781810151838201526020016100d0565b50505050905090810190601f1680156101155780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b61019b6004803603606081101561013b57600080fd5b81019060208101813564010000000081111561015657600080fd5b82018360208201111561016857600080fd5b8035906020019184600183028401116401000000008311171561018a57600080fd5b9193509150803590602001356102cd565b005b6101a561058c565b60408051918252519081900360200190f35b6101bf61059a565b604080516001600160a01b039092168252519081900360200190f35b61019b600480360360408110156101f157600080fd5b508035906020013560ff166105a9565b6101a561074b565b6101a5610752565b6001818154811061021e57fe5b60009182526020918290206003919091020180546040805160026001841615610100026000190190931692909204601f8101859004850283018501909152808252919350918391908301828280156102b75780601f1061028c576101008083540402835291602001916102b7565b820191906000526020600020905b81548152906001019060200180831161029a57829003601f168201915b5050505050908060010154908060020154905083565b600054604080516370a0823160e01b8152336004820152905169d3c21bcecceda1000000926001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561032157600080fd5b505afa158015610335573d6000803e3d6000fd5b505050506040513d602081101561034b57600080fd5b505110156103a0576040805162461bcd60e51b815260206004820152601b60248201527f70726f706f73616c2070726976696c6567652072657175697265640000000000604482015290519081900360640190fd5b826103df576040805162461bcd60e51b815260206004820152600a602482015269656d707479206c696e6b60b01b604482015290519081900360640190fd5b81431115610423576040805162461bcd60e51b815260206004820152600c60248201526b1bdb19081c1c9bdc1bdcd85b60a21b604482015290519081900360640190fd5b806104368361168063ffffffff61075816565b111561047f576040805162461bcd60e51b81526020600482015260136024820152721c195c9a5bd9081a5cc81d1bdbc81cda1bdc9d606a1b604482015290519081900360640190fd5b6040805160806020601f870181900402820181019092526060810185815260019282919088908890819085018382808284376000920182905250938552505050602080830187905260409092018590528354600181018555938152819020825180519394600302909101926104f792849201906107b9565b506020820151816001015560408201518160020155505060018080549050037f60889d4da53649cd6c3e5b75075c9436fbb04154400e5f9a94d57c99f267fc308585858560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a250505050565b69d3c21bcecceda100000081565b6000546001600160a01b031681565b60015482106105ec576040805162461bcd60e51b815260206004820152600a6024820152691a5b9d985b1a59081a5960b21b604482015290519081900360640190fd5b60008160028111156105fa57fe5b141561063f576040805162461bcd60e51b815260206004820152600f60248201526e1a5b9d985b1a590818dbdb9d195b9d608a1b604482015290519081900360640190fd5b436001838154811061064d57fe5b906000526020600020906003020160010154111561069c576040805162461bcd60e51b81526020600482015260076024820152661e103132b3b4b760c91b604482015290519081900360640190fd5b600182815481106106a957fe5b9060005260206000209060030201600201544311156106f7576040805162461bcd60e51b81526020600482015260056024820152640f88195b9960da1b604482015290519081900360640190fd5b81336001600160a01b03167fea646db319bf204816f80359be35bfd60d0daea88ac98b858a99323eb80681bc836040518082600281111561073457fe5b60ff16815260200191505060405180910390a35050565b6001545b90565b61168081565b6000828201838110156107b2576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106107fa57805160ff1916838001178555610827565b82800160010185558215610827579182015b8281111561082757825182559160200191906001019061080c565b50610833929150610837565b5090565b61074f91905b80821115610833576000815560010161083d56fea26469706673582212204d424bebfb60588581ce3206020fa706d396b387ea1cda046626f5417e46126664736f6c634300060a0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000004e352cf164e64adcbad318c3a1e222e9eba4ce42
-----Decoded View---------------
Arg [0] : mcbAddress (address): 0x4e352cF164E64ADCBad318C3a1e222E9EBa4Ce42
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000004e352cf164e64adcbad318c3a1e222e9eba4ce42
Deployed Bytecode Sourcemap
8186:2758:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8745:23;;;;;;;;;;;;;;;;-1:-1:-1;8745:23:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9772:616;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9772:616:0;-1:-1:-1;9772:616:0;;;;;;;:::i;:::-;;8480:59;;;:::i;:::-;;;;;;;;;;;;;;;;8688:17;;;:::i;:::-;;;;-1:-1:-1;;;;;8688:17:0;;;;;;;;;;;;;;10552:389;;;;;;;;;;;;;;;;-1:-1:-1;10552:389:0;;;;;;;;;:::i;9353:114::-;;;:::i;8618:41::-;;;:::i;8745:23::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8745:23:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8745:23:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;9772:616::-;9891:3;;:25;;;-1:-1:-1;;;9891:25:0;;9905:10;9891:25;;;;;;8523:16;;-1:-1:-1;;;;;9891:3:0;;:13;;:25;;;;;;;;;;;;;;:3;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9891:25:0;:45;;9883:85;;;;;-1:-1:-1;;;9883:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9987:22;9979:45;;;;;-1:-1:-1;;;9979:45:0;;;;;;;;;;;;-1:-1:-1;;;9979:45:0;;;;;;;;;;;;;;;10059:10;10043:12;:26;;10035:51;;;;;-1:-1:-1;;;10035:51:0;;;;;;;;;;;;-1:-1:-1;;;10035:51:0;;;;;;;;;;;;;;;10135:8;10105:26;:10;8655:4;10105:26;:14;:26;:::i;:::-;:38;;10097:70;;;;;-1:-1:-1;;;10097:70:0;;;;;;;;;;;;-1:-1:-1;;;10097:70:0;;;;;;;;;;;;;;;10193:112;;;;;;;;;;;;;;;;;;;;;;;;;10178:9;;10193:112;;;10219:4;;;;;;10193:112;;10219:4;;;;10193:112;;;;;;;;-1:-1:-1;10193:112:0;;;-1:-1:-1;;;10193:112:0;;;;;;;;;;;;;;10178:128;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;10350:1;10331:9;:16;;;;:20;10322:58;10353:4;;10359:10;10371:8;10322:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10322:58:0;;;;;;;;-1:-1:-1;10322:58:0;;-1:-1:-1;;;;;;10322:58:0;9772:616;;;;:::o;8480:59::-;8523:16;8480:59;:::o;8688:17::-;;;-1:-1:-1;;;;;8688:17:0;;:::o;10552:389::-;10646:9;:16;10641:21;;10633:44;;;;;-1:-1:-1;;;10633:44:0;;;;;;;;;;;;-1:-1:-1;;;10633:44:0;;;;;;;;;;;;;;;10711:15;10696:11;:30;;;;;;;;;;10688:58;;;;;-1:-1:-1;;;10688:58:0;;;;;;;;;;;;-1:-1:-1;;;10688:58:0;;;;;;;;;;;;;;;10793:12;10765:9;10775:2;10765:13;;;;;;;;;;;;;;;;;;:24;;;:40;;10757:60;;;;;-1:-1:-1;;;10757:60:0;;;;;;;;;;;;-1:-1:-1;;;10757:60:0;;;;;;;;;;;;;;;10852:9;10862:2;10852:13;;;;;;;;;;;;;;;;;;:22;;;10836:12;:38;;10828:56;;;;;-1:-1:-1;;;10828:56:0;;;;;;;;;;;;-1:-1:-1;;;10828:56:0;;;;;;;;;;;;;;;10917:2;10905:10;-1:-1:-1;;;;;10900:33:0;;10921:11;10900:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;10552:389;;:::o;9353:114::-;9443:9;:16;9353:114;;:::o;8618:41::-;8655:4;8618:41;:::o;909:181::-;967:7;999:5;;;1023:6;;;;1015:46;;;;;-1:-1:-1;;;1015:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;1081:1;909:181;-1:-1:-1;;;909:181:0:o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;
Swarm Source
ipfs://4d424bebfb60588581ce3206020fa706d396b387ea1cda046626f5417e461266
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 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.