ETH Price: $2,551.38 (-0.49%)

Contract

0xa0d031C090974D2bDB0FFc22124F08532E1DC768
 

Overview

ETH Balance

39.758099999999999999 ETH

Eth Value

$101,437.91 (@ $2,551.38/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer77300912019-05-10 2:22:091961 days ago1557454929IN
0xa0d031C0...32E1DC768
0 ETH0.000116553
Transfer77300892019-05-10 2:21:591961 days ago1557454919IN
0xa0d031C0...32E1DC768
0 ETH0.000116553
Transfer77300552019-05-10 2:11:081961 days ago1557454268IN
0xa0d031C0...32E1DC768
0 ETH0.000377417
Buy74551512019-03-28 5:28:552004 days ago1553750935IN
0xa0d031C0...32E1DC768
0.0001 ETH0.000255287.1999998
Buy74550802019-03-28 5:15:552004 days ago1553750155IN
0xa0d031C0...32E1DC768
0.001 ETH0.000273017.6999998
Transfer74546712019-03-28 3:40:142004 days ago1553744414IN
0xa0d031C0...32E1DC768
0 ETH0.0007770620
Transfer74546632019-03-28 3:38:502004 days ago1553744330IN
0xa0d031C0...32E1DC768
0 ETH0.000233116
Buy74543862019-03-28 2:33:342004 days ago1553740414IN
0xa0d031C0...32E1DC768
0.01 ETH0.000177285
Buy73965822019-03-19 2:29:482013 days ago1552962588IN
0xa0d031C0...32E1DC768
0.03 ETH0.000141824
Transfer73898992019-03-18 1:11:522014 days ago1552871512IN
0xa0d031C0...32E1DC768
0 ETH0.000161553
Transfer72144702019-02-13 8:36:222046 days ago1550046982IN
0xa0d031C0...32E1DC768
0 ETH0.0009697225
Transfer72144672019-02-13 8:35:442046 days ago1550046944IN
0xa0d031C0...32E1DC768
0 ETH0.0009697225
Buy72143222019-02-13 7:42:102046 days ago1550043730IN
0xa0d031C0...32E1DC768
0.001 ETH0.000248197
Buy72143202019-02-13 7:41:192046 days ago1550043679IN
0xa0d031C0...32E1DC768
0.001 ETH0.000208485.88
Buy72143022019-02-13 7:35:092046 days ago1550043309IN
0xa0d031C0...32E1DC768
0.001 ETH0.000283648
Buy71610842019-02-02 0:28:312058 days ago1549067311IN
0xa0d031C0...32E1DC768
0.001 ETH0.000141824
Transfer71578732019-02-01 8:37:182058 days ago1549010238IN
0xa0d031C0...32E1DC768
0 ETH0.0021541240
Buy71578672019-02-01 8:35:002058 days ago1549010100IN
0xa0d031C0...32E1DC768
0.01 ETH0.0014536941
Buy71578392019-02-01 8:26:352058 days ago1549009595IN
0xa0d031C0...32E1DC768
0.01 ETH0.0017018848
Transfer71578362019-02-01 8:25:562058 days ago1549009556IN
0xa0d031C0...32E1DC768
0 ETH0.0016706743
Transfer71525812019-01-31 6:47:002060 days ago1548917220IN
0xa0d031C0...32E1DC768
0 ETH0.000155414
Transfer71525742019-01-31 6:45:282060 days ago1548917128IN
0xa0d031C0...32E1DC768
0 ETH0.000738219
Transfer71523242019-01-31 5:33:542060 days ago1548912834IN
0xa0d031C0...32E1DC768
0 ETH0.0013598535
Transfer71523192019-01-31 5:32:182060 days ago1548912738IN
0xa0d031C0...32E1DC768
0 ETH0.000310828
Buy71522402019-01-31 5:08:292060 days ago1548911309IN
0xa0d031C0...32E1DC768
0.001 ETH0.000106363
View all transactions

Latest 9 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
71232482019-01-25 8:58:172065 days ago1548406697
0xa0d031C0...32E1DC768
1 ETH
71232432019-01-25 8:56:542065 days ago1548406614
0xa0d031C0...32E1DC768
1 wei
70304182019-01-08 8:59:482082 days ago1546937988
0xa0d031C0...32E1DC768
0.001 ETH
70304112019-01-08 8:58:372082 days ago1546937917
0xa0d031C0...32E1DC768
0.001 ETH
70304052019-01-08 8:56:042082 days ago1546937764
0xa0d031C0...32E1DC768
0.001 ETH
70303912019-01-08 8:52:162082 days ago1546937536
0xa0d031C0...32E1DC768
0.001 ETH
70303842019-01-08 8:49:512082 days ago1546937391
0xa0d031C0...32E1DC768
0.001 ETH
70299482019-01-08 6:57:252082 days ago1546930645
0xa0d031C0...32E1DC768
0.002 ETH
70290712019-01-08 3:03:322083 days ago1546916612
0xa0d031C0...32E1DC768
0.002 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CRP_ERC20

Compiler Version
v0.4.25+commit.59dbf8f1

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2019-01-08
*/

pragma solidity ^0.4.25;

// ----------------------------------------------------------------------------
//
// Symbol      : CRP
// Name        : Chiwoo Rotary Press
// Total supply: 8000000000
// Decimals    : 18


// (c) by Team @ CRP 2018.
// ----------------------------------------------------------------------------


/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
*/

library SafeMath {
    
    /**
    * @dev Multiplies two numbers, throws on overflow.
    */
    
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a * b;
    assert(a == 0 || c / a == b);
    return c;
    }
    
    /**
    * @dev Integer division of two numbers, truncating the quotient.
    */
    
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a / b;
    return c;
    }
    
     /**
    * @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
    */
    
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    assert(b <= a);
    return a - b;
    }
    
    /**
    * @dev Adds two numbers, throws on overflow.
    */
    
    function add(uint256 a, uint256 b) internal pure 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 owned {
    address public owner;

    constructor () public {
        owner = msg.sender;
    }

    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 {
        owner = newOwner;
    }
}

interface tokenRecipient { function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) external; }

contract CRP_ERC20 is owned {
    using SafeMath for uint;
    
    string public name = "Chiwoo Rotary Press";
    string public symbol = "CRP";
    uint8 public decimals = 18;
    uint256 public totalSupply = 8000000000 * 10 ** uint256(decimals);
    /// the price of tokenBuy
    uint256 public TokenPerETHBuy = 1000;
    
    /// the price of tokenSell
    uint256 public TokenPerETHSell = 1000;
    
    /// sell token is enabled
    bool public SellTokenAllowed;
    
   
    /// This creates an array with all balances
    mapping (address => uint256) public balanceOf;
    mapping (address => mapping (address => uint256)) public allowance;
    mapping (address => bool) public frozenAccount;
    
    /// 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);
    
    /// This notifies clients about the new Buy price
    event BuyRateChanged(uint256 oldValue, uint256 newValue);
    
    /// This notifies clients about the new Sell price
    event SellRateChanged(uint256 oldValue, uint256 newValue);
    
    /// This notifies clients about the Buy Token
    event BuyToken(address user, uint256 eth, uint256 token);
    
    /// This notifies clients about the Sell Token
    event SellToken(address user, uint256 eth, uint256 token);
    
    /// Log the event about a deposit being made by an address and its amount
    event LogDepositMade(address indexed accountAddress, uint amount);
    
    /// This generates a public event on the blockchain that will notify clients
    event FrozenFunds(address target, bool frozen);
    
    event SellTokenAllowedEvent(bool isAllowed);
    
    /**
     * Constrctor function
     *
     * Initializes contract with initial supply tokens to the creator of the contract
     */
    constructor () public {
        balanceOf[owner] = totalSupply;
        SellTokenAllowed = true;
    }
    
     /**
     * Internal transfer, only can be called by this contract
     */
     function _transfer(address _from, address _to, uint256 _value) internal {
        // Prevent transfer to 0x0 address. Use burn() instead
        require(_to != 0x0);
        // Check if the sender has enough
        require(balanceOf[_from] >= _value);
        // Check for overflows
        require(balanceOf[_to] + _value > balanceOf[_to]);
        // Check if sender is frozen
        require(!frozenAccount[_from]);
        // Check if recipient is frozen
        require(!frozenAccount[_to]);
        // Save this for an assertion in the future
        uint256 previousBalances = balanceOf[_from] + balanceOf[_to];
        // Subtract from the sender
        balanceOf[_from] -= _value;
        // Add the same to the recipient
        balanceOf[_to] += _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] + 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 {
        _transfer(msg.sender, _to, _value);
    }
    
     /**
     * 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(_value <= allowance[_from][msg.sender]);     // Check allowance
        allowance[_from][msg.sender] -= _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) {
        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 _extraData)
        public
        returns (bool success) {
        tokenRecipient spender = tokenRecipient(_spender);
        if (approve(_spender, _value)) {
            spender.receiveApproval(msg.sender, _value, this, _extraData);
            return true;
        }
    }
    
    /// @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);
    }
    
    /// @notice Create `mintedAmount` tokens and send it to `target`
    /// @param target Address to receive the tokens
    /// @param mintedAmount the amount of tokens it will receive
    function mintToken(address target, uint256 mintedAmount) onlyOwner public {
        balanceOf[target] += mintedAmount;
        totalSupply += mintedAmount;
        emit Transfer(this, target, mintedAmount);
    }
    
     /**
     * 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(balanceOf[msg.sender] >= _value);   // Check if the sender has enough
        balanceOf[msg.sender] -= _value;            // Subtract from the sender
        totalSupply -= _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(balanceOf[_from] >= _value);                // Check if the targeted balance is enough
        require(_value <= allowance[_from][msg.sender]);    // Check allowance
        balanceOf[_from] -= _value;                         // Subtract from the targeted balance
        allowance[_from][msg.sender] -= _value;             // Subtract from the sender's allowance
        totalSupply -= _value;                              // Update totalSupply
        emit Burn(_from, _value);
        return true;
    }
    
     /**
     * Set price function for Buy
     *
     * @param value the amount new Buy Price
     */
    
    function setBuyRate(uint256 value) onlyOwner public {
        require(value > 0);
        emit BuyRateChanged(TokenPerETHBuy, value);
        TokenPerETHBuy = value;
    }
    
     /**
     * Set price function for Sell
     *
     * @param value the amount new Sell Price
     */
    
    function setSellRate(uint256 value) onlyOwner public {
        require(value > 0);
        emit SellRateChanged(TokenPerETHSell, value);
        TokenPerETHSell = value;
    }
    
    /**
    *  function for Buy Token
    */
    
    function buy() payable public returns (uint amount){
          require(msg.value > 0);
	      require(!frozenAccount[msg.sender]);              // check sender is not frozen account
          amount = ((msg.value.mul(TokenPerETHBuy)).mul( 10 ** uint256(decimals))).div(1 ether);
          balanceOf[this] -= amount;                        // adds the amount to owner's 
          balanceOf[msg.sender] += amount; 
          emit Transfer(this,msg.sender ,amount);
          return amount;
    }
    
    /**
    *  function for Sell Token
    */
    
    function sell(uint amount) public returns (uint revenue){
        
        require(balanceOf[msg.sender] >= amount);         // checks if the sender has enough to sell
		require(SellTokenAllowed);                        // check if the sender whitelist
		require(!frozenAccount[msg.sender]);              // check sender is not frozen account
        balanceOf[this] += amount;                        // adds the amount to owner's balance
        balanceOf[msg.sender] -= amount;                  // subtracts the amount from seller's balance
        revenue = (amount.mul(1 ether)).div(TokenPerETHSell.mul(10 ** uint256(decimals))) ;
        msg.sender.transfer(revenue);                     // sends ether to the seller: it's important to do this last to prevent recursion attacks
        emit Transfer(msg.sender, this, amount);               // executes an event reflecting on the change
        return revenue;                                   // ends function and returns
        
    }
    
    /**
    * Deposit Ether in owner account, requires method is "payable"
    */
    
    function deposit() public payable  {
       
    }
    
    /**
    *@notice Withdraw for Ether
    */
     function withdraw(uint withdrawAmount) onlyOwner public  {
          if (withdrawAmount <= address(this).balance) {
            owner.transfer(withdrawAmount);
        }
        
     }
    
    function () public payable {
        buy();
    }
    
    /**
    * Enable Sell Token
    */
    function enableSellToken() onlyOwner public {
        SellTokenAllowed = true;
        emit SellTokenAllowedEvent (true);
          
      }

    /**
    * Disable Sell Token
    */
    function disableSellToken() onlyOwner public {
        SellTokenAllowed = false;
        emit SellTokenAllowedEvent (false);
    }
    
     
}

Contract Security Audit

Contract ABI

[{"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":true,"inputs":[],"name":"TokenPerETHSell","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":"SellTokenAllowed","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"withdrawAmount","type":"uint256"}],"name":"withdraw","outputs":[],"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":"disableSellToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"TokenPerETHBuy","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"enableSellToken","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":"target","type":"address"},{"name":"mintedAmount","type":"uint256"}],"name":"mintToken","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":"value","type":"uint256"}],"name":"setBuyRate","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":"value","type":"uint256"}],"name":"setSellRate","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":"buy","outputs":[{"name":"amount","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[],"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":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":false,"inputs":[],"name":"deposit","outputs":[],"payable":true,"stateMutability":"payable","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":"amount","type":"uint256"}],"name":"sell","outputs":[{"name":"revenue","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","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"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"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"},{"anonymous":false,"inputs":[{"indexed":false,"name":"oldValue","type":"uint256"},{"indexed":false,"name":"newValue","type":"uint256"}],"name":"BuyRateChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"oldValue","type":"uint256"},{"indexed":false,"name":"newValue","type":"uint256"}],"name":"SellRateChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"eth","type":"uint256"},{"indexed":false,"name":"token","type":"uint256"}],"name":"BuyToken","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"eth","type":"uint256"},{"indexed":false,"name":"token","type":"uint256"}],"name":"SellToken","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"accountAddress","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"LogDepositMade","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"target","type":"address"},{"indexed":false,"name":"frozen","type":"bool"}],"name":"FrozenFunds","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"isAllowed","type":"bool"}],"name":"SellTokenAllowedEvent","type":"event"}]

60c0604052601360808190527f436869776f6f20526f746172792050726573730000000000000000000000000060a090815262000040916001919062000104565b506040805180820190915260038082527f43525000000000000000000000000000000000000000000000000000000000006020909201918252620000879160029162000104565b5060038054601260ff19909116179081905560ff16600a0a6401dcd65000026004556103e86005819055600655348015620000c157600080fd5b5060008054600160a060020a0319163317808255600454600160a060020a0391909116825260086020526040909120556007805460ff19166001179055620001a9565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200014757805160ff191683800117855562000177565b8280016001018555821562000177579182015b82811115620001775782518255916020019190600101906200015a565b506200018592915062000189565b5090565b620001a691905b8082111562000185576000815560010162000190565b90565b61106780620001b96000396000f3006080604052600436106101695763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610174578063095ea7b3146101fe57806318160ddd146102365780631d0b482f1461025d57806323b872dd1461027257806328b937021461029c5780632e1a7d4d146102b1578063313ce567146102cb57806342966c68146102f65780634b0d54171461030e578063534f36c5146103235780636aa737e01461033857806370a082311461034d57806379c650681461036e57806379cc67901461039257806385e436bf146103b65780638da5cb5b146103ce5780638e0b017d146103ff57806395d89b4114610417578063a6f2ae3a1461042c578063a9059cbb14610434578063b414d4b614610458578063cae9ca5114610479578063d0e30db0146104e2578063dd62ed3e146104ea578063e4849b3214610511578063e724529c14610529578063f2fde38b1461054f575b610171610570565b50005b34801561018057600080fd5b50610189610631565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101c35781810151838201526020016101ab565b50505050905090810190601f1680156101f05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561020a57600080fd5b50610222600160a060020a03600435166024356106be565b604080519115158252519081900360200190f35b34801561024257600080fd5b5061024b6106eb565b60408051918252519081900360200190f35b34801561026957600080fd5b5061024b6106f1565b34801561027e57600080fd5b50610222600160a060020a03600435811690602435166044356106f7565b3480156102a857600080fd5b50610222610766565b3480156102bd57600080fd5b506102c960043561076f565b005b3480156102d757600080fd5b506102e06107cc565b6040805160ff9092168252519081900360200190f35b34801561030257600080fd5b506102226004356107d5565b34801561031a57600080fd5b506102c961084d565b34801561032f57600080fd5b5061024b6108a4565b34801561034457600080fd5b506102c96108aa565b34801561035957600080fd5b5061024b600160a060020a0360043516610905565b34801561037a57600080fd5b506102c9600160a060020a0360043516602435610917565b34801561039e57600080fd5b50610222600160a060020a036004351660243561097c565b3480156103c257600080fd5b506102c9600435610a4d565b3480156103da57600080fd5b506103e3610ab3565b60408051600160a060020a039092168252519081900360200190f35b34801561040b57600080fd5b506102c9600435610ac2565b34801561042357600080fd5b50610189610b28565b61024b610570565b34801561044057600080fd5b506102c9600160a060020a0360043516602435610b80565b34801561046457600080fd5b50610222600160a060020a0360043516610b8b565b34801561048557600080fd5b50604080516020600460443581810135601f8101849004840285018401909552848452610222948235600160a060020a0316946024803595369594606494920191908190840183828082843750949750610ba09650505050505050565b6102c9610cb9565b3480156104f657600080fd5b5061024b600160a060020a0360043581169060243516610cbb565b34801561051d57600080fd5b5061024b600435610cd8565b34801561053557600080fd5b506102c9600160a060020a03600435166024351515610dd7565b34801561055b57600080fd5b506102c9600160a060020a0360043516610e52565b600034811061057e57600080fd5b336000908152600a602052604090205460ff161561059b57600080fd5b6003546005546105e391670de0b6b3a7640000916105d79160ff16600a0a906105cb90349063ffffffff610e9816565b9063ffffffff610e9816565b9063ffffffff610ec316565b30600081815260086020908152604080832080548690039055338084529281902080548601905580518581529051949550919360008051602061101c8339815191529281900390910190a390565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156106b65780601f1061068b576101008083540402835291602001916106b6565b820191906000526020600020905b81548152906001019060200180831161069957829003601f168201915b505050505081565b336000908152600960209081526040808320600160a060020a039590951683529390529190912055600190565b60045481565b60065481565b600160a060020a038316600090815260096020908152604080832033845290915281205482111561072757600080fd5b600160a060020a038416600090815260096020908152604080832033845290915290208054839003905561075c848484610eda565b5060019392505050565b60075460ff1681565b600054600160a060020a0316331461078657600080fd5b303181116107c95760008054604051600160a060020a039091169183156108fc02918491818181858888f193505050501580156107c7573d6000803e3d6000fd5b505b50565b60035460ff1681565b336000908152600860205260408120548211156107f157600080fd5b3360008181526008602090815260409182902080548690039055600480548690039055815185815291517fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca59281900390910190a2506001919050565b600054600160a060020a0316331461086457600080fd5b6007805460ff19169055604080516000815290517f1a26afc103797a41cda97337e6bccd6b52abf0b3ca40d8b88c3958d827ec2f979181900360200190a1565b60055481565b600054600160a060020a031633146108c157600080fd5b6007805460ff1916600190811790915560408051918252517f1a26afc103797a41cda97337e6bccd6b52abf0b3ca40d8b88c3958d827ec2f979181900360200190a1565b60086020526000908152604090205481565b600054600160a060020a0316331461092e57600080fd5b600160a060020a038216600081815260086020908152604091829020805485019055600480548501905581518481529151309260008051602061101c83398151915292908290030190a35050565b600160a060020a0382166000908152600860205260408120548211156109a157600080fd5b600160a060020a03831660009081526009602090815260408083203384529091529020548211156109d157600080fd5b600160a060020a0383166000818152600860209081526040808320805487900390556009825280832033845282529182902080548690039055600480548690039055815185815291517fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca59281900390910190a250600192915050565b600054600160a060020a03163314610a6457600080fd5b60008111610a7157600080fd5b600554604080519182526020820183905280517fcfa7074b22c98fb9291e698be8caae9fd3391198b3dd068fbe42c6da6b9c9bf59281900390910190a1600555565b600054600160a060020a031681565b600054600160a060020a03163314610ad957600080fd5b60008111610ae657600080fd5b600654604080519182526020820183905280517ffa46b8b4ccaecf1d18401d52f6693d32659468c8553f904bf40cbcfd416ac0f69281900390910190a1600655565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156106b65780601f1061068b576101008083540402835291602001916106b6565b6107c7338383610eda565b600a6020526000908152604090205460ff1681565b600083610bad81856106be565b15610cb1576040517f8f4ffcb10000000000000000000000000000000000000000000000000000000081523360048201818152602483018790523060448401819052608060648501908152875160848601528751600160a060020a03871695638f4ffcb195948b94938b939192909160a490910190602085019080838360005b83811015610c45578181015183820152602001610c2d565b50505050905090810190601f168015610c725780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015610c9457600080fd5b505af1158015610ca8573d6000803e3d6000fd5b50505050600191505b509392505050565b565b600960209081526000928352604080842090915290825290205481565b33600090815260086020526040812054821115610cf457600080fd5b60075460ff161515610d0557600080fd5b336000908152600a602052604090205460ff1615610d2257600080fd5b30600090815260086020526040808220805485019055338252902080548390039055600354600654610d7c91610d64919060ff16600a0a63ffffffff610e9816565b6105d784670de0b6b3a764000063ffffffff610e9816565b604051909150339082156108fc029083906000818181858888f19350505050158015610dac573d6000803e3d6000fd5b506040805183815290513091339160008051602061101c8339815191529181900360200190a3919050565b600054600160a060020a03163314610dee57600080fd5b600160a060020a0382166000818152600a6020908152604091829020805460ff191685151590811790915582519384529083015280517f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a59281900390910190a15050565b600054600160a060020a03163314610e6957600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000828202831580610eb45750828482811515610eb157fe5b04145b1515610ebc57fe5b9392505050565b6000808284811515610ed157fe5b04949350505050565b6000600160a060020a0383161515610ef157600080fd5b600160a060020a038416600090815260086020526040902054821115610f1657600080fd5b600160a060020a03831660009081526008602052604090205482810111610f3c57600080fd5b600160a060020a0384166000908152600a602052604090205460ff1615610f6257600080fd5b600160a060020a0383166000908152600a602052604090205460ff1615610f8857600080fd5b50600160a060020a0380831660008181526008602090815260408083208054958916808552828520805489810390915594869052815488019091558151878152915193909501949260008051602061101c833981519152929181900390910190a3600160a060020a0380841660009081526008602052604080822054928716825290205401811461101557fe5b505050505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a723058204f9a4e0c8740d2ea9514f465f851250c5b19a34e1ddc0f13a50e9611797f42690029

Deployed Bytecode

0x6080604052600436106101695763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610174578063095ea7b3146101fe57806318160ddd146102365780631d0b482f1461025d57806323b872dd1461027257806328b937021461029c5780632e1a7d4d146102b1578063313ce567146102cb57806342966c68146102f65780634b0d54171461030e578063534f36c5146103235780636aa737e01461033857806370a082311461034d57806379c650681461036e57806379cc67901461039257806385e436bf146103b65780638da5cb5b146103ce5780638e0b017d146103ff57806395d89b4114610417578063a6f2ae3a1461042c578063a9059cbb14610434578063b414d4b614610458578063cae9ca5114610479578063d0e30db0146104e2578063dd62ed3e146104ea578063e4849b3214610511578063e724529c14610529578063f2fde38b1461054f575b610171610570565b50005b34801561018057600080fd5b50610189610631565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101c35781810151838201526020016101ab565b50505050905090810190601f1680156101f05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561020a57600080fd5b50610222600160a060020a03600435166024356106be565b604080519115158252519081900360200190f35b34801561024257600080fd5b5061024b6106eb565b60408051918252519081900360200190f35b34801561026957600080fd5b5061024b6106f1565b34801561027e57600080fd5b50610222600160a060020a03600435811690602435166044356106f7565b3480156102a857600080fd5b50610222610766565b3480156102bd57600080fd5b506102c960043561076f565b005b3480156102d757600080fd5b506102e06107cc565b6040805160ff9092168252519081900360200190f35b34801561030257600080fd5b506102226004356107d5565b34801561031a57600080fd5b506102c961084d565b34801561032f57600080fd5b5061024b6108a4565b34801561034457600080fd5b506102c96108aa565b34801561035957600080fd5b5061024b600160a060020a0360043516610905565b34801561037a57600080fd5b506102c9600160a060020a0360043516602435610917565b34801561039e57600080fd5b50610222600160a060020a036004351660243561097c565b3480156103c257600080fd5b506102c9600435610a4d565b3480156103da57600080fd5b506103e3610ab3565b60408051600160a060020a039092168252519081900360200190f35b34801561040b57600080fd5b506102c9600435610ac2565b34801561042357600080fd5b50610189610b28565b61024b610570565b34801561044057600080fd5b506102c9600160a060020a0360043516602435610b80565b34801561046457600080fd5b50610222600160a060020a0360043516610b8b565b34801561048557600080fd5b50604080516020600460443581810135601f8101849004840285018401909552848452610222948235600160a060020a0316946024803595369594606494920191908190840183828082843750949750610ba09650505050505050565b6102c9610cb9565b3480156104f657600080fd5b5061024b600160a060020a0360043581169060243516610cbb565b34801561051d57600080fd5b5061024b600435610cd8565b34801561053557600080fd5b506102c9600160a060020a03600435166024351515610dd7565b34801561055b57600080fd5b506102c9600160a060020a0360043516610e52565b600034811061057e57600080fd5b336000908152600a602052604090205460ff161561059b57600080fd5b6003546005546105e391670de0b6b3a7640000916105d79160ff16600a0a906105cb90349063ffffffff610e9816565b9063ffffffff610e9816565b9063ffffffff610ec316565b30600081815260086020908152604080832080548690039055338084529281902080548601905580518581529051949550919360008051602061101c8339815191529281900390910190a390565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156106b65780601f1061068b576101008083540402835291602001916106b6565b820191906000526020600020905b81548152906001019060200180831161069957829003601f168201915b505050505081565b336000908152600960209081526040808320600160a060020a039590951683529390529190912055600190565b60045481565b60065481565b600160a060020a038316600090815260096020908152604080832033845290915281205482111561072757600080fd5b600160a060020a038416600090815260096020908152604080832033845290915290208054839003905561075c848484610eda565b5060019392505050565b60075460ff1681565b600054600160a060020a0316331461078657600080fd5b303181116107c95760008054604051600160a060020a039091169183156108fc02918491818181858888f193505050501580156107c7573d6000803e3d6000fd5b505b50565b60035460ff1681565b336000908152600860205260408120548211156107f157600080fd5b3360008181526008602090815260409182902080548690039055600480548690039055815185815291517fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca59281900390910190a2506001919050565b600054600160a060020a0316331461086457600080fd5b6007805460ff19169055604080516000815290517f1a26afc103797a41cda97337e6bccd6b52abf0b3ca40d8b88c3958d827ec2f979181900360200190a1565b60055481565b600054600160a060020a031633146108c157600080fd5b6007805460ff1916600190811790915560408051918252517f1a26afc103797a41cda97337e6bccd6b52abf0b3ca40d8b88c3958d827ec2f979181900360200190a1565b60086020526000908152604090205481565b600054600160a060020a0316331461092e57600080fd5b600160a060020a038216600081815260086020908152604091829020805485019055600480548501905581518481529151309260008051602061101c83398151915292908290030190a35050565b600160a060020a0382166000908152600860205260408120548211156109a157600080fd5b600160a060020a03831660009081526009602090815260408083203384529091529020548211156109d157600080fd5b600160a060020a0383166000818152600860209081526040808320805487900390556009825280832033845282529182902080548690039055600480548690039055815185815291517fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca59281900390910190a250600192915050565b600054600160a060020a03163314610a6457600080fd5b60008111610a7157600080fd5b600554604080519182526020820183905280517fcfa7074b22c98fb9291e698be8caae9fd3391198b3dd068fbe42c6da6b9c9bf59281900390910190a1600555565b600054600160a060020a031681565b600054600160a060020a03163314610ad957600080fd5b60008111610ae657600080fd5b600654604080519182526020820183905280517ffa46b8b4ccaecf1d18401d52f6693d32659468c8553f904bf40cbcfd416ac0f69281900390910190a1600655565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156106b65780601f1061068b576101008083540402835291602001916106b6565b6107c7338383610eda565b600a6020526000908152604090205460ff1681565b600083610bad81856106be565b15610cb1576040517f8f4ffcb10000000000000000000000000000000000000000000000000000000081523360048201818152602483018790523060448401819052608060648501908152875160848601528751600160a060020a03871695638f4ffcb195948b94938b939192909160a490910190602085019080838360005b83811015610c45578181015183820152602001610c2d565b50505050905090810190601f168015610c725780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015610c9457600080fd5b505af1158015610ca8573d6000803e3d6000fd5b50505050600191505b509392505050565b565b600960209081526000928352604080842090915290825290205481565b33600090815260086020526040812054821115610cf457600080fd5b60075460ff161515610d0557600080fd5b336000908152600a602052604090205460ff1615610d2257600080fd5b30600090815260086020526040808220805485019055338252902080548390039055600354600654610d7c91610d64919060ff16600a0a63ffffffff610e9816565b6105d784670de0b6b3a764000063ffffffff610e9816565b604051909150339082156108fc029083906000818181858888f19350505050158015610dac573d6000803e3d6000fd5b506040805183815290513091339160008051602061101c8339815191529181900360200190a3919050565b600054600160a060020a03163314610dee57600080fd5b600160a060020a0382166000818152600a6020908152604091829020805460ff191685151590811790915582519384529083015280517f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a59281900390910190a15050565b600054600160a060020a03163314610e6957600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000828202831580610eb45750828482811515610eb157fe5b04145b1515610ebc57fe5b9392505050565b6000808284811515610ed157fe5b04949350505050565b6000600160a060020a0383161515610ef157600080fd5b600160a060020a038416600090815260086020526040902054821115610f1657600080fd5b600160a060020a03831660009081526008602052604090205482810111610f3c57600080fd5b600160a060020a0384166000908152600a602052604090205460ff1615610f6257600080fd5b600160a060020a0383166000908152600a602052604090205460ff1615610f8857600080fd5b50600160a060020a0380831660008181526008602090815260408083208054958916808552828520805489810390915594869052815488019091558151878152915193909501949260008051602061101c833981519152929181900390910190a3600160a060020a0380841660009081526008602052604080822054928716825290205401811461101557fe5b505050505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a723058204f9a4e0c8740d2ea9514f465f851250c5b19a34e1ddc0f13a50e9611797f42690029

Swarm Source

bzzr://4f9a4e0c8740d2ea9514f465f851250c5b19a34e1ddc0f13a50e9611797f4269

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.