ETH Price: $2,520.32 (+3.14%)

Contract

0xEd1eba8B87cD7E04e9389f65F7AeCa750c85a010
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer88630432019-11-03 4:23:121760 days ago1572754992IN
0xEd1eba8B...50c85a010
0 ETH0.0004460210
Transfer88630192019-11-03 4:16:491760 days ago1572754609IN
0xEd1eba8B...50c85a010
0 ETH0.0004460210
Transfer86430092019-09-29 10:01:551795 days ago1569751315IN
0xEd1eba8B...50c85a010
0 ETH0.0010704424
Transfer79037192019-06-06 5:17:481910 days ago1559798268IN
0xEd1eba8B...50c85a010
0 ETH0.000312217
Transfer75055752019-04-05 2:58:591972 days ago1554433139IN
0xEd1eba8B...50c85a010
0 ETH0.00004461
Transfer70587282019-01-13 10:38:332054 days ago1547375913IN
0xEd1eba8B...50c85a010
0 ETH0.000312217
Transfer64196912018-09-29 6:30:122160 days ago1538202612IN
0xEd1eba8B...50c85a010
0 ETH0.0008587419.28125
Transfer63352382018-09-15 8:39:232174 days ago1537000763IN
0xEd1eba8B...50c85a010
0 ETH0.0005764312.90535731
Transfer62407002018-08-30 12:53:372190 days ago1535633617IN
0xEd1eba8B...50c85a010
0 ETH0.0005866113.15223961
Transfer62263082018-08-28 2:22:312192 days ago1535422951IN
0xEd1eba8B...50c85a010
0 ETH0.000196244.4
Transfer62169072018-08-26 12:20:202194 days ago1535286020IN
0xEd1eba8B...50c85a010
0 ETH0.000400028.96875
Transfer62151872018-08-26 5:14:182194 days ago1535260458IN
0xEd1eba8B...50c85a010
0 ETH0.000103032.31
Transfer61917392018-08-22 6:09:392198 days ago1534918179IN
0xEd1eba8B...50c85a010
0 ETH0.0006730215.0895534
Transfer61911312018-08-22 3:39:142198 days ago1534909154IN
0xEd1eba8B...50c85a010
0 ETH0.00017844
Transfer60926932018-08-05 12:28:212215 days ago1533472101IN
0xEd1eba8B...50c85a010
0 ETH0.0007066615.84375
Transfer60912392018-08-05 6:36:212215 days ago1533450981IN
0xEd1eba8B...50c85a010
0 ETH0.0007066615.84375
Transfer60911072018-08-05 6:06:232215 days ago1533449183IN
0xEd1eba8B...50c85a010
0 ETH0.000071361.6
Transfer60847102018-08-04 4:17:112216 days ago1533356231IN
0xEd1eba8B...50c85a010
0 ETH0.000202774.54626867
Transfer60813332018-08-03 14:52:492217 days ago1533307969IN
0xEd1eba8B...50c85a010
0 ETH0.000171713.85
Transfer60806962018-08-03 12:17:462217 days ago1533298666IN
0xEd1eba8B...50c85a010
0 ETH0.002241350.32352972
Transfer60801592018-08-03 10:00:502217 days ago1533290450IN
0xEd1eba8B...50c85a010
0 ETH0.0011291625.35294156
Transfer60801092018-08-03 9:48:552217 days ago1533289735IN
0xEd1eba8B...50c85a010
0 ETH0.000133613
Transfer60738772018-08-02 8:10:582218 days ago1533197458IN
0xEd1eba8B...50c85a010
0 ETH0.000098122.2
Transfer60725842018-08-02 2:54:242218 days ago1533178464IN
0xEd1eba8B...50c85a010
0 ETH0.00008922
Transfer60605832018-07-31 2:09:102220 days ago1533002950IN
0xEd1eba8B...50c85a010
0 ETH0.0004906211
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:
AGT

Compiler Version
v0.4.17+commit.bdeb9e52

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2017-11-17
*/

pragma solidity ^0.4.13;

contract DSAuthority {
    function canCall(
        address src, address dst, bytes4 sig
    ) public view returns (bool);
}

contract DSAuthEvents {
    event LogSetAuthority (address indexed authority);
    event LogSetOwner     (address indexed owner);
}

contract DSAuth is DSAuthEvents {
    DSAuthority  public  authority;
    address      public  owner;

    function DSAuth() public {
        owner = msg.sender;
        LogSetOwner(msg.sender);
    }

    function setOwner(address owner_)
        public
        auth
    {
        owner = owner_;
        LogSetOwner(owner);
    }

    function setAuthority(DSAuthority authority_)
        public
        auth
    {
        authority = authority_;
        LogSetAuthority(authority);
    }

    modifier auth {
        require(isAuthorized(msg.sender, msg.sig));
        _;
    }

    function isAuthorized(address src, bytes4 sig) internal view returns (bool) {
        if (src == address(this)) {
            return true;
        } else if (src == owner) {
            return true;
        } else if (authority == DSAuthority(0)) {
            return false;
        } else {
            return authority.canCall(src, this, sig);
        }
    }
}

contract DSNote {
    event LogNote(
        bytes4   indexed  sig,
        address  indexed  guy,
        bytes32  indexed  foo,
        bytes32  indexed  bar,
        uint              wad,
        bytes             fax
    ) anonymous;

    modifier note {
        bytes32 foo;
        bytes32 bar;

        assembly {
            foo := calldataload(4)
            bar := calldataload(36)
        }

        LogNote(msg.sig, msg.sender, foo, bar, msg.value, msg.data);

        _;
    }
}

contract DSStop is DSNote, DSAuth {

    bool public stopped;

    modifier stoppable {
        require(!stopped);
        _;
    }
    function stop() public auth note {
        stopped = true;
    }
    function start() public auth note {
        stopped = false;
    }

}

contract ERC20 {
    function totalSupply() public view returns (uint supply);
    function balanceOf( address who ) public view returns (uint value);
    function allowance( address owner, address spender ) public view returns (uint _allowance);

    function transfer( address to, uint value) public returns (bool ok);
    function transferFrom( address from, address to, uint value) public returns (bool ok);
    function approve( address spender, uint value ) public returns (bool ok);

    event Transfer( address indexed from, address indexed to, uint value);
    event Approval( address indexed owner, address indexed spender, uint value);
}

contract DSMath {
    function add(uint x, uint y) internal pure returns (uint z) {
        require((z = x + y) >= x);
    }
    function sub(uint x, uint y) internal pure returns (uint z) {
        require((z = x - y) <= x);
    }
    function mul(uint x, uint y) internal pure returns (uint z) {
        require(y == 0 || (z = x * y) / y == x);
    }

    function min(uint x, uint y) internal pure returns (uint z) {
        return x <= y ? x : y;
    }
    function max(uint x, uint y) internal pure returns (uint z) {
        return x >= y ? x : y;
    }
    function imin(int x, int y) internal pure returns (int z) {
        return x <= y ? x : y;
    }
    function imax(int x, int y) internal pure returns (int z) {
        return x >= y ? x : y;
    }

    uint constant WAD = 10 ** 18;
    uint constant RAY = 10 ** 27;

    function wmul(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, y), WAD / 2) / WAD;
    }
    function rmul(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, y), RAY / 2) / RAY;
    }
    function wdiv(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, WAD), y / 2) / y;
    }
    function rdiv(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, RAY), y / 2) / y;
    }

    // This famous algorithm is called "exponentiation by squaring"
    // and calculates x^n with x as fixed-point and n as regular unsigned.
    //
    // It's O(log n), instead of O(n) for naive repeated multiplication.
    //
    // These facts are why it works:
    //
    //  If n is even, then x^n = (x^2)^(n/2).
    //  If n is odd,  then x^n = x * x^(n-1),
    //   and applying the equation for even x gives
    //    x^n = x * (x^2)^((n-1) / 2).
    //
    //  Also, EVM division is flooring and
    //    floor[(n-1) / 2] = floor[n / 2].
    //
    function rpow(uint x, uint n) internal pure returns (uint z) {
        z = n % 2 != 0 ? x : RAY;

        for (n /= 2; n != 0; n /= 2) {
            x = rmul(x, x);

            if (n % 2 != 0) {
                z = rmul(z, x);
            }
        }
    }
}

contract DSTokenBase is ERC20, DSMath {
    uint256                                            _supply;
    mapping (address => uint256)                       _balances;
    mapping (address => mapping (address => uint256))  _approvals;

    function DSTokenBase(uint supply) public {
        _balances[msg.sender] = supply;
        _supply = supply;
    }

    function totalSupply() public view returns (uint) {
        return _supply;
    }
    function balanceOf(address src) public view returns (uint) {
        return _balances[src];
    }
    function allowance(address src, address guy) public view returns (uint) {
        return _approvals[src][guy];
    }

    function transfer(address dst, uint wad) public returns (bool) {
        return transferFrom(msg.sender, dst, wad);
    }

    function transferFrom(address src, address dst, uint wad)
        public
        returns (bool)
    {
        if (src != msg.sender) {
            _approvals[src][msg.sender] = sub(_approvals[src][msg.sender], wad);
        }

        _balances[src] = sub(_balances[src], wad);
        _balances[dst] = add(_balances[dst], wad);

        Transfer(src, dst, wad);

        return true;
    }

    function approve(address guy, uint wad) public returns (bool) {
        _approvals[msg.sender][guy] = wad;

        Approval(msg.sender, guy, wad);

        return true;
    }
}

contract DSToken is DSTokenBase(0), DSStop {

    mapping (address => mapping (address => bool)) _trusted;

    bytes32  public  symbol;
    uint256  public  decimals = 18; // standard token precision. override to customize

    function DSToken(bytes32 symbol_) public {
        symbol = symbol_;
    }

    event Trust(address indexed src, address indexed guy, bool wat);
    event Mint(address indexed guy, uint wad);
    event Burn(address indexed guy, uint wad);

    function trusted(address src, address guy) public view returns (bool) {
        return _trusted[src][guy];
    }
    function trust(address guy, bool wat) public stoppable {
        _trusted[msg.sender][guy] = wat;
        Trust(msg.sender, guy, wat);
    }

    function approve(address guy, uint wad) public stoppable returns (bool) {
        return super.approve(guy, wad);
    }
    function transferFrom(address src, address dst, uint wad)
        public
        stoppable
        returns (bool)
    {
        if (src != msg.sender && !_trusted[src][msg.sender]) {
            _approvals[src][msg.sender] = sub(_approvals[src][msg.sender], wad);
        }

        _balances[src] = sub(_balances[src], wad);
        _balances[dst] = add(_balances[dst], wad);

        Transfer(src, dst, wad);

        return true;
    }

    function push(address dst, uint wad) public {
        transferFrom(msg.sender, dst, wad);
    }
    function pull(address src, uint wad) public {
        transferFrom(src, msg.sender, wad);
    }
    function move(address src, address dst, uint wad) public {
        transferFrom(src, dst, wad);
    }

    function mint(uint wad) public {
        mint(msg.sender, wad);
    }
    function burn(uint wad) public {
        burn(msg.sender, wad);
    }
    function mint(address guy, uint wad) public auth stoppable {
        _balances[guy] = add(_balances[guy], wad);
        _supply = add(_supply, wad);
        Mint(guy, wad);
    }
    function burn(address guy, uint wad) public auth stoppable {
        if (guy != msg.sender && !_trusted[guy][msg.sender]) {
            _approvals[guy][msg.sender] = sub(_approvals[guy][msg.sender], wad);
        }

        _balances[guy] = sub(_balances[guy], wad);
        _supply = sub(_supply, wad);
        Burn(guy, wad);
    }

    // Optional token name
    bytes32   public  name = "";

    function setName(bytes32 name_) public auth {
        name = name_;
    }
}

/// @title ERC223ReceivingContract - Standard contract implementation for compatibility with ERC223 tokens.
contract ERC223ReceivingContract {

    /// @dev Function that is called when a user or another contract wants to transfer funds.
    /// @param _from Transaction initiator, analogue of msg.sender
    /// @param _value Number of tokens to transfer.
    /// @param _data Data containig a function signature and/or parameters
    function tokenFallback(address _from, uint256 _value, bytes _data) public;


    /// @dev For ERC20 backward compatibility, same with above tokenFallback but without data.
    /// The function execution could fail, but do not influence the token transfer.
    /// @param _from Transaction initiator, analogue of msg.sender
    /// @param _value Number of tokens to transfer.
    //  function tokenFallback(address _from, uint256 _value) public;
}

/// @dev The token controller contract must implement these functions
contract TokenController {
    /// @notice Called when `_owner` sends ether to the MiniMe Token contract
    /// @param _owner The address that sent the ether to create tokens
    /// @return True if the ether is accepted, false if it throws
    function proxyPayment(address _owner) payable public returns(bool);

    /// @notice Notifies the controller about a token transfer allowing the
    ///  controller to react if desired
    /// @param _from The origin of the transfer
    /// @param _to The destination of the transfer
    /// @param _amount The amount of the transfer
    /// @return False if the controller does not authorize the transfer
    function onTransfer(address _from, address _to, uint _amount) public returns(bool);

    /// @notice Notifies the controller about an approval allowing the
    ///  controller to react if desired
    /// @param _owner The address that calls `approve()`
    /// @param _spender The spender in the `approve()` call
    /// @param _amount The amount in the `approve()` call
    /// @return False if the controller does not authorize the approval
    function onApprove(address _owner, address _spender, uint _amount) public returns(bool);
}

contract Controlled {
    /// @notice The address of the controller is the only address that can call
    ///  a function with this modifier
    modifier onlyController { if (msg.sender != controller) throw; _; }

    address public controller;

    function Controlled() { controller = msg.sender;}

    /// @notice Changes the controller of the contract
    /// @param _newController The new controller of the contract
    function changeController(address _newController) onlyController {
        controller = _newController;
    }
}

contract ApproveAndCallFallBack {
    function receiveApproval(address from, uint256 _amount, address _token, bytes _data);
}

contract ERC223 {
    function transfer(address to, uint amount, bytes data) public returns (bool ok);

    function transferFrom(address from, address to, uint256 amount, bytes data) public returns (bool ok);

    function transfer(address to, uint amount, bytes data, string custom_fallback) public returns (bool ok);

    function transferFrom(address from, address to, uint256 amount, bytes data, string custom_fallback) public returns (bool ok);

    event ERC223Transfer(address indexed from, address indexed to, uint amount, bytes data);

    event ReceivingContractTokenFallbackFailed(address indexed from, address indexed to, uint amount);
}

contract AGT is DSToken("AGT"), ERC223, Controlled {

    function AGT() {
        setName("Genesis Token of ATNIO");
    }

    /// @notice Send `_amount` tokens to `_to` from `_from` on the condition it
    ///  is approved by `_from`
    /// @param _from The address holding the tokens being transferred
    /// @param _to The address of the recipient
    /// @param _amount The amount of tokens to be transferred
    /// @return True if the transfer was successful
    function transferFrom(address _from, address _to, uint256 _amount
    ) public returns (bool success) {
        // Alerts the token controller of the transfer
        if (isContract(controller)) {
            if (!TokenController(controller).onTransfer(_from, _to, _amount))
               throw;
        }

        success = super.transferFrom(_from, _to, _amount);

        if (success && isContract(_to))
        {
            // ERC20 backward compatiability
            if(!_to.call(bytes4(keccak256("tokenFallback(address,uint256)")), _from, _amount)) {
                // do nothing when error in call in case that the _to contract is not inherited from ERC223ReceivingContract
                // revert();
                // bytes memory empty;

                ReceivingContractTokenFallbackFailed(_from, _to, _amount);

                // Even the fallback failed if there is such one, the transfer will not be revert since "revert()" is not called.
            }
        }
    }

    /*
     * ERC 223
     * Added support for the ERC 223 "tokenFallback" method in a "transfer" function with a payload.
     */
    function transferFrom(address _from, address _to, uint256 _amount, bytes _data)
        public
        returns (bool success)
    {
        // Alerts the token controller of the transfer
        if (isContract(controller)) {
            if (!TokenController(controller).onTransfer(_from, _to, _amount))
               throw;
        }

        require(super.transferFrom(_from, _to, _amount));

        if (isContract(_to)) {
            ERC223ReceivingContract receiver = ERC223ReceivingContract(_to);
            receiver.tokenFallback(_from, _amount, _data);
        }

        ERC223Transfer(_from, _to, _amount, _data);

        return true;
    }

    /*
     * ERC 223
     * Added support for the ERC 223 "tokenFallback" method in a "transfer" function with a payload.
     * https://github.com/ethereum/EIPs/issues/223
     * function transfer(address _to, uint256 _value, bytes _data) public returns (bool success);
     */
    /// @notice Send `_value` tokens to `_to` from `msg.sender` and trigger
    /// tokenFallback if sender is a contract.
    /// @dev Function that is called when a user or another contract wants to transfer funds.
    /// @param _to Address of token receiver.
    /// @param _amount Number of tokens to transfer.
    /// @param _data Data to be sent to tokenFallback
    /// @return Returns success of function call.
    function transfer(
        address _to,
        uint256 _amount,
        bytes _data)
        public
        returns (bool success)
    {
        return transferFrom(msg.sender, _to, _amount, _data);
    }

    /*
     * ERC 223
     * Added support for the ERC 223 "tokenFallback" method in a "transfer" function with a payload.
     */
    function transferFrom(address _from, address _to, uint256 _amount, bytes _data, string _custom_fallback)
        public
        returns (bool success)
    {
        // Alerts the token controller of the transfer
        if (isContract(controller)) {
            if (!TokenController(controller).onTransfer(_from, _to, _amount))
               throw;
        }

        require(super.transferFrom(_from, _to, _amount));

        if (isContract(_to)) {
            ERC223ReceivingContract receiver = ERC223ReceivingContract(_to);
            receiver.call.value(0)(bytes4(keccak256(_custom_fallback)), _from, _amount, _data);
        }

        ERC223Transfer(_from, _to, _amount, _data);

        return true;
    }

    /*
     * ERC 223
     * Added support for the ERC 223 "tokenFallback" method in a "transfer" function with a payload.
     */
    function transfer(
        address _to, 
        uint _amount, 
        bytes _data, 
        string _custom_fallback)
        public 
        returns (bool success)
    {
        return transferFrom(msg.sender, _to, _amount, _data, _custom_fallback);
    }

    /// @notice `msg.sender` approves `_spender` to spend `_amount` tokens on
    ///  its behalf. This is a modified version of the ERC20 approve function
    ///  to be a little bit safer
    /// @param _spender The address of the account able to transfer the tokens
    /// @param _amount The amount of tokens to be approved for transfer
    /// @return True if the approval was successful
    function approve(address _spender, uint256 _amount) returns (bool success) {
        // Alerts the token controller of the approve function call
        if (isContract(controller)) {
            if (!TokenController(controller).onApprove(msg.sender, _spender, _amount))
                throw;
        }
        
        return super.approve(_spender, _amount);
    }

    function mint(address _guy, uint _wad) auth stoppable {
        super.mint(_guy, _wad);

        Transfer(0, _guy, _wad);
    }
    function burn(address _guy, uint _wad) auth stoppable {
        super.burn(_guy, _wad);

        Transfer(_guy, 0, _wad);
    }

    /// @notice `msg.sender` approves `_spender` to send `_amount` tokens on
    ///  its behalf, and then a function is triggered in the contract that is
    ///  being approved, `_spender`. This allows users to use their tokens to
    ///  interact with contracts in one function call instead of two
    /// @param _spender The address of the contract able to transfer the tokens
    /// @param _amount The amount of tokens to be approved for transfer
    /// @return True if the function call was successful
    function approveAndCall(address _spender, uint256 _amount, bytes _extraData
    ) returns (bool success) {
        if (!approve(_spender, _amount)) throw;

        ApproveAndCallFallBack(_spender).receiveApproval(
            msg.sender,
            _amount,
            this,
            _extraData
        );

        return true;
    }

    /// @dev Internal function to determine if an address is a contract
    /// @param _addr The address being queried
    /// @return True if `_addr` is a contract
    function isContract(address _addr) constant internal returns(bool) {
        uint size;
        if (_addr == 0) return false;
        assembly {
            size := extcodesize(_addr)
        }
        return size>0;
    }

    /// @notice The fallback function: If the contract's controller has not been
    ///  set to 0, then the `proxyPayment` method is called which relays the
    ///  ether and creates tokens as described in the token controller contract
    function ()  payable {
        if (isContract(controller)) {
            if (! TokenController(controller).proxyPayment.value(msg.value)(msg.sender))
                throw;
        } else {
            throw;
        }
    }

//////////
// Safety Methods
//////////

    /// @notice This method can be used by the controller to extract mistakenly
    ///  sent tokens to this contract.
    /// @param _token The address of the token contract that you want to recover
    ///  set to 0 in case you want to extract ether.
    function claimTokens(address _token) onlyController {
        if (_token == 0x0) {
            controller.transfer(this.balance);
            return;
        }

        ERC20 token = ERC20(_token);
        uint balance = token.balanceOf(this);
        token.transfer(controller, balance);
        ClaimedTokens(_token, controller, balance);
    }

////////////////
// Events
////////////////

    event ClaimedTokens(address indexed _token, address indexed _controller, uint _amount);
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"guy","type":"address"},{"name":"wat","type":"bool"}],"name":"trust","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"stop","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_amount","type":"uint256"}],"name":"approve","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":"_amount","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newController","type":"address"}],"name":"changeController","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_guy","type":"address"},{"name":"_wad","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"wad","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_data","type":"bytes"},{"name":"_custom_fallback","type":"string"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"name_","type":"bytes32"}],"name":"setName","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"src","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"stopped","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"authority_","type":"address"}],"name":"setAuthority","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"src","type":"address"},{"name":"guy","type":"address"}],"name":"trusted","outputs":[{"name":"","type":"bool"}],"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":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_guy","type":"address"},{"name":"_wad","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"wad","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"dst","type":"address"},{"name":"wad","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"dst","type":"address"},{"name":"wad","type":"uint256"}],"name":"push","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"src","type":"address"},{"name":"dst","type":"address"},{"name":"wad","type":"uint256"}],"name":"move","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"start","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"authority","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_extraData","type":"bytes"}],"name":"approveAndCall","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"src","type":"address"},{"name":"guy","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"claimTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"src","type":"address"},{"name":"wad","type":"uint256"}],"name":"pull","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_data","type":"bytes"},{"name":"_custom_fallback","type":"string"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"controller","outputs":[{"name":"","type":"address"}],"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":"_token","type":"address"},{"indexed":true,"name":"_controller","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"ClaimedTokens","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"data","type":"bytes"}],"name":"ERC223Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"ReceivingContractTokenFallbackFailed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"src","type":"address"},{"indexed":true,"name":"guy","type":"address"},{"indexed":false,"name":"wat","type":"bool"}],"name":"Trust","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"guy","type":"address"},{"indexed":false,"name":"wad","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"guy","type":"address"},{"indexed":false,"name":"wad","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"authority","type":"address"}],"name":"LogSetAuthority","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"}],"name":"LogSetOwner","type":"event"},{"anonymous":true,"inputs":[{"indexed":true,"name":"sig","type":"bytes4"},{"indexed":true,"name":"guy","type":"address"},{"indexed":true,"name":"foo","type":"bytes32"},{"indexed":true,"name":"bar","type":"bytes32"},{"indexed":false,"name":"wad","type":"uint256"},{"indexed":false,"name":"fax","type":"bytes"}],"name":"LogNote","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"}]

60606040526012600755600060085534156200001a57600080fd5b600160a060020a03331660008181526001602052604080822082905590805560048054600160a060020a031916831790557f414754000000000000000000000000000000000000000000000000000000000091907fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed94905160405180910390a260065560098054600160a060020a03191633600160a060020a0316179055620000f07f47656e6573697320546f6b656e206f662041544e494f00000000000000000000640100000000620000f68102620010041704565b62000272565b62000134337fffffffff00000000000000000000000000000000000000000000000000000000600035166401000000006200182e6200014582021704565b15156200014057600080fd5b600855565b600030600160a060020a031683600160a060020a031614156200016b575060016200026c565b600454600160a060020a03848116911614156200018b575060016200026c565b600354600160a060020a03161515620001a7575060006200026c565b600354600160a060020a031663b70096138430856000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff8616028152600160a060020a0393841660048201529190921660248201527fffffffff000000000000000000000000000000000000000000000000000000009091166044820152606401602060405180830381600087803b15156200024e57600080fd5b6102c65a03f115156200026057600080fd5b50505060405180519150505b92915050565b611da480620002826000396000f300606060405236156101905763ffffffff60e060020a60003504166306262f1b811461023657806306fdde031461025a57806307da68f51461027f578063095ea7b31461029257806313af4035146102c857806318160ddd146102e757806323b872dd146102fa578063313ce567146103225780633cebb8231461033557806340c10f191461035457806342966c68146103765780634e2ab9331461038c5780635ac801fe1461043a57806370a082311461045057806375f12b211461046f5780637a9e5e4b146104825780637aa3295b146104a15780638da5cb5b146104c657806395d89b41146104f55780639dc29fac14610508578063a0712d681461052a578063a9059cbb14610540578063ab67aa5814610562578063b753a98c146105ce578063bb35783b146105f0578063be45fd6214610618578063be9a65551461067d578063bf7e214f14610690578063cae9ca51146106a3578063dd62ed3e14610708578063df8de3e71461072d578063f2d5d56b1461074c578063f6368f8a1461076e578063f77c479114610815575b6009546101a590600160a060020a0316610828565b1561022f57600954600160a060020a031663f48c3054343360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390911660048201526024016020604051808303818588803b151561020357600080fd5b6125ee5a03f1151561021457600080fd5b5050505060405180519050151561022a57600080fd5b610234565b600080fd5b005b341561024157600080fd5b610234600160a060020a03600435166024351515610855565b341561026557600080fd5b61026d6108dc565b60405190815260200160405180910390f35b341561028a57600080fd5b6102346108e2565b341561029d57600080fd5b6102b4600160a060020a0360043516602435610981565b604051901515815260200160405180910390f35b34156102d357600080fd5b610234600160a060020a0360043516610a43565b34156102f257600080fd5b61026d610ac2565b341561030557600080fd5b6102b4600160a060020a0360043581169060243516604435610ac8565b341561032d57600080fd5b61026d610c73565b341561034057600080fd5b610234600160a060020a0360043516610c79565b341561035f57600080fd5b610234600160a060020a0360043516602435610cc3565b341561038157600080fd5b610234600435610d48565b341561039757600080fd5b6102b4600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650610d5595505050505050565b341561044557600080fd5b610234600435611004565b341561045b57600080fd5b61026d600160a060020a036004351661102a565b341561047a57600080fd5b6102b4611045565b341561048d57600080fd5b610234600160a060020a0360043516611055565b34156104ac57600080fd5b6102b4600160a060020a03600435811690602435166110d4565b34156104d157600080fd5b6104d9611102565b604051600160a060020a03909116815260200160405180910390f35b341561050057600080fd5b61026d611111565b341561051357600080fd5b610234600160a060020a0360043516602435611117565b341561053557600080fd5b61023460043561119c565b341561054b57600080fd5b6102b4600160a060020a03600435166024356111a6565b341561056d57600080fd5b6102b4600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506111b395505050505050565b34156105d957600080fd5b610234600160a060020a036004351660243561142b565b34156105fb57600080fd5b610234600160a060020a036004358116906024351660443561143b565b341561062357600080fd5b6102b460048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061144c95505050505050565b341561068857600080fd5b610234611462565b341561069b57600080fd5b6104d96114fb565b34156106ae57600080fd5b6102b460048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061150a95505050505050565b341561071357600080fd5b61026d600160a060020a0360043581169060243516611625565b341561073857600080fd5b610234600160a060020a0360043516611650565b341561075757600080fd5b610234600160a060020a03600435166024356117fc565b341561077957600080fd5b6102b460048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284375094965061180795505050505050565b341561082057600080fd5b6104d961181f565b600080600160a060020a0383161515610844576000915061084f565b823b90506000811191505b50919050565b60045460a060020a900460ff161561086c57600080fd5b33600160a060020a0390811660008181526005602090815260408083209487168084529490915290819020805460ff19168515151790557ff184148577730b253ecb4339c543a564af420f3d32ed12a1c62ae83d67d65fe390849051901515815260200160405180910390a35050565b60085481565b6108f833600035600160e060020a03191661182e565b151561090357600080fd5b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a450506004805474ff0000000000000000000000000000000000000000191660a060020a179055565b60095460009061099990600160a060020a0316610828565b15610a3057600954600160a060020a031663da682aeb33858560006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610a0a57600080fd5b6102c65a03f11515610a1b57600080fd5b505050604051805190501515610a3057600080fd5b610a3a8383611921565b90505b92915050565b610a5933600035600160e060020a03191661182e565b1515610a6457600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038381169190911791829055167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b60005490565b600954600090610ae090600160a060020a0316610828565b15610b7757600954600160a060020a0316634a39314985858560006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610b5157600080fd5b6102c65a03f11515610b6257600080fd5b505050604051805190501515610b7757600080fd5b610b82848484611945565b9050808015610b955750610b9583610828565b15610c6c5782600160a060020a03166040517f746f6b656e46616c6c6261636b28616464726573732c75696e743235362900008152601e01604051809103902060e060020a9004858460405160e060020a63ffffffff8516028152600160a060020a039092166004830152602482015260440160006040518083038160008761646e5a03f1925050501515610c6c5782600160a060020a031684600160a060020a03167ff36a4bd3b5c7bc32d5dd2cd0cb131eebef8437ad12227c07c4018a130f6ca2fb8460405190815260200160405180910390a35b9392505050565b60075481565b60095433600160a060020a03908116911614610c9457600080fd5b6009805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b610cd933600035600160e060020a03191661182e565b1515610ce457600080fd5b60045460a060020a900460ff1615610cfb57600080fd5b610d058282611ab9565b81600160a060020a031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a35050565b610d523382611117565b50565b6009546000908190610d6f90600160a060020a0316610828565b15610e0657600954600160a060020a0316634a39314988888860006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610de057600080fd5b6102c65a03f11515610df157600080fd5b505050604051805190501515610e0657600080fd5b610e11878787611945565b1515610e1c57600080fd5b610e2586610828565b15610f43575084600160a060020a0381166000846040518082805190602001908083835b60208310610e685780518252601f199092019160209182019101610e49565b6001836020036101000a0380198251168184511617909252505050919091019250604091505051809103902060e060020a9004908988886040518563ffffffff1660e060020a0281526004018084600160a060020a0316600160a060020a03168152602001838152602001828051906020019080838360005b83811015610ef9578082015183820152602001610ee1565b50505050905090810190601f168015610f265780820380516001836020036101000a031916815260200191505b50935050505060006040518083038185886187965a03f150505050505b85600160a060020a031687600160a060020a03167f9bfafdc2ae8835972d7b64ef3f8f307165ac22ceffde4a742c52da5487f45fd1878760405182815260406020820181815290820183818151815260200191508051906020019080838360005b83811015610fbc578082015183820152602001610fa4565b50505050905090810190601f168015610fe95780820380516001836020036101000a031916815260200191505b50935050505060405180910390a35060019695505050505050565b61101a33600035600160e060020a03191661182e565b151561102557600080fd5b600855565b600160a060020a031660009081526001602052604090205490565b60045460a060020a900460ff1681565b61106b33600035600160e060020a03191661182e565b151561107657600080fd5b6003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038381169190911791829055167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b600160a060020a03918216600090815260056020908152604080832093909416825291909152205460ff1690565b600454600160a060020a031681565b60065481565b61112d33600035600160e060020a03191661182e565b151561113857600080fd5b60045460a060020a900460ff161561114f57600080fd5b6111598282611b7f565b600082600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a35050565b610d523382610cc3565b6000610a3a338484610ac8565b60095460009081906111cd90600160a060020a0316610828565b1561126457600954600160a060020a0316634a39314987878760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b151561123e57600080fd5b6102c65a03f1151561124f57600080fd5b50505060405180519050151561126457600080fd5b61126f868686611945565b151561127a57600080fd5b61128385610828565b1561136b575083600160a060020a03811663c0ee0b8a8786866040518463ffffffff1660e060020a0281526004018084600160a060020a0316600160a060020a0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156113095780820151838201526020016112f1565b50505050905090810190601f1680156113365780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b151561135657600080fd5b6102c65a03f1151561136757600080fd5b5050505b84600160a060020a031686600160a060020a03167f9bfafdc2ae8835972d7b64ef3f8f307165ac22ceffde4a742c52da5487f45fd1868660405182815260406020820181815290820183818151815260200191508051906020019080838360005b838110156113e45780820151838201526020016113cc565b50505050905090810190601f1680156114115780820380516001836020036101000a031916815260200191505b50935050505060405180910390a350600195945050505050565b611436338383610ac8565b505050565b611446838383610ac8565b50505050565b600061145a338585856111b3565b949350505050565b61147833600035600160e060020a03191661182e565b151561148357600080fd5b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a450506004805474ff000000000000000000000000000000000000000019169055565b600354600160a060020a031681565b60006115168484610981565b151561152157600080fd5b83600160a060020a0316638f4ffcb1338530866040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156115b95780820151838201526020016115a1565b50505050905090810190601f1680156115e65780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b151561160757600080fd5b6102c65a03f1151561161857600080fd5b5060019695505050505050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b600954600090819033600160a060020a0390811691161461167057600080fd5b600160a060020a03831615156116be57600954600160a060020a039081169030163180156108fc0290604051600060405180830381858888f1935050505015156116b957600080fd5b611436565b82915081600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561171857600080fd5b6102c65a03f1151561172957600080fd5b5050506040518051600954909250600160a060020a03808516925063a9059cbb91168360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561179857600080fd5b6102c65a03f115156117a957600080fd5b50505060405180515050600954600160a060020a039081169084167ff931edb47c50b4b4104c187b5814a9aef5f709e17e2ecf9617e860cacade929c8360405190815260200160405180910390a3505050565b611436823383610ac8565b60006118163386868686610d55565b95945050505050565b600954600160a060020a031681565b600030600160a060020a031683600160a060020a0316141561185257506001610a3d565b600454600160a060020a038481169116141561187057506001610a3d565b600354600160a060020a0316151561188a57506000610a3d565b600354600160a060020a031663b700961384308560006040516020015260405160e060020a63ffffffff8616028152600160a060020a039384166004820152919092166024820152600160e060020a03199091166044820152606401602060405180830381600087803b15156118ff57600080fd5b6102c65a03f1151561191057600080fd5b505050604051805190509050610a3d565b60045460009060a060020a900460ff161561193b57600080fd5b610a3a8383611cec565b60045460009060a060020a900460ff161561195f57600080fd5b33600160a060020a031684600160a060020a0316141580156119a85750600160a060020a038085166000908152600560209081526040808320339094168352929052205460ff16155b15611a0657600160a060020a03808516600090815260026020908152604080832033909416835292905220546119de9083611d58565b600160a060020a03808616600090815260026020908152604080832033909416835292905220555b600160a060020a038416600090815260016020526040902054611a299083611d58565b600160a060020a038086166000908152600160205260408082209390935590851681522054611a589083611d68565b600160a060020a03808516600081815260016020526040908190209390935591908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b611acf33600035600160e060020a03191661182e565b1515611ada57600080fd5b60045460a060020a900460ff1615611af157600080fd5b600160a060020a038216600090815260016020526040902054611b149082611d68565b600160a060020a03831660009081526001602052604081209190915554611b3b9082611d68565b600055600160a060020a0382167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968858260405190815260200160405180910390a25050565b611b9533600035600160e060020a03191661182e565b1515611ba057600080fd5b60045460a060020a900460ff1615611bb757600080fd5b33600160a060020a031682600160a060020a031614158015611c005750600160a060020a038083166000908152600560209081526040808320339094168352929052205460ff16155b15611c5e57600160a060020a0380831660009081526002602090815260408083203390941683529290522054611c369082611d58565b600160a060020a03808416600090815260026020908152604080832033909416835292905220555b600160a060020a038216600090815260016020526040902054611c819082611d58565b600160a060020a03831660009081526001602052604081209190915554611ca89082611d58565b600055600160a060020a0382167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca58260405190815260200160405180910390a25050565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b80820382811115610a3d57600080fd5b80820182811015610a3d57600080fd00a165627a7a72305820118b20fe5eff3a76946a0734fd5a68f654d04c1d20a5e0820a534a90dff9b9820029

Deployed Bytecode

0x606060405236156101905763ffffffff60e060020a60003504166306262f1b811461023657806306fdde031461025a57806307da68f51461027f578063095ea7b31461029257806313af4035146102c857806318160ddd146102e757806323b872dd146102fa578063313ce567146103225780633cebb8231461033557806340c10f191461035457806342966c68146103765780634e2ab9331461038c5780635ac801fe1461043a57806370a082311461045057806375f12b211461046f5780637a9e5e4b146104825780637aa3295b146104a15780638da5cb5b146104c657806395d89b41146104f55780639dc29fac14610508578063a0712d681461052a578063a9059cbb14610540578063ab67aa5814610562578063b753a98c146105ce578063bb35783b146105f0578063be45fd6214610618578063be9a65551461067d578063bf7e214f14610690578063cae9ca51146106a3578063dd62ed3e14610708578063df8de3e71461072d578063f2d5d56b1461074c578063f6368f8a1461076e578063f77c479114610815575b6009546101a590600160a060020a0316610828565b1561022f57600954600160a060020a031663f48c3054343360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390911660048201526024016020604051808303818588803b151561020357600080fd5b6125ee5a03f1151561021457600080fd5b5050505060405180519050151561022a57600080fd5b610234565b600080fd5b005b341561024157600080fd5b610234600160a060020a03600435166024351515610855565b341561026557600080fd5b61026d6108dc565b60405190815260200160405180910390f35b341561028a57600080fd5b6102346108e2565b341561029d57600080fd5b6102b4600160a060020a0360043516602435610981565b604051901515815260200160405180910390f35b34156102d357600080fd5b610234600160a060020a0360043516610a43565b34156102f257600080fd5b61026d610ac2565b341561030557600080fd5b6102b4600160a060020a0360043581169060243516604435610ac8565b341561032d57600080fd5b61026d610c73565b341561034057600080fd5b610234600160a060020a0360043516610c79565b341561035f57600080fd5b610234600160a060020a0360043516602435610cc3565b341561038157600080fd5b610234600435610d48565b341561039757600080fd5b6102b4600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650610d5595505050505050565b341561044557600080fd5b610234600435611004565b341561045b57600080fd5b61026d600160a060020a036004351661102a565b341561047a57600080fd5b6102b4611045565b341561048d57600080fd5b610234600160a060020a0360043516611055565b34156104ac57600080fd5b6102b4600160a060020a03600435811690602435166110d4565b34156104d157600080fd5b6104d9611102565b604051600160a060020a03909116815260200160405180910390f35b341561050057600080fd5b61026d611111565b341561051357600080fd5b610234600160a060020a0360043516602435611117565b341561053557600080fd5b61023460043561119c565b341561054b57600080fd5b6102b4600160a060020a03600435166024356111a6565b341561056d57600080fd5b6102b4600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506111b395505050505050565b34156105d957600080fd5b610234600160a060020a036004351660243561142b565b34156105fb57600080fd5b610234600160a060020a036004358116906024351660443561143b565b341561062357600080fd5b6102b460048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061144c95505050505050565b341561068857600080fd5b610234611462565b341561069b57600080fd5b6104d96114fb565b34156106ae57600080fd5b6102b460048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061150a95505050505050565b341561071357600080fd5b61026d600160a060020a0360043581169060243516611625565b341561073857600080fd5b610234600160a060020a0360043516611650565b341561075757600080fd5b610234600160a060020a03600435166024356117fc565b341561077957600080fd5b6102b460048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284375094965061180795505050505050565b341561082057600080fd5b6104d961181f565b600080600160a060020a0383161515610844576000915061084f565b823b90506000811191505b50919050565b60045460a060020a900460ff161561086c57600080fd5b33600160a060020a0390811660008181526005602090815260408083209487168084529490915290819020805460ff19168515151790557ff184148577730b253ecb4339c543a564af420f3d32ed12a1c62ae83d67d65fe390849051901515815260200160405180910390a35050565b60085481565b6108f833600035600160e060020a03191661182e565b151561090357600080fd5b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a450506004805474ff0000000000000000000000000000000000000000191660a060020a179055565b60095460009061099990600160a060020a0316610828565b15610a3057600954600160a060020a031663da682aeb33858560006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610a0a57600080fd5b6102c65a03f11515610a1b57600080fd5b505050604051805190501515610a3057600080fd5b610a3a8383611921565b90505b92915050565b610a5933600035600160e060020a03191661182e565b1515610a6457600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038381169190911791829055167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b60005490565b600954600090610ae090600160a060020a0316610828565b15610b7757600954600160a060020a0316634a39314985858560006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610b5157600080fd5b6102c65a03f11515610b6257600080fd5b505050604051805190501515610b7757600080fd5b610b82848484611945565b9050808015610b955750610b9583610828565b15610c6c5782600160a060020a03166040517f746f6b656e46616c6c6261636b28616464726573732c75696e743235362900008152601e01604051809103902060e060020a9004858460405160e060020a63ffffffff8516028152600160a060020a039092166004830152602482015260440160006040518083038160008761646e5a03f1925050501515610c6c5782600160a060020a031684600160a060020a03167ff36a4bd3b5c7bc32d5dd2cd0cb131eebef8437ad12227c07c4018a130f6ca2fb8460405190815260200160405180910390a35b9392505050565b60075481565b60095433600160a060020a03908116911614610c9457600080fd5b6009805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b610cd933600035600160e060020a03191661182e565b1515610ce457600080fd5b60045460a060020a900460ff1615610cfb57600080fd5b610d058282611ab9565b81600160a060020a031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a35050565b610d523382611117565b50565b6009546000908190610d6f90600160a060020a0316610828565b15610e0657600954600160a060020a0316634a39314988888860006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610de057600080fd5b6102c65a03f11515610df157600080fd5b505050604051805190501515610e0657600080fd5b610e11878787611945565b1515610e1c57600080fd5b610e2586610828565b15610f43575084600160a060020a0381166000846040518082805190602001908083835b60208310610e685780518252601f199092019160209182019101610e49565b6001836020036101000a0380198251168184511617909252505050919091019250604091505051809103902060e060020a9004908988886040518563ffffffff1660e060020a0281526004018084600160a060020a0316600160a060020a03168152602001838152602001828051906020019080838360005b83811015610ef9578082015183820152602001610ee1565b50505050905090810190601f168015610f265780820380516001836020036101000a031916815260200191505b50935050505060006040518083038185886187965a03f150505050505b85600160a060020a031687600160a060020a03167f9bfafdc2ae8835972d7b64ef3f8f307165ac22ceffde4a742c52da5487f45fd1878760405182815260406020820181815290820183818151815260200191508051906020019080838360005b83811015610fbc578082015183820152602001610fa4565b50505050905090810190601f168015610fe95780820380516001836020036101000a031916815260200191505b50935050505060405180910390a35060019695505050505050565b61101a33600035600160e060020a03191661182e565b151561102557600080fd5b600855565b600160a060020a031660009081526001602052604090205490565b60045460a060020a900460ff1681565b61106b33600035600160e060020a03191661182e565b151561107657600080fd5b6003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038381169190911791829055167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b600160a060020a03918216600090815260056020908152604080832093909416825291909152205460ff1690565b600454600160a060020a031681565b60065481565b61112d33600035600160e060020a03191661182e565b151561113857600080fd5b60045460a060020a900460ff161561114f57600080fd5b6111598282611b7f565b600082600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a35050565b610d523382610cc3565b6000610a3a338484610ac8565b60095460009081906111cd90600160a060020a0316610828565b1561126457600954600160a060020a0316634a39314987878760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b151561123e57600080fd5b6102c65a03f1151561124f57600080fd5b50505060405180519050151561126457600080fd5b61126f868686611945565b151561127a57600080fd5b61128385610828565b1561136b575083600160a060020a03811663c0ee0b8a8786866040518463ffffffff1660e060020a0281526004018084600160a060020a0316600160a060020a0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156113095780820151838201526020016112f1565b50505050905090810190601f1680156113365780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b151561135657600080fd5b6102c65a03f1151561136757600080fd5b5050505b84600160a060020a031686600160a060020a03167f9bfafdc2ae8835972d7b64ef3f8f307165ac22ceffde4a742c52da5487f45fd1868660405182815260406020820181815290820183818151815260200191508051906020019080838360005b838110156113e45780820151838201526020016113cc565b50505050905090810190601f1680156114115780820380516001836020036101000a031916815260200191505b50935050505060405180910390a350600195945050505050565b611436338383610ac8565b505050565b611446838383610ac8565b50505050565b600061145a338585856111b3565b949350505050565b61147833600035600160e060020a03191661182e565b151561148357600080fd5b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a450506004805474ff000000000000000000000000000000000000000019169055565b600354600160a060020a031681565b60006115168484610981565b151561152157600080fd5b83600160a060020a0316638f4ffcb1338530866040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156115b95780820151838201526020016115a1565b50505050905090810190601f1680156115e65780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b151561160757600080fd5b6102c65a03f1151561161857600080fd5b5060019695505050505050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b600954600090819033600160a060020a0390811691161461167057600080fd5b600160a060020a03831615156116be57600954600160a060020a039081169030163180156108fc0290604051600060405180830381858888f1935050505015156116b957600080fd5b611436565b82915081600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561171857600080fd5b6102c65a03f1151561172957600080fd5b5050506040518051600954909250600160a060020a03808516925063a9059cbb91168360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561179857600080fd5b6102c65a03f115156117a957600080fd5b50505060405180515050600954600160a060020a039081169084167ff931edb47c50b4b4104c187b5814a9aef5f709e17e2ecf9617e860cacade929c8360405190815260200160405180910390a3505050565b611436823383610ac8565b60006118163386868686610d55565b95945050505050565b600954600160a060020a031681565b600030600160a060020a031683600160a060020a0316141561185257506001610a3d565b600454600160a060020a038481169116141561187057506001610a3d565b600354600160a060020a0316151561188a57506000610a3d565b600354600160a060020a031663b700961384308560006040516020015260405160e060020a63ffffffff8616028152600160a060020a039384166004820152919092166024820152600160e060020a03199091166044820152606401602060405180830381600087803b15156118ff57600080fd5b6102c65a03f1151561191057600080fd5b505050604051805190509050610a3d565b60045460009060a060020a900460ff161561193b57600080fd5b610a3a8383611cec565b60045460009060a060020a900460ff161561195f57600080fd5b33600160a060020a031684600160a060020a0316141580156119a85750600160a060020a038085166000908152600560209081526040808320339094168352929052205460ff16155b15611a0657600160a060020a03808516600090815260026020908152604080832033909416835292905220546119de9083611d58565b600160a060020a03808616600090815260026020908152604080832033909416835292905220555b600160a060020a038416600090815260016020526040902054611a299083611d58565b600160a060020a038086166000908152600160205260408082209390935590851681522054611a589083611d68565b600160a060020a03808516600081815260016020526040908190209390935591908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b611acf33600035600160e060020a03191661182e565b1515611ada57600080fd5b60045460a060020a900460ff1615611af157600080fd5b600160a060020a038216600090815260016020526040902054611b149082611d68565b600160a060020a03831660009081526001602052604081209190915554611b3b9082611d68565b600055600160a060020a0382167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968858260405190815260200160405180910390a25050565b611b9533600035600160e060020a03191661182e565b1515611ba057600080fd5b60045460a060020a900460ff1615611bb757600080fd5b33600160a060020a031682600160a060020a031614158015611c005750600160a060020a038083166000908152600560209081526040808320339094168352929052205460ff16155b15611c5e57600160a060020a0380831660009081526002602090815260408083203390941683529290522054611c369082611d58565b600160a060020a03808416600090815260026020908152604080832033909416835292905220555b600160a060020a038216600090815260016020526040902054611c819082611d58565b600160a060020a03831660009081526001602052604081209190915554611ca89082611d58565b600055600160a060020a0382167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca58260405190815260200160405180910390a25050565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b80820382811115610a3d57600080fd5b80820182811015610a3d57600080fd00a165627a7a72305820118b20fe5eff3a76946a0734fd5a68f654d04c1d20a5e0820a534a90dff9b9820029

Swarm Source

bzzr://118b20fe5eff3a76946a0734fd5a68f654d04c1d20a5e0820a534a90dff9b982

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.