ETH Price: $2,557.60 (-2.03%)

Contract

0xa506758544a71943b5e8728d2DF8EC9E72473a9A
 
Transaction Hash
Method
Block
From
To
Transfer109796682020-10-03 0:01:241482 days ago1601683284IN
CryptoDozer: Token Exchange
0.4999 ETH0.001577950
Transfer108340392020-09-10 12:35:121504 days ago1599741312IN
CryptoDozer: Token Exchange
0.0001 ETH0.00887304148
Air Drop107481062020-08-28 8:32:291517 days ago1598603549IN
CryptoDozer: Token Exchange
0 ETH0.0037895772
Air Drop107480992020-08-28 8:31:211517 days ago1598603481IN
CryptoDozer: Token Exchange
0 ETH0.0037878472
Transfer107478512020-08-28 7:41:081517 days ago1598600468IN
CryptoDozer: Token Exchange
29.11318518 ETH0.0041967170
Transfer107472252020-08-28 5:16:461518 days ago1598591806IN
CryptoDozer: Token Exchange
0.05 ETH0.0052467170
Transfer107472012020-08-28 5:12:051518 days ago1598591525IN
CryptoDozer: Token Exchange
0.05 ETH0.0033227463
Transfer107471712020-08-28 5:06:511518 days ago1598591211IN
CryptoDozer: Token Exchange
0.05 ETH0.0013971566.53142857
Air Drop105906272020-08-04 2:31:271542 days ago1596508287IN
CryptoDozer: Token Exchange
0 ETH0.002367445
Air Drop105906192020-08-04 2:29:561542 days ago1596508196IN
CryptoDozer: Token Exchange
0 ETH0.0023153244
Air Drop105905732020-08-04 2:18:261542 days ago1596507506IN
CryptoDozer: Token Exchange
0 ETH0.0023153244
Air Drop105635932020-07-30 22:29:021546 days ago1596148142IN
CryptoDozer: Token Exchange
0 ETH0.0026836751
Air Drop105635902020-07-30 22:28:311546 days ago1596148111IN
CryptoDozer: Token Exchange
0 ETH0.0034486751
Air Drop105379562020-07-26 23:05:301550 days ago1595804730IN
CryptoDozer: Token Exchange
0 ETH0.0019995938
Air Drop105379512020-07-26 23:04:311550 days ago1595804671IN
CryptoDozer: Token Exchange
0 ETH0.0019995938
Air Drop105379492020-07-26 23:04:121550 days ago1595804652IN
CryptoDozer: Token Exchange
0 ETH0.0025695938
Air Drop105379452020-07-26 23:03:051550 days ago1595804585IN
CryptoDozer: Token Exchange
0 ETH0.0019995938
Air Drop105379412020-07-26 23:02:271550 days ago1595804547IN
CryptoDozer: Token Exchange
0 ETH0.0020522139
Air Drop105055052020-07-21 22:38:121555 days ago1595371092IN
CryptoDozer: Token Exchange
0 ETH0.0019995938
Air Drop105054982020-07-21 22:37:341555 days ago1595371054IN
CryptoDozer: Token Exchange
0 ETH0.0019995938
Air Drop105054922020-07-21 22:36:471555 days ago1595371007IN
CryptoDozer: Token Exchange
0 ETH0.0019995938
Air Drop105054852020-07-21 22:34:331555 days ago1595370873IN
CryptoDozer: Token Exchange
0 ETH0.0025691438
Air Drop105054802020-07-21 22:33:111555 days ago1595370791IN
CryptoDozer: Token Exchange
0 ETH0.0025695938
Air Drop104745882020-07-17 3:44:561560 days ago1594957496IN
CryptoDozer: Token Exchange
0 ETH0.0022105842
Air Drop104745402020-07-17 3:33:181560 days ago1594956798IN
CryptoDozer: Token Exchange
0 ETH0.0028400842
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
108340392020-09-10 12:35:121504 days ago1599741312
CryptoDozer: Token Exchange
0.0001 ETH
107478512020-08-28 7:41:081517 days ago1598600468
CryptoDozer: Token Exchange
29.11318518 ETH
107472252020-08-28 5:16:461518 days ago1598591806
CryptoDozer: Token Exchange
0.05 ETH
101010012020-05-20 5:40:531618 days ago1589953253
CryptoDozer: Token Exchange
4.10376931 ETH
100964302020-05-19 12:40:241618 days ago1589892024
CryptoDozer: Token Exchange
0.09 ETH
100960012020-05-19 11:03:151618 days ago1589886195
CryptoDozer: Token Exchange
0.1 ETH
100959962020-05-19 11:02:151618 days ago1589886135
CryptoDozer: Token Exchange
3 ETH
100958392020-05-19 10:29:251618 days ago1589884165
CryptoDozer: Token Exchange
0.4999 ETH
100957472020-05-19 10:06:271618 days ago1589882787
CryptoDozer: Token Exchange
0.4999 ETH
100957442020-05-19 10:05:401618 days ago1589882740
CryptoDozer: Token Exchange
0.4999 ETH
100957372020-05-19 10:04:341618 days ago1589882674
CryptoDozer: Token Exchange
0.4999 ETH
100952482020-05-19 8:14:361618 days ago1589876076
CryptoDozer: Token Exchange
0.0499 ETH
100952252020-05-19 8:10:531618 days ago1589875853
CryptoDozer: Token Exchange
0.0499 ETH
100952102020-05-19 8:07:251618 days ago1589875645
CryptoDozer: Token Exchange
0.27 ETH
100947472020-05-19 6:26:111618 days ago1589869571
CryptoDozer: Token Exchange
0.0499 ETH
100931552020-05-19 0:20:331619 days ago1589847633
CryptoDozer: Token Exchange
11.5 ETH
100915252020-05-18 18:08:341619 days ago1589825314
CryptoDozer: Token Exchange
0.0499 ETH
100915212020-05-18 18:07:581619 days ago1589825278
CryptoDozer: Token Exchange
0.0499 ETH
100915162020-05-18 18:07:221619 days ago1589825242
CryptoDozer: Token Exchange
0.0499 ETH
100915092020-05-18 18:05:571619 days ago1589825157
CryptoDozer: Token Exchange
0.0499 ETH
100915052020-05-18 18:05:201619 days ago1589825120
CryptoDozer: Token Exchange
0.27 ETH
100915012020-05-18 18:04:061619 days ago1589825046
CryptoDozer: Token Exchange
0.4999 ETH
100914992020-05-18 18:03:481619 days ago1589825028
CryptoDozer: Token Exchange
0.4999 ETH
100914902020-05-18 18:02:471619 days ago1589824967
CryptoDozer: Token Exchange
0.27 ETH
100914862020-05-18 18:01:371619 days ago1589824897
CryptoDozer: Token Exchange
0.4999 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
TokensPurchased

Compiler Version
v0.5.4+commit.9549d8ff

Optimization Enabled:
No with 200 runs

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

// File: openzeppelin-solidity/contracts/token/ERC20/IERC20.sol

pragma solidity ^0.5.0;

/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
interface IERC20 {
    function transfer(address to, uint256 value) external returns (bool);

    function approve(address spender, uint256 value) external returns (bool);

    function transferFrom(address from, address to, uint256 value) external returns (bool);

    function totalSupply() external view returns (uint256);

    function balanceOf(address who) external view returns (uint256);

    function allowance(address owner, address spender) external view returns (uint256);

    event Transfer(address indexed from, address indexed to, uint256 value);

    event Approval(address indexed owner, address indexed spender, uint256 value);
}

// File: openzeppelin-solidity/contracts/math/SafeMath.sol

pragma solidity ^0.5.0;

/**
 * @title SafeMath
 * @dev Unsigned math operations with safety checks that revert on error
 */
library SafeMath {
    /**
    * @dev Multiplies two unsigned integers, reverts on overflow.
    */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b);

        return c;
    }

    /**
    * @dev Integer division of two unsigned integers truncating the quotient, reverts on division by zero.
    */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        // Solidity only automatically asserts when dividing by 0
        require(b > 0);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    /**
    * @dev Subtracts two unsigned integers, reverts on overflow (i.e. if subtrahend is greater than minuend).
    */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a);
        uint256 c = a - b;

        return c;
    }

    /**
    * @dev Adds two unsigned integers, reverts on overflow.
    */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a);

        return c;
    }

    /**
    * @dev Divides two unsigned integers and returns the remainder (unsigned integer modulo),
    * reverts when dividing by zero.
    */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b != 0);
        return a % b;
    }
}

// File: openzeppelin-solidity/contracts/token/ERC20/SafeERC20.sol

pragma solidity ^0.5.0;



/**
 * @title SafeERC20
 * @dev Wrappers around ERC20 operations that throw on failure.
 * To use this library you can add a `using SafeERC20 for ERC20;` statement to your contract,
 * which allows you to call the safe operations as `token.safeTransfer(...)`, etc.
 */
library SafeERC20 {
    using SafeMath for uint256;

    function safeTransfer(IERC20 token, address to, uint256 value) internal {
        require(token.transfer(to, value));
    }

    function safeTransferFrom(IERC20 token, address from, address to, uint256 value) internal {
        require(token.transferFrom(from, to, value));
    }

    function safeApprove(IERC20 token, address spender, uint256 value) internal {
        // safeApprove should only be called when setting an initial allowance,
        // or when resetting it to zero. To increase and decrease it, use
        // 'safeIncreaseAllowance' and 'safeDecreaseAllowance'
        require((value == 0) || (token.allowance(msg.sender, spender) == 0));
        require(token.approve(spender, value));
    }

    function safeIncreaseAllowance(IERC20 token, address spender, uint256 value) internal {
        uint256 newAllowance = token.allowance(address(this), spender).add(value);
        require(token.approve(spender, newAllowance));
    }

    function safeDecreaseAllowance(IERC20 token, address spender, uint256 value) internal {
        uint256 newAllowance = token.allowance(address(this), spender).sub(value);
        require(token.approve(spender, newAllowance));
    }
}

// File: openzeppelin-solidity/contracts/utils/ReentrancyGuard.sol

pragma solidity ^0.5.0;

/**
 * @title Helps contracts guard against reentrancy attacks.
 * @author Remco Bloemen <remco@2π.com>, Eenae <[email protected]>
 * @dev If you mark a function `nonReentrant`, you should also
 * mark it `external`.
 */
contract ReentrancyGuard {
    /// @dev counter to allow mutex lock with only one SSTORE operation
    uint256 private _guardCounter;

    constructor () internal {
        // The counter starts at one to prevent changing it from zero to a non-zero
        // value, which is a more expensive operation.
        _guardCounter = 1;
    }

    /**
     * @dev Prevents a contract from calling itself, directly or indirectly.
     * Calling a `nonReentrant` function from another `nonReentrant`
     * function is not supported. It is possible to prevent this from happening
     * by making the `nonReentrant` function external, and make it call a
     * `private` function that does the actual work.
     */
    modifier nonReentrant() {
        _guardCounter += 1;
        uint256 localCounter = _guardCounter;
        _;
        require(localCounter == _guardCounter);
    }
}

// File: openzeppelin-solidity/contracts/ownership/Ownable.sol

pragma solidity ^0.5.0;

/**
 * @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 private _owner;

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

    /**
     * @dev The Ownable constructor sets the original `owner` of the contract to the sender
     * account.
     */
    constructor () internal {
        _owner = msg.sender;
        emit OwnershipTransferred(address(0), _owner);
    }

    /**
     * @return the address of the owner.
     */
    function owner() public view returns (address) {
        return _owner;
    }

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

    /**
     * @return true if `msg.sender` is the owner of the contract.
     */
    function isOwner() public view returns (bool) {
        return msg.sender == _owner;
    }

    /**
     * @dev Allows the current owner to relinquish control of the contract.
     * @notice Renouncing to ownership will leave the contract without an owner.
     * It will not be possible to call the functions with the `onlyOwner`
     * modifier anymore.
     */
    function renounceOwnership() public onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    /**
     * @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) public onlyOwner {
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers control of the contract to a newOwner.
     * @param newOwner The address to transfer ownership to.
     */
    function _transferOwnership(address newOwner) internal {
        require(newOwner != address(0));
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

// File: contracts/token/TokenPurchased.sol

pragma solidity ^0.5.0;






contract TokensPurchased is ReentrancyGuard,Ownable  {
    using SafeMath for uint256;
    using SafeERC20 for IERC20;
    IERC20 private token;

    uint256 public tokensSold;

    event EventPurchased(address _to, uint256 _value);
    event EventAirdrop(address _to, uint256 _value);

    address payable _owner;

    constructor(IERC20 _token)
        public
    {
        _owner = msg.sender;
        token = IERC20(_token); 
    }

    //contract에 eth가 전송되면 실행된다.
    function () external payable{
        buyTokens(msg.sender, msg.value);
    }


    function buyTokens(address _to, uint256 _amount) internal nonReentrant {   //whenNotPaused
        validateCheck(_to, _amount*10000);

        //비율에 해당하여 token 전달 1eth = 10000 pla
        token.safeTransfer(_to, _amount*10000); 

        //owner에게 eth 전송
        _owner.transfer(address(this).balance);
        emit EventPurchased(_to, _amount);
    }


    function airDrop(address _to, uint256 _amount) public nonReentrant onlyOwner { //whenNotPaused
        validateCheck(_to, _amount);

        token.safeTransfer(_to, _amount); 
        emit EventAirdrop(_to, _amount);
    }


    function validateCheck(address _to, uint256 _amount) internal view {
        require(_to != address(0));
        require(_amount > 0);
        require(token.balanceOf(address(this)) >= _amount);
    }

    /* 컨트랙트 계좌 잔액 확인 함수 */
    /* eth를 owner에게 바로 전송하므로 필요없음 */
    // function checkContractBalance() public onlyOwner view returns(uint) {
    //     address _contract = this;
    //     return _contract.balance;
    // }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"airDrop","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tokensSold","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","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":"isOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_token","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"EventPurchased","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"EventAirdrop","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]

608060405234801561001057600080fd5b50604051602080610ae48339810180604052602081101561003057600080fd5b8101908080519060200190929190505050600160008190555033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a333600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061094b806101996000396000f3fe608060405260043610610072576000357c010000000000000000000000000000000000000000000000000000000090048063045f78501461007e578063518ab2a8146100d9578063715018a6146101045780638da5cb5b1461011b5780638f32d59b14610172578063f2fde38b146101a1575b61007c33346101f2565b005b34801561008a57600080fd5b506100d7600480360360408110156100a157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610367565b005b3480156100e557600080fd5b506100ee610467565b6040518082815260200191505060405180910390f35b34801561011057600080fd5b5061011961046d565b005b34801561012757600080fd5b50610130610541565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017e57600080fd5b5061018761056b565b604051808215151515815260200191505060405180910390f35b3480156101ad57600080fd5b506101f0600480360360208110156101c457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105c3565b005b600160008082825401925050819055506000805490506102168361271084026105e2565b610267836127108402600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166107359092919063ffffffff16565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501580156102e6573d6000803e3d6000fd5b507f333122b2d8a4b6fe8d0e6b7c66126584ae7a620a5be7ce7a8ac3d4ba635c63d88383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16000548114151561036257600080fd5b505050565b6001600080828254019250508190555060008054905061038561056b565b151561039057600080fd5b61039a83836105e2565b6103e78383600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166107359092919063ffffffff16565b7f9a07ed4adf02a75352f70ba84facb6576e481a9e511850acdcdc77faa189c5788383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16000548114151561046257600080fd5b505050565b60035481565b61047561056b565b151561048057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b6105cb61056b565b15156105d657600080fd5b6105df81610823565b50565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561061e57600080fd5b60008111151561062d57600080fd5b80600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156106e957600080fd5b505afa1580156106fd573d6000803e3d6000fd5b505050506040513d602081101561071357600080fd5b81019080805190602001909291905050501015151561073157600080fd5b5050565b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156107d857600080fd5b505af11580156107ec573d6000803e3d6000fd5b505050506040513d602081101561080257600080fd5b8101908080519060200190929190505050151561081e57600080fd5b505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561085f57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505056fea165627a7a7230582026caf18e8123c2ee2481249aee0969f5425ae03a1498dea9520ffa502b0ad8be00290000000000000000000000005f5b176553e51171826d1a62e540bc30422c7717

Deployed Bytecode

0x608060405260043610610072576000357c010000000000000000000000000000000000000000000000000000000090048063045f78501461007e578063518ab2a8146100d9578063715018a6146101045780638da5cb5b1461011b5780638f32d59b14610172578063f2fde38b146101a1575b61007c33346101f2565b005b34801561008a57600080fd5b506100d7600480360360408110156100a157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610367565b005b3480156100e557600080fd5b506100ee610467565b6040518082815260200191505060405180910390f35b34801561011057600080fd5b5061011961046d565b005b34801561012757600080fd5b50610130610541565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017e57600080fd5b5061018761056b565b604051808215151515815260200191505060405180910390f35b3480156101ad57600080fd5b506101f0600480360360208110156101c457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105c3565b005b600160008082825401925050819055506000805490506102168361271084026105e2565b610267836127108402600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166107359092919063ffffffff16565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501580156102e6573d6000803e3d6000fd5b507f333122b2d8a4b6fe8d0e6b7c66126584ae7a620a5be7ce7a8ac3d4ba635c63d88383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16000548114151561036257600080fd5b505050565b6001600080828254019250508190555060008054905061038561056b565b151561039057600080fd5b61039a83836105e2565b6103e78383600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166107359092919063ffffffff16565b7f9a07ed4adf02a75352f70ba84facb6576e481a9e511850acdcdc77faa189c5788383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16000548114151561046257600080fd5b505050565b60035481565b61047561056b565b151561048057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b6105cb61056b565b15156105d657600080fd5b6105df81610823565b50565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561061e57600080fd5b60008111151561062d57600080fd5b80600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156106e957600080fd5b505afa1580156106fd573d6000803e3d6000fd5b505050506040513d602081101561071357600080fd5b81019080805190602001909291905050501015151561073157600080fd5b5050565b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156107d857600080fd5b505af11580156107ec573d6000803e3d6000fd5b505050506040513d602081101561080257600080fd5b8101908080519060200190929190505050151561081e57600080fd5b505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561085f57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505056fea165627a7a7230582026caf18e8123c2ee2481249aee0969f5425ae03a1498dea9520ffa502b0ad8be0029

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000005f5b176553e51171826d1a62e540bc30422c7717

-----Decoded View---------------
Arg [0] : _token (address): 0x5f5b176553e51171826D1A62e540bC30422C7717

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000005f5b176553e51171826d1a62e540bc30422c7717


Swarm Source

bzzr://26caf18e8123c2ee2481249aee0969f5425ae03a1498dea9520ffa502b0ad8be

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.