ETH Price: $3,417.18 (-5.02%)
Gas: 26 Gwei

Contract

0x4CEdA7906a5Ed2179785Cd3A40A69ee8bc99C466
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

TokenTracker

Multichain Info

1 address found via
Transaction Hash
Method
Block
From
To
Value
Transfer192713022024-02-20 20:30:3527 days ago1708461035IN
AION: Old Token
0 ETH0.0009957940.30584195
Transfer192713022024-02-20 20:30:3527 days ago1708461035IN
AION: Old Token
0 ETH0.0009957940.30584195
Transfer192710982024-02-20 19:49:1127 days ago1708458551IN
AION: Old Token
0 ETH0.0009503938.46823975
Transfer192710862024-02-20 19:46:4727 days ago1708458407IN
AION: Old Token
0 ETH0.0011466946.39123161
Transfer192710792024-02-20 19:45:1127 days ago1708458311IN
AION: Old Token
0 ETH0.0010981644.42773523
Transfer192710672024-02-20 19:42:4727 days ago1708458167IN
AION: Old Token
0 ETH0.0010285241.61019771
Transfer190143882024-01-15 19:31:5963 days ago1705347119IN
AION: Old Token
0 ETH0.0007923532.05574246
Transfer190143752024-01-15 19:29:2363 days ago1705346963IN
AION: Old Token
0 ETH0.0008131732.89813149
Approve189489422024-01-06 15:07:1172 days ago1704553631IN
AION: Old Token
0 ETH0.0007126329.62402883
Approve187435792023-12-08 19:19:35101 days ago1702063175IN
AION: Old Token
0 ETH0.0009684240.27720107
Transfer185526932023-11-12 1:55:47128 days ago1699754147IN
AION: Old Token
0 ETH0.0004700919
Approve185292642023-11-08 19:16:11131 days ago1699470971IN
AION: Old Token
0 ETH0.0014134958.75869533
Transfer184733202023-10-31 23:15:11139 days ago1698794111IN
AION: Old Token
0 ETH0.0005945724.01936955
Transfer184583302023-10-29 20:50:35141 days ago1698612635IN
AION: Old Token
0 ETH0.0005132320.7638004
Approve178089852023-07-30 23:01:35232 days ago1690758095IN
AION: Old Token
0 ETH0.0004707819.57043199
Transfer165469782023-02-03 8:11:23409 days ago1675411883IN
AION: Old Token
0 ETH0.0005117720.68458507
Transfer165469642023-02-03 8:08:35409 days ago1675411715IN
AION: Old Token
0 ETH0.000496820.0795505
Transfer164918842023-01-26 15:28:11417 days ago1674746891IN
AION: Old Token
0 ETH0.000643626
Transfer164843042023-01-25 14:02:59418 days ago1674655379IN
AION: Old Token
0 ETH0.0004941819.9637824
Transfer164842182023-01-25 13:45:35418 days ago1674654335IN
AION: Old Token
0 ETH0.0003850615.55548888
Transfer164842122023-01-25 13:44:23418 days ago1674654263IN
AION: Old Token
0 ETH0.0003997116.14736539
Transfer164841682023-01-25 13:35:23418 days ago1674653723IN
AION: Old Token
0 ETH0.0004157416.79518212
Transfer164841622023-01-25 13:34:11418 days ago1674653651IN
AION: Old Token
0 ETH0.0004265217.23054107
Transfer164631242023-01-22 15:05:23421 days ago1674399923IN
AION: Old Token
0 ETH0.0004770919.27357995
Transfer164279672023-01-17 17:18:35426 days ago1673975915IN
AION: Old Token
0 ETH0.0007927332.02435254
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:
Token

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-10-11
*/

pragma solidity >=0.4.10;

// from Zeppelin
contract SafeMath {
    function safeMul(uint a, uint b) internal returns (uint) {
        uint c = a * b;
        require(a == 0 || c / a == b);
        return c;
    }

    function safeSub(uint a, uint b) internal returns (uint) {
        require(b <= a);
        return a - b;
    }

    function safeAdd(uint a, uint b) internal returns (uint) {
        uint c = a + b;
        require(c>=a && c>=b);
        return c;
    }
}

contract Owned {
    address public owner;
    address newOwner;

    function Owned() {
        owner = msg.sender;
    }

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

    function changeOwner(address _newOwner) onlyOwner {
        newOwner = _newOwner;
    }

    function acceptOwnership() {
        if (msg.sender == newOwner) {
            owner = newOwner;
        }
    }
}

contract IToken {
    function transfer(address _to, uint _value) returns (bool);
    function balanceOf(address owner) returns(uint);
}

// In case someone accidentally sends token to one of these contracts,
// add a way to get them back out.
contract TokenReceivable is Owned {
    function claimTokens(address _token, address _to) onlyOwner returns (bool) {
        IToken token = IToken(_token);
        return token.transfer(_to, token.balanceOf(this));
    }
}

contract EventDefinitions {
    event Transfer(address indexed from, address indexed to, uint value);
    event Approval(address indexed owner, address indexed spender, uint value);
    event Burn(address indexed from, bytes32 indexed to, uint value);
    event Claimed(address indexed claimer, uint value);
}

contract Pausable is Owned {
    bool public paused;

    function pause() onlyOwner {
        paused = true;
    }

    function unpause() onlyOwner {
        paused = false;
    }

    modifier notPaused() {
        require(!paused);
        _;
    }
}

contract Finalizable is Owned {
    bool public finalized;

    function finalize() onlyOwner {
        finalized = true;
    }

    modifier notFinalized() {
        require(!finalized);
        _;
    }
}

contract Ledger is Owned, SafeMath, Finalizable {
    Controller public controller;
    mapping(address => uint) public balanceOf;
    mapping (address => mapping (address => uint)) public allowance;
    uint public totalSupply;
    uint public mintingNonce;
    bool public mintingStopped;

    /**
     * Used for updating the contract with proofs. Note that the logic
     * for guarding against unwanted actions happens in the controller. We only
     * specify onlyController here.
     * @notice: not yet used
     */
    mapping(uint256 => bytes32) public proofs;

    /**
     * If bridge delivers currency back from the other network, it may be that we
     * want to lock it until the user is able to "claim" it. This mapping would store the
     * state of the unclaimed currency.
     * @notice: not yet used
     */
    mapping(address => uint256) public locked;

    /**
     * As a precautionary measure, we may want to include a structure to store necessary
     * data should we find that we require additional information.
     * @notice: not yet used
     */
    mapping(bytes32 => bytes32) public metadata;

    /**
     * Set by the controller to indicate where the transfers should go to on a burn
     */
    address public burnAddress;

    /**
     * Mapping allowing us to identify the bridge nodes, in the current setup
     * manipulation of this mapping is only accessible by the parameter.
     */
    mapping(address => bool) public bridgeNodes;

    // functions below this line are onlyOwner

    function Ledger() {
    }

    function setController(address _controller) onlyOwner notFinalized {
        controller = Controller(_controller);
    }

    /**
     * @dev         To be called once minting is complete, disables minting.  
     */
    function stopMinting() onlyOwner {
        mintingStopped = true;
    }

    /**
     * @dev         Used to mint a batch of currency at once.
     * 
     * @notice      This gives us a maximum of 2^96 tokens per user.
     * @notice      Expected packed structure is [ADDR(20) | VALUE(12)].
     *
     * @param       nonce   The minting nonce, an incorrect nonce is rejected.
     * @param       bits    An array of packed bytes of address, value mappings.  
     *
     */
    function multiMint(uint nonce, uint256[] bits) onlyOwner {
        require(!mintingStopped);
        if (nonce != mintingNonce) return;
        mintingNonce += 1;
        uint256 lomask = (1 << 96) - 1;
        uint created = 0;
        for (uint i=0; i<bits.length; i++) {
            address a = address(bits[i]>>96);
            uint value = bits[i]&lomask;
            balanceOf[a] = balanceOf[a] + value;
            controller.ledgerTransfer(0, a, value);
            created += value;
        }
        totalSupply += created;
    }

    // functions below this line are onlyController

    modifier onlyController() {
        require(msg.sender == address(controller));
        _;
    }

    function transfer(address _from, address _to, uint _value) onlyController returns (bool success) {
        if (balanceOf[_from] < _value) return false;

        balanceOf[_from] = safeSub(balanceOf[_from], _value);
        balanceOf[_to] = safeAdd(balanceOf[_to], _value);
        return true;
    }

    function transferFrom(address _spender, address _from, address _to, uint _value) onlyController returns (bool success) {
        if (balanceOf[_from] < _value) return false;

        var allowed = allowance[_from][_spender];
        if (allowed < _value) return false;

        balanceOf[_to] = safeAdd(balanceOf[_to], _value);
        balanceOf[_from] = safeSub(balanceOf[_from], _value);
        allowance[_from][_spender] = safeSub(allowed, _value);
        return true;
    }

    function approve(address _owner, address _spender, uint _value) onlyController returns (bool success) {
        // require user to set to zero before resetting to nonzero
        if ((_value != 0) && (allowance[_owner][_spender] != 0)) {
            return false;
        }

        allowance[_owner][_spender] = _value;
        return true;
    }

    function increaseApproval (address _owner, address _spender, uint _addedValue) onlyController returns (bool success) {
        uint oldValue = allowance[_owner][_spender];
        allowance[_owner][_spender] = safeAdd(oldValue, _addedValue);
        return true;
    }

    function decreaseApproval (address _owner, address _spender, uint _subtractedValue) onlyController returns (bool success) {
        uint oldValue = allowance[_owner][_spender];
        if (_subtractedValue > oldValue) {
            allowance[_owner][_spender] = 0;
        } else {
            allowance[_owner][_spender] = safeSub(oldValue, _subtractedValue);
        }
        return true;
    }

    function setProof(uint256 _key, bytes32 _proof) onlyController {
        proofs[_key] = _proof;
    }

    function setLocked(address _key, uint256 _value) onlyController {
        locked[_key] = _value;
    }

    function setMetadata(bytes32 _key, bytes32 _value) onlyController {
        metadata[_key] = _value;
    }

    /**
     * Burn related functionality
     */

    /**
     * @dev        sets the burn address to the new value
     *
     * @param      _address  The address
     *
     */
    function setBurnAddress(address _address) onlyController {
        burnAddress = _address;
    }

    function setBridgeNode(address _address, bool enabled) onlyController {
        bridgeNodes[_address] = enabled;
    }
}

contract ControllerEventDefinitions {
    /**
     * An internal burn event, emitted by the controller contract
     * which the bridges could be listening to.
     */
    event ControllerBurn(address indexed from, bytes32 indexed to, uint value);
}

/**
 * @title Controller for business logic between the ERC20 API and State
 *
 * Controller is responsible for the business logic that sits in between
 * the Ledger (model) and the Token (view). Presently, adherence to this model
 * is not strict, but we expect future functionality (Burning, Claiming) to adhere
 * to this model more closely.
 * 
 * The controller must be linked to a Token and Ledger to become functional.
 * 
 */
contract Controller is Owned, Finalizable, ControllerEventDefinitions {
    Ledger public ledger;
    Token public token;
    address public burnAddress;

    function Controller() {
    }

    // functions below this line are onlyOwner


    function setToken(address _token) onlyOwner {
        token = Token(_token);
    }

    function setLedger(address _ledger) onlyOwner {
        ledger = Ledger(_ledger);
    }

    /**
     * @dev         Sets the burn address burn values get moved to. Only call
     *              after token and ledger contracts have been hooked up. Ensures
     *              that all three values are set atomically.
     *             
     * @notice      New Functionality
     *
     * @param       _address    desired address
     *
     */
    function setBurnAddress(address _address) onlyOwner {
        burnAddress = _address;
        ledger.setBurnAddress(_address);
        token.setBurnAddress(_address);
    }

    modifier onlyToken() {
        require(msg.sender == address(token));
        _;
    }

    modifier onlyLedger() {
        require(msg.sender == address(ledger));
        _;
    }

    function totalSupply() constant returns (uint) {
        return ledger.totalSupply();
    }

    function balanceOf(address _a) constant returns (uint) {
        return ledger.balanceOf(_a);
    }

    function allowance(address _owner, address _spender) constant returns (uint) {
        return ledger.allowance(_owner, _spender);
    }

    // functions below this line are onlyLedger

    // let the ledger send transfer events (the most obvious case
    // is when we mint directly to the ledger and need the Transfer()
    // events to appear in the token)
    function ledgerTransfer(address from, address to, uint val) onlyLedger {
        token.controllerTransfer(from, to, val);
    }

    // functions below this line are onlyToken

    function transfer(address _from, address _to, uint _value) onlyToken returns (bool success) {
        return ledger.transfer(_from, _to, _value);
    }

    function transferFrom(address _spender, address _from, address _to, uint _value) onlyToken returns (bool success) {
        return ledger.transferFrom(_spender, _from, _to, _value);
    }

    function approve(address _owner, address _spender, uint _value) onlyToken returns (bool success) {
        return ledger.approve(_owner, _spender, _value);
    }

    function increaseApproval (address _owner, address _spender, uint _addedValue) onlyToken returns (bool success) {
        return ledger.increaseApproval(_owner, _spender, _addedValue);
    }

    function decreaseApproval (address _owner, address _spender, uint _subtractedValue) onlyToken returns (bool success) {
        return ledger.decreaseApproval(_owner, _spender, _subtractedValue);
    }

    /**
     * End Original Contract
     * Below is new functionality
     */

    /**
     * @dev        Enables burning on the token contract
     */
    function enableBurning() onlyOwner {
        token.enableBurning();
    }

    /**
     * @dev        Disables burning on the token contract
     */
    function disableBurning() onlyOwner {
        token.disableBurning();
    }

    // public functions

    /**
     * @dev         
     *
     * @param       _from       account the value is burned from
     * @param       _to         the address receiving the value
     * @param       _amount     the value amount
     * 
     * @return      success     operation successful or not.
     */ 
    function burn(address _from, bytes32 _to, uint _amount) onlyToken returns (bool success) {
        if (ledger.transfer(_from, burnAddress, _amount)) {
            ControllerBurn(_from, _to, _amount);
            token.controllerBurn(_from, _to, _amount);
            return true;
        }
        return false;
    }

    /**
     * @dev         Implementation for claim mechanism. Note that this mechanism has not yet
     *              been implemented. This function is only here for future expansion capabilities.
     *              Presently, just returns false to indicate failure.
     *              
     * @notice      Only one of claimByProof() or claim() will potentially be activated in the future.
     *              Depending on the functionality required and route selected. 
     *
     * @param       _claimer    The individual claiming the tokens (also the recipient of said tokens).
     * @param       data        The input data required to release the tokens.
     * @param       success     The proofs associated with the data, to indicate the legitimacy of said data.
     * @param       number      The block number the proofs and data correspond to.
     *
     * @return      success     operation successful or not.
     * 
     */
    function claimByProof(address _claimer, bytes32[] data, bytes32[] proofs, uint256 number)
        onlyToken
        returns (bool success) {
        return false;
    }

    /**
     * @dev         Implementation for an alternative claim mechanism, in which the participant
     *              is not required to confirm through proofs. Note that this mechanism has not
     *              yet been implemented.
     *              
     * @notice      Only one of claimByProof() or claim() will potentially be activated in the future.
     *              Depending on the functionality required and route selected.
     * 
     * @param       _claimer    The individual claiming the tokens (also the recipient of said tokens).
     * 
     * @return      success     operation successful or not.
     */
    function claim(address _claimer) onlyToken returns (bool success) {
        return false;
    }
}

contract Token is Finalizable, TokenReceivable, SafeMath, EventDefinitions, Pausable {
    // Set these appropriately before you deploy
    string constant public name = "AION";
    uint8 constant public decimals = 8;
    string constant public symbol = "AION";
    Controller public controller;
    string public motd;
    event Motd(string message);

    address public burnAddress; //@ATTENTION: set this to a correct value
    bool public burnable = false;

    // functions below this line are onlyOwner

    // set "message of the day"
    function setMotd(string _m) onlyOwner {
        motd = _m;
        Motd(_m);
    }

    function setController(address _c) onlyOwner notFinalized {
        controller = Controller(_c);
    }

    // functions below this line are public

    function balanceOf(address a) constant returns (uint) {
        return controller.balanceOf(a);
    }

    function totalSupply() constant returns (uint) {
        return controller.totalSupply();
    }

    function allowance(address _owner, address _spender) constant returns (uint) {
        return controller.allowance(_owner, _spender);
    }

    function transfer(address _to, uint _value) notPaused returns (bool success) {
        if (controller.transfer(msg.sender, _to, _value)) {
            Transfer(msg.sender, _to, _value);
            return true;
        }
        return false;
    }

    function transferFrom(address _from, address _to, uint _value) notPaused returns (bool success) {
        if (controller.transferFrom(msg.sender, _from, _to, _value)) {
            Transfer(_from, _to, _value);
            return true;
        }
        return false;
    }

    function approve(address _spender, uint _value) notPaused returns (bool success) {
        // promote safe user behavior
        if (controller.approve(msg.sender, _spender, _value)) {
            Approval(msg.sender, _spender, _value);
            return true;
        }
        return false;
    }

    function increaseApproval (address _spender, uint _addedValue) notPaused returns (bool success) {
        if (controller.increaseApproval(msg.sender, _spender, _addedValue)) {
            uint newval = controller.allowance(msg.sender, _spender);
            Approval(msg.sender, _spender, newval);
            return true;
        }
        return false;
    }

    function decreaseApproval (address _spender, uint _subtractedValue) notPaused returns (bool success) {
        if (controller.decreaseApproval(msg.sender, _spender, _subtractedValue)) {
            uint newval = controller.allowance(msg.sender, _spender);
            Approval(msg.sender, _spender, newval);
            return true;
        }
        return false;
    }

    // modifier onlyPayloadSize(uint numwords) {
    //     assert(msg.data.length >= numwords * 32 + 4);
    //     _;
    // }

    // functions below this line are onlyController

    modifier onlyController() {
        assert(msg.sender == address(controller));
        _;
    }

    // In the future, when the controller supports multiple token
    // heads, allow the controller to reconstitute the transfer and
    // approval history.

    function controllerTransfer(address _from, address _to, uint _value) onlyController {
        Transfer(_from, _to, _value);
    }

    function controllerApprove(address _owner, address _spender, uint _value) onlyController {
        Approval(_owner, _spender, _value);
    }

    /**
     * @dev        Burn event possibly called by the controller on a burn. This is
     *             the public facing event that anyone can track, the bridges listen
     *             to an alternative event emitted by the controller.
     *
     * @param      _from   address that coins are burned from
     * @param      _to     address (on other network) that coins are received by
     * @param      _value  amount of value to be burned
     *
     * @return     { description_of_the_return_value }
     */
    function controllerBurn(address _from, bytes32 _to, uint256 _value) onlyController {
        Burn(_from, _to, _value);
    }

    function controllerClaim(address _claimer, uint256 _value) onlyController {
        Claimed(_claimer, _value);
    }

    /**
     * @dev        Sets the burn address to a new value
     *
     * @param      _address  The address
     *
     */
    function setBurnAddress(address _address) onlyController {
        burnAddress = _address;
    }

    /**
     * @dev         Enables burning through burnable bool
     *
     */
    function enableBurning() onlyController {
        burnable = true;
    }

    /**
     * @dev         Disables burning through burnable bool
     *
     */
    function disableBurning() onlyController {
        burnable = false;
    }

    /**
     * @dev         Indicates that burning is enabled
     */
    modifier burnEnabled() {
        require(burnable == true);
        _;
    }

    /**
     * @dev         burn function, changed from original implementation. Public facing API
     *              indicating who the token holder wants to burn currency to and the amount.
     *
     * @param       _amount  The amount
     *
     */
    function burn(bytes32 _to, uint _amount) notPaused burnEnabled returns (bool success) {
        return controller.burn(msg.sender, _to, _amount);
    }

    /**
     * @dev         claim (quantumReceive) allows the user to "prove" some an ICT to the contract
     *              thereby thereby releasing the tokens into their account
     * 
     */
    function claimByProof(bytes32[] data, bytes32[] proofs, uint256 number) notPaused burnEnabled returns (bool success) {
        return controller.claimByProof(msg.sender, data, proofs, number);
    }

    /**
     * @dev         Simplified version of claim, just requires user to call to claim.
     *              No proof is needed, which version is chosen depends on our bridging model.
     *
     * @return      
     */
    function claim() notPaused burnEnabled returns (bool success) {
        return controller.claim(msg.sender);
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_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":"data","type":"bytes32[]"},{"name":"proofs","type":"bytes32[]"},{"name":"number","type":"uint256"}],"name":"claimByProof","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"setBurnAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"finalize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"claim","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"motd","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_m","type":"string"}],"name":"setMotd","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"}],"name":"claimTokens","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"a","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"burnAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"enableBurning","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"bytes32"},{"name":"_amount","type":"uint256"}],"name":"burn","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_claimer","type":"address"},{"name":"_value","type":"uint256"}],"name":"controllerClaim","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"controllerApprove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_c","type":"address"}],"name":"setController","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"disableBurning","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"controllerTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"burnable","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"changeOwner","outputs":[],"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":true,"inputs":[],"name":"finalized","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"success","type":"bool"}],"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":"_from","type":"address"},{"name":"_to","type":"bytes32"},{"name":"_value","type":"uint256"}],"name":"controllerBurn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"controller","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":false,"name":"message","type":"string"}],"name":"Motd","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"bytes32"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"claimer","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Claimed","type":"event"}]

60606040526004805460a060020a60ff021916905560008054600160a060020a033316600160a060020a0319909116179055611746806100406000396000f300606060405236156101a65763ffffffff60e060020a60003504166306fdde0381146101ab578063095ea7b31461023557806318160ddd1461026b57806323b872dd14610290578063313ce567146102b8578063384d0b12146102e15780633f4ba83a146103725780634b0e7216146103875780634bb278f3146103a65780634e71d92d146103b95780635aab4ac8146103cc5780635c975abb146103df5780635fe59b9d146103f2578063661884631461044357806369ffa08a1461046557806370a082311461048a57806370d5ae05146104a95780637581a8e6146104d857806379ba5097146104eb5780637a408454146104fe57806380906b13146105175780638456cb59146105395780638da5cb5b1461054c5780638e339b661461055f57806392eefe9b1461058757806395d89b41146101ab57806398603cca146105a65780639b504387146105b9578063a07c7ce4146105e1578063a6f9dae1146105f4578063a9059cbb14610613578063b3f05b9714610635578063d73dd62314610648578063dd62ed3e1461066a578063eb81e95a1461068f578063f77c4791146106b4575b600080fd5b34156101b657600080fd5b6101be6106c7565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101fa5780820151838201526020016101e2565b50505050905090810190601f1680156102275780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561024057600080fd5b610257600160a060020a03600435166024356106fe565b604051901515815260200160405180910390f35b341561027657600080fd5b61027e6107fd565b60405190815260200160405180910390f35b341561029b57600080fd5b610257600160a060020a0360043581169060243516604435610867565b34156102c357600080fd5b6102cb61096e565b60405160ff909116815260200160405180910390f35b34156102ec57600080fd5b610257600460248135818101908301358060208181020160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843750949650509335935061097392505050565b341561037d57600080fd5b610385610ac3565b005b341561039257600080fd5b610385600160a060020a0360043516610aff565b34156103b157600080fd5b610385610b46565b34156103c457600080fd5b610257610b87565b34156103d757600080fd5b6101be610c15565b34156103ea57600080fd5b610257610cb3565b34156103fd57600080fd5b61038560046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610cc395505050505050565b341561044e57600080fd5b610257600160a060020a0360043516602435610d8d565b341561047057600080fd5b610257600160a060020a0360043581169060243516610f0f565b341561049557600080fd5b61027e600160a060020a0360043516610ff4565b34156104b457600080fd5b6104bc61106f565b604051600160a060020a03909116815260200160405180910390f35b34156104e357600080fd5b61038561107e565b34156104f657600080fd5b6103856110bc565b341561050957600080fd5b610257600435602435611105565b341561052257600080fd5b610385600160a060020a03600435166024356111c3565b341561054457600080fd5b61038561121c565b341561055757600080fd5b6104bc61125e565b341561056a57600080fd5b610385600160a060020a036004358116906024351660443561126d565b341561059257600080fd5b610385600160a060020a03600435166112d1565b34156105b157600080fd5b610385611332565b34156105c457600080fd5b610385600160a060020a036004358116906024351660443561136a565b34156105ec57600080fd5b6102576113ce565b34156105ff57600080fd5b610385600160a060020a03600435166113de565b341561061e57600080fd5b610257600160a060020a0360043516602435611428565b341561064057600080fd5b61025761151d565b341561065357600080fd5b610257600160a060020a036004351660243561152d565b341561067557600080fd5b61027e600160a060020a03600435811690602435166115b5565b341561069a57600080fd5b610385600160a060020a0360043516602435604435611618565b34156106bf57600080fd5b6104bc611673565b60408051908101604052600481527f41494f4e00000000000000000000000000000000000000000000000000000000602082015281565b60015460009060a860020a900460ff161561071857600080fd5b600254600160a060020a031663e1f21c6733858560006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b151561078457600080fd5b6102c65a03f1151561079557600080fd5b50505060405180519050156107f35782600160a060020a031633600160a060020a03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405190815260200160405180910390a35060016107f7565b5060005b92915050565b600254600090600160a060020a03166318160ddd82604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561084757600080fd5b6102c65a03f1151561085857600080fd5b50505060405180519150505b90565b60015460009060a860020a900460ff161561088157600080fd5b600254600160a060020a03166315dacbea3386868660006040516020015260405160e060020a63ffffffff8716028152600160a060020a0394851660048201529284166024840152921660448201526064810191909152608401602060405180830381600087803b15156108f457600080fd5b6102c65a03f1151561090557600080fd5b50505060405180519050156109635782600160a060020a031684600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a3506001610967565b5060005b9392505050565b600881565b60015460009060a860020a900460ff161561098d57600080fd5b60045460a060020a900460ff1615156001146109a857600080fd5b600254600160a060020a0316635513a2ac338686866000604051602001526040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a031681526020018060200180602001848152602001838103835286818151815260200191508051906020019060200280838360005b83811015610a3a578082015183820152602001610a22565b50505050905001838103825285818151815260200191508051906020019060200280838360005b83811015610a79578082015183820152602001610a61565b505050509050019650505050505050602060405180830381600087803b1515610aa157600080fd5b6102c65a03f11515610ab257600080fd5b505050604051805195945050505050565b60005433600160a060020a03908116911614610ade57600080fd5b6001805475ff00000000000000000000000000000000000000000019169055565b60025433600160a060020a03908116911614610b1757fe5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60005433600160a060020a03908116911614610b6157600080fd5b6001805474ff0000000000000000000000000000000000000000191660a060020a179055565b60015460009060a860020a900460ff1615610ba157600080fd5b60045460a060020a900460ff161515600114610bbc57600080fd5b600254600160a060020a0316631e83409a3360006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561084757600080fd5b60038054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cab5780601f10610c8057610100808354040283529160200191610cab565b820191906000526020600020905b815481529060010190602001808311610c8e57829003601f168201915b505050505081565b60015460a860020a900460ff1681565b60005433600160a060020a03908116911614610cde57600080fd5b6003818051610cf1929160200190611682565b507f6e7666d68b6b7c619b2fe5a2c3dd0564bf3e02b0508b217d7a28ce5805583eab8160405160208082528190810183818151815260200191508051906020019080838360005b83811015610d50578082015183820152602001610d38565b50505050905090810190601f168015610d7d5780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600154600090819060a860020a900460ff1615610da957600080fd5b600254600160a060020a031663f019c26733868660006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610e1557600080fd5b6102c65a03f11515610e2657600080fd5b5050506040518051905015610f0357600254600160a060020a031663dd62ed3e338660006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b1515610e9657600080fd5b6102c65a03f11515610ea757600080fd5b50505060405180519050905083600160a060020a031633600160a060020a03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405190815260200160405180910390a360019150610f08565b600091505b5092915050565b60008054819033600160a060020a03908116911614610f2d57600080fd5b5082600160a060020a03811663a9059cbb84826370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515610f8d57600080fd5b6102c65a03f11515610f9e57600080fd5b5050506040518051905060006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610aa157600080fd5b600254600090600160a060020a03166370a0823183836040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561104f57600080fd5b6102c65a03f1151561106057600080fd5b50505060405180519392505050565b600454600160a060020a031681565b60025433600160a060020a0390811691161461109657fe5b6004805474ff0000000000000000000000000000000000000000191660a060020a179055565b60015433600160a060020a0390811691161415611103576001546000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039092169190911790555b565b60015460009060a860020a900460ff161561111f57600080fd5b60045460a060020a900460ff16151560011461113a57600080fd5b600254600160a060020a0316634460fb6d33858560006040516020015260405160e060020a63ffffffff8616028152600160a060020a03909316600484015260248301919091526044820152606401602060405180830381600087803b15156111a257600080fd5b6102c65a03f115156111b357600080fd5b5050506040518051949350505050565b60025433600160a060020a039081169116146111db57fe5b81600160a060020a03167fd8138f8a3f377c5259ca548e70e4c2de94f129f5a11036a15b69513cba2b426a8260405190815260200160405180910390a25050565b60005433600160a060020a0390811691161461123757600080fd5b6001805475ff000000000000000000000000000000000000000000191660a860020a179055565b600054600160a060020a031681565b60025433600160a060020a0390811691161461128557fe5b81600160a060020a031683600160a060020a03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405190815260200160405180910390a3505050565b60005433600160a060020a039081169116146112ec57600080fd5b60015460a060020a900460ff161561130357600080fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60025433600160a060020a0390811691161461134a57fe5b6004805474ff000000000000000000000000000000000000000019169055565b60025433600160a060020a0390811691161461138257fe5b81600160a060020a031683600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a3505050565b60045460a060020a900460ff1681565b60005433600160a060020a039081169116146113f957600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60015460009060a860020a900460ff161561144257600080fd5b600254600160a060020a031663beabacc833858560006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156114ae57600080fd5b6102c65a03f115156114bf57600080fd5b50505060405180519050156107f35782600160a060020a031633600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a35060016107f7565b60015460a060020a900460ff1681565b600154600090819060a860020a900460ff161561154957600080fd5b600254600160a060020a031663bcdd612133868660006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610e1557600080fd5b600254600090600160a060020a031663dd62ed3e8484846040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b15156111a257600080fd5b60025433600160a060020a0390811691161461163057fe5b81600160a060020a0384167fc3599666213715dfabdf658c56a97b9adfad2cd9689690c70c79b20bc61940c98360405190815260200160405180910390a3505050565b600254600160a060020a031681565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106116c357805160ff19168380011785556116f0565b828001600101855582156116f0579182015b828111156116f05782518255916020019190600101906116d5565b506116fc929150611700565b5090565b61086491905b808211156116fc57600081556001016117065600a165627a7a7230582018201e55ea53905fd7e862bf4ae6c4216d3a320fa385b80bcc301cbd25c770820029

Deployed Bytecode

0x606060405236156101a65763ffffffff60e060020a60003504166306fdde0381146101ab578063095ea7b31461023557806318160ddd1461026b57806323b872dd14610290578063313ce567146102b8578063384d0b12146102e15780633f4ba83a146103725780634b0e7216146103875780634bb278f3146103a65780634e71d92d146103b95780635aab4ac8146103cc5780635c975abb146103df5780635fe59b9d146103f2578063661884631461044357806369ffa08a1461046557806370a082311461048a57806370d5ae05146104a95780637581a8e6146104d857806379ba5097146104eb5780637a408454146104fe57806380906b13146105175780638456cb59146105395780638da5cb5b1461054c5780638e339b661461055f57806392eefe9b1461058757806395d89b41146101ab57806398603cca146105a65780639b504387146105b9578063a07c7ce4146105e1578063a6f9dae1146105f4578063a9059cbb14610613578063b3f05b9714610635578063d73dd62314610648578063dd62ed3e1461066a578063eb81e95a1461068f578063f77c4791146106b4575b600080fd5b34156101b657600080fd5b6101be6106c7565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101fa5780820151838201526020016101e2565b50505050905090810190601f1680156102275780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561024057600080fd5b610257600160a060020a03600435166024356106fe565b604051901515815260200160405180910390f35b341561027657600080fd5b61027e6107fd565b60405190815260200160405180910390f35b341561029b57600080fd5b610257600160a060020a0360043581169060243516604435610867565b34156102c357600080fd5b6102cb61096e565b60405160ff909116815260200160405180910390f35b34156102ec57600080fd5b610257600460248135818101908301358060208181020160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843750949650509335935061097392505050565b341561037d57600080fd5b610385610ac3565b005b341561039257600080fd5b610385600160a060020a0360043516610aff565b34156103b157600080fd5b610385610b46565b34156103c457600080fd5b610257610b87565b34156103d757600080fd5b6101be610c15565b34156103ea57600080fd5b610257610cb3565b34156103fd57600080fd5b61038560046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610cc395505050505050565b341561044e57600080fd5b610257600160a060020a0360043516602435610d8d565b341561047057600080fd5b610257600160a060020a0360043581169060243516610f0f565b341561049557600080fd5b61027e600160a060020a0360043516610ff4565b34156104b457600080fd5b6104bc61106f565b604051600160a060020a03909116815260200160405180910390f35b34156104e357600080fd5b61038561107e565b34156104f657600080fd5b6103856110bc565b341561050957600080fd5b610257600435602435611105565b341561052257600080fd5b610385600160a060020a03600435166024356111c3565b341561054457600080fd5b61038561121c565b341561055757600080fd5b6104bc61125e565b341561056a57600080fd5b610385600160a060020a036004358116906024351660443561126d565b341561059257600080fd5b610385600160a060020a03600435166112d1565b34156105b157600080fd5b610385611332565b34156105c457600080fd5b610385600160a060020a036004358116906024351660443561136a565b34156105ec57600080fd5b6102576113ce565b34156105ff57600080fd5b610385600160a060020a03600435166113de565b341561061e57600080fd5b610257600160a060020a0360043516602435611428565b341561064057600080fd5b61025761151d565b341561065357600080fd5b610257600160a060020a036004351660243561152d565b341561067557600080fd5b61027e600160a060020a03600435811690602435166115b5565b341561069a57600080fd5b610385600160a060020a0360043516602435604435611618565b34156106bf57600080fd5b6104bc611673565b60408051908101604052600481527f41494f4e00000000000000000000000000000000000000000000000000000000602082015281565b60015460009060a860020a900460ff161561071857600080fd5b600254600160a060020a031663e1f21c6733858560006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b151561078457600080fd5b6102c65a03f1151561079557600080fd5b50505060405180519050156107f35782600160a060020a031633600160a060020a03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405190815260200160405180910390a35060016107f7565b5060005b92915050565b600254600090600160a060020a03166318160ddd82604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561084757600080fd5b6102c65a03f1151561085857600080fd5b50505060405180519150505b90565b60015460009060a860020a900460ff161561088157600080fd5b600254600160a060020a03166315dacbea3386868660006040516020015260405160e060020a63ffffffff8716028152600160a060020a0394851660048201529284166024840152921660448201526064810191909152608401602060405180830381600087803b15156108f457600080fd5b6102c65a03f1151561090557600080fd5b50505060405180519050156109635782600160a060020a031684600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a3506001610967565b5060005b9392505050565b600881565b60015460009060a860020a900460ff161561098d57600080fd5b60045460a060020a900460ff1615156001146109a857600080fd5b600254600160a060020a0316635513a2ac338686866000604051602001526040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a031681526020018060200180602001848152602001838103835286818151815260200191508051906020019060200280838360005b83811015610a3a578082015183820152602001610a22565b50505050905001838103825285818151815260200191508051906020019060200280838360005b83811015610a79578082015183820152602001610a61565b505050509050019650505050505050602060405180830381600087803b1515610aa157600080fd5b6102c65a03f11515610ab257600080fd5b505050604051805195945050505050565b60005433600160a060020a03908116911614610ade57600080fd5b6001805475ff00000000000000000000000000000000000000000019169055565b60025433600160a060020a03908116911614610b1757fe5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60005433600160a060020a03908116911614610b6157600080fd5b6001805474ff0000000000000000000000000000000000000000191660a060020a179055565b60015460009060a860020a900460ff1615610ba157600080fd5b60045460a060020a900460ff161515600114610bbc57600080fd5b600254600160a060020a0316631e83409a3360006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561084757600080fd5b60038054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cab5780601f10610c8057610100808354040283529160200191610cab565b820191906000526020600020905b815481529060010190602001808311610c8e57829003601f168201915b505050505081565b60015460a860020a900460ff1681565b60005433600160a060020a03908116911614610cde57600080fd5b6003818051610cf1929160200190611682565b507f6e7666d68b6b7c619b2fe5a2c3dd0564bf3e02b0508b217d7a28ce5805583eab8160405160208082528190810183818151815260200191508051906020019080838360005b83811015610d50578082015183820152602001610d38565b50505050905090810190601f168015610d7d5780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600154600090819060a860020a900460ff1615610da957600080fd5b600254600160a060020a031663f019c26733868660006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610e1557600080fd5b6102c65a03f11515610e2657600080fd5b5050506040518051905015610f0357600254600160a060020a031663dd62ed3e338660006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b1515610e9657600080fd5b6102c65a03f11515610ea757600080fd5b50505060405180519050905083600160a060020a031633600160a060020a03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405190815260200160405180910390a360019150610f08565b600091505b5092915050565b60008054819033600160a060020a03908116911614610f2d57600080fd5b5082600160a060020a03811663a9059cbb84826370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515610f8d57600080fd5b6102c65a03f11515610f9e57600080fd5b5050506040518051905060006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610aa157600080fd5b600254600090600160a060020a03166370a0823183836040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561104f57600080fd5b6102c65a03f1151561106057600080fd5b50505060405180519392505050565b600454600160a060020a031681565b60025433600160a060020a0390811691161461109657fe5b6004805474ff0000000000000000000000000000000000000000191660a060020a179055565b60015433600160a060020a0390811691161415611103576001546000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039092169190911790555b565b60015460009060a860020a900460ff161561111f57600080fd5b60045460a060020a900460ff16151560011461113a57600080fd5b600254600160a060020a0316634460fb6d33858560006040516020015260405160e060020a63ffffffff8616028152600160a060020a03909316600484015260248301919091526044820152606401602060405180830381600087803b15156111a257600080fd5b6102c65a03f115156111b357600080fd5b5050506040518051949350505050565b60025433600160a060020a039081169116146111db57fe5b81600160a060020a03167fd8138f8a3f377c5259ca548e70e4c2de94f129f5a11036a15b69513cba2b426a8260405190815260200160405180910390a25050565b60005433600160a060020a0390811691161461123757600080fd5b6001805475ff000000000000000000000000000000000000000000191660a860020a179055565b600054600160a060020a031681565b60025433600160a060020a0390811691161461128557fe5b81600160a060020a031683600160a060020a03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405190815260200160405180910390a3505050565b60005433600160a060020a039081169116146112ec57600080fd5b60015460a060020a900460ff161561130357600080fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60025433600160a060020a0390811691161461134a57fe5b6004805474ff000000000000000000000000000000000000000019169055565b60025433600160a060020a0390811691161461138257fe5b81600160a060020a031683600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a3505050565b60045460a060020a900460ff1681565b60005433600160a060020a039081169116146113f957600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60015460009060a860020a900460ff161561144257600080fd5b600254600160a060020a031663beabacc833858560006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156114ae57600080fd5b6102c65a03f115156114bf57600080fd5b50505060405180519050156107f35782600160a060020a031633600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a35060016107f7565b60015460a060020a900460ff1681565b600154600090819060a860020a900460ff161561154957600080fd5b600254600160a060020a031663bcdd612133868660006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610e1557600080fd5b600254600090600160a060020a031663dd62ed3e8484846040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b15156111a257600080fd5b60025433600160a060020a0390811691161461163057fe5b81600160a060020a0384167fc3599666213715dfabdf658c56a97b9adfad2cd9689690c70c79b20bc61940c98360405190815260200160405180910390a3505050565b600254600160a060020a031681565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106116c357805160ff19168380011785556116f0565b828001600101855582156116f0579182015b828111156116f05782518255916020019190600101906116d5565b506116fc929150611700565b5090565b61086491905b808211156116fc57600081556001016117065600a165627a7a7230582018201e55ea53905fd7e862bf4ae6c4216d3a320fa385b80bcc301cbd25c770820029

Swarm Source

bzzr://18201e55ea53905fd7e862bf4ae6c4216d3a320fa385b80bcc301cbd25c77082

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

OVERVIEW

A multi-tier blockchain system designed to address unsolved questions of scalability, privacy, and interoperability in blockchain networks

Validator Index Block Amount
View All Withdrawals

Txn Hash Block Value Eth2 PubKey Valid
View All Deposits
Chain Token Portfolio % Price Amount Value
ETH30.20%$0.00363549,580.53$180.23
ETH14.42%$2.5933.2327$86.07
ETH4.91%$0.054119540.888$29.27
ETH4.42%$0.31891282.61$26.35
ETH3.65%$0.151824143.3537$21.76
ETH1.81%$0.036791293.7828$10.81
ETH1.03%$0.20818929.5905$6.16
ETH0.84%$0.06069782.3817$5
ETH0.26%$0.0004423,558.527$1.57
ETH0.17%$0.0001446,851.8923$0.9851
ETH0.09%$0.00648679.2567$0.514
ETH0.08%$0.04159810.8631$0.4518
ETH0.06%$0.000461806.616$0.3722
ETH0.05%$0.000083,666.64$0.2928
ETH0.04%$0.0012202.793$0.2434
ETH0.04%$0.000658364$0.2395
ETH0.03%$0.000193800$0.1544
BSC37.91%$0.0640413,532.3516$226.22
[ 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.