ETH Price: $3,088.73 (+0.88%)
Gas: 5 Gwei

Contract

0x64CFC7428621B2B118896670c0b4d52aB020Ee6a
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
0x4eb6afdf98e4d354a25db6401b889fc8f12aecab98bcfd3a1244dd552d6e41de Transfer(pending)2024-07-07 2:55:263 days ago1720320926IN
0x64CFC742...aB020Ee6a
0 ETH(Pending)(Pending)
Transfer174638482023-06-12 12:01:47393 days ago1686571307IN
0x64CFC742...aB020Ee6a
0 ETH0.0009733119.62127577
Transfer155832622022-09-21 17:34:35657 days ago1663781675IN
0x64CFC742...aB020Ee6a
0 ETH0.000992120
Transfer144793982022-03-29 6:11:59834 days ago1648534319IN
0x64CFC742...aB020Ee6a
0 ETH0.0014779929.77377015
Transfer135122962021-10-29 13:17:00984 days ago1635513420IN
0x64CFC742...aB020Ee6a
0 ETH0.00925089170
Transfer134660802021-10-22 7:21:23992 days ago1634887283IN
0x64CFC742...aB020Ee6a
0 ETH0.0024137248.65896242
Transfer130941752021-08-25 10:59:251049 days ago1629889165IN
0x64CFC742...aB020Ee6a
0 ETH0.0016416950.52460266
Transfer130941752021-08-25 10:59:251049 days ago1629889165IN
0x64CFC742...aB020Ee6a
0 ETH0.001642350.52460266
Transfer127735262021-07-06 11:05:091099 days ago1625569509IN
0x64CFC742...aB020Ee6a
0 ETH0.0023650260.00000145
Transfer125480782021-06-01 10:41:461134 days ago1622544106IN
0x64CFC742...aB020Ee6a
0 ETH0.0006206215.75
Transfer125479822021-06-01 10:19:031134 days ago1622542743IN
0x64CFC742...aB020Ee6a
0 ETH0.0007878620
Transfer124398602021-05-15 15:45:121151 days ago1621093512IN
0x64CFC742...aB020Ee6a
0 ETH0.0017174877.00000145
Transfer124064512021-05-10 11:53:541156 days ago1620647634IN
0x64CFC742...aB020Ee6a
0 ETH0.015502285.00000145
Transfer123071042021-04-25 3:55:101172 days ago1619322910IN
0x64CFC742...aB020Ee6a
0 ETH0.0014917240
Transfer122100692021-04-10 4:47:571187 days ago1618030077IN
0x64CFC742...aB020Ee6a
0 ETH0.0069879300
Transfer122100612021-04-10 4:46:431187 days ago1618030003IN
0x64CFC742...aB020Ee6a
0 ETH0.0062033116.4
Transfer122086532021-04-09 23:37:041187 days ago1618011424IN
0x64CFC742...aB020Ee6a
0 ETH0.0069879300
Transfer122086512021-04-09 23:36:271187 days ago1618011387IN
0x64CFC742...aB020Ee6a
0 ETH0.0051800797.2
Transfer122064262021-04-09 15:24:121187 days ago1617981852IN
0x64CFC742...aB020Ee6a
0 ETH0.0069879300
Transfer122064232021-04-09 15:23:411187 days ago1617981821IN
0x64CFC742...aB020Ee6a
0 ETH0.00748233140.4
Transfer122054542021-04-09 11:46:261187 days ago1617968786IN
0x64CFC742...aB020Ee6a
0 ETH0.0069879300
Transfer122054522021-04-09 11:46:071187 days ago1617968767IN
0x64CFC742...aB020Ee6a
0 ETH0.00562774105.6
Transfer119896852021-03-07 6:21:081221 days ago1615098068IN
0x64CFC742...aB020Ee6a
0 ETH0.0069879300
Transfer119896852021-03-07 6:21:081221 days ago1615098068IN
0x64CFC742...aB020Ee6a
0 ETH0.0069879300
Transfer119896782021-03-07 6:20:201221 days ago1615098020IN
0x64CFC742...aB020Ee6a
0 ETH0.00553997104.00000145
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
AUSD

Compiler Version
v0.4.25+commit.59dbf8f1

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2018-11-22
*/

pragma solidity ^0.4.24;

/*
*
*
*     _  _   _ ___ ___    _____    _
*    /_\| | | / __|   \  |_   _|__| |_____ _ _
*   / _ \ |_| \__ \ |) |   | |/ _ \ / / -_) ' \
*  /_/ \_\___/|___/___/    |_|\___/_\_\___|_||_|
*
*
*
*/

// SafeMath methods
library SafeMath {
    function add(uint256 _a, uint256 _b) internal pure returns (uint256) {
        uint256 c = _a + _b;
        assert(c >= _a);
        return c;
    }

    function sub(uint256 _a, uint256 _b) internal pure returns (uint256) {
        assert(_a >= _b);
        return _a - _b;
    }

    function mul(uint256 _a, uint256 _b) internal pure returns (uint256) {
        uint256 c = _a * _b;
        assert(_a == 0 || c / _a == _b);
        return c;
    }
}

// Contract must have an owner
contract Owned {
    address public owner;

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

    modifier onlyOwner() {
        require(msg.sender == owner);
        _;
    }

    function setOwner(address _owner) onlyOwner public {
        owner = _owner;
    }
}

// Standard ERC20 Token Interface
interface ERC20Token {
    function name() external view returns (string name_);
    function symbol() external view returns (string symbol_);
    function decimals() external view returns (uint8 decimals_);
    function totalSupply() external view returns (uint256 totalSupply_);
    function balanceOf(address _owner) external view returns (uint256 _balance);
    function transfer(address _to, uint256 _value) external returns (bool _success);
    function transferFrom(address _from, address _to, uint256 _value) external returns (bool _success);
    function approve(address _spender, uint256 _value) external returns (bool _success);
    function allowance(address _owner, address _spender) external view returns (uint256 _remaining);

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

// the main ERC20-compliant multi-timelock enabled contract
contract AUSD is Owned, ERC20Token {
    using SafeMath for uint256;

    string private constant standard = "201811113309";
    string private constant version = "6.0663600";
    string private name_ = "AUSD";
    string private symbol_ = "AUSD";
    uint8 private decimals_ = 18;
    uint256 private totalSupply_ = uint256(20) * uint256(10)**uint256(8) * uint256(10)**uint256(decimals_);
    mapping (address => uint256) private balanceP;
    mapping (address => mapping (address => uint256)) private allowed;

    mapping (address => uint256[]) private lockTime;
    mapping (address => uint256[]) private lockValue;
    mapping (address => uint256) private lockNum;
    uint256 private later = 0;
    uint256 private earlier = 0;
    bool private mintable_ = true;

    // burn token event
    event Burn(address indexed _from, uint256 _value);

    // mint token event
    event Mint(address indexed _to, uint256 _value);

    // timelock-related events
    event TransferLocked(address indexed _from, address indexed _to, uint256 _time, uint256 _value);
    event TokenUnlocked(address indexed _address, uint256 _value);

    // safety method-related events
    event WrongTokenEmptied(address indexed _token, address indexed _addr, uint256 _amount);
    event WrongEtherEmptied(address indexed _addr, uint256 _amount);

    // constructor for the ERC20 Token
    constructor() public {
        balanceP[msg.sender] = totalSupply_;
    }

    modifier validAddress(address _address) {
        require(_address != 0x0);
        _;
    }

    modifier isMintable() {
        require(mintable_);
        _;
    }

    // fast-forward the timelocks for all accounts
    function setUnlockEarlier(uint256 _earlier) public onlyOwner {
        earlier = earlier.add(_earlier);
    }

    // delay the timelocks for all accounts
    function setUnlockLater(uint256 _later) public onlyOwner {
        later = later.add(_later);
    }

    // owner may permanently disable minting
    function disableMint() public onlyOwner isMintable {
        mintable_ = false;
    }

    // show if the token is still mintable
    function mintable() public view returns (bool) {
        return mintable_;
    }

    // standard ERC20 name function
    function name() public view returns (string) {
        return name_;
    }

    // standard ERC20 symbol function
    function symbol() public view returns (string) {
        return symbol_;
    }

    // standard ERC20 decimals function
    function decimals() public view returns (uint8) {
        return decimals_;
    }

    // standard ERC20 totalSupply function
    function totalSupply() public view returns (uint256) {
        return totalSupply_;
    }

    // standard ERC20 allowance function
    function allowance(address _owner, address _spender) external view returns (uint256) {
        return allowed[_owner][_spender];
    }

    // show unlocked balance of an account
    function balanceUnlocked(address _address) public view returns (uint256 _balance) {
        _balance = balanceP[_address];
        uint256 i = 0;
        while (i < lockNum[_address]) {
            if (now.add(earlier) >= lockTime[_address][i].add(later)) _balance = _balance.add(lockValue[_address][i]);
            i++;
        }
        return _balance;
    }

    // show timelocked balance of an account
    function balanceLocked(address _address) public view returns (uint256 _balance) {
        _balance = 0;
        uint256 i = 0;
        while (i < lockNum[_address]) {
            if (now.add(earlier) < lockTime[_address][i].add(later)) _balance = _balance.add(lockValue[_address][i]);
            i++;
        }
        return  _balance;
    }

    // standard ERC20 balanceOf with timelock added
    function balanceOf(address _address) public view returns (uint256 _balance) {
        _balance = balanceP[_address];
        uint256 i = 0;
        while (i < lockNum[_address]) {
            _balance = _balance.add(lockValue[_address][i]);
            i++;
        }
        return _balance;
    }

    // show timelocks in an account
    function showLockTimes(address _address) public view validAddress(_address) returns (uint256[] _times) {
        uint i = 0;
        uint256[] memory tempLockTime = new uint256[](lockNum[_address]);
        while (i < lockNum[_address]) {
            tempLockTime[i] = lockTime[_address][i].add(later).sub(earlier);
            i++;
        }
        return tempLockTime;
    }

    // show values locked in an account's timelocks
    function showLockValues(address _address) public view validAddress(_address) returns (uint256[] _values) {
        return lockValue[_address];
    }

    function showLockNum(address _address) public view validAddress(_address) returns (uint256 _lockNum) {
        return lockNum[_address];
    }

    // Calculate and process the timelock states of an account
    function calcUnlock(address _address) private {
        uint256 i = 0;
        uint256 j = 0;
        uint256[] memory currentLockTime;
        uint256[] memory currentLockValue;
        uint256[] memory newLockTime = new uint256[](lockNum[_address]);
        uint256[] memory newLockValue = new uint256[](lockNum[_address]);
        currentLockTime = lockTime[_address];
        currentLockValue = lockValue[_address];
        while (i < lockNum[_address]) {
            if (now.add(earlier) >= currentLockTime[i].add(later)) {
                balanceP[_address] = balanceP[_address].add(currentLockValue[i]);
                emit TokenUnlocked(_address, currentLockValue[i]);
            } else {
                newLockTime[j] = currentLockTime[i];
                newLockValue[j] = currentLockValue[i];
                j++;
            }
            i++;
        }
        uint256[] memory trimLockTime = new uint256[](j);
        uint256[] memory trimLockValue = new uint256[](j);
        i = 0;
        while (i < j) {
            trimLockTime[i] = newLockTime[i];
            trimLockValue[i] = newLockValue[i];
            i++;
        }
        lockTime[_address] = trimLockTime;
        lockValue[_address] = trimLockValue;
        lockNum[_address] = j;
    }

    // standard ERC20 transfer
    function transfer(address _to, uint256 _value) public validAddress(_to) returns (bool _success) {
        if (lockNum[msg.sender] > 0) calcUnlock(msg.sender);
        require(balanceP[msg.sender] >= _value && _value >= 0);
        balanceP[msg.sender] = balanceP[msg.sender].sub(_value);
        balanceP[_to] = balanceP[_to].add(_value);
        emit Transfer(msg.sender, _to, _value);
        return true;
    }

    // transfer Token with timelocks
    function transferLocked(address _to, uint256[] _time, uint256[] _value) public validAddress(_to) returns (bool _success) {
        require(_value.length == _time.length);

        if (lockNum[msg.sender] > 0) calcUnlock(msg.sender);
        uint256 i = 0;
        uint256 totalValue = 0;
        while (i < _value.length) {
            totalValue = totalValue.add(_value[i]);
            i++;
        }
        require(balanceP[msg.sender] >= totalValue && totalValue >= 0);
        require(lockNum[_to].add(_time.length) <= 42);
        i = 0;
        while (i < _time.length) {
            if (_value[i] > 0) {
                balanceP[msg.sender] = balanceP[msg.sender].sub(_value[i]);
                lockTime[_to].length = lockNum[_to]+1;
                lockValue[_to].length = lockNum[_to]+1;
                lockTime[_to][lockNum[_to]] = now.add(_time[i]).add(earlier).sub(later);
                lockValue[_to][lockNum[_to]] = _value[i];
                lockNum[_to]++;
            }

            // emit custom TransferLocked event
            emit TransferLocked(msg.sender, _to, _time[i], _value[i]);

            // emit standard Transfer event for wallets
            emit Transfer(msg.sender, _to, _value[i]);

            i++;
        }
        return true;
    }

    // TransferFrom Token with timelocks
    function transferLockedFrom(address _from, address _to, uint256[] _time, uint256[] _value) public
	    validAddress(_from) validAddress(_to) returns (bool success) {
        require(_value.length == _time.length);

        if (lockNum[_from] > 0) calcUnlock(_from);
        uint256 i = 0;
        uint256 totalValue = 0;
        while (i < _value.length) {
            totalValue = totalValue.add(_value[i]);
            i++;
        }
        require(balanceP[_from] >= totalValue && totalValue >= 0 && allowed[_from][msg.sender] >= totalValue);
        require(lockNum[_to].add(_time.length) <= 42);
        i = 0;
        while (i < _time.length) {
            if (_value[i] > 0) {
                balanceP[_from] = balanceP[_from].sub(_value[i]);
                allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value[i]);
                lockTime[_to].length = lockNum[_to]+1;
                lockValue[_to].length = lockNum[_to]+1;
                lockTime[_to][lockNum[_to]] = now.add(_time[i]).add(earlier).sub(later);
                lockValue[_to][lockNum[_to]] = _value[i];
                lockNum[_to]++;
            }

            // emit custom TransferLocked event
            emit TransferLocked(_from, _to, _time[i], _value[i]);

            // emit standard Transfer event for wallets
            emit Transfer(_from, _to, _value[i]);

            i++;
        }
        return true;
    }

    // standard ERC20 transferFrom
    function transferFrom(address _from, address _to, uint256 _value) public validAddress(_from) validAddress(_to) returns (bool _success) {
        if (lockNum[_from] > 0) calcUnlock(_from);
        require(balanceP[_from] >= _value && _value >= 0 && allowed[_from][msg.sender] >= _value);
        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
        balanceP[_from] = balanceP[_from].sub(_value);
        balanceP[_to] = balanceP[_to].add(_value);
        emit Transfer(_from, _to, _value);
        return true;
    }

    // should only be called when first setting an allowed
    function approve(address _spender, uint256 _value) public validAddress(_spender) returns (bool _success) {
        if (lockNum[msg.sender] > 0) calcUnlock(msg.sender);
        allowed[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }

    // increase or decrease allowed
    function increaseApproval(address _spender, uint _value) public validAddress(_spender) returns (bool _success) {
        allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_value);
        emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
        return true;
    }

    function decreaseApproval(address _spender, uint _value) public validAddress(_spender) returns (bool _success) {
        if(_value >= allowed[msg.sender][_spender]) {
            allowed[msg.sender][_spender] = 0;
        } else {
            allowed[msg.sender][_spender] = allowed[msg.sender][_spender].sub(_value);
        }
        emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
        return true;
    }

    // owner may burn own token
    function burn(uint256 _value) public onlyOwner returns (bool _success) {
        if (lockNum[msg.sender] > 0) calcUnlock(msg.sender);
        require(balanceP[msg.sender] >= _value && _value >= 0);
        balanceP[msg.sender] = balanceP[msg.sender].sub(_value);
        totalSupply_ = totalSupply_.sub(_value);
        emit Burn(msg.sender, _value);
        return true;
    }

    // owner may mint new token and increase total supply
    function mint(uint256 _value) public onlyOwner isMintable returns (bool _success) {
        balanceP[msg.sender] = balanceP[msg.sender].add(_value);
        totalSupply_ = totalSupply_.add(_value);
        emit Mint(msg.sender, _value);
        return true;
    }

    // safety methods
    function () public payable {
        revert();
    }

    function emptyWrongToken(address _addr) onlyOwner public {
        ERC20Token wrongToken = ERC20Token(_addr);
        uint256 amount = wrongToken.balanceOf(address(this));
        require(amount > 0);
        require(wrongToken.transfer(msg.sender, amount));

        emit WrongTokenEmptied(_addr, msg.sender, amount);
    }

    // shouldn't happen, just in case
    function emptyWrongEther() onlyOwner public {
        uint256 amount = address(this).balance;
        require(amount > 0);
        msg.sender.transfer(amount);

        emit WrongEtherEmptied(msg.sender, amount);
    }

}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"balanceUnlocked","outputs":[{"name":"_balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"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":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_time","type":"uint256[]"},{"name":"_value","type":"uint256[]"}],"name":"transferLockedFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"_success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"disableMint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[{"name":"_success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"mintable","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"balanceLocked","outputs":[{"name":"_balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"_success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"balanceOf","outputs":[{"name":"_balance","type":"uint256"}],"payable":false,"stateMutability":"view","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":"_value","type":"uint256"}],"name":"mint","outputs":[{"name":"_success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","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":"_to","type":"address"},{"name":"_time","type":"uint256[]"},{"name":"_value","type":"uint256[]"}],"name":"transferLocked","outputs":[{"name":"_success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"showLockTimes","outputs":[{"name":"_times","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"showLockValues","outputs":[{"name":"_values","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_later","type":"uint256"}],"name":"setUnlockLater","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"emptyWrongToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"_success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"emptyWrongEther","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_earlier","type":"uint256"}],"name":"setUnlockEarlier","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"showLockNum","outputs":[{"name":"_lockNum","type":"uint256"}],"payable":false,"stateMutability":"view","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":false,"name":"_value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_time","type":"uint256"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"TransferLocked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"TokenUnlocked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_token","type":"address"},{"indexed":true,"name":"_addr","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"WrongTokenEmptied","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_addr","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"WrongEtherEmptied","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"}]

60c0604052600460808190527f415553440000000000000000000000000000000000000000000000000000000060a0908152620000409160019190620000fa565b506040805180820190915260048082527f415553440000000000000000000000000000000000000000000000000000000060209092019182526200008791600291620000fa565b5060038054601260ff19918216179182905560ff909116600a90810a637735940002600455600090819055600b55600c80549091166001179055348015620000ce57600080fd5b5060008054600160a060020a03191633908117825560045490825260056020526040909120556200019f565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200013d57805160ff19168380011785556200016d565b828001600101855582156200016d579182015b828111156200016d57825182559160200191906001019062000150565b506200017b9291506200017f565b5090565b6200019c91905b808211156200017b576000815560010162000186565b90565b61227580620001af6000396000f3006080604052600436106101695763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630451f520811461016e57806306fdde03146101a1578063095ea7b31461022b5780630fce887b1461026357806313af40351461030757806318160ddd1461032a57806323b872dd1461033f578063313ce5671461036957806334452f381461039457806342966c68146103a95780634bf365df146103c15780635fc3a312146103d657806366188463146103f757806370a082311461041b5780638da5cb5b1461043c57806395d89b411461046d578063a0712d6814610482578063a9059cbb1461049a578063b91aedab146104be578063b9c5416d1461055a578063c9e6bd34146105cb578063ca0cd7c0146105ec578063d729018114610604578063d73dd62314610625578063d80b205614610649578063dd62ed3e1461065e578063df51d46b14610685578063fb276fcf1461069d575b600080fd5b34801561017a57600080fd5b5061018f600160a060020a03600435166106be565b60408051918252519081900360200190f35b3480156101ad57600080fd5b506101b66107ac565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101f05781810151838201526020016101d8565b50505050905090810190601f16801561021d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561023757600080fd5b5061024f600160a060020a0360043516602435610842565b604080519115158252519081900360200190f35b34801561026f57600080fd5b50604080516020600460443581810135838102808601850190965280855261024f958335600160a060020a039081169660248035909216963696956064959294930192829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497506108e19650505050505050565b34801561031357600080fd5b50610328600160a060020a0360043516610d61565b005b34801561033657600080fd5b5061018f610da7565b34801561034b57600080fd5b5061024f600160a060020a0360043581169060243516604435610dad565b34801561037557600080fd5b5061037e610f61565b6040805160ff9092168252519081900360200190f35b3480156103a057600080fd5b50610328610f6a565b3480156103b557600080fd5b5061024f600435610f9e565b3480156103cd57600080fd5b5061024f611084565b3480156103e257600080fd5b5061018f600160a060020a036004351661108d565b34801561040357600080fd5b5061024f600160a060020a036004351660243561112c565b34801561042757600080fd5b5061018f600160a060020a0360043516611256565b34801561044857600080fd5b506104516112c4565b60408051600160a060020a039092168252519081900360200190f35b34801561047957600080fd5b506101b66112d3565b34801561048e57600080fd5b5061024f600435611331565b3480156104a657600080fd5b5061024f600160a060020a03600435166024356113de565b3480156104ca57600080fd5b5060408051602060046024803582810135848102808701860190975280865261024f968435600160a060020a031696369660449591949091019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497506114df9650505050505050565b34801561056657600080fd5b5061057b600160a060020a036004351661185d565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156105b757818101518382015260200161059f565b505050509050019250505060405180910390f35b3480156105d757600080fd5b5061057b600160a060020a036004351661194f565b3480156105f857600080fd5b506103286004356119d2565b34801561061057600080fd5b50610328600160a060020a0360043516611a02565b34801561063157600080fd5b5061024f600160a060020a0360043516602435611b9f565b34801561065557600080fd5b50610328611beb565b34801561066a57600080fd5b5061018f600160a060020a0360043581169060243516611c7a565b34801561069157600080fd5b50610328600435611ca5565b3480156106a957600080fd5b5061018f600160a060020a0360043516611cd5565b600160a060020a038116600090815260056020526040812054905b600160a060020a0383166000908152600960205260409020548110156107a657600a54600160a060020a0384166000908152600760205260409020805461073f9291908490811061072657fe5b9060005260206000200154611d0a90919063ffffffff16565b600b5461075390429063ffffffff611d0a16565b1061079e57600160a060020a0383166000908152600860205260409020805461079b91908390811061078157fe5b906000526020600020015483611d0a90919063ffffffff16565b91505b6001016106d9565b50919050565b60018054604080516020601f600260001961010087891615020190951694909404938401819004810282018101909252828152606093909290918301828280156108375780601f1061080c57610100808354040283529160200191610837565b820191906000526020600020905b81548152906001019060200180831161081a57829003601f168201915b505050505090505b90565b600082600160a060020a038116151561085a57600080fd5b3360009081526009602052604081205411156108795761087933611d20565b336000818152600660209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6000808086600160a060020a03811615156108fb57600080fd5b86600160a060020a038116151561091157600080fd5b865186511461091f57600080fd5b600160a060020a03891660009081526009602052604081205411156109475761094789611d20565b60009350600092505b855184101561098e57610981868581518110151561096a57fe5b60209081029091010151849063ffffffff611d0a16565b6001909401939250610950565b600160a060020a03891660009081526005602052604090205483118015906109b7575060008310155b80156109e65750600160a060020a03891660009081526006602090815260408083203384529091529020548311155b15156109f157600080fd5b8651600160a060020a038916600090815260096020526040902054602a91610a1f919063ffffffff611d0a16565b1115610a2a57600080fd5b600093505b8651841015610d525760008685815181101515610a4857fe5b906020019060200201511115610c7d57610a9a8685815181101515610a6957fe5b6020908102909101810151600160a060020a038c16600090815260059092526040909120549063ffffffff61218916565b600160a060020a038a166000908152600560205260409020558551610aff90879086908110610ac557fe5b6020908102909101810151600160a060020a038c16600090815260068352604080822033835290935291909120549063ffffffff61218916565b600160a060020a03808b166000908152600660209081526040808320338452825280832094909455918b1681526009825282812054600790925291909120600190910190610b4d908261219b565b50600160a060020a0388166000908152600960209081526040808320546008909252909120600190910190610b82908261219b565b50610bcf600a54610bc3600b54610bb78b89815181101515610ba057fe5b60209081029091010151429063ffffffff611d0a16565b9063ffffffff611d0a16565b9063ffffffff61218916565b600160a060020a038916600090815260076020908152604080832060099092529091205481548110610bfd57fe5b6000918252602090912001558551869085908110610c1757fe5b6020908102909101810151600160a060020a038a166000908152600883526040808220600990945290205482549192918110610c4f57fe5b6000918252602080832090910192909255600160a060020a038a168152600990915260409020805460010190555b87600160a060020a031689600160a060020a03167f34c966766e471b87b7ce8d0d0358378cf20008a30bbb36246a3413c8a286834e8987815181101515610cc057fe5b906020019060200201518988815181101515610cd857fe5b602090810290910181015160408051938452918301528051918290030190a387600160a060020a031689600160a060020a031660008051602061222a8339815191528887815181101515610d2857fe5b906020019060200201516040518082815260200191505060405180910390a3600190930192610a2f565b50600198975050505050505050565b600054600160a060020a03163314610d7857600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60045490565b600083600160a060020a0381161515610dc557600080fd5b83600160a060020a0381161515610ddb57600080fd5b600160a060020a0386166000908152600960205260408120541115610e0357610e0386611d20565b600160a060020a0386166000908152600560205260409020548411801590610e2c575060008410155b8015610e5b5750600160a060020a03861660009081526006602090815260408083203384529091529020548411155b1515610e6657600080fd5b600160a060020a0386166000908152600660209081526040808320338452909152902054610e9a908563ffffffff61218916565b600160a060020a038716600081815260066020908152604080832033845282528083209490945591815260059091522054610edb908563ffffffff61218916565b600160a060020a038088166000908152600560205260408082209390935590871681522054610f10908563ffffffff611d0a16565b600160a060020a0380871660008181526005602090815260409182902094909455805188815290519193928a169260008051602061222a83398151915292918290030190a350600195945050505050565b60035460ff1690565b600054600160a060020a03163314610f8157600080fd5b600c5460ff161515610f9257600080fd5b600c805460ff19169055565b60008054600160a060020a03163314610fb657600080fd5b336000908152600960205260408120541115610fd557610fd533611d20565b336000908152600560205260409020548211801590610ff5575060008210155b151561100057600080fd5b33600090815260056020526040902054611020908363ffffffff61218916565b33600090815260056020526040902055600454611043908363ffffffff61218916565b60045560408051838152905133917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a2506001919050565b600c5460ff1690565b6000805b600160a060020a0383166000908152600960205260409020548110156107a657600a54600160a060020a038416600090815260076020526040902080546110de9291908490811061072657fe5b600b546110f290429063ffffffff611d0a16565b101561112457600160a060020a0383166000908152600860205260409020805461112191908390811061078157fe5b91505b600101611091565b600082600160a060020a038116151561114457600080fd5b336000908152600660209081526040808320600160a060020a0388168452909152902054831061119757336000908152600660209081526040808320600160a060020a03881684529091528120556111f0565b336000908152600660209081526040808320600160a060020a03881684529091529020546111cb908463ffffffff61218916565b336000908152600660209081526040808320600160a060020a03891684529091529020555b336000818152600660209081526040808320600160a060020a0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b600160a060020a038116600090815260056020526040812054905b600160a060020a0383166000908152600960205260409020548110156107a657600160a060020a038316600090815260086020526040902080546112ba91908390811061078157fe5b9150600101611271565b600054600160a060020a031681565b60028054604080516020601f60001961010060018716150201909416859004938401819004810282018101909252828152606093909290918301828280156108375780601f1061080c57610100808354040283529160200191610837565b60008054600160a060020a0316331461134957600080fd5b600c5460ff16151561135a57600080fd5b3360009081526005602052604090205461137a908363ffffffff611d0a16565b3360009081526005602052604090205560045461139d908363ffffffff611d0a16565b60045560408051838152905133917f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885919081900360200190a2506001919050565b600082600160a060020a03811615156113f657600080fd5b3360009081526009602052604081205411156114155761141533611d20565b336000908152600560205260409020548311801590611435575060008310155b151561144057600080fd5b33600090815260056020526040902054611460908463ffffffff61218916565b3360009081526005602052604080822092909255600160a060020a03861681522054611492908463ffffffff611d0a16565b600160a060020a03851660008181526005602090815260409182902093909355805186815290519192339260008051602061222a8339815191529281900390910190a35060019392505050565b6000808085600160a060020a03811615156114f957600080fd5b855185511461150757600080fd5b3360009081526009602052604081205411156115265761152633611d20565b60009250600091505b845183101561156d57611560858481518110151561154957fe5b60209081029091010151839063ffffffff611d0a16565b600190930192915061152f565b33600090815260056020526040902054821180159061158d575060008210155b151561159857600080fd5b8551600160a060020a038816600090815260096020526040902054602a916115c6919063ffffffff611d0a16565b11156115d157600080fd5b600092505b855183101561185057600085848151811015156115ef57fe5b90602001906020020151111561177b57611638858481518110151561161057fe5b602090810290910181015133600090815260059092526040909120549063ffffffff61218916565b33600090815260056020908152604080832093909355600160a060020a038a1682526009815282822054600790915291902060019091019061167a908261219b565b50600160a060020a03871660009081526009602090815260408083205460089092529091206001909101906116af908261219b565b506116cd600a54610bc3600b54610bb78a88815181101515610ba057fe5b600160a060020a0388166000908152600760209081526040808320600990925290912054815481106116fb57fe5b600091825260209091200155845185908490811061171557fe5b6020908102909101810151600160a060020a038916600090815260088352604080822060099094529020548254919291811061174d57fe5b6000918252602080832090910192909255600160a060020a0389168152600990915260409020805460010190555b86600160a060020a031633600160a060020a03167f34c966766e471b87b7ce8d0d0358378cf20008a30bbb36246a3413c8a286834e88868151811015156117be57fe5b9060200190602002015188878151811015156117d657fe5b602090810290910181015160408051938452918301528051918290030190a386600160a060020a031633600160a060020a031660008051602061222a833981519152878681518110151561182657fe5b906020019060200201516040518082815260200191505060405180910390a36001909201916115d6565b5060019695505050505050565b606060008183600160a060020a038116151561187857600080fd5b600092506009600086600160a060020a0316600160a060020a03168152602001908152602001600020546040519080825280602002602001820160405280156118cb578160200160208202803883390190505b5091505b600160a060020a03851660009081526009602052604090205483101561194757600b54600a54600160a060020a038716600090815260076020526040902080546119249392610bc39290918890811061072657fe5b828481518110151561193257fe5b602090810290910101526001909201916118cf565b509392505050565b606081600160a060020a038116151561196757600080fd5b600160a060020a038316600090815260086020908152604091829020805483518184028101840190945280845290918301828280156119c557602002820191906000526020600020905b8154815260200190600101908083116119b1575b5050505050915050919050565b600054600160a060020a031633146119e957600080fd5b600a546119fc908263ffffffff611d0a16565b600a5550565b600080548190600160a060020a03163314611a1c57600080fd5b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051849350600160a060020a038416916370a082319160248083019260209291908290030181600087803b158015611a8057600080fd5b505af1158015611a94573d6000803e3d6000fd5b505050506040513d6020811015611aaa57600080fd5b5051905060008111611abb57600080fd5b604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018390529051600160a060020a0384169163a9059cbb9160448083019260209291908290030181600087803b158015611b2357600080fd5b505af1158015611b37573d6000803e3d6000fd5b505050506040513d6020811015611b4d57600080fd5b50511515611b5a57600080fd5b6040805182815290513391600160a060020a038616917f5d8daa04d680e083e2ab17a35494ba9f290f554edf76a78f0103a8a599b5c4249181900360200190a3505050565b600082600160a060020a0381161515611bb757600080fd5b336000908152600660209081526040808320600160a060020a03881684529091529020546111cb908463ffffffff611d0a16565b60008054600160a060020a03163314611c0357600080fd5b50303160008111611c1357600080fd5b604051339082156108fc029083906000818181858888f19350505050158015611c40573d6000803e3d6000fd5b5060408051828152905133917faea7a96dc17068a25e51e08f8ed45b86bd34b10af65af8e757af57b7e7b9e55d919081900360200190a250565b600160a060020a03918216600090815260066020908152604080832093909416825291909152205490565b600054600160a060020a03163314611cbc57600080fd5b600b54611ccf908263ffffffff611d0a16565b600b5550565b600081600160a060020a0381161515611ced57600080fd5b5050600160a060020a031660009081526009602052604090205490565b600082820183811015611d1957fe5b9392505050565b6000806060806060806060806000975060009650600960008a600160a060020a0316600160a060020a0316815260200190815260200160002054604051908082528060200260200182016040528015611d83578160200160208202803883390190505b509350600960008a600160a060020a0316600160a060020a0316815260200190815260200160002054604051908082528060200260200182016040528015611dd5578160200160208202803883390190505b50600160a060020a038a166000908152600760209081526040918290208054835181840281018401909452808452939650919290830182828015611e3857602002820191906000526020600020905b815481526020019060010190808311611e24575b50505050509550600860008a600160a060020a0316600160a060020a03168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015611eae57602002820191906000526020600020905b815481526020019060010190808311611e9a575b505050505094505b600160a060020a03891660009081526009602052604090205488101561203d57611f00600a54878a815181101515611eea57fe5b602090810290910101519063ffffffff611d0a16565b600b54611f1490429063ffffffff611d0a16565b10611fcb57611f5b8589815181101515611f2a57fe5b6020908102909101810151600160a060020a038c16600090815260059092526040909120549063ffffffff611d0a16565b600160a060020a038a1660008181526005602052604090209190915585517f613edbda9d1e6bda8af8e869a973f88cccf93854a11f351589038de07e1ab4e39087908b908110611fa757fe5b906020019060200201516040518082815260200191505060405180910390a2612032565b8588815181101515611fd957fe5b906020019060200201518488815181101515611ff157fe5b60209081029091010152845185908990811061200957fe5b90602001906020020151838881518110151561202157fe5b602090810290910101526001909601955b600190970196611eb6565b86604051908082528060200260200182016040528015612067578160200160208202803883390190505b50915086604051908082528060200260200182016040528015612094578160200160208202803883390190505b509050600097505b8688101561210f5783888151811015156120b257fe5b9060200190602002015182898151811015156120ca57fe5b6020908102909101015282518390899081106120e257fe5b9060200190602002015181898151811015156120fa57fe5b6020908102909101015260019097019661209c565b600160a060020a03891660009081526007602090815260409091208351612138928501906121c4565b50600160a060020a03891660009081526008602090815260409091208251612162928401906121c4565b505050600160a060020a039096166000908152600960205260409020939093555050505050565b60008183101561219557fe5b50900390565b8154818355818111156121bf576000838152602090206121bf91810190830161220f565b505050565b8280548282559060005260206000209081019282156121ff579160200282015b828111156121ff5782518255916020019190600101906121e4565b5061220b92915061220f565b5090565b61083f91905b8082111561220b57600081556001016122155600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a7230582004e327a4db376800f1cf8fb357f9a1addb8dd7b973f7aca43d086a8e69281caa0029

Deployed Bytecode

0x6080604052600436106101695763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630451f520811461016e57806306fdde03146101a1578063095ea7b31461022b5780630fce887b1461026357806313af40351461030757806318160ddd1461032a57806323b872dd1461033f578063313ce5671461036957806334452f381461039457806342966c68146103a95780634bf365df146103c15780635fc3a312146103d657806366188463146103f757806370a082311461041b5780638da5cb5b1461043c57806395d89b411461046d578063a0712d6814610482578063a9059cbb1461049a578063b91aedab146104be578063b9c5416d1461055a578063c9e6bd34146105cb578063ca0cd7c0146105ec578063d729018114610604578063d73dd62314610625578063d80b205614610649578063dd62ed3e1461065e578063df51d46b14610685578063fb276fcf1461069d575b600080fd5b34801561017a57600080fd5b5061018f600160a060020a03600435166106be565b60408051918252519081900360200190f35b3480156101ad57600080fd5b506101b66107ac565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101f05781810151838201526020016101d8565b50505050905090810190601f16801561021d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561023757600080fd5b5061024f600160a060020a0360043516602435610842565b604080519115158252519081900360200190f35b34801561026f57600080fd5b50604080516020600460443581810135838102808601850190965280855261024f958335600160a060020a039081169660248035909216963696956064959294930192829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497506108e19650505050505050565b34801561031357600080fd5b50610328600160a060020a0360043516610d61565b005b34801561033657600080fd5b5061018f610da7565b34801561034b57600080fd5b5061024f600160a060020a0360043581169060243516604435610dad565b34801561037557600080fd5b5061037e610f61565b6040805160ff9092168252519081900360200190f35b3480156103a057600080fd5b50610328610f6a565b3480156103b557600080fd5b5061024f600435610f9e565b3480156103cd57600080fd5b5061024f611084565b3480156103e257600080fd5b5061018f600160a060020a036004351661108d565b34801561040357600080fd5b5061024f600160a060020a036004351660243561112c565b34801561042757600080fd5b5061018f600160a060020a0360043516611256565b34801561044857600080fd5b506104516112c4565b60408051600160a060020a039092168252519081900360200190f35b34801561047957600080fd5b506101b66112d3565b34801561048e57600080fd5b5061024f600435611331565b3480156104a657600080fd5b5061024f600160a060020a03600435166024356113de565b3480156104ca57600080fd5b5060408051602060046024803582810135848102808701860190975280865261024f968435600160a060020a031696369660449591949091019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497506114df9650505050505050565b34801561056657600080fd5b5061057b600160a060020a036004351661185d565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156105b757818101518382015260200161059f565b505050509050019250505060405180910390f35b3480156105d757600080fd5b5061057b600160a060020a036004351661194f565b3480156105f857600080fd5b506103286004356119d2565b34801561061057600080fd5b50610328600160a060020a0360043516611a02565b34801561063157600080fd5b5061024f600160a060020a0360043516602435611b9f565b34801561065557600080fd5b50610328611beb565b34801561066a57600080fd5b5061018f600160a060020a0360043581169060243516611c7a565b34801561069157600080fd5b50610328600435611ca5565b3480156106a957600080fd5b5061018f600160a060020a0360043516611cd5565b600160a060020a038116600090815260056020526040812054905b600160a060020a0383166000908152600960205260409020548110156107a657600a54600160a060020a0384166000908152600760205260409020805461073f9291908490811061072657fe5b9060005260206000200154611d0a90919063ffffffff16565b600b5461075390429063ffffffff611d0a16565b1061079e57600160a060020a0383166000908152600860205260409020805461079b91908390811061078157fe5b906000526020600020015483611d0a90919063ffffffff16565b91505b6001016106d9565b50919050565b60018054604080516020601f600260001961010087891615020190951694909404938401819004810282018101909252828152606093909290918301828280156108375780601f1061080c57610100808354040283529160200191610837565b820191906000526020600020905b81548152906001019060200180831161081a57829003601f168201915b505050505090505b90565b600082600160a060020a038116151561085a57600080fd5b3360009081526009602052604081205411156108795761087933611d20565b336000818152600660209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6000808086600160a060020a03811615156108fb57600080fd5b86600160a060020a038116151561091157600080fd5b865186511461091f57600080fd5b600160a060020a03891660009081526009602052604081205411156109475761094789611d20565b60009350600092505b855184101561098e57610981868581518110151561096a57fe5b60209081029091010151849063ffffffff611d0a16565b6001909401939250610950565b600160a060020a03891660009081526005602052604090205483118015906109b7575060008310155b80156109e65750600160a060020a03891660009081526006602090815260408083203384529091529020548311155b15156109f157600080fd5b8651600160a060020a038916600090815260096020526040902054602a91610a1f919063ffffffff611d0a16565b1115610a2a57600080fd5b600093505b8651841015610d525760008685815181101515610a4857fe5b906020019060200201511115610c7d57610a9a8685815181101515610a6957fe5b6020908102909101810151600160a060020a038c16600090815260059092526040909120549063ffffffff61218916565b600160a060020a038a166000908152600560205260409020558551610aff90879086908110610ac557fe5b6020908102909101810151600160a060020a038c16600090815260068352604080822033835290935291909120549063ffffffff61218916565b600160a060020a03808b166000908152600660209081526040808320338452825280832094909455918b1681526009825282812054600790925291909120600190910190610b4d908261219b565b50600160a060020a0388166000908152600960209081526040808320546008909252909120600190910190610b82908261219b565b50610bcf600a54610bc3600b54610bb78b89815181101515610ba057fe5b60209081029091010151429063ffffffff611d0a16565b9063ffffffff611d0a16565b9063ffffffff61218916565b600160a060020a038916600090815260076020908152604080832060099092529091205481548110610bfd57fe5b6000918252602090912001558551869085908110610c1757fe5b6020908102909101810151600160a060020a038a166000908152600883526040808220600990945290205482549192918110610c4f57fe5b6000918252602080832090910192909255600160a060020a038a168152600990915260409020805460010190555b87600160a060020a031689600160a060020a03167f34c966766e471b87b7ce8d0d0358378cf20008a30bbb36246a3413c8a286834e8987815181101515610cc057fe5b906020019060200201518988815181101515610cd857fe5b602090810290910181015160408051938452918301528051918290030190a387600160a060020a031689600160a060020a031660008051602061222a8339815191528887815181101515610d2857fe5b906020019060200201516040518082815260200191505060405180910390a3600190930192610a2f565b50600198975050505050505050565b600054600160a060020a03163314610d7857600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60045490565b600083600160a060020a0381161515610dc557600080fd5b83600160a060020a0381161515610ddb57600080fd5b600160a060020a0386166000908152600960205260408120541115610e0357610e0386611d20565b600160a060020a0386166000908152600560205260409020548411801590610e2c575060008410155b8015610e5b5750600160a060020a03861660009081526006602090815260408083203384529091529020548411155b1515610e6657600080fd5b600160a060020a0386166000908152600660209081526040808320338452909152902054610e9a908563ffffffff61218916565b600160a060020a038716600081815260066020908152604080832033845282528083209490945591815260059091522054610edb908563ffffffff61218916565b600160a060020a038088166000908152600560205260408082209390935590871681522054610f10908563ffffffff611d0a16565b600160a060020a0380871660008181526005602090815260409182902094909455805188815290519193928a169260008051602061222a83398151915292918290030190a350600195945050505050565b60035460ff1690565b600054600160a060020a03163314610f8157600080fd5b600c5460ff161515610f9257600080fd5b600c805460ff19169055565b60008054600160a060020a03163314610fb657600080fd5b336000908152600960205260408120541115610fd557610fd533611d20565b336000908152600560205260409020548211801590610ff5575060008210155b151561100057600080fd5b33600090815260056020526040902054611020908363ffffffff61218916565b33600090815260056020526040902055600454611043908363ffffffff61218916565b60045560408051838152905133917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a2506001919050565b600c5460ff1690565b6000805b600160a060020a0383166000908152600960205260409020548110156107a657600a54600160a060020a038416600090815260076020526040902080546110de9291908490811061072657fe5b600b546110f290429063ffffffff611d0a16565b101561112457600160a060020a0383166000908152600860205260409020805461112191908390811061078157fe5b91505b600101611091565b600082600160a060020a038116151561114457600080fd5b336000908152600660209081526040808320600160a060020a0388168452909152902054831061119757336000908152600660209081526040808320600160a060020a03881684529091528120556111f0565b336000908152600660209081526040808320600160a060020a03881684529091529020546111cb908463ffffffff61218916565b336000908152600660209081526040808320600160a060020a03891684529091529020555b336000818152600660209081526040808320600160a060020a0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b600160a060020a038116600090815260056020526040812054905b600160a060020a0383166000908152600960205260409020548110156107a657600160a060020a038316600090815260086020526040902080546112ba91908390811061078157fe5b9150600101611271565b600054600160a060020a031681565b60028054604080516020601f60001961010060018716150201909416859004938401819004810282018101909252828152606093909290918301828280156108375780601f1061080c57610100808354040283529160200191610837565b60008054600160a060020a0316331461134957600080fd5b600c5460ff16151561135a57600080fd5b3360009081526005602052604090205461137a908363ffffffff611d0a16565b3360009081526005602052604090205560045461139d908363ffffffff611d0a16565b60045560408051838152905133917f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885919081900360200190a2506001919050565b600082600160a060020a03811615156113f657600080fd5b3360009081526009602052604081205411156114155761141533611d20565b336000908152600560205260409020548311801590611435575060008310155b151561144057600080fd5b33600090815260056020526040902054611460908463ffffffff61218916565b3360009081526005602052604080822092909255600160a060020a03861681522054611492908463ffffffff611d0a16565b600160a060020a03851660008181526005602090815260409182902093909355805186815290519192339260008051602061222a8339815191529281900390910190a35060019392505050565b6000808085600160a060020a03811615156114f957600080fd5b855185511461150757600080fd5b3360009081526009602052604081205411156115265761152633611d20565b60009250600091505b845183101561156d57611560858481518110151561154957fe5b60209081029091010151839063ffffffff611d0a16565b600190930192915061152f565b33600090815260056020526040902054821180159061158d575060008210155b151561159857600080fd5b8551600160a060020a038816600090815260096020526040902054602a916115c6919063ffffffff611d0a16565b11156115d157600080fd5b600092505b855183101561185057600085848151811015156115ef57fe5b90602001906020020151111561177b57611638858481518110151561161057fe5b602090810290910181015133600090815260059092526040909120549063ffffffff61218916565b33600090815260056020908152604080832093909355600160a060020a038a1682526009815282822054600790915291902060019091019061167a908261219b565b50600160a060020a03871660009081526009602090815260408083205460089092529091206001909101906116af908261219b565b506116cd600a54610bc3600b54610bb78a88815181101515610ba057fe5b600160a060020a0388166000908152600760209081526040808320600990925290912054815481106116fb57fe5b600091825260209091200155845185908490811061171557fe5b6020908102909101810151600160a060020a038916600090815260088352604080822060099094529020548254919291811061174d57fe5b6000918252602080832090910192909255600160a060020a0389168152600990915260409020805460010190555b86600160a060020a031633600160a060020a03167f34c966766e471b87b7ce8d0d0358378cf20008a30bbb36246a3413c8a286834e88868151811015156117be57fe5b9060200190602002015188878151811015156117d657fe5b602090810290910181015160408051938452918301528051918290030190a386600160a060020a031633600160a060020a031660008051602061222a833981519152878681518110151561182657fe5b906020019060200201516040518082815260200191505060405180910390a36001909201916115d6565b5060019695505050505050565b606060008183600160a060020a038116151561187857600080fd5b600092506009600086600160a060020a0316600160a060020a03168152602001908152602001600020546040519080825280602002602001820160405280156118cb578160200160208202803883390190505b5091505b600160a060020a03851660009081526009602052604090205483101561194757600b54600a54600160a060020a038716600090815260076020526040902080546119249392610bc39290918890811061072657fe5b828481518110151561193257fe5b602090810290910101526001909201916118cf565b509392505050565b606081600160a060020a038116151561196757600080fd5b600160a060020a038316600090815260086020908152604091829020805483518184028101840190945280845290918301828280156119c557602002820191906000526020600020905b8154815260200190600101908083116119b1575b5050505050915050919050565b600054600160a060020a031633146119e957600080fd5b600a546119fc908263ffffffff611d0a16565b600a5550565b600080548190600160a060020a03163314611a1c57600080fd5b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051849350600160a060020a038416916370a082319160248083019260209291908290030181600087803b158015611a8057600080fd5b505af1158015611a94573d6000803e3d6000fd5b505050506040513d6020811015611aaa57600080fd5b5051905060008111611abb57600080fd5b604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018390529051600160a060020a0384169163a9059cbb9160448083019260209291908290030181600087803b158015611b2357600080fd5b505af1158015611b37573d6000803e3d6000fd5b505050506040513d6020811015611b4d57600080fd5b50511515611b5a57600080fd5b6040805182815290513391600160a060020a038616917f5d8daa04d680e083e2ab17a35494ba9f290f554edf76a78f0103a8a599b5c4249181900360200190a3505050565b600082600160a060020a0381161515611bb757600080fd5b336000908152600660209081526040808320600160a060020a03881684529091529020546111cb908463ffffffff611d0a16565b60008054600160a060020a03163314611c0357600080fd5b50303160008111611c1357600080fd5b604051339082156108fc029083906000818181858888f19350505050158015611c40573d6000803e3d6000fd5b5060408051828152905133917faea7a96dc17068a25e51e08f8ed45b86bd34b10af65af8e757af57b7e7b9e55d919081900360200190a250565b600160a060020a03918216600090815260066020908152604080832093909416825291909152205490565b600054600160a060020a03163314611cbc57600080fd5b600b54611ccf908263ffffffff611d0a16565b600b5550565b600081600160a060020a0381161515611ced57600080fd5b5050600160a060020a031660009081526009602052604090205490565b600082820183811015611d1957fe5b9392505050565b6000806060806060806060806000975060009650600960008a600160a060020a0316600160a060020a0316815260200190815260200160002054604051908082528060200260200182016040528015611d83578160200160208202803883390190505b509350600960008a600160a060020a0316600160a060020a0316815260200190815260200160002054604051908082528060200260200182016040528015611dd5578160200160208202803883390190505b50600160a060020a038a166000908152600760209081526040918290208054835181840281018401909452808452939650919290830182828015611e3857602002820191906000526020600020905b815481526020019060010190808311611e24575b50505050509550600860008a600160a060020a0316600160a060020a03168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015611eae57602002820191906000526020600020905b815481526020019060010190808311611e9a575b505050505094505b600160a060020a03891660009081526009602052604090205488101561203d57611f00600a54878a815181101515611eea57fe5b602090810290910101519063ffffffff611d0a16565b600b54611f1490429063ffffffff611d0a16565b10611fcb57611f5b8589815181101515611f2a57fe5b6020908102909101810151600160a060020a038c16600090815260059092526040909120549063ffffffff611d0a16565b600160a060020a038a1660008181526005602052604090209190915585517f613edbda9d1e6bda8af8e869a973f88cccf93854a11f351589038de07e1ab4e39087908b908110611fa757fe5b906020019060200201516040518082815260200191505060405180910390a2612032565b8588815181101515611fd957fe5b906020019060200201518488815181101515611ff157fe5b60209081029091010152845185908990811061200957fe5b90602001906020020151838881518110151561202157fe5b602090810290910101526001909601955b600190970196611eb6565b86604051908082528060200260200182016040528015612067578160200160208202803883390190505b50915086604051908082528060200260200182016040528015612094578160200160208202803883390190505b509050600097505b8688101561210f5783888151811015156120b257fe5b9060200190602002015182898151811015156120ca57fe5b6020908102909101015282518390899081106120e257fe5b9060200190602002015181898151811015156120fa57fe5b6020908102909101015260019097019661209c565b600160a060020a03891660009081526007602090815260409091208351612138928501906121c4565b50600160a060020a03891660009081526008602090815260409091208251612162928401906121c4565b505050600160a060020a039096166000908152600960205260409020939093555050505050565b60008183101561219557fe5b50900390565b8154818355818111156121bf576000838152602090206121bf91810190830161220f565b505050565b8280548282559060005260206000209081019282156121ff579160200282015b828111156121ff5782518255916020019190600101906121e4565b5061220b92915061220f565b5090565b61083f91905b8082111561220b57600081556001016122155600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a7230582004e327a4db376800f1cf8fb357f9a1addb8dd7b973f7aca43d086a8e69281caa0029

Swarm Source

bzzr://04e327a4db376800f1cf8fb357f9a1addb8dd7b973f7aca43d086a8e69281caa

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  ]

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.