ERC-20
Blockchain
Overview
Max Total Supply
614,377,723.169919 CHR
Holders
10,400 ( 0.010%)
Market
Price
$0.26 @ 0.000071 ETH (-0.76%)
Onchain Market Cap
$158,796,981.35
Circulating Supply Market Cap
$213,227,462.00
Other Info
Token Contract (WITH 6 Decimals)
Balance
5,960 CHRValue
$1,540.47 ( ~0.424070479406891 Eth) [0.0010%]Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
Chromia
Compiler Version
v0.5.8+commit.23d335f2
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-10-04 */ /** *Submitted for verification at Etherscan.io on 2019-05-27 */ // Copyright (C) Chromapolis Devcenter OU 2019 // File: openzeppelin-solidity/contracts/token/ERC20/IERC20.sol pragma solidity ^0.5.2; /** * @title ERC20 interface * @dev see https://eips.ethereum.org/EIPS/eip-20 */ interface IERC20 { function transfer(address to, uint256 value) external returns (bool); function approve(address spender, uint256 value) external returns (bool); function transferFrom(address from, address to, uint256 value) external returns (bool); function totalSupply() external view returns (uint256); function balanceOf(address who) external view returns (uint256); function allowance(address owner, address spender) external view returns (uint256); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } // File: openzeppelin-solidity/contracts/math/SafeMath.sol pragma solidity ^0.5.2; /** * @title SafeMath * @dev Unsigned math operations with safety checks that revert on error */ library SafeMath { /** * @dev Multiplies two unsigned integers, reverts on 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-solidity/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b); return c; } /** * @dev Integer division of two unsigned integers truncating the quotient, reverts on division by zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 require(b > 0); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Subtracts two unsigned integers, reverts on overflow (i.e. if subtrahend is greater than minuend). */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a); uint256 c = a - b; return c; } /** * @dev Adds two unsigned integers, reverts on overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a); return c; } /** * @dev Divides two unsigned integers and returns the remainder (unsigned integer modulo), * reverts when dividing by zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { require(b != 0); return a % b; } } // File: openzeppelin-solidity/contracts/token/ERC20/ERC20.sol pragma solidity ^0.5.2; /** * @title Standard ERC20 token * * @dev Implementation of the basic standard token. * https://eips.ethereum.org/EIPS/eip-20 * Originally based on code by FirstBlood: * https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol * * This implementation emits additional Approval events, allowing applications to reconstruct the allowance status for * all accounts just by listening to said events. Note that this isn't required by the specification, and other * compliant implementations may not do it. */ contract ERC20 is IERC20 { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowed; uint256 private _totalSupply; /** * @dev Total number of tokens in existence */ function totalSupply() public view returns (uint256) { return _totalSupply; } /** * @dev Gets the balance of the specified address. * @param owner The address to query the balance of. * @return A uint256 representing the amount owned by the passed address. */ function balanceOf(address owner) public view returns (uint256) { return _balances[owner]; } /** * @dev Function to check the amount of tokens that an owner allowed to a spender. * @param owner address The address which owns the funds. * @param spender address The address which will spend the funds. * @return A uint256 specifying the amount of tokens still available for the spender. */ function allowance(address owner, address spender) public view returns (uint256) { return _allowed[owner][spender]; } /** * @dev Transfer token to a specified address * @param to The address to transfer to. * @param value The amount to be transferred. */ function transfer(address to, uint256 value) public returns (bool) { _transfer(msg.sender, to, value); return true; } /** * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender. * 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 * @param spender The address which will spend the funds. * @param value The amount of tokens to be spent. */ function approve(address spender, uint256 value) public returns (bool) { _approve(msg.sender, spender, value); return true; } /** * @dev Transfer tokens from one address to another. * Note that while this function emits an Approval event, this is not required as per the specification, * and other compliant implementations may not emit the event. * @param from address The address which you want to send tokens from * @param to address The address which you want to transfer to * @param value uint256 the amount of tokens to be transferred */ function transferFrom(address from, address to, uint256 value) public returns (bool) { _transfer(from, to, value); _approve(from, msg.sender, _allowed[from][msg.sender].sub(value)); return true; } /** * @dev Increase the amount of tokens that an owner allowed to a spender. * approve should be called when _allowed[msg.sender][spender] == 0. To increment * allowed value is better to use this function to avoid 2 calls (and wait until * the first transaction is mined) * From MonolithDAO Token.sol * Emits an Approval event. * @param spender The address which will spend the funds. * @param addedValue The amount of tokens to increase the allowance by. */ function increaseAllowance(address spender, uint256 addedValue) public returns (bool) { _approve(msg.sender, spender, _allowed[msg.sender][spender].add(addedValue)); return true; } /** * @dev Decrease the amount of tokens that an owner allowed to a spender. * approve should be called when _allowed[msg.sender][spender] == 0. To decrement * allowed value is better to use this function to avoid 2 calls (and wait until * the first transaction is mined) * From MonolithDAO Token.sol * Emits an Approval event. * @param spender The address which will spend the funds. * @param subtractedValue The amount of tokens to decrease the allowance by. */ function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) { _approve(msg.sender, spender, _allowed[msg.sender][spender].sub(subtractedValue)); return true; } /** * @dev Transfer token for a specified addresses * @param from The address to transfer from. * @param to The address to transfer to. * @param value The amount to be transferred. */ function _transfer(address from, address to, uint256 value) internal { require(to != address(0)); _balances[from] = _balances[from].sub(value); _balances[to] = _balances[to].add(value); emit Transfer(from, to, value); } /** * @dev Internal function that mints an amount of the token and assigns it to * an account. This encapsulates the modification of balances such that the * proper events are emitted. * @param account The account that will receive the created tokens. * @param value The amount that will be created. */ function _mint(address account, uint256 value) internal { require(account != address(0)); _totalSupply = _totalSupply.add(value); _balances[account] = _balances[account].add(value); emit Transfer(address(0), account, value); } /** * @dev Internal function that burns an amount of the token of a given * account. * @param account The account whose tokens will be burnt. * @param value The amount that will be burnt. */ function _burn(address account, uint256 value) internal { require(account != address(0)); _totalSupply = _totalSupply.sub(value); _balances[account] = _balances[account].sub(value); emit Transfer(account, address(0), value); } /** * @dev Approve an address to spend another addresses' tokens. * @param owner The address that owns the tokens. * @param spender The address that will spend the tokens. * @param value The number of tokens that can be spent. */ function _approve(address owner, address spender, uint256 value) internal { require(spender != address(0)); require(owner != address(0)); _allowed[owner][spender] = value; emit Approval(owner, spender, value); } /** * @dev Internal function that burns an amount of the token of a given * account, deducting from the sender's allowance for said account. Uses the * internal burn function. * Emits an Approval event (reflecting the reduced allowance). * @param account The account whose tokens will be burnt. * @param value The amount that will be burnt. */ function _burnFrom(address account, uint256 value) internal { _burn(account, value); _approve(account, msg.sender, _allowed[account][msg.sender].sub(value)); } } // File: openzeppelin-solidity/contracts/token/ERC20/ERC20Detailed.sol pragma solidity ^0.5.2; /** * @title ERC20Detailed token * @dev The decimals are only for visualization purposes. * All the operations are done using the smallest and indivisible token unit, * just as on Ethereum all the operations are done in wei. */ contract ERC20Detailed is IERC20 { string private _name; string private _symbol; uint8 private _decimals; constructor (string memory name, string memory symbol, uint8 decimals) public { _name = name; _symbol = symbol; _decimals = decimals; } /** * @return the name of the token. */ function name() public view returns (string memory) { return _name; } /** * @return the symbol of the token. */ function symbol() public view returns (string memory) { return _symbol; } /** * @return the number of decimals of the token. */ function decimals() public view returns (uint8) { return _decimals; } } // File: contracts/token/ERC20/Chromia.sol // Copyright (C) Chromapolis Devcenter OU 2019 pragma solidity 0.5.8; contract Chromia is ERC20, ERC20Detailed { uint8 public constant DECIMALS = 6; address private _minter; // one billion tokens with 6 decimals uint256 private _cap = 1000000000 * 1000000; event MinterSet(address indexed account); event TransferToChromia(address indexed from, bytes32 indexed to, uint256 value); event TransferFromChromia(address indexed to, bytes32 indexed refID, uint256 value); /** * @dev Constructor that gives msg.sender all of existing tokens. * @param minter the multi-sig contract address */ constructor(address minter, uint256 initialBalance) public ERC20Detailed("Chroma", "CHR", DECIMALS) { _mint(msg.sender, initialBalance); _setMinter(minter); } modifier onlyMinter() { require(isMinter(msg.sender), "caller is not a minter"); _; } function cap() public view returns (uint256) { return _cap; } /** * @dev Burns a specific amount of tokens and emit transfer event for Chromia * @param to The address to transfer to in Chromia. * @param value The amount of token to be burned. */ function transferToChromia(bytes32 to, uint256 value) public { _burn(msg.sender, value); emit TransferToChromia(msg.sender, to, value); } /** * @dev Function to mint tokens * @param to The address that will receive the minted tokens. * @param value The amount of tokens to mint. * @return A boolean that indicates if the operation was successful. */ function transferFromChromia(address to, uint256 value, bytes32 refID) public onlyMinter returns (bool) { _mint(to, value); emit TransferFromChromia(to, refID, value); return true; } function _mint(address account, uint256 value) internal { require(totalSupply().add(value) <= cap(), "ERC20Capped: cap exceeded"); super._mint(account, value); } function isMinter(address account) public view returns (bool) { return _minter == account; } function _setMinter(address account) internal { _minter = account; emit MinterSet(account); } function changeMinter(address newMinter) public onlyMinter { _setMinter(newMinter); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"bytes32"},{"name":"value","type":"uint256"}],"name":"transferToChromia","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newMinter","type":"address"}],"name":"changeMinter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"DECIMALS","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"cap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"account","type":"address"}],"name":"isMinter","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"},{"name":"refID","type":"bytes32"}],"name":"transferFromChromia","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"minter","type":"address"},{"name":"initialBalance","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"account","type":"address"}],"name":"MinterSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"bytes32"},{"indexed":false,"name":"value","type":"uint256"}],"name":"TransferToChromia","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":true,"name":"refID","type":"bytes32"},{"indexed":false,"name":"value","type":"uint256"}],"name":"TransferFromChromia","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"}]
Contract Creation Code
608060405266038d7ea4c680006006553480156200001c57600080fd5b5060405160408062000f2d833981018060405260408110156200003e57600080fd5b50805160209182015160408051808201825260068082527f4368726f6d610000000000000000000000000000000000000000000000000000828701908152835180850190945260038085527f43485200000000000000000000000000000000000000000000000000000000009785019790975282519596949592949192620000c892919062000316565b508151620000de90600490602085019062000316565b506005805460ff191660ff9290921691909117905550620001099050338262000122602090811b901c565b6200011a82620001e460201b60201c565b5050620003b8565b620001326200023660201b60201c565b6200015b82620001476200023d60201b60201c565b6200024360201b620009f41790919060201c565b1115620001c957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f45524332304361707065643a2063617020657863656564656400000000000000604482015290519081900360640190fd5b620001e082826200025d60201b62000a911760201c565b5050565b60058054610100600160a81b0319166101006001600160a01b038416908102919091179091556040517f726b590ef91a8c76ad05bbe91a57ef84605276528f49cd47d787f558a4e755b690600090a250565b6006545b90565b60025490565b6000828201838110156200025657600080fd5b9392505050565b6001600160a01b0382166200027157600080fd5b6200028d816002546200024360201b620009f41790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620002c0918390620009f462000243821b17901c565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200035957805160ff191683800117855562000389565b8280016001018555821562000389579182015b82811115620003895782518255916020019190600101906200036c565b50620003979291506200039b565b5090565b6200023a91905b80821115620003975760008155600101620003a2565b610b6580620003c86000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063355274ea116100a2578063a457c2d711610071578063a457c2d7146102f0578063a9059cbb1461031c578063aa271e1a14610348578063b57603e51461036e578063dd62ed3e146103a05761010b565b8063355274ea1461028e578063395093511461029657806370a08231146102c257806395d89b41146102e85761010b565b806323b872dd116100de57806323b872dd1461020c5780632c4d4d18146102425780632e0f262514610268578063313ce567146102865761010b565b806306fdde0314610110578063095ea7b31461018d57806318160ddd146101cd5780631f35ec64146101e7575b600080fd5b6101186103ce565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015257818101518382015260200161013a565b50505050905090810190601f16801561017f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101b9600480360360408110156101a357600080fd5b506001600160a01b038135169060200135610464565b604080519115158252519081900360200190f35b6101d561047a565b60408051918252519081900360200190f35b61020a600480360360408110156101fd57600080fd5b5080359060200135610480565b005b6101b96004803603606081101561022257600080fd5b506001600160a01b038135811691602081013590911690604001356104c4565b61020a6004803603602081101561025857600080fd5b50356001600160a01b031661051b565b610270610584565b6040805160ff9092168252519081900360200190f35b610270610589565b6101d5610592565b6101b9600480360360408110156102ac57600080fd5b506001600160a01b038135169060200135610598565b6101d5600480360360208110156102d857600080fd5b50356001600160a01b03166105d4565b6101186105ef565b6101b96004803603604081101561030657600080fd5b506001600160a01b038135169060200135610650565b6101b96004803603604081101561033257600080fd5b506001600160a01b03813516906020013561068c565b6101b96004803603602081101561035e57600080fd5b50356001600160a01b0316610699565b6101b96004803603606081101561038457600080fd5b506001600160a01b0381351690602081013590604001356106b5565b6101d5600480360360408110156103b657600080fd5b506001600160a01b0381358116916020013516610768565b60038054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561045a5780601f1061042f5761010080835404028352916020019161045a565b820191906000526020600020905b81548152906001019060200180831161043d57829003601f168201915b5050505050905090565b6000610471338484610793565b50600192915050565b60025490565b61048a338261081b565b604080518281529051839133917ea52c5916d1c00eb8d52b3e40a75956fd2e15339be0d111c44eff45ad0f533e9181900360200190a35050565b60006104d18484846108c2565b6001600160a01b03841660009081526001602090815260408083203380855292529091205461051191869161050c908663ffffffff61098d16565b610793565b5060019392505050565b61052433610699565b6105785760408051600160e51b62461bcd02815260206004820152601660248201527f63616c6c6572206973206e6f742061206d696e74657200000000000000000000604482015290519081900360640190fd5b610581816109a2565b50565b600681565b60055460ff1690565b60065490565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161047191859061050c908663ffffffff6109f416565b6001600160a01b031660009081526020819052604090205490565b60048054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561045a5780601f1061042f5761010080835404028352916020019161045a565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161047191859061050c908663ffffffff61098d16565b60006104713384846108c2565b60055461010090046001600160a01b0390811690821614919050565b60006106c033610699565b6107145760408051600160e51b62461bcd02815260206004820152601660248201527f63616c6c6572206973206e6f742061206d696e74657200000000000000000000604482015290519081900360640190fd5b61071e8484610a0d565b60408051848152905183916001600160a01b038716917f7b8b4d473e148a23a96bf4ff0dddf156a76854397f7b206c1ed0185f24f5598f9181900360200190a35060019392505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0382166107a657600080fd5b6001600160a01b0383166107b957600080fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b03821661082e57600080fd5b600254610841908263ffffffff61098d16565b6002556001600160a01b03821660009081526020819052604090205461086d908263ffffffff61098d16565b6001600160a01b038316600081815260208181526040808320949094558351858152935191937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a35050565b6001600160a01b0382166108d557600080fd5b6001600160a01b0383166000908152602081905260409020546108fe908263ffffffff61098d16565b6001600160a01b038085166000908152602081905260408082209390935590841681522054610933908263ffffffff6109f416565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008282111561099c57600080fd5b50900390565b60058054610100600160a81b0319166101006001600160a01b038416908102919091179091556040517f726b590ef91a8c76ad05bbe91a57ef84605276528f49cd47d787f558a4e755b690600090a250565b600082820183811015610a0657600080fd5b9392505050565b610a15610592565b610a2d82610a2161047a565b9063ffffffff6109f416565b1115610a835760408051600160e51b62461bcd02815260206004820152601960248201527f45524332304361707065643a2063617020657863656564656400000000000000604482015290519081900360640190fd5b610a8d8282610a91565b5050565b6001600160a01b038216610aa457600080fd5b600254610ab7908263ffffffff6109f416565b6002556001600160a01b038216600090815260208190526040902054610ae3908263ffffffff6109f416565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3505056fea165627a7a7230582050a1d6e08ee19b18063e8e283b2f39d2e3bd161a749b21a4469691e7e98413e900290000000000000000000000008708e8756f1202bc1760098cfc1c1bfa8306ca0d0000000000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061010b5760003560e01c8063355274ea116100a2578063a457c2d711610071578063a457c2d7146102f0578063a9059cbb1461031c578063aa271e1a14610348578063b57603e51461036e578063dd62ed3e146103a05761010b565b8063355274ea1461028e578063395093511461029657806370a08231146102c257806395d89b41146102e85761010b565b806323b872dd116100de57806323b872dd1461020c5780632c4d4d18146102425780632e0f262514610268578063313ce567146102865761010b565b806306fdde0314610110578063095ea7b31461018d57806318160ddd146101cd5780631f35ec64146101e7575b600080fd5b6101186103ce565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015257818101518382015260200161013a565b50505050905090810190601f16801561017f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101b9600480360360408110156101a357600080fd5b506001600160a01b038135169060200135610464565b604080519115158252519081900360200190f35b6101d561047a565b60408051918252519081900360200190f35b61020a600480360360408110156101fd57600080fd5b5080359060200135610480565b005b6101b96004803603606081101561022257600080fd5b506001600160a01b038135811691602081013590911690604001356104c4565b61020a6004803603602081101561025857600080fd5b50356001600160a01b031661051b565b610270610584565b6040805160ff9092168252519081900360200190f35b610270610589565b6101d5610592565b6101b9600480360360408110156102ac57600080fd5b506001600160a01b038135169060200135610598565b6101d5600480360360208110156102d857600080fd5b50356001600160a01b03166105d4565b6101186105ef565b6101b96004803603604081101561030657600080fd5b506001600160a01b038135169060200135610650565b6101b96004803603604081101561033257600080fd5b506001600160a01b03813516906020013561068c565b6101b96004803603602081101561035e57600080fd5b50356001600160a01b0316610699565b6101b96004803603606081101561038457600080fd5b506001600160a01b0381351690602081013590604001356106b5565b6101d5600480360360408110156103b657600080fd5b506001600160a01b0381358116916020013516610768565b60038054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561045a5780601f1061042f5761010080835404028352916020019161045a565b820191906000526020600020905b81548152906001019060200180831161043d57829003601f168201915b5050505050905090565b6000610471338484610793565b50600192915050565b60025490565b61048a338261081b565b604080518281529051839133917ea52c5916d1c00eb8d52b3e40a75956fd2e15339be0d111c44eff45ad0f533e9181900360200190a35050565b60006104d18484846108c2565b6001600160a01b03841660009081526001602090815260408083203380855292529091205461051191869161050c908663ffffffff61098d16565b610793565b5060019392505050565b61052433610699565b6105785760408051600160e51b62461bcd02815260206004820152601660248201527f63616c6c6572206973206e6f742061206d696e74657200000000000000000000604482015290519081900360640190fd5b610581816109a2565b50565b600681565b60055460ff1690565b60065490565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161047191859061050c908663ffffffff6109f416565b6001600160a01b031660009081526020819052604090205490565b60048054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561045a5780601f1061042f5761010080835404028352916020019161045a565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161047191859061050c908663ffffffff61098d16565b60006104713384846108c2565b60055461010090046001600160a01b0390811690821614919050565b60006106c033610699565b6107145760408051600160e51b62461bcd02815260206004820152601660248201527f63616c6c6572206973206e6f742061206d696e74657200000000000000000000604482015290519081900360640190fd5b61071e8484610a0d565b60408051848152905183916001600160a01b038716917f7b8b4d473e148a23a96bf4ff0dddf156a76854397f7b206c1ed0185f24f5598f9181900360200190a35060019392505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0382166107a657600080fd5b6001600160a01b0383166107b957600080fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b03821661082e57600080fd5b600254610841908263ffffffff61098d16565b6002556001600160a01b03821660009081526020819052604090205461086d908263ffffffff61098d16565b6001600160a01b038316600081815260208181526040808320949094558351858152935191937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a35050565b6001600160a01b0382166108d557600080fd5b6001600160a01b0383166000908152602081905260409020546108fe908263ffffffff61098d16565b6001600160a01b038085166000908152602081905260408082209390935590841681522054610933908263ffffffff6109f416565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008282111561099c57600080fd5b50900390565b60058054610100600160a81b0319166101006001600160a01b038416908102919091179091556040517f726b590ef91a8c76ad05bbe91a57ef84605276528f49cd47d787f558a4e755b690600090a250565b600082820183811015610a0657600080fd5b9392505050565b610a15610592565b610a2d82610a2161047a565b9063ffffffff6109f416565b1115610a835760408051600160e51b62461bcd02815260206004820152601960248201527f45524332304361707065643a2063617020657863656564656400000000000000604482015290519081900360640190fd5b610a8d8282610a91565b5050565b6001600160a01b038216610aa457600080fd5b600254610ab7908263ffffffff6109f416565b6002556001600160a01b038216600090815260208190526040902054610ae3908263ffffffff6109f416565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3505056fea165627a7a7230582050a1d6e08ee19b18063e8e283b2f39d2e3bd161a749b21a4469691e7e98413e90029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000008708e8756f1202bc1760098cfc1c1bfa8306ca0d0000000000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : minter (address): 0x8708E8756f1202Bc1760098CFc1C1bfa8306CA0d
Arg [1] : initialBalance (uint256): 0
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000008708e8756f1202bc1760098cfc1c1bfa8306ca0d
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
12050:2364:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12050:2364:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11518:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;11518:83:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5766:148;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;5766:148:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;3919:91;;;:::i;:::-;;;;;;;;;;;;;;;;13237:160;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13237:160:0;;;;;;;:::i;:::-;;6387:228;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;6387:228:0;;;;;;;;;;;;;;;;;:::i;14312:99::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14312:99:0;-1:-1:-1;;;;;14312:99:0;;:::i;12098:34::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11834:83;;;:::i;12941:75::-;;;:::i;7141:203::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;7141:203:0;;;;;;;;:::i;4229:106::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4229:106:0;-1:-1:-1;;;;;4229:106:0;;:::i;11668:87::-;;;:::i;7875:213::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;7875:213:0;;;;;;;;:::i;4979:140::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;4979:140:0;;;;;;;;:::i;14070:106::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14070:106:0;-1:-1:-1;;;;;14070:106:0;;:::i;13652:214::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;13652:214:0;;;;;;;;;;;;;:::i;4674:131::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;4674:131:0;;;;;;;;;;:::i;11518:83::-;11588:5;11581:12;;;;;;;;-1:-1:-1;;11581:12:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11555:13;;11581:12;;11588:5;;11581:12;;11588:5;11581:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11518:83;:::o;5766:148::-;5831:4;5848:36;5857:10;5869:7;5878:5;5848:8;:36::i;:::-;-1:-1:-1;5902:4:0;5766:148;;;;:::o;3919:91::-;3990:12;;3919:91;:::o;13237:160::-;13309:24;13315:10;13327:5;13309;:24::i;:::-;13349:40;;;;;;;;13379:2;;13367:10;;13349:40;;;;;;;;;13237:160;;:::o;6387:228::-;6466:4;6483:26;6493:4;6499:2;6503:5;6483:9;:26::i;:::-;-1:-1:-1;;;;;6547:14:0;;;;;;:8;:14;;;;;;;;6535:10;6547:26;;;;;;;;;6520:65;;6529:4;;6547:37;;6578:5;6547:37;:30;:37;:::i;:::-;6520:8;:65::i;:::-;-1:-1:-1;6603:4:0;6387:228;;;;;:::o;14312:99::-;12862:20;12871:10;12862:8;:20::i;:::-;12854:55;;;;;-1:-1:-1;;;;;12854:55:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;14382:21;14393:9;14382:10;:21::i;:::-;14312:99;:::o;12098:34::-;12131:1;12098:34;:::o;11834:83::-;11900:9;;;;11834:83;:::o;12941:75::-;13004:4;;12941:75;:::o;7141:203::-;7247:10;7221:4;7268:20;;;:8;:20;;;;;;;;-1:-1:-1;;;;;7268:29:0;;;;;;;;;;7221:4;;7238:76;;7259:7;;7268:45;;7302:10;7268:45;:33;:45;:::i;4229:106::-;-1:-1:-1;;;;;4311:16:0;4284:7;4311:16;;;;;;;;;;;;4229:106::o;11668:87::-;11740:7;11733:14;;;;;;;;-1:-1:-1;;11733:14:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11707:13;;11733:14;;11740:7;;11733:14;;11740:7;11733:14;;;;;;;;;;;;;;;;;;;;;;;;7875:213;7986:10;7960:4;8007:20;;;:8;:20;;;;;;;;-1:-1:-1;;;;;8007:29:0;;;;;;;;;;7960:4;;7977:81;;7998:7;;8007:50;;8041:15;8007:50;:33;:50;:::i;4979:140::-;5040:4;5057:32;5067:10;5079:2;5083:5;5057:9;:32::i;14070:106::-;14150:7;;;;;-1:-1:-1;;;;;14150:7:0;;;:18;;;;14070:106;;;:::o;13652:214::-;13750:4;12862:20;12871:10;12862:8;:20::i;:::-;12854:55;;;;;-1:-1:-1;;;;;12854:55:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;13767:16;13773:2;13777:5;13767;:16::i;:::-;13799:37;;;;;;;;13823:5;;-1:-1:-1;;;;;13799:37:0;;;;;;;;;;;;-1:-1:-1;13854:4:0;13652:214;;;;;:::o;4674:131::-;-1:-1:-1;;;;;4773:15:0;;;4746:7;4773:15;;;:8;:15;;;;;;;;:24;;;;;;;;;;;;;4674:131::o;9974:254::-;-1:-1:-1;;;;;10067:21:0;;10059:30;;;;;;-1:-1:-1;;;;;10108:19:0;;10100:28;;;;;;-1:-1:-1;;;;;10141:15:0;;;;;;;:8;:15;;;;;;;;:24;;;;;;;;;;;;;:32;;;10189:31;;;;;;;;;;;;;;;;;9974:254;;;:::o;9432:269::-;-1:-1:-1;;;;;9507:21:0;;9499:30;;;;;;9557:12;;:23;;9574:5;9557:23;:16;:23;:::i;:::-;9542:12;:38;-1:-1:-1;;;;;9612:18:0;;:9;:18;;;;;;;;;;;:29;;9635:5;9612:29;:22;:29;:::i;:::-;-1:-1:-1;;;;;9591:18:0;;:9;:18;;;;;;;;;;;:50;;;;9657:36;;;;;;;9591:9;;9657:36;;;;;;;;;;;9432:269;;:::o;8315:262::-;-1:-1:-1;;;;;8403:16:0;;8395:25;;;;;;-1:-1:-1;;;;;8451:15:0;;:9;:15;;;;;;;;;;;:26;;8471:5;8451:26;:19;:26;:::i;:::-;-1:-1:-1;;;;;8433:15:0;;;:9;:15;;;;;;;;;;;:44;;;;8504:13;;;;;;;:24;;8522:5;8504:24;:17;:24;:::i;:::-;-1:-1:-1;;;;;8488:13:0;;;:9;:13;;;;;;;;;;;;:40;;;;8544:25;;;;;;;8488:13;;8544:25;;;;;;;;;;;;;8315:262;;;:::o;2285:150::-;2343:7;2376:1;2371;:6;;2363:15;;;;;;-1:-1:-1;2401:5:0;;;2285:150::o;14184:116::-;14241:7;:17;;-1:-1:-1;;;;;;14241:17:0;;-1:-1:-1;;;;;14241:17:0;;;;;;;;;;;;14274:18;;;;-1:-1:-1;;14274:18:0;14184:116;:::o;2523:150::-;2581:7;2613:5;;;2637:6;;;;2629:15;;;;;;2664:1;2523:150;-1:-1:-1;;;2523:150:0:o;13878:184::-;13981:5;:3;:5::i;:::-;13953:24;13971:5;13953:13;:11;:13::i;:::-;:17;:24;:17;:24;:::i;:::-;:33;;13945:71;;;;;-1:-1:-1;;;;;13945:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;14027:27;14039:7;14048:5;14027:11;:27::i;:::-;13878:184;;:::o;8929:269::-;-1:-1:-1;;;;;9004:21:0;;8996:30;;;;;;9054:12;;:23;;9071:5;9054:23;:16;:23;:::i;:::-;9039:12;:38;-1:-1:-1;;;;;9109:18:0;;:9;:18;;;;;;;;;;;:29;;9132:5;9109:29;:22;:29;:::i;:::-;-1:-1:-1;;;;;9088:18:0;;:9;:18;;;;;;;;;;;:50;;;;9154:36;;;;;;;9088:18;;:9;;9154:36;;;;;;;;;;8929:269;;:::o
Swarm Source
bzzr://50a1d6e08ee19b18063e8e283b2f39d2e3bd161a749b21a4469691e7e98413e9
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.