Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
31,700,000 MOMOCO
Holders
162
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
160,000 MOMOCOValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
MomocoToken
Compiler Version
v0.8.7+commit.e28d00a7
Optimization Enabled:
Yes with 1000000 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import './modules/ERC20Token.sol'; contract MomocoToken is ERC20Token { using SafeMath for uint; uint public constant MAXSUPPLY = 1e26; address public owner; address public admin; address public team; uint public teamRate; mapping (address => uint) public funds; event OwnerChanged(address indexed _user, address indexed _old, address indexed _new); event AdminChanged(address indexed _user, address indexed _old, address indexed _new); event TeamChanged(address indexed _user, address indexed _old, address indexed _new); event TeamRateChanged(address indexed _user, uint indexed _old, uint indexed _new); event FundChanged(address indexed _user, uint indexed _old, uint indexed _new); event Mint(address indexed from, address indexed to, uint value); modifier onlyOwner() { require(msg.sender == owner, 'forbidden'); _; } modifier onlyAdmin() { require(msg.sender == admin || msg.sender == owner, "forbidden"); _; } modifier onlyTeam() { require(msg.sender == team || msg.sender == owner, "forbidden"); _; } constructor() { decimals = 18; name = 'Momoco Token'; symbol = 'MOMOCO'; owner = msg.sender; admin = msg.sender; team = msg.sender; } function changeOwner(address _user) external onlyOwner { require(owner != _user, 'no change'); emit OwnerChanged(msg.sender, owner, _user); owner = _user; } function changeAdmin(address _user) external onlyAdmin { require(admin != _user, 'no change'); emit AdminChanged(msg.sender, admin, _user); admin = _user; } function changeTeam(address _user) external onlyTeam { require(team != _user, 'no change'); emit TeamChanged(msg.sender, team, _user); team = _user; } function changeTeamRate(uint _teamRate) external onlyAdmin { require(teamRate != _teamRate, 'no change'); emit TeamRateChanged(msg.sender, teamRate, _teamRate); teamRate = _teamRate; } function increaseFund (address _user, uint _value) public onlyAdmin { require(_value > 0, 'zero'); uint _old = funds[_user]; funds[_user] = _old.add(_value); emit FundChanged(msg.sender, _old, funds[_user]); } function decreaseFund (address _user, uint _value) public onlyAdmin { uint _old = funds[_user]; require(_value > 0, 'zero'); require(_old >= _value, 'insufficient'); funds[_user] = _old.sub(_value); emit FundChanged(msg.sender, _old, funds[_user]); } function increaseFunds (address[] calldata _users, uint[] calldata _values) external onlyAdmin { require(_users.length == _values.length, 'invalid parameters'); for (uint i=0; i<_users.length; i++){ increaseFund(_users[i], _values[i]); } } function decreaseFunds (address[] calldata _users, uint[] calldata _values) external onlyAdmin { require(_users.length == _values.length, 'invalid parameters'); for (uint i=0; i<_users.length; i++){ decreaseFund(_users[i], _values[i]); } } function _mint(address to, uint value) internal returns (bool) { balanceOf[to] = balanceOf[to].add(value); totalSupply = totalSupply.add(value); require(totalSupply <= MAXSUPPLY, 'over max supply'); emit Transfer(address(this), to, value); emit Mint(msg.sender, to, value); return true; } function mint(address to, uint value) external returns (bool) { require(funds[msg.sender] >= value, "fund insufficient"); funds[msg.sender] = funds[msg.sender].sub(value); _mint(to, value); if(value > 0 && teamRate > 0 && team != to) { uint reward = value.div(teamRate); _mint(team, reward); } return true; } function burn(uint value) external returns (bool) { _transfer(msg.sender, address(0), value); return true; } function take() public view returns (uint) { return funds[msg.sender]; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import '../libraries/SafeMath.sol'; contract ERC20Token { using SafeMath for uint; string public name; string public symbol; uint8 public decimals; uint public totalSupply; mapping(address => uint) public balanceOf; mapping(address => mapping(address => uint)) public allowance; event Transfer(address indexed from, address indexed to, uint value); event Approval(address indexed owner, address indexed spender, uint value); function _transfer(address from, address to, uint value) internal { require(balanceOf[from] >= value, 'ERC20Token: INSUFFICIENT_BALANCE'); balanceOf[from] = balanceOf[from].sub(value); balanceOf[to] = balanceOf[to].add(value); if (to == address(0)) { // burn totalSupply = totalSupply.sub(value); } emit Transfer(from, to, value); } function approve(address spender, uint value) external returns (bool) { allowance[msg.sender][spender] = value; emit Approval(msg.sender, spender, value); return true; } function transfer(address to, uint value) external returns (bool) { _transfer(msg.sender, to, value); return true; } function transferFrom(address from, address to, uint value) external returns (bool) { require(allowance[from][msg.sender] >= value, 'ERC20Token: INSUFFICIENT_ALLOWANCE'); allowance[from][msg.sender] = allowance[from][msg.sender].sub(value); _transfer(from, to, value); return true; } }
// SPDX-License-Identifier: MIT pragma solidity >=0.6.0; /** * @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; } }
{ "optimizer": { "enabled": true, "runs": 1000000 }, "metadata": { "bytecodeHash": "none" }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_user","type":"address"},{"indexed":true,"internalType":"address","name":"_old","type":"address"},{"indexed":true,"internalType":"address","name":"_new","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_user","type":"address"},{"indexed":true,"internalType":"uint256","name":"_old","type":"uint256"},{"indexed":true,"internalType":"uint256","name":"_new","type":"uint256"}],"name":"FundChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_user","type":"address"},{"indexed":true,"internalType":"address","name":"_old","type":"address"},{"indexed":true,"internalType":"address","name":"_new","type":"address"}],"name":"OwnerChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_user","type":"address"},{"indexed":true,"internalType":"address","name":"_old","type":"address"},{"indexed":true,"internalType":"address","name":"_new","type":"address"}],"name":"TeamChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_user","type":"address"},{"indexed":true,"internalType":"uint256","name":"_old","type":"uint256"},{"indexed":true,"internalType":"uint256","name":"_new","type":"uint256"}],"name":"TeamRateChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"MAXSUPPLY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"changeAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"changeOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"changeTeam","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_teamRate","type":"uint256"}],"name":"changeTeamRate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"decreaseFund","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_users","type":"address[]"},{"internalType":"uint256[]","name":"_values","type":"uint256[]"}],"name":"decreaseFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"funds","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"increaseFund","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_users","type":"address[]"},{"internalType":"uint256[]","name":"_values","type":"uint256[]"}],"name":"increaseFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","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":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"take","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"team","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"teamRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b506002805460ff1916601217905560408051808201909152600c8082526b26b7b6b7b1b7902a37b5b2b760a11b60209092019182526200005491600091620000b7565b50604080518082019091526006808252654d4f4d4f434f60d01b60209092019182526200008491600191620000b7565b5060068054336001600160a01b03199182168117909255600780548216831790556008805490911690911790556200019a565b828054620000c5906200015d565b90600052602060002090601f016020900481019282620000e9576000855562000134565b82601f106200010457805160ff191683800117855562000134565b8280016001018555821562000134579182015b828111156200013457825182559160200191906001019062000117565b506200014292915062000146565b5090565b5b8082111562000142576000815560010162000147565b600181811c908216806200017257607f821691505b602082108114156200019457634e487b7160e01b600052602260045260246000fd5b50919050565b611c9080620001aa6000396000f3fe608060405234801561001057600080fd5b50600436106101ad5760003560e01c8063758b4e86116100ee57806395d89b4111610097578063a9059cbb11610071578063a9059cbb146103b5578063dd62ed3e146103c8578063e2ae93fb146103f3578063f851a4401461041357600080fd5b806395d89b4114610387578063a23651061461038f578063a6f9dae1146103a257600080fd5b806385f2aef2116100c857806385f2aef21461030f5780638da5cb5b146103545780638f2839701461037457600080fd5b8063758b4e86146102e157806378ef7f02146102f357806379df21ee146102fc57600080fd5b80632e5ec89a1161015b57806342966c681161013557806342966c68146102885780635355e2211461029b5780635826a0df146102ae57806370a08231146102c157600080fd5b80632e5ec89a14610243578063313ce5671461025657806340c10f191461027557600080fd5b8063159090bd1161018c578063159090bd1461020857806318160ddd1461022757806323b872dd1461023057600080fd5b8062c44e3f146101b257806306fdde03146101c7578063095ea7b3146101e5575b600080fd5b6101c56101c0366004611a0c565b610433565b005b6101cf6105ce565b6040516101dc9190611abb565b60405180910390f35b6101f86101f3366004611a0c565b61065c565b60405190151581526020016101dc565b336000908152600a60205260409020545b6040519081526020016101dc565b61021960035481565b6101f861023e3660046119d0565b6106d5565b6101c5610251366004611a36565b610816565b6002546102639060ff1681565b60405160ff90911681526020016101dc565b6101f8610283366004611a0c565b61098e565b6101f8610296366004611aa2565b610ac3565b6101c56102a9366004611982565b610ad9565b6101c56102bc366004611aa2565b610c91565b6102196102cf366004611982565b60046020526000908152604090205481565b6102196a52b7d2dcc80cd2e400000081565b61021960095481565b6101c561030a366004611a0c565b610dd6565b60085461032f9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101dc565b60065461032f9073ffffffffffffffffffffffffffffffffffffffff1681565b6101c5610382366004611982565b610f7c565b6101cf611134565b6101c561039d366004611a36565b611141565b6101c56103b0366004611982565b6112b2565b6101f86103c3366004611a0c565b611448565b6102196103d636600461199d565b600560209081526000928352604080842090915290825290205481565b610219610401366004611982565b600a6020526000908152604090205481565b60075461032f9073ffffffffffffffffffffffffffffffffffffffff1681565b60075473ffffffffffffffffffffffffffffffffffffffff16331480610470575060065473ffffffffffffffffffffffffffffffffffffffff1633145b6104db576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b60008111610547576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d29060208082526004908201527f7a65726f00000000000000000000000000000000000000000000000000000000604082015260600190565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600a60205260409020546105778183611455565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600a602052604080822083905551839133917f1c0e21f6e296f955d35e65d2090eaea5421be92d15535e58a9d61761c3f339cd9190a4505050565b600080546105db90611b98565b80601f016020809104026020016040519081016040528092919081815260200182805461060790611b98565b80156106545780601f1061062957610100808354040283529160200191610654565b820191906000526020600020905b81548152906001019060200180831161063757829003601f168201915b505050505081565b33600081815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906106c49086815260200190565b60405180910390a350600192915050565b73ffffffffffffffffffffffffffffffffffffffff83166000908152600560209081526040808320338452909152812054821115610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f4552433230546f6b656e3a20494e53554646494349454e545f414c4c4f57414e60448201527f434500000000000000000000000000000000000000000000000000000000000060648201526084016104d2565b73ffffffffffffffffffffffffffffffffffffffff841660009081526005602090815260408083203384529091529020546107d090836114d5565b73ffffffffffffffffffffffffffffffffffffffff8516600090815260056020908152604080832033845290915290205561080c848484611517565b5060019392505050565b60075473ffffffffffffffffffffffffffffffffffffffff16331480610853575060065473ffffffffffffffffffffffffffffffffffffffff1633145b6108b9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064016104d2565b828114610922576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e76616c696420706172616d6574657273000000000000000000000000000060448201526064016104d2565b60005b838110156109875761097585858381811061094257610942611c54565b90506020020160208101906109579190611982565b84848481811061096957610969611c54565b90506020020135610dd6565b8061097f81611bec565b915050610925565b5050505050565b336000908152600a6020526040812054821115610a07576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f66756e6420696e73756666696369656e7400000000000000000000000000000060448201526064016104d2565b336000908152600a6020526040902054610a2190836114d5565b336000908152600a6020526040902055610a3b83836116bc565b50600082118015610a4e57506000600954115b8015610a75575060085473ffffffffffffffffffffffffffffffffffffffff848116911614155b15610aba576000610a916009548461182f90919063ffffffff16565b600854909150610ab79073ffffffffffffffffffffffffffffffffffffffff16826116bc565b50505b50600192915050565b6000610ad133600084611517565b506001919050565b60085473ffffffffffffffffffffffffffffffffffffffff16331480610b16575060065473ffffffffffffffffffffffffffffffffffffffff1633145b610b7c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064016104d2565b60085473ffffffffffffffffffffffffffffffffffffffff82811691161415610c01576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f6e6f206368616e6765000000000000000000000000000000000000000000000060448201526064016104d2565b60085460405173ffffffffffffffffffffffffffffffffffffffff80841692169033907fe8f0bb00fc07a7f6954bf798d9948bd1c6bf13c2c2799b1b8f4041db6f2f036490600090a4600880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60075473ffffffffffffffffffffffffffffffffffffffff16331480610cce575060065473ffffffffffffffffffffffffffffffffffffffff1633145b610d34576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064016104d2565b806009541415610da0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f6e6f206368616e6765000000000000000000000000000000000000000000000060448201526064016104d2565b60095460405182919033907f21c6d6fee84a41abfb4b67630b67195c7472ed424080c2fc419d8a17d01506bb90600090a4600955565b60075473ffffffffffffffffffffffffffffffffffffffff16331480610e13575060065473ffffffffffffffffffffffffffffffffffffffff1633145b610e79576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064016104d2565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600a602052604090205481610f08576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d29060208082526004908201527f7a65726f00000000000000000000000000000000000000000000000000000000604082015260600190565b81811015610f72576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f696e73756666696369656e74000000000000000000000000000000000000000060448201526064016104d2565b61057781836114d5565b60075473ffffffffffffffffffffffffffffffffffffffff16331480610fb9575060065473ffffffffffffffffffffffffffffffffffffffff1633145b61101f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064016104d2565b60075473ffffffffffffffffffffffffffffffffffffffff828116911614156110a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f6e6f206368616e6765000000000000000000000000000000000000000000000060448201526064016104d2565b60075460405173ffffffffffffffffffffffffffffffffffffffff80841692169033907f4eb572e99196bed0270fbd5b17a948e19c3f50a97838cb0d2a75a823ff8e6c5090600090a4600780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b600180546105db90611b98565b60075473ffffffffffffffffffffffffffffffffffffffff1633148061117e575060065473ffffffffffffffffffffffffffffffffffffffff1633145b6111e4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064016104d2565b82811461124d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e76616c696420706172616d6574657273000000000000000000000000000060448201526064016104d2565b60005b83811015610987576112a085858381811061126d5761126d611c54565b90506020020160208101906112829190611982565b84848481811061129457611294611c54565b90506020020135610433565b806112aa81611bec565b915050611250565b60065473ffffffffffffffffffffffffffffffffffffffff163314611333576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064016104d2565b60065473ffffffffffffffffffffffffffffffffffffffff828116911614156113b8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f6e6f206368616e6765000000000000000000000000000000000000000000000060448201526064016104d2565b60065460405173ffffffffffffffffffffffffffffffffffffffff80841692169033907f381c0d11398486654573703c51ee8210ce9461764d133f9f0e53b6a53970533190600090a4600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6000610aba338484611517565b6000806114628385611b2e565b9050838110156114ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104d2565b9392505050565b60006114ce83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611871565b73ffffffffffffffffffffffffffffffffffffffff83166000908152600460205260409020548111156115a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4552433230546f6b656e3a20494e53554646494349454e545f42414c414e434560448201526064016104d2565b73ffffffffffffffffffffffffffffffffffffffff83166000908152600460205260409020546115d690826114d5565b73ffffffffffffffffffffffffffffffffffffffff80851660009081526004602052604080822093909355908416815220546116129082611455565b73ffffffffffffffffffffffffffffffffffffffff83166000818152600460205260409020919091556116505760035461164c90826114d5565b6003555b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516116af91815260200190565b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600460205260408120546116ec9083611455565b73ffffffffffffffffffffffffffffffffffffffff841660009081526004602052604090205560035461171f9083611455565b60038190556a52b7d2dcc80cd2e40000001015611798576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6f766572206d617820737570706c79000000000000000000000000000000000060448201526064016104d2565b60405182815273ffffffffffffffffffffffffffffffffffffffff84169030907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a360405182815273ffffffffffffffffffffffffffffffffffffffff84169033907fab8530f87dc9b59234c4623bf917212bb2536d647574c8e7e5da92c2ede0c9f8906020016106c4565b60006114ce83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506118c5565b600081848411156118af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d29190611abb565b5060006118bc8486611b81565b95945050505050565b60008183611900576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d29190611abb565b5060006118bc8486611b46565b803573ffffffffffffffffffffffffffffffffffffffff8116811461193157600080fd5b919050565b60008083601f84011261194857600080fd5b50813567ffffffffffffffff81111561196057600080fd5b6020830191508360208260051b850101111561197b57600080fd5b9250929050565b60006020828403121561199457600080fd5b6114ce8261190d565b600080604083850312156119b057600080fd5b6119b98361190d565b91506119c76020840161190d565b90509250929050565b6000806000606084860312156119e557600080fd5b6119ee8461190d565b92506119fc6020850161190d565b9150604084013590509250925092565b60008060408385031215611a1f57600080fd5b611a288361190d565b946020939093013593505050565b60008060008060408587031215611a4c57600080fd5b843567ffffffffffffffff80821115611a6457600080fd5b611a7088838901611936565b90965094506020870135915080821115611a8957600080fd5b50611a9687828801611936565b95989497509550505050565b600060208284031215611ab457600080fd5b5035919050565b600060208083528351808285015260005b81811015611ae857858101830151858201604001528201611acc565b81811115611afa576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b60008219821115611b4157611b41611c25565b500190565b600082611b7c577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b600082821015611b9357611b93611c25565b500390565b600181811c90821680611bac57607f821691505b60208210811415611be6577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611c1e57611c1e611c25565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea164736f6c6343000807000a
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101ad5760003560e01c8063758b4e86116100ee57806395d89b4111610097578063a9059cbb11610071578063a9059cbb146103b5578063dd62ed3e146103c8578063e2ae93fb146103f3578063f851a4401461041357600080fd5b806395d89b4114610387578063a23651061461038f578063a6f9dae1146103a257600080fd5b806385f2aef2116100c857806385f2aef21461030f5780638da5cb5b146103545780638f2839701461037457600080fd5b8063758b4e86146102e157806378ef7f02146102f357806379df21ee146102fc57600080fd5b80632e5ec89a1161015b57806342966c681161013557806342966c68146102885780635355e2211461029b5780635826a0df146102ae57806370a08231146102c157600080fd5b80632e5ec89a14610243578063313ce5671461025657806340c10f191461027557600080fd5b8063159090bd1161018c578063159090bd1461020857806318160ddd1461022757806323b872dd1461023057600080fd5b8062c44e3f146101b257806306fdde03146101c7578063095ea7b3146101e5575b600080fd5b6101c56101c0366004611a0c565b610433565b005b6101cf6105ce565b6040516101dc9190611abb565b60405180910390f35b6101f86101f3366004611a0c565b61065c565b60405190151581526020016101dc565b336000908152600a60205260409020545b6040519081526020016101dc565b61021960035481565b6101f861023e3660046119d0565b6106d5565b6101c5610251366004611a36565b610816565b6002546102639060ff1681565b60405160ff90911681526020016101dc565b6101f8610283366004611a0c565b61098e565b6101f8610296366004611aa2565b610ac3565b6101c56102a9366004611982565b610ad9565b6101c56102bc366004611aa2565b610c91565b6102196102cf366004611982565b60046020526000908152604090205481565b6102196a52b7d2dcc80cd2e400000081565b61021960095481565b6101c561030a366004611a0c565b610dd6565b60085461032f9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101dc565b60065461032f9073ffffffffffffffffffffffffffffffffffffffff1681565b6101c5610382366004611982565b610f7c565b6101cf611134565b6101c561039d366004611a36565b611141565b6101c56103b0366004611982565b6112b2565b6101f86103c3366004611a0c565b611448565b6102196103d636600461199d565b600560209081526000928352604080842090915290825290205481565b610219610401366004611982565b600a6020526000908152604090205481565b60075461032f9073ffffffffffffffffffffffffffffffffffffffff1681565b60075473ffffffffffffffffffffffffffffffffffffffff16331480610470575060065473ffffffffffffffffffffffffffffffffffffffff1633145b6104db576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b60008111610547576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d29060208082526004908201527f7a65726f00000000000000000000000000000000000000000000000000000000604082015260600190565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600a60205260409020546105778183611455565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600a602052604080822083905551839133917f1c0e21f6e296f955d35e65d2090eaea5421be92d15535e58a9d61761c3f339cd9190a4505050565b600080546105db90611b98565b80601f016020809104026020016040519081016040528092919081815260200182805461060790611b98565b80156106545780601f1061062957610100808354040283529160200191610654565b820191906000526020600020905b81548152906001019060200180831161063757829003601f168201915b505050505081565b33600081815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906106c49086815260200190565b60405180910390a350600192915050565b73ffffffffffffffffffffffffffffffffffffffff83166000908152600560209081526040808320338452909152812054821115610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f4552433230546f6b656e3a20494e53554646494349454e545f414c4c4f57414e60448201527f434500000000000000000000000000000000000000000000000000000000000060648201526084016104d2565b73ffffffffffffffffffffffffffffffffffffffff841660009081526005602090815260408083203384529091529020546107d090836114d5565b73ffffffffffffffffffffffffffffffffffffffff8516600090815260056020908152604080832033845290915290205561080c848484611517565b5060019392505050565b60075473ffffffffffffffffffffffffffffffffffffffff16331480610853575060065473ffffffffffffffffffffffffffffffffffffffff1633145b6108b9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064016104d2565b828114610922576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e76616c696420706172616d6574657273000000000000000000000000000060448201526064016104d2565b60005b838110156109875761097585858381811061094257610942611c54565b90506020020160208101906109579190611982565b84848481811061096957610969611c54565b90506020020135610dd6565b8061097f81611bec565b915050610925565b5050505050565b336000908152600a6020526040812054821115610a07576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f66756e6420696e73756666696369656e7400000000000000000000000000000060448201526064016104d2565b336000908152600a6020526040902054610a2190836114d5565b336000908152600a6020526040902055610a3b83836116bc565b50600082118015610a4e57506000600954115b8015610a75575060085473ffffffffffffffffffffffffffffffffffffffff848116911614155b15610aba576000610a916009548461182f90919063ffffffff16565b600854909150610ab79073ffffffffffffffffffffffffffffffffffffffff16826116bc565b50505b50600192915050565b6000610ad133600084611517565b506001919050565b60085473ffffffffffffffffffffffffffffffffffffffff16331480610b16575060065473ffffffffffffffffffffffffffffffffffffffff1633145b610b7c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064016104d2565b60085473ffffffffffffffffffffffffffffffffffffffff82811691161415610c01576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f6e6f206368616e6765000000000000000000000000000000000000000000000060448201526064016104d2565b60085460405173ffffffffffffffffffffffffffffffffffffffff80841692169033907fe8f0bb00fc07a7f6954bf798d9948bd1c6bf13c2c2799b1b8f4041db6f2f036490600090a4600880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60075473ffffffffffffffffffffffffffffffffffffffff16331480610cce575060065473ffffffffffffffffffffffffffffffffffffffff1633145b610d34576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064016104d2565b806009541415610da0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f6e6f206368616e6765000000000000000000000000000000000000000000000060448201526064016104d2565b60095460405182919033907f21c6d6fee84a41abfb4b67630b67195c7472ed424080c2fc419d8a17d01506bb90600090a4600955565b60075473ffffffffffffffffffffffffffffffffffffffff16331480610e13575060065473ffffffffffffffffffffffffffffffffffffffff1633145b610e79576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064016104d2565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600a602052604090205481610f08576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d29060208082526004908201527f7a65726f00000000000000000000000000000000000000000000000000000000604082015260600190565b81811015610f72576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f696e73756666696369656e74000000000000000000000000000000000000000060448201526064016104d2565b61057781836114d5565b60075473ffffffffffffffffffffffffffffffffffffffff16331480610fb9575060065473ffffffffffffffffffffffffffffffffffffffff1633145b61101f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064016104d2565b60075473ffffffffffffffffffffffffffffffffffffffff828116911614156110a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f6e6f206368616e6765000000000000000000000000000000000000000000000060448201526064016104d2565b60075460405173ffffffffffffffffffffffffffffffffffffffff80841692169033907f4eb572e99196bed0270fbd5b17a948e19c3f50a97838cb0d2a75a823ff8e6c5090600090a4600780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b600180546105db90611b98565b60075473ffffffffffffffffffffffffffffffffffffffff1633148061117e575060065473ffffffffffffffffffffffffffffffffffffffff1633145b6111e4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064016104d2565b82811461124d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e76616c696420706172616d6574657273000000000000000000000000000060448201526064016104d2565b60005b83811015610987576112a085858381811061126d5761126d611c54565b90506020020160208101906112829190611982565b84848481811061129457611294611c54565b90506020020135610433565b806112aa81611bec565b915050611250565b60065473ffffffffffffffffffffffffffffffffffffffff163314611333576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f666f7262696464656e000000000000000000000000000000000000000000000060448201526064016104d2565b60065473ffffffffffffffffffffffffffffffffffffffff828116911614156113b8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f6e6f206368616e6765000000000000000000000000000000000000000000000060448201526064016104d2565b60065460405173ffffffffffffffffffffffffffffffffffffffff80841692169033907f381c0d11398486654573703c51ee8210ce9461764d133f9f0e53b6a53970533190600090a4600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6000610aba338484611517565b6000806114628385611b2e565b9050838110156114ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104d2565b9392505050565b60006114ce83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611871565b73ffffffffffffffffffffffffffffffffffffffff83166000908152600460205260409020548111156115a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4552433230546f6b656e3a20494e53554646494349454e545f42414c414e434560448201526064016104d2565b73ffffffffffffffffffffffffffffffffffffffff83166000908152600460205260409020546115d690826114d5565b73ffffffffffffffffffffffffffffffffffffffff80851660009081526004602052604080822093909355908416815220546116129082611455565b73ffffffffffffffffffffffffffffffffffffffff83166000818152600460205260409020919091556116505760035461164c90826114d5565b6003555b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516116af91815260200190565b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600460205260408120546116ec9083611455565b73ffffffffffffffffffffffffffffffffffffffff841660009081526004602052604090205560035461171f9083611455565b60038190556a52b7d2dcc80cd2e40000001015611798576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6f766572206d617820737570706c79000000000000000000000000000000000060448201526064016104d2565b60405182815273ffffffffffffffffffffffffffffffffffffffff84169030907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a360405182815273ffffffffffffffffffffffffffffffffffffffff84169033907fab8530f87dc9b59234c4623bf917212bb2536d647574c8e7e5da92c2ede0c9f8906020016106c4565b60006114ce83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506118c5565b600081848411156118af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d29190611abb565b5060006118bc8486611b81565b95945050505050565b60008183611900576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d29190611abb565b5060006118bc8486611b46565b803573ffffffffffffffffffffffffffffffffffffffff8116811461193157600080fd5b919050565b60008083601f84011261194857600080fd5b50813567ffffffffffffffff81111561196057600080fd5b6020830191508360208260051b850101111561197b57600080fd5b9250929050565b60006020828403121561199457600080fd5b6114ce8261190d565b600080604083850312156119b057600080fd5b6119b98361190d565b91506119c76020840161190d565b90509250929050565b6000806000606084860312156119e557600080fd5b6119ee8461190d565b92506119fc6020850161190d565b9150604084013590509250925092565b60008060408385031215611a1f57600080fd5b611a288361190d565b946020939093013593505050565b60008060008060408587031215611a4c57600080fd5b843567ffffffffffffffff80821115611a6457600080fd5b611a7088838901611936565b90965094506020870135915080821115611a8957600080fd5b50611a9687828801611936565b95989497509550505050565b600060208284031215611ab457600080fd5b5035919050565b600060208083528351808285015260005b81811015611ae857858101830151858201604001528201611acc565b81811115611afa576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b60008219821115611b4157611b41611c25565b500190565b600082611b7c577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b600082821015611b9357611b93611c25565b500390565b600181811c90821680611bac57607f821691505b60208210811415611be6577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611c1e57611c1e611c25565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea164736f6c6343000807000a
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.