ETH Price: $1,958.32 (-0.24%)
 

More Info

Private Name Tags

TokenTracker

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer238550602025-11-22 14:24:2399 days ago1763821463IN
Gladius Token
0 ETH0.000005580.17360821
Transfer238550352025-11-22 14:19:2399 days ago1763821163IN
Gladius Token
0 ETH0.000105272.12742396
Transfer228613662025-07-06 16:30:47238 days ago1751819447IN
Gladius Token
0 ETH0.000081761.65263337
Transfer221096742025-03-23 12:44:35343 days ago1742733875IN
Gladius Token
0 ETH0.000014640.39617298
Transfer209059502024-10-06 10:35:35511 days ago1728210935IN
Gladius Token
0 ETH0.000299319.30751347
Transfer204520892024-08-04 2:06:23574 days ago1722737183IN
Gladius Token
0 ETH0.000120382.43272486
Transfer203459372024-07-20 6:25:11589 days ago1721456711IN
Gladius Token
0 ETH0.000147782.98646001
Transfer199837582024-05-30 16:10:11640 days ago1717085411IN
Gladius Token
0 ETH0.0011312122.85928537
Transfer187105132023-12-04 4:06:59818 days ago1701662819IN
Gladius Token
0 ETH0.0011926937.08858597
Transfer185325542023-11-09 6:19:11843 days ago1699510751IN
Gladius Token
0 ETH0.0008120927.44858527
Approve170192012023-04-10 17:15:351056 days ago1681146935IN
Gladius Token
0 ETH0.0009170234.93417848
Transfer167967732023-03-10 9:12:351087 days ago1678439555IN
Gladius Token
0 ETH0.0009360318.91982136
Transfer161785122022-12-13 21:38:591174 days ago1670967539IN
Gladius Token
0 ETH0.0012048324.35296929
Transfer161453572022-12-09 6:26:591178 days ago1670567219IN
Gladius Token
0 ETH0.0007635914.06924091
Transfer161420582022-12-08 19:23:591179 days ago1670527439IN
Gladius Token
0 ETH0.0010074820.36391259
Transfer159872642022-11-17 4:10:111200 days ago1668658211IN
Gladius Token
0 ETH0.0006663813.46947164
Transfer158608722022-10-30 12:27:351218 days ago1667132855IN
Gladius Token
0 ETH0.0004947410
Transfer150896872022-07-06 15:12:051334 days ago1657120325IN
Gladius Token
0 ETH0.0014617129.54521401
Transfer149971962022-06-20 15:02:591350 days ago1655737379IN
Gladius Token
0 ETH0.0024737545.57906649
Approve149180202022-06-07 1:13:531363 days ago1654564433IN
Gladius Token
0 ETH0.0010787540.90838598
Approve149180192022-06-07 1:13:311363 days ago1654564411IN
Gladius Token
0 ETH0.0009633936.53358392
Approve149180182022-06-07 1:13:111363 days ago1654564391IN
Gladius Token
0 ETH0.0015506633.51343571
Transfer148091182022-05-20 4:42:191381 days ago1653021739IN
Gladius Token
0 ETH0.0011873724
Transfer146383442022-04-23 2:02:571408 days ago1650679377IN
Gladius Token
0 ETH0.0013647742.14078476
Transfer146383132022-04-23 1:54:221408 days ago1650678862IN
Gladius Token
0 ETH0.0024342344.87061128
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
GLAToken

Compiler Version
v0.4.15+commit.bbb8e64f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2017-11-05
*/

pragma solidity ^0.4.15;

contract InputValidator {


    /**
     * ERC20 Short Address Attack fix
     */
    modifier safe_arguments(uint _numArgs) {
        assert(msg.data.length == _numArgs * 32 + 4);
        _;
    }
}

contract Owned {

    // The address of the account that is the current owner 
    address internal owner;


    /**
     * The publisher is the inital owner
     */
    function Owned() {
        owner = msg.sender;
    }


    /**
     * Access is restricted to the current owner
     */
    modifier only_owner() {
        require(msg.sender == owner);

        _;
    }
}

contract IOwnership {

    /**
     * Returns true if `_account` is the current owner
     *
     * @param _account The address to test against
     */
    function isOwner(address _account) constant returns (bool);


    /**
     * Gets the current owner
     *
     * @return address The current owner
     */
    function getOwner() constant returns (address);
}

contract Ownership is IOwnership, Owned {


    /**
     * Returns true if `_account` is the current owner
     *
     * @param _account The address to test against
     */
    function isOwner(address _account) public constant returns (bool) {
        return _account == owner;
    }


    /**
     * Gets the current owner
     *
     * @return address The current owner
     */
    function getOwner() public constant returns (address) {
        return owner;
    }
}

contract ITransferableOwnership {

    /**
     * Transfer ownership to `_newOwner`
     *
     * @param _newOwner The address of the account that will become the new owner 
     */
    function transferOwnership(address _newOwner);
}

contract TransferableOwnership is ITransferableOwnership, Ownership {


    /**
     * Transfer ownership to `_newOwner`
     *
     * @param _newOwner The address of the account that will become the new owner 
     */
    function transferOwnership(address _newOwner) public only_owner {
        owner = _newOwner;
    }
}


/**
 * @title ERC20 compatible token interface
 *
 * Implements ERC 20 Token standard: https://github.com/ethereum/EIPs/issues/20
 * - Short address attack fix
 *
 * #created 29/09/2017
 * #author Frank Bonnet
 */
contract IToken { 

    /** 
     * Get the total supply of tokens
     * 
     * @return The total supply
     */
    function totalSupply() constant returns (uint);


    /** 
     * Get balance of `_owner` 
     * 
     * @param _owner The address from which the balance will be retrieved
     * @return The balance
     */
    function balanceOf(address _owner) constant returns (uint);


    /** 
     * Send `_value` token to `_to` from `msg.sender`
     * 
     * @param _to The address of the recipient
     * @param _value The amount of token to be transferred
     * @return Whether the transfer was successful or not
     */
    function transfer(address _to, uint _value) returns (bool);


    /** 
     * Send `_value` token to `_to` from `_from` on the condition it is approved by `_from`
     * 
     * @param _from The address of the sender
     * @param _to The address of the recipient
     * @param _value The amount of token to be transferred
     * @return Whether the transfer was successful or not
     */
    function transferFrom(address _from, address _to, uint _value) returns (bool);


    /** 
     * `msg.sender` approves `_spender` to spend `_value` tokens
     * 
     * @param _spender The address of the account able to transfer the tokens
     * @param _value The amount of tokens to be approved for transfer
     * @return Whether the approval was successful or not
     */
    function approve(address _spender, uint _value) returns (bool);


    /** 
     * Get the amount of remaining tokens that `_spender` is allowed to spend from `_owner`
     * 
     * @param _owner The address of the account owning tokens
     * @param _spender The address of the account able to transfer the tokens
     * @return Amount of remaining tokens allowed to spent
     */
    function allowance(address _owner, address _spender) constant returns (uint);
}


/**
 * @title ERC20 compatible token
 *
 * Implements ERC 20 Token standard: https://github.com/ethereum/EIPs/issues/20
 * - Short address attack fix
 *
 * #created 29/09/2017
 * #author Frank Bonnet
 */
contract Token is IToken, InputValidator {

    // Ethereum token standard
    string public standard = "Token 0.3";
    string public name;        
    string public symbol;
    uint8 public decimals = 8;

    // Token state
    uint internal totalTokenSupply;

    // Token balances
    mapping (address => uint) internal balances;

    // Token allowances
    mapping (address => mapping (address => uint)) internal allowed;


    // Events
    event Transfer(address indexed _from, address indexed _to, uint _value);
    event Approval(address indexed _owner, address indexed _spender, uint _value);

    /** 
     * Construct 
     * 
     * @param _name The full token name
     * @param _symbol The token symbol (aberration)
     */
    function Token(string _name, string _symbol) {
        name = _name;
        symbol = _symbol;
        balances[msg.sender] = 0;
        totalTokenSupply = 0;
    }


    /** 
     * Get the total token supply
     * 
     * @return The total supply
     */
    function totalSupply() public constant returns (uint) {
        return totalTokenSupply;
    }


    /** 
     * Get balance of `_owner` 
     * 
     * @param _owner The address from which the balance will be retrieved
     * @return The balance
     */
    function balanceOf(address _owner) public constant returns (uint) {
        return balances[_owner];
    }


    /** 
     * Send `_value` token to `_to` from `msg.sender`
     * 
     * @param _to The address of the recipient
     * @param _value The amount of token to be transferred
     * @return Whether the transfer was successful or not
     */
    function transfer(address _to, uint _value) public safe_arguments(2) returns (bool) {

        // Check if the sender has enough tokens
        require(balances[msg.sender] >= _value);   

        // Check for overflows
        require(balances[_to] + _value >= balances[_to]);

        // Transfer tokens
        balances[msg.sender] -= _value;
        balances[_to] += _value;

        // Notify listeners
        Transfer(msg.sender, _to, _value);
        return true;
    }


    /** 
     * Send `_value` token to `_to` from `_from` on the condition it is approved by `_from`
     * 
     * @param _from The address of the sender
     * @param _to The address of the recipient
     * @param _value The amount of token to be transferred
     * @return Whether the transfer was successful or not 
     */
    function transferFrom(address _from, address _to, uint _value) public safe_arguments(3) returns (bool) {

        // Check if the sender has enough
        require(balances[_from] >= _value);

        // Check for overflows
        require(balances[_to] + _value >= balances[_to]);

        // Check allowance
        require(_value <= allowed[_from][msg.sender]);

        // Transfer tokens
        balances[_to] += _value;
        balances[_from] -= _value;

        // Update allowance
        allowed[_from][msg.sender] -= _value;

        // Notify listeners
        Transfer(_from, _to, _value);
        return true;
    }


    /** 
     * `msg.sender` approves `_spender` to spend `_value` tokens
     * 
     * @param _spender The address of the account able to transfer the tokens
     * @param _value The amount of tokens to be approved for transfer
     * @return Whether the approval was successful or not
     */
    function approve(address _spender, uint _value) public safe_arguments(2) returns (bool) {

        // Update allowance
        allowed[msg.sender][_spender] = _value;

        // Notify listeners
        Approval(msg.sender, _spender, _value);
        return true;
    }


    /** 
     * Get the amount of remaining tokens that `_spender` is allowed to spend from `_owner`
     * 
     * @param _owner The address of the account owning tokens
     * @param _spender The address of the account able to transfer the tokens
     * @return Amount of remaining tokens allowed to spent
     */
    function allowance(address _owner, address _spender) public constant returns (uint) {
      return allowed[_owner][_spender];
    }
}


/**
 * @title ManagedToken interface
 *
 * Adds the following functionallity to the basic ERC20 token
 * - Locking
 * - Issuing
 *
 * #created 29/09/2017
 * #author Frank Bonnet
 */
contract IManagedToken is IToken { 

    /** 
     * Returns true if the token is locked
     * 
     * @return Whether the token is locked
     */
    function isLocked() constant returns (bool);


    /**
     * Unlocks the token so that the transferring of value is enabled 
     *
     * @return Whether the unlocking was successful or not
     */
    function unlock() returns (bool);


    /**
     * Issues `_value` new tokens to `_to`
     *
     * @param _to The address to which the tokens will be issued
     * @param _value The amount of new tokens to issue
     * @return Whether the tokens where sucessfully issued or not
     */
    function issue(address _to, uint _value) returns (bool);
}


/**
 * @title ManagedToken
 *
 * Adds the following functionallity to the basic ERC20 token
 * - Locking
 * - Issuing
 *
 * #created 29/09/2017
 * #author Frank Bonnet
 */
contract ManagedToken is IManagedToken, Token, TransferableOwnership {

    // Token state
    bool internal locked;


    /**
     * Allow access only when not locked
     */
    modifier only_when_unlocked() {
        require(!locked);

        _;
    }


    /** 
     * Construct 
     * 
     * @param _name The full token name
     * @param _symbol The token symbol (aberration)
     * @param _locked Whether the token should be locked initially
     */
    function ManagedToken(string _name, string _symbol, bool _locked) Token(_name, _symbol) {
        locked = _locked;
    }


    /** 
     * Send `_value` token to `_to` from `msg.sender`
     * 
     * @param _to The address of the recipient
     * @param _value The amount of token to be transferred
     * @return Whether the transfer was successful or not
     */
    function transfer(address _to, uint _value) public only_when_unlocked returns (bool) {
        return super.transfer(_to, _value);
    }


    /** 
     * Send `_value` token to `_to` from `_from` on the condition it is approved by `_from`
     * 
     * @param _from The address of the sender
     * @param _to The address of the recipient
     * @param _value The amount of token to be transferred
     * @return Whether the transfer was successful or not
     */
    function transferFrom(address _from, address _to, uint _value) public only_when_unlocked returns (bool) {
        return super.transferFrom(_from, _to, _value);
    }


    /** 
     * `msg.sender` approves `_spender` to spend `_value` tokens
     * 
     * @param _spender The address of the account able to transfer the tokens
     * @param _value The amount of tokens to be approved for transfer
     * @return Whether the approval was successful or not
     */
    function approve(address _spender, uint _value) public returns (bool) {
        return super.approve(_spender, _value);
    }


    /** 
     * Returns true if the token is locked
     * 
     * @return Wheter the token is locked
     */
    function isLocked() public constant returns (bool) {
        return locked;
    }


    /**
     * Unlocks the token so that the transferring of value is enabled 
     *
     * @return Whether the unlocking was successful or not
     */
    function unlock() public only_owner returns (bool)  {
        locked = false;
        return !locked;
    }


    /**
     * Issues `_value` new tokens to `_to`
     *
     * @param _to The address to which the tokens will be issued
     * @param _value The amount of new tokens to issue
     * @return Whether the approval was successful or not
     */
    function issue(address _to, uint _value) public only_owner safe_arguments(2) returns (bool) {
        
        // Check for overflows
        require(balances[_to] + _value >= balances[_to]);

        // Create tokens
        balances[_to] += _value;
        totalTokenSupply += _value;

        // Notify listeners 
        Transfer(0, this, _value);
        Transfer(this, _to, _value);

        return true;
    }
}


/**
 * @title Token retrieve interface
 *
 * Allows tokens to be retrieved from a contract
 *
 * #created 29/09/2017
 * #author Frank Bonnet
 */
contract ITokenRetreiver {

    /**
     * Extracts tokens from the contract
     *
     * @param _tokenContract The address of ERC20 compatible token
     */
    function retreiveTokens(address _tokenContract);
}

/**
 * @title GLA (Gladius) token
 *
 * #created 26/09/2017
 * #author Frank Bonnet
 */
contract GLAToken is ManagedToken, ITokenRetreiver {


    /**
     * Starts with a total supply of zero and the creator starts with 
     * zero tokens (just like everyone else)
     */
    function GLAToken() ManagedToken("Gladius Token", "GLA", true) {}


    /**
     * Failsafe mechanism
     * 
     * Allows owner to retreive tokens from the contract
     *
     * @param _tokenContract The address of ERC20 compatible token
     */
    function retreiveTokens(address _tokenContract) public only_owner {
        IToken tokenInstance = IToken(_tokenContract);
        uint tokenBalance = tokenInstance.balanceOf(this);
        if (tokenBalance > 0) {
            tokenInstance.transfer(owner, tokenBalance);
        }
    }


    /**
     * Prevents accidental sending of ether
     */
    function () payable {
        revert();
    }
}

Contract Security Audit

Contract ABI

API
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_account","type":"address"}],"name":"isOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"standard","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"issue","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"getOwner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_tokenContract","type":"address"}],"name":"retreiveTokens","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"isLocked","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"unlock","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"payable":true,"type":"fallback"},{"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"}]

606060405260408051908101604052600981527f546f6b656e20302e3300000000000000000000000000000000000000000000006020820152600090805161004b92916020019061016e565b506003805460ff19166008179055341561006457600080fd5b5b604080519081016040908152600d82527f476c616469757320546f6b656e0000000000000000000000000000000000000060208301528051908101604052600381527f474c410000000000000000000000000000000000000000000000000000000000602082015260015b5b82825b60018280516100e792916020019061016e565b5060028180516100fb92916020019061016e565b50600160a060020a03331660009081526005602052604081208190556004555b505060078054600160a060020a03191633600160a060020a03161790555b6007805460a060020a60ff02191674010000000000000000000000000000000000000000831515021790555b5050505b61020e565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106101af57805160ff19168380011785556101dc565b828001600101855582156101dc579182015b828111156101dc5782518255916020019190600101906101c1565b5b506101e99291506101ed565b5090565b61020b91905b808211156101e957600081556001016101f3565b5090565b90565b610d13806200021e6000396000f300606060405236156100d55763ffffffff60e060020a60003504166306fdde0381146100dd578063095ea7b31461016857806318160ddd1461019e57806323b872dd146101c35780632f54bf6e146101ff578063313ce567146102325780635a3b7e421461025b57806370a08231146102e6578063867904b414610317578063893d20e81461034d57806395d89b411461037c57806396a0492514610407578063a4e2d63414610428578063a69df4b51461044f578063a9059cbb14610476578063dd62ed3e146104ac578063f2fde38b146104e3575b5b600080fd5b005b34156100e857600080fd5b6100f0610504565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561012d5780820151818401525b602001610114565b50505050905090810190601f16801561015a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561017357600080fd5b61018a600160a060020a03600435166024356105a2565b604051901515815260200160405180910390f35b34156101a957600080fd5b6101b16105b7565b60405190815260200160405180910390f35b34156101ce57600080fd5b61018a600160a060020a03600435811690602435166044356105be565b604051901515815260200160405180910390f35b341561020a57600080fd5b61018a600160a060020a03600435166105ee565b604051901515815260200160405180910390f35b341561023d57600080fd5b610245610605565b60405160ff909116815260200160405180910390f35b341561026657600080fd5b6100f061060e565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561012d5780820151818401525b602001610114565b50505050905090810190601f16801561015a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102f157600080fd5b6101b1600160a060020a03600435166106ac565b60405190815260200160405180910390f35b341561032257600080fd5b61018a600160a060020a03600435166024356106cb565b604051901515815260200160405180910390f35b341561035857600080fd5b6103606107ad565b604051600160a060020a03909116815260200160405180910390f35b341561038757600080fd5b6100f06107bd565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561012d5780820151818401525b602001610114565b50505050905090810190601f16801561015a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561041257600080fd5b6100db600160a060020a036004351661085b565b005b341561043357600080fd5b61018a610980565b604051901515815260200160405180910390f35b341561045a57600080fd5b61018a610991565b604051901515815260200160405180910390f35b341561048157600080fd5b61018a600160a060020a03600435166024356109e0565b604051901515815260200160405180910390f35b34156104b757600080fd5b6101b1600160a060020a0360043581169060243516610a0e565b60405190815260200160405180910390f35b34156104ee57600080fd5b6100db600160a060020a0360043516610a3b565b005b60018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561059a5780601f1061056f5761010080835404028352916020019161059a565b820191906000526020600020905b81548152906001019060200180831161057d57829003601f168201915b505050505081565b60006105ae8383610a83565b90505b92915050565b6004545b90565b60075460009060a060020a900460ff16156105d857600080fd5b6105e3848484610afe565b90505b5b9392505050565b600754600160a060020a038281169116145b919050565b60035460ff1681565b60008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561059a5780601f1061056f5761010080835404028352916020019161059a565b820191906000526020600020905b81548152906001019060200180831161057d57829003601f168201915b505050505081565b600160a060020a0381166000908152600560205260409020545b919050565b60075460009033600160a060020a039081169116146106e957600080fd5b6002366044146106f557fe5b600160a060020a038416600090815260056020526040902054838101101561071c57600080fd5b600160a060020a0380851660009081526005602052604080822080548701905560048054870190553090921691600080516020610cc88339815191529086905190815260200160405180910390a383600160a060020a031630600160a060020a0316600080516020610cc88339815191528560405190815260200160405180910390a3600191505b5b505b92915050565b600754600160a060020a03165b90565b60028054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561059a5780601f1061056f5761010080835404028352916020019161059a565b820191906000526020600020905b81548152906001019060200180831161057d57829003601f168201915b505050505081565b600754600090819033600160a060020a0390811691161461087b57600080fd5b82915081600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156108d557600080fd5b6102c65a03f115156108e657600080fd5b5050506040518051915050600081111561097957600754600160a060020a038084169163a9059cbb91168360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561095d57600080fd5b6102c65a03f1151561096e57600080fd5b505050604051805150505b5b5b505050565b60075460a060020a900460ff165b90565b60075460009033600160a060020a039081169116146109af57600080fd5b506007805474ff000000000000000000000000000000000000000019169081905560a060020a900460ff16155b5b90565b60075460009060a060020a900460ff16156109fa57600080fd5b6105ae8383610c0c565b90505b5b92915050565b600160a060020a038083166000908152600660209081526040808320938516835292905220545b92915050565b60075433600160a060020a03908116911614610a5657600080fd5b6007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b6000600236604414610a9157fe5b600160a060020a03338116600081815260066020908152604080832094891680845294909152908190208690557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259086905190815260200160405180910390a3600191505b5b5092915050565b6000600336606414610b0c57fe5b600160a060020a03851660009081526005602052604090205483901015610b3257600080fd5b600160a060020a0384166000908152600560205260409020548381011015610b5957600080fd5b600160a060020a0380861660009081526006602090815260408083203390941683529290522054831115610b8c57600080fd5b600160a060020a03808516600081815260056020908152604080832080548901905589851680845281842080548a9003905560068352818420339096168452949091529081902080548790039055909190600080516020610cc88339815191529086905190815260200160405180910390a3600191505b5b509392505050565b6000600236604414610c1a57fe5b600160a060020a03331660009081526005602052604090205483901015610c4057600080fd5b600160a060020a0384166000908152600560205260409020548381011015610c6757600080fd5b600160a060020a03338116600081815260056020526040808220805488900390559287168082529083902080548701905591600080516020610cc88339815191529086905190815260200160405180910390a3600191505b5b50929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820110c0ed6fa664ce3b8c73cc210aa33cfbdceffef3ae91ae726724e7102c46b7f0029

Deployed Bytecode

0x606060405236156100d55763ffffffff60e060020a60003504166306fdde0381146100dd578063095ea7b31461016857806318160ddd1461019e57806323b872dd146101c35780632f54bf6e146101ff578063313ce567146102325780635a3b7e421461025b57806370a08231146102e6578063867904b414610317578063893d20e81461034d57806395d89b411461037c57806396a0492514610407578063a4e2d63414610428578063a69df4b51461044f578063a9059cbb14610476578063dd62ed3e146104ac578063f2fde38b146104e3575b5b600080fd5b005b34156100e857600080fd5b6100f0610504565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561012d5780820151818401525b602001610114565b50505050905090810190601f16801561015a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561017357600080fd5b61018a600160a060020a03600435166024356105a2565b604051901515815260200160405180910390f35b34156101a957600080fd5b6101b16105b7565b60405190815260200160405180910390f35b34156101ce57600080fd5b61018a600160a060020a03600435811690602435166044356105be565b604051901515815260200160405180910390f35b341561020a57600080fd5b61018a600160a060020a03600435166105ee565b604051901515815260200160405180910390f35b341561023d57600080fd5b610245610605565b60405160ff909116815260200160405180910390f35b341561026657600080fd5b6100f061060e565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561012d5780820151818401525b602001610114565b50505050905090810190601f16801561015a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102f157600080fd5b6101b1600160a060020a03600435166106ac565b60405190815260200160405180910390f35b341561032257600080fd5b61018a600160a060020a03600435166024356106cb565b604051901515815260200160405180910390f35b341561035857600080fd5b6103606107ad565b604051600160a060020a03909116815260200160405180910390f35b341561038757600080fd5b6100f06107bd565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561012d5780820151818401525b602001610114565b50505050905090810190601f16801561015a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561041257600080fd5b6100db600160a060020a036004351661085b565b005b341561043357600080fd5b61018a610980565b604051901515815260200160405180910390f35b341561045a57600080fd5b61018a610991565b604051901515815260200160405180910390f35b341561048157600080fd5b61018a600160a060020a03600435166024356109e0565b604051901515815260200160405180910390f35b34156104b757600080fd5b6101b1600160a060020a0360043581169060243516610a0e565b60405190815260200160405180910390f35b34156104ee57600080fd5b6100db600160a060020a0360043516610a3b565b005b60018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561059a5780601f1061056f5761010080835404028352916020019161059a565b820191906000526020600020905b81548152906001019060200180831161057d57829003601f168201915b505050505081565b60006105ae8383610a83565b90505b92915050565b6004545b90565b60075460009060a060020a900460ff16156105d857600080fd5b6105e3848484610afe565b90505b5b9392505050565b600754600160a060020a038281169116145b919050565b60035460ff1681565b60008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561059a5780601f1061056f5761010080835404028352916020019161059a565b820191906000526020600020905b81548152906001019060200180831161057d57829003601f168201915b505050505081565b600160a060020a0381166000908152600560205260409020545b919050565b60075460009033600160a060020a039081169116146106e957600080fd5b6002366044146106f557fe5b600160a060020a038416600090815260056020526040902054838101101561071c57600080fd5b600160a060020a0380851660009081526005602052604080822080548701905560048054870190553090921691600080516020610cc88339815191529086905190815260200160405180910390a383600160a060020a031630600160a060020a0316600080516020610cc88339815191528560405190815260200160405180910390a3600191505b5b505b92915050565b600754600160a060020a03165b90565b60028054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561059a5780601f1061056f5761010080835404028352916020019161059a565b820191906000526020600020905b81548152906001019060200180831161057d57829003601f168201915b505050505081565b600754600090819033600160a060020a0390811691161461087b57600080fd5b82915081600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156108d557600080fd5b6102c65a03f115156108e657600080fd5b5050506040518051915050600081111561097957600754600160a060020a038084169163a9059cbb91168360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561095d57600080fd5b6102c65a03f1151561096e57600080fd5b505050604051805150505b5b5b505050565b60075460a060020a900460ff165b90565b60075460009033600160a060020a039081169116146109af57600080fd5b506007805474ff000000000000000000000000000000000000000019169081905560a060020a900460ff16155b5b90565b60075460009060a060020a900460ff16156109fa57600080fd5b6105ae8383610c0c565b90505b5b92915050565b600160a060020a038083166000908152600660209081526040808320938516835292905220545b92915050565b60075433600160a060020a03908116911614610a5657600080fd5b6007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b6000600236604414610a9157fe5b600160a060020a03338116600081815260066020908152604080832094891680845294909152908190208690557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259086905190815260200160405180910390a3600191505b5b5092915050565b6000600336606414610b0c57fe5b600160a060020a03851660009081526005602052604090205483901015610b3257600080fd5b600160a060020a0384166000908152600560205260409020548381011015610b5957600080fd5b600160a060020a0380861660009081526006602090815260408083203390941683529290522054831115610b8c57600080fd5b600160a060020a03808516600081815260056020908152604080832080548901905589851680845281842080548a9003905560068352818420339096168452949091529081902080548790039055909190600080516020610cc88339815191529086905190815260200160405180910390a3600191505b5b509392505050565b6000600236604414610c1a57fe5b600160a060020a03331660009081526005602052604090205483901015610c4057600080fd5b600160a060020a0384166000908152600560205260409020548381011015610c6757600080fd5b600160a060020a03338116600081815260056020526040808220805488900390559287168082529083902080548701905591600080516020610cc88339815191529086905190815260200160405180910390a3600191505b5b50929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820110c0ed6fa664ce3b8c73cc210aa33cfbdceffef3ae91ae726724e7102c46b7f0029

Swarm Source

bzzr://110c0ed6fa664ce3b8c73cc210aa33cfbdceffef3ae91ae726724e7102c46b7f

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.