ETH Price: $3,247.69 (-1.65%)

Contract

0xc0829421C1d260BD3cB3E0F06cfE2D52db2cE315
 

Overview

ETH Balance

27.672470759011236865 ETH

Eth Value

$89,871.50 (@ $3,247.69/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Withdraw To215798712025-01-08 12:51:112 days ago1736340671IN
Bancor: ETH Token
0 ETH0.0004675312.37656216
Withdraw To215796732025-01-08 12:11:352 days ago1736338295IN
Bancor: ETH Token
0 ETH0.000269837.14298289
Withdraw To215795552025-01-08 11:47:592 days ago1736336879IN
Bancor: ETH Token
0 ETH0.000244826.48099572
Withdraw214452242024-12-20 17:28:3520 days ago1734715715IN
Bancor: ETH Token
0 ETH0.0008587622.95987536
Approve214189232024-12-17 1:19:2324 days ago1734398363IN
Bancor: ETH Token
0 ETH0.0002542710.48257537
Withdraw207930172024-09-20 16:32:47112 days ago1726849967IN
Bancor: ETH Token
0 ETH0.000898824.04581054
Approve207930032024-09-20 16:29:59112 days ago1726849799IN
Bancor: ETH Token
0 ETH0.001168825.08055885
Approve207929792024-09-20 16:25:11112 days ago1726849511IN
Bancor: ETH Token
0 ETH0.0013191128.30592164
Deposit207929752024-09-20 16:24:11112 days ago1726849451IN
Bancor: ETH Token
0.07 ETH0.0014444727.72922982
Withdraw203481982024-07-20 13:59:35174 days ago1721483975IN
Bancor: ETH Token
0 ETH0.0004452711.90481583
Withdraw194990322024-03-23 18:17:47292 days ago1711217867IN
Bancor: ETH Token
0 ETH0.0006215716.61823619
Approve191462572024-02-03 7:10:47342 days ago1706944247IN
Bancor: ETH Token
0 ETH0.0004121716.99219651
Approve191261612024-01-31 11:27:35345 days ago1706700455IN
Bancor: ETH Token
0 ETH0.0006099825.14672658
Withdraw190555842024-01-21 13:38:11355 days ago1705844291IN
Bancor: ETH Token
0 ETH0.0005793115.48842848
Withdraw185787552023-11-15 17:24:23421 days ago1700069063IN
Bancor: ETH Token
0 ETH0.0018757350.16553737
Transfer175576412023-06-25 16:20:11565 days ago1687710011IN
Bancor: ETH Token
0 ETH0.0008430116.14193512
Approve173332152023-05-25 2:32:35596 days ago1684981955IN
Bancor: ETH Token
0 ETH0.0008332134.34956884
Approve172846812023-05-18 6:33:23603 days ago1684391603IN
Bancor: ETH Token
0 ETH0.0010187942
Transfer169180962023-03-27 10:22:59655 days ago1679912579IN
Bancor: ETH Token
0 ETH0.0006278522.83014464
Deposit166827582023-02-22 8:18:47688 days ago1677053927IN
Bancor: ETH Token
0.01 ETH0.0013679539.09324986
Withdraw To166235462023-02-14 0:54:35696 days ago1676336075IN
Bancor: ETH Token
0 ETH0.000765517.98477601
Deposit165859552023-02-08 18:53:23701 days ago1675882403IN
Bancor: ETH Token
0.1 ETH0.0012320335.20906907
Approve165847752023-02-08 14:52:35702 days ago1675867955IN
Bancor: ETH Token
0 ETH0.0020506343.99185776
Deposit165847622023-02-08 14:49:59702 days ago1675867799IN
Bancor: ETH Token
0.1 ETH0.001462741.80120312
Approve162718912022-12-26 22:24:23745 days ago1672093463IN
Bancor: ETH Token
0 ETH0.0003357812.78845441
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
215798712025-01-08 12:51:112 days ago1736340671
Bancor: ETH Token
0.06332314 ETH
215796732025-01-08 12:11:352 days ago1736338295
Bancor: ETH Token
0.04874745 ETH
215795552025-01-08 11:47:592 days ago1736336879
Bancor: ETH Token
0.07136952 ETH
214452242024-12-20 17:28:3520 days ago1734715715
Bancor: ETH Token
0.04246481 ETH
211192562024-11-05 5:07:4766 days ago1730783267
Bancor: ETH Token
0.00600802 ETH
207930172024-09-20 16:32:47112 days ago1726849967
Bancor: ETH Token
0.07 ETH
207709842024-09-17 14:39:47115 days ago1726583987
Bancor: ETH Token
0.0806939 ETH
205655032024-08-19 21:57:35143 days ago1724104655
Bancor: ETH Token
0.00456923 ETH
205317292024-08-15 4:45:47148 days ago1723697147
Bancor: ETH Token
0.00621183 ETH
204168692024-07-30 4:02:23164 days ago1722312143
Bancor: ETH Token
0.00447586 ETH
203889632024-07-26 6:34:47168 days ago1721975687
Bancor: ETH Token
0.00763522 ETH
203740492024-07-24 4:35:47170 days ago1721795747
Bancor: ETH Token
0.00834477 ETH
203481982024-07-20 13:59:35174 days ago1721483975
Bancor: ETH Token
0.02229596 ETH
202939502024-07-13 0:16:23181 days ago1720829783
Bancor: ETH Token
0.00626345 ETH
201582312024-06-24 1:21:23200 days ago1719192083
Bancor: ETH Token
0.00603783 ETH
201428922024-06-21 21:51:35202 days ago1719006695
Bancor: ETH Token
0.01212894 ETH
201397432024-06-21 11:17:11203 days ago1718968631
Bancor: ETH Token
0.00938346 ETH
201223642024-06-19 0:58:11205 days ago1718758691
Bancor: ETH Token
0.00953792 ETH
200932572024-06-14 23:13:35209 days ago1718406815
Bancor: ETH Token
0.01200763 ETH
200436572024-06-08 0:53:59216 days ago1717808039
Bancor: ETH Token
0.01154226 ETH
200151032024-06-04 1:14:11220 days ago1717463651
Bancor: ETH Token
0.01445647 ETH
198230712024-05-08 4:50:35247 days ago1715143835
Bancor: ETH Token
0.14312905 ETH
194990322024-03-23 18:17:47292 days ago1711217867
Bancor: ETH Token
0.05008087 ETH
190555842024-01-21 13:38:11355 days ago1705844291
Bancor: ETH Token
0.0129784 ETH
185787552023-11-15 17:24:23421 days ago1700069063
Bancor: ETH Token
0.1 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
EtherToken

Compiler Version
v0.4.16+commit.d7661dd9

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2017-09-10
*/

pragma solidity ^0.4.11;

/*
    Utilities & Common Modifiers
*/
contract Utils {
    /**
        constructor
    */
    function Utils() {
    }

    // verifies that an amount is greater than zero
    modifier greaterThanZero(uint256 _amount) {
        require(_amount > 0);
        _;
    }

    // validates an address - currently only checks that it isn't null
    modifier validAddress(address _address) {
        require(_address != 0x0);
        _;
    }

    // verifies that the address is different than this contract address
    modifier notThis(address _address) {
        require(_address != address(this));
        _;
    }

    // Overflow protected math functions

    /**
        @dev returns the sum of _x and _y, asserts if the calculation overflows

        @param _x   value 1
        @param _y   value 2

        @return sum
    */
    function safeAdd(uint256 _x, uint256 _y) internal returns (uint256) {
        uint256 z = _x + _y;
        assert(z >= _x);
        return z;
    }

    /**
        @dev returns the difference of _x minus _y, asserts if the subtraction results in a negative number

        @param _x   minuend
        @param _y   subtrahend

        @return difference
    */
    function safeSub(uint256 _x, uint256 _y) internal returns (uint256) {
        assert(_x >= _y);
        return _x - _y;
    }

    /**
        @dev returns the product of multiplying _x by _y, asserts if the calculation overflows

        @param _x   factor 1
        @param _y   factor 2

        @return product
    */
    function safeMul(uint256 _x, uint256 _y) internal returns (uint256) {
        uint256 z = _x * _y;
        assert(_x == 0 || z / _x == _y);
        return z;
    }
}

/*
    Owned contract interface
*/
contract IOwned {
    // this function isn't abstract since the compiler emits automatically generated getter functions as external
    function owner() public constant returns (address owner) { owner; }

    function transferOwnership(address _newOwner) public;
    function acceptOwnership() public;
}

/*
    Provides support and utilities for contract ownership
*/
contract Owned is IOwned {
    address public owner;
    address public newOwner;

    event OwnerUpdate(address _prevOwner, address _newOwner);

    /**
        @dev constructor
    */
    function Owned() {
        owner = msg.sender;
    }

    // allows execution by the owner only
    modifier ownerOnly {
        assert(msg.sender == owner);
        _;
    }

    /**
        @dev allows transferring the contract ownership
        the new owner still needs to accept the transfer
        can only be called by the contract owner

        @param _newOwner    new contract owner
    */
    function transferOwnership(address _newOwner) public ownerOnly {
        require(_newOwner != owner);
        newOwner = _newOwner;
    }

    /**
        @dev used by a new owner to accept an ownership transfer
    */
    function acceptOwnership() public {
        require(msg.sender == newOwner);
        OwnerUpdate(owner, newOwner);
        owner = newOwner;
        newOwner = 0x0;
    }
}

/*
    Token Holder interface
*/
contract ITokenHolder is IOwned {
    function withdrawTokens(IERC20Token _token, address _to, uint256 _amount) public;
}

/*
    We consider every contract to be a 'token holder' since it's currently not possible
    for a contract to deny receiving tokens.

    The TokenHolder's contract sole purpose is to provide a safety mechanism that allows
    the owner to send tokens that were sent to the contract by mistake back to their sender.
*/
contract TokenHolder is ITokenHolder, Owned, Utils {
    /**
        @dev constructor
    */
    function TokenHolder() {
    }

    /**
        @dev withdraws tokens held by the contract and sends them to an account
        can only be called by the owner

        @param _token   ERC20 token contract address
        @param _to      account to receive the new amount
        @param _amount  amount to withdraw
    */
    function withdrawTokens(IERC20Token _token, address _to, uint256 _amount)
        public
        ownerOnly
        validAddress(_token)
        validAddress(_to)
        notThis(_to)
    {
        assert(_token.transfer(_to, _amount));
    }
}

/*
    ERC20 Standard Token interface
*/
contract IERC20Token {
    // these functions aren't abstract since the compiler emits automatically generated getter functions as external
    function name() public constant returns (string name) { name; }
    function symbol() public constant returns (string symbol) { symbol; }
    function decimals() public constant returns (uint8 decimals) { decimals; }
    function totalSupply() public constant returns (uint256 totalSupply) { totalSupply; }
    function balanceOf(address _owner) public constant returns (uint256 balance) { _owner; balance; }
    function allowance(address _owner, address _spender) public constant returns (uint256 remaining) { _owner; _spender; remaining; }

    function transfer(address _to, uint256 _value) public returns (bool success);
    function transferFrom(address _from, address _to, uint256 _value) public returns (bool success);
    function approve(address _spender, uint256 _value) public returns (bool success);
}

/**
    ERC20 Standard Token implementation
*/
contract ERC20Token is IERC20Token, Utils {
    string public standard = 'Token 0.1';
    string public name = '';
    string public symbol = '';
    uint8 public decimals = 0;
    uint256 public totalSupply = 0;
    mapping (address => uint256) public balanceOf;
    mapping (address => mapping (address => uint256)) public allowance;

    event Transfer(address indexed _from, address indexed _to, uint256 _value);
    event Approval(address indexed _owner, address indexed _spender, uint256 _value);

    /**
        @dev constructor

        @param _name        token name
        @param _symbol      token symbol
        @param _decimals    decimal points, for display purposes
    */
    function ERC20Token(string _name, string _symbol, uint8 _decimals) {
        require(bytes(_name).length > 0 && bytes(_symbol).length > 0); // validate input

        name = _name;
        symbol = _symbol;
        decimals = _decimals;
    }

    /**
        @dev send coins
        throws on any error rather then return a false flag to minimize user errors

        @param _to      target address
        @param _value   transfer amount

        @return true if the transfer was successful, false if it wasn't
    */
    function transfer(address _to, uint256 _value)
        public
        validAddress(_to)
        returns (bool success)
    {
        balanceOf[msg.sender] = safeSub(balanceOf[msg.sender], _value);
        balanceOf[_to] = safeAdd(balanceOf[_to], _value);
        Transfer(msg.sender, _to, _value);
        return true;
    }

    /**
        @dev an account/contract attempts to get the coins
        throws on any error rather then return a false flag to minimize user errors

        @param _from    source address
        @param _to      target address
        @param _value   transfer amount

        @return true if the transfer was successful, false if it wasn't
    */
    function transferFrom(address _from, address _to, uint256 _value)
        public
        validAddress(_from)
        validAddress(_to)
        returns (bool success)
    {
        allowance[_from][msg.sender] = safeSub(allowance[_from][msg.sender], _value);
        balanceOf[_from] = safeSub(balanceOf[_from], _value);
        balanceOf[_to] = safeAdd(balanceOf[_to], _value);
        Transfer(_from, _to, _value);
        return true;
    }

    /**
        @dev allow another account/contract to spend some tokens on your behalf
        throws on any error rather then return a false flag to minimize user errors

        also, to minimize the risk of the approve/transferFrom attack vector
        (see https://docs.google.com/document/d/1YLPtQxZu1UAvO9cZ1O2RPXBbT0mooh4DYKjA_jp-RLM/), approve has to be called twice
        in 2 separate transactions - once to change the allowance to 0 and secondly to change it to the new allowance value

        @param _spender approved address
        @param _value   allowance amount

        @return true if the approval was successful, false if it wasn't
    */
    function approve(address _spender, uint256 _value)
        public
        validAddress(_spender)
        returns (bool success)
    {
        // if the allowance isn't 0, it can only be updated to 0 to prevent an allowance change immediately after withdrawal
        require(_value == 0 || allowance[msg.sender][_spender] == 0);

        allowance[msg.sender][_spender] = _value;
        Approval(msg.sender, _spender, _value);
        return true;
    }
}

/*
    Ether Token interface
*/
contract IEtherToken is ITokenHolder, IERC20Token {
    function deposit() public payable;
    function withdraw(uint256 _amount) public;
    function withdrawTo(address _to, uint256 _amount);
}

/**
    Ether tokenization contract

    'Owned' is specified here for readability reasons
*/
contract EtherToken is IEtherToken, Owned, ERC20Token, TokenHolder {
    // triggered when the total supply is increased
    event Issuance(uint256 _amount);
    // triggered when the total supply is decreased
    event Destruction(uint256 _amount);

    /**
        @dev constructor
    */
    function EtherToken()
        ERC20Token('Ether Token', 'ETH', 18) {
    }

    /**
        @dev deposit ether in the account
    */
    function deposit() public payable {
        balanceOf[msg.sender] = safeAdd(balanceOf[msg.sender], msg.value); // add the value to the account balance
        totalSupply = safeAdd(totalSupply, msg.value); // increase the total supply

        Issuance(msg.value);
        Transfer(this, msg.sender, msg.value);
    }

    /**
        @dev withdraw ether from the account

        @param _amount  amount of ether to withdraw
    */
    function withdraw(uint256 _amount) public {
        withdrawTo(msg.sender, _amount);
    }

    /**
        @dev withdraw ether from the account to a target account

        @param _to      account to receive the ether
        @param _amount  amount of ether to withdraw
    */
    function withdrawTo(address _to, uint256 _amount)
        public
        notThis(_to)
    {
        balanceOf[msg.sender] = safeSub(balanceOf[msg.sender], _amount); // deduct the amount from the account balance
        totalSupply = safeSub(totalSupply, _amount); // decrease the total supply
        _to.transfer(_amount); // send the amount to the target account

        Transfer(msg.sender, this, _amount);
        Destruction(_amount);
    }

    // ERC20 standard method overrides with some extra protection

    /**
        @dev send coins
        throws on any error rather then return a false flag to minimize user errors

        @param _to      target address
        @param _value   transfer amount

        @return true if the transfer was successful, false if it wasn't
    */
    function transfer(address _to, uint256 _value)
        public
        notThis(_to)
        returns (bool success)
    {
        assert(super.transfer(_to, _value));
        return true;
    }

    /**
        @dev an account/contract attempts to get the coins
        throws on any error rather then return a false flag to minimize user errors

        @param _from    source address
        @param _to      target address
        @param _value   transfer amount

        @return true if the transfer was successful, false if it wasn't
    */
    function transferFrom(address _from, address _to, uint256 _value)
        public
        notThis(_to)
        returns (bool success)
    {
        assert(super.transferFrom(_from, _to, _value));
        return true;
    }

    /**
        @dev deposit ether in the account
    */
    function() public payable {
        deposit();
    }
}

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":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTo","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":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","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":true,"inputs":[],"name":"standard","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","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":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"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":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","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":"newOwner","outputs":[{"name":"","type":"address"}],"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":"_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":false,"name":"_amount","type":"uint256"}],"name":"Issuance","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_amount","type":"uint256"}],"name":"Destruction","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"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevOwner","type":"address"},{"indexed":false,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}]

606060405260408051908101604052600981527f546f6b656e20302e310000000000000000000000000000000000000000000000602082015260029080516200004d929160200190620001a5565b50602060405190810160405260008152600390805162000072929160200190620001a5565b50602060405190810160405260008152600490805162000097929160200190620001a5565b506005805460ff1916905560006006553415620000b357600080fd5b5b5b604080519081016040908152600b82527f457468657220546f6b656e00000000000000000000000000000000000000000060208301528051908101604052600381527f4554480000000000000000000000000000000000000000000000000000000000602082015260125b5b5b60008054600160a060020a03191633600160a060020a03161790555b5b6000835111801562000152575060008251115b15156200015e57600080fd5b600383805162000173929160200190620001a5565b50600482805162000189929160200190620001a5565b506005805460ff191660ff83161790555b5050505b5b6200024f565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001e857805160ff191683800117855562000218565b8280016001018555821562000218579182015b8281111562000218578251825591602001919060010190620001fb565b5b50620002279291506200022b565b5090565b6200024c91905b8082111562000227576000815560010162000232565b5090565b90565b610ecb806200025f6000396000f300606060405236156100f95763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610105578063095ea7b31461019057806318160ddd146101c6578063205c2878146101eb57806323b872dd1461020f5780632e1a7d4d1461024b578063313ce567146102635780635a3b7e421461028c5780635e35359e1461031757806370a082311461034157806379ba5097146103725780638da5cb5b1461038757806395d89b41146103b6578063a9059cbb14610441578063d0e30db0146100f9578063d4ee1d9014610481578063dd62ed3e146104b0578063f2fde38b146104e7575b5b610102610508565b5b005b341561011057600080fd5b6101186105bf565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101555780820151818401525b60200161013c565b50505050905090810190601f1680156101825780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561019b57600080fd5b6101b2600160a060020a036004351660243561065d565b604051901515815260200160405180910390f35b34156101d157600080fd5b6101d961071d565b60405190815260200160405180910390f35b34156101f657600080fd5b610102600160a060020a0360043516602435610723565b005b341561021a57600080fd5b6101b2600160a060020a0360043581169060243516604435610831565b604051901515815260200160405180910390f35b341561025657600080fd5b610102600435610876565b005b341561026e57600080fd5b610276610884565b60405160ff909116815260200160405180910390f35b341561029757600080fd5b61011861088d565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101555780820151818401525b60200161013c565b50505050905090810190601f1680156101825780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561032257600080fd5b610102600160a060020a036004358116906024351660443561092b565b005b341561034c57600080fd5b6101d9600160a060020a0360043516610a37565b60405190815260200160405180910390f35b341561037d57600080fd5b610102610a49565b005b341561039257600080fd5b61039a610af1565b604051600160a060020a03909116815260200160405180910390f35b34156103c157600080fd5b610118610b00565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101555780820151818401525b60200161013c565b50505050905090810190601f1680156101825780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561044c57600080fd5b6101b2600160a060020a0360043516602435610b9e565b604051901515815260200160405180910390f35b610102610508565b005b341561048c57600080fd5b61039a610be1565b604051600160a060020a03909116815260200160405180910390f35b34156104bb57600080fd5b6101d9600160a060020a0360043581169060243516610bf0565b60405190815260200160405180910390f35b34156104f257600080fd5b610102600160a060020a0360043516610c0d565b005b600160a060020a03331660009081526007602052604090205461052b9034610c6d565b600160a060020a0333166000908152600760205260409020556006546105519034610c6d565b6006557f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc33460405190815260200160405180910390a133600160a060020a031630600160a060020a0316600080516020610e808339815191523460405190815260200160405180910390a35b565b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106555780601f1061062a57610100808354040283529160200191610655565b820191906000526020600020905b81548152906001019060200180831161063857829003601f168201915b505050505081565b600082600160a060020a038116151561067557600080fd5b8215806106a55750600160a060020a03338116600090815260086020908152604080832093881683529290522054155b15156106b057600080fd5b600160a060020a03338116600081815260086020908152604080832094891680845294909152908190208690557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259086905190815260200160405180910390a3600191505b5b5092915050565b60065481565b8130600160a060020a031681600160a060020a03161415151561074557600080fd5b600160a060020a0333166000908152600760205260409020546107689083610c87565b600160a060020a03331660009081526007602052604090205560065461078e9083610c87565b600655600160a060020a03831682156108fc0283604051600060405180830381858888f1935050505015156107c257600080fd5b30600160a060020a031633600160a060020a0316600080516020610e808339815191528460405190815260200160405180910390a37f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34538260405190815260200160405180910390a15b5b505050565b60008230600160a060020a031681600160a060020a03161415151561085557600080fd5b610860858585610c9e565b151561086857fe5b600191505b5b509392505050565b6108803382610723565b5b50565b60055460ff1681565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106555780601f1061062a57610100808354040283529160200191610655565b820191906000526020600020905b81548152906001019060200180831161063857829003601f168201915b505050505081565b60005433600160a060020a0390811691161461094357fe5b82600160a060020a038116151561095957600080fd5b82600160a060020a038116151561096f57600080fd5b8330600160a060020a031681600160a060020a03161415151561099157600080fd5b85600160a060020a031663a9059cbb86866000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610a0757600080fd5b6102c65a03f11515610a1857600080fd5b505050604051805190501515610a2a57fe5b5b5b505b505b505b505050565b60076020526000908152604090205481565b60015433600160a060020a03908116911614610a6457600080fd5b6000546001547f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91600160a060020a039081169116604051600160a060020a039283168152911660208201526040908101905180910390a1600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a038416179091551690555b565b600054600160a060020a031681565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106555780601f1061062a57610100808354040283529160200191610655565b820191906000526020600020905b81548152906001019060200180831161063857829003601f168201915b505050505081565b60008230600160a060020a031681600160a060020a031614151515610bc257600080fd5b610bcc8484610dc2565b1515610bd457fe5b600191505b5b5092915050565b600154600160a060020a031681565b600860209081526000928352604080842090915290825290205481565b60005433600160a060020a03908116911614610c2557fe5b600054600160a060020a0382811691161415610c4057600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b600082820183811015610c7c57fe5b8091505b5092915050565b600081831015610c9357fe5b508082035b92915050565b600083600160a060020a0381161515610cb657600080fd5b83600160a060020a0381161515610ccc57600080fd5b600160a060020a0380871660009081526008602090815260408083203390941683529290522054610cfd9085610c87565b600160a060020a038088166000818152600860209081526040808320339095168352938152838220949094559081526007909252902054610d3e9085610c87565b600160a060020a038088166000908152600760205260408082209390935590871681522054610d6d9085610c6d565b600160a060020a0380871660008181526007602052604090819020939093559190881690600080516020610e808339815191529087905190815260200160405180910390a3600192505b5b505b509392505050565b600082600160a060020a0381161515610dda57600080fd5b600160a060020a033316600090815260076020526040902054610dfd9084610c87565b600160a060020a033381166000908152600760205260408082209390935590861681522054610e2c9084610c6d565b600160a060020a038086166000818152600760205260409081902093909355913390911690600080516020610e808339815191529086905190815260200160405180910390a3600191505b5b50929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a7230582051bdb7e5dfd46b1d719fbc0fc4ee0e2579654c20688c081ac7940e632f09b4760029

Deployed Bytecode

0x606060405236156100f95763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610105578063095ea7b31461019057806318160ddd146101c6578063205c2878146101eb57806323b872dd1461020f5780632e1a7d4d1461024b578063313ce567146102635780635a3b7e421461028c5780635e35359e1461031757806370a082311461034157806379ba5097146103725780638da5cb5b1461038757806395d89b41146103b6578063a9059cbb14610441578063d0e30db0146100f9578063d4ee1d9014610481578063dd62ed3e146104b0578063f2fde38b146104e7575b5b610102610508565b5b005b341561011057600080fd5b6101186105bf565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101555780820151818401525b60200161013c565b50505050905090810190601f1680156101825780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561019b57600080fd5b6101b2600160a060020a036004351660243561065d565b604051901515815260200160405180910390f35b34156101d157600080fd5b6101d961071d565b60405190815260200160405180910390f35b34156101f657600080fd5b610102600160a060020a0360043516602435610723565b005b341561021a57600080fd5b6101b2600160a060020a0360043581169060243516604435610831565b604051901515815260200160405180910390f35b341561025657600080fd5b610102600435610876565b005b341561026e57600080fd5b610276610884565b60405160ff909116815260200160405180910390f35b341561029757600080fd5b61011861088d565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101555780820151818401525b60200161013c565b50505050905090810190601f1680156101825780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561032257600080fd5b610102600160a060020a036004358116906024351660443561092b565b005b341561034c57600080fd5b6101d9600160a060020a0360043516610a37565b60405190815260200160405180910390f35b341561037d57600080fd5b610102610a49565b005b341561039257600080fd5b61039a610af1565b604051600160a060020a03909116815260200160405180910390f35b34156103c157600080fd5b610118610b00565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101555780820151818401525b60200161013c565b50505050905090810190601f1680156101825780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561044c57600080fd5b6101b2600160a060020a0360043516602435610b9e565b604051901515815260200160405180910390f35b610102610508565b005b341561048c57600080fd5b61039a610be1565b604051600160a060020a03909116815260200160405180910390f35b34156104bb57600080fd5b6101d9600160a060020a0360043581169060243516610bf0565b60405190815260200160405180910390f35b34156104f257600080fd5b610102600160a060020a0360043516610c0d565b005b600160a060020a03331660009081526007602052604090205461052b9034610c6d565b600160a060020a0333166000908152600760205260409020556006546105519034610c6d565b6006557f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc33460405190815260200160405180910390a133600160a060020a031630600160a060020a0316600080516020610e808339815191523460405190815260200160405180910390a35b565b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106555780601f1061062a57610100808354040283529160200191610655565b820191906000526020600020905b81548152906001019060200180831161063857829003601f168201915b505050505081565b600082600160a060020a038116151561067557600080fd5b8215806106a55750600160a060020a03338116600090815260086020908152604080832093881683529290522054155b15156106b057600080fd5b600160a060020a03338116600081815260086020908152604080832094891680845294909152908190208690557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259086905190815260200160405180910390a3600191505b5b5092915050565b60065481565b8130600160a060020a031681600160a060020a03161415151561074557600080fd5b600160a060020a0333166000908152600760205260409020546107689083610c87565b600160a060020a03331660009081526007602052604090205560065461078e9083610c87565b600655600160a060020a03831682156108fc0283604051600060405180830381858888f1935050505015156107c257600080fd5b30600160a060020a031633600160a060020a0316600080516020610e808339815191528460405190815260200160405180910390a37f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34538260405190815260200160405180910390a15b5b505050565b60008230600160a060020a031681600160a060020a03161415151561085557600080fd5b610860858585610c9e565b151561086857fe5b600191505b5b509392505050565b6108803382610723565b5b50565b60055460ff1681565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106555780601f1061062a57610100808354040283529160200191610655565b820191906000526020600020905b81548152906001019060200180831161063857829003601f168201915b505050505081565b60005433600160a060020a0390811691161461094357fe5b82600160a060020a038116151561095957600080fd5b82600160a060020a038116151561096f57600080fd5b8330600160a060020a031681600160a060020a03161415151561099157600080fd5b85600160a060020a031663a9059cbb86866000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610a0757600080fd5b6102c65a03f11515610a1857600080fd5b505050604051805190501515610a2a57fe5b5b5b505b505b505b505050565b60076020526000908152604090205481565b60015433600160a060020a03908116911614610a6457600080fd5b6000546001547f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91600160a060020a039081169116604051600160a060020a039283168152911660208201526040908101905180910390a1600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a038416179091551690555b565b600054600160a060020a031681565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106555780601f1061062a57610100808354040283529160200191610655565b820191906000526020600020905b81548152906001019060200180831161063857829003601f168201915b505050505081565b60008230600160a060020a031681600160a060020a031614151515610bc257600080fd5b610bcc8484610dc2565b1515610bd457fe5b600191505b5b5092915050565b600154600160a060020a031681565b600860209081526000928352604080842090915290825290205481565b60005433600160a060020a03908116911614610c2557fe5b600054600160a060020a0382811691161415610c4057600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b600082820183811015610c7c57fe5b8091505b5092915050565b600081831015610c9357fe5b508082035b92915050565b600083600160a060020a0381161515610cb657600080fd5b83600160a060020a0381161515610ccc57600080fd5b600160a060020a0380871660009081526008602090815260408083203390941683529290522054610cfd9085610c87565b600160a060020a038088166000818152600860209081526040808320339095168352938152838220949094559081526007909252902054610d3e9085610c87565b600160a060020a038088166000908152600760205260408082209390935590871681522054610d6d9085610c6d565b600160a060020a0380871660008181526007602052604090819020939093559190881690600080516020610e808339815191529087905190815260200160405180910390a3600192505b5b505b509392505050565b600082600160a060020a0381161515610dda57600080fd5b600160a060020a033316600090815260076020526040902054610dfd9084610c87565b600160a060020a033381166000908152600760205260408082209390935590861681522054610e2c9084610c6d565b600160a060020a038086166000818152600760205260409081902093909355913390911690600080516020610e808339815191529086905190815260200160405180910390a3600191505b5b50929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a7230582051bdb7e5dfd46b1d719fbc0fc4ee0e2579654c20688c081ac7940e632f09b4760029

Swarm Source

bzzr://51bdb7e5dfd46b1d719fbc0fc4ee0e2579654c20688c081ac7940e632f09b476

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.