ETH Price: $3,338.08 (-0.04%)
Gas: 2.94 Gwei
 

Overview

Max Total Supply

10,000,000 CROM

Holders

98

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 0 Decimals)

Balance
40 CROM

Value
$0.00
0x9b95768d5ef10a2e973b9b05b623191152516690
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
CromToken

Compiler Version
v0.4.15+commit.bbb8e64f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2017-11-16
*/

pragma solidity ^0.4.15;

/**
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/179
 */
contract ERC20Basic {
  uint256 public totalSupply;
  function balanceOf(address who) public constant returns (uint256);
  function transfer(address to, uint256 value) public returns (bool);
  event Transfer(address indexed from, address indexed to, uint256 value);
}

/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
contract ERC20 is ERC20Basic {
  function allowance(address owner, address spender) public constant returns (uint256);
  function transferFrom(address from, address to, uint256 value) public returns (bool);
  function approve(address spender, uint256 value) public returns (bool);
  event Approval(address indexed owner, address indexed spender, uint256 value);
}
/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {
  function mul(uint256 a, uint256 b) internal constant returns (uint256) {
    uint256 c = a * b;
    assert(a == 0 || c / a == b);
    return c;
  }

  function div(uint256 a, uint256 b) internal constant 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 constant returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  function add(uint256 a, uint256 b) internal constant returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}

/**
 * @title Ownable
 * @dev The Ownable contract has an owner address, and provides basic authorization control
 * functions, this simplifies the implementation of "user permissions".
 */
contract Ownable {
  address public owner;


  event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);


  /**
   * @dev The Ownable constructor sets the original `owner` of the contract to the sender
   * account.
   */
  function Ownable() {
    owner = msg.sender;
  }


  /**
   * @dev Throws if called by any account other than the owner.
   */
  modifier onlyOwner() {
    require(msg.sender == owner);
    _;
  }


  /**
   * @dev Allows the current owner to transfer control of the contract to a newOwner.
   * @param newOwner The address to transfer ownership to.
   */
  function transferOwnership(address newOwner) onlyOwner public {
    require(newOwner != address(0));
    OwnershipTransferred(owner, newOwner);
    owner = newOwner;
  }

}

contract ClaimableTokens is Ownable {

    address public claimedTokensWallet;

    function ClaimableTokens(address targetWallet) {
        claimedTokensWallet = targetWallet;
    }

    function claimTokens(address tokenAddress) public onlyOwner {
        require(tokenAddress != 0x0);
        ERC20 claimedToken = ERC20(tokenAddress);
        uint balance = claimedToken.balanceOf(this);
        claimedToken.transfer(claimedTokensWallet, balance);
    }
}

contract CromToken is Ownable, ERC20, ClaimableTokens {
    using SafeMath for uint256;
    string public constant name = "CROM Token";
    string public constant symbol = "CROM";
    uint8 public constant decimals = 0;
    uint256 public constant INITIAL_SUPPLY = 10 ** 7;
    mapping (address => uint256) internal balances;
    mapping (address => mapping (address => uint256)) internal allowed;

    function CromToken() Ownable() ClaimableTokens(msg.sender) {
        totalSupply = INITIAL_SUPPLY;
        balances[msg.sender] = totalSupply;
    }

    function transfer(address to, uint256 value) public returns (bool success) {
        require(to != 0x0);
        require(balances[msg.sender] >= value);
        balances[msg.sender] = balances[msg.sender].sub(value);
        balances[to] = balances[to].add(value);
        Transfer(msg.sender, to, value);
        return true;
    }

    function approve(address spender, uint256 value) public returns (bool success) {
        allowed[msg.sender][spender] = value;
        Approval(msg.sender, spender, value);
        return true;
    }

    function allowance(address owner, address spender) public constant returns (uint256 remaining) {
        return allowed[owner][spender];
    }

    function balanceOf(address who) public constant returns (uint256) {
        return balances[who];
    }

    function transferFrom(address from, address to, uint256 value) public returns (bool success) {
        require(to != 0x0);
        require(balances[from] >= value);
        require(value <= allowed[from][msg.sender]);
        balances[from] = balances[from].sub(value);
        balances[to] = balances[to].add(value);
        allowed[from][msg.sender] = allowed[from][msg.sender].sub(value);
        Transfer(from, to, value);
        return true;
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"claimedTokensWallet","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"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,"type":"function"},{"constant":true,"inputs":[],"name":"INITIAL_SUPPLY","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"tokenAddress","type":"address"}],"name":"claimTokens","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"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"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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"}]

6060604052341561000f57600080fd5b5b335b5b60018054600160a060020a03191633600160a060020a03161790555b60028054600160a060020a031916600160a060020a0383161790555b50629896806000818155600160a060020a0333168152600360205260409020555b5b6109f18061007c6000396000f300606060405236156100b45763ffffffff60e060020a60003504166306fdde0381146100b9578063095ea7b31461014457806309d60db11461017a57806318160ddd146101a957806323b872dd146101ce5780632ff2e9dc1461020a578063313ce5671461022f57806370a08231146102585780638da5cb5b1461028957806395d89b41146102b8578063a9059cbb14610343578063dd62ed3e14610379578063df8de3e7146103b0578063f2fde38b146103d1575b600080fd5b34156100c457600080fd5b6100cc6103f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101095780820151818401525b6020016100f0565b50505050905090810190601f1680156101365780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561014f57600080fd5b610166600160a060020a0360043516602435610429565b604051901515815260200160405180910390f35b341561018557600080fd5b61018d610496565b604051600160a060020a03909116815260200160405180910390f35b34156101b457600080fd5b6101bc6104a5565b60405190815260200160405180910390f35b34156101d957600080fd5b610166600160a060020a03600435811690602435166044356104ab565b604051901515815260200160405180910390f35b341561021557600080fd5b6101bc61062f565b60405190815260200160405180910390f35b341561023a57600080fd5b610242610636565b60405160ff909116815260200160405180910390f35b341561026357600080fd5b6101bc600160a060020a036004351661063b565b60405190815260200160405180910390f35b341561029457600080fd5b61018d61065a565b604051600160a060020a03909116815260200160405180910390f35b34156102c357600080fd5b6100cc610669565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101095780820151818401525b6020016100f0565b50505050905090810190601f1680156101365780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561034e57600080fd5b610166600160a060020a03600435166024356106a0565b604051901515815260200160405180910390f35b341561038457600080fd5b6101bc600160a060020a036004358116906024351661079d565b60405190815260200160405180910390f35b34156103bb57600080fd5b6103cf600160a060020a03600435166107ca565b005b34156103dc57600080fd5b6103cf600160a060020a03600435166108fb565b005b60408051908101604052600a81527f43524f4d20546f6b656e00000000000000000000000000000000000000000000602082015281565b600160a060020a03338116600081815260046020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b600254600160a060020a031681565b60005481565b6000600160a060020a03831615156104c257600080fd5b600160a060020a038416600090815260036020526040902054829010156104e857600080fd5b600160a060020a038085166000908152600460209081526040808320339094168352929052205482111561051b57600080fd5b600160a060020a038416600090815260036020526040902054610544908363ffffffff61099416565b600160a060020a038086166000908152600360205260408082209390935590851681522054610579908363ffffffff6109ab16565b600160a060020a038085166000908152600360209081526040808320949094558783168252600481528382203390931682529190915220546105c1908363ffffffff61099416565b600160a060020a03808616600081815260046020908152604080832033861684529091529081902093909355908516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b9392505050565b6298968081565b600081565b600160a060020a0381166000908152600360205260409020545b919050565b600154600160a060020a031681565b60408051908101604052600481527f43524f4d00000000000000000000000000000000000000000000000000000000602082015281565b6000600160a060020a03831615156106b757600080fd5b600160a060020a033316600090815260036020526040902054829010156106dd57600080fd5b600160a060020a033316600090815260036020526040902054610706908363ffffffff61099416565b600160a060020a03338116600090815260036020526040808220939093559085168152205461073b908363ffffffff6109ab16565b600160a060020a0380851660008181526003602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b92915050565b600160a060020a038083166000908152600460209081526040808320938516835292905220545b92915050565b600154600090819033600160a060020a039081169116146107ea57600080fd5b600160a060020a03831615156107ff57600080fd5b82915081600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561085957600080fd5b6102c65a03f1151561086a57600080fd5b5050506040518051600254909250600160a060020a03808516925063a9059cbb91168360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156108d957600080fd5b6102c65a03f115156108ea57600080fd5b505050604051805150505b5b505050565b60015433600160a060020a0390811691161461091657600080fd5b600160a060020a038116151561092b57600080fd5b600154600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b6000828211156109a057fe5b508082035b92915050565b6000828201838110156109ba57fe5b8091505b50929150505600a165627a7a723058206ca0989992358d9a0c98afa80fed1416242a11f26157501467a67a0ee47aed190029

Deployed Bytecode

0x606060405236156100b45763ffffffff60e060020a60003504166306fdde0381146100b9578063095ea7b31461014457806309d60db11461017a57806318160ddd146101a957806323b872dd146101ce5780632ff2e9dc1461020a578063313ce5671461022f57806370a08231146102585780638da5cb5b1461028957806395d89b41146102b8578063a9059cbb14610343578063dd62ed3e14610379578063df8de3e7146103b0578063f2fde38b146103d1575b600080fd5b34156100c457600080fd5b6100cc6103f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101095780820151818401525b6020016100f0565b50505050905090810190601f1680156101365780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561014f57600080fd5b610166600160a060020a0360043516602435610429565b604051901515815260200160405180910390f35b341561018557600080fd5b61018d610496565b604051600160a060020a03909116815260200160405180910390f35b34156101b457600080fd5b6101bc6104a5565b60405190815260200160405180910390f35b34156101d957600080fd5b610166600160a060020a03600435811690602435166044356104ab565b604051901515815260200160405180910390f35b341561021557600080fd5b6101bc61062f565b60405190815260200160405180910390f35b341561023a57600080fd5b610242610636565b60405160ff909116815260200160405180910390f35b341561026357600080fd5b6101bc600160a060020a036004351661063b565b60405190815260200160405180910390f35b341561029457600080fd5b61018d61065a565b604051600160a060020a03909116815260200160405180910390f35b34156102c357600080fd5b6100cc610669565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101095780820151818401525b6020016100f0565b50505050905090810190601f1680156101365780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561034e57600080fd5b610166600160a060020a03600435166024356106a0565b604051901515815260200160405180910390f35b341561038457600080fd5b6101bc600160a060020a036004358116906024351661079d565b60405190815260200160405180910390f35b34156103bb57600080fd5b6103cf600160a060020a03600435166107ca565b005b34156103dc57600080fd5b6103cf600160a060020a03600435166108fb565b005b60408051908101604052600a81527f43524f4d20546f6b656e00000000000000000000000000000000000000000000602082015281565b600160a060020a03338116600081815260046020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b600254600160a060020a031681565b60005481565b6000600160a060020a03831615156104c257600080fd5b600160a060020a038416600090815260036020526040902054829010156104e857600080fd5b600160a060020a038085166000908152600460209081526040808320339094168352929052205482111561051b57600080fd5b600160a060020a038416600090815260036020526040902054610544908363ffffffff61099416565b600160a060020a038086166000908152600360205260408082209390935590851681522054610579908363ffffffff6109ab16565b600160a060020a038085166000908152600360209081526040808320949094558783168252600481528382203390931682529190915220546105c1908363ffffffff61099416565b600160a060020a03808616600081815260046020908152604080832033861684529091529081902093909355908516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b9392505050565b6298968081565b600081565b600160a060020a0381166000908152600360205260409020545b919050565b600154600160a060020a031681565b60408051908101604052600481527f43524f4d00000000000000000000000000000000000000000000000000000000602082015281565b6000600160a060020a03831615156106b757600080fd5b600160a060020a033316600090815260036020526040902054829010156106dd57600080fd5b600160a060020a033316600090815260036020526040902054610706908363ffffffff61099416565b600160a060020a03338116600090815260036020526040808220939093559085168152205461073b908363ffffffff6109ab16565b600160a060020a0380851660008181526003602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b92915050565b600160a060020a038083166000908152600460209081526040808320938516835292905220545b92915050565b600154600090819033600160a060020a039081169116146107ea57600080fd5b600160a060020a03831615156107ff57600080fd5b82915081600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561085957600080fd5b6102c65a03f1151561086a57600080fd5b5050506040518051600254909250600160a060020a03808516925063a9059cbb91168360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156108d957600080fd5b6102c65a03f115156108ea57600080fd5b505050604051805150505b5b505050565b60015433600160a060020a0390811691161461091657600080fd5b600160a060020a038116151561092b57600080fd5b600154600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b6000828211156109a057fe5b508082035b92915050565b6000828201838110156109ba57fe5b8091505b50929150505600a165627a7a723058206ca0989992358d9a0c98afa80fed1416242a11f26157501467a67a0ee47aed190029

Swarm Source

bzzr://6ca0989992358d9a0c98afa80fed1416242a11f26157501467a67a0ee47aed19
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.