ERC-20
Trading
Overview
Max Total Supply
0 OROX
Holders
1,072 (0.00%)
Total Transfers
-
Market
Price
$0.00 @ 0.000000 ETH
Fully Diluted Market Cap
$0.00
Circulating Supply Market Cap
$1,015.21
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
Cointorox
Compiler Version
v0.4.25+commit.59dbf8f1
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-11-25 */ pragma solidity 0.4.25; /* ___________________________________________________________________ _ _ ______ | | / / / --|-/|-/-----__---/----__----__---_--_----__-------/-------__------ |/ |/ /___) / / ' / ) / / ) /___) / / ) __/__|____(___ _/___(___ _(___/_/_/__/_(___ _____/______(___/__o_o_ ██████╗ ██████╗ ██╗███╗ ██╗████████╗ ██████╗ ██████╗ ██████╗ ██╗ ██╗ ██╔════╝██╔═══██╗██║████╗ ██║╚══██╔══╝██╔═══██╗██╔══██╗██╔═══██╗╚██╗██╔╝ ██║ ██║ ██║██║██╔██╗ ██║ ██║ ██║ ██║██████╔╝██║ ██║ ╚███╔╝ ██║ ██║ ██║██║██║╚██╗██║ ██║ ██║ ██║██╔══██╗██║ ██║ ██╔██╗ ╚██████╗╚██████╔╝██║██║ ╚████║ ██║ ╚██████╔╝██║ ██║╚██████╔╝██╔╝ ██╗ ╚═════╝ ╚═════╝ ╚═╝╚═╝ ╚═══╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝ // ---------------------------------------------------------------------------- // 'Cointorox' Token contract with following features // => ERC20 Compliance // => Higher control of ICO by owner // => selfdestruct ability by owner // => SafeMath implementation // => User whitelisting // => Burnable and no minting // // Name : Cointorox // Symbol : OROX // Total supply: 10,000,000 (10 Million) // Decimals : 18 // // Copyright (c) 2018 Cointorox Inc. ( https://cointorox.com ) // Contract designed by EtherAuthority ( https://EtherAuthority.io ) // ---------------------------------------------------------------------------- */ //*******************************************************************// //------------------------ SafeMath Library -------------------------// //*******************************************************************// /** * @title SafeMath * @dev Math operations with safety checks that throw on error */ library SafeMath { function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; assert(c / a == b); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { // assert(b > 0); // Solidity automatically throws when dividing by 0 uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } } //*******************************************************************// //------------------ Contract to Manage Ownership -------------------// //*******************************************************************// contract owned { address public owner; constructor () public { owner = msg.sender; } modifier onlyOwner { require(msg.sender == owner); _; } function transferOwnership(address newOwner) onlyOwner public { owner = newOwner; } } interface tokenRecipient { function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) external; } //***************************************************************// //------------------ ERC20 Standard Template -------------------// //***************************************************************// contract TokenERC20 { // Public variables of the token using SafeMath for uint256; string public name; string public symbol; uint8 public decimals = 18; // 18 decimals is the strongly suggested default, avoid changing it uint256 public totalSupply; bool public safeguard = false; //putting safeguard on will halt all non-owner functions // This creates an array with all balances mapping (address => uint256) public balanceOf; mapping (address => mapping (address => uint256)) public allowance; // This generates a public event on the blockchain that will notify clients event Transfer(address indexed from, address indexed to, uint256 value); // This notifies clients about the amount burnt event Burn(address indexed from, uint256 value); /** * Constrctor function * * Initializes contract with initial supply tokens to the creator of the contract */ constructor ( uint256 initialSupply, string memory tokenName, string memory tokenSymbol ) public { totalSupply = initialSupply.mul(1 ether); // Update total supply with the decimal amount balanceOf[msg.sender] = totalSupply; // All the tokens will be sent to owner name = tokenName; // Set the name for display purposes symbol = tokenSymbol; // Set the symbol for display purposes } /** * Internal transfer, only can be called by this contract */ function _transfer(address _from, address _to, uint _value) internal { require(!safeguard); // Prevent transfer to 0x0 address. Use burn() instead require(_to != address(0x0)); // Check if the sender has enough require(balanceOf[_from] >= _value); // Check for overflows require(balanceOf[_to].add(_value) > balanceOf[_to]); // Save this for an assertion in the future uint previousBalances = balanceOf[_from].add(balanceOf[_to]); // Subtract from the sender balanceOf[_from] = balanceOf[_from].sub(_value); // Add the same to the recipient balanceOf[_to] = balanceOf[_to].add(_value); emit Transfer(_from, _to, _value); // Asserts are used to use static analysis to find bugs in your code. They should never fail assert(balanceOf[_from].add(balanceOf[_to]) == previousBalances); } /** * Transfer tokens * * Send `_value` tokens to `_to` from your account * * @param _to The address of the recipient * @param _value the amount to send */ function transfer(address _to, uint256 _value) public returns (bool success) { _transfer(msg.sender, _to, _value); return true; } /** * Transfer tokens from other address * * Send `_value` tokens to `_to` in behalf of `_from` * * @param _from The address of the sender * @param _to The address of the recipient * @param _value the amount to send */ function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) { require(!safeguard); require(_value <= allowance[_from][msg.sender]); // Check allowance allowance[_from][msg.sender] = allowance[_from][msg.sender].sub(_value); _transfer(_from, _to, _value); return true; } /** * Set allowance for other address * * Allows `_spender` to spend no more than `_value` tokens in your behalf * * @param _spender The address authorized to spend * @param _value the max amount they can spend */ function approve(address _spender, uint256 _value) public returns (bool success) { require(!safeguard); allowance[msg.sender][_spender] = _value; return true; } /** * Set allowance for other address and notify * * Allows `_spender` to spend no more than `_value` tokens in your behalf, and then ping the contract about it * * @param _spender The address authorized to spend * @param _value the max amount they can spend * @param _extraData some extra information to send to the approved contract */ function approveAndCall(address _spender, uint256 _value, bytes memory _extraData) public returns (bool success) { require(!safeguard); tokenRecipient spender = tokenRecipient(_spender); if (approve(_spender, _value)) { spender.receiveApproval(msg.sender, _value, address(this), _extraData); return true; } } /** * Destroy tokens * * Remove `_value` tokens from the system irreversibly * * @param _value the amount of money to burn */ function burn(uint256 _value) public returns (bool success) { require(!safeguard); require(balanceOf[msg.sender] >= _value); // Check if the sender has enough balanceOf[msg.sender] = balanceOf[msg.sender].sub(_value); // Subtract from the sender totalSupply = totalSupply.sub(_value); // Updates totalSupply emit Burn(msg.sender, _value); return true; } /** * Destroy tokens from other account * * Remove `_value` tokens from the system irreversibly on behalf of `_from`. * * @param _from the address of the sender * @param _value the amount of money to burn */ function burnFrom(address _from, uint256 _value) public returns (bool success) { require(!safeguard); require(balanceOf[_from] >= _value); // Check if the targeted balance is enough require(_value <= allowance[_from][msg.sender]); // Check allowance balanceOf[_from] = balanceOf[_from].sub(_value); // Subtract from the targeted balance allowance[_from][msg.sender] = allowance[_from][msg.sender].sub(_value); // Subtract from the sender's allowance totalSupply = totalSupply.sub(_value); // Update totalSupply emit Burn(_from, _value); return true; } } //****************************************************************************// //--------------------- COINTOROX MAIN CODE STARTS HERE ---------------------// //****************************************************************************// contract Cointorox is owned, TokenERC20 { /*************************************/ /* User whitelisting functionality */ /*************************************/ bool public whitelistingStatus = false; mapping (address => bool) public whitelisted; /** * Change whitelisting status on or off * * When whitelisting is true, then crowdsale will only accept investors who are whitelisted. */ function changeWhitelistingStatus() onlyOwner public{ if (whitelistingStatus == false){ whitelistingStatus = true; } else{ whitelistingStatus = false; } } /** * Whitelist any user address - only Owner can do this * * It will add user address in whitelisted mapping */ function whitelistUser(address userAddress) onlyOwner public{ require(whitelistingStatus == true); require(userAddress != address(0x0)); whitelisted[userAddress] = true; } /** * Whitelist Many user address at once - only Owner can do this * It will require maximum of 150 addresses to prevent block gas limit max-out and DoS attack * It will add user address in whitelisted mapping */ function whitelistManyUsers(address[] memory userAddresses) onlyOwner public{ require(whitelistingStatus == true); uint256 addressCount = userAddresses.length; require(addressCount <= 150); for(uint256 i = 0; i < addressCount; i++){ require(userAddresses[i] != address(0x0)); whitelisted[userAddresses[i]] = true; } } /*********************************/ /* Code for the ERC20 OROX Token */ /*********************************/ /* Public variables of the token */ string private tokenName = "Cointorox"; string private tokenSymbol = "OROX"; uint256 private initialSupply = 10000000; //10 Million /* Records for the fronzen accounts */ mapping (address => bool) public frozenAccount; /* This generates a public event on the blockchain that will notify clients */ event FrozenFunds(address target, bool frozen); /* Initializes contract with initial supply tokens to the creator of the contract */ constructor () TokenERC20(initialSupply, tokenName, tokenSymbol) public {} /* Internal transfer, only can be called by this contract */ function _transfer(address _from, address _to, uint _value) internal { require(!safeguard); require (_to != address(0x0)); // Prevent transfer to 0x0 address. Use burn() instead require (balanceOf[_from] >= _value); // Check if the sender has enough require (balanceOf[_to].add(_value) >= balanceOf[_to]); // Check for overflows require(!frozenAccount[_from]); // Check if sender is frozen require(!frozenAccount[_to]); // Check if recipient is frozen balanceOf[_from] = balanceOf[_from].sub(_value); // Subtract from the sender balanceOf[_to] = balanceOf[_to].add(_value); // Add the same to the recipient emit Transfer(_from, _to, _value); } /// @notice `freeze? Prevent | Allow` `target` from sending & receiving tokens /// @param target Address to be frozen /// @param freeze either to freeze it or not function freezeAccount(address target, bool freeze) onlyOwner public { frozenAccount[target] = freeze; emit FrozenFunds(target, freeze); } //Just in rare case, owner wants to transfer Ether from contract to owner address function manualWithdrawEther()onlyOwner public{ address(owner).transfer(address(this).balance); } //selfdestruct function. just in case owner decided to destruct this contract. function destructContract()onlyOwner public{ selfdestruct(owner); } /** * Change safeguard status on or off * * When safeguard is true, then all the non-owner functions will stop working. * When safeguard is false, then all the functions will resume working back again! */ function changeSafeguardStatus() onlyOwner public{ if (safeguard == false){ safeguard = true; } else{ safeguard = false; } } }
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":"success","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":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"userAddress","type":"address"}],"name":"whitelistUser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"changeSafeguardStatus","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"manualWithdrawEther","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"userAddresses","type":"address[]"}],"name":"whitelistManyUsers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"}],"name":"burnFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"changeWhitelistingStatus","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"destructContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"frozenAccount","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"safeguard","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"whitelistingStatus","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_extraData","type":"bytes"}],"name":"approveAndCall","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"whitelisted","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"},{"name":"freeze","type":"bool"}],"name":"freezeAccount","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"target","type":"address"},{"indexed":false,"name":"frozen","type":"bool"}],"name":"FrozenFunds","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":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"}]
Contract Creation Code
6003805460ff19908116601217909155600580548216905560088054909116905560c0604052600960808190527f436f696e746f726f78000000000000000000000000000000000000000000000060a09081526200006191600a9190620002a1565b506040805180820190915260048082527f4f524f58000000000000000000000000000000000000000000000000000000006020909201918252620000a891600b91620002a1565b5062989680600c55348015620000bd57600080fd5b50600c54600a805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156200014b5780601f106200011f576101008083540402835291602001916200014b565b820191906000526020600020905b8154815290600101906020018083116200012d57829003601f168201915b5050600b8054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815295509193509150830182828015620001dd5780601f10620001b157610100808354040283529160200191620001dd565b820191906000526020600020905b815481529060010190602001808311620001bf57829003601f168201915b505060008054600160a060020a0319163317905550620002189150849050670de0b6b3a764000064010000000062000fa66200026782021704565b6004819055336000908152600660209081526040909120919091558251620002479160019190850190620002a1565b5080516200025d906002906020840190620002a1565b5050505062000346565b6000808315156200027c57600091506200029a565b508282028284828115156200028d57fe5b04146200029657fe5b8091505b5092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002e457805160ff191683800117855562000314565b8280016001018555821562000314579182015b8281111562000314578251825591602001919060010190620002f7565b506200032292915062000326565b5090565b6200034391905b808211156200032257600081556001016200032d565b90565b610ffd80620003566000396000f3006080604052600436106101485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461014d578063095ea7b3146101d757806318160ddd1461020f57806323b872dd14610236578063313ce5671461026057806342966c681461028b5780634a4c560d146102a35780634bec8335146102c65780635954c8c5146102db57806370a08231146102f057806375ee19081461031157806379cc6790146103665780637ec69c501461038a5780638da5cb5b1461039f5780639499e018146103d057806395d89b41146103e5578063a9059cbb146103fa578063b414d4b61461041e578063b57dbdc61461043f578063bd694af214610454578063cae9ca5114610469578063d936547e146104d2578063dd62ed3e146104f3578063e724529c1461051a578063f2fde38b14610540575b600080fd5b34801561015957600080fd5b50610162610561565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561019c578181015183820152602001610184565b50505050905090810190601f1680156101c95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101e357600080fd5b506101fb600160a060020a03600435166024356105ee565b604080519115158252519081900360200190f35b34801561021b57600080fd5b5061022461062f565b60408051918252519081900360200190f35b34801561024257600080fd5b506101fb600160a060020a0360043581169060243516604435610635565b34801561026c57600080fd5b506102756106e5565b6040805160ff9092168252519081900360200190f35b34801561029757600080fd5b506101fb6004356106ee565b3480156102af57600080fd5b506102c4600160a060020a03600435166107a1565b005b3480156102d257600080fd5b506102c4610805565b3480156102e757600080fd5b506102c4610847565b3480156102fc57600080fd5b50610224600160a060020a036004351661089c565b34801561031d57600080fd5b50604080516020600480358082013583810280860185019096528085526102c4953695939460249493850192918291850190849080828437509497506108ae9650505050505050565b34801561037257600080fd5b506101fb600160a060020a036004351660243561097c565b34801561039657600080fd5b506102c4610acc565b3480156103ab57600080fd5b506103b4610b0d565b60408051600160a060020a039092168252519081900360200190f35b3480156103dc57600080fd5b506102c4610b1c565b3480156103f157600080fd5b50610162610b41565b34801561040657600080fd5b506101fb600160a060020a0360043516602435610b99565b34801561042a57600080fd5b506101fb600160a060020a0360043516610baf565b34801561044b57600080fd5b506101fb610bc4565b34801561046057600080fd5b506101fb610bcd565b34801561047557600080fd5b50604080516020600460443581810135601f81018490048402850184019095528484526101fb948235600160a060020a0316946024803595369594606494920191908190840183828082843750949750610bd69650505050505050565b3480156104de57600080fd5b506101fb600160a060020a0360043516610d03565b3480156104ff57600080fd5b50610224600160a060020a0360043581169060243516610d18565b34801561052657600080fd5b506102c4600160a060020a03600435166024351515610d35565b34801561054c57600080fd5b506102c4600160a060020a0360043516610db0565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105e65780601f106105bb576101008083540402835291602001916105e6565b820191906000526020600020905b8154815290600101906020018083116105c957829003601f168201915b505050505081565b60055460009060ff161561060157600080fd5b50336000908152600760209081526040808320600160a060020a039590951683529390529190912055600190565b60045481565b60055460009060ff161561064857600080fd5b600160a060020a038416600090815260076020908152604080832033845290915290205482111561067857600080fd5b600160a060020a03841660009081526007602090815260408083203384529091529020546106ac908363ffffffff610df616565b600160a060020a03851660009081526007602090815260408083203384529091529020556106db848484610e08565b5060019392505050565b60035460ff1681565b60055460009060ff161561070157600080fd5b3360009081526006602052604090205482111561071d57600080fd5b3360009081526006602052604090205461073d908363ffffffff610df616565b33600090815260066020526040902055600454610760908363ffffffff610df616565b60045560408051838152905133917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a2506001919050565b600054600160a060020a031633146107b857600080fd5b60085460ff1615156001146107cc57600080fd5b600160a060020a03811615156107e157600080fd5b600160a060020a03166000908152600960205260409020805460ff19166001179055565b600054600160a060020a0316331461081c57600080fd5b60055460ff16151561083a576005805460ff19166001179055610845565b6005805460ff191690555b565b600054600160a060020a0316331461085e57600080fd5b60008054604051600160a060020a0390911691303180156108fc02929091818181858888f19350505050158015610899573d6000803e3d6000fd5b50565b60066020526000908152604090205481565b600080548190600160a060020a031633146108c857600080fd5b60085460ff1615156001146108dc57600080fd5b8251915060968211156108ee57600080fd5b5060005b8181101561097757825160009084908390811061090b57fe5b60209081029091010151600160a060020a0316141561092957600080fd5b600160096000858481518110151561093d57fe5b602090810291909101810151600160a060020a03168252810191909152604001600020805460ff19169115159190911790556001016108f2565b505050565b60055460009060ff161561098f57600080fd5b600160a060020a0383166000908152600660205260409020548211156109b457600080fd5b600160a060020a03831660009081526007602090815260408083203384529091529020548211156109e457600080fd5b600160a060020a038316600090815260066020526040902054610a0d908363ffffffff610df616565b600160a060020a0384166000908152600660209081526040808320939093556007815282822033835290522054610a4a908363ffffffff610df616565b600160a060020a0384166000908152600760209081526040808320338452909152902055600454610a81908363ffffffff610df616565b600455604080518381529051600160a060020a038516917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a250600192915050565b600054600160a060020a03163314610ae357600080fd5b60085460ff161515610b01576008805460ff19166001179055610845565b6008805460ff19169055565b600054600160a060020a031681565b600054600160a060020a03163314610b3357600080fd5b600054600160a060020a0316ff5b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156105e65780601f106105bb576101008083540402835291602001916105e6565b6000610ba6338484610e08565b50600192915050565b600d6020526000908152604090205460ff1681565b60055460ff1681565b60085460ff1681565b600554600090819060ff1615610beb57600080fd5b5083610bf781856105ee565b15610cfb576040517f8f4ffcb10000000000000000000000000000000000000000000000000000000081523360048201818152602483018790523060448401819052608060648501908152875160848601528751600160a060020a03871695638f4ffcb195948b94938b939192909160a490910190602085019080838360005b83811015610c8f578181015183820152602001610c77565b50505050905090810190601f168015610cbc5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015610cde57600080fd5b505af1158015610cf2573d6000803e3d6000fd5b50505050600191505b509392505050565b60096020526000908152604090205460ff1681565b600760209081526000928352604080842090915290825290205481565b600054600160a060020a03163314610d4c57600080fd5b600160a060020a0382166000818152600d6020908152604091829020805460ff191685151590811790915582519384529083015280517f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a59281900390910190a15050565b600054600160a060020a03163314610dc757600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600082821115610e0257fe5b50900390565b60055460ff1615610e1857600080fd5b600160a060020a0382161515610e2d57600080fd5b600160a060020a038316600090815260066020526040902054811115610e5257600080fd5b600160a060020a038216600090815260066020526040902054610e7b818363ffffffff610f8c16565b1015610e8657600080fd5b600160a060020a0383166000908152600d602052604090205460ff1615610eac57600080fd5b600160a060020a0382166000908152600d602052604090205460ff1615610ed257600080fd5b600160a060020a038316600090815260066020526040902054610efb908263ffffffff610df616565b600160a060020a038085166000908152600660205260408082209390935590841681522054610f30908263ffffffff610f8c16565b600160a060020a0380841660008181526006602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600082820183811015610f9b57fe5b8091505b5092915050565b600080831515610fb95760009150610f9f565b50828202828482811515610fc957fe5b0414610f9b57fe00a165627a7a7230582057e4923604f55140b1f022f22fa634b9ac1cbf44bcddfd84a065faefea9f89d10029
Swarm Source
bzzr://57e4923604f55140b1f022f22fa634b9ac1cbf44bcddfd84a065faefea9f89d1
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.