Contract Overview
Balance: 0 Ether
Ether Value: $0
Transactions: 2116 txns
Token Tracker: scientificcoin (SNcoin)
Misc:
Address Watch: Add To Watch List
Contract Creator: 0x90e19e2d88a0ac5ed9b5df7b6f88253fbe382defat txn 0x7eba9d89d5ccd12a2eb46c3025a7ab62e97a2304dccd8ffe373eda80af73a678
 Latest 25 transactions from a total of 2116 transactions

TxHash Age From To Value [TxFee]
0x4149fb35909fa1588eb0731c229c5da14fae6337167635d805f5ebde9b2e706b6 hrs 30 mins ago0xf4c89d871ee894420c5041e3b2630a570af9e37f  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.000101048
0xc595aa33e32b0525128cff5219f1ffe09ecb37574c387c46b9dda7b5aa0dda6820 hrs 23 mins ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.00047083224
0xd2e4edaf1d45b137194b0e8fe4edd7b3e66fd71a1ef65398b09d00e871e4516320 hrs 29 mins ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.0003952872
0xa279a109f637719118790e0fbe288a01af7aadf07d3546ae0ac2404d4cf2011e20 hrs 33 mins ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.000309672
0x43b43788127936f45640f7cb943854412bbe0a3c5bf4d95dcdfd146ba3e7954823 hrs 2 mins ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.000966288
0x93e2fffdabb745be58fc9e0567ce47893220ca9ad06bff78d05ba3007de3578e23 hrs 2 mins ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.000994716
0x2a9e8a126f06f0544479f1f55ad533fddb079155bb0f58592dda53bc1899f82f5 days 2 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.000662376
0x85db39f87e66f291eca66893cb06bf03b2d3c043dc190f4360b55e40ce5dbc985 days 2 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.00037333296
0xbfcaed9ff4b3928457ba16bca919562d321004e4e73bf5ec841a36d620c91f0d5 days 11 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.0003409692
0xbdb292790c884bd4528c9e51f2a8b7407a2fcb330292b678fffd6bc455cc22405 days 11 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.0003409692
0x1e535f7a60c97bab8875f234922483cf693c1cb29149c57c3c6d5ca98ac323de5 days 12 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.0003409692
0x9301fcf257312a9ebe2a358f27c1d60d82571f7b071a769d73780d158918a2246 days 17 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.000468168439
0x371b6e73fd47203726d7cee3c8d76bdd4199dd040384deb663e0c782e46d37d26 days 23 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.0003978864
0x2c2a649df24e8e5e59f90f0fe0771c1e8ffba32403579b21a598ba40c47b655d7 days 2 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.00033820344
0xdc565ed6d2d48d529c6a67940f0e40a1c91c96364a082939e73f914b8bcaa3f37 days 2 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.0002376702
0x0cd3ba3d85ccda58269c26e9f4fdc7050513e04e106887af8358090de2520cd78 days 15 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.0005968296
0xc160d28197b8c28deabffc33c79d51bd55477c001c26d0934a5d9f06befb14af8 days 15 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.0003599964
0x579b4027b889fe8387d2cccd5f18b584e84a29cf20d672c3136c4e41f15778509 days 10 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.000331572
0x456a75e516ae586413f7be09b0f8d173846f9857797d08d8d542310d385b0d7810 days 17 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.0005299008
0x1f28b9c36bdb1fed1f9e202e4026e14b5f879c818c9a4b63c1d26e0e240d596f11 days 23 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.0005961384
0x156017e267e70ece76d0d0fa3aa519fc55ef8dcb011abae035c3a44bb37c916612 days 12 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.0005968296
0x8a9621fb398ecd759657a1b0c9c7331e6415aa0f8d4abe19e6f4b288810ae4f812 days 14 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.000663144
0xef16fb1c6f4b2093ee8568d666ce039831cd82ca654996443793a4bf2e38691f12 days 14 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.000639996
0x9fb15ab36216e222e7f603f2b934e263918e79aead853998d399aac5ced27cac12 days 22 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.0005968296
0x41ead99485645ab9690fb03e0a00f8c70bc9b875b987df55a55194a8aa479d6512 days 22 hrs ago0x704e68a0b17f6e9ba2454b14eb4610036a7af50a  IN   0x8c211128f8d232935afd80543e442f894a4355b70 Ether0.0003981528
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
View All
ParentTxHash Block Age From To Value
Warning: The Compiled Contract might be susceptible to ExpExponentCleanup (medium/high-severity), EventStructWrongData (very low-severity) SolidityCompiler Bugs.

Contract Source Code Verified (Exact Match)
Contract Name: SNcoin_Token
Compiler Text: v0.4.24+commit.e67f0147
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.24;

// ----------------------------------------------------------------------------
// ERC Token Standard #20 Interface
// https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20-token-standard.md
// ----------------------------------------------------------------------------
contract ERC20Interface {
    function totalSupply() public constant returns (uint);
    function balanceOf(address tokenOwner) public constant returns (uint balance);
    function allowance(address tokenOwner, address spender) public constant returns (uint remaining);
    function transfer(address to, uint tokens) public returns (bool success);
    function approve(address spender, uint tokens) public returns (bool success);
    function transferFrom(address from, address to, uint tokens) public returns (bool success);

    event Transfer(address indexed from, address indexed to, uint tokens);
    event Approval(address indexed tokenOwner, address indexed spender, uint tokens);
}

// ----------------------------------------------------------------------------
// Owned contract
// ----------------------------------------------------------------------------
contract Owned {
    address public owner;
    address public newOwner;

    event OwnershipTransferred(address indexed _from, address indexed _to);

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

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

    function transferOwnership(address _newOwner) public onlyOwner {
        newOwner = _newOwner;
    }

    function acceptOwnership() public {
        require(msg.sender == newOwner);
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
        newOwner = address(0);
    }
}

/// @dev The token controller contract must implement these functions
contract TokenController {
    /// @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_old The current allowed amount in the `approve()` call
    /// @param _amount_new The amount in the `approve()` call
    /// @return False if the controller does not authorize the approval
    function onApprove(address _owner, address _spender, uint _amount_old, uint _amount_new) public returns(bool);
}

// ----------------------------------------------------------------------------
// Contract function to receive approval and execute function in one call
//
// Borrowed from MiniMeToken
// ----------------------------------------------------------------------------
contract ApproveAndCallFallBack {
    function receiveApproval(address from, uint256 _amount, address _token, bytes _data) public;
}

// ----------------------------------------------------------------------------
// ERC20 Token, with the addition of symbol, name and decimals and an
// initial fixed supply
// ----------------------------------------------------------------------------
contract SNcoin_Token is ERC20Interface, Owned {
    string public constant symbol = "SNcoin";
    string public constant name = "scientificcoin";
    uint8 public constant decimals = 18;
    uint private constant _totalSupply = 100000000 * 10**uint(decimals);

    mapping(address => uint) balances;
    mapping(address => mapping(address => uint)) allowed;

    struct LimitedBalance {
        uint8 limitType;
        uint initial;
    }
    mapping(address => LimitedBalance) limited_balances;
    uint8 public constant limitDefaultType = 0;
    uint8 public constant limitTeamType = 1;
    uint8 public constant limitBranchType = 2;
    uint8 private constant limitTeamIdx = 0;
    uint8 private constant limitBranchIdx = 1;
    uint8[limitBranchType] private limits;
    uint8 private constant limitTeamInitial = 90;
    uint8 private constant limitBranchInitial = 90;
    uint8 private constant limitTeamStep = 3;
    uint8 private constant limitBranchStep = 10;

    address public controller;
    
    // Flag that determines if the token is transferable or not.
    bool public transfersEnabled;
    // ------------------------------------------------------------------------
    // Constructor
    // ------------------------------------------------------------------------
    constructor() public {
        balances[owner] = _totalSupply;
        transfersEnabled = true;
        limits[limitTeamIdx] = limitTeamInitial;
        limits[limitBranchIdx] = limitBranchInitial;
        emit Transfer(address(0), owner, _totalSupply);
    }


    /// @notice Changes the controller of the contract
    /// @param _newController The new controller of the contract
    function setController(address _newController) public onlyOwner {
        controller = _newController;
    }
    
    function limitOfTeam() public constant returns (uint8 limit) {
        return 100 - limits[limitTeamIdx];
    }

    function limitOfBranch() public constant returns (uint8 limit) {
        return 100 - limits[limitBranchIdx];
    }

    function getLimitTypeOf(address tokenOwner) public constant returns (uint8 limitType) {
        return limited_balances[tokenOwner].limitType;
    }

    function getLimitedBalanceOf(address tokenOwner) public constant returns (uint balance) {
       if (limited_balances[tokenOwner].limitType > 0) {
           require(limited_balances[tokenOwner].limitType <= limitBranchType);
           uint minimumLimit = (limited_balances[tokenOwner].initial * limits[limited_balances[tokenOwner].limitType - 1])/100;
           require(balances[tokenOwner] >= minimumLimit);
           return balances[tokenOwner] - minimumLimit;
       }
       return balanceOf(tokenOwner);
    }

    function incrementLimitTeam() public onlyOwner returns (bool success) {
        require(transfersEnabled);

        uint8 previousLimit = limits[limitTeamIdx];
        if ( previousLimit - limitTeamStep >= 100) {
            limits[limitTeamIdx] = 0;
        } else {
            limits[limitTeamIdx] = previousLimit - limitTeamStep;
        }

        return true;
    }

    function incrementLimitBranch() public onlyOwner returns (bool success) {
        require(transfersEnabled);

        uint8 previousLimit = limits[limitBranchIdx];
        if ( previousLimit - limitBranchStep >= 100) {
            limits[limitBranchIdx] = 0;
        } else {
            limits[limitBranchIdx] = previousLimit - limitBranchStep;
        }

        return true;
    }

    // ------------------------------------------------------------------------
    // Total supply
    // ------------------------------------------------------------------------
    function totalSupply() public constant returns (uint) {
        return _totalSupply  - balances[address(0)];
    }


    // ------------------------------------------------------------------------
    // Get the token balance for account `tokenOwner`
    // ------------------------------------------------------------------------
    function balanceOf(address tokenOwner) public constant returns (uint balance) {
        return balances[tokenOwner];
    }


    // ------------------------------------------------------------------------
    // Token owner can approve for `spender` to transferFrom(...) `tokens`
    // from the token owner's account
    //
    // https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20-token-standard.md
    // recommends that there are no checks for the approval double-spend attack
    // as this should be implemented in user interfaces 
    // ------------------------------------------------------------------------
    function approve(address _spender, uint _amount) public returns (bool success) {
        require(transfersEnabled);

        // Alerts the token controller of the approve function call
        if (controller != 0) {
            require(TokenController(controller).onApprove(msg.sender, _spender, allowed[msg.sender][_spender], _amount));
        }

        allowed[msg.sender][_spender] = _amount;
        emit Approval(msg.sender, _spender, _amount);
        return true;
    }


    // ------------------------------------------------------------------------
    // Returns the amount of tokens approved by the owner that can be
    // transferred to the spender's account
    // ------------------------------------------------------------------------
    function allowance(address tokenOwner, address spender) public constant returns (uint remaining) {
        return allowed[tokenOwner][spender];
    }


    // ------------------------------------------------------------------------
    // Transfer the balance from token owner's account to `to` account
    // - Owner's account must have sufficient balance to transfer
    // - 0 value transfers are allowed
    // ------------------------------------------------------------------------
    function transfer(address _to, uint _amount) public returns (bool success) {
        require(transfersEnabled);
        doTransfer(msg.sender, _to, _amount);
        return true;
    }


    // ------------------------------------------------------------------------
    // Transfer `tokens` from the `from` account to the `to` account
    // 
    // The calling account must already have sufficient tokens approve(...)-d
    // for spending from the `from` account and
    // - From account must have sufficient balance to transfer
    // - Spender must have sufficient allowance to transfer
    // - 0 value transfers are allowed
    // ------------------------------------------------------------------------
    function transferFrom(address _from, address _to, uint _amount) public returns (bool success) {
        require(transfersEnabled);

        // The standard ERC 20 transferFrom functionality
        require(allowed[_from][msg.sender] >= _amount);
        allowed[_from][msg.sender] -= _amount;
        doTransfer(_from, _to, _amount);
        return true;
    }


    // ------------------------------------------------------------------------
    // Transfer the balance from token owner's account to `to` account
    // - Owner's account must have sufficient balance to transfer
    // - 0 value transfers are allowed
    // ------------------------------------------------------------------------
    function transferToTeam(address _to, uint _amount) public onlyOwner returns (bool success) {
        require(transfersEnabled);
        transferToLimited(msg.sender, _to, _amount, limitTeamType);

        return true;
    }


    // ------------------------------------------------------------------------
    // Transfer the balance from token owner's account to `to` account
    // - Owner's account must have sufficient balance to transfer
    // - 0 value transfers are allowed
    // ------------------------------------------------------------------------
    function transferToBranch(address _to, uint _amount) public onlyOwner returns (bool success) {
        require(transfersEnabled);
        transferToLimited(msg.sender, _to, _amount, limitBranchType);

        return true;
    }


    // ------------------------------------------------------------------------
    // Transfer the balance from token owner's account to `to` account
    // - Owner's account must have sufficient balance to transfer
    // - 0 value transfers are allowed
    // ------------------------------------------------------------------------
    function transferToLimited(address _from, address _to, uint _amount, uint8 _limitType) internal {
        require((_limitType >= limitTeamType) && (_limitType <= limitBranchType));
        require((limited_balances[_to].limitType == 0) || (limited_balances[_to].limitType == _limitType));

        doTransfer(_from, _to, _amount);

        uint previousLimitedBalanceInitial = limited_balances[_to].initial;
        require(previousLimitedBalanceInitial + _amount >= previousLimitedBalanceInitial); // Check for overflow
        limited_balances[_to].initial = previousLimitedBalanceInitial + _amount;
        limited_balances[_to].limitType = _limitType;
    }

    /// @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
    ) public returns (bool success) {
        require(approve(_spender, _amount));

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

        return true;
    }

    // ------------------------------------------------------------------------
    // Don't accept ETH
    // ------------------------------------------------------------------------
    function () public payable {
        revert();
    }


    /// @dev This is the actual transfer function in the token contract, it can
    ///  only be called by other functions in this contract.
    /// @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 doTransfer(address _from, address _to, uint _amount) internal {
           if (_amount == 0) {
               emit Transfer(_from, _to, _amount);    // Follow the spec to louch the event when transfer 0
               return;
           }

           // Do not allow transfer to 0x0 or the token contract itself
           require((_to != 0) && (_to != address(this)));

           // If the amount being transfered is more than the balance of the
           //  account the transfer throws
           uint previousBalanceFrom = balanceOf(_from);

           require(previousBalanceFrom >= _amount);

           // Alerts the token controller of the transfer
           if (controller != 0) {
               require(TokenController(controller).onTransfer(_from, _to, _amount));
           }

           // First update the balance array with the new value for the address
           //  sending the tokens
           balances[_from] = previousBalanceFrom - _amount;
           
           if (limited_balances[_from].limitType > 0) {
               require(limited_balances[_from].limitType <= limitBranchType);
               uint minimumLimit = (limited_balances[_from].initial * limits[limited_balances[_from].limitType - 1])/100;
               require(balances[_from] >= minimumLimit);
           }

           // Then update the balance array with the new value for the address
           //  receiving the tokens
           uint previousBalanceTo = balanceOf(_to);
           require(previousBalanceTo + _amount >= previousBalanceTo); // Check for overflow
           balances[_to] = previousBalanceTo + _amount;

           // An event to make the transfer easy to find on the blockchain
           emit Transfer(_from, _to, _amount);
    }

    /// @notice Enables token holders to transfer their tokens freely if true
    /// @param _transfersEnabled True if transfers are allowed in the clone
    function enableTransfers(bool _transfersEnabled) public onlyOwner {
        transfersEnabled = _transfersEnabled;
    }

    /// @notice This method can be used by the owner 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) public onlyOwner {
        if (_token == 0x0) {
            owner.transfer(address(this).balance);
            return;
        }

        ERC20Interface token = ERC20Interface(_token);
        uint balance = token.balanceOf(this);
        token.transfer(owner, balance);
        emit ClaimedTokens(_token, owner, balance);
    }
    
    event ClaimedTokens(address indexed _token, address indexed _owner, uint _amount);
}

    Contract ABI  
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"limitTeamType","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","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":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transferToBranch","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"limitOfBranch","outputs":[{"name":"limit","type":"uint8"}],"payable":false,"stateMutability":"view","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":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"limitOfTeam","outputs":[{"name":"limit","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"tokenOwner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transferToTeam","outputs":[{"name":"success","type":"bool"}],"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":"_newController","type":"address"}],"name":"setController","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"tokenOwner","type":"address"}],"name":"getLimitTypeOf","outputs":[{"name":"limitType","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"incrementLimitTeam","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"limitBranchType","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"transfersEnabled","outputs":[{"name":"","type":"bool"}],"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":false,"inputs":[],"name":"incrementLimitBranch","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"tokenOwner","type":"address"}],"name":"getLimitedBalanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"tokenOwner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","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":true,"inputs":[],"name":"limitDefaultType","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_transfersEnabled","type":"bool"}],"name":"enableTransfers","outputs":[],"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":"_owner","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"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"tokenOwner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Approval","type":"event"}]

  Contract Creation Code Switch To Opcodes View
608060405234801561001057600080fd5b5060008054600160a060020a0319163317808255600160a060020a0390811682526002602090815260408084206a52b7d2dcc80cd2e4000000908190556006805460a060020a60ff0219167401000000000000000000000000000000000000000017905560058054615a00605a60ff199092169190911761ff0019161790558454825191825291519190931693927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92908290030190a361145a806100d66000396000f30060806040526004361061017f5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610184578063087f4ece1461020e578063095ea7b3146102395780630e2639061461027157806313c7db1a1461029557806318160ddd146102aa57806323b872dd146102d1578063313ce567146102fb5780633587904b1461031057806370a082311461032557806379ba5097146103465780637bb1a3121461035d5780638da5cb5b1461038157806392eefe9b146103b257806395c0c447146103d357806395d89b41146103f4578063a1ecb43c14610409578063a9059cbb1461041e578063b71e012014610442578063bef97c8714610457578063cae9ca511461046c578063d0a63663146104d5578063d0c1c844146104ea578063d4ee1d901461050b578063dd62ed3e14610520578063df8de3e714610547578063e5269bbf14610568578063f2fde38b1461057d578063f41e60c51461059e578063f77c4791146105b8575b600080fd5b34801561019057600080fd5b506101996105cd565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101d35781810151838201526020016101bb565b50505050905090810190601f1680156102005780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561021a57600080fd5b50610223610604565b6040805160ff9092168252519081900360200190f35b34801561024557600080fd5b5061025d600160a060020a0360043516602435610609565b604080519115158252519081900360200190f35b34801561027d57600080fd5b5061025d600160a060020a0360043516602435610769565b3480156102a157600080fd5b506102236107af565b3480156102b657600080fd5b506102bf6107d4565b60408051918252519081900360200190f35b3480156102dd57600080fd5b5061025d600160a060020a036004358116906024351660443561080f565b34801561030757600080fd5b50610223610899565b34801561031c57600080fd5b5061022361089e565b34801561033157600080fd5b506102bf600160a060020a03600435166108a8565b34801561035257600080fd5b5061035b6108c3565b005b34801561036957600080fd5b5061025d600160a060020a036004351660243561094b565b34801561038d57600080fd5b50610396610988565b60408051600160a060020a039092168252519081900360200190f35b3480156103be57600080fd5b5061035b600160a060020a0360043516610997565b3480156103df57600080fd5b50610223600160a060020a03600435166109dd565b34801561040057600080fd5b506101996109fb565b34801561041557600080fd5b5061025d610a32565b34801561042a57600080fd5b5061025d600160a060020a0360043516602435610adb565b34801561044e57600080fd5b50610223610b01565b34801561046357600080fd5b5061025d610b06565b34801561047857600080fd5b50604080516020600460443581810135601f810184900484028501840190955284845261025d948235600160a060020a0316946024803595369594606494920191908190840183828082843750949750610b169650505050505050565b3480156104e157600080fd5b5061025d610c31565b3480156104f657600080fd5b506102bf600160a060020a0360043516610c9a565b34801561051757600080fd5b50610396610dbb565b34801561052c57600080fd5b506102bf600160a060020a0360043581169060243516610dca565b34801561055357600080fd5b5061035b600160a060020a0360043516610df5565b34801561057457600080fd5b50610223610fdc565b34801561058957600080fd5b5061035b600160a060020a0360043516610fe1565b3480156105aa57600080fd5b5061035b6004351515611027565b3480156105c457600080fd5b5061039661106d565b60408051808201909152600e81527f736369656e7469666963636f696e000000000000000000000000000000000000602082015281565b600181565b60065460009060a060020a900460ff16151561062457600080fd5b600654600160a060020a03161561070257600654336000818152600360209081526040808320600160a060020a038981168086529184528285205483517fec8f4d0400000000000000000000000000000000000000000000000000000000815260048101979097526024870192909252604486019190915260648501889052905194169363ec8f4d0493608480820194918390030190829087803b1580156106cb57600080fd5b505af11580156106df573d6000803e3d6000fd5b505050506040513d60208110156106f557600080fd5b5051151561070257600080fd5b336000818152600360209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b60008054600160a060020a0316331461078157600080fd5b60065460a060020a900460ff16151561079957600080fd5b6107a6338484600261107c565b50600192915050565b6000600560015b602081049091015460ff601f9092166101000a900416606403905090565b6000805260026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b546a52b7d2dcc80cd2e40000000390565b60065460009060a060020a900460ff16151561082a57600080fd5b600160a060020a038416600090815260036020908152604080832033845290915290205482111561085a57600080fd5b600160a060020a038416600090815260036020908152604080832033845290915290208054839003905561088f84848461115d565b5060019392505050565b601281565b60006005816107b6565b600160a060020a031660009081526002602052604090205490565b600154600160a060020a031633146108da57600080fd5b60015460008054604051600160a060020a0393841693909116917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b60008054600160a060020a0316331461096357600080fd5b60065460a060020a900460ff16151561097b57600080fd5b6107a6338484600161107c565b600054600160a060020a031681565b600054600160a060020a031633146109ae57600080fd5b6006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a031660009081526004602052604090205460ff1690565b60408051808201909152600681527f534e636f696e0000000000000000000000000000000000000000000000000000602082015281565b600080548190600160a060020a03163314610a4c57600080fd5b60065460a060020a900460ff161515610a6457600080fd5b5060055460ff908116906064600219830190911610610aa85760006005815b602091828204019190066101000a81548160ff021916908360ff160217905550610ad3565b6002198101600560005b602091828204019190066101000a81548160ff021916908360ff1602179055505b600191505090565b60065460009060a060020a900460ff161515610af657600080fd5b6107a633848461115d565b600281565b60065460a060020a900460ff1681565b6000610b228484610609565b1515610b2d57600080fd5b6040517f8f4ffcb10000000000000000000000000000000000000000000000000000000081523360048201818152602483018690523060448401819052608060648501908152865160848601528651600160a060020a038a1695638f4ffcb195948a94938a939192909160a490910190602085019080838360005b83811015610bc0578181015183820152602001610ba8565b50505050905090810190601f168015610bed5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015610c0f57600080fd5b505af1158015610c23573d6000803e3d6000fd5b506001979650505050505050565b600080548190600160a060020a03163314610c4b57600080fd5b60065460a060020a900460ff161515610c6357600080fd5b50600554610100900460ff908116906064600919830190911610610c8c57600060056001610a83565b600919810160056001610ab2565b600160a060020a038116600090815260046020526040812054819060ff16811015610da957600160a060020a038316600090815260046020526040902054600260ff9091161115610cea57600080fd5b600160a060020a03831660009081526004602052604090205460649060059060001960ff918216011660028110610d1d57fe5b602080820490920154600160a060020a0387166000908152600490935260409092206001015460ff601f9092166101000a9092041602811515610d5c57fe5b600160a060020a0385166000908152600260205260409020549190049150811115610d8657600080fd5b600160a060020a0383166000908152600260205260409020548190039150610db5565b610db2836108a8565b91505b50919050565b600154600160a060020a031681565b600160a060020a03918216600090815260036020908152604080832093909416825291909152205490565b600080548190600160a060020a03163314610e0f57600080fd5b600160a060020a0383161515610e605760008054604051600160a060020a0390911691303180156108fc02929091818181858888f19350505050158015610e5a573d6000803e3d6000fd5b50610fd7565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051849350600160a060020a038416916370a082319160248083019260209291908290030181600087803b158015610ec457600080fd5b505af1158015610ed8573d6000803e3d6000fd5b505050506040513d6020811015610eee57600080fd5b505160008054604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a0392831660048201526024810185905290519394509085169263a9059cbb92604480840193602093929083900390910190829087803b158015610f6457600080fd5b505af1158015610f78573d6000803e3d6000fd5b505050506040513d6020811015610f8e57600080fd5b5050600054604080518381529051600160a060020a03928316928616917ff931edb47c50b4b4104c187b5814a9aef5f709e17e2ecf9617e860cacade929c919081900360200190a35b505050565b600081565b600054600160a060020a03163314610ff857600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a0316331461103e57600080fd5b6006805491151560a060020a0274ff000000000000000000000000000000000000000019909216919091179055565b600654600160a060020a031681565b6000600160ff8316108015906110965750600260ff831611155b15156110a157600080fd5b600160a060020a03841660009081526004602052604090205460ff1615806110e65750600160a060020a03841660009081526004602052604090205460ff8381169116145b15156110f157600080fd5b6110fc85858561115d565b50600160a060020a03831660009081526004602052604090206001015482810181111561112857600080fd5b600160a060020a039093166000908152600460205260409020929091016001830155815460ff90911660ff1990911617905550565b600080808315156111b85784600160a060020a031686600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a3611426565b600160a060020a038516158015906111d95750600160a060020a0385163014155b15156111e457600080fd5b6111ed866108a8565b9250838310156111fc57600080fd5b600654600160a060020a0316156112bb57600654604080517f4a393149000000000000000000000000000000000000000000000000000000008152600160a060020a03898116600483015288811660248301526044820188905291519190921691634a3931499160648083019260209291908290030181600087803b15801561128457600080fd5b505af1158015611298573d6000803e3d6000fd5b505050506040513d60208110156112ae57600080fd5b505115156112bb57600080fd5b600160a060020a03861660009081526002602090815260408083208787039055600490915281205460ff1611156113b357600160a060020a038616600090815260046020526040902054600260ff909116111561131757600080fd5b600160a060020a03861660009081526004602052604090205460649060059060001960ff91821601166002811061134a57fe5b602080820490920154600160a060020a038a166000908152600490935260409092206001015460ff601f9092166101000a909204160281151561138957fe5b600160a060020a03881660009081526002602052604090205491900492508211156113b357600080fd5b6113bc856108a8565b90508381018111156113cd57600080fd5b600160a060020a0380861660008181526002602090815260409182902085890190558151888152915192938a16927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35b5050505050505600a165627a7a7230582009cbf34f50d03f0691e14834ddb8dd5f1f2b7bd8245a7ba5308178616feb9de50029

   Swarm Source:
bzzr://09cbf34f50d03f0691e14834ddb8dd5f1f2b7bd8245a7ba5308178616feb9de5

 

View All
Block Age transaction Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.